summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorBaruch Sterin <baruchs@gmail.com>2015-11-05 01:23:32 -0800
committerBaruch Sterin <baruchs@gmail.com>2015-11-05 01:23:32 -0800
commit5761c76825380200a82f33e776f1e07ff3d3fd4c (patch)
treec66ae0034a0a0484d8ab5d0c6ea59f78ed5ca1e3 /CMakeLists.txt
parentbe429079b547fa235cd0bbb696a7b73368606291 (diff)
downloadabc-5761c76825380200a82f33e776f1e07ff3d3fd4c.tar.gz
abc-5761c76825380200a82f33e776f1e07ff3d3fd4c.tar.bz2
abc-5761c76825380200a82f33e776f1e07ff3d3fd4c.zip
CMakeLists.txt: refactor a bit
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt12
1 files changed, 7 insertions, 5 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5034e5a0..c47da11a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -32,15 +32,14 @@ execute_process(
OUTPUT_VARIABLE MAKE_OUTPUT
)
+# extract options from make output
function(extract_var SEPARATOR DEST_VARIABLE MAKE_OUTPUT)
-
string(REGEX MATCH "${SEPARATOR} .* ${SEPARATOR}" TMP "${MAKE_OUTPUT}")
string(REGEX REPLACE "${SEPARATOR} (.*) ${SEPARATOR}" "\\1" TMP "${TMP}")
separate_arguments(TMP)
set(${DEST_VARIABLE} ${TMP} PARENT_SCOPE)
-
endfunction()
extract_var(SEPARATOR_SRC ABC_SRC ${MAKE_OUTPUT})
@@ -48,9 +47,12 @@ extract_var(SEPARATOR_LIBS ABC_LIBS ${MAKE_OUTPUT})
extract_var(SEPARATOR_CFLAGS ABC_CFLAGS ${MAKE_OUTPUT})
extract_var(SEPARATOR_CXXFLAGS ABC_CXXFLAGS ${MAKE_OUTPUT})
+function(abc_properties target visibility)
+ target_include_directories(${target} ${visibility} ${CMAKE_CURRENT_SOURCE_DIR}/src )
+ target_compile_options_filtered(${target} ${visibility} ${ABC_CFLAGS} ${ABC_CXXFLAGS} -Wno-unused-but-set-variable )
+ target_link_libraries(${target} ${visibility} ${ABC_LIBS})
+endfunction()
add_executable(abc ${ABC_SRC})
+abc_properties(abc PRIVATE)
-target_include_directories(abc PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src )
-target_compile_options_filtered(abc PRIVATE ${ABC_CFLAGS} -Wno-unused-but-set-variable )
-target_link_libraries(abc PRIVATE ${ABC_LIBS})