From 64ee53c0b00898e796f0070d25e39e6fd13cabf8 Mon Sep 17 00:00:00 2001 From: "Vladimir S. FONOV" Date: Tue, 23 Apr 2019 12:05:13 -0400 Subject: [PATCH 1/2] MINC 2019-04-23 (44fae20d) Run the UpdateFromUpstream.sh script to extract upstream MINC using the following shell commands. $ git archive --prefix=upstream-minc/ 44fae20d -- ./ChangeLog ./volume_io ./libsrc ./libsrc/minc_compat.h ./libcommon/minc_config.h ./libcommon/minc_config.c ./libsrc/minc_format_convert.c ./libsrc/value_conversion.c ./libsrc/hdf_convenience.c ./libcommon/read_file_names.c ./libsrc/minc_simple.c ./libcommon/time_stamp.h ./libsrc/hdf_convenience.h ./libsrc/type_limits.h ./libcommon/read_file_names.h ./libsrc/minc_varlists.h ./libcommon/restructure.h ./libsrc/nd_loop.h ./libcommon/restructure.c ./libsrc/minc_simple.h ./libsrc/strdup.c ./libsrc/minc_useful.h ./libsrc/minc_convenience.c ./libsrc/minc_basic.h ./libsrc/minc_compat.c ./libcommon/time_stamp.c ./libsrc/voxel_loop.h ./libsrc/minc_routines.h ./libsrc/minc_private.h ./libsrc/netcdf_convenience.c ./libsrc/voxel_loop.c ./libsrc/dim_conversion.c ./libsrc/minc_format_convert.h ./libsrc/nd_loop.c ./libcommon/ParseArgv.h ./libcommon/minc_error.c ./libcommon/minc_error.h ./libsrc/minc_structures.h ./libsrc/minc.h ./libsrc/image_conversion.c ./libcommon/ParseArgv.c ./libcommon/minc_common_defs.h ./COPYING ./UseLIBMINC.cmake.in ./NEWS ./AUTHORS ./libsrc2/m2util.c ./libsrc2/minc2_defs.h ./libsrc2/minc2_api.h ./libcommon/minc2_error.h ./libsrc2/grpattr.c ./libsrc2/hyper.c ./libsrc2/minc_compat2.h ./libcommon/minc2_error.c ./libsrc2/record.c ./libsrc2/volume.c ./libsrc2/datatype.c ./libsrc2/volprops.c ./libsrc2/valid.c ./libsrc2/convert.c ./libsrc2/free.c ./libsrc2/dimension.c ./libsrc2/label.c ./libsrc2/minc2.h ./libsrc2/minc2_private.h ./libsrc2/slice.c ./libsrc2/minc2_structs.h ./CMakeLists.txt ./nifti ./LIBMINCConfig.cmake.in ./README.release ./INSTALL ./config.h.cmake ./README | tar x $ git shortlog --perl-regexp --author='^((?!Kitware Robot).*)$' --no-merges --abbrev=8 --format='%h %s' ce4333ca..44fae20d Vladimir S. FONOV (10): fd83832f Adopted code from ITK: http://review.source.kitware.com/#/c/23646/ , addresses #99 e78160de Updated list of dependecies in libminc project b2bba385 Fixing build with ubuntu HDF5 package 361f2b53 Fixing build with ubuntu HDF5 package 9abbd9a0 Fixed a resource leak when dealing with gzipped minc file in minc1_io e6b27467 Changed configuration files for better integration into conda 9cd436de Fixing configuration files c2494d2d Fixed mixup in configuration parameters bcbccf97 Fixed missing quite 44fae20d Trying to implement changes from InsightSoftwareConsortium/ITK#754, need to propagate to all packages using libminc Change-Id: I83f8dce41072978366cf89bd05d177b4dd62d5ee --- CMakeLists.txt | 97 +++++++++++++++++++++------------------- LIBMINCConfig.cmake.in | 33 +++++++------- libsrc/hdf_convenience.c | 3 ++ libsrc2/volume.c | 3 ++ 4 files changed, 75 insertions(+), 61 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c83cf73f05f..4890af39bad 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,7 +7,7 @@ PROJECT(LIBMINC) SET(LIBMINC_PACKAGE_VERSION_MAJOR 2) SET(LIBMINC_PACKAGE_VERSION_MINOR 4) -SET(LIBMINC_PACKAGE_VERSION_PATCH 03) +SET(LIBMINC_PACKAGE_VERSION_PATCH 04) SET(LIBMINC_SOVERSION "5.2.0") @@ -365,11 +365,11 @@ SET(volume_io_HEADERS volume_io/Include/volume_io/volume_cache.h ) -SET(LIBMINC_LIBRARY ${LIBMINC_EXTERNAL_LIB_PREFIX}minc2) +SET(LIBMINC_LIBRARY minc2) # a hack for APPLE IF(LIBMINC_BUILD_SHARED_LIBS) - SET(LIBMINC_LIBRARY_STATIC ${LIBMINC_EXTERNAL_LIB_PREFIX}minc2_static) + SET(LIBMINC_LIBRARY_STATIC minc2_static) ELSE(LIBMINC_BUILD_SHARED_LIBS) SET(LIBMINC_LIBRARY_STATIC ${LIBMINC_LIBRARY}) ENDIF(LIBMINC_BUILD_SHARED_LIBS) @@ -378,17 +378,36 @@ IF(LIBMINC_NIFTI_SUPPORT) SET(NIFTI_LIBRARIES ${NIFTI_LIBRARY} ${ZNZ_LIBRARY} ) + get_filename_component(NIFTI_LIBRARY_NAME "${NIFTI_LIBRARY}" NAME) + get_filename_component(ZNZ_LIBRARY_NAME "${ZNZ_LIBRARY}" NAME) ELSE(LIBMINC_NIFTI_SUPPORT) SET(NIFTI_LIBRARIES ) + SET(NIFTI_LIBRARY ) + SET(ZNZ_LIBRARY ) + SET(NIFTI_LIBRARY_NAME ) + SET(ZNZ_LIBRARY_NAME ) ENDIF(LIBMINC_NIFTI_SUPPORT) +IF(NOT HDF5_LIBRARY AND HDF5_LIBRARIES) + SET(HDF5_LIBRARY ${HDF5_LIBRARIES}) +ENDIF() + +get_filename_component(HDF5_LIBRARY_NAME "${HDF5_LIBRARY}" NAME) +get_filename_component(ZLIB_LIBRARY_NAME "${ZLIB_LIBRARY}" NAME) -SET(LIBMINC_LIBRARIES ${LIBMINC_LIBRARY} ${HDF5_LIBRARIES} ${NIFTI_LIBRARIES} ${ZLIB_LIBRARY}) -SET(LIBMINC_STATIC_LIBRARIES ${LIBMINC_LIBRARY_STATIC} ${HDF5_LIBRARIES} ${NIFTI_LIBRARIES} ${ZLIB_LIBRARY}) +SET(LIBMINC_LIBRARIES ${LIBMINC_LIBRARY} ${HDF5_LIBRARY} ${NIFTI_LIBRARIES} ${ZLIB_LIBRARY}) +SET(LIBMINC_LIBRARIES_CONFIG ${LIBMINC_LIBRARY} ${HDF5_LIBRARY_NAME} ${NIFTI_LIBRARY_NAME} ${ZNZ_LIBRARY_NAME} ${ZLIB_LIBRARY_NAME}) +message("LIBMINC_LIBRARIES_CONFIG=${LIBMINC_LIBRARIES_CONFIG}") + +SET(LIBMINC_STATIC_LIBRARIES ${LIBMINC_LIBRARY_STATIC} ${HDF5_LIBRARY} ${NIFTI_LIBRARIES} ${ZLIB_LIBRARY}) +SET(LIBMINC_STATIC_LIBRARIES_CONFIG ${LIBMINC_LIBRARY_STATIC} ${HDF5_LIBRARY_NAME} ${NIFTI_LIBRARIES} ${ZLIB_LIBRARY_NAME}) IF(UNIX) SET(LIBMINC_LIBRARIES ${LIBMINC_LIBRARIES} m dl ${RT_LIBRARY}) SET(LIBMINC_STATIC_LIBRARIES ${LIBMINC_STATIC_LIBRARIES} m dl ${RT_LIBRARY}) + + SET(LIBMINC_LIBRARIES_CONFIG ${LIBMINC_LIBRARIES_CONFIG} m dl ${RT_LIBRARY_NAME}) + SET(LIBMINC_STATIC_LIBRARIES_CONFIG ${LIBMINC_STATIC_LIBRARIES_CONFIG} m dl ${RT_LIBRARY_NAME}) ENDIF(UNIX) SET(minc_LIB_SRCS ${minc2_LIB_SRCS} ${minc_common_SRCS}) @@ -401,7 +420,7 @@ ENDIF(LIBMINC_MINC1_SUPPORT) # Keep this variable for compatibility -SET(VOLUME_IO_LIBRARY ${LIBMINC_EXTERNAL_LIB_PREFIX}minc2) +SET(VOLUME_IO_LIBRARY minc2) SET(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}) ADD_LIBRARY(${LIBMINC_LIBRARY} ${LIBRARY_TYPE} ${minc_LIB_SRCS} ${minc_HEADERS} ${volume_io_LIB_SRCS} ${volume_io_HEADERS} ) @@ -411,11 +430,14 @@ IF(NIFTI_FOUND AND NOT LIBMINC_USE_SYSTEM_NIFTI) ENDIF() -TARGET_LINK_LIBRARIES(${LIBMINC_LIBRARY} ${HDF5_LIBRARIES} ${NIFTI_LIBRARIES} ${ZLIB_LIBRARY} ${RT_LIBRARY}) # +TARGET_LINK_LIBRARIES(${LIBMINC_LIBRARY} ${HDF5_LIBRARY} ${NIFTI_LIBRARIES} ${ZLIB_LIBRARY} ${RT_LIBRARY}) # IF(LIBMINC_MINC1_SUPPORT) INCLUDE_DIRECTORIES(${NETCDF_INCLUDE_DIR}) TARGET_LINK_LIBRARIES(${LIBMINC_LIBRARY} ${NETCDF_LIBRARY}) + get_filename_component(NETCDF_LIBRARY_NAME "${NETCDF_LIBRARY}" NAME) +ELSE(LIBMINC_MINC1_SUPPORT) + SET(NETCDF_LIBRARY_NAME ) ENDIF(LIBMINC_MINC1_SUPPORT) IF(NOT LIBMINC_USE_SYSTEM_NIFTI AND NOT LIBMINC_EXTERNALLY_CONFIGURED) @@ -425,7 +447,7 @@ ENDIF(NOT LIBMINC_USE_SYSTEM_NIFTI AND NOT LIBMINC_EXTERNALLY_CONFIGURED) EXPORT(TARGETS ${LIBMINC_LIBRARY} FILE "${LIBMINC_EXPORTED_TARGETS}.cmake") IF(UNIX) - TARGET_LINK_LIBRARIES(${LIBMINC_LIBRARY} m dl ) + TARGET_LINK_LIBRARIES(${LIBMINC_LIBRARY} m dl ) IF(LIBMINC_BUILD_SHARED_LIBS) ADD_LIBRARY(${LIBMINC_LIBRARY_STATIC} STATIC ${minc_LIB_SRCS} ${minc_HEADERS} ${volume_io_LIB_SRCS} ${volume_io_HEADERS} ) @@ -443,6 +465,9 @@ SET_TARGET_PROPERTIES(${LIBMINC_LIBRARY} IF(LIBMINC_MINC1_SUPPORT) SET(LIBMINC_LIBRARIES ${LIBMINC_LIBRARIES} ${NETCDF_LIBRARY} ) SET(LIBMINC_STATIC_LIBRARIES ${LIBMINC_STATIC_LIBRARIES} ${NETCDF_LIBRARY} ) + + SET(LIBMINC_LIBRARIES_CONFIG ${LIBMINC_LIBRARIES_CONFIG} ${NETCDF_LIBRARY_NAME} ) + SET(LIBMINC_STATIC_LIBRARIES_CONFIG ${LIBMINC_STATIC_LIBRARIES_CONFIG} ${NETCDF_LIBRARY_NAME} ) ENDIF(LIBMINC_MINC1_SUPPORT) IF( LIBMINC_INSTALL_LIB_DIR ) @@ -466,7 +491,23 @@ IF(LIBMINC_MINC1_SUPPORT) ADD_SUBDIRECTORY( ezminc ) ENDIF(LIBMINC_MINC1_SUPPORT) -# config for the build directory +SET(EZMINC_LIBRARIES minc_io ${LIBMINC_LIBRARIES}) +SET(EZMINC_LIBRARIES_CONFIG minc_io ${LIBMINC_LIBRARIES_CONFIG}) + +# config for install dir +SET(LIBMINC_USE_FILE_CONFIG "\${LIBMINC_INSTALL_PREFIX}/lib/UseLIBMINC.cmake" ) +SET(LIBMINC_INCLUDE_DIRS_CONFIG "\${LIBMINC_INSTALL_PREFIX}/include" ) +SET(LIBMINC_LIBRARY_DIRS_CONFIG "\${LIBMINC_INSTALL_PREFIX}/lib" ) +SET(LIBMINC_STATIC_LIBRARIES_CONFIG "" ) +SET(VOLUME_IO_LIBRARY_STATIC "") + +configure_file(LIBMINCConfig.cmake.in + ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${LIBMINC_EXTERNAL_LIB_PREFIX}LIBMINCConfig.cmake @ONLY ) + +configure_file(UseLIBMINC.cmake.in + ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/Use${LIBMINC_EXTERNAL_LIB_PREFIX}LIBMINC.cmake @ONLY) + +# configure for build dir SET(LIBMINC_USE_FILE_CONFIG ${CMAKE_CURRENT_BINARY_DIR}/UseLIBMINC.cmake) SET(LIBMINC_INCLUDE_DIRS_CONFIG @@ -475,7 +516,6 @@ SET(LIBMINC_INCLUDE_DIRS_CONFIG ${CMAKE_CURRENT_SOURCE_DIR}/libsrc2 ${CMAKE_CURRENT_SOURCE_DIR}/volume_io/Include ) - IF(LIBMINC_MINC1_SUPPORT) SET(LIBMINC_INCLUDE_DIRS_CONFIG ${LIBMINC_INCLUDE_DIRS_CONFIG} @@ -484,10 +524,10 @@ IF(LIBMINC_MINC1_SUPPORT) ) ENDIF(LIBMINC_MINC1_SUPPORT) -SET(EZMINC_LIBRARIES minc_io ${LIBMINC_LIBRARIES}) SET(LIBMINC_LIBRARY_DIRS_CONFIG ${CMAKE_CURRENT_BINARY_DIR}) SET(LIBMINC_LIBRARIES_CONFIG ${LIBMINC_LIBRARIES}) SET(LIBMINC_STATIC_LIBRARIES_CONFIG ${LIBMINC_STATIC_LIBRARIES}) +SET(EZMINC_LIBRARIES_CONFIG ${EZMINC_LIBRARIES}) IF(LIBMINC_MINC1_SUPPORT) SET(LIBMINC_LIBRARY_DIRS_CONFIG ${LIBMINC_LIBRARY_DIRS_CONFIG} ${CMAKE_CURRENT_BINARY_DIR}/ezminc) @@ -499,48 +539,15 @@ configure_file(LIBMINCConfig.cmake.in configure_file(UseLIBMINC.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/UseLIBMINC.cmake @ONLY) -# config for install dir -SET(LIBMINC_USE_FILE_CONFIG "${CMAKE_INSTALL_PREFIX}/${LIBMINC_INSTALL_LIB_DIR}/Use${LIBMINC_EXTERNAL_LIB_PREFIX}LIBMINC.cmake") -SET(LIBMINC_INCLUDE_DIRS_CONFIG ${CMAKE_INSTALL_PREFIX}/${LIBMINC_INSTALL_INCLUDE_DIR} ) -SET(LIBMINC_LIBRARY_DIRS_CONFIG ${CMAKE_INSTALL_PREFIX}/${LIBMINC_INSTALL_LIB_DIR}) -SET(LIBMINC_STATIC_LIBRARIES_CONFIG "") -SET(VOLUME_IO_LIBRARY_STATIC "") - -#fix for superbuild install -IF(SUPERBUILD_STAGING_PREFIX) - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" LIBMINC_INCLUDE_DIRS_CONFIG "${LIBMINC_INCLUDE_DIRS_CONFIG}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" LIBMINC_LIBRARY_DIRS_CONFIG "${LIBMINC_LIBRARY_DIRS_CONFIG}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" LIBMINC_LIBRARIES_CONFIG "${LIBMINC_LIBRARIES_CONFIG}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" EZMINC_LIBRARIES "${EZMINC_LIBRARIES}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" NETCDF_INCLUDE_DIR "${NETCDF_INCLUDE_DIR}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" HDF5_INCLUDE_DIR "${HDF5_INCLUDE_DIR}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" HDF5_INCLUDE_DIRS "${HDF5_INCLUDE_DIRS}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" NIFTI_INCLUDE_DIR "${NIFTI_INCLUDE_DIR}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" NETCDF_LIBRARY "${NETCDF_LIBRARY}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" HDF5_LIBRARY "${HDF5_LIBRARY}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" HDF5_LIBRARIES "${HDF5_LIBRARIES}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" NIFTI_LIBRARY "${NIFTI_LIBRARY}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" ZNZ_LIBRARY "${ZNZ_LIBRARY}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" ZLIB_LIBRARY "${ZLIB_LIBRARY}") - STRING(REPLACE "${SUPERBUILD_STAGING_PREFIX}/" "" ZLIB_LIBRARIES "${ZLIB_LIBRARIES}") -ENDIF(SUPERBUILD_STAGING_PREFIX) - -configure_file(LIBMINCConfig.cmake.in - ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${LIBMINC_EXTERNAL_LIB_PREFIX}LIBMINCConfig.cmake @ONLY ) - -configure_file(UseLIBMINC.cmake.in - ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/Use${LIBMINC_EXTERNAL_LIB_PREFIX}LIBMINC.cmake @ONLY) IF(LIBMINC_INSTALL_LIB_DIR AND NOT LIBMINC_INSTALL_NO_DEVELOPMENT) - INSTALL( FILES ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/Use${LIBMINC_EXTERNAL_LIB_PREFIX}LIBMINC.cmake ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${LIBMINC_EXTERNAL_LIB_PREFIX}LIBMINCConfig.cmake DESTINATION - ${LIBMINC_INSTALL_LIB_DIR} + ${LIBMINC_INSTALL_LIB_DIR}/cmake COMPONENT Development) - ENDIF(LIBMINC_INSTALL_LIB_DIR AND NOT LIBMINC_INSTALL_NO_DEVELOPMENT) # testing diff --git a/LIBMINCConfig.cmake.in b/LIBMINCConfig.cmake.in index 7790597b226..f8f7eb6d8c3 100644 --- a/LIBMINCConfig.cmake.in +++ b/LIBMINCConfig.cmake.in @@ -1,7 +1,8 @@ # LIBMINC CMake configuration file + +get_filename_component(LIBMINC_INSTALL_PREFIX "${CMAKE_CURRENT_LIST_DIR}/../../" ABSOLUTE) get_filename_component(LIBMINC_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH ) -get_filename_component(LIBMINC_INSTALL_PREFIX "${LIBMINC_CMAKE_DIR}" PATH) set(HAVE_MINC2 1) set(HAVE_EZMINC @LIBMINC_MINC1_SUPPORT@) @@ -9,26 +10,26 @@ set(HAVE_MINC1 @LIBMINC_MINC1_SUPPORT@) set(LIBMINC_NIFTI_SUPPORT @LIBMINC_NIFTI_SUPPORT@) -set(NETCDF_INCLUDE_DIR "@NETCDF_INCLUDE_DIR@") -set(HDF5_INCLUDE_DIR "@HDF5_INCLUDE_DIR@") -set(NIFTI_INCLUDE_DIR "@NIFTI_INCLUDE_DIR@") +#set(NETCDF_INCLUDE_DIR "@NETCDF_INCLUDE_DIR@") +#set(HDF5_INCLUDE_DIR "@HDF5_INCLUDE_DIR@") +#set(NIFTI_INCLUDE_DIR "@NIFTI_INCLUDE_DIR@") -set(NETCDF_LIBRARY "@NETCDF_LIBRARY@") -set(HDF5_LIBRARY "@HDF5_LIBRARY@") -set(ZLIB_LIBRARY "@ZLIB_LIBRARY@") -set(ZLIB_LIBRARIES "@ZLIB_LIBRARY@") -set(NIFTI_LIBRARIES "@NIFTI_LIBRARIES@") +#set(NETCDF_LIBRARY "@NETCDF_LIBRARY@") +#set(HDF5_LIBRARY "@HDF5_LIBRARY@") +#set(ZLIB_LIBRARY "@ZLIB_LIBRARY@") +#set(ZLIB_LIBRARIES "@ZLIB_LIBRARY@") +#set(NIFTI_LIBRARIES "@NIFTI_LIBRARIES@") -set(LIBMINC_INCLUDE_DIRS "@LIBMINC_INCLUDE_DIRS_CONFIG@") -set(LIBMINC_LIBRARY_DIRS "@LIBMINC_LIBRARY_DIRS_CONFIG@") -set(LIBMINC_USE_FILE "@LIBMINC_USE_FILE_CONFIG@") -set(LIBMINC_LIBRARIES "@LIBMINC_LIBRARIES_CONFIG@") +set(LIBMINC_INCLUDE_DIRS "@LIBMINC_INCLUDE_DIRS_CONFIG@") # ${LIBMINC_INSTALL_PREFIX}/include +set(LIBMINC_LIBRARY_DIRS "@LIBMINC_LIBRARY_DIRS_CONFIG@") # ${LIBMINC_INSTALL_PREFIX}/lib +set(LIBMINC_USE_FILE "@LIBMINC_USE_FILE_CONFIG@") # ${LIBMINC_INSTALL_PREFIX}/lib/UseLIBMINC.cmake -set(EZMINC_LIBRARIES "@EZMINC_LIBRARIES@") -set(VOLUME_IO_LIBRARIES "@VOLUME_IO_LIBRARY@") +set(LIBMINC_LIBRARIES "@LIBMINC_LIBRARIES_CONFIG@") +set(VOLUME_IO_LIBRARIES "@LIBMINC_LIBRARIES_CONFIG@") +set(EZMINC_LIBRARIES "@EZMINC_LIBRARIES_CONFIG@") set(LIBMINC_STATIC_LIBRARIES "@LIBMINC_STATIC_LIBRARIES_CONFIG@") -set(VOLUME_IO_STATIC_LIBRARIES "@VOLUME_IO_LIBRARY_STATIC@") +set(VOLUME_IO_STATIC_LIBRARIES "@LIBMINC_STATIC_LIBRARIES_CONFIG@") set( LIBMINC_FOUND 1 ) diff --git a/libsrc/hdf_convenience.c b/libsrc/hdf_convenience.c index ff4db288532..657188f21cf 100644 --- a/libsrc/hdf_convenience.c +++ b/libsrc/hdf_convenience.c @@ -16,6 +16,9 @@ /* Make 1.8.x compatible files if building with 1.10.x */ #if (H5_VERS_MAJOR==1)&&(H5_VERS_MINOR<10) #define H5F_LIBVER_V18 H5F_LIBVER_LATEST +#elif (H5_VERS_MAJOR==1)&&(H5_VERS_MINOR==10)&&(H5_VERS_RELEASE<2) +#error The selected version of HDF5 library does not support setting backwards compatibility at run-time.\ + Please use a different version of HDF5 #endif /************************************************************************ diff --git a/libsrc2/volume.c b/libsrc2/volume.c index 038bb207869..0b2737dd077 100644 --- a/libsrc2/volume.c +++ b/libsrc2/volume.c @@ -35,6 +35,9 @@ /* Build with 1.8.x support if using 1.10.x */ #if (H5_VERS_MAJOR==1)&&(H5_VERS_MINOR<10) #define H5F_LIBVER_V18 H5F_LIBVER_LATEST +#elif (H5_VERS_MAJOR==1)&&(H5_VERS_MINOR==10)&&(H5_VERS_RELEASE<2) +#error The selected version of HDF5 library does not support setting backwards compatibility at run-time.\ + Please use a different version of HDF5 #endif /*Used to optimize chunking size for faster MINC1 API access*/ From 48e82501bb08501c0687f80380d0ed2a0d0e027c Mon Sep 17 00:00:00 2001 From: "Vladimir S. FONOV" Date: Wed, 24 Apr 2019 15:02:22 -0400 Subject: [PATCH 2/2] ENH: fixed build script --- Modules/ThirdParty/MINC/src/libminc/CMakeLists.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Modules/ThirdParty/MINC/src/libminc/CMakeLists.txt b/Modules/ThirdParty/MINC/src/libminc/CMakeLists.txt index ef45177d1f2..305b2c634a0 100644 --- a/Modules/ThirdParty/MINC/src/libminc/CMakeLists.txt +++ b/Modules/ThirdParty/MINC/src/libminc/CMakeLists.txt @@ -365,11 +365,11 @@ SET(volume_io_HEADERS volume_io/Include/volume_io/volume_cache.h ) -SET(LIBMINC_LIBRARY minc2) +SET(LIBMINC_LIBRARY ${LIBMINC_EXTERNAL_LIB_PREFIX}minc2) # a hack for APPLE IF(LIBMINC_BUILD_SHARED_LIBS) - SET(LIBMINC_LIBRARY_STATIC minc2_static) + SET(LIBMINC_LIBRARY_STATIC ${LIBMINC_EXTERNAL_LIB_PREFIX}minc2_static) ELSE(LIBMINC_BUILD_SHARED_LIBS) SET(LIBMINC_LIBRARY_STATIC ${LIBMINC_LIBRARY}) ENDIF(LIBMINC_BUILD_SHARED_LIBS) @@ -380,6 +380,7 @@ IF(LIBMINC_NIFTI_SUPPORT) ) get_filename_component(NIFTI_LIBRARY_NAME "${NIFTI_LIBRARY}" NAME) get_filename_component(ZNZ_LIBRARY_NAME "${ZNZ_LIBRARY}" NAME) + ELSE(LIBMINC_NIFTI_SUPPORT) SET(NIFTI_LIBRARIES ) SET(NIFTI_LIBRARY ) @@ -397,7 +398,6 @@ get_filename_component(ZLIB_LIBRARY_NAME "${ZLIB_LIBRARY}" NAME) SET(LIBMINC_LIBRARIES ${LIBMINC_LIBRARY} ${HDF5_LIBRARY} ${NIFTI_LIBRARIES} ${ZLIB_LIBRARY}) SET(LIBMINC_LIBRARIES_CONFIG ${LIBMINC_LIBRARY} ${HDF5_LIBRARY_NAME} ${NIFTI_LIBRARY_NAME} ${ZNZ_LIBRARY_NAME} ${ZLIB_LIBRARY_NAME}) -message("LIBMINC_LIBRARIES_CONFIG=${LIBMINC_LIBRARIES_CONFIG}") SET(LIBMINC_STATIC_LIBRARIES ${LIBMINC_LIBRARY_STATIC} ${HDF5_LIBRARY} ${NIFTI_LIBRARIES} ${ZLIB_LIBRARY}) SET(LIBMINC_STATIC_LIBRARIES_CONFIG ${LIBMINC_LIBRARY_STATIC} ${HDF5_LIBRARY_NAME} ${NIFTI_LIBRARIES} ${ZLIB_LIBRARY_NAME}) @@ -405,7 +405,7 @@ SET(LIBMINC_STATIC_LIBRARIES_CONFIG ${LIBMINC_LIBRARY_STATIC} ${HDF5_LIBRARY_NAM IF(UNIX) SET(LIBMINC_LIBRARIES ${LIBMINC_LIBRARIES} m dl ${RT_LIBRARY}) SET(LIBMINC_STATIC_LIBRARIES ${LIBMINC_STATIC_LIBRARIES} m dl ${RT_LIBRARY}) - + SET(LIBMINC_LIBRARIES_CONFIG ${LIBMINC_LIBRARIES_CONFIG} m dl ${RT_LIBRARY_NAME}) SET(LIBMINC_STATIC_LIBRARIES_CONFIG ${LIBMINC_STATIC_LIBRARIES_CONFIG} m dl ${RT_LIBRARY_NAME}) ENDIF(UNIX) @@ -420,7 +420,7 @@ ENDIF(LIBMINC_MINC1_SUPPORT) # Keep this variable for compatibility -SET(VOLUME_IO_LIBRARY minc2) +SET(VOLUME_IO_LIBRARY ${LIBMINC_EXTERNAL_LIB_PREFIX}minc2) SET(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}) ADD_LIBRARY(${LIBMINC_LIBRARY} ${LIBRARY_TYPE} ${minc_LIB_SRCS} ${minc_HEADERS} ${volume_io_LIB_SRCS} ${volume_io_HEADERS} ) @@ -435,7 +435,7 @@ TARGET_LINK_LIBRARIES(${LIBMINC_LIBRARY} ${HDF5_LIBRARY} ${NIFTI_LIBRARIES} ${ZL IF(LIBMINC_MINC1_SUPPORT) INCLUDE_DIRECTORIES(${NETCDF_INCLUDE_DIR}) TARGET_LINK_LIBRARIES(${LIBMINC_LIBRARY} ${NETCDF_LIBRARY}) - get_filename_component(NETCDF_LIBRARY_NAME "${NETCDF_LIBRARY}" NAME) + get_filename_component(NETCDF_LIBRARY_NAME "${NETCDF_LIBRARY}" NAME) ELSE(LIBMINC_MINC1_SUPPORT) SET(NETCDF_LIBRARY_NAME ) ENDIF(LIBMINC_MINC1_SUPPORT)