diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1d87d701113d5aa0b8b89c300d3346ac9eec8aa0..da981a427c40e30617eae0e5f4436311f36fac68 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -6,13 +6,13 @@ include(CheckLanguage)
 set(CMAKE_CXX_STANDARD 17)
 set(CMAKE_CXX_STANDARD_REQUIRED ON)
 set(CMAKE_CUDA_ARCHITECTURES 35 70)
+set(CMAKE_HIP_ARCHITECTURES gfx803 gfx908) # rocm_agent_enumerator
 
 # Additional modules path for cmake
 set (CMAKE_MODULE_PATH
      ${CMAKE_MODULE_PATH}
      ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
 
-
 if(NOT DEFINED HIP_PATH)
     if(NOT DEFINED ENV{HIP_PATH})
         set(HIP_PATH "/opt/rocm/hip" CACHE PATH "Path to which HIP has been installed")
@@ -132,8 +132,6 @@ if (OPT_ENABLE_GPU_SOLVER)
 
         option(OPT_USE_HIP "Use HIP GPU code path" OFF)
         if (OPT_USE_HIP)
-            execute_process(COMMAND sh -c "/opt/rocm/hip/bin/hipify-perl ${CMAKE_SOURCE_DIR}/src/kernels_cuda.cu > ${CMAKE_SOURCE_DIR}/src/hipified_kernels_cuda.cpp")
-            execute_process(COMMAND sh -c "/opt/rocm/hip/bin/hipify-perl ${CMAKE_SOURCE_DIR}/src/maxwell_kernels_cuda.cu > ${CMAKE_SOURCE_DIR}/src/hipified_maxwell_kernels_cuda.cpp")
             add_definitions(-DGPU_USE_HIP)
             add_definitions(-D__HIP_PLATFORM_HCC__)
             set(LINK_LIBS ${LINK_LIBS})
diff --git a/src/libgmshdg/CMakeLists.txt b/src/libgmshdg/CMakeLists.txt
index 05a21a872dc8f06d5ad1cad3fbb7f6ffb58d4de0..a8ad1217a76d2b19bcb830443dd4f0fcc13b4e49 100644
--- a/src/libgmshdg/CMakeLists.txt
+++ b/src/libgmshdg/CMakeLists.txt
@@ -13,9 +13,10 @@ if (OPT_ENABLE_GPU_SOLVER)
     set(LIBGMSHDG_SOURCES ${LIBGMSHDG_SOURCES} kernels_gpu_mi.cpp)
 
     if (OPT_USE_HIP)
-        set_source_files_properties(src/hipified_kernels_cuda.cpp PROPERTIES HIP_SOURCE_PROPERTY_FORMAT 1)
-        set(LIBGMSHDG_SOURCES ${LIBGMSHDG_SOURCES} src/hipified_kernels_cuda.cpp)
-        hip_add_library(gmshdg SHARED ${LIBGMSHDG_SOURCES})
+        execute_process(COMMAND sh -c "/opt/rocm/hip/bin/hipify-perl ${CMAKE_CURRENT_SOURCE_DIR}/kernels_cuda.cu > ${CMAKE_CURRENT_SOURCE_DIR}/hipified_kernels_cuda.cpp")
+        set_source_files_properties(hipified_kernels_cuda.cpp PROPERTIES HIP_SOURCE_PROPERTY_FORMAT 1)
+        set(LIBGMSHDG_SOURCES ${LIBGMSHDG_SOURCES} hipified_kernels_cuda.cpp)
+        hip_add_library(gmshdg SHARED ${LIBGMSHDG_SOURCES} HIPCC_OPTIONS "-std=c++17")
         target_link_libraries(gmshdg ${LINK_LIBS})
     else()
         set(LIBGMSHDG_SOURCES ${LIBGMSHDG_SOURCES} kernels_cuda.cu)
diff --git a/src/maxwell/CMakeLists.txt b/src/maxwell/CMakeLists.txt
index 1495ce1b5767246c025192919d65f31ebb156d7b..e4f2fba6de7d1bd5f9de3f31bca84809453ddd36 100644
--- a/src/maxwell/CMakeLists.txt
+++ b/src/maxwell/CMakeLists.txt
@@ -8,8 +8,9 @@ if (OPT_ENABLE_GPU_SOLVER)
     set(MAXWELL_SOURCES ${MAXWELL_SOURCES} maxwell_gpu.cpp)
 
     if (OPT_USE_HIP)
-        set_source_files_properties(src/hipified_maxwell_kernels_cuda.cpp PROPERTIES HIP_SOURCE_PROPERTY_FORMAT 1)
-        set(MAXWELL_SOURCES ${MAXWELL_SOURCES} src/hipified_maxwell_kernels_cuda.cpp)
+        execute_process(COMMAND sh -c "/opt/rocm/hip/bin/hipify-perl ${CMAKE_CURRENT_SOURCE_DIR}/maxwell_kernels_cuda.cu > ${CMAKE_CURRENT_SOURCE_DIR}/hipified_maxwell_kernels_cuda.cpp")
+        set_source_files_properties(hipified_maxwell_kernels_cuda.cpp PROPERTIES HIP_SOURCE_PROPERTY_FORMAT 1)
+        set(MAXWELL_SOURCES ${MAXWELL_SOURCES} hipified_maxwell_kernels_cuda.cpp)
         hip_add_executable(maxwell_solver ${MAXWELL_SOURCES} HIPCC_OPTIONS "-std=c++17")
         target_link_libraries(maxwell_solver gmshdg)
     else()