Commit dcdf1066 authored by Tyler Wilson's avatar Tyler Wilson
Browse files

PROG: Reverting r8153 (merging cmake into trunk)

git-svn-id: http://subversion.wr.usgs.gov/repos/prog/isis3/trunk@8158 41f8697f-d340-4b68-9986-7bafba869bb8
parent a89bb385
Loading
Loading
Loading
Loading

isis/CMakeLists.txt

deleted100644 → 0
+0 −260
Original line number Diff line number Diff line
#===============================================================================
#      The main build file for building ISIS using CMake.
#===============================================================================
# CMake initialization

# Specify the required version of CMake.  If your machine does not
#  have this, it should be easy to build from https://cmake.org/download/
cmake_minimum_required(VERSION 3.4)

# Point cmake to our other CMake files.
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")

list(APPEND CMAKE_INCLUDE_PATH
  /usgs/pkgs/local/v007/include/
  /usgs/pkgs/local/v007/bin/
  /usgs/pkgs/local/v007/lib/
  /usgs/pkgs/local/v007/src/
  /usgs/pkgs/local/v007/include/google-protobuf/protobuf2.6.1/
  /usgs/pkgs/local/v007/include/xercesc/xercesc-3.1.2/
  /usgs/pkgs/local/v007/include/tiff/tiff-4.0.5/
  /usr/lib64/
)

set(CMAKE_PREFIX_PATH
  /usgs/pkgs/local/v007/include/
  /usgs/pkgs/local/v007/bin/
  /usgs/pkgs/local/v007/lib/
  /usgs/pkgs/local/v007/libexec/
  /usr/lib
  /usr/local/lib
  /usr/lib64/
  /opt/usgs/v007/ports/Library/Frameworks/
  /opt/usgs/v007/ports/libexec/
  /opt/usgs/v007/ports/bin/
  /opt/usgs/v007/ports/lib/
  /opt/usgs/v007/ports/include/
  /opt/usgs/v007/ports/libexec/qt5
  /opt/usgs/v007/ports/libexec/qt5/bin/
  /opt/usgs/v007/3rdparty/bin
  /opt/usgs/v007/3rdparty/include/
  /opt/usgs/v007/3rdparty/lib/
  /opt/usgs/v007/proprietary/
  /opt/usgs/v007/proprietary/include/
  /opt/usgs/v007/proprietary/lib/
)

include(AddIsisModule)
include(Utilities)
include(TestSetup)
include(InstallThirdParty)

#===============================================================================
#===============================================================================
# Project information

project (USGS_ISIS)


# Short and long name of this package
set(PACKAGE            "ISIS")
set(PACKAGE_NAME       "USGS ISIS")

# Version number
set(VERSION            "3.5.00.0")
set(PACKAGE_VERSION    ${VERSION})

# Full name and version number
set(PACKAGE_STRING     "${PACKAGE_NAME} ${VERSION}")

# Other release information
set(VERSION_DATE              "2017-04-24")
set(THIRD_PARTY_LIBS_VERSION  "v007")
set(RELEASE_STAGE             "alpha") # (alpha, beta, stable)

# Define to the address where bug reports for this package should be sent.
set(PACKAGE_BUGREPORT  "https://isis.astrogeology.usgs.gov/fixit")

# Main website associated with the software package
set(PACKAGE_URL        "https://isis.astrogeology.usgs.gov/")

# Retrieve a string describing the OS this is built on.
get_os_version(osVersionString)
message("Detected Operating System: ${osVersionString}")

#===============================================================================
#===============================================================================
# Configuration options

# All libraries are build as shared.  The main library is also built
#  as a static library using some specialized code in Utilities.cmake.
set(BUILD_SHARED_LIBS ON)


# Specify flags used
set(thirdPartyCppFlags -Wall -DISIS_LITTLE_ENDIAN=1 -fPIC -Wno-unused-parameter -Wno-overloaded-virtual)
#set(thirdPartyCppFlags -Wall -ansi -DISIS_LITTLE_ENDIAN=1 -fPIC -Wno-unused-parameter -Wno-overloaded-virtual)

# Specify user options that can be passed in with the initial CMake command.
option(isis3Data       "Directory containing Isis3Data"              "NA")
option(isis3TestData   "Directory containing Isis3TestData"          "NA")
option(testOutputDir   "Directory to store app test output folders"  "NA")
option(buildCore       "Build the core ISIS modules"                 ON  )
option(buildMissions   "Build the mission specific modules"          ON  )
option(buildStaticCore "Build libisis3 static as well as dynamic"    OFF )
option(buildTests      "Set up unit, application, and module tests." ON  )

if(EXISTS ${isis3Data})
  set(ENV{ISIS3DATA} "${isis3Data}")
  message("Using ISIS3DATA = $ENV{ISIS3DATA}")
else()
  message(WARNING "Isis3Data directory ${isis3Data} not found, unit tests will fail.")
endif()
if(EXISTS ${isis3TestData})
  set(ENV{ISIS3TESTDATA} "${isis3TestData}")
  message("Using ISIS3TESTDATA = $ENV{ISIS3TESTDATA}")
else()
  message(WARNING "Isis3TestData directory ${isis3TestData} not found, application and module tests will fail.")
endif()
#if(EXISTS ${CMAKE_INSTALL_PREFIX})
#  set(ENV{CMAKE_INSTALL_PREFIX} "${CMAKE_INSTALL_PREFIX}")
#  message("Using INSTALL PREFIX = $ENV{CMAKE_INSTALL_PREFIX}")
#else()
#  message(WARNING "Isis3TestData directory ${CMAKE_INSTALL_PREFIX} not found, application and module tests will fail.")
#endif()

if(${testOutputDir} STREQUAL "NA")
  # User did not specify the test directory, default to the test input folder.
  message(WARNING "Test output directory not specified, setting it to ${isis3TestData}.")
else()
  # User specified a test output folder, make sure it exists.
  message("Writing test data folders to = ${testOutputDir}")
  execute_process(COMMAND mkdir -p ${testOutputDir})
endif()

# Set the default library extension based on the platform
if(APPLE)
  set(SO ".dylib")
else()
  set(SO ".so")
endif()


#===============================================================================
#===============================================================================
# Start setting up the build
# Add extension to find fortran until .so symlink can be added to /usr/lib64
list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES .so.3 .so.6 .so.5)

# Set up all the third party library dependencies.
include(FindAllDependencies)

# Allow everything to include the 3rd party libraries
include_directories(SYSTEM ${ALLINCDIRS})
link_directories(${ALLLIBDIRS})

# add isis headers
file(GLOB ISIS_HEADERS ${CMAKE_SOURCE_DIR}/src/*/objs/*/*.h
                       ${CMAKE_SOURCE_DIR}/src/*/objs/*/*.hpp)
file(COPY ${ISIS_HEADERS} DESTINATION ${CMAKE_SOURCE_DIR}/incs)

include_directories(${CMAKE_SOURCE_DIR}/incs)

# install scripts
# file(MAKE_DIRECTORY ${CMAKE_INSTALL_PREFIX}/scripts)
file(COPY ${CMAKE_SOURCE_DIR}/scripts DESTINATION ${CMAKE_INSTALL_PREFIX})

set(CORE_LIB_NAME isis3)

# Specify relative library include paths which will be set up on
#  the installed files.
if(APPLE)
  set(CMAKE_INSTALL_RPATH "@loader_path/../lib;@loader_path/../3rdParty/lib")
else()
  set(CMAKE_INSTALL_RPATH "$ORIGIN/../lib;$ORIGIN/../3rdParty/lib")
endif()
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)

# We will set up some links with these files at the end of the install process so
#  make sure they are cleared at the start of the install process.
install(CODE "EXECUTE_PROCESS(COMMAND rm -f ${CMAKE_INSTALL_PREFIX}/lib/libisis3.5.0${SO})")
install(CODE "EXECUTE_PROCESS(COMMAND rm -f ${CMAKE_INSTALL_PREFIX}/lib/libisis3.5${SO})")
install(CODE "EXECUTE_PROCESS(COMMAND rm -f ${CMAKE_INSTALL_PREFIX}/lib/libisis3.${SO})")
EXECUTE_PROCESS(COMMAND cp -f ${CMAKE_SOURCE_DIR}/src/base/objs/Preference/TestPreferences ${CMAKE_BINARY_DIR}/)
install(CODE "EXECUTE_PROCESS(COMMAND cp -f ${CMAKE_SOURCE_DIR}/src/base/objs/Preference/TestPreferences ${CMAKE_INSTALL_PREFIX}/)")

# Append CPP flags set in the third party lib file to the string set in this file.
string(REPLACE ";" " " FLAGS_STR "${thirdPartyCppFlags}")
set(CMAKE_CXX_FLAGS  "${CMAKE_CXX_FLAGS} ${FLAGS_STR}" )
# Set up the ctest tool which is used to run all of the tests.
enable_testing()
include(CTest)

# Delete any existing plugin files in the build folder so they
#  don't get filled with duplicate entries.
file(GLOB existingPlugins "${CMAKE_BINARY_DIR}/plugins/*.plugin")
if(existingPlugins)
  file(REMOVE ${existingPlugins})
endif()

# Add a config file to the install bin directory so that QT can find the plugin libraries.
file(WRITE "${CMAKE_BINARY_DIR}/qt.conf" "[Paths]\nPlugins=../3rdParty/plugins/\n")
install(FILES "${CMAKE_BINARY_DIR}/qt.conf" DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)

# Create an xml folder in the source directory that we will need later
set(sourceXmlFolder ${CMAKE_BINARY_DIR}/bin/xml)
execute_process(COMMAND mkdir -p ${CMAKE_BINARY_DIR}/bin/xml)

# Create an xml folder in the source directory that we will need later
set(sourceXmlFolder ${CMAKE_BINARY_DIR}/bin/xml)
execute_process(COMMAND mkdir -p ${CMAKE_BINARY_DIR}/bin/xml)

# Set up install of the templates folder.
install(DIRECTORY ${CMAKE_SOURCE_DIR}/templates DESTINATION .)

# Set up install of the make folder.
install(DIRECTORY ${CMAKE_SOURCE_DIR}/make DESTINATION ${CMAKE_INSTALL_PREFIX})

# Have CMake process all of the source code and tests.
add_subdirectory(src)

# Set up third party libraries for installation
install_third_party()

# Create a link from the build/src directory to each folder in 3rdPartyLibs/plugins.
# - This is required so that the plugins can be found during unit tests.
# TIP: Set "export QT_DEBUG_PLUGINS=1" to help debug plugin errors.
foreach(plugin ${THIRDPARTYPLUGINFOLDERS})
  get_filename_component(pluginName ${plugin} NAME)
  if(NOT EXISTS ${CMAKE_BINARY_DIR}/lib/${pluginName})
    execute_process(COMMAND ln -s "${plugin}" ${pluginName}
    WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/lib")
  endif()
endforeach()

# Set up documentation build target.
# - This script is called by running "make docs".
# - This long call passes all desired variables to the script.
add_custom_target(docs COMMAND ${CMAKE_COMMAND}
                  -DPROJECT_SOURCE_DIR=${PROJECT_SOURCE_DIR}
                  -DDOXYGEN=${DOXYGEN}  -DXALAN=${XALAN}
                  -DLATEX=${LATEX}
                  -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}
                  -P ${CMAKE_MODULE_PATH}/BuildDocs.cmake)

# Add a custom build target to clean out everything that gets added to the source
#  directory during the build process.
# - Only a few things are added in order to make the tests work properly so
#   this is very straightforward.
add_custom_target(clean_source COMMAND rm -rf "${CMAKE_BINARY_DIR}/*" "${CMAKE_INSTALL_PREFIX}/*" ;)

# Set up a few top level files for installation.
install(FILES IsisPreferences DESTINATION ${CMAKE_INSTALL_PREFIX})
install(FILES license.txt     DESTINATION ${CMAKE_INSTALL_PREFIX})
install(FILES version         DESTINATION ${CMAKE_INSTALL_PREFIX})

# Trigger all post-install behavior.
# - The only way to run commands post-install in CMake is to add a subdirectory at
#   the end of this file containing a CMakeLists.txt file which includes all of
#   the desired post-install commands inside.
add_subdirectory(cmake)

isis/cmake/AddIsisModule.cmake

deleted100644 → 0
+0 −296
Original line number Diff line number Diff line
#===============================================================================
#        Functions to add ISIS modules to the CMake build
#===============================================================================

include(CodeGeneration)


# Incorporate an application folder
function(add_isis_app folder libDependencies)

  # The internal build name will be different than the output name
  # - This deals with problems compiling same-named targets on case-insensitive machines.
  get_filename_component(appName ${folder}  NAME)
  set(internalAppName ${appName}_app)

  # Get the source and header files
  file(GLOB headers "${folder}/*.h" "${folder}/*.hpp")
  file(GLOB sources "${folder}/*.c" "${folder}/*.cpp")
  file(GLOB xmlFiles "${folder}/*.xml")

  # All the XML files need to be copied to the install directory
  # - They also need be put in the source folder for the app tests
  install(FILES ${xmlFiles} DESTINATION "${CMAKE_INSTALL_PREFIX}/bin/xml")
  if(NOT EXISTS ${CMAKE_BINARY_DIR}/bin/xml)
      execute_process(COMMAND mkdir ${CMAKE_BINARY_DIR}/bin/xml)
  endif()

  foreach(xml ${xmlFiles})
    get_filename_component(folder ${xml} DIRECTORY)
    get_filename_component(name ${folder} NAME)
    if(NOT EXISTS ${CMAKE_BINARY_DIR}/bin/xml/${name}.xml)
      execute_process(COMMAND ln -s "${xml}" "${name}.xml"
                      WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin/xml)
    endif()
  endforeach()

  # Generate required QT files
  generate_moc_files(mocFiles ${folder})
  set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)

  # Set up the executable
  add_executable(${internalAppName} ${headers} ${sources} ${mocFiles})
  set_target_properties(${internalAppName} PROPERTIES LINKER_LANGUAGE CXX)

  # Have the app install with the real name, not the internal name.
  target_link_libraries(${internalAppName} ${libDependencies})
  set_target_properties(${internalAppName} PROPERTIES OUTPUT_NAME ${appName})
  install(TARGETS ${internalAppName} DESTINATION bin)

  if(${buildTests})
    # Set up the app tests
    # - There may be multiple test folders in the /tsts directory, each
    #   with its own Makefile describing the test.
    set(testFolder ${folder}/tsts)
    file(GLOB tests "${testFolder}/*")
    foreach(f ${tests})
      add_makefile_test_folder(${f} ${appName}_app)
    endforeach()
  endif()

endfunction(add_isis_app)




# Set up the lone unit test in an obj folder
function(make_obj_unit_test moduleName testFile truthFile reqLibs pluginLibs)

  # Get the object name (last folder part)
  get_filename_component(folder ${testFile} DIRECTORY)
  get_filename_component(filename ${folder} NAME)

  # See if there are any plugin libraries that match the name
  # - If there are, we need to link to them!
  set(matchedLibs)
  foreach (f ${pluginLibs})
    if(${f} STREQUAL ${filename})
      set(matchedLibs ${f})
    endif()
  endforeach()

  # Generate a name for the executable
  set(executableName "${moduleName}_unit_test_${filename}")

  # Create the executable and link it to the module library
  add_executable( ${executableName} ${testFile}  )
  set(depLibs "${reqLibs};${matchedLibs}")
  target_link_libraries(${executableName} ${moduleName} ${depLibs})

  # Call function to add the test
  add_unit_test_target(${executableName} ${truthFile})

endfunction(make_obj_unit_test)




# Incorporate a single obj folder
function(add_isis_obj folder reqLibs)

  get_filename_component(folderName ${folder} NAME)

  # Look inside this folder for include files

  # Find the source and header files
  file(GLOB headers "${folder}/*.h" "${folder}/*.hpp")
  file(GLOB sources "${folder}/*.c" "${folder}/*.cpp")
  file(GLOB truths  "${folder}/*.truth")
  file(GLOB plugins "${folder}/*.plugin")

  # Generate protobuf, ui, and moc files if needed.
  generate_protobuf_files(protoFiles ${folder})
  generate_ui_files(uiFiles ${folder})
  generate_moc_files(mocFiles ${folder})

  # Don't include the unit test in the main source list
  set(unitTest ${folder}/unitTest.cpp)
  list(REMOVE_ITEM sources "${unitTest}")

  # Add the unit test file for this folder if it exists.
  if(EXISTS "${unitTest}")
    set(thisTestFiles ${unitTest})
  else()
    set(thisTestFiles)
  endif()

  set(thisSourceFiles ${headers} ${sources} ${protoFiles} ${uiFiles} ${mocFiles})
  set(thisTruthFiles  ${truths} )

  # If there are multiple truth files, select based on the OS.
  list(LENGTH thisTestFiles numTest)
  list(LENGTH thisTruthFiles numTruth)
  if(NOT (${numTest} EQUAL ${numTruth}) )

    # Look for a truth file that contains the OS string
    set(matchedTruth "NONE")
    foreach(truthFile ${thisTruthFiles})

      # If the truth file contains the OS string, use it.
      string(FIND ${truthFile} ${osVersionString} position)
      if(NOT ${position} EQUAL -1)
        set(matchedTruth ${truthFile})
        break()
      endif()

    endforeach()

    # If no OS matched, use the default truth file.
    if(${matchedTruth} STREQUAL "NONE")
      set(matchedTruth "${folder}/${folderName}.truth")
    endif()
    set(thisTruthFiles ${matchedTruth})
  endif()

  # Always pass the test and truth files to the caller
  set(newTestFiles   ${thisTestFiles}   PARENT_SCOPE)
  set(newTruthFiles  ${thisTruthFiles}  PARENT_SCOPE)

  list(LENGTH plugins numPlugins)
  if(${numPlugins} EQUAL 0)
    # No plugins, pass the source files back to the caller to add to the larger library.
    set(newSourceFiles ${thisSourceFiles} PARENT_SCOPE)
  else()
    # Folder with a plugin means that this is a separate library!
    # Add it here and then we are done with the source files.

    if(NOT (${numPlugins} EQUAL 1))
      message( FATAL_ERROR "Error: Multiple plugins found in folder!" )
    endif()

    get_filename_component(libName    ${folder}  NAME)
    get_filename_component(pluginName ${plugins} NAME)
    message("Adding plugin library: ${libName}")

    add_library_wrapper(${libName} "${thisSourceFiles}" "${reqLibs}")

    # Append the plugin file to a single file in the build directory
    # where the .so files will be created.  During installation copy these
    # plugin files to the installation library folder.
    set(pluginPath ${CMAKE_BINARY_DIR}/lib/${pluginName})
    cat(${plugins} ${pluginPath})
    install(PROGRAMS ${pluginPath} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/)

    # Record this library name for the caller
    set(newPluginLib ${libName}  PARENT_SCOPE)
  endif()


endfunction(add_isis_obj)




# Adds an entire module folder.
# - This includes the "base" folder and all the mission specific folders.
# - Each call of this function generates one library.
function(add_isis_module name)

  # First argument is the module name.
  # Arguments after the first are the folders to look in.
  set(topFolders ${ARGN})

  message("Adding ISIS module with folders: ${topFolders}")

  set(objFolders)
  set(appFolders)
  set(tstFolders)
  foreach(f ${topFolders})

    # Folders: apps, lib, tests
    set(objsDir "${CMAKE_CURRENT_LIST_DIR}/${f}/objs")
    set(appsDir "${CMAKE_CURRENT_LIST_DIR}/${f}/apps")
    set(tstsDir "${CMAKE_CURRENT_LIST_DIR}/${f}/tsts")

    # Start with the objs folder
    get_subdirectory_list(${objsDir} thisObjFolders)
    get_subdirectory_list(${appsDir} thisAppFolders)
    get_subdirectory_list(${tstsDir} thisTstFolders)

    set(objFolders ${objFolders} ${thisObjFolders})
    set(appFolders ${appFolders} ${thisAppFolders})
    set(tstFolders ${tstFolders} ${thisTstFolders})

  endforeach()

  # Now that we have the library info, call function to add it to the build!
  # - Base module depends on 3rd party libs, other libs also depend on base.
  # - Only the base module gets both a static and shared library.
  if(${name} STREQUAL ${CORE_LIB_NAME})
    set(reqLibs ${ALLLIBS})
    set(alsoStatic ON)
  else()
    set(reqLibs "${CORE_LIB_NAME};${ALLLIBS}")
    set(alsoStatic OFF)
  endif()

  set(sourceFiles)
  set(unitTestFiles)
  set(truthFiles)
  set(pluginLibs)
  foreach(f ${objFolders})
    set(newSourceFiles)
    set(newTestFiles)
    set(newTruthFiles)
    set(newPluginLib)
    add_isis_obj(${f} "${reqLibs}") # Library add function
    set(sourceFiles   ${sourceFiles}   ${newSourceFiles})
    set(unitTestFiles ${unitTestFiles} ${newTestFiles})
    set(truthFiles    ${truthFiles}    ${newTruthFiles})
    set(pluginLibs    ${pluginLibs}    ${newPluginLib})

  endforeach(f)

  # Some modules don't generate a library
  list(LENGTH sourceFiles temp)
  if (NOT ${temp} EQUAL 0)
    message("Adding library: ${name}")
    add_library_wrapper(${name} "${sourceFiles}" "${reqLibs}" ${alsoStatic})

    # Have the plugin libraries depend on the module library
    foreach(plug ${pluginLibs})
      target_link_libraries(${plug} ${name})
    endforeach()

    # For everything beyond the module library, require the module library.
    set(reqLibs "${reqLibs};${name}")

    if(${buildTests})
      set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/unitTest)

      # Now that the library is added, add all the unit tests for it.
      list(LENGTH unitTestFiles temp)
      math(EXPR numTests "${temp} - 1")
      foreach(val RANGE ${numTests})
        list(GET unitTestFiles ${val} testFile )
        list(GET truthFiles    ${val} truthFile)
        make_obj_unit_test(${name} ${testFile} ${truthFile} "${reqLibs}" "${pluginLibs}")
      endforeach()
    endif()

  endif()

  # Process the apps (core library always required)
  foreach(f ${appFolders})
    add_isis_app(${f} "${reqLibs}")
  endforeach()

  if(${buildTests})
    # Process the tests
    # - The test suite in qisis/SquishTests are not properly located or handled by this code!
    foreach(f ${tstFolders})
      add_makefile_test_folder(${f} ${name}_module)
    endforeach()
  endif()

endfunction(add_isis_module)

isis/cmake/BuildDocs.cmake

deleted100644 → 0
+0 −507

File deleted.

Preview size limit exceeded, changes collapsed.

isis/cmake/CMakeLists.txt

deleted100644 → 0
+0 −28
Original line number Diff line number Diff line

# This file contains everything that should be exectuted AFTER the installation
# step has completed.

message("Setting up post-install behavior...")

# Set up format version numbers for the main shared library on install
install(CODE "EXECUTE_PROCESS(COMMAND cp -f ${CMAKE_BINARY_DIR}/lib/libisis3${SO} ${CMAKE_INSTALL_PREFIX}/lib/libisis3.5.0${SO})")
install(CODE "EXECUTE_PROCESS(COMMAND ln -sf libisis3.5.0${SO} ${CMAKE_INSTALL_PREFIX}/lib/libisis3.5${SO})")
install(CODE "EXECUTE_PROCESS(COMMAND ln -sf libisis3.5${SO} ${CMAKE_INSTALL_PREFIX}/lib/libisis3${SO})")
install(CODE "EXECUTE_PROCESS(COMMAND ln -sf libisis3${SO} ${CMAKE_INSTALL_PREFIX}/lib/libisis${SO})")

# On OSX, need to correct all the paths encoded in each of the distributed library files so
#  that they properly find the distruted files using relative paths.
if (APPLE)
  # Call the correction script on each folder containing libraries
  install(CODE "EXECUTE_PROCESS(COMMAND python ${CMAKE_SOURCE_DIR}/scripts/finalizeInstalledOsxRpaths.py ${CMAKE_INSTALL_PREFIX}/lib)")
  install(CODE "EXECUTE_PROCESS(COMMAND python ${CMAKE_SOURCE_DIR}/scripts/finalizeInstalledOsxRpaths.py ${CMAKE_INSTALL_PREFIX}/3rdParty/lib resetRpath)")
  install(CODE "EXECUTE_PROCESS(COMMAND python ${CMAKE_SOURCE_DIR}/scripts/finalizeInstalledOsxRpaths.py ${CMAKE_INSTALL_PREFIX}/bin)")

  # Also need to get the plugin folders
  get_subdirectory_list(${CMAKE_SOURCE_DIR}/3rdParty/plugins pluginFolders)
  foreach(f ${pluginFolders})
    get_filename_component(name ${f} NAME)
    install(CODE "EXECUTE_PROCESS(COMMAND python ${CMAKE_SOURCE_DIR}/scripts/finalizeInstalledOsxRpaths.py ${CMAKE_INSTALL_PREFIX}/3rdParty/plugins/${name} resetRpath)")
  endforeach()

endif()

isis/cmake/CodeGeneration.cmake

deleted100644 → 0
+0 −138

File deleted.

Preview size limit exceeded, changes collapsed.

Loading