From 1c9692662831630aa4fac41d420917eb4d06036b Mon Sep 17 00:00:00 2001 From: malaterre Date: Mon, 17 Jan 2005 17:26:55 +0000 Subject: [PATCH] BUG: Fix bug Bug #1487 - CHECK_INCLUDE_FILE now use CHECK_INCLUDE_FILES properly instead --- CMakeLists.txt | 29 ++++++++++++++++++++--------- src/gdcmUtil.cxx | 10 +++------- 2 files changed, 23 insertions(+), 16 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index af56a03a..4ebaa055 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -99,16 +99,27 @@ TEST_BIG_ENDIAN(GDCM_WORDS_BIGENDIAN) INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake) CHECK_INCLUDE_FILE("stdint.h" CMAKE_HAVE_STDINT_H) +# Check if header file exists and add it to the list. +INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFiles.cmake) +MACRO(CHECK_INCLUDE_FILE_CONCAT FILE VARIABLE) + CHECK_INCLUDE_FILES("${GDCM_INCLUDES};${FILE}" ${VARIABLE}) + IF(${VARIABLE}) + SET(GDCM_INCLUDES ${GDCM_INCLUDES} ${FILE}) + ENDIF(${VARIABLE}) +ENDMACRO(CHECK_INCLUDE_FILE_CONCAT) + # Need those header for GetMacAddress in Util -CHECK_INCLUDE_FILE("unistd.h" CMAKE_HAVE_UNISTD_H) -CHECK_INCLUDE_FILE("stdlib.h" CMAKE_HAVE_STDLIB_H) -CHECK_INCLUDE_FILE("sys/ioctl.h" CMAKE_HAVE_SYS_IOCTL_H) -CHECK_INCLUDE_FILE("sys/socket.h" CMAKE_HAVE_SYS_SOCKET_H) -CHECK_INCLUDE_FILE("sys/sockio.h" CMAKE_HAVE_SYS_SOCKIO_H) -CHECK_INCLUDE_FILE("net/if.h" CMAKE_HAVE_NET_IF_H) -CHECK_INCLUDE_FILE("netinet/in.h" CMAKE_HAVE_NETINET_IN_H) -CHECK_INCLUDE_FILE("net/if_dl.h" CMAKE_HAVE_NET_IF_DL_H) -CHECK_INCLUDE_FILE("net/if_arp.h" CMAKE_HAVE_NET_IF_ARP_H) +# This is tricky as you need to figure out the proper order to +# test the inclusion of files +CHECK_INCLUDE_FILE_CONCAT("unistd.h" CMAKE_HAVE_UNISTD_H) +CHECK_INCLUDE_FILE_CONCAT("stdlib.h" CMAKE_HAVE_STDLIB_H) +CHECK_INCLUDE_FILE_CONCAT("sys/ioctl.h" CMAKE_HAVE_SYS_IOCTL_H) +CHECK_INCLUDE_FILE_CONCAT("sys/socket.h" CMAKE_HAVE_SYS_SOCKET_H) +CHECK_INCLUDE_FILE_CONCAT("sys/sockio.h" CMAKE_HAVE_SYS_SOCKIO_H) +CHECK_INCLUDE_FILE_CONCAT("net/if.h" CMAKE_HAVE_NET_IF_H) +CHECK_INCLUDE_FILE_CONCAT("netinet/in.h" CMAKE_HAVE_NETINET_IN_H) +CHECK_INCLUDE_FILE_CONCAT("net/if_dl.h" CMAKE_HAVE_NET_IF_DL_H) +CHECK_INCLUDE_FILE_CONCAT("net/if_arp.h" CMAKE_HAVE_NET_IF_ARP_H) CONFIGURE_FILE(${GDCM_SOURCE_DIR}/gdcmConfigure.h.in ${GDCM_BINARY_DIR}/gdcmConfigure.h @ONLY IMMEDIATE) diff --git a/src/gdcmUtil.cxx b/src/gdcmUtil.cxx index 34359bdd..0f121c26 100644 --- a/src/gdcmUtil.cxx +++ b/src/gdcmUtil.cxx @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmUtil.cxx,v $ Language: C++ - Date: $Date: 2005/01/17 16:50:35 $ - Version: $Revision: 1.105 $ + Date: $Date: 2005/01/17 17:26:55 $ + Version: $Revision: 1.106 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -52,9 +52,6 @@ // How do I do that in CMake ? #ifdef __APPLE__ #define HAVE_SA_LEN - #define CMAKE_HAVE_NET_IF_DL_H - #define CMAKE_HAVE_NETINET_IN_H - #define CMAKE_HAVE_NET_IF_H #endif //APPLE #ifdef CMAKE_HAVE_SYS_IOCTL_H @@ -75,8 +72,7 @@ #ifdef CMAKE_HAVE_NET_IF_DL_H #include #endif -#ifdef __sun - //#if defined(CMAKE_HAVE_NET_IF_ARP_H) && defined(__sun) +#if defined(CMAKE_HAVE_NET_IF_ARP_H) && defined(__sun) // This is absolutely necesseray on SunOS #include #endif -- 2.45.1