From 059249004b6c2212d607dac1ed098d12a67ff14c Mon Sep 17 00:00:00 2001 From: Julien Schueller Date: Mon, 21 Nov 2016 17:49:56 +0100 Subject: [PATCH] Use PROJECT_(SOURCE|BINARY)_DIR instead of CMAKE_... --- CMakeLists.txt | 18 +++++++++--------- swig/CMakeLists.txt | 6 +++--- test/CMakeLists.txt | 14 +++++++------- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 77c05d8..97a152f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -109,13 +109,13 @@ endif() if (NOT DEFINED HAVE_FPCLASSIFY) message(STATUS "Looking for fpclassify") - file (WRITE ${CMAKE_BINARY_DIR}/fpclassify.c "#include \n") - file (APPEND ${CMAKE_BINARY_DIR}/fpclassify.c "int main(void) {\n") - file (APPEND ${CMAKE_BINARY_DIR}/fpclassify.c "if (!fpclassify(3.14159)) fpclassify(2.7183);\n") - file (APPEND ${CMAKE_BINARY_DIR}/fpclassify.c " return 0; }\n") + file (WRITE ${PROJECT_BINARY_DIR}/fpclassify.c "#include \n") + file (APPEND ${PROJECT_BINARY_DIR}/fpclassify.c "int main(void) {\n") + file (APPEND ${PROJECT_BINARY_DIR}/fpclassify.c "if (!fpclassify(3.14159)) fpclassify(2.7183);\n") + file (APPEND ${PROJECT_BINARY_DIR}/fpclassify.c " return 0; }\n") try_compile (HAVE_FPCLASSIFY - ${CMAKE_BINARY_DIR}/build_fpclassify - ${CMAKE_BINARY_DIR}/fpclassify.c + ${PROJECT_BINARY_DIR}/build_fpclassify + ${PROJECT_BINARY_DIR}/fpclassify.c CMAKE_FLAGS -DLINK_LIBRARIES=m) message(STATUS "Looking for fpclassify - ${HAVE_FPCLASSIFY}") endif () @@ -172,8 +172,8 @@ endif () #============================================================================== set (${INCLUDE_DIRECTORIES} "") include_directories ( - ${CMAKE_BINARY_DIR}/api - ${CMAKE_BINARY_DIR} + ${PROJECT_BINARY_DIR}/api + ${PROJECT_BINARY_DIR} stogo util direct @@ -199,7 +199,7 @@ include_directories ( #============================================================================== set (NLOPT_HEADERS - api/nlopt.h ${CMAKE_BINARY_DIR}/api/nlopt.hpp ${CMAKE_BINARY_DIR}/api/nlopt.f + api/nlopt.h ${PROJECT_BINARY_DIR}/api/nlopt.hpp ${PROJECT_BINARY_DIR}/api/nlopt.f ) set (NLOPT_SOURCES diff --git a/swig/CMakeLists.txt b/swig/CMakeLists.txt index 033bd38..d51ea03 100644 --- a/swig/CMakeLists.txt +++ b/swig/CMakeLists.txt @@ -1,7 +1,7 @@ if (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/nlopt-enum-renames.i) file (WRITE ${CMAKE_CURRENT_BINARY_DIR}/nlopt-enum-renames.i "// AUTOMATICALLY GENERATED -- DO NOT EDIT\n") - file (STRINGS ${CMAKE_SOURCE_DIR}/api/nlopt.h NLOPT_H_LINES REGEX " NLOPT_[A-Z0-9_]+") + file (STRINGS ${PROJECT_SOURCE_DIR}/api/nlopt.h NLOPT_H_LINES REGEX " NLOPT_[A-Z0-9_]+") foreach (NLOPT_H_LINE ${NLOPT_H_LINES}) string (REGEX REPLACE ".*NLOPT_([A-Z0-9_]+).*" "%rename(NLOPT_\\1) nlopt::\\1;\n" ENUM_LINE ${NLOPT_H_LINE}) file (APPEND ${CMAKE_CURRENT_BINARY_DIR}/nlopt-enum-renames.i "${ENUM_LINE}") @@ -20,7 +20,7 @@ if (NUMPY_FOUND AND PYTHONLIBS_FOUND AND (SWIG_FOUND OR (EXISTS ${CMAKE_CURRENT_ target_link_libraries(${SWIG_MODULE_nlopt_REAL_NAME} ${nlopt_lib}) target_link_libraries(${SWIG_MODULE_nlopt_REAL_NAME} ${PYTHON_LIBRARIES}) set_target_properties (${SWIG_MODULE_nlopt_REAL_NAME} PROPERTIES PREFIX "") - if (NOT CMAKE_SOURCE_DIR MATCHES CMAKE_BINARY_DIR) + if (NOT PROJECT_SOURCE_DIR MATCHES PROJECT_BINARY_DIR) execute_process (COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/nlopt.py ${CMAKE_CURRENT_BINARY_DIR}/nlopt.py) endif () else () @@ -49,7 +49,7 @@ if (GUILE_FOUND AND ((SWIG_FOUND AND SWIG_VERSION VERSION_GREATER 2.0.9) OR (EXI set (guile_cpp_source ${CMAKE_CURRENT_BINARY_DIR}/nlopt-guile.cpp) add_custom_command (OUTPUT ${guile_cpp_source} nlopt.scm.in - COMMAND ${SWIG_EXECUTABLE} -I${CMAKE_BINARY_DIR}/api -outdir ${CMAKE_CURRENT_BINARY_DIR} -c++ -guile -scmstub -o ${guile_cpp_source} ${CMAKE_CURRENT_SOURCE_DIR}/nlopt.i + COMMAND ${SWIG_EXECUTABLE} -I${PROJECT_BINARY_DIR}/api -outdir ${CMAKE_CURRENT_BINARY_DIR} -c++ -guile -scmstub -o ${guile_cpp_source} ${CMAKE_CURRENT_SOURCE_DIR}/nlopt.i COMMAND ${CMAKE_COMMAND} -E rename ${CMAKE_CURRENT_BINARY_DIR}/nlopt.scm ${CMAKE_CURRENT_BINARY_DIR}/nlopt.scm.in COMMAND ${CMAKE_COMMAND} -DINFILE=${CMAKE_CURRENT_BINARY_DIR}/nlopt.scm.in -DOUTFILE=${CMAKE_CURRENT_BINARY_DIR}/nlopt.scm -DNLOPT_SUFFIX=${NLOPT_SUFFIX} -P ${CMAKE_CURRENT_BINARY_DIR}/GenericConfigureFile.cmake) endif () diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 5e5f82c..c1990fd 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -1,7 +1,7 @@ add_custom_target (tests) # have to add timer.c and mt19937ar.c as symbols are declared extern -add_executable (testopt testfuncs.c testfuncs.h testopt.cpp ${CMAKE_SOURCE_DIR}/util/timer.c ${CMAKE_SOURCE_DIR}/util/mt19937ar.c) +add_executable (testopt testfuncs.c testfuncs.h testopt.cpp ${PROJECT_SOURCE_DIR}/util/timer.c ${PROJECT_SOURCE_DIR}/util/mt19937ar.c) target_link_libraries (testopt ${nlopt_lib}) add_dependencies (tests testopt) @@ -28,21 +28,21 @@ foreach (algo_index RANGE 29)# 42 endforeach () endforeach () -if (NUMPY_FOUND AND PYTHONLIBS_FOUND AND (SWIG_FOUND OR (EXISTS ${CMAKE_SOURCE_DIR}/swig/nlopt-python.cpp))) - set (PYINSTALLCHECK_ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/swig" - "PYTHONPATH=${CMAKE_BINARY_DIR}/swig" +if (NUMPY_FOUND AND PYTHONLIBS_FOUND AND (SWIG_FOUND OR (EXISTS ${PROJECT_SOURCE_DIR}/swig/nlopt-python.cpp))) + set (PYINSTALLCHECK_ENVIRONMENT "LD_LIBRARY_PATH=${PROJECT_BINARY_DIR}/swig" + "PYTHONPATH=${PROJECT_BINARY_DIR}/swig" ) add_test (NAME test_python COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/t_python.py) set_tests_properties (test_python PROPERTIES ENVIRONMENT "${PYINSTALLCHECK_ENVIRONMENT}") endif () if (OCTAVE_FOUND) - add_test (NAME test_octave COMMAND ${OCTAVE_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/t_octave.m ${CMAKE_SOURCE_DIR}/octave ${CMAKE_BINARY_DIR}/octave) + add_test (NAME test_octave COMMAND ${OCTAVE_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/t_octave.m ${PROJECT_SOURCE_DIR}/octave ${PROJECT_BINARY_DIR}/octave) endif () if (GUILE_FOUND AND ((SWIG_FOUND AND SWIG_VERSION VERSION_GREATER 2.0.9) OR (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/nlopt-guile.cpp))) - set (GUILECHECK_ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/swig" - "GUILE_LOAD_PATH=${CMAKE_BINARY_DIR}/swig" + set (GUILECHECK_ENVIRONMENT "LD_LIBRARY_PATH=${PROJECT_BINARY_DIR}/swig" + "GUILE_LOAD_PATH=${PROJECT_BINARY_DIR}/swig" ) add_test (NAME test_guile COMMAND ${GUILE_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/t_guile.scm) set_tests_properties (test_guile PROPERTIES ENVIRONMENT "${GUILECHECK_ENVIRONMENT}") -- 2.30.2