Dear maintainer:
This package has several CMake dependencies wrongly specified. As a result, it
deterministically fails to build:
- When built with DEB_BUILD_OPTIONS=parallel=1, which is supported by Policy 4.9.1.
- When built on a machine with 1 CPU, which is how I discovered the issue.
- When built by hand:
apt-get source intel-graphics-compiler2
cd intel-graphics-compiler2-2.40.14
debian/rules build
- It may also fail in more cases, because a successful build will only happen
by pure chance and due to a race condition.
I've put a full build log here for reference:
https://people.debian.org/~sanvila/build-logs/202611/
I already reported this upstream some time ago. They took their time to fix it,
but we can now finally cherry-pick the fixes from github.
The upstream commits fixing this are [05bd170d2] and [58c217b7d], which
I'm attaching to this email after using quilt import (i.e. no fuzz when
applied on top of 2.40.14-1). I have actually tested those patches
and I can confirm that they fix the issue which I found.
Thanks.
--------------------------------------------------------------------------------
[...]
cd /<<PKGBUILDDIR>>/build/IGC && /usr/bin/x86_64-linux-gnu-g++ -DBIF_LINK_BC -DCL_KHR_FP64_EXT -DGHAL3D=USC -DICBE_LINUX -DIGA_DISABLE_ENCODER_EXCEPTIONS -DIGC_CMAKE -DIGC_EXPORTS=1 -DIGC_SPIRV_ENABLED -DIGC_SPIRV_TOOLS_ENABLED -DIGC_VC_ENABLED -DINSIDE_PLUGIN -DISTDLIB_UMD -DLINUX -DLLVM_VERSION_MAJOR=16 -DNDEBUG -DNOMINMAX -DSTD_CALL -DUSC_EXPORTS=1 -DUSE_MMX -DUSE_SSE -DUSE_SSE2 -DUSE_SSE3 -DUSE_SSSE3 -D_AMD64_ -D_COMPILER_DLL_ -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -D_IGC_ -D_SCL_SECURE_NO_WARNINGS -D__IGC_OPAQUE_POINTERS_API_ENABLED=true -D__IGC_OPAQUE_POINTERS_DEFAULT_ARG_CLANG=\"-opaque-pointers\" -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -I/<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/lld/ELF/../include -I/<<PKGBUILDDIR>>/IGC/WrapperLLVM/include -I/<<PKGBUILDDIR>>/build/IGC/autogen -I/<<PKGBUILDDIR>>/IGC -I/<<PKGBUILDDIR>>/IGC/common -I/<<PKGBUILDDIR>>/IGC/.. -I/<<PKGBUILDDIR>>/IGC/../Common -I/<<PKGBUILDDIR>>/IGC/../3d/common -I/<<PKGBUILDDIR>>/IGC/../inc -I/<<PKGBUILDDIR>>/IGC/../inc/common -I/<<PKGBUILDDIR>>/IGC/../inc/common/Compiler -I/<<PKGBUILDDIR>>/IGC/../inc/common/Compiler/API -I/<<PKGBUILDDIR>>/IGC/../visa/include -I/<<PKGBUILDDIR>>/build/IGC/Release -I/<<PKGBUILDDIR>>/build/IGC -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL/ocl_igc_shared/executable_format -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL -I/<<PKGBUILDDIR>>/build/IGC/AdaptorOCL/ocl_igc_interface/impl -I/<<PKGBUILDDIR>>/IGC/Options -I/<<PKGBUILDDIR>>/IGC/Options/include -I/<<PKGBUILDDIR>>/build/IGC/Options/include -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL/ocl_igc_interface/extensions -I/<<PKGBUILDDIR>>/build/IGC/AdaptorOCL/ocl_igc_interface/extensions -I/<<PKGBUILDDIR>>/IGC/../inc/common/Compiler/common -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL/cif/cif/.. -I/<<PKGBUILDDIR>>/IGC/IRBuilderGenerator -I/<<PKGBUILDDIR>>/build/IGC/AdaptorCommon/RayTracing/RTStackReflectionIRBG -I/<<PKGBUILDDIR>>/build/IGC/AdaptorCommon/RenderSurfaceStateIRBG -I/<<PKGBUILDDIR>>/IGC/AdaptorCommon -I/include -I/lib/SPIRV -I/lib/SPIRV/Mangler -I/<<PKGBUILDDIR>>/IGC/ZEBinWriter/zebin/source -I/<<PKGBUILDDIR>>/IGC/ZEBinWriter/zebin/source/autogen -I/usr/lib/x86_64-linux-gnu/cmake/SPIRV-Tools/../../../include -I/<<PKGBUILDDIR>>/IGC/VectorCompiler/igcdeps/include -I/<<PKGBUILDDIR>>/IGC/VectorCompiler/include -I/<<PKGBUILDDIR>>/build/IGC/VectorCompiler/include -I/<<PKGBUILDDIR>>/build/IGC/VectorCompiler/include/vc/InternalIntrinsics -I/<<BUILDDIR>>/vc-intrinsics/GenXIntrinsics/include -I/<<PKGBUILDDIR>>/build/IGC/VectorCompiler/intrbuild/lib/GenXIntrinsics/../../include -I/<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/llvm/projects/llvm-spirv/include -I/<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/llvm/projects/llvm-spirv/include/../lib -isystem /<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/llvm/include -isystem /<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/build/src/include -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wno-error=free-nonheap-object -include cstdint -Wdate-time -D_FORTIFY_SOURCE=2 -Wno-misleading-indentation -Wno-parentheses -Wno-sizeof-array-div -Wno-stringop-truncation -Wno-stringop-overflow -Wno-char-subscripts -fexceptions -fdata-sections -ffunction-sections -Werror -O2 -pipe -fmessage-length=0 -march=corei7 -mstackrealign -fms-extensions -Wno-unused-parameter -Wno-missing-field-initializers -Wwrite-strings -Wno-long-long -Wswitch -Wno-sign-compare -Wno-unused-result -Wno-enum-compare -Wno-type-limits -Wno-ignored-qualifiers -Wno-shadow -Wformat-security -Wno-extra -Wno-write-strings -finline -fno-strict-aliasing -msse -msse2 -msse3 -mssse3 -msse4 -msse4.1 -msse4.2 -Wno-unknown-pragmas -fPIC -Bsymbolic -Wno-error -Wno-all -fstack-protector -finline-functions -funswitch-loops -Wno-maybe-uninitialized -lrt -fno-rtti -Wno-overloaded-virtual -Wno-reorder -Wno-nonnull-compare -Wno-odr -fvisibility=hidden -fvisibility-inlines-hidden -DNDEBUG -g -std=gnu++20 -MD -MT IGC/CMakeFiles/igc_dll_objs.dir/common/debug/TeeOutputStream.cpp.o -MF CMakeFiles/igc_dll_objs.dir/common/debug/TeeOutputStream.cpp.o.d -o CMakeFiles/igc_dll_objs.dir/common/debug/TeeOutputStream.cpp.o -c /<<PKGBUILDDIR>>/IGC/common/debug/TeeOutputStream.cpp
[ 87%] Building CXX object IGC/CMakeFiles/igc_dll_objs.dir/common/SystemThread.cpp.o
cd /<<PKGBUILDDIR>>/build/IGC && /usr/bin/x86_64-linux-gnu-g++ -DBIF_LINK_BC -DCL_KHR_FP64_EXT -DGHAL3D=USC -DICBE_LINUX -DIGA_DISABLE_ENCODER_EXCEPTIONS -DIGC_CMAKE -DIGC_EXPORTS=1 -DIGC_SPIRV_ENABLED -DIGC_SPIRV_TOOLS_ENABLED -DIGC_VC_ENABLED -DINSIDE_PLUGIN -DISTDLIB_UMD -DLINUX -DLLVM_VERSION_MAJOR=16 -DNDEBUG -DNOMINMAX -DSTD_CALL -DUSC_EXPORTS=1 -DUSE_MMX -DUSE_SSE -DUSE_SSE2 -DUSE_SSE3 -DUSE_SSSE3 -D_AMD64_ -D_COMPILER_DLL_ -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -D_IGC_ -D_SCL_SECURE_NO_WARNINGS -D__IGC_OPAQUE_POINTERS_API_ENABLED=true -D__IGC_OPAQUE_POINTERS_DEFAULT_ARG_CLANG=\"-opaque-pointers\" -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -I/<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/lld/ELF/../include -I/<<PKGBUILDDIR>>/IGC/WrapperLLVM/include -I/<<PKGBUILDDIR>>/build/IGC/autogen -I/<<PKGBUILDDIR>>/IGC -I/<<PKGBUILDDIR>>/IGC/common -I/<<PKGBUILDDIR>>/IGC/.. -I/<<PKGBUILDDIR>>/IGC/../Common -I/<<PKGBUILDDIR>>/IGC/../3d/common -I/<<PKGBUILDDIR>>/IGC/../inc -I/<<PKGBUILDDIR>>/IGC/../inc/common -I/<<PKGBUILDDIR>>/IGC/../inc/common/Compiler -I/<<PKGBUILDDIR>>/IGC/../inc/common/Compiler/API -I/<<PKGBUILDDIR>>/IGC/../visa/include -I/<<PKGBUILDDIR>>/build/IGC/Release -I/<<PKGBUILDDIR>>/build/IGC -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL/ocl_igc_shared/executable_format -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL -I/<<PKGBUILDDIR>>/build/IGC/AdaptorOCL/ocl_igc_interface/impl -I/<<PKGBUILDDIR>>/IGC/Options -I/<<PKGBUILDDIR>>/IGC/Options/include -I/<<PKGBUILDDIR>>/build/IGC/Options/include -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL/ocl_igc_interface/extensions -I/<<PKGBUILDDIR>>/build/IGC/AdaptorOCL/ocl_igc_interface/extensions -I/<<PKGBUILDDIR>>/IGC/../inc/common/Compiler/common -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL/cif/cif/.. -I/<<PKGBUILDDIR>>/IGC/IRBuilderGenerator -I/<<PKGBUILDDIR>>/build/IGC/AdaptorCommon/RayTracing/RTStackReflectionIRBG -I/<<PKGBUILDDIR>>/build/IGC/AdaptorCommon/RenderSurfaceStateIRBG -I/<<PKGBUILDDIR>>/IGC/AdaptorCommon -I/include -I/lib/SPIRV -I/lib/SPIRV/Mangler -I/<<PKGBUILDDIR>>/IGC/ZEBinWriter/zebin/source -I/<<PKGBUILDDIR>>/IGC/ZEBinWriter/zebin/source/autogen -I/usr/lib/x86_64-linux-gnu/cmake/SPIRV-Tools/../../../include -I/<<PKGBUILDDIR>>/IGC/VectorCompiler/igcdeps/include -I/<<PKGBUILDDIR>>/IGC/VectorCompiler/include -I/<<PKGBUILDDIR>>/build/IGC/VectorCompiler/include -I/<<PKGBUILDDIR>>/build/IGC/VectorCompiler/include/vc/InternalIntrinsics -I/<<BUILDDIR>>/vc-intrinsics/GenXIntrinsics/include -I/<<PKGBUILDDIR>>/build/IGC/VectorCompiler/intrbuild/lib/GenXIntrinsics/../../include -I/<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/llvm/projects/llvm-spirv/include -I/<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/llvm/projects/llvm-spirv/include/../lib -isystem /<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/llvm/include -isystem /<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/build/src/include -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wno-error=free-nonheap-object -include cstdint -Wdate-time -D_FORTIFY_SOURCE=2 -Wno-misleading-indentation -Wno-parentheses -Wno-sizeof-array-div -Wno-stringop-truncation -Wno-stringop-overflow -Wno-char-subscripts -fexceptions -fdata-sections -ffunction-sections -Werror -O2 -pipe -fmessage-length=0 -march=corei7 -mstackrealign -fms-extensions -Wno-unused-parameter -Wno-missing-field-initializers -Wwrite-strings -Wno-long-long -Wswitch -Wno-sign-compare -Wno-unused-result -Wno-enum-compare -Wno-type-limits -Wno-ignored-qualifiers -Wno-shadow -Wformat-security -Wno-extra -Wno-write-strings -finline -fno-strict-aliasing -msse -msse2 -msse3 -mssse3 -msse4 -msse4.1 -msse4.2 -Wno-unknown-pragmas -fPIC -Bsymbolic -Wno-error -Wno-all -fstack-protector -finline-functions -funswitch-loops -Wno-maybe-uninitialized -lrt -fno-rtti -Wno-overloaded-virtual -Wno-reorder -Wno-nonnull-compare -Wno-odr -fvisibility=hidden -fvisibility-inlines-hidden -DNDEBUG -g -std=gnu++20 -MD -MT IGC/CMakeFiles/igc_dll_objs.dir/common/SystemThread.cpp.o -MF CMakeFiles/igc_dll_objs.dir/common/SystemThread.cpp.o.d -o CMakeFiles/igc_dll_objs.dir/common/SystemThread.cpp.o -c /<<PKGBUILDDIR>>/IGC/common/SystemThread.cpp
[ 87%] Building CXX object IGC/CMakeFiles/igc_dll_objs.dir/common/MDFrameWork.cpp.o
cd /<<PKGBUILDDIR>>/build/IGC && /usr/bin/x86_64-linux-gnu-g++ -DBIF_LINK_BC -DCL_KHR_FP64_EXT -DGHAL3D=USC -DICBE_LINUX -DIGA_DISABLE_ENCODER_EXCEPTIONS -DIGC_CMAKE -DIGC_EXPORTS=1 -DIGC_SPIRV_ENABLED -DIGC_SPIRV_TOOLS_ENABLED -DIGC_VC_ENABLED -DINSIDE_PLUGIN -DISTDLIB_UMD -DLINUX -DLLVM_VERSION_MAJOR=16 -DNDEBUG -DNOMINMAX -DSTD_CALL -DUSC_EXPORTS=1 -DUSE_MMX -DUSE_SSE -DUSE_SSE2 -DUSE_SSE3 -DUSE_SSSE3 -D_AMD64_ -D_COMPILER_DLL_ -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -D_IGC_ -D_SCL_SECURE_NO_WARNINGS -D__IGC_OPAQUE_POINTERS_API_ENABLED=true -D__IGC_OPAQUE_POINTERS_DEFAULT_ARG_CLANG=\"-opaque-pointers\" -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -I/<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/lld/ELF/../include -I/<<PKGBUILDDIR>>/IGC/WrapperLLVM/include -I/<<PKGBUILDDIR>>/build/IGC/autogen -I/<<PKGBUILDDIR>>/IGC -I/<<PKGBUILDDIR>>/IGC/common -I/<<PKGBUILDDIR>>/IGC/.. -I/<<PKGBUILDDIR>>/IGC/../Common -I/<<PKGBUILDDIR>>/IGC/../3d/common -I/<<PKGBUILDDIR>>/IGC/../inc -I/<<PKGBUILDDIR>>/IGC/../inc/common -I/<<PKGBUILDDIR>>/IGC/../inc/common/Compiler -I/<<PKGBUILDDIR>>/IGC/../inc/common/Compiler/API -I/<<PKGBUILDDIR>>/IGC/../visa/include -I/<<PKGBUILDDIR>>/build/IGC/Release -I/<<PKGBUILDDIR>>/build/IGC -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL/ocl_igc_shared/executable_format -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL -I/<<PKGBUILDDIR>>/build/IGC/AdaptorOCL/ocl_igc_interface/impl -I/<<PKGBUILDDIR>>/IGC/Options -I/<<PKGBUILDDIR>>/IGC/Options/include -I/<<PKGBUILDDIR>>/build/IGC/Options/include -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL/ocl_igc_interface/extensions -I/<<PKGBUILDDIR>>/build/IGC/AdaptorOCL/ocl_igc_interface/extensions -I/<<PKGBUILDDIR>>/IGC/../inc/common/Compiler/common -I/<<PKGBUILDDIR>>/IGC/AdaptorOCL/cif/cif/.. -I/<<PKGBUILDDIR>>/IGC/IRBuilderGenerator -I/<<PKGBUILDDIR>>/build/IGC/AdaptorCommon/RayTracing/RTStackReflectionIRBG -I/<<PKGBUILDDIR>>/build/IGC/AdaptorCommon/RenderSurfaceStateIRBG -I/<<PKGBUILDDIR>>/IGC/AdaptorCommon -I/include -I/lib/SPIRV -I/lib/SPIRV/Mangler -I/<<PKGBUILDDIR>>/IGC/ZEBinWriter/zebin/source -I/<<PKGBUILDDIR>>/IGC/ZEBinWriter/zebin/source/autogen -I/usr/lib/x86_64-linux-gnu/cmake/SPIRV-Tools/../../../include -I/<<PKGBUILDDIR>>/IGC/VectorCompiler/igcdeps/include -I/<<PKGBUILDDIR>>/IGC/VectorCompiler/include -I/<<PKGBUILDDIR>>/build/IGC/VectorCompiler/include -I/<<PKGBUILDDIR>>/build/IGC/VectorCompiler/include/vc/InternalIntrinsics -I/<<BUILDDIR>>/vc-intrinsics/GenXIntrinsics/include -I/<<PKGBUILDDIR>>/build/IGC/VectorCompiler/intrbuild/lib/GenXIntrinsics/../../include -I/<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/llvm/projects/llvm-spirv/include -I/<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/llvm/projects/llvm-spirv/include/../lib -isystem /<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/src/llvm/include -isystem /<<PKGBUILDDIR>>/build/IGC/llvm-deps-16.0.6/build/src/include -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wno-error=free-nonheap-object -include cstdint -Wdate-time -D_FORTIFY_SOURCE=2 -Wno-misleading-indentation -Wno-parentheses -Wno-sizeof-array-div -Wno-stringop-truncation -Wno-stringop-overflow -Wno-char-subscripts -fexceptions -fdata-sections -ffunction-sections -Werror -O2 -pipe -fmessage-length=0 -march=corei7 -mstackrealign -fms-extensions -Wno-unused-parameter -Wno-missing-field-initializers -Wwrite-strings -Wno-long-long -Wswitch -Wno-sign-compare -Wno-unused-result -Wno-enum-compare -Wno-type-limits -Wno-ignored-qualifiers -Wno-shadow -Wformat-security -Wno-extra -Wno-write-strings -finline -fno-strict-aliasing -msse -msse2 -msse3 -mssse3 -msse4 -msse4.1 -msse4.2 -Wno-unknown-pragmas -fPIC -Bsymbolic -Wno-error -Wno-all -fstack-protector -finline-functions -funswitch-loops -Wno-maybe-uninitialized -lrt -fno-rtti -Wno-overloaded-virtual -Wno-reorder -Wno-nonnull-compare -Wno-odr -fvisibility=hidden -fvisibility-inlines-hidden -DNDEBUG -g -std=gnu++20 -MD -MT IGC/CMakeFiles/igc_dll_objs.dir/common/MDFrameWork.cpp.o -MF CMakeFiles/igc_dll_objs.dir/common/MDFrameWork.cpp.o.d -o CMakeFiles/igc_dll_objs.dir/common/MDFrameWork.cpp.o -c /<<PKGBUILDDIR>>/IGC/common/MDFrameWork.cpp
/<<PKGBUILDDIR>>/IGC/common/MDFrameWork.cpp:73:10: fatal error: MDNodeFunctions.gen: No such file or directory
73 | #include "MDNodeFunctions.gen"
| ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[3]: *** [IGC/CMakeFiles/igc_dll_objs.dir/build.make:642: IGC/CMakeFiles/igc_dll_objs.dir/common/MDFrameWork.cpp.o] Error 1
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[2]: *** [CMakeFiles/Makefile2:11517: IGC/CMakeFiles/igc_dll_objs.dir/all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[1]: *** [Makefile:159: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>/build'
dh_auto_build: error: cd build && make -j1 INSTALL="install --strip-program=true" VERBOSE=1 returned exit code 2
make: *** [debian/rules:15: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2
--------------------------------------------------------------------------------