1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
|
# 3rd party libs
if(NOT BUILD_THIRDPARTY)
include(FindPkgConfig)
endif(NOT BUILD_THIRDPARTY)
#------------
# Try to find lib Z
if(BUILD_THIRDPARTY)
# Try to build it
message(STATUS "We will build Z lib from thirdparty")
add_subdirectory(libz)
set(Z_LIBNAME z PARENT_SCOPE)
set(Z_INCLUDE_DIRNAME ${OPENJPEG_SOURCE_DIR}/thirdparty/include PARENT_SCOPE)
set(ZLIB_FOUND 1)
else(BUILD_THIRDPARTY)
# Try to find lib Z
find_package(ZLIB)
if(ZLIB_FOUND)
set(Z_LIBNAME ${ZLIB_LIBRARIES} PARENT_SCOPE)
set(Z_INCLUDE_DIRNAME ${ZLIB_INCLUDE_DIRS} PARENT_SCOPE)
message(STATUS "Your system seems to have a Z lib available, we will use it to generate PNG lib")
# message(STATUS "DEBUG: ${ZLIB_INCLUDE_DIRS} vs ${ZLIB_INCLUDE_DIR}")
else(ZLIB_FOUND) # not found
message(STATUS "Z lib not found, activate BUILD_THIRDPARTY if you want build it (necessary to build libPNG)")
endif(ZLIB_FOUND)
endif(BUILD_THIRDPARTY)
#------------
# Try to find lib PNG (which depends on zlib)
if(BUILD_THIRDPARTY)
# Try to build it
message(STATUS "We will build PNG lib from thirdparty")
add_subdirectory(libpng)
set(OPJ_HAVE_PNG_H 1 PARENT_SCOPE)
set(OPJ_HAVE_LIBPNG 1 PARENT_SCOPE)
set(PNG_LIBNAME png PARENT_SCOPE)
set(PNG_INCLUDE_DIRNAME ${OPENJPEG_SOURCE_DIR}/thirdparty/libpng PARENT_SCOPE)
else(BUILD_THIRDPARTY)
if(ZLIB_FOUND)
find_package(PNG)
# Static only build:
# it is not necessary to invoke pkg_check_module on libpng, because libpng
# only depends on zlib, which is already checked.
if(PNG_FOUND)
message(STATUS "Your system seems to have a PNG lib available, we will use it")
set(OPJ_HAVE_PNG_H 1 PARENT_SCOPE)
set(OPJ_HAVE_LIBPNG 1 PARENT_SCOPE)
set(PNG_LIBNAME ${PNG_LIBRARIES} PARENT_SCOPE)
set(PNG_INCLUDE_DIRNAME ${PNG_PNG_INCLUDE_DIR} PARENT_SCOPE)
else(PNG_FOUND) # not found
set(OPJ_HAVE_PNG_H 0 PARENT_SCOPE)
set(OPJ_HAVE_LIBPNG 0 PARENT_SCOPE)
message(STATUS "PNG lib not found, activate BUILD_THIRDPARTY if you want build it")
endif(PNG_FOUND)
endif(ZLIB_FOUND)
endif(BUILD_THIRDPARTY)
#------------
# Try to find lib TIFF
if(BUILD_THIRDPARTY)
# Try to build it
message(STATUS "We will build TIFF lib from thirdparty")
add_subdirectory(libtiff)
set(TIFF_LIBNAME tiff PARENT_SCOPE)
set(TIFF_INCLUDE_DIRNAME
${OPENJPEG_SOURCE_DIR}/thirdparty/libtiff
${OPENJPEG_BINARY_DIR}/thirdparty/libtiff
PARENT_SCOPE)
set(OPJ_HAVE_TIFF_H 1 PARENT_SCOPE)
set(OPJ_HAVE_LIBTIFF 1 PARENT_SCOPE)
else(BUILD_THIRDPARTY)
find_package(TIFF)
# Static only build:
# it is necessary to invoke pkg_check_module on libtiff since it may have
# several other dependencies not declared by its cmake module, but they are
# in the its pkgconfig module.
if(PKG_CONFIG_FOUND)
foreach(pc_tiff_module tiff tiff3 tiff4 tiff-3 tiff-4 libtiff libtiff3 libtiff4 libtiff-3 libtiff-4)
pkg_check_modules(PC_TIFF QUIET ${pc_tiff_module})
if(PC_TIFF_FOUND)
break()
endif(PC_TIFF_FOUND)
endforeach()
endif(PKG_CONFIG_FOUND)
if(TIFF_FOUND)
message(STATUS "Your system seems to have a TIFF lib available, we will use it")
set(OPJ_HAVE_TIFF_H 1 PARENT_SCOPE)
set(OPJ_HAVE_LIBTIFF 1 PARENT_SCOPE)
if(BUILD_STATIC_LIBS AND NOT BUILD_SHARED_LIBS)
# Probably incorrect as PC_TIFF_STATIC_LIBRARIES will lack the path to the libraries
# and will only work if they are in system directories
set(TIFF_LIBNAME ${PC_TIFF_STATIC_LIBRARIES} PARENT_SCOPE)
set(TIFF_INCLUDE_DIRNAME ${PC_TIFF_STATIC_INCLUDE_DIRS} PARENT_SCOPE)
else()
set(TIFF_LIBNAME ${TIFF_LIBRARIES} PARENT_SCOPE)
set(TIFF_INCLUDE_DIRNAME ${TIFF_INCLUDE_DIR} PARENT_SCOPE)
endif()
else(TIFF_FOUND) # not found
set(OPJ_HAVE_TIFF_H 0 PARENT_SCOPE)
set(OPJ_HAVE_LIBTIFF 0 PARENT_SCOPE)
message(STATUS "TIFF lib not found, activate BUILD_THIRDPARTY if you want build it")
endif(TIFF_FOUND)
endif(BUILD_THIRDPARTY)
#------------
# Try to find lib LCMS2 (or by default LCMS)
set(OPJ_HAVE_LCMS_H 0 PARENT_SCOPE)
set(OPJ_HAVE_LIBLCMS 0 PARENT_SCOPE)
if( BUILD_THIRDPARTY)
# Try to build lcms2
message(STATUS "We will build LCMS2 lib from thirdparty")
add_subdirectory(liblcms2)
set(LCMS_LIBNAME lcms2 PARENT_SCOPE)
set(LCMS_INCLUDE_DIRNAME ${OPENJPEG_SOURCE_DIR}/thirdparty/liblcms2/include PARENT_SCOPE) #
set(OPJ_HAVE_LCMS2_H 1 PARENT_SCOPE)
set(OPJ_HAVE_LIBLCMS2 1 PARENT_SCOPE)
else(BUILD_THIRDPARTY)
find_package(LCMS2)
# Static only build:
# it is necessary to invoke pkg_check_module on lcms2 since it may have
# several other dependencies not declared by its cmake module, but they are
# in the its pkgconfig module.
if(PKG_CONFIG_FOUND)
pkg_check_modules(PC_LCMS2 QUIET lcms2)
endif(PKG_CONFIG_FOUND)
if(LCMS2_FOUND)
message(STATUS "Your system seems to have a LCMS2 lib available, we will use it")
set(OPJ_HAVE_LCMS2_H 1 PARENT_SCOPE)
set(OPJ_HAVE_LIBLCMS2 1 PARENT_SCOPE)
if(BUILD_STATIC_LIBS AND NOT BUILD_SHARED_LIBS)
# Probably incorrect as PC_LCMS2_STATIC_LIBRARIES will lack the path to the libraries
# and will only work if they are in system directories
set(LCMS_LIBNAME ${PC_LCMS2_STATIC_LIBRARIES} PARENT_SCOPE)
set(LCMS_INCLUDE_DIRNAME ${PC_LCMS2_STATIC_INCLUDE_DIRS} PARENT_SCOPE)
else()
set(LCMS_LIBNAME ${LCMS2_LIBRARIES} PARENT_SCOPE)
set(LCMS_INCLUDE_DIRNAME ${LCMS2_INCLUDE_DIRS} PARENT_SCOPE)
endif()
else(LCMS2_FOUND) # not found lcms2
# try to find LCMS
find_package(LCMS)
if(LCMS_FOUND)
message(STATUS "Your system seems to have a LCMS lib available, we will use it")
set(OPJ_HAVE_LCMS_H 1 PARENT_SCOPE)
set(OPJ_HAVE_LIBLCMS 1 PARENT_SCOPE)
set(LCMS_LIBNAME ${LCMS_LIBRARIES} PARENT_SCOPE)
set(LCMS_INCLUDE_DIRNAME ${LCMS_INCLUDE_DIRS} PARENT_SCOPE)
else(LCMS_FOUND) # not found lcms
set(OPJ_HAVE_LCMS2_H 0 PARENT_SCOPE)
set(OPJ_HAVE_LIBLCMS2 0 PARENT_SCOPE)
message(STATUS "LCMS2 or LCMS lib not found, activate BUILD_THIRDPARTY if you want build it")
endif(LCMS_FOUND)
endif(LCMS2_FOUND)
endif(BUILD_THIRDPARTY)
#------------
IF (WITH_ASTYLE)
enable_language(CXX)
ADD_SUBDIRECTORY(astyle)
ENDIF(WITH_ASTYLE)
|