1 # Building the OpenCL ICD Loader and Tests
3 The build system will build ICD Loader library (OpenCL.dll or libOpenCL.so), the
4 ICD Loader Test binary (icd_loader_test), and some helper libraries for the test.
6 1. See inc/readme.txt about downloading or symlink the OpenCL headers.
7 Ex: https://github.com/KhronosGroup/OpenCL-Headers
15 1. Install recent Windows WDK, for access to d3dkmthk.h
16 Currently at https://docs.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk
18 2. Establish environment variable WDK to include directory
19 Ex: set WDK=C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0
21 2. Modify environment for your compiler.
22 Ex: Command line builds should modify "build_using_cmake.bat"
23 Ex: Visual Studio CMake integration should modify the "buildRoot" to match the BUILD_DIR in "build_using_cmake.bat"
25 3. Build either using the command line to run "build_using_cmake.bat" or with Visual Studio CMake integration
29 The ICD Test can be run using ctest, which is a companion to cmake. It can also be
30 run directly by executing icd_loader_test(.exe) executable from the bin folder.
34 1. Add driver stub as an ICD
35 echo full/path/to/libOpenCLDriverStub.so > /etc/OpenCL/vendors/test.icd
37 2. Run test using ctest
42 1. Add driver stub as an ICD by adding appropriate registry value
43 Key for 32-bit apps: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Khronos\OpenCL\Vendors
44 Key for 64-bit apps: HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenCL\Vendors
46 Add a REG_DWORD value:
47 Name: c:/full/path/to/OpenCLDriverStub.dll
50 Note: The build_using_cmake.bat builds ICD test as a 32-bit binary.
52 2. Run test using ctest.exe
58 Manually remove the registry key or .icd files added for running the ICD test.
60 The "build" and "bin" folders are autogenerated by the build so those may be
61 safely deleted without losing any source code (on Linux "make clobber" will