\r
if (NOT DEFINED HAVE_FPCLASSIFY)\r
message(STATUS "Looking for fpclassify")\r
- file (WRITE ${CMAKE_BINARY_DIR}/fpclassify.c "#include <math.h>\n")\r
- file (APPEND ${CMAKE_BINARY_DIR}/fpclassify.c "int main(void) {\n")\r
- file (APPEND ${CMAKE_BINARY_DIR}/fpclassify.c "if (!fpclassify(3.14159)) fpclassify(2.7183);\n")\r
- file (APPEND ${CMAKE_BINARY_DIR}/fpclassify.c " return 0; }\n")\r
+ file (WRITE ${PROJECT_BINARY_DIR}/fpclassify.c "#include <math.h>\n")\r
+ file (APPEND ${PROJECT_BINARY_DIR}/fpclassify.c "int main(void) {\n")\r
+ file (APPEND ${PROJECT_BINARY_DIR}/fpclassify.c "if (!fpclassify(3.14159)) fpclassify(2.7183);\n")\r
+ file (APPEND ${PROJECT_BINARY_DIR}/fpclassify.c " return 0; }\n")\r
try_compile (HAVE_FPCLASSIFY\r
- ${CMAKE_BINARY_DIR}/build_fpclassify\r
- ${CMAKE_BINARY_DIR}/fpclassify.c\r
+ ${PROJECT_BINARY_DIR}/build_fpclassify\r
+ ${PROJECT_BINARY_DIR}/fpclassify.c\r
CMAKE_FLAGS -DLINK_LIBRARIES=m)\r
message(STATUS "Looking for fpclassify - ${HAVE_FPCLASSIFY}")\r
endif ()\r
#==============================================================================\r
set (${INCLUDE_DIRECTORIES} "")\r
include_directories (\r
- ${CMAKE_BINARY_DIR}/api\r
- ${CMAKE_BINARY_DIR}\r
+ ${PROJECT_BINARY_DIR}/api\r
+ ${PROJECT_BINARY_DIR}\r
stogo\r
util\r
direct\r
#==============================================================================\r
\r
set (NLOPT_HEADERS \r
- api/nlopt.h ${CMAKE_BINARY_DIR}/api/nlopt.hpp ${CMAKE_BINARY_DIR}/api/nlopt.f\r
+ api/nlopt.h ${PROJECT_BINARY_DIR}/api/nlopt.hpp ${PROJECT_BINARY_DIR}/api/nlopt.f\r
)\r
\r
set (NLOPT_SOURCES \r
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}")
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 ()
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 ()
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)
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}")