1 CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
3 IF(OSGTiffLibSrcDir AND OSGZLibSrcDir AND OSGJpegLibSrcDir)
5 MESSAGE(STATUS "adding libtiff from : ${OSGTiffLibSrcDir}")
9 SET(${PROJECT_NAME}SharedTarget osgtiff)
10 SET(${PROJECT_NAME}StaticTarget libosgtiff)
12 SET(OSG_TIFFLIB_SRCS ${OSGTiffLibSrcDir}/libtiff/tif_aux.c
13 ${OSGTiffLibSrcDir}/libtiff/tif_close.c
14 ${OSGTiffLibSrcDir}/libtiff/tif_codec.c
15 ${OSGTiffLibSrcDir}/libtiff/tif_color.c
16 ${OSGTiffLibSrcDir}/libtiff/tif_compress.c
17 ${OSGTiffLibSrcDir}/libtiff/tif_dir.c
18 ${OSGTiffLibSrcDir}/libtiff/tif_dirinfo.c
19 ${OSGTiffLibSrcDir}/libtiff/tif_dirread.c
20 ${OSGTiffLibSrcDir}/libtiff/tif_dirwrite.c
21 ${OSGTiffLibSrcDir}/libtiff/tif_dumpmode.c
22 ${OSGTiffLibSrcDir}/libtiff/tif_error.c
23 ${OSGTiffLibSrcDir}/libtiff/tif_extension.c
24 ${OSGTiffLibSrcDir}/libtiff/tif_fax3.c
25 ${OSGTiffLibSrcDir}/libtiff/tif_fax3sm.c
26 ${OSGTiffLibSrcDir}/libtiff/tif_getimage.c
27 ${OSGTiffLibSrcDir}/libtiff/tif_jpeg.c
28 ${OSGTiffLibSrcDir}/libtiff/tif_ojpeg.c
29 ${OSGTiffLibSrcDir}/libtiff/tif_flush.c
30 ${OSGTiffLibSrcDir}/libtiff/tif_luv.c
31 ${OSGTiffLibSrcDir}/libtiff/tif_lzw.c
32 ${OSGTiffLibSrcDir}/libtiff/tif_next.c
33 ${OSGTiffLibSrcDir}/libtiff/tif_open.c
34 ${OSGTiffLibSrcDir}/libtiff/tif_packbits.c
35 ${OSGTiffLibSrcDir}/libtiff/tif_pixarlog.c
36 ${OSGTiffLibSrcDir}/libtiff/tif_predict.c
37 ${OSGTiffLibSrcDir}/libtiff/tif_print.c
38 ${OSGTiffLibSrcDir}/libtiff/tif_read.c
39 ${OSGTiffLibSrcDir}/libtiff/tif_stream.cxx
40 ${OSGTiffLibSrcDir}/libtiff/tif_swab.c
41 ${OSGTiffLibSrcDir}/libtiff/tif_strip.c
42 ${OSGTiffLibSrcDir}/libtiff/tif_thunder.c
43 ${OSGTiffLibSrcDir}/libtiff/tif_tile.c
44 ${OSGTiffLibSrcDir}/libtiff/tif_version.c
45 ${OSGTiffLibSrcDir}/libtiff/tif_warning.c
46 ${OSGTiffLibSrcDir}/libtiff/tif_write.c
47 ${OSGTiffLibSrcDir}/libtiff/tif_zip.c
48 ${OSGTiffLibSrcDir}/libtiff/tif_unix.c)
50 SET(OSG_TIFFLIB_HDR ${OSGTiffLibSrcDir}/libtiff/tiff.h
51 ${OSGTiffLibSrcDir}/libtiff/tiffio.h
52 ${OSGTiffLibSrcDir}/libtiff/tiffconf.h
53 ${OSGTiffLibSrcDir}/libtiff/tiffvers.h)
55 SET(OSGTIFFLIB_DEF AVOID_WIN32_FILEIO;CHECK_JPEG_YCBCR_SUBSAMPLING;DEFAULT_EXTRASAMPLE_AS_ALPHA;STRIPCHOP_DEFAULT=TIFF_STRIPCHOP;STRIP_SIZE_DEFAULT=8192;LOGLUV_SUPPORT;NEXT_SUPPORT;THUNDER_SUPPORT;LZW_SUPPORT;PACKBITS_SUPPORT;CCITT_SUPPORT;TIF_PLATFORM_CONSOLE;FILLODER_LSB2MSB)
58 COMMAND "${CMAKE_COMMAND}" -E copy_if_different
59 "${OSGTiffLibSrcDir}/libtiff/tif_config.h.vc"
60 "${CMAKE_BINARY_DIR}/libtiff/tif_config.h")
62 COMMAND "${CMAKE_COMMAND}" -E copy_if_different
63 "${OSGTiffLibSrcDir}/libtiff/tiffconf.h.vc"
64 "${CMAKE_BINARY_DIR}/libtiff/tiffconf.h")
66 INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}/libtiff)
67 INCLUDE_DIRECTORIES(${OSG_ZLIB_INCLUDE_DIR})
68 INCLUDE_DIRECTORIES(${OSGJpegLibSrcDir})
71 ADD_LIBRARY(${${PROJECT_NAME}SharedTarget} SHARED ${OSG_TIFFLIB_SRCS}
72 ${OSGTiffLibSrcDir}/libtiff/libtiff.def)
74 ADD_DEPENDENCIES(ALL_STANDARD_BUILD ${${PROJECT_NAME}SharedTarget})
76 SET_TARGET_PROPERTIES(${${PROJECT_NAME}SharedTarget} PROPERTIES
79 SET(OSGTIFFLIB_DEF_SHARED ${OSGTIFFLIB_DEF};ZLIB_DLL)
81 SET_TARGET_PROPERTIES(${${PROJECT_NAME}SharedTarget} PROPERTIES
82 COMPILE_DEFINITIONS "${OSGTIFFLIB_DEF_SHARED}")
84 TARGET_LINK_LIBRARIES(${${PROJECT_NAME}SharedTarget} osgzlib)
85 TARGET_LINK_LIBRARIES(${${PROJECT_NAME}SharedTarget} libosgjpg)
87 INSTALL(TARGETS ${${PROJECT_NAME}SharedTarget}
88 CONFIGURATIONS Release
89 RUNTIME DESTINATION bin COMPONENT release_runtimes
90 LIBRARY DESTINATION lib COMPONENT release_libraries
91 ARCHIVE DESTINATION lib COMPONENT release_libraries)
93 INSTALL(TARGETS ${${PROJECT_NAME}SharedTarget}
95 RUNTIME DESTINATION bin COMPONENT debug_runtimes
96 LIBRARY DESTINATION lib COMPONENT debug_libraries
97 ARCHIVE DESTINATION lib COMPONENT debug_libraries)
99 ENDIF(BUILD_SHARED_LIBS)
101 IF(BUILD_STATIC_LIBS)
102 ADD_LIBRARY(${${PROJECT_NAME}StaticTarget} STATIC ${OSG_TIFFLIB_SRCS})
104 ADD_DEPENDENCIES(ALL_STANDARD_BUILD ${${PROJECT_NAME}StaticTarget})
106 SET_TARGET_PROPERTIES(${${PROJECT_NAME}StaticTarget} PROPERTIES
109 SET_TARGET_PROPERTIES(${${PROJECT_NAME}StaticTarget} PROPERTIES
110 COMPILE_DEFINITIONS "${OSGTIFFLIB_DEF}")
113 INSTALL(TARGETS ${${PROJECT_NAME}StaticTarget}
114 CONFIGURATIONS Release
115 RUNTIME DESTINATION lib COMPONENT release_libraries
116 LIBRARY DESTINATION lib COMPONENT release_libraries
117 ARCHIVE DESTINATION lib COMPONENT release_libraries)
119 INSTALL(TARGETS ${${PROJECT_NAME}StaticTarget}
121 RUNTIME DESTINATION lib COMPONENT debug_libraries
122 LIBRARY DESTINATION lib COMPONENT debug_libraries
123 ARCHIVE DESTINATION lib COMPONENT debug_libraries)
124 ENDIF(BUILD_STATIC_LIBS)
126 INSTALL(FILES ${OSG_TIFFLIB_HDR}
127 DESTINATION ${OSG_SUPPORT_INC_SUBDIR}include
128 COMPONENT code_headers
129 PERMISSIONS OWNER_WRITE OWNER_READ
133 ELSE(OSGTiffLibSrcDir AND OSGZLibSrcDir AND OSGJpegLibSrcDir)
134 MESSAGE(STATUS "ignoring libtiff")
136 SET(OSGTiffLibSrcDir "" CACHE PATH "")
137 ENDIF(OSGTiffLibSrcDir AND OSGZLibSrcDir AND OSGJpegLibSrcDir)