Skip to content

Propagate CUDA includes to host compiler

Seth Johnson requested to merge seth/VecGeom:cuda-toolkit into master

The driver_types.h file used by cuda/Interface.h seems to be an internal (or ancient) header file, doesn't use <> for system libraries, and isn't available by the host compiler because the CUDA paths aren't propagated through the vecgeom lib.

This uses the CUDA toolkit to propagate the headers correctly.

FAILED: test/geocel/CMakeFiles/testcel_geocel.dir/vg/VecgeomTestBase.cc.o
/usr/bin/c++ -DG4LIB_BUILD_DLL -DGTEST_LINKED_AS_SHARED_LIBRARY=1 -Dtestcel_geocel_EXPORTS -I/__w/celeritas/celeritas/test -I/__w/celeritas/celeritas/build/test -I/__w/celeritas/celeritas/src -I/__w/celeritas/celeritas/build/include -isystem /opt/view/include -isystem /opt/view/include/Geant4 -isystem /opt/software/linux-rocky9-x86_64_v3/gcc-11.5.0/clhep-2.4.7.1-3tp5xebivqxft3yw3wonb3nxql5u7mfo/include -Wall -Wextra -pedantic -Werror -Wno-error=deprecated-declarations -O3 -DNDEBUG -std=c++20 -fPIC -MD -MT test/geocel/CMakeFiles/testcel_geocel.dir/vg/VecgeomTestBase.cc.o -MF test/geocel/CMakeFiles/testcel_geocel.dir/vg/VecgeomTestBase.cc.o.d -o test/geocel/CMakeFiles/testcel_geocel.dir/vg/VecgeomTestBase.cc.o -c /__w/celeritas/celeritas/test/geocel/vg/VecgeomTestBase.cc
In file included from /opt/view/include/VecGeom/base/Transformation3D.h:14,
                 from /opt/view/include/VecGeom/navigation/NavStatePath.h:11,
                 from /opt/view/include/VecGeom/navigation/NavigationState.h:9,
                 from /opt/view/include/VecGeom/navigation/NavStatePool.h:14,
                 from /__w/celeritas/celeritas/src/geocel/vg/detail/VecgeomNavCollection.hh:14,
                 from /__w/celeritas/celeritas/src/geocel/vg/VecgeomData.hh:18,
                 from /__w/celeritas/celeritas/test/geocel/vg/VecgeomTestBase.hh:10,
                 from /__w/celeritas/celeritas/test/geocel/vg/VecgeomTestBase.cc:7:
/opt/view/include/VecGeom/backend/cuda/Interface.h:12:10: fatal error: driver_types.h: No such file or directory
   12 | #include "driver_types.h" // Required for cudaError_t type
      |          ^~~~~~~~~~~~~~~~

Merge request reports

Loading