PROJECT(GDCM)\r
CMAKE_MINIMUM_REQUIRED(VERSION 1.8)\r
\r
-# The GDCM version number.\r
+#-----------------------------------------------------------------------------\r
+# GDCM version number, usefull for packaging and doxygen doc:\r
SET(GDCM_VERSION_MAJOR 0)\r
SET(GDCM_VERSION_MINOR 4)\r
SET(GDCM_VERSION_PATCH 0)\r
# Build directory on which many applications depend\r
SUBDIRS(\r
src\r
- Test\r
Dicts\r
+ Test\r
)\r
\r
#-----------------------------------------------------------------------------\r
+#-----------------------------------------------------------------------------\r
+# DICOM dictionary stuff\r
+\r
#SET(dictsdir \r
# ${GDCM_SOURCE_DIR}/gdcm\r
#)\r
# dicomV3.dic\r
#)\r
\r
-#IF(UNIX)\r
- INSTALL_FILES(${GDCM_DATA_DIR} FILES dicomV3.dic README)\r
-#ENDIF(UNIX)
\ No newline at end of file
+# For now INSTALL doesn't work on Win32 \r
+INSTALL_FILES(${GDCM_DATA_DIR} FILES dicomV3.dic README)\r
IF(GDCM_DOXYGEN)
-# ADD_CUSTOM_COMMAND(
-# SOURCE ${GDCM_SOURCE_DIR}/Doc/DoxyfileDeveloppers
-# COMMAND ${DOXYGEN}
-# ARGS ${GDCM_SOURCE_DIR}/Doc/DoxyfileDeveloppers
-# TARGET mathieu
-# OUTPUT ${GDCM_BINARY_DIR}/gdcmPython/gdcm_wrap.cxx
-#)
-
-# http://www.cmake.org/pipermail/cmake/2003-April/003673.html
-# Too bad CMake doesn't support multiline ""
-SET(GDCM_DOXYGEN_INPUT_COMMON
- "${GDCM_SOURCE_DIR}/src ${GDCM_SOURCE_DIR}/Doc/DoxyPython.txt ${GDCM_SOURCE_DIR}/Doc/DoxyMainPage.txt ${GDCM_SOURCE_DIR}/Doc/DoxyInstallation.txt ${GDCM_SOURCE_DIR}/Doc/DoxyIntroduction.txt"
-)
-SET(GDCM_DOXYGEN_EXCLUDE_COMMON
-)
+ # http://www.cmake.org/pipermail/cmake/2003-April/003673.html
+ # Too bad CMake doesn't support multiline ""
+ SET(GDCM_DOXYGEN_INPUT_COMMON
+ "${GDCM_SOURCE_DIR}/src ${GDCM_SOURCE_DIR}/Doc/DoxyPython.txt ${GDCM_SOURCE_DIR}/Doc/DoxyMainPage.txt ${GDCM_SOURCE_DIR}/Doc/DoxyInstallation.txt ${GDCM_SOURCE_DIR}/Doc/DoxyIntroduction.txt"
+ )
+ SET(GDCM_DOXYGEN_EXCLUDE_COMMON
+ )
-#Should rewrote this thing with FOREACH:
-#-----------------------------------------------------------------------------
-# Build the documentation for developpers
+ #Should rewrote this thing with FOREACH:
+ #-----------------------------------------------------------------------------
+ # Build the documentation for developpers
SET(GDCM_HTML_OUTPUT
html.developper
${DOXYGEN}
${GDCM_BINARY_DIR}/Doc/DoxyfileDeveloppers)
-#-----------------------------------------------------------------------------
-# Build the documentation for user
+ #-----------------------------------------------------------------------------
+ # Build the documentation for user
SET(GDCM_HTML_OUTPUT
html.user
INSTALL_FILES(${HTML_DIR} "\\.css$")
- INSTALL_FILES(${HTML_DIR} "\\.gif$")
+ INSTALL_FILES(${HTML_DIR} "\\.png$")
INSTALL_FILES(${HTML_DIR} "\\.html$")
#INSTALL_FILES(${HTML_DIR} "\\.pl$")
#INSTALL_FILES(${HTML_DIR} "\\.stop$")
+#-----------------------------------------------------------------------------\r
+# Build jpeg lib first:\r
SUBDIRS(jpeg)\r
\r
-#CXXFLAGS = @CXXFLAGS@ -DPUB_DICT_PATH=\"$(datadir)/gdcm/\" \\r
-# -D__STDC_LIMIT_MACROS # Refer to stdint.h\r
-\r
INCLUDE_DIRECTORIES(\r
${GDCM_SOURCE_DIR}/jpeg/\r
)\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 -D__STDC_LIMIT_MACROS\r
-# COMPILE_FLAGS -DPUB_DICT_PATH=\\"${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}\\"\r
-#)\r
+#-----------------------------------------------------------------------------\r
+# Why one should not use ADD_DEFINITIONS\r
+# http://www.cmake.org/pipermail/cmake/2003-September/004286.html\r
\r
+#-----------------------------------------------------------------------------\r
+# __STDC_LIMIT_MACROS -> Refer to stdint.h\r
+# http://www.cmake.org/pipermail/cmake/2003-October/004369.html\r
+# http://www.cmake.org/pipermail/cmake/2003-October/004373.html\r
\r
SET_SOURCE_FILES_PROPERTIES(${libgdcm_la_SOURCES}\r
PROPERTIES\r
COMPILE_FLAGS "-D__STDC_LIMIT_MACROS -DPUB_DICT_PATH=\\\"${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}\\\""\r
)\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(UNIX)\r
gdcmijpeg12\r
Wsock32.lib #doesn't exist on cygwin\r
)\r
-ENDIF(UNIX)
\ No newline at end of file
+ENDIF(UNIX)\r
+\r
+#The following is not wroking because when a header file is not found it tries \r
+#to find one in the binary dir\r
+#INSTALL_FILES(/include .h ${libgdcm_la_SOURCES})\r
+#INSTALL_FILES(/include FILES gdcmIdo.h iddcmjpeg.h)\r
+INSTALL_FILES(/include "\\.h$")\r
+\r
+INSTALL_TARGETS(/lib/ gdcm)
\ No newline at end of file
# jconfig.linux \\r
# jconfig.vc\r
\r
-ADD_LIBRARY(gdcmijpeg8 ${libgdcmijpeg8_la_SOURCES})
\ No newline at end of file
+ADD_LIBRARY(gdcmijpeg8 ${libgdcmijpeg8_la_SOURCES})\r
+\r
+#INSTALL_FILES(/include "\\.h$")\r
+INSTALL_FILES(/include FILES ${libgdcmijpeg8include_HEADERS})\r
+#INSTALL_FILES(/include FILES jconfig.linux jconfig.vc)\r
+INSTALL_FILES(/include FILES jconfig.linux)\r
+\r
+INSTALL_TARGETS(/lib/ gdcmijpeg8)
\ No newline at end of file
-#LTVERSION = 0:1:0\r
-\r
-#lib_LTLIBRARIES = libgdcmijpeg12.la\r
-\r
-##CXXFLAGS = @CXXFLAGS@\r
+#-----------------------------------------------------------------------------\r
+# Build jpeg lib for 12 bits:\r
\r
SET(libgdcmijpeg12_la_SOURCES\r
jcapimin12.c\r
jmemnobs12.c\r
)\r
\r
-#libgdcmijpeg12includedir = $(includedir)\r
SET(libgdcmijpeg12include_HEADERS\r
jchuff12.h\r
jconfig12.h\r
# jconfig.linux \\r
# jconfig.vc\r
\r
-ADD_LIBRARY(gdcmijpeg12 ${libgdcmijpeg12_la_SOURCES})
\ No newline at end of file
+ADD_LIBRARY(gdcmijpeg12 ${libgdcmijpeg12_la_SOURCES})\r
+\r
+#INSTALL_FILES(/include "\\.h$")\r
+INSTALL_FILES(/include FILES ${libgdcmijpeg12include_HEADERS})\r
+#INSTALL_FILES(/include FILES jconfig.linux jconfig.vc)\r
+INSTALL_FILES(/include FILES jconfig.linux)\r
+\r
+INSTALL_TARGETS(/lib/ gdcmijpeg12)
\ No newline at end of file
# jconfig.linux \\r
# jconfig.vc\r
\r
-ADD_LIBRARY(gdcmijpeg8 ${libgdcmijpeg8_la_SOURCES})
\ No newline at end of file
+ADD_LIBRARY(gdcmijpeg8 ${libgdcmijpeg8_la_SOURCES})\r
+\r
+#INSTALL_FILES(/include "\\.h$")\r
+INSTALL_FILES(/include FILES ${libgdcmijpeg8include_HEADERS})\r
+#INSTALL_FILES(/include FILES jconfig.linux jconfig.vc)\r
+INSTALL_FILES(/include FILES jconfig.linux)\r
+\r
+INSTALL_TARGETS(/lib/ gdcmijpeg8)
\ No newline at end of file
-#VTK GDCM subdir\r
+#-----------------------------------------------------------------------------\r
+# VTK GDCM Reader subdir\r
\r
+#-----------------------------------------------------------------------------\r
+# Need gdcm header files\r
INCLUDE_DIRECTORIES(\r
${GDCM_SOURCE_DIR}/src/\r
)\r
vtkGdcmReader.cxx\r
)\r
\r
+#-----------------------------------------------------------------------------\r
+# Create vtkgdcm library\r
ADD_LIBRARY(vtkgdcm ${VTKGDCM_LIB_SRCS})\r
TARGET_LINK_LIBRARIES(vtkgdcm \r
gdcm\r
vtkFiltering\r
)\r
\r
+#-----------------------------------------------------------------------------\r
+# See with frog why m4 didn't link to lib, and include cxx file instead ?\r
SET(vtkgdcmdemo_SOURCES\r
testvtkGdcmReader.cxx\r
# vtkGdcmReader.cxx\r
vtkRendering\r
)\r
\r
+#-----------------------------------------------------------------------------\r
+# See with frog why m4 didn't link to lib, and include cxx file instead ?\r
SET(vtkgdcmViewer_SOURCES\r
vtkgdcmViewer.cxx\r
#vtkGdcmReader.cxx \r
TARGET_LINK_LIBRARIES(vtkgdcmViewer \r
vtkgdcm\r
vtkRendering\r
-)
\ No newline at end of file
+)\r
+\r
+# Install vtk header\r
+INSTALL_FILES(/include FILES vtkGdcmReader.h)
\ No newline at end of file