Граф коммитов

21 Коммитов

Автор SHA1 Сообщение Дата
Natalie Chouinard 57d4d2b8f1
[dxil2spv] Add basic dxil2spv CI test (#4209) 2022-01-28 11:54:52 -05:00
Chris B b55eb88561
Convert cmake-predefined-config-params to cache (#3918)
CMake supports passing in CMake scripts via the `-C` command line
option, which can set CMake cache variables to initialize options
before the first CMakeLists file is processed. This is a portable and
shell-agnostic way of supporting what the
`cmake-predefined-config-params` file is used for.
2021-10-05 17:49:07 -05:00
Helena Kotas 259ce00a78
Use D3D12 headers from the same Windows 10 SDK version as cmake is using (#3586)
* Use D3D12 headers from the same Windows 10 SDK version as cmake is using (cmake variable CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION)

* For ARM64EC builds detect SDK version from VSDevCmd environment variable instead of a fixed version in hctbuild.cmd

* Add option -show-cmake-log to hctbuild and enable it in AppVeyor
2021-03-16 09:15:03 -07:00
Helena Kotas eed1d039da
Use Visual Studio 2019 in AppVeyor (#3587) 2021-03-15 21:45:35 -07:00
Helena Kotas bf5d585492
Enable Visual Studio 2019 build by default (#3138)
This PR is switching the default build of DXC to Visual Studio 2019.
The build script hctbuild.cmd will error when VS2019 is not installed. Use -vs2017 option to build with VS2017.
VS2015 is no longer supported.

Removes cmake version checking from hctstart.cmd
Fixes cmake detection in Visual Studio installations
Fixes DIA SDK lookup - use CMAKE_GENERATOR to detect VS version used and select the corresponding DIA SDK
Use environment variable instead of c:\Program Files
2020-09-17 17:42:08 -07:00
Greg Roth a5843199c5
Enable warnings as errors for clang builds (#3012)
This fixes up the last of the clang errors that are unique to clang 10.
These take two forms, First, indentation that might indicate the mistaken
impression that a line is within an unbraced conditional block produces
a warning and is corrected in a few places. Second, a warning is
produced when a class has one of copy constructor or assignment operator
explicitly defined and the other left to implicit definition. The
solution is generally to add a definition with the = default assignment.

Finally, this adds the -Werror flag to all clang builds to keep the
build warnings clean and detect flaws that can affect all builds and
platforms.
2020-07-02 08:28:23 -07:00
Ehsan e656f6ec01
[ci] Build on Linux using Appveyor and upload artifacts (#2978) 2020-06-16 20:23:52 -05:00
Jaebaek Seo dd183fec9f
Force cmake to use python3 (#2187)
Force cmake to use python3
2019-05-15 09:56:11 -04:00
Lei Zhang 16f2ff2294
[appveyor] Clone the whole history (#1365)
Right now we have a mechanism to version rolling build. It depends
on the Git history and will count number of commits. So we need
the full history.
2018-06-21 14:22:09 -04:00
Helena Kotas c3587a82fb
Update to VS 2017 and CMake 3.11.2 (#1347)
* Change build to prefer VS 2017

* Update supported cmake version

* Remove -vs2017 from appveyor.yml
2018-06-08 17:36:55 -07:00
Lei Zhang 83de7d31ce
[appveyor] Package more build artifacts (#1294)
Added header files, *.lib files, and *.pdb files.
2018-05-18 07:55:28 -04:00
Lei Zhang d0deff54b4
[appveyor] Add a file containing git commit for artifacts (#1228) 2018-04-24 15:10:11 -04:00
Lei Zhang 35d0aeae20
Change Appveyor to do Release build (#1200)
Also changed to use the build project from antiagainst's account.
2018-04-13 15:29:57 -04:00
Lei Zhang bbddc280c9
[appveyor] Stop installing TAEF (#862)
Appveyor already has WDK for Windows 10, version 1709 installed:
https://www.appveyor.com/docs/build-environment/
2017-11-29 15:38:21 -05:00
Lei Zhang 2295239b49 Zip artifacts built on Appveyor (#647) 2017-09-25 09:44:58 -07:00
Lei Zhang e1b98474e5 Upload artifacts in Appveyor Artifacts page (#641) 2017-09-22 09:30:33 -07:00
Lei Zhang bd2371f900 [spirv] Use git submodules for SPIR-V dependency projects (#455) 2017-07-24 13:12:48 -07:00
Ehsan aa2751504e [spirv] Effcee test fixture and a sample test. (#452)
* Added effcee and its dependencies (re2) to the project.
* Introduced FileTest that uses effcee to perform checks.
* Added a sample test (check-entrypoint.hlsl)
* Refactored code so WholeFileTest and FileTest can reuse code.
2017-07-24 09:03:31 -07:00
Ehsan 3e84980892 [spirv] Adding test fixture for HLSL to SPIRV codegen flow (#383)
This change enables CodeGenSPIRV test flow.

New tests can be added by simply adding the test file to
`tools/clang/test/CodeGenSPIRV/` directory and running:

```cpp
TEST_F(WholeFileTest, NewTest) {
  EXPECT_TRUE(runWholeFileTest("new-test-name"));
}
```

The input file with the format described in `WholeFileCheck.h` is read in;
the HLSL portion is passed to the compiler with SPIR-V codegen enabled.
The resulting SPIR-V binary is disassembled and compared to the expected
result in the input file.
2017-07-06 17:00:59 -07:00
Lei Zhang aea94605fb [spirv] Check SPIR-V using Appveyor (#327) 2017-06-12 10:15:49 -07:00
David Peixotto 7a24bac9b5 Add support for AppVeyor continuous integration (#131)
This commit makes the necessary changes to run the project with AppVeyor
CI. The `appveyor.yml` file contains the configuration settings for the
build. Currently we only build x64-Debug, but we can build the full
x32/x64-Debug/Release matrix by adding a few lines to the config.

The remaining changes are somewhat tied to the specifics of how appveyor
provisions the build machines. The standard VS2015 machines build on
Windows Server 2012. We can build on these machines, but cannot run tests
because we require d3d12.dll which is not available on Windows Server
2012. However, it is present on Windows Server 2016, but appveyor only
provides VS2017 on those machines. So part of the changes are to allow
the compiler to build with VS2017 so we can run tests as part of CI.

The `appveyor_setup.ps1` script installs the WDK as part of the build.
This is the only extra software we need. It is actually installed on the
VS2015 build machines, but not our VS2017 build machines. Perhaps we can
get them to install it by default and then this script can go away.

The `appveyor_test.ps1` script runs the taef tests and then reports the
results to appveyor so they can be displayed on the "Tests" tab.

As a side effect of this work, We can now use the latest cmake (3.7.2) for
our own builds! The key seems to be setting
`-DCMAKE_SYSTEM_VERSION=10.0.14393.0` to ensure that we pick up the
correct SDK.
2017-03-13 16:21:15 -07:00