]> Creatis software - gdcm.git/blobdiff - src/CMakeLists.txt
Fix mistypings
[gdcm.git] / src / CMakeLists.txt
index 09b2978219e99a415f4740d8fbcff9675a7ad927..9e7065a497aad21c277684d22ed4d50ebc38b032 100644 (file)
-SUBDIRS(jpeg)\r
-\r
-#CXXFLAGS = @CXXFLAGS@ -DPUB_DICT_PATH=\"$(datadir)/gdcm/\" \\r
-#           -D__STDC_LIMIT_MACROS  # Refer to stdint.h\r
-\r
-\r
-SET(libgdcm_la_SOURCES\r
-       gdcmException.cxx\r
-       gdcmUtil.cxx\r
-       gdcmHeader.cxx\r
-       gdcmHeaderHelper.cxx\r
-       gdcmElValue.cxx\r
-       gdcmDictEntry.cxx\r
-       gdcmDict.cxx\r
-       gdcmDictSet.cxx\r
-       gdcmElValSet.cxx\r
-       gdcmHeaderIdo.cxx\r
-       gdcmFile.cxx\r
-       gdcmVR.cxx\r
-       gdcmTS.cxx\r
-       gdcmJpeg.cxx\r
-       gdcmJpeg12.cxx\r
-       gdcmJpeg2000.cxx\r
-       gdcmRLE.cxx\r
-       gdcmParse.cxx\r
-       gdcmJpegIdo.cxx\r
-)\r
-#Why one should not use ADD_DEFINITIONS\r
-#http://www.cmake.org/pipermail/cmake/2003-September/004286.html\r
-#ADD_DEFINITIONS(-DPUB_DICT_PATH=\\"${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}/\\")\r
-#ADD_DEFINITIONS(-D__STDC_LIMIT_MACROS)\r
-\r
-SET_SOURCE_FILES_PROPERTIES(${libgdcm_la_SOURCES} \r
-  PROPERTIES \r
-  COMPILE_FLAGS  -DPUB_DICT_PATH=\\"${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}\\"\r
-  COMPILE_FLAGS  -D__STDC_LIMIT_MACROS\r
-)\r
-\r
-\r
-#libgdcminclude_HEADERS =   \\r
-#      gdcmException.h    \\r
-#      gdcmHeader.h       \\r
-#      gdcmHeaderHelper.h \\r
-#      gdcmCommon.h       \\r
-#      gdcm.h             \\r
-#      gdcmDictSet.h      \\r
-#      gdcmDict.h         \\r
-#      gdcmDictEntry.h    \\r
-#      gdcmElValue.h      \\r
-#      gdcmElValSet.h     \\r
-#      gdcmVR.h           \\r
-#      gdcmTS.h           \\r
-#      gdcmFile.h\r
-\r
-#EXTRA_DIST =            \\r
-#      gdcmUtil.h      \\r
-#      gdcmIdo.h       \\r
-#      iddcmjpeg.h\r
-\r
-\r
-\r
-\r
-ADD_LIBRARY(gdcm ${libgdcm_la_SOURCES} )\r
-#TODO this is not working out of the box (on the first time)\r
-IF(WIN32)\r
-  TARGET_LINK_LIBRARIES(gdcm \r
-    gdcmijpeg8 \r
-    gdcmijpeg12\r
-    Wsock32.lib\r
-  )\r
-ELSE(WIN32)\r
-  TARGET_LINK_LIBRARIES(gdcm \r
-    gdcmijpeg8 \r
-    gdcmijpeg12\r
-  )\r
-ENDIF(WIN32)
\ No newline at end of file
+#-----------------------------------------------------------------------------
+# Rebuild gdcm whenever a file starting with gdcm* is modified
+INCLUDE_REGULAR_EXPRESSION("^gdcm.*$")
+
+SET(GDCM_LIBRARIES gdcm CACHE INTERNAL "libraries for GDCM")
+
+SET(OPJ_PREFIX gdcm)
+SUBDIRS(
+  gdcmjpeg
+  #gdcmmpeg2
+  #gdcmjpegls
+  gdcmopenjpeg
+  )
+
+# "jpeglib.h" is defined here:
+INCLUDE_DIRECTORIES(
+  ${GDCM_SOURCE_DIR}/src
+  ${GDCM_SOURCE_DIR}/src/gdcmmpeg2/src/mpeg2dec
+  ${GDCM_BINARY_DIR} #for gdcmConfigure.h
+  ${GDCM_BINARY_DIR}/src #for gdcmjpeg 8, 12 and 16 
+  ${GDCM_SOURCE_DIR}/src/gdcmopenjpeg/libopenjpeg
+)
+
+SET(GDCM_SOURCES
+   gdcmArgMgr.cxx
+   gdcmBase.cxx
+   gdcmCallbackCommand.cxx
+   gdcmCommand.cxx
+   gdcmCommandManager.cxx
+   gdcmDataEntry.cxx
+   gdcmDebug.cxx
+   gdcmDicomDir.cxx
+   gdcmDicomDirElement.cxx
+   gdcmDicomDirImage.cxx
+   gdcmDicomDirPrivate.cxx   
+   gdcmDicomDirMeta.cxx
+   gdcmDicomDirObject.cxx
+   gdcmDicomDirPatient.cxx
+   gdcmDicomDirVisit.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
+   gdcmFile.cxx
+   gdcmFileHelper.cxx
+   gdcmGlobal.cxx
+   gdcmJPEGFragment.cxx
+   gdcmJPEGFragmentsInfo.cxx
+   gdcmJpeg8.cxx
+   gdcmJpeg12.cxx
+   gdcmJpeg16.cxx
+   gdcmJpeg2000.cxx
+   #gdcmMpeg.cxx
+   gdcmOrientation.cxx
+   gdcmPixelReadConvert.cxx
+   gdcmPixelWriteConvert.cxx
+   gdcmRefCounter.cxx
+   gdcmRLEFrame.cxx
+   gdcmRLEFramesInfo.cxx
+   gdcmSeqEntry.cxx
+   gdcmSerieHelper.cxx
+   gdcmSQItem.cxx
+   gdcmTS.cxx
+   gdcmUtil.cxx
+   gdcmValidator.cxx
+   gdcmVR.cxx
+   ${GDCM_BINARY_DIR}/src/gdcmDefaultDicts.cxx
+   )
+
+# Since OpenJPEG does not used configured headers we have to 
+# do the -D alternative
+IF(NOT BUILD_SHARED_LIBS)
+ SET_SOURCE_FILES_PROPERTIES(
+   ${GDCM_SOURCE_DIR}/src/gdcmJpeg2000.cxx
+   COMPILE_FLAGS -DOPJ_STATIC)
+ENDIF(NOT BUILD_SHARED_LIBS)
+
+ADD_LIBRARY(gdcm ${GDCM_SOURCES})
+TARGET_LINK_LIBRARIES(gdcm 
+  gdcmjpeg8 
+  gdcmjpeg12
+  gdcmjpeg16
+  #gdcmmpeg2
+  gdcmopenjpeg
+)
+IF(WIN32)
+  IF(NOT BORLAND)
+    TARGET_LINK_LIBRARIES(gdcm wsock32 snmpapi)
+  ENDIF(NOT BORLAND)
+ENDIF(WIN32)
+
+# 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.*")
+
+IF(NOT GDCM_INSTALL_NO_DEVELOPMENT)
+  # Install header file used to construct the lib
+  #INSTALL_FILES(
+  #  ${GDCM_INSTALL_INCLUDE_DIR} .h ${GDCM_SOURCES})
+  INSTALL_FILES(${GDCM_INSTALL_INCLUDE_DIR} "\\.h$")
+ENDIF(NOT GDCM_INSTALL_NO_DEVELOPMENT)
+
+IF(NOT GDCM_INSTALL_NO_LIBRARIES)
+  #Install the target itself
+  INSTALL_TARGETS(
+    ${GDCM_INSTALL_LIB_DIR}
+    RUNTIME_DIRECTORY ${GDCM_INSTALL_BIN_DIR}
+    ${GDCM_LIBRARIES})
+ENDIF(NOT GDCM_INSTALL_NO_LIBRARIES)
+