diff --git a/GaudiKernel/CMakeLists.txt b/GaudiKernel/CMakeLists.txt
index 5b23098a60c73c11a369807665d17e9d6ce3ea43..150e6627a587c38b8ffbe8376616963b9c9386ec 100644
--- a/GaudiKernel/CMakeLists.txt
+++ b/GaudiKernel/CMakeLists.txt
@@ -179,7 +179,12 @@ elseif(UNIX)
                                      src/Lib/Platform/SystemLinux.cpp)
   target_link_libraries(GaudiKernel PUBLIC ${rt_LIBRARY})
 endif()
-
+if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
+  target_include_directories(GaudiKernel
+    PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include-x86_64>  # for RtdscClock.h
+  )
+  install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include-x86_64/Gaudi TYPE INCLUDE)
+endif()
 # Genconf
 gaudi_add_executable(genconf
   SOURCES src/Util/genconf.cpp
diff --git a/GaudiKernel/include/Gaudi/Timers/RdtscClock.h b/GaudiKernel/include-x86_64/Gaudi/Timers/RdtscClock.h
similarity index 96%
rename from GaudiKernel/include/Gaudi/Timers/RdtscClock.h
rename to GaudiKernel/include-x86_64/Gaudi/Timers/RdtscClock.h
index 2b65bae2cf4c6988dce71eb0711e0fa6a61950bd..0aff207ce06451f2b604ecf742d197bb5d8d963b 100644
--- a/GaudiKernel/include/Gaudi/Timers/RdtscClock.h
+++ b/GaudiKernel/include-x86_64/Gaudi/Timers/RdtscClock.h
@@ -12,13 +12,13 @@
 
 #ifndef __x86_64__
 #  error "<Gaudi/Timers/RdtscClock.h> is only supported on x86"
-#endif // not __x86_64__
+#else // not __x86_64__
 
-#include <chrono>
-#include <functional>
-#include <ratio>
-#include <thread>
-#include <x86intrin.h>
+#  include <chrono>
+#  include <functional>
+#  include <ratio>
+#  include <thread>
+#  include <x86intrin.h>
 
 namespace Gaudi {
   namespace Timers {
@@ -81,3 +81,4 @@ namespace Gaudi {
     };
   } // namespace Timers
 } // namespace Gaudi
+#endif
diff --git a/cmake/GaudiToolbox.cmake b/cmake/GaudiToolbox.cmake
index 72380e425c29ccfa323e319b919fe67443b66cea..bda0dfaf2f3715bb186cfd5fa87afb1aabb9d95c 100644
--- a/cmake/GaudiToolbox.cmake
+++ b/cmake/GaudiToolbox.cmake
@@ -1362,7 +1362,7 @@ endfunction()
 
     gaudi_generate_version_header_file([name])
 
-  This function generates a file ``${name}Version.h`` in ``${CMAKE_CURRENT_BINARY_DIR}/include``
+  This function generates a file ``${name}Version.h`` in ``${CMAKE_BINARY_DIR}/include``
   with the following content (``${NAME}`` is ``${name}`` uppercased):
 
   .. code-block:: cpp
@@ -1394,12 +1394,12 @@ function(gaudi_generate_version_header_file)
     if(NOT ARGV0)
         string(TOUPPER ${PROJECT_NAME} NAME)
         set(output_file_name ${NAME}_VERSION.h)
-        install(FILES ${CMAKE_BINARY_DIR}/include/${output_file_name} TYPE INCLUDE)
     else()
         set(name ${ARGV0})
         string(TOUPPER ${name} NAME)
         set(output_file_name ${name}Version.h)
     endif()
+    install(FILES ${CMAKE_BINARY_DIR}/include/${output_file_name} TYPE INCLUDE)
     # No patch number => set to 0
     if(NOT PROJECT_VERSION_PATCH)
         set(PROJECT_VERSION_PATCH 0)
diff --git a/cmake/tests/dummyGaudiDownstreamProject/CMakeLists.txt b/cmake/tests/dummyGaudiDownstreamProject/CMakeLists.txt
index 4c848137e087811e86328d19012278b2bc9fb82d..0030d59bc2211ad2756b7bb9dfd13212453a872f 100644
--- a/cmake/tests/dummyGaudiDownstreamProject/CMakeLists.txt
+++ b/cmake/tests/dummyGaudiDownstreamProject/CMakeLists.txt
@@ -27,7 +27,7 @@ set(CMAKE_CXX_EXTENSIONS OFF)
 gaudi_add_executable(mainexe SOURCES src/main.cpp LINK Gaudi::GaudiPluginService)
 gaudi_generate_version_header_file() # generate DUMMYGAUDIDOWNSTREAMPROJECT_VERSION.h
 gaudi_generate_version_header_file(Main) # generate MainVersion.h
-target_include_directories(mainexe PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/include)
+target_include_directories(mainexe PRIVATE ${CMAKE_BINARY_DIR}/include)
 
 
 ###################### Simple unit tests beyond this line ######################