|
@@ -0,0 +1,69 @@
|
|
|
|
+diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
|
|
+index caf681a8..2670ac8d 100644
|
|
|
|
+--- a/CMakeLists.txt
|
|
|
|
++++ b/CMakeLists.txt
|
|
|
|
+@@ -69,7 +69,8 @@ IF(NOT LIBMINC_EXTERNALLY_CONFIGURED)
|
|
|
|
+ # external packages
|
|
|
|
+ FIND_PACKAGE(ZLIB REQUIRED)
|
|
|
|
+ SET(HDF5_NO_FIND_PACKAGE_CONFIG_FILE ON)
|
|
|
|
+- FIND_PACKAGE(HDF5 REQUIRED COMPONENTS C )
|
|
|
|
++ FIND_PACKAGE(HDF5 REQUIRED NO_MODULE COMPONENTS C )
|
|
|
|
++ set(HDF5_INCLUDE_DIRS ${HDF5_INCLUDE_DIR})
|
|
|
|
+
|
|
|
|
+ IF(LIBMINC_USE_NIFTI)
|
|
|
|
+ IF (LIBMINC_USE_SYSTEM_NIFTI)
|
|
|
|
+@@ -588,7 +589,7 @@ IF(LIBMINC_INSTALL_LIB_DIR AND NOT LIBMINC_INSTALL_NO_DEVELOPMENT)
|
|
|
|
+ ${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}/cmake
|
|
|
|
++ ${LIBMINC_INSTALL_LIB_DIR}/cmake/LIBMINC
|
|
|
|
+ COMPONENT Development)
|
|
|
|
+ ENDIF(LIBMINC_INSTALL_LIB_DIR AND NOT LIBMINC_INSTALL_NO_DEVELOPMENT)
|
|
|
|
+
|
|
|
|
+diff --git a/LIBMINCConfig.cmake.in b/LIBMINCConfig.cmake.in
|
|
|
|
+index f8f7eb6d..7f02bced 100644
|
|
|
|
+--- a/LIBMINCConfig.cmake.in
|
|
|
|
++++ b/LIBMINCConfig.cmake.in
|
|
|
|
+@@ -1,7 +1,9 @@
|
|
|
|
+ # LIBMINC CMake configuration file
|
|
|
|
+
|
|
|
|
++include(CMakeFindDependencyMacro)
|
|
|
|
++find_dependency(hdf5 CONFIG)
|
|
|
|
+
|
|
|
|
+-get_filename_component(LIBMINC_INSTALL_PREFIX "${CMAKE_CURRENT_LIST_DIR}/../../" ABSOLUTE)
|
|
|
|
++get_filename_component(LIBMINC_INSTALL_PREFIX "${CMAKE_CURRENT_LIST_DIR}/../../../" ABSOLUTE)
|
|
|
|
+ get_filename_component(LIBMINC_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH )
|
|
|
|
+
|
|
|
|
+ set(HAVE_MINC2 1)
|
|
|
|
+@@ -20,7 +22,7 @@ set(LIBMINC_NIFTI_SUPPORT @LIBMINC_NIFTI_SUPPORT@)
|
|
|
|
+ #set(ZLIB_LIBRARIES "@ZLIB_LIBRARY@")
|
|
|
|
+ #set(NIFTI_LIBRARIES "@NIFTI_LIBRARIES@")
|
|
|
|
+
|
|
|
|
+-set(LIBMINC_INCLUDE_DIRS "@LIBMINC_INCLUDE_DIRS_CONFIG@") # ${LIBMINC_INSTALL_PREFIX}/include
|
|
|
|
++set(LIBMINC_INCLUDE_DIRS "@LIBMINC_INCLUDE_DIRS_CONFIG@" ${HDF5_INCLUDE_DIR}) # ${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
|
|
|
|
+
|
|
|
|
+diff --git a/libcommon/ParseArgv.c b/libcommon/ParseArgv.c
|
|
|
|
+index 260f5745..e2f6f4a6 100644
|
|
|
|
+--- a/libcommon/ParseArgv.c
|
|
|
|
++++ b/libcommon/ParseArgv.c
|
|
|
|
+@@ -315,7 +315,7 @@ ParseArgv(argcPtr, argv, argTable, flags)
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
|
|
+ case ARGV_FUNC: {
|
|
|
|
+- int (*handlerProc)() = (int (*)())(uintptr_t)infoPtr->src;
|
|
|
|
++ int (*handlerProc)(void *, const char *, char *) = (int (*)(void *, const char *, char *))(uintptr_t)infoPtr->src;
|
|
|
|
+
|
|
|
|
+ if ((*handlerProc)(infoPtr->dst, infoPtr->key,
|
|
|
|
+ argv[srcIndex])) {
|
|
|
|
+@@ -325,7 +325,7 @@ ParseArgv(argcPtr, argv, argTable, flags)
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case ARGV_GENFUNC: {
|
|
|
|
+- int (*handlerProc)() = (int (*)())(uintptr_t)infoPtr->src;
|
|
|
|
++ int (*handlerProc)(void *, const char *, int, char **) = (int (*)(void *, const char *, int, char **))(uintptr_t)infoPtr->src;
|
|
|
|
+
|
|
|
|
+ argc = (*handlerProc)(infoPtr->dst, infoPtr->key,
|
|
|
|
+ argc, argv+srcIndex);
|