]> Creatis software - gdcm.git/blob - src/CMakeLists.txt
ENH: Update CMakeLists.txt to match Makefile.am
[gdcm.git] / src / CMakeLists.txt
1 #-----------------------------------------------------------------------------\r
2 # Build jpeg lib first:\r
3 SUBDIRS(jpeg)\r
4 \r
5 # "jpeglib.h" is defined here:\r
6 INCLUDE_DIRECTORIES(\r
7   ${GDCM_SOURCE_DIR}/src/jpeg/libijg8\r
8   #${GDCM_SOURCE_DIR}/jpeg/libijg12 #all files have been renamed, appending 12\r
9   #${GDCM_SOURCE_DIR}/jpeg/ljpg     # JPEG lib from xmedcom \r
10 )\r
11 \r
12 SET(libgdcm_la_SOURCES\r
13         gdcmDicomDir.cxx\r
14         gdcmDicomDirElement.cxx\r
15         gdcmDict.cxx\r
16         gdcmDictEntry.cxx\r
17         gdcmDictSet.cxx\r
18    gdcmDirList.cxx\r
19    gdcmException.cxx\r
20    gdcmFile.cxx\r
21    gdcmHeader.cxx\r
22    gdcmHeaderEntry.cxx\r
23    gdcmHeaderHelper.cxx\r
24    gdcmImage.cxx\r
25    gdcmMeta.cxx\r
26    gdcmJpeg12.cxx\r
27    gdcmJpeg2000.cxx\r
28    gdcmJpeg.cxx\r
29    gdcmObject.cxx\r
30    gdcmParsePixels.cxx\r
31    gdcmParser.cxx\r
32    gdcmPatient.cxx\r
33    gdcmRLE.cxx\r
34    gdcmSerie.cxx\r
35    gdcmStudy.cxx\r
36    gdcmTS.cxx\r
37    gdcmUtil.cxx\r
38    gdcmVR.cxx\r
39 )\r
40 #-----------------------------------------------------------------------------\r
41 # Why one should not use ADD_DEFINITIONS\r
42 # http://www.cmake.org/pipermail/cmake/2003-September/004286.html\r
43 \r
44 #-----------------------------------------------------------------------------\r
45 # __STDC_LIMIT_MACROS -> Refer to stdint.h\r
46 # http://www.cmake.org/pipermail/cmake/2003-October/004369.html\r
47 # http://www.cmake.org/pipermail/cmake/2003-October/004373.html\r
48 \r
49 SET(GDCM_COMPILE_FLAGS\r
50   "-D__STDC_LIMIT_MACROS  -DPUB_DICT_PATH=\\\"${CMAKE_INSTALL_PREFIX}${GDCM_DATA_DIR}\\\""\r
51   )\r
52 \r
53 # SunOS + old gcc fixes:\r
54 \r
55 INCLUDE (${CMAKE_ROOT}/Modules/CMakeBackwardCompatibilityCXX.cmake)\r
56 IF(CMAKE_NO_ANSI_STRING_STREAM)\r
57 SET(GDCM_COMPILE_FLAGS\r
58   "${GDCM_COMPILE_FLAGS} -DGDCM_NO_ANSI_STRING_STREAM"\r
59   )\r
60 ENDIF(CMAKE_NO_ANSI_STRING_STREAM)\r
61 \r
62 #INCLUDE (${CMAKE_ROOT}/Modules/CMakeBackwardCompatibilityC.cmake)\r
63 #INCLUDE (${CMAKE_ROOT}/Modules/CheckTypeSize.cmake)\r
64 \r
65 INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake)\r
66 CHECK_INCLUDE_FILE("stdint.h"    CMAKE_HAVE_STDINT_H)\r
67 \r
68 #MESSAGE(STATUS ${CMAKE_NO_ANSI_STRING_STREAM})\r
69 IF(NOT CMAKE_HAVE_STDINT_H)\r
70 SET(GDCM_COMPILE_FLAGS\r
71   "${GDCM_COMPILE_FLAGS} -DHAVE_NO_STDINT_H"\r
72   )\r
73 ENDIF(NOT CMAKE_HAVE_STDINT_H)\r
74 \r
75 SET_SOURCE_FILES_PROPERTIES(${libgdcm_la_SOURCES}\r
76   PROPERTIES\r
77   COMPILE_FLAGS ${GDCM_COMPILE_FLAGS}\r
78 )\r
79 \r
80 ADD_LIBRARY(gdcm ${libgdcm_la_SOURCES} )\r
81 IF(UNIX)\r
82   TARGET_LINK_LIBRARIES(gdcm \r
83     gdcmijpeg8 \r
84     gdcmijpeg12\r
85     gdcmljpeg     # JPEG lib from xmedcom \r
86   )\r
87 ELSE(UNIX)\r
88   TARGET_LINK_LIBRARIES(gdcm \r
89     gdcmijpeg8 \r
90     gdcmijpeg12\r
91     gdcmljpeg\r
92     Wsock32.lib   #doesn't exist on cygwin\r
93   )\r
94 ENDIF(UNIX)\r
95 \r
96 #The following is not working because when a header file is not found it tries \r
97 #to find one in the binary dir\r
98 #INSTALL_FILES(/include .h ${libgdcm_la_SOURCES})\r
99 #INSTALL_FILES(/include FILES gdcmIdo.h iddcmjpeg.h)\r
100 INSTALL_FILES(/include "\\.h$")\r
101 \r
102 INSTALL_TARGETS(/lib/ gdcm)\r