mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-03 20:20:48 -06:00
When compiling 64-bit Windows, establish 32-bit Visual Studio 2010 environment and compile Octave plugin using this environment.
p4#: 19011
This commit is contained in:
parent
2e9f842072
commit
1622df540b
@ -111,11 +111,8 @@ set (CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/Install/)
|
||||
# Application
|
||||
################################################################################
|
||||
add_subdirectory(ApplicationCode)
|
||||
add_subdirectory(OctavePlugin)
|
||||
|
||||
# Do not build Octave plugins for Windows 64-bit, as there is no precompiled 64-bit Octave available
|
||||
if (NOT CMAKE_CL_64)
|
||||
add_subdirectory(OctavePlugin)
|
||||
endif()
|
||||
#
|
||||
|
||||
################################################################################
|
||||
|
@ -17,9 +17,29 @@ endif()
|
||||
|
||||
set(OCTAVE_BINARY_OCT_FILES)
|
||||
|
||||
# On Windows, the Octave plugins are compiled using 32-bit VS2010
|
||||
# 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
|
||||
STRING(REPLACE "/bin" "" OCTAVE_QT_ROOT ${32BIT_QMAKE_PATH})
|
||||
|
||||
SET(OCTAVE_QT_INCLUDE_DIR ${OCTAVE_QT_ROOT}/include)
|
||||
SET(OCTAVE_QT_QTCORE_INCLUDE_DIR ${OCTAVE_QT_ROOT}/include/QtCore)
|
||||
SET(OCTAVE_QT_QTNETWORK_INCLUDE_DIR ${OCTAVE_QT_ROOT}/include/QtNetwork)
|
||||
SET(OCTAVE_QT_LIBRARY_DIR ${OCTAVE_QT_ROOT}/lib)
|
||||
endif()
|
||||
else()
|
||||
SET(OCTAVE_QT_INCLUDE_DIR ${QT_INCLUDE_DIR})
|
||||
SET(OCTAVE_QT_QTCORE_INCLUDE_DIR ${QT_QTCORE_INCLUDE_DIR})
|
||||
SET(OCTAVE_QT_QTNETWORK_INCLUDE_DIR ${QT_QTNETWORK_INCLUDE_DIR})
|
||||
SET(OCTAVE_QT_LIBRARY_DIR ${QT_LIBRARY_DIR})
|
||||
endif()
|
||||
|
||||
|
||||
find_program(MKOCTFILE_EXECUTABLE mkoctfile)
|
||||
|
||||
if(NOT MKOCTFILE_EXECUTABLE)
|
||||
message(WARNING "Failed to find mkoctfile")
|
||||
else()
|
||||
@ -36,12 +56,29 @@ else()
|
||||
get_filename_component(baseFilename "${srcFileName}" NAME_WE)
|
||||
|
||||
set(octFileName "${CMAKE_CURRENT_BINARY_DIR}/${baseFilename}.oct")
|
||||
add_custom_command(
|
||||
OUTPUT "${octFileName}"
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E chdir ${OCTAVE_PATH} ${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}"
|
||||
DEPENDS "${srcFileName}"
|
||||
COMMENT "Generating ${octFileName}"
|
||||
)
|
||||
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Windows" AND CMAKE_CL_64)
|
||||
# The following line calls the build configuration for x86 VS2010 compiler
|
||||
# call "\"%VS100COMNTOOLS%../../VC/vcvarsall.bat\"" x86
|
||||
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}
|
||||
-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}"
|
||||
COMMENT "Generating ${octFileName}"
|
||||
)
|
||||
else()
|
||||
add_custom_command(
|
||||
OUTPUT "${octFileName}"
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E chdir ${OCTAVE_PATH} ${MKOCTFILE_EXECUTABLE} -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}"
|
||||
COMMENT "Generating ${octFileName}"
|
||||
)
|
||||
endif()
|
||||
|
||||
list(APPEND OCTAVE_BINARY_OCT_FILES "${octFileName}")
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user