Skip to content

Commit

Permalink
NiftyReg (#59)
Browse files Browse the repository at this point in the history
* NiftyReg added to the superbuild

* updated NiftyReg tag

* added one compilation of NiftyReg to travis
  • Loading branch information
rijobro authored and paskino committed Aug 3, 2018
1 parent b965069 commit 6ecb81b
Show file tree
Hide file tree
Showing 5 changed files with 108 additions and 1 deletion.
8 changes: 8 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,14 @@ language: cpp
# so try to keep this concise to avoid need to update
matrix:
include:
- os: linux
python: 3
# +boost -itk +fftw3 +hdf5 -ace
env: EXTRA_BUILD_FLAGS="-DUSE_SYSTEM_Boost=ON -DUSE_ITK=OFF -DUSE_SYSTEM_FFTW3=ON -DUSE_SYSTEM_HDF5=ON -DUSE_SYSTEM_ACE=OFF -DUSE_NiftyReg=ON" CC=gcc-5 CXX=g++-5 PYMVER=3
- os: linux
python: 2.7
# +boost -itk +fftw3 +hdf5 -ace
env: EXTRA_BUILD_FLAGS="-DUSE_SYSTEM_Boost=ON -DUSE_ITK=OFF -DUSE_SYSTEM_FFTW3=ON -DUSE_SYSTEM_HDF5=ON -DUSE_SYSTEM_ACE=OFF -DUSE_NiftyReg=ON" CC=gcc-5 CXX=g++-5 PYMVER=3
- os: linux
python: 3
# +boost -itk +fftw3 +hdf5 -ace
Expand Down
3 changes: 3 additions & 0 deletions SuperBuild.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -112,15 +112,18 @@ option(USE_SYSTEM_Armadillo "Build using an external version of Armadillo" OFF)
option(USE_SYSTEM_SWIG "Build using an external version of SWIG" OFF)
#option(USE_SYSTEM_Gadgetron "Build using an external version of Gadgetron" OFF)
option(USE_SYSTEM_SIRF "Build using an external version of SIRF" OFF)
option(USE_SYSTEM_NiftyReg "Build using an external version of NiftyReg" OFF)
option(USE_SYSTEM_GTest "Build using an external version of GTest" OFF)
option(USE_SYSTEM_ACE "Build using an external version of ACE" ON)

if (APPLE)
set (build_STIR_OPENMP_default OFF)
else()
set (build_STIR_OPENMP_default ON)
endif()
option(BUILD_STIR_WITH_OPENMP "Build STIR with OpenMP acceleration" ${build_STIR_OPENMP_default})


if (WIN32)
set(build_Gadgetron_default OFF)
else()
Expand Down
88 changes: 88 additions & 0 deletions SuperBuild/External_NiftyReg.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
#========================================================================
# Author: Richard Brown
# Author: Benjamin A Thomas
# Author: Kris Thielemans
# Copyright 2017 University College London
# Copyright 2017 STFC
#
# This file is part of the CCP PETMR Synergistic Image Reconstruction Framework (SIRF) SuperBuild.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0.txt
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#=========================================================================

#This needs to be unique globally
set(proj NiftyReg)

# Set dependency list
set(${proj}_DEPENDENCIES "")

# Include dependent projects if any
ExternalProject_Include_Dependencies(${proj} DEPENDS_VAR ${proj}_DEPENDENCIES)

# Set external name (same as internal for now)
set(externalProjName ${proj})

if(NOT ( DEFINED "USE_SYSTEM_${externalProjName}" AND "${USE_SYSTEM_${externalProjName}}" ) )
message(STATUS "${__indent}Adding project ${proj}")

### --- Project specific additions here
set(${proj}_Install_Dir ${SUPERBUILD_INSTALL_DIR})

#message(STATUS "HDF5_ROOT in External_SIRF: " ${HDF5_ROOT})
set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${SUPERBUILD_INSTALL_DIR})
set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} ${SUPERBUILD_INSTALL_DIR})

set(${proj}_SOURCE_DIR "${SOURCE_ROOT_DIR}/${proj}" )
set(${proj}_BINARY_DIR "${SUPERBUILD_WORK_DIR}/builds/${proj}/build" )
set(${proj}_DOWNLOAD_DIR "${SUPERBUILD_WORK_DIR}/downloads/${proj}" )
set(${proj}_STAMP_DIR "${SUPERBUILD_WORK_DIR}/builds/${proj}/stamp" )
set(${proj}_TMP_DIR "${SUPERBUILD_WORK_DIR}/builds/${proj}/tmp" )

ExternalProject_Add(${proj}
${${proj}_EP_ARGS}
GIT_REPOSITORY ${${proj}_URL}
GIT_TAG ${${proj}_TAG}
SOURCE_DIR ${${proj}_SOURCE_DIR}
BINARY_DIR ${${proj}_BINARY_DIR}
DOWNLOAD_DIR ${${proj}_DOWNLOAD_DIR}
STAMP_DIR ${${proj}_STAMP_DIR}
TMP_DIR ${${proj}_TMP_DIR}

CMAKE_ARGS
-DCMAKE_PREFIX_PATH=${SUPERBUILD_INSTALL_DIR}
-DCMAKE_LIBRARY_PATH=${SUPERBUILD_INSTALL_DIR}/lib
-DCMAKE_INCLUDE_PATH=${SUPERBUILD_INSTALL_DIR}
-DCMAKE_INSTALL_PREFIX=${${proj}_Install_Dir}
INSTALL_DIR ${${proj}_Install_Dir}
DEPENDS
${${proj}_DEPENDENCIES}
)

set(${proj}_ROOT ${${proj}_SOURCE_DIR})
set(${proj}_INCLUDE_DIR ${${proj}_SOURCE_DIR})

else()
if(${USE_SYSTEM_${externalProjName}})
find_package(${proj} ${${externalProjName}_REQUIRED_VERSION} REQUIRED)
message("USING the system ${externalProjName}, set ${externalProjName}_DIR=${${externalProjName}_DIR}")
endif()
ExternalProject_Add_Empty(${proj} DEPENDS "${${proj}_DEPENDENCIES}")
endif()

mark_as_superbuild(
VARS
${externalProjName}_DIR:PATH
LABELS
"FIND_PACKAGE"
)
6 changes: 5 additions & 1 deletion SuperBuild/External_SIRF.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,11 @@
set(proj SIRF)

# Set dependency list
set(${proj}_DEPENDENCIES "STIR;Boost;HDF5;ISMRMRD;FFTW3;SWIG")
if (${USE_NiftyReg})
set(${proj}_DEPENDENCIES "STIR;Boost;HDF5;ISMRMRD;FFTW3;SWIG;NiftyReg")
else()
set(${proj}_DEPENDENCIES "STIR;Boost;HDF5;ISMRMRD;FFTW3;SWIG")
endif()

message(STATUS "Matlab_ROOT_DIR=" ${Matlab_ROOT_DIR})
message(STATUS "STIR_DIR=" ${STIR_DIR})
Expand Down
4 changes: 4 additions & 0 deletions version_config.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,10 @@ set(glog_TAG v035)
set(ITK_URL https://itk.org/ITK.git)
set(ITK_TAG v4.13.0)

## NiftyReg
set(NiftyReg_URL https://git.code.sf.net/p/niftyreg/git )
set(NiftyReg_TAG 4e4525b84223c182b988afaa85e32ac027774c42 )

option (DEVEL_BUILD "Developer Build" OFF)
mark_as_advanced(DEVEL_BUILD)

Expand Down

0 comments on commit 6ecb81b

Please sign in to comment.