OverviewFilesCommitsIssuesDocsReleasesPeers

opencog-cogutil commits / cfff83c

Move build directives to cmakefile
cfff83c9976eb2d3ef2ee2f54a6a858598f73fb6
by Linas Vepstas <linasvepstas@gmail.com> · 2025-12-19T01:40:49.000Z

Changed files (2) +25 -45

CMakeLists.txt +2 -30
……@@ -144,36 +144,8 @@ ENDIF (PARALLEL_STL_FOUND)
144144# Set default include paths.
145145INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR})
146146
147# -------------------------------------------------
148# Library configuration
149# Small hack to handle unixes that use "/usr/lib64" instead of
150# "/usr/lib" as the default lib path on 64 bit archs.
151IF (NOT DEFINED LIB_DIR_SUFFIX)
152 IF (WIN32)
153 # On Windows with MSVC, we don't need this check
154 ELSE (WIN32)
155 EXECUTE_PROCESS(COMMAND ${CMAKE_CXX_COMPILER} -print-search-dirs OUTPUT_VARIABLE PRINT_SEARCH_DIRS_OUTPUT)
156 STRING(REGEX MATCH "\r?\nlibraries:.*\r?\n" COMPILER_LIB_SEARCH_DIRS ${PRINT_SEARCH_DIRS_OUTPUT})
157 IF (NOT ${COMPILER_LIB_SEARCH_DIRS} STREQUAL "")
158 STRING(REGEX MATCH "/lib64/:|/lib64:|/lib64\n" HAS_LIB64 ${COMPILER_LIB_SEARCH_DIRS})
159 IF (NOT ${HAS_LIB64} STREQUAL "")
160 SET(LIB_DIR_SUFFIX "64")
161 ENDIF (NOT ${HAS_LIB64} STREQUAL "")
162 ENDIF (NOT ${COMPILER_LIB_SEARCH_DIRS} STREQUAL "")
163 ENDIF (WIN32)
164ENDIF (NOT DEFINED LIB_DIR_SUFFIX)
165
166# RPATH handling (see https://cmake.org/Wiki/CMake_RPATH_handling)
167# Note: RPATH only supported under Linux!
168SET(CMAKE_SKIP_BUILD_RPATH FALSE)
169IF (APPLE)
170 SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
171ELSE (APPLE)
172 SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
173ENDIF (APPLE)
174SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib${LIB_DIR_SUFFIX}/opencog")
175SET(CMAKE_BUILD_WITH_INSTALL_NAME_DIR FALSE)
176SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
147# Library configuration (LIB_DIR_SUFFIX for lib64, RPATH handling)
148INCLUDE(OpenCogLibOptions)
177149
178150# -------------------------------------------------
179151# Install configuration
cmake/OpenCogLibOptions.cmake +23 -15
……@@ -1,24 +1,27 @@
11# -------------------------------------------------
22# Library configuration
33
4#This fixes linker issue on OS X
5#See https://cmake.org/cmake/help/v3.0/policy/CMP0042.html
6if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
7 set(CMAKE_MACOSX_RPATH 1)
8endif()
4# This fixes linker issue on OS X
5# See https://cmake.org/cmake/help/v3.0/policy/CMP0042.html
6IF (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
7 SET(CMAKE_MACOSX_RPATH 1)
8ENDIF (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
99
1010# Small hack to handle unixes that use "/usr/lib64" instead of
1111# "/usr/lib" as the default lib path on 64 bit archs.
12#
1312IF (NOT DEFINED LIB_DIR_SUFFIX)
14 EXECUTE_PROCESS(COMMAND ${CMAKE_CXX_COMPILER} -print-search-dirs OUTPUT_VARIABLE PRINT_SEARCH_DIRS_OUTPUT)
15 STRING(REGEX MATCH "\r?\nlibraries:.*\r?\n" COMPILER_LIB_SEARCH_DIRS ${PRINT_SEARCH_DIRS_OUTPUT})
16 IF (NOT ${COMPILER_LIB_SEARCH_DIRS} STREQUAL "")
17 STRING(REGEX MATCH "/lib64/:|/lib64:|/lib64\n" HAS_LIB64 ${COMPILER_LIB_SEARCH_DIRS})
18 IF (NOT ${HAS_LIB64} STREQUAL "")
19 SET(LIB_DIR_SUFFIX "64")
20 ENDIF (NOT ${HAS_LIB64} STREQUAL "")
21 ENDIF (NOT ${COMPILER_LIB_SEARCH_DIRS} STREQUAL "")
13 IF (WIN32)
14 # On Windows with MSVC, we don't need this check
15 ELSE (WIN32)
16 EXECUTE_PROCESS(COMMAND ${CMAKE_CXX_COMPILER} -print-search-dirs OUTPUT_VARIABLE PRINT_SEARCH_DIRS_OUTPUT)
17 STRING(REGEX MATCH "\r?\nlibraries:.*\r?\n" COMPILER_LIB_SEARCH_DIRS ${PRINT_SEARCH_DIRS_OUTPUT})
18 IF (NOT ${COMPILER_LIB_SEARCH_DIRS} STREQUAL "")
19 STRING(REGEX MATCH "/lib64/:|/lib64:|/lib64\n" HAS_LIB64 ${COMPILER_LIB_SEARCH_DIRS})
20 IF (NOT ${HAS_LIB64} STREQUAL "")
21 SET(LIB_DIR_SUFFIX "64")
22 ENDIF (NOT ${HAS_LIB64} STREQUAL "")
23 ENDIF (NOT ${COMPILER_LIB_SEARCH_DIRS} STREQUAL "")
24 ENDIF (WIN32)
2225ENDIF (NOT DEFINED LIB_DIR_SUFFIX)
2326
2427# RPATH handling (see https://cmake.org/Wiki/CMake_RPATH_handling)
……@@ -27,6 +30,11 @@ ENDIF (NOT DEFINED LIB_DIR_SUFFIX)
2730# the build directories, and NOT the system directories. But that
2831# means that, during install, the paths have to be tweaked.
2932SET(CMAKE_SKIP_BUILD_RPATH FALSE)
30SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
33IF (APPLE)
34 SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
35ELSE (APPLE)
36 SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
37ENDIF (APPLE)
3138SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib${LIB_DIR_SUFFIX}/opencog")
39SET(CMAKE_BUILD_WITH_INSTALL_NAME_DIR FALSE)
3240SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)