X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FCMakeLists.txt;h=710fc191a17636a1ec257f13f7dc8703c94cc8e6;hb=1ca5d71344bd934cb05d810428cdd1182e86f9f2;hp=4651a2e27c6649194a2b5688604b8f2a77d93367;hpb=1dbf7abc93e6462929696f93a9710faca54e84ab;p=gdcm.git diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 4651a2e2..710fc191 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,23 +1,24 @@ +#----------------------------------------------------------------------------- +# Build jpeg lib first: SUBDIRS(jpeg) -#CXXFLAGS = @CXXFLAGS@ -DPUB_DICT_PATH=\"$(datadir)/gdcm/\" \ -# -D__STDC_LIMIT_MACROS # Refer to stdint.h - +# "jpeglib.h" is defined here: INCLUDE_DIRECTORIES( - ${GDCM_SOURCE_DIR}/jpeg/ + ${GDCM_SOURCE_DIR}/src/jpeg/libijg8 + #${GDCM_SOURCE_DIR}/jpeg/libijg12 #all files have been renamed, appending 12 + #${GDCM_SOURCE_DIR}/jpeg/ljpg # JPEG lib from xmedcom ) SET(libgdcm_la_SOURCES gdcmException.cxx gdcmUtil.cxx + gdcmParser.cxx gdcmHeader.cxx gdcmHeaderHelper.cxx - gdcmElValue.cxx + gdcmHeaderEntry.cxx gdcmDictEntry.cxx gdcmDict.cxx gdcmDictSet.cxx - gdcmElValSet.cxx - gdcmHeaderIdo.cxx gdcmFile.cxx gdcmVR.cxx gdcmTS.cxx @@ -26,61 +27,72 @@ SET(libgdcm_la_SOURCES gdcmJpeg2000.cxx gdcmRLE.cxx gdcmParse.cxx - gdcmJpegIdo.cxx + gdcmDicomDir.cxx + gdcmPatient.cxx + gdcmStudy.cxx + gdcmSequence.cxx + gdcmImage.cxx ) -#Why one should not use ADD_DEFINITIONS -#http://www.cmake.org/pipermail/cmake/2003-September/004286.html -#ADD_DEFINITIONS(-DPUB_DICT_PATH=\\"${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}/\\") -#ADD_DEFINITIONS(-D__STDC_LIMIT_MACROS) - -#SET_SOURCE_FILES_PROPERTIES(${libgdcm_la_SOURCES} -# PROPERTIES -# COMPILE_FLAGS -D__STDC_LIMIT_MACROS -# COMPILE_FLAGS -DPUB_DICT_PATH=\\"${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}\\" -#) +#----------------------------------------------------------------------------- +# Why one should not use ADD_DEFINITIONS +# http://www.cmake.org/pipermail/cmake/2003-September/004286.html +#----------------------------------------------------------------------------- +# __STDC_LIMIT_MACROS -> Refer to stdint.h +# http://www.cmake.org/pipermail/cmake/2003-October/004369.html +# http://www.cmake.org/pipermail/cmake/2003-October/004373.html -SET_SOURCE_FILES_PROPERTIES(${libgdcm_la_SOURCES} - PROPERTIES - COMPILE_FLAGS "-D__STDC_LIMIT_MACROS -DPUB_DICT_PATH=\\\"${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}\\\"" -) - +SET(GDCM_COMPILE_FLAGS + "-D__STDC_LIMIT_MACROS -DPUB_DICT_PATH=\\\"${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}\\\"" + ) +# SunOS + old gcc fixes: -#libgdcminclude_HEADERS = \ -# gdcmException.h \ -# gdcmHeader.h \ -# gdcmHeaderHelper.h \ -# gdcmCommon.h \ -# gdcm.h \ -# gdcmDictSet.h \ -# gdcmDict.h \ -# gdcmDictEntry.h \ -# gdcmElValue.h \ -# gdcmElValSet.h \ -# gdcmVR.h \ -# gdcmTS.h \ -# gdcmFile.h +INCLUDE (${CMAKE_ROOT}/Modules/CMakeBackwardCompatibilityCXX.cmake) +IF(CMAKE_NO_ANSI_STRING_STREAM) +SET(GDCM_COMPILE_FLAGS + "${GDCM_COMPILE_FLAGS} -DGDCM_NO_ANSI_STRING_STREAM" + ) +ENDIF(CMAKE_NO_ANSI_STRING_STREAM) -#EXTRA_DIST = \ -# gdcmUtil.h \ -# gdcmIdo.h \ -# iddcmjpeg.h +#INCLUDE (${CMAKE_ROOT}/Modules/CMakeBackwardCompatibilityC.cmake) +#INCLUDE (${CMAKE_ROOT}/Modules/CheckTypeSize.cmake) +INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake) +CHECK_INCLUDE_FILE("stdint.h" CMAKE_HAVE_STDINT_H) +#MESSAGE(STATUS ${CMAKE_NO_ANSI_STRING_STREAM}) +IF(NOT CMAKE_HAVE_STDINT_H) +SET(GDCM_COMPILE_FLAGS + "${GDCM_COMPILE_FLAGS} -DHAVE_NO_STDINT_H" + ) +ENDIF(NOT CMAKE_HAVE_STDINT_H) +SET_SOURCE_FILES_PROPERTIES(${libgdcm_la_SOURCES} + PROPERTIES + COMPILE_FLAGS ${GDCM_COMPILE_FLAGS} +) ADD_LIBRARY(gdcm ${libgdcm_la_SOURCES} ) -#TODO this is not working out of the box (on the first time) IF(UNIX) TARGET_LINK_LIBRARIES(gdcm gdcmijpeg8 gdcmijpeg12 + gdcmljpeg # JPEG lib from xmedcom ) ELSE(UNIX) TARGET_LINK_LIBRARIES(gdcm gdcmijpeg8 gdcmijpeg12 + gdcmljpeg Wsock32.lib #doesn't exist on cygwin ) -ENDIF(UNIX) \ No newline at end of file +ENDIF(UNIX) + +#The following is not working because when a header file is not found it tries +#to find one in the binary dir +#INSTALL_FILES(/include .h ${libgdcm_la_SOURCES}) +#INSTALL_FILES(/include FILES gdcmIdo.h iddcmjpeg.h) +INSTALL_FILES(/include "\\.h$") + +INSTALL_TARGETS(/lib/ gdcm)