From 1e7fc84c3ab60270533072cb52c3e109f2a1477b Mon Sep 17 00:00:00 2001 From: Krishna Vedala Date: Tue, 7 Apr 2020 00:12:34 -0400 Subject: [PATCH] added cmake to project euler --- project_euler/CMakeLists.txt | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 project_euler/CMakeLists.txt diff --git a/project_euler/CMakeLists.txt b/project_euler/CMakeLists.txt new file mode 100644 index 00000000..234069e8 --- /dev/null +++ b/project_euler/CMakeLists.txt @@ -0,0 +1,22 @@ +# If necessary, use the RELATIVE flag, otherwise each source file may be listed +# with full pathname. RELATIVE may makes it easier to extract an executable name +# automatically. +file( GLOB_RECURSE APP_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.c ) +# file( GLOB APP_SOURCES ${CMAKE_SOURCE_DIR}/*.c ) +# AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR} APP_SOURCES) +foreach( testsourcefile ${APP_SOURCES} ) + # I used a simple string replace, to cut off .cpp. + string( REPLACE ".c" "" testname ${testsourcefile} ) + string( REPLACE "/" "-" testname ${testname} ) + string( REPLACE "\\" "-" testname ${testname} ) + string( REPLACE " " "_" testname ${testname} ) + add_executable( ${testname} ${testsourcefile} ) + # Make sure YourLib is linked to each app + target_link_libraries( ${testname} function_timer ) + if(OpenMP_C_FOUND) + target_link_libraries(${testname} OpenMP::OpenMP_C) + endif() + set_target_properties(${testname} PROPERTIES LINKER_LANGUAGE C) + install(TARGETS ${testname} DESTINATION "bin/misc") + +endforeach( testsourcefile ${APP_SOURCES} )