Merge pull request #1164 from sebras/master
[openjpeg.git] / thirdparty / CMakeLists.txt
1 # 3rd party libs
2
3 #------------
4 # Try to find lib Z
5 if(BUILD_THIRDPARTY)
6   # Try to build it
7   message(STATUS "We will build Z lib from thirdparty")
8   add_subdirectory(libz)
9   set(Z_LIBNAME z PARENT_SCOPE)
10   set(Z_INCLUDE_DIRNAME ${OPENJPEG_SOURCE_DIR}/thirdparty/include PARENT_SCOPE)
11   set(ZLIB_FOUND 1)
12 else(BUILD_THIRDPARTY)
13   # Try to find lib Z
14   find_package(ZLIB)
15   if(ZLIB_FOUND)
16     set(Z_LIBNAME ${ZLIB_LIBRARIES} PARENT_SCOPE)
17     set(Z_INCLUDE_DIRNAME ${ZLIB_INCLUDE_DIRS} PARENT_SCOPE)
18     message(STATUS "Your system seems to have a Z lib available, we will use it to generate PNG lib")
19     # message(STATUS "DEBUG: ${ZLIB_INCLUDE_DIRS} vs ${ZLIB_INCLUDE_DIR}")
20   else(ZLIB_FOUND) # not found
21     message(STATUS "Z lib not found, activate BUILD_THIRDPARTY if you want build it (necessary to build libPNG)")
22   endif(ZLIB_FOUND)
23 endif(BUILD_THIRDPARTY)
24
25
26 #------------
27 # Try to find lib PNG (which depends on zlib)
28 if(BUILD_THIRDPARTY)
29   # Try to build it
30   message(STATUS "We will build PNG lib from thirdparty")
31   add_subdirectory(libpng)
32   set(OPJ_HAVE_PNG_H 1 PARENT_SCOPE)
33   set(OPJ_HAVE_LIBPNG 1 PARENT_SCOPE)
34   set(PNG_LIBNAME png PARENT_SCOPE)
35   set(PNG_INCLUDE_DIRNAME ${OPENJPEG_SOURCE_DIR}/thirdparty/libpng PARENT_SCOPE)
36 else(BUILD_THIRDPARTY)
37   if(ZLIB_FOUND)
38     find_package(PNG)
39     if(PNG_FOUND)
40       message(STATUS "Your system seems to have a PNG lib available, we will use it")
41       set(OPJ_HAVE_PNG_H 1 PARENT_SCOPE)
42       set(OPJ_HAVE_LIBPNG 1 PARENT_SCOPE)
43       set(PNG_LIBNAME ${PNG_LIBRARIES} PARENT_SCOPE)
44       set(PNG_INCLUDE_DIRNAME ${PNG_PNG_INCLUDE_DIR} PARENT_SCOPE)
45     else(PNG_FOUND) # not found
46       set(OPJ_HAVE_PNG_H 0 PARENT_SCOPE)
47       set(OPJ_HAVE_LIBPNG 0 PARENT_SCOPE)
48       message(STATUS "PNG lib not found, activate BUILD_THIRDPARTY if you want build it")
49     endif(PNG_FOUND)
50   endif(ZLIB_FOUND)
51 endif(BUILD_THIRDPARTY)
52
53 #------------
54 # Try to find lib TIFF
55
56 if(BUILD_THIRDPARTY)
57   # Try to build it
58   message(STATUS "We will build TIFF lib from thirdparty")
59   add_subdirectory(libtiff)
60   set(TIFF_LIBNAME tiff PARENT_SCOPE)
61   set(TIFF_INCLUDE_DIRNAME
62     ${OPENJPEG_SOURCE_DIR}/thirdparty/libtiff
63     ${OPENJPEG_BINARY_DIR}/thirdparty/libtiff
64     PARENT_SCOPE)
65   set(OPJ_HAVE_TIFF_H 1 PARENT_SCOPE)
66   set(OPJ_HAVE_LIBTIFF 1 PARENT_SCOPE)
67 else(BUILD_THIRDPARTY)
68   find_package(TIFF)
69   if(TIFF_FOUND)
70     message(STATUS "Your system seems to have a TIFF lib available, we will use it")
71     set(OPJ_HAVE_TIFF_H 1 PARENT_SCOPE)
72     set(OPJ_HAVE_LIBTIFF 1 PARENT_SCOPE)
73     set(TIFF_LIBNAME ${TIFF_LIBRARIES} PARENT_SCOPE)
74     set(TIFF_INCLUDE_DIRNAME ${TIFF_INCLUDE_DIR} PARENT_SCOPE)
75   else(TIFF_FOUND) # not found
76     set(OPJ_HAVE_TIFF_H 0 PARENT_SCOPE)
77     set(OPJ_HAVE_LIBTIFF 0 PARENT_SCOPE)
78     message(STATUS "TIFF lib not found, activate BUILD_THIRDPARTY if you want build it")
79   endif(TIFF_FOUND)
80 endif(BUILD_THIRDPARTY)
81
82 #------------
83 # Try to find lib LCMS2 (or by default LCMS)
84 set(OPJ_HAVE_LCMS_H 0 PARENT_SCOPE)
85 set(OPJ_HAVE_LIBLCMS 0 PARENT_SCOPE)
86
87 if( BUILD_THIRDPARTY)
88   # Try to build lcms2
89   message(STATUS "We will build LCMS2 lib from thirdparty")
90   add_subdirectory(liblcms2)
91   set(LCMS_LIBNAME lcms2 PARENT_SCOPE)
92   set(LCMS_INCLUDE_DIRNAME ${OPENJPEG_SOURCE_DIR}/thirdparty/liblcms2/include PARENT_SCOPE) #
93   set(OPJ_HAVE_LCMS2_H 1 PARENT_SCOPE)
94   set(OPJ_HAVE_LIBLCMS2 1 PARENT_SCOPE)
95 else(BUILD_THIRDPARTY)
96   find_package(LCMS2)
97   if(LCMS2_FOUND)
98     message(STATUS "Your system seems to have a LCMS2 lib available, we will use it")
99     set(OPJ_HAVE_LCMS2_H 1 PARENT_SCOPE)
100     set(OPJ_HAVE_LIBLCMS2 1 PARENT_SCOPE)
101     set(LCMS_LIBNAME ${LCMS2_LIBRARIES} PARENT_SCOPE)
102     set(LCMS_INCLUDE_DIRNAME ${LCMS2_INCLUDE_DIRS} PARENT_SCOPE)
103   else(LCMS2_FOUND) # not found lcms2
104     # try to find LCMS
105     find_package(LCMS)
106     if(LCMS_FOUND)
107       message(STATUS "Your system seems to have a LCMS lib available, we will use it")
108       set(OPJ_HAVE_LCMS_H 1 PARENT_SCOPE)
109       set(OPJ_HAVE_LIBLCMS 1 PARENT_SCOPE)
110       set(LCMS_LIBNAME ${LCMS_LIBRARIES} PARENT_SCOPE)
111       set(LCMS_INCLUDE_DIRNAME ${LCMS_INCLUDE_DIRS} PARENT_SCOPE)
112     else(LCMS_FOUND) # not found lcms
113       set(OPJ_HAVE_LCMS2_H 0 PARENT_SCOPE)
114       set(OPJ_HAVE_LIBLCMS2 0 PARENT_SCOPE)
115       message(STATUS "LCMS2 or LCMS lib not found, activate BUILD_THIRDPARTY if you want build it")
116     endif(LCMS_FOUND)
117   endif(LCMS2_FOUND)
118 endif(BUILD_THIRDPARTY)
119
120
121 #------------
122 IF (WITH_ASTYLE)
123   ADD_SUBDIRECTORY(astyle)
124 ENDIF(WITH_ASTYLE)