X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FCMakeLists.txt;h=b989b979923c2c5f3991891acfe6d22e858f4d38;hb=6341da2794180b415f64bba60fe66ea676a9de4e;hp=a57e007f73ae5f63b997746848b2fa5ef0549b62;hpb=ab0aa4fa11e3ac7ec236d1aceb6f0cf89fe83eae;p=gdcm.git diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index a57e007f..b989b979 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,72 +1,91 @@ #----------------------------------------------------------------------------- +# Rebuild gdcm whenever a file starting with gdcm* is modified +INCLUDE_REGULAR_EXPRESSION("^gdcm.*$") + # Build jpeg lib first: -SUBDIRS(jpeg) +IF (WIN32) + IF (BUILD_SHARED_LIBS) + ADD_DEFINITIONS(-DJPEGDLL) + ELSE (BUILD_SHARED_LIBS) + ADD_DEFINITIONS(-DJPEGSTATIC) + ENDIF (BUILD_SHARED_LIBS) +ENDIF (WIN32) +SUBDIRS( + gdcmjpeg + gdcmmpeg2 + ) # "jpeglib.h" is defined here: INCLUDE_DIRECTORIES( - ${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 + ${GDCM_SOURCE_DIR}/src ${GDCM_BINARY_DIR}/ #for gdcmConfigure.h + ${GDCM_BINARY_DIR}/src #for gdcmjpeg 8, 12 and 16 ) SET(libgdcm_la_SOURCES - gdcmDirList.cxx + gdcmBase.cxx + gdcmBinEntry.cxx + gdcmContentEntry.cxx gdcmDebug.cxx + gdcmDicomDir.cxx + gdcmDicomDirElement.cxx + gdcmDicomDirImage.cxx + gdcmDicomDirMeta.cxx + gdcmDicomDirObject.cxx + gdcmDicomDirPatient.cxx + gdcmDicomDirSerie.cxx + gdcmDicomDirStudy.cxx gdcmDict.cxx gdcmDictEntry.cxx + gdcmDictGroupName.cxx gdcmDictSet.cxx + gdcmDirList.cxx + gdcmDocEntry.cxx + gdcmDocEntryArchive.cxx + gdcmDocEntrySet.cxx + gdcmDocument.cxx + gdcmElementSet.cxx gdcmException.cxx + gdcmFileHelper.cxx gdcmGlobal.cxx + gdcmFile.cxx + gdcmJPEGFragment.cxx + gdcmJPEGFragmentsInfo.cxx + gdcmJpeg8.cxx gdcmJpeg12.cxx + gdcmJpeg16.cxx gdcmJpeg2000.cxx - gdcmJpeg.cxx - gdcmTS.cxx - gdcmUtil.cxx - gdcmVR.cxx - gdcmFile.cxx - gdcmHeader.cxx - gdcmHeaderHelper.cxx - gdcmParsePixels.cxx - gdcmRLE.cxx - gdcmDocEntry.cxx - gdcmDocEntrySet.cxx - gdcmBinEntry.cxx + gdcmPixelReadConvert.cxx + gdcmPixelWriteConvert.cxx + gdcmRLEFrame.cxx + gdcmRLEFramesInfo.cxx gdcmSeqEntry.cxx + gdcmSerieHelper.cxx gdcmSQItem.cxx - gdcmElementSet.cxx + gdcmTS.cxx + gdcmUtil.cxx gdcmValEntry.cxx - gdcmDicomDirElement.cxx - gdcmDocument.cxx - gdcmDicomDir.cxx - gdcmDicomDirMeta.cxx - gdcmDicomDirPatient.cxx - gdcmDicomDirStudy.cxx - gdcmDicomDirSerie.cxx - gdcmDicomDirImage.cxx - gdcmDicomDirObject.cxx + gdcmVR.cxx + ${GDCM_BINARY_DIR}/src/gdcmDefaultDicts.cxx ) ADD_LIBRARY(gdcm ${libgdcm_la_SOURCES} ) -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) +TARGET_LINK_LIBRARIES(gdcm + gdcmjpeg8 + gdcmjpeg12 + gdcmjpeg16 +) +IF(WIN32) + IF(NOT BORLAND) + TARGET_LINK_LIBRARIES(gdcm wsock32 snmpapi) + ENDIF(NOT BORLAND) +ENDIF(WIN32) -#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$") +# Need nsl to resolve gethostbyname on SunOS-5.8 +# and socket also +IF(CMAKE_SYSTEM MATCHES "SunOS.*") + TARGET_LINK_LIBRARIES(gdcm socket nsl) +ENDIF(CMAKE_SYSTEM MATCHES "SunOS.*") -INSTALL_TARGETS(/lib/ gdcm) +INSTALL_FILES(/include/gdcm "\\.h$") +INSTALL_TARGETS(/lib/gdcm/ gdcm)