Work In Progress: insert elements from V2 framework into the trunk
[openjpeg.git] / applications / mj2 / CMakeLists.txt
1 # Makefile for the MJ2 codecs of the OpenJPEG library: frames_to_mj2, mj2_to_frames, extract_j2k_from_mj2 and wrap_j2k_in_mj2
2
3 SET(common_SRCS ${OPENJPEG_SOURCE_DIR}/applications/common/opj_getopt.c)
4
5 # While mj2 executables do not use the API correctly, we do not link with the library but rather compile the sources files.
6 SET(OPJ_SRCS
7 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/bio.c
8 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/cio.c
9 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/dwt.c
10 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/event.c
11 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/image.c
12 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/j2k.c
13 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/j2k_lib.c
14 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/jp2.c
15 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/jpt.c
16 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/mct.c
17 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/mqc.c
18 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/openjpeg.c
19 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/pi.c
20 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/raw.c
21 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/t1.c
22 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/t2.c
23 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/tcd.c
24 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/tgt.c
25 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/cidx_manager.c
26 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/phix_manager.c
27 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/ppix_manager.c
28 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/thix_manager.c
29 ${OPENJPEG_SOURCE_DIR}/libopenjpeg/tpix_manager.c
30 )
31
32 SET(MJ2_SRCS mj2.c mj2_convert.c)
33
34 IF(WIN32)
35   ADD_DEFINITIONS(-DOPJ_STATIC)
36 ENDIF(WIN32)
37
38 # Headers file are located here:
39 INCLUDE_DIRECTORIES(
40   ${OPENJPEG_SOURCE_DIR}/libopenjpeg
41   ${OPENJPEG_SOURCE_DIR}/applications/common
42   ${LCMS_INCLUDE_DIRNAME}
43   )
44
45 ADD_EXECUTABLE(frames_to_mj2
46   frames_to_mj2.c
47   ${common_SRCS}
48   ${OPJ_SRCS}
49   ${MJ2_SRCS}
50   )
51 TARGET_LINK_LIBRARIES(frames_to_mj2 ${LCMS_LIBNAME})
52
53 IF(UNIX)
54   TARGET_LINK_LIBRARIES(frames_to_mj2 m)
55 ENDIF(UNIX)
56
57 ADD_EXECUTABLE(mj2_to_frames
58     mj2_to_frames.c
59     ${common_SRCS}
60     ${OPJ_SRCS}
61     ${MJ2_SRCS}
62     ${OPENJPEG_SOURCE_DIR}/applications/common/color.c
63     )
64 TARGET_LINK_LIBRARIES(mj2_to_frames ${LCMS_LIBNAME})
65
66 IF(UNIX)
67   TARGET_LINK_LIBRARIES(mj2_to_frames m)
68 ENDIF(UNIX)
69
70 ADD_EXECUTABLE(extract_j2k_from_mj2
71     extract_j2k_from_mj2.c
72     ${OPJ_SRCS}
73     ${MJ2_SRCS}
74     )
75 TARGET_LINK_LIBRARIES(extract_j2k_from_mj2 ${LCMS_LIBNAME})
76
77 IF(UNIX)
78   TARGET_LINK_LIBRARIES(extract_j2k_from_mj2 m)
79 ENDIF(UNIX)
80
81 ADD_EXECUTABLE(wrap_j2k_in_mj2
82     wrap_j2k_in_mj2.c
83     ${OPJ_SRCS}
84     ${MJ2_SRCS}
85     )
86 TARGET_LINK_LIBRARIES(wrap_j2k_in_mj2 ${LCMS_LIBNAME})
87
88 IF(UNIX)
89   TARGET_LINK_LIBRARIES(wrap_j2k_in_mj2 m)
90 ENDIF(UNIX)
91
92 INSTALL(TARGETS frames_to_mj2 mj2_to_frames extract_j2k_from_mj2 wrap_j2k_in_mj2
93         DESTINATION ${OPENJPEG_INSTALL_BIN_DIR})