mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Buildsystem: Prefixed the resinsight vars to make them groupend and more accessible from the cmake gui.
Also introduced an option to turn openmp on and off p4#: 22257
This commit is contained in:
parent
e0f5b15499
commit
1e7c4a385a
@ -275,50 +275,50 @@ set (RESINSIGHT_LICENSE_FILES
|
||||
)
|
||||
|
||||
# bundle libraries together with private installation
|
||||
if (PRIVATE_INSTALL)
|
||||
if (RESINSIGHT_PRIVATE_INSTALL)
|
||||
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
# tell binary to first attempt to load libraries from its own directory
|
||||
set_target_properties (ResInsight PROPERTIES INSTALL_RPATH "\$ORIGIN")
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
# tell binary to first attempt to load libraries from its own directory
|
||||
set_target_properties (ResInsight PROPERTIES INSTALL_RPATH "\$ORIGIN")
|
||||
|
||||
# Find Qt libraries and sym links
|
||||
file (GLOB RESINSIGHT_FILES
|
||||
${QT_LIBRARY_DIR}/libQtCore.so*
|
||||
${QT_LIBRARY_DIR}/libQtGui.so*
|
||||
${QT_LIBRARY_DIR}/libQtOpenGL.so*
|
||||
${QT_LIBRARY_DIR}/libQtNetwork.so*
|
||||
${QT_LIBRARY_DIR}/libQtScript.so*
|
||||
${QT_LIBRARY_DIR}/libQtScriptTools.so*
|
||||
)
|
||||
# Find Qt libraries and sym links
|
||||
file (GLOB RESINSIGHT_FILES
|
||||
${QT_LIBRARY_DIR}/libQtCore.so*
|
||||
${QT_LIBRARY_DIR}/libQtGui.so*
|
||||
${QT_LIBRARY_DIR}/libQtOpenGL.so*
|
||||
${QT_LIBRARY_DIR}/libQtNetwork.so*
|
||||
${QT_LIBRARY_DIR}/libQtScript.so*
|
||||
${QT_LIBRARY_DIR}/libQtScriptTools.so*
|
||||
)
|
||||
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
|
||||
# put a .exe.local file in the target directory to pick up DLLs from there
|
||||
install (CODE "exec_program (${CMAKE_COMMAND} ARGS -E touch \$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}${RESINSIGHT_FINAL_NAME}/ResInsight${CMAKE_EXECUTABLE_SUFFIX}.local)")
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
|
||||
# put a .exe.local file in the target directory to pick up DLLs from there
|
||||
install (CODE "exec_program (${CMAKE_COMMAND} ARGS -E touch \$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}${RESINSIGHT_FINAL_NAME}/ResInsight${CMAKE_EXECUTABLE_SUFFIX}.local)")
|
||||
|
||||
set (RESINSIGHT_FILES
|
||||
${QT_BINARY_DIR}/QtCore4.dll
|
||||
${QT_BINARY_DIR}/QtGui4.dll
|
||||
${QT_BINARY_DIR}/QtOpenGL4.dll
|
||||
${QT_BINARY_DIR}/QtNetwork4.dll
|
||||
${QT_BINARY_DIR}/QtScript4.dll
|
||||
${QT_BINARY_DIR}/QtScriptTools4.dll
|
||||
)
|
||||
endif()
|
||||
set (RESINSIGHT_FILES
|
||||
${QT_BINARY_DIR}/QtCore4.dll
|
||||
${QT_BINARY_DIR}/QtGui4.dll
|
||||
${QT_BINARY_DIR}/QtOpenGL4.dll
|
||||
${QT_BINARY_DIR}/QtNetwork4.dll
|
||||
${QT_BINARY_DIR}/QtScript4.dll
|
||||
${QT_BINARY_DIR}/QtScriptTools4.dll
|
||||
)
|
||||
endif()
|
||||
|
||||
set (RESINSIGHT_FILES ${RESINSIGHT_FILES} ${RESINSIGHT_LICENSE_FILES})
|
||||
set (RESINSIGHT_FILES ${RESINSIGHT_FILES} ${RESINSIGHT_LICENSE_FILES})
|
||||
|
||||
|
||||
install(TARGETS ResInsight DESTINATION ${RESINSIGHT_FINAL_NAME})
|
||||
install(TARGETS ResInsight DESTINATION ${RESINSIGHT_FINAL_NAME})
|
||||
|
||||
install(FILES ${RESINSIGHT_FILES} DESTINATION ${RESINSIGHT_FINAL_NAME} )
|
||||
install(FILES ${RESINSIGHT_FILES} DESTINATION ${RESINSIGHT_FINAL_NAME} )
|
||||
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/resinsight DESTINATION ${RESINSIGHT_FINAL_NAME} PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE )
|
||||
endif()
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/resinsight DESTINATION ${RESINSIGHT_FINAL_NAME} PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE )
|
||||
endif()
|
||||
|
||||
else (PRIVATE_INSTALL)
|
||||
else (RESINSIGHT_PRIVATE_INSTALL)
|
||||
# binaries go in /usr/bin
|
||||
install (TARGETS ResInsight
|
||||
DESTINATION bin
|
||||
@ -343,4 +343,4 @@ else (PRIVATE_INSTALL)
|
||||
install (FILES ${CMAKE_CURRENT_BINARY_DIR}/resinsight.desktop
|
||||
DESTINATION share/applications
|
||||
)
|
||||
endif (PRIVATE_INSTALL)
|
||||
endif (RESINSIGHT_PRIVATE_INSTALL)
|
||||
|
@ -16,16 +16,22 @@ else()
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP")
|
||||
endif()
|
||||
|
||||
option (RESINSIGHT_USE_OPENMP "Enable OpenMP parallellization in the code" ON)
|
||||
|
||||
IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
# Linux specific code
|
||||
set(CMAKE_CXX_FLAGS "-DCVF_LINUX -pipe -Wextra -Woverloaded-virtual -Wformat")
|
||||
set(CMAKE_CXX_FLAGS_DEBUG "-ggdb -g3 -O0 -DDEBUG -D_DEBUG")
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNO_DEBUG")
|
||||
#set(CMAKE_EXE_LINKER_FLAGS "-Xlinker -rpath .")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp")
|
||||
if(RESINSIGHT_USE_OPENMP)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp")
|
||||
endif()
|
||||
# set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -g1")
|
||||
ELSE()
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /openmp")
|
||||
if(RESINSIGHT_USE_OPENMP)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /openmp")
|
||||
endif()
|
||||
ENDIF()
|
||||
|
||||
|
||||
@ -121,11 +127,11 @@ if (NOT "${RESINSIGHT_PLATFORM}" STREQUAL "")
|
||||
endif()
|
||||
|
||||
# override system install prefix if private installation chosen
|
||||
option (PRIVATE_INSTALL "Install in a private directory" ON)
|
||||
if (PRIVATE_INSTALL)
|
||||
option (RESINSIGHT_PRIVATE_INSTALL "Install as an independent bundle including the neccesary Qt libraries" ON)
|
||||
if (RESINSIGHT_PRIVATE_INSTALL)
|
||||
set (CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/Install/)
|
||||
#set (CMAKE_INSTALL_PREFIX /usr/${RESINSIGHT_FINAL_NAME})
|
||||
endif (PRIVATE_INSTALL)
|
||||
endif (RESINSIGHT_PRIVATE_INSTALL)
|
||||
|
||||
################################################################################
|
||||
# Application
|
||||
|
@ -19,6 +19,7 @@ set(CPP_SOURCES
|
||||
riGetActiveCellCorners.cpp
|
||||
riGetGridProperty.cpp
|
||||
riSetGridProperty.cpp
|
||||
riGetPropertyNames.cpp
|
||||
)
|
||||
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
@ -36,9 +37,9 @@ set(OCTAVE_BINARY_OCT_FILES)
|
||||
# To be able to do so, we need to establish all Qt-related variables for a 32-bit configuration
|
||||
# In addition, VS2010 32-bit compile environment must be launched
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Windows" AND CMAKE_CL_64)
|
||||
find_program(32BIT_QMAKE 32bitqmake)
|
||||
if(32BIT_QMAKE)
|
||||
get_filename_component(32BIT_QMAKE_PATH ${32BIT_QMAKE} PATH) # Get path to 32-bit Qt binary directory
|
||||
find_program(RESINSIGHT_OCTAVE_PLUGIN_32BIT_QMAKE_EXE 32bitqmake)
|
||||
if(RESINSIGHT_OCTAVE_PLUGIN_32BIT_QMAKE_EXE)
|
||||
get_filename_component(32BIT_QMAKE_PATH ${RESINSIGHT_OCTAVE_PLUGIN_32BIT_QMAKE_EXE} PATH) # Get path to 32-bit Qt binary directory
|
||||
STRING(REPLACE "/bin" "" OCTAVE_QT_ROOT ${32BIT_QMAKE_PATH})
|
||||
|
||||
SET(OCTAVE_QT_INCLUDE_DIR ${OCTAVE_QT_ROOT}/include)
|
||||
@ -54,13 +55,13 @@ else()
|
||||
endif()
|
||||
|
||||
|
||||
find_program(MKOCTFILE_EXECUTABLE mkoctfile)
|
||||
if(NOT MKOCTFILE_EXECUTABLE)
|
||||
find_program(RESINSIGHT_OCTAVE_PLUGIN_MKOCTFILE_EXE mkoctfile)
|
||||
if(NOT RESINSIGHT_OCTAVE_PLUGIN_MKOCTFILE_EXE)
|
||||
message(WARNING "Failed to find mkoctfile")
|
||||
else()
|
||||
|
||||
# Get path to Octave binary directory to be able to build .oct files if Octave is not in path
|
||||
get_filename_component(OCTAVE_PATH ${MKOCTFILE_EXECUTABLE} PATH)
|
||||
get_filename_component(OCTAVE_PATH ${RESINSIGHT_OCTAVE_PLUGIN_MKOCTFILE_EXE} PATH)
|
||||
|
||||
foreach(srcFileName IN LISTS CPP_SOURCES)
|
||||
|
||||
@ -79,7 +80,7 @@ else()
|
||||
add_custom_command(
|
||||
OUTPUT "${octFileName}"
|
||||
COMMAND call "\"%VS100COMNTOOLS%../../VC/vcvarsall.bat\"" x86
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E chdir ${OCTAVE_PATH} ${MKOCTFILE_EXECUTABLE} -I${OCTAVE_QT_QTNETWORK_INCLUDE_DIR}
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E chdir ${OCTAVE_PATH} ${RESINSIGHT_OCTAVE_PLUGIN_MKOCTFILE_EXE} -I${OCTAVE_QT_QTNETWORK_INCLUDE_DIR}
|
||||
-I${OCTAVE_QT_QTCORE_INCLUDE_DIR} -I${OCTAVE_QT_INCLUDE_DIR} ${RPATH_COMMAND}
|
||||
-L${OCTAVE_QT_LIBRARY_DIR} -lQtCore${QT_LIBRARY_POSTFIX} -lQtNetwork${QT_LIBRARY_POSTFIX} -o "${octFileName}" "${srcFileName}"
|
||||
DEPENDS "${srcFileName}"
|
||||
@ -88,7 +89,7 @@ else()
|
||||
else()
|
||||
add_custom_command(
|
||||
OUTPUT "${octFileName}"
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E chdir ${OCTAVE_PATH} ${MKOCTFILE_EXECUTABLE} -I${OCTAVE_QT_QTNETWORK_INCLUDE_DIR}
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E chdir ${OCTAVE_PATH} ${RESINSIGHT_OCTAVE_PLUGIN_MKOCTFILE_EXE} -I${OCTAVE_QT_QTNETWORK_INCLUDE_DIR}
|
||||
-I${OCTAVE_QT_QTCORE_INCLUDE_DIR} -I${OCTAVE_QT_INCLUDE_DIR} ${RPATH_COMMAND}
|
||||
-L${OCTAVE_QT_LIBRARY_DIR} -lQtCore${QT_LIBRARY_POSTFIX} -lQtNetwork${QT_LIBRARY_POSTFIX} -o "${octFileName}" "${srcFileName}"
|
||||
DEPENDS "${srcFileName}"
|
||||
@ -98,7 +99,7 @@ else()
|
||||
else()
|
||||
add_custom_command(
|
||||
OUTPUT "${octFileName}"
|
||||
COMMAND ${MKOCTFILE_EXECUTABLE} -I${QT_QTNETWORK_INCLUDE_DIR} -I${QT_QTCORE_INCLUDE_DIR} -I${QT_INCLUDE_DIR} ${RPATH_COMMAND} -L${QT_LIBRARY_DIR} -lQtCore${QT_LIBRARY_POSTFIX} -lQtNetwork${QT_LIBRARY_POSTFIX} -o "${octFileName}" "${srcFileName}"
|
||||
COMMAND ${RESINSIGHT_OCTAVE_PLUGIN_MKOCTFILE_EXE} -I${QT_QTNETWORK_INCLUDE_DIR} -I${QT_QTCORE_INCLUDE_DIR} -I${QT_INCLUDE_DIR} ${RPATH_COMMAND} -L${QT_LIBRARY_DIR} -lQtCore${QT_LIBRARY_POSTFIX} -lQtNetwork${QT_LIBRARY_POSTFIX} -o "${octFileName}" "${srcFileName}"
|
||||
DEPENDS "${srcFileName}"
|
||||
COMMENT "Generating ${octFileName}"
|
||||
)
|
||||
@ -127,7 +128,7 @@ else()
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/riGetActiveCellCorners.oct"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/riGetGridProperty.oct"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/riSetGridProperty.oct"
|
||||
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/riGetPropertyNames.oct"
|
||||
SOURCES ${CPP_SOURCES}
|
||||
)
|
||||
|
||||
@ -151,9 +152,9 @@ else()
|
||||
|
||||
endif()
|
||||
|
||||
if (PRIVATE_INSTALL)
|
||||
if (RESINSIGHT_PRIVATE_INSTALL)
|
||||
install(FILES ${OCTAVE_BINARY_OCT_FILES} DESTINATION ${RESINSIGHT_FINAL_NAME})
|
||||
else (PRIVATE_INSTALL)
|
||||
else (RESINSIGHT_PRIVATE_INSTALL)
|
||||
# probe for site location of .oct files
|
||||
if (NOT OCTAVE_SITE_OCT_DIR)
|
||||
find_program (OCTAVE_CONFIG_COMMAND
|
||||
@ -170,6 +171,6 @@ else (PRIVATE_INSTALL)
|
||||
install (FILES ${OCTAVE_BINARY_OCT_FILES}
|
||||
DESTINATION ${OCTAVE_SITE_OCT_DIR}
|
||||
)
|
||||
endif (PRIVATE_INSTALL)
|
||||
endif (RESINSIGHT_PRIVATE_INSTALL)
|
||||
|
||||
|
||||
|
2
debian/patches/02_install_docdir.patch
vendored
2
debian/patches/02_install_docdir.patch
vendored
@ -13,7 +13,7 @@ index 7995ceb..4930b98 100644
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
@@ -313,7 +317,7 @@ else (PRIVATE_INSTALL)
|
||||
@@ -313,7 +317,7 @@ else (RESINSIGHT_PRIVATE_INSTALL)
|
||||
)
|
||||
# license go in /usr/share/doc
|
||||
install (FILES ${RESINSIGHT_LICENSE_FILES}
|
||||
|
@ -13,7 +13,7 @@ index 7995ceb..4930b98 100644
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
@@ -313,7 +317,7 @@ else (PRIVATE_INSTALL)
|
||||
@@ -313,7 +317,7 @@ else (RESINSIGHT_PRIVATE_INSTALL)
|
||||
)
|
||||
# license go in /usr/share/doc
|
||||
install (FILES ${RESINSIGHT_LICENSE_FILES}
|
||||
|
Loading…
Reference in New Issue
Block a user