diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 2bbb283..2f7eb52 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1,12 +1 @@
-cmake_minimum_required(VERSION 3.0.0 FATAL_ERROR)
-project(VHACD)
-option(NO_OPENCL "NO_OPENCL" OFF)
-option(NO_OPENMP "NO_OPENMP" OFF)
-
-message("NO_OPENCL " ${NO_OPENCL})
-message("NO_OPENMP " ${NO_OPENMP})
-
-#set(CMAKE_INSTALL_PREFIX "${PROJECT_BINARY_DIR}/output" CACHE PATH "project install prefix" FORCE)
-set(CMAKE_COMMON_INC "${CMAKE_SOURCE_DIR}/../scripts/cmake_common.cmake")
-add_subdirectory ("${CMAKE_SOURCE_DIR}/VHACD_Lib")
-add_subdirectory ("${CMAKE_SOURCE_DIR}/test")
+add_subdirectory ("${CMAKE_CURRENT_SOURCE_DIR}/VHACD_Lib")
\ No newline at end of file
diff --git a/src/VHACD_Lib/CMakeLists.txt b/src/VHACD_Lib/CMakeLists.txt
index 46fc1b1..2260fdc 100644
--- a/src/VHACD_Lib/CMakeLists.txt
+++ b/src/VHACD_Lib/CMakeLists.txt
@@ -1,77 +1,79 @@
+cmake_minimum_required(VERSION 3.10.0)
+
 project(VHACD_LIB CXX C)
-include(${CMAKE_COMMON_INC})
+include("${CMAKE_CURRENT_SOURCE_DIR}/../../scripts/cmake_common.cmake")
+
+set(CMAKE_CXX_STANDARD 11)
 
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
+set(LIB_TYPE "STATIC" CACHE STRING "STATIC, SHARED or MODULE?")
+message("[VHACD] \t LIB_TYPE " ${LIB_TYPE})
+add_library(vhacd ${LIB_TYPE} ${PROJECT_CPP_FILES} ${PROJECT_C_FILES} ${PROJECT_INC_FILES} ${PROJECT_INL_FILES} ${PROJECT_CL_FILES})
 
 if (NOT NO_OPENCL)
 	#include(FindOpenCL OPTIONAL)
-	find_package(OpenCL)
+	find_package(OpenCL REQUIRED)
 endif()
 if (NOT NO_OPENMP)
 	#include(FindOpenMP OPTIONAL)
-	find_package(OpenMP)
+	find_package(OpenMP REQUIRED)
 endif()
 if(OPENMP_FOUND)
-    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
-    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
-    set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}")
+    target_link_libraries(vhacd PRIVATE OpenMP::OpenMP_CXX)
 endif()
-set(LIB_TYPE "STATIC" CACHE STRING "STATIC, SHARED or MODULE?")
-message("[VHACD] \t LIB_TYPE " ${LIB_TYPE})
-add_library(vhacd ${LIB_TYPE} ${PROJECT_CPP_FILES} ${PROJECT_C_FILES} ${PROJECT_INC_FILES} ${PROJECT_INL_FILES} ${PROJECT_CL_FILES})
 
 if (OpenCL_FOUND)
-    target_include_directories(vhacd PRIVATE "${OpenCL_INCLUDE_DIR}")
-    target_link_libraries(vhacd PRIVATE "${OpenCL_LIBRARY}")
+    target_link_libraries(vhacd PRIVATE OpenCL::OpenCL)
     target_compile_definitions(vhacd PRIVATE -DOPENCL_FOUND=1 )
     target_compile_definitions(vhacd PRIVATE -DOPENCL_CL_FILES="${PROJECT_CL_FILES}" )
 endif()
 
-
 target_include_directories(vhacd PUBLIC
+        $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/public/>
+        $<INSTALL_INTERFACE:include>)
+
+target_include_directories(vhacd PRIVATE
   $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc/>
-  $<INSTALL_INTERFACE:include/>  # <prefix>/include/mylib
   )
 
 
 message("[VHACD] \t -> CMAKE_INSTALL_PREFIX " ${CMAKE_INSTALL_PREFIX})
 install(TARGETS vhacd EXPORT vhacd-targets DESTINATION lib)
-install(FILES ${PROJECT_INC_FILES} DESTINATION include)
-install(FILES ${PROJECT_INL_FILES} DESTINATION include)
+install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/public/VHACD.h DESTINATION ${CMAKE_INSTALL_PREFIX}/include/)
+
 
 
 set(VHACD_LIB_VERSION 3.2.0)
 include(CMakePackageConfigHelpers)
 write_basic_package_version_file(
-  "${CMAKE_CURRENT_BINARY_DIR}/vhacd/vhacd-config-version.cmake"
+  "${CMAKE_CURRENT_BINARY_DIR}/vhacd/v-hacd-config-version.cmake"
   VERSION ${VHACD_LIB_VERSION}
   COMPATIBILITY AnyNewerVersion
 )
 
-export(EXPORT vhacd-targets NAMESPACE ::
-  FILE "${CMAKE_CURRENT_BINARY_DIR}/vhacd/vhacd-targets.cmake"
+export(EXPORT vhacd-targets NAMESPACE vhacd::
+  FILE "${CMAKE_CURRENT_BINARY_DIR}/vhacd/v-hacd-targets.cmake"
 )
 
 configure_file(cmake/vhacd-config.cmake
-  "${CMAKE_CURRENT_BINARY_DIR}/vhacd/vhacd-config.cmake"
+  "${CMAKE_CURRENT_BINARY_DIR}/vhacd/v-hacd-config.cmake"
   COPYONLY
 )
 
 set(ConfigPackageLocation lib/cmake/vhacd)
 install(EXPORT vhacd-targets
   FILE
-    vhacd-targets.cmake
+	v-hacd-targets.cmake
   DESTINATION
     ${ConfigPackageLocation}
-	NAMESPACE ::
+	NAMESPACE vhacd::
 )
 install(
   FILES
-    "${CMAKE_CURRENT_BINARY_DIR}/vhacd/vhacd-config.cmake"
-    "${CMAKE_CURRENT_BINARY_DIR}/vhacd/vhacd-config-version.cmake"
+    "${CMAKE_CURRENT_BINARY_DIR}/vhacd/v-hacd-config.cmake"
+    "${CMAKE_CURRENT_BINARY_DIR}/vhacd/v-hacd-config-version.cmake"
   DESTINATION
     ${ConfigPackageLocation}
   COMPONENT
     Devel
 )
 
 
diff --git a/src/VHACD_Lib/cmake/vhacd-config.cmake b/src/VHACD_Lib/cmake/vhacd-config.cmake
index 8fc5c58..7677f58 100644
--- a/src/VHACD_Lib/cmake/vhacd-config.cmake
+++ b/src/VHACD_Lib/cmake/vhacd-config.cmake
@@ -1,4 +1,4 @@
 
 find_package(OpenCL)
 find_package(OpenMP)
-include("${CMAKE_CURRENT_LIST_DIR}/vhacd-targets.cmake")
\ No newline at end of file
+include("${CMAKE_CURRENT_LIST_DIR}/v-hacd-targets.cmake")
\ No newline at end of file