chiark / gitweb /
Merge pull request #96 from jschueller/octave-site-dir
authorSteven G. Johnson <stevenj@mit.edu>
Wed, 2 Nov 2016 14:31:09 +0000 (10:31 -0400)
committerGitHub <noreply@github.com>
Wed, 2 Nov 2016 14:31:09 +0000 (10:31 -0400)
Allow to modify Python & octave site dir

CMakeLists.txt
octave/CMakeLists.txt
swig/CMakeLists.txt
test/CMakeLists.txt

index fae6557459f7c926aef9c8926a157d3a0bc0929a..ddcaa060f4242e835cfc42c784fde95e0a7e456d 100644 (file)
@@ -261,7 +261,7 @@ if (BUILD_PYTHON)
   find_package (NumPy)\r
 endif ()\r
 \r
-if (PYTHONINTERP_FOUND)\r
+if (NOT DEFINED INSTALL_PYTHON_DIR AND PYTHONINTERP_FOUND)\r
   execute_process ( COMMAND ${PYTHON_EXECUTABLE} -c "from distutils import sysconfig; print(sysconfig.get_python_lib(plat_specific=True, prefix='${CMAKE_INSTALL_PREFIX}'))"\r
                     OUTPUT_VARIABLE _ABS_PYTHON_MODULE_PATH\r
                     OUTPUT_STRIP_TRAILING_WHITESPACE )\r
@@ -269,7 +269,7 @@ if (PYTHONINTERP_FOUND)
   get_filename_component (_ABS_PYTHON_MODULE_PATH ${_ABS_PYTHON_MODULE_PATH} ABSOLUTE)\r
   file (RELATIVE_PATH _REL_PYTHON_MODULE_PATH ${CMAKE_INSTALL_PREFIX} ${_ABS_PYTHON_MODULE_PATH})\r
 \r
-  set (PYTHON_MODULE_PATH ${_REL_PYTHON_MODULE_PATH})\r
+  set (INSTALL_PYTHON_DIR ${_REL_PYTHON_MODULE_PATH})\r
 \r
 endif ()\r
 \r
index c84a2f49bbdb00d4f2a02d7fc2b4453b4cdf027e..1b4c0871e1438c3dbf2da664bdfd413ef027b285 100644 (file)
@@ -16,14 +16,18 @@ if (OCTAVE_FOUND)
   include_directories (${CMAKE_CURRENT_BINARY_DIR})
   octave_add_oct (nlopt_optimize SOURCES nlopt_optimize-oct.cc ${CMAKE_CURRENT_BINARY_DIR}/nlopt_optimize_usage.h LINK_LIBRARIES ${nlopt_lib})
 
-  file (RELATIVE_PATH PKG_OCTAVE_OCT_SITE_DIR ${OCTAVE_ROOT_DIR} ${OCTAVE_OCT_SITE_DIR})
-  install (TARGETS nlopt_optimize DESTINATION ${PKG_OCTAVE_OCT_SITE_DIR})
+  if (NOT DEFINED INSTALL_OCT_DIR)
+    file (RELATIVE_PATH INSTALL_OCT_DIR ${OCTAVE_ROOT_DIR} ${OCTAVE_OCT_SITE_DIR})
+  endif ()
+  install (TARGETS nlopt_optimize DESTINATION ${INSTALL_OCT_DIR})
 
   set (MFILES NLOPT_GN_DIRECT.m NLOPT_GN_DIRECT_L.m NLOPT_GN_DIRECT_L_RAND.m NLOPT_GN_DIRECT_NOSCAL.m NLOPT_GN_DIRECT_L_NOSCAL.m NLOPT_GN_DIRECT_L_RAND_NOSCAL.m NLOPT_GN_ORIG_DIRECT.m NLOPT_GN_ORIG_DIRECT_L.m NLOPT_GD_STOGO.m NLOPT_GD_STOGO_RAND.m NLOPT_LD_LBFGS_NOCEDAL.m NLOPT_LD_LBFGS.m NLOPT_LN_PRAXIS.m NLOPT_LD_VAR1.m NLOPT_LD_VAR2.m NLOPT_LD_TNEWTON.m NLOPT_LD_TNEWTON_RESTART.m NLOPT_LD_TNEWTON_PRECOND.m NLOPT_LD_TNEWTON_PRECOND_RESTART.m NLOPT_GN_CRS2_LM.m NLOPT_GN_MLSL.m NLOPT_GD_MLSL.m NLOPT_GN_MLSL_LDS.m NLOPT_GD_MLSL_LDS.m NLOPT_LD_MMA.m NLOPT_LN_COBYLA.m NLOPT_LN_NEWUOA.m NLOPT_LN_NEWUOA_BOUND.m NLOPT_LN_NELDERMEAD.m NLOPT_LN_SBPLX.m NLOPT_LN_AUGLAG.m NLOPT_LD_AUGLAG.m NLOPT_LN_AUGLAG_EQ.m NLOPT_LD_AUGLAG_EQ.m NLOPT_LN_BOBYQA.m NLOPT_GN_ISRES.m NLOPT_AUGLAG.m NLOPT_AUGLAG_EQ.m NLOPT_G_MLSL.m NLOPT_G_MLSL_LDS.m NLOPT_LD_SLSQP.m NLOPT_LD_CCSAQ.m NLOPT_GN_ESCH.m)
   set (M_DATA ${MFILES} nlopt_minimize.m nlopt_minimize_constrained.m)
 
-  file (RELATIVE_PATH PKG_OCTAVE_M_SITE_DIR ${OCTAVE_ROOT_DIR} ${OCTAVE_M_SITE_DIR})
-  install (FILES ${M_DATA} DESTINATION ${PKG_OCTAVE_M_SITE_DIR})
+  if (NOT DEFINED INSTALL_M_DIR)
+    file (RELATIVE_PATH INSTALL_M_DIR ${OCTAVE_ROOT_DIR} ${OCTAVE_M_SITE_DIR})
+  endif ()
+  install (FILES ${M_DATA} DESTINATION ${INSTALL_M_DIR})
 endif ()
 
 if (Matlab_FOUND)
index 16384b5fc4a493d09e5605cb62e93c7497cb5233..033bd38e8ba4d82a1352a9819663984be0af8342 100644 (file)
@@ -33,8 +33,8 @@ if (NUMPY_FOUND AND PYTHONLIBS_FOUND AND (SWIG_FOUND OR (EXISTS ${CMAKE_CURRENT_
     swig_link_libraries (nlopt ${PYTHON_LIBRARIES})
   endif ()
 
-  install (FILES ${CMAKE_CURRENT_BINARY_DIR}/nlopt.py DESTINATION ${PYTHON_MODULE_PATH})
-  install (TARGETS ${SWIG_MODULE_nlopt_REAL_NAME} LIBRARY DESTINATION ${PYTHON_MODULE_PATH})
+  install (FILES ${CMAKE_CURRENT_BINARY_DIR}/nlopt.py DESTINATION ${INSTALL_PYTHON_DIR})
+  install (TARGETS ${SWIG_MODULE_nlopt_REAL_NAME} LIBRARY DESTINATION ${INSTALL_PYTHON_DIR})
 endif ()
 
 
index 50dfb178507711e456a4a456b22054047a3570ff..9bea504d7de223245093ebc5a5b263e1f5cdde13 100644 (file)
@@ -30,7 +30,7 @@ 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=${INSTALL_DESTDIR}${INSTALL_LIB_DIR}:$ENV{LD_LIBRARY_PATH}"
-                                  "PYTHONPATH=${INSTALL_DESTDIR}${CMAKE_INSTALL_PREFIX}/${PYTHON_MODULE_PATH}${PATH_SEP}$ENV{PYTHONPATH}"
+                                  "PYTHONPATH=${INSTALL_DESTDIR}${CMAKE_INSTALL_PREFIX}/${INSTALL_PYTHON_DIR}${PATH_SEP}$ENV{PYTHONPATH}"
     )
   add_test (NAME test_python COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/t_python.py)
   set_tests_properties (test_python PROPERTIES ENVIRONMENT "${PYINSTALLCHECK_ENVIRONMENT}")