Mercurial > hg > orthanc-wsi
annotate Resources/CMake/LibTiffConfiguration.cmake @ 301:2defc8008b33
migration to UCLouvain servers
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 22 Nov 2023 07:49:49 +0100 |
parents | 0ad6bb263752 |
children | 2e59c3fe8e32 |
rev | line source |
---|---|
245
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
1 # Orthanc - A Lightweight, RESTful DICOM Store |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
2 # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
3 # Department, University Hospital of Liege, Belgium |
254 | 4 # Copyright (C) 2017-2023 Osimis S.A., Belgium |
5 # Copyright (C) 2021-2023 Sebastien Jodogne, ICTEAM UCLouvain, Belgium | |
245
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
6 # |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
7 # This program is free software: you can redistribute it and/or |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
8 # modify it under the terms of the GNU Affero General Public License |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
9 # as published by the Free Software Foundation, either version 3 of |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
10 # the License, or (at your option) any later version. |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
11 # |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
12 # This program is distributed in the hope that it will be useful, but |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
13 # WITHOUT ANY WARRANTY; without even the implied warranty of |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
15 # Affero General Public License for more details. |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
16 # |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
17 # You should have received a copy of the GNU Affero General Public License |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
18 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
19 |
7ae09ea0cccd
added missing copyright headers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
221
diff
changeset
|
20 |
221
dbcf9ad44a70
upgrade to libtiff 4.2.0
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
158
diff
changeset
|
21 # http://simplesystems.org/libtiff/ |
dbcf9ad44a70
upgrade to libtiff 4.2.0
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
158
diff
changeset
|
22 |
0 | 23 if (STATIC_BUILD OR NOT USE_SYSTEM_LIBTIFF) |
221
dbcf9ad44a70
upgrade to libtiff 4.2.0
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
158
diff
changeset
|
24 SET(LIBTIFF_SOURCES_DIR ${CMAKE_BINARY_DIR}/tiff-4.2.0) |
301
2defc8008b33
migration to UCLouvain servers
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
293
diff
changeset
|
25 SET(LIBTIFF_URL "https://orthanc.uclouvain.be/downloads/third-party-downloads/tiff-4.2.0.tar.gz") |
221
dbcf9ad44a70
upgrade to libtiff 4.2.0
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
158
diff
changeset
|
26 SET(LIBTIFF_MD5 "2bbf6db1ddc4a59c89d6986b368fc063") |
0 | 27 |
28 DownloadPackage(${LIBTIFF_MD5} ${LIBTIFF_URL} "${LIBTIFF_SOURCES_DIR}") | |
29 | |
30 if (NOT EXISTS ${LIBTIFF_SOURCES_DIR}/libtiff/tif_config.h) | |
31 file(WRITE ${LIBTIFF_SOURCES_DIR}/libtiff/tif_config.h " | |
32 #include <stdint.h> | |
33 #include <stddef.h> | |
34 #include <fcntl.h> | |
35 #include <string.h> | |
36 ") | |
37 file(WRITE ${LIBTIFF_SOURCES_DIR}/libtiff/tiffconf.h " | |
25 | 38 #if defined(_MSC_VER) |
27 | 39 # if !defined(ssize_t) |
40 # define WIN32_LEAN_AND_MEAN | |
41 # include <windows.h> | |
42 # define ssize_t SSIZE_T | |
43 # endif | |
52 | 44 # if !defined(snprintf) && (_MSC_VER < 1900) |
27 | 45 # define snprintf _snprintf |
46 # endif | |
25 | 47 #endif |
48 | |
0 | 49 #include <stdint.h> |
50 #include <sys/types.h> | |
51 ") | |
52 endif() | |
53 | |
54 set(TIFF_FILLORDER FILLORDER_MSB2LSB) | |
25 | 55 if (CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "i.*86.*" OR |
0 | 56 CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "amd64.*" OR |
57 CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "x86_64.*") | |
58 set(TIFF_FILLORDER FILLORDER_LSB2MSB) | |
59 endif() | |
60 | |
61 add_definitions( | |
62 -DTIFF_INT8_T=int8_t | |
63 -DTIFF_INT16_T=int16_t | |
64 -DTIFF_INT32_T=int32_t | |
65 -DTIFF_INT64_T=int64_t | |
66 -DTIFF_UINT8_T=uint8_t | |
67 -DTIFF_UINT16_T=uint16_t | |
68 -DTIFF_UINT32_T=uint32_t | |
69 -DTIFF_UINT64_T=uint64_t | |
70 -DTIFF_SSIZE_T=ssize_t | |
71 -DHAVE_IEEEFP=1 | |
72 -DHOST_FILLORDER=${TIFF_FILLORDER} | |
73 -DHAVE_SNPRINTF=1 | |
74 -DJPEG_SUPPORT=1 | |
75 -DLZW_SUPPORT=1 | |
52 | 76 ) |
0 | 77 |
52 | 78 if (MSVC) |
79 # The "%" must be escaped if using Visual Studio | |
80 add_definitions( | |
81 -DTIFF_INT64_FORMAT="%%lld" | |
82 -DTIFF_UINT64_FORMAT="%%llu" | |
83 -DTIFF_SSIZE_FORMAT="%%d" | |
84 ) | |
85 else() | |
86 add_definitions( | |
87 -DTIFF_INT64_FORMAT="%lld" | |
88 -DTIFF_UINT64_FORMAT="%llu" | |
89 -DTIFF_SSIZE_FORMAT="%d" | |
90 ) | |
91 endif() | |
0 | 92 |
93 set(LIBTIFF_SOURCES | |
94 #${LIBTIFF_SOURCES_DIR}/libtiff/mkg3states.c | |
95 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_aux.c | |
96 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_close.c | |
97 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_codec.c | |
98 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_color.c | |
99 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_compress.c | |
100 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_dir.c | |
101 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_dirinfo.c | |
102 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_dirread.c | |
103 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_dirwrite.c | |
104 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_dumpmode.c | |
105 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_error.c | |
106 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_extension.c | |
107 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_fax3.c | |
108 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_fax3sm.c | |
109 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_flush.c | |
110 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_getimage.c | |
111 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_jbig.c | |
112 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_jpeg_12.c | |
113 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_jpeg.c | |
114 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_luv.c | |
115 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_lzma.c | |
116 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_lzw.c | |
117 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_next.c | |
118 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_ojpeg.c | |
119 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_open.c | |
120 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_packbits.c | |
121 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_pixarlog.c | |
122 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_predict.c | |
123 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_print.c | |
124 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_read.c | |
125 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_strip.c | |
126 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_swab.c | |
127 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_thunder.c | |
128 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_tile.c | |
129 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_unix.c | |
130 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_version.c | |
131 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_warning.c | |
132 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_write.c | |
133 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_zip.c | |
134 ) | |
135 | |
136 include_directories(${LIBTIFF_SOURCES_DIR}/libtiff) | |
137 | |
138 if ("${CMAKE_SYSTEM_VERSION}" STREQUAL "Windows") | |
139 list(APPEND LIBTIFF_SOURCES | |
140 ${LIBTIFF_SOURCES_DIR}/libtiff/tif_win32.c | |
141 ) | |
142 endif() | |
143 | |
22 | 144 source_group(ThirdParty\\libtiff REGULAR_EXPRESSION ${LIBTIFF_SOURCES_DIR}/.*) |
0 | 145 |
146 else() | |
147 CHECK_INCLUDE_FILE_CXX(tiff.h HAVE_LIBTIFF_H) | |
148 if (NOT HAVE_LIBTIFF_H) | |
149 message(FATAL_ERROR "Please install the libtiff-dev package") | |
150 endif() | |
151 | |
152 CHECK_LIBRARY_EXISTS(tiff TIFFGetField "" HAVE_LIBTIFF_LIB) | |
153 if (NOT HAVE_LIBTIFF_LIB) | |
154 message(FATAL_ERROR "Please install the libtiff-dev package") | |
155 endif() | |
156 | |
157 link_libraries(tiff) | |
158 endif() |