From 2b5973ebd27ab03d752ed6c4f5b9ecad879ae27a Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Fri, 11 Sep 2015 19:27:09 -0400 Subject: [PATCH 1/2] cmake: use RUNTIME_OUTPUT_DIRECTORY property LOCATION is deprecated in newer CMake versions. Instead, set the relevant property. --- reformatter/CMakeLists.txt | 10 ++-------- verify/CMakeLists.txt | 10 ++-------- 2 files changed, 4 insertions(+), 16 deletions(-) diff --git a/reformatter/CMakeLists.txt b/reformatter/CMakeLists.txt index 52a9bee8..87b9676f 100644 --- a/reformatter/CMakeLists.txt +++ b/reformatter/CMakeLists.txt @@ -15,9 +15,6 @@ # set up a paths SET (binDir ${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/bin) -# create a directories -FILE(MAKE_DIRECTORY ${binDir}) - SET (SRCS json_reformat.c) # use the library we build, duh. @@ -34,10 +31,7 @@ IF (NOT WIN32) TARGET_LINK_LIBRARIES(json_reformat m) ENDIF (NOT WIN32) -# copy the binary into the output directory -GET_TARGET_PROPERTY(binPath json_reformat LOCATION) - -ADD_CUSTOM_COMMAND(TARGET json_reformat POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_if_different ${binPath} ${binDir}) +SET_TARGET_PROPERTIES(json_reformat PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${binDir}) INSTALL(TARGETS json_reformat RUNTIME DESTINATION bin) diff --git a/verify/CMakeLists.txt b/verify/CMakeLists.txt index 967fca16..d1b69120 100644 --- a/verify/CMakeLists.txt +++ b/verify/CMakeLists.txt @@ -15,9 +15,6 @@ # set up some paths SET (binDir ${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/bin) -# create some directories -FILE(MAKE_DIRECTORY ${binDir}) - SET (SRCS json_verify.c) # use the library we build, duh. @@ -28,10 +25,7 @@ ADD_EXECUTABLE(json_verify ${SRCS}) TARGET_LINK_LIBRARIES(json_verify yajl_s) -# copy in the binary -GET_TARGET_PROPERTY(binPath json_verify LOCATION) - -ADD_CUSTOM_COMMAND(TARGET json_verify POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_if_different ${binPath} ${binDir}) +SET_TARGET_PROPERTIES(json_verify PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${binDir}) INSTALL(TARGETS json_verify RUNTIME DESTINATION bin) From 433884ffd296128ef2cafc3165f8fbecada78083 Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Fri, 11 Sep 2015 19:28:15 -0400 Subject: [PATCH 2/2] cmake: avoid unnecessary exec_program --- src/CMakeLists.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 99cf9e95..9a8246d4 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -66,8 +66,9 @@ CONFIGURE_FILE(yajl.pc.cmake ${shareDir}/yajl.pc) # copy public headers to output directory FOREACH (header ${PUB_HDRS}) SET (header ${CMAKE_CURRENT_SOURCE_DIR}/${header}) + GET_FILENAME_COMPONENT(headerName ${header} NAME) - EXEC_PROGRAM(${CMAKE_COMMAND} ARGS -E copy_if_different ${header} ${incDir}) + CONFIGURE_FILE(${header} ${incDir}/${headerName} COPYONLY) ADD_CUSTOM_COMMAND(TARGET yajl_s POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different ${header} ${incDir})