diff --git a/CMakeLists.txt b/CMakeLists.txt
index 258161b09a4d27113ea82e519a939df0be8ca23f..7b26745ed22dce0ebb0b0ff4bfc3de981227198b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -100,6 +100,9 @@ DD4HEP_SETUP_BOOST_TARGETS()
 # Configure Geant4
 if(DD4HEP_USE_GEANT4)
   find_package( Geant4 10.2.2 REQUIRED  gdml ui_all vis_all )
+  IF(NOT Geant4_builtin_clhep_FOUND)
+    SET(DD4HEP_USE_CLHEP TRUE)
+  ENDIF()
   DD4HEP_SETUP_GEANT4_TARGETS()
   # Geant4 sets the CLHEP include directory to include_directories, we undo this here
   # we don't do this inside DD4hep_SETUP_GEANT4_TARGETS, because that is also used in
diff --git a/cmake/DD4hepConfig.cmake.in b/cmake/DD4hepConfig.cmake.in
index 8a6ce4fb0fe800fa088ec0fe9e53c108d4c128a3..fef9bfbeb2dd5358626b59c803848be7672c541c 100644
--- a/cmake/DD4hepConfig.cmake.in
+++ b/cmake/DD4hepConfig.cmake.in
@@ -26,6 +26,7 @@ set ( DD4hep_ROOT               "${_thisdir}" )
 set ( DD4hep_VERSION            "@DD4hep_VERSION@" )
 set ( DD4hep_SOVERSION          "@DD4hep_SOVERSION@" )
 set ( DD4HEP_USE_GEANT4         "@DD4HEP_USE_GEANT4@" )
+set ( DD4hep_USE_CLHEP          "@DD4HEP_USE_CLHEP@" )
 set ( DD4HEP_USE_LCIO           "@DD4HEP_USE_LCIO@" )
 set ( DD4HEP_USE_XERCESC        "@DD4HEP_USE_XERCESC@" )
 set ( DD4hep_BUILD_CXX_STANDARD @CMAKE_CXX_STANDARD@ )
@@ -48,6 +49,10 @@ DD4HEP_SETUP_BOOST_TARGETS()
 
 if(DD4HEP_USE_GEANT4)
   MESSAGE(STATUS "DD4hep uses Geant4")
+  IF(DD4HEP_USE_CLHEP)
+    find_package(CLHEP REQUIRED CONFIG)
+    UNSET(CLHEP_INCLUDE_DIR)
+  ENDIF()
   find_package(Geant4 10.2.2 REQUIRED gdml ui_all vis_all)
   DD4HEP_SETUP_GEANT4_TARGETS()
 endif()