# HG changeset patch # User Vladimir S. FONOV # Date 1328907464 18000 # Node ID 308c54a6a883bf89dff2785967895afaa7d69c27 # Parent 2ac77f7b06ca54acc8f91fb3c202cf0342024fe3 fixing configuration bugs when building with cmake diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -126,12 +126,51 @@ INCLUDE(CheckFunctionExists) CHECK_FUNCTION_EXISTS(mkstemp HAVE_MKSTEMP) +CHECK_FUNCTION_EXISTS(tmpnam HAVE_TMPNAM) +CHECK_FUNCTION_EXISTS(tempnam HAVE_TEMPNAM) CHECK_FUNCTION_EXISTS(strerror HAVE_STRERROR) +CHECK_FUNCTION_EXISTS(popen HAVE_POPEN) +CHECK_FUNCTION_EXISTS(fork HAVE_WORKING_FORK) +CHECK_FUNCTION_EXISTS(vfork HAVE_WORKING_VFORK) +CHECK_FUNCTION_EXISTS(fdopen HAVE_FDOPEN) +CHECK_FUNCTION_EXISTS(strdup HAVE_STRDUP) +CHECK_FUNCTION_EXISTS(getpwnam HAVE_GETPWNAM) +CHECK_FUNCTION_EXISTS(select HAVE_SELECT) +CHECK_FUNCTION_EXISTS(strerror HAVE_STRERROR) +CHECK_FUNCTION_EXISTS(sysconf HAVE_SYSCONF) +CHECK_FUNCTION_EXISTS(system HAVE_SYSTEM) INCLUDE(CheckIncludeFiles) -CHECK_INCLUDE_FILES(float.h HAVE_FLOAT_H) +CHECK_INCLUDE_FILES(float.h HAVE_FLOAT_H) +CHECK_INCLUDE_FILES(sys/dir.h HAVE_SYS_DIR_H) +CHECK_INCLUDE_FILES(sys/ndir.h HAVE_SYS_NDIR_H) +CHECK_INCLUDE_FILES(sys/stat.h HAVE_SYS_STAT_H) +CHECK_INCLUDE_FILES(sys/types.h HAVE_SYS_TYPES_H) +CHECK_INCLUDE_FILES(sys/wait.h HAVE_SYS_WAIT_H) +CHECK_INCLUDE_FILES(values.h HAVE_VALUES_H) +CHECK_INCLUDE_FILES(unistd.h HAVE_UNISTD_H) +CHECK_INCLUDE_FILES(dirent.h HAVE_DIRENT_H) +CHECK_INCLUDE_FILES(memory.h HAVE_MEMORY_H) +CHECK_INCLUDE_FILES(stdlib.h HAVE_STDLIB_H) +CHECK_INCLUDE_FILES(fcntl.h HAVE_FCNTL_H) +CHECK_INCLUDE_FILES(dlfcn.h HAVE_DLFCN_H) +CHECK_INCLUDE_FILES(vfork.h HAVE_VFORK_H) +CHECK_INCLUDE_FILES(inttypes.h HAVE_INTTYPES_H) +CHECK_INCLUDE_FILES(string.h HAVE_STRING_H) +CHECK_INCLUDE_FILES(strings.h HAVE_STRINGS_H) +CHECK_INCLUDE_FILES(pwd.h HAVE_PWD_H) + +IF(ZLIB_FOUND) + SET(HAVE_ZLIB 1) +ELSE(ZLIB_FOUND) + FIND_PACKAGE(ZLIB) + IF(ZLIB_FOUND) + SET(HAVE_ZLIB 1) + ENDIF(ZLIB_FOUND) +ENDIF(ZLIB_FOUND) + IF(BUILD_EZMINC) set(MINC2_INCLUDE_DIRS_CONFIG ${CMAKE_SOURCE_DIR}/ezminc @@ -161,7 +200,7 @@ ENDIF(BUILD_MINC2) # config files for build -CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/config.h.cmake ${CMAKE_BINARY_DIR}/config.h) +CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/config.h.cmake ${CMAKE_BINARY_DIR}/config.h @ONLY) # others CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/epm-header.in ${CMAKE_BINARY_DIR}/epm-header) diff --git a/config.h.cmake b/config.h.cmake --- a/config.h.cmake +++ b/config.h.cmake @@ -5,10 +5,45 @@ #define PACKAGE_BUGREPORT "@PACKAGE_BUGREPORT@" #define PACKAGE_VERSION "@PACKAGE_VERSION@" #define PACKAGE_STRING "@PACKAGE_STRING@" - #define VERSION PACKAGE_VERSION -#define HAVE_MKSTEMP @HAVE_MKSTEMP@ -#define HAVE_STRERROR @HAVE_STRERROR@ +#cmakedefine01 HAVE_MKSTEMP +#cmakedefine01 HAVE_STRERROR +#cmakedefine01 HAVE_FLOAT_H -#define HAVE_FLOAT_H @HAVE_FLOAT_H@ +#cmakedefine01 HAVE_DIRENT_H +#cmakedefine01 HAVE_DLFCN_H +#cmakedefine01 HAVE_FCNTL_H +#cmakedefine01 HAVE_FORK +#cmakedefine01 HAVE_GETPWNAM +#cmakedefine01 HAVE_INT16_T +#cmakedefine01 HAVE_INT32_T +#cmakedefine01 HAVE_INTTYPES_H +#cmakedefine01 HAVE_MEMORY_H +#cmakedefine01 HAVE_MKSTEMP +#cmakedefine01 HAVE_NDIR_H +#cmakedefine01 HAVE_POPEN +#cmakedefine01 HAVE_PWD_H +#cmakedefine01 HAVE_SELECT +#cmakedefine01 HAVE_STDINT_H +#cmakedefine01 HAVE_STDLIB_H +#cmakedefine01 HAVE_STRDUP +#cmakedefine01 HAVE_SYSCONF +#cmakedefine01 HAVE_SYSTEM +#cmakedefine01 HAVE_SYS_DIR_H +#cmakedefine01 HAVE_SYS_NDIR_H +#cmakedefine01 HAVE_SYS_STAT_H +#cmakedefine01 HAVE_SYS_TIME_H +#cmakedefine01 HAVE_SYS_TYPES_H +#cmakedefine01 HAVE_SYS_WAIT_H +#cmakedefine01 HAVE_TEMPNAM +#cmakedefine01 HAVE_TMPNAM +#cmakedefine01 HAVE_UNISTD_H +#cmakedefine01 HAVE_VALUES_H +#cmakedefine01 HAVE_VFORK +#cmakedefine01 HAVE_VFORK_H +#cmakedefine01 HAVE_WORKING_FORK +#cmakedefine01 HAVE_WORKING_VFORK +#cmakedefine01 HAVE_ZLIB +#cmakedefine01 HAVE_STRINGS_H +#cmakedefine01 HAVE_STRING_H diff --git a/conversion/nifti1/znzlib.c b/conversion/nifti1/znzlib.c --- a/conversion/nifti1/znzlib.c +++ b/conversion/nifti1/znzlib.c @@ -244,6 +244,7 @@ #if !defined (WIN32) int znzprintf(znzFile stream, const char *format, ...) { + char *tmpstr; int retval=0; va_list va; if (stream==NULL) { return 0; } diff --git a/conversion/vff2mnc/vff2mnc.c b/conversion/vff2mnc/vff2mnc.c --- a/conversion/vff2mnc/vff2mnc.c +++ b/conversion/vff2mnc/vff2mnc.c @@ -125,8 +125,8 @@ #if HAVE_DIRENT_H if (stat(G.dirname, &st) != 0 || !S_ISDIR(st.st_mode)) { - print("Option -addattrs requires directory as argument!!!\n"); - exit(EXIT_FAILURE); + fprintf(stderr,"Option -addattrs requires directory as argument!!!\n"); + exit(EXIT_FAILURE); } #endif } diff --git a/libsrc/netcdf_convenience.c b/libsrc/netcdf_convenience.c --- a/libsrc/netcdf_convenience.c +++ b/libsrc/netcdf_convenience.c @@ -249,7 +249,8 @@ #if !(HAVE_WORKING_FORK && HAVE_SYSTEM && HAVE_POPEN) - + fprintf(stderr,"Can't decompress %s because system is not available!\n",infile); + return 1; #else /* Unix */ @@ -1940,5 +1941,4 @@ } } return (strdup(buffer)); -} - +} \ No newline at end of file diff --git a/volume_io/Prog_utils/files.c b/volume_io/Prog_utils/files.c --- a/volume_io/Prog_utils/files.c +++ b/volume_io/Prog_utils/files.c @@ -13,6 +13,10 @@ ---------------------------------------------------------------------------- */ #include + +#if HAVE_SYS_TYPES_H +#include +#endif /* HAVE_SYS_TYPES_H */ #if HAVE_PWD_H #include #endif /* HAVE_PWD_H */ @@ -20,6 +24,7 @@ #if HAVE_UNISTD_H #include #endif /* HAVE_UNISTD_H */ + #include @@ -533,8 +538,8 @@ static STRING get_user_home_directory( STRING user_name ) { -#if HAVE_GETPWNAM - struct passwd *p; +#if HAVE_GETPWNAM + struct passwd *p; p = getpwnam( user_name );