[trunk] implement Large File support in the library
[openjpeg.git] / applications / codec / CMakeLists.txt
1 # Build the demo app, small examples
2
3 # First thing define the common source:
4 SET(common_SRCS
5   convert.c
6   index.c
7   ${OPENJPEG_SOURCE_DIR}/applications/common/color.c
8   ${OPENJPEG_SOURCE_DIR}/applications/common/opj_getopt.c
9   )
10
11 # Headers file are located here:
12 INCLUDE_DIRECTORIES(
13   ${OPENJPEG_SOURCE_DIR}/libopenjpeg
14   ${LCMS_INCLUDE_DIRNAME}
15   ${OPENJPEG_SOURCE_DIR}/applications/common
16   ${Z_INCLUDE_DIRNAME}
17   ${PNG_INCLUDE_DIRNAME}
18   ${TIFF_INCLUDE_DIRNAME}
19   )
20
21 IF(WIN32)
22   IF(BUILD_SHARED_LIBS)
23     ADD_DEFINITIONS(-DOPJ_EXPORTS)
24   ELSE(BUILD_SHARED_LIBS)
25     ADD_DEFINITIONS(-DOPJ_STATIC)
26   ENDIF(BUILD_SHARED_LIBS)
27 ENDIF(WIN32)
28
29 # Loop over all executables:
30 FOREACH(exe j2k_to_image image_to_j2k j2k_dump)
31   ADD_EXECUTABLE(${exe} ${exe}.c ${common_SRCS})
32   TARGET_LINK_LIBRARIES(${exe} ${OPENJPEG_LIBRARY_NAME} 
33     ${Z_LIBNAME} ${PNG_LIBNAME} ${TIFF_LIBNAME} ${LCMS_LIBNAME}
34     )
35
36   # On unix you need to link to the math library:
37   IF(UNIX)
38     TARGET_LINK_LIBRARIES(${exe} m)
39   ENDIF(UNIX)
40   # Install exe
41   INSTALL(TARGETS ${exe}
42     EXPORT OpenJPEGTargets
43     DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
44   )
45 ENDFOREACH(exe)
46
47 # Install man pages
48 INSTALL(
49   FILES       ${OPENJPEG_SOURCE_DIR}/doc/man/man1/image_to_j2k.1
50               ${OPENJPEG_SOURCE_DIR}/doc/man/man1/j2k_dump.1
51               ${OPENJPEG_SOURCE_DIR}/doc/man/man1/j2k_to_image.1
52   DESTINATION ${OPENJPEG_INSTALL_MAN_DIR}/man1)
53
54 IF(BUILD_JPWL)
55   ADD_EXECUTABLE(JPWL_j2k_to_image
56   j2k_to_image.c
57   ${common_SRCS}
58   )
59   
60   SET_PROPERTY(
61      TARGET JPWL_j2k_to_image
62      APPEND PROPERTY COMPILE_DEFINITIONS USE_JPWL
63   )
64
65   TARGET_LINK_LIBRARIES(JPWL_j2k_to_image ${OPENJPEG_LIBRARY_NAME}_JPWL
66     ${LCMS_LIBNAME} ${Z_LIBNAME} ${PNG_LIBNAME} ${TIFF_LIBNAME})
67   
68   IF(UNIX)
69     TARGET_LINK_LIBRARIES(JPWL_j2k_to_image m)
70   ENDIF(UNIX)
71
72   ADD_EXECUTABLE(JPWL_image_to_j2k
73     image_to_j2k.c
74     ${common_SRCS}
75     )
76   
77   SET_PROPERTY(
78     TARGET JPWL_image_to_j2k
79     APPEND PROPERTY COMPILE_DEFINITIONS USE_JPWL
80     )
81
82   TARGET_LINK_LIBRARIES(JPWL_image_to_j2k ${OPENJPEG_LIBRARY_NAME}_JPWL 
83     ${LCMS_LIBNAME} ${Z_LIBNAME} ${PNG_LIBNAME} ${TIFF_LIBNAME}
84     )
85
86   IF(UNIX)
87     TARGET_LINK_LIBRARIES(JPWL_image_to_j2k m)
88   ENDIF(UNIX)
89
90   INSTALL(TARGETS JPWL_image_to_j2k JPWL_j2k_to_image
91     DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
92   )
93 ENDIF(BUILD_JPWL)