# Build the demo app, small examples
# First thing define the common source:
convert.c
index.c
${OPENJPEG_SOURCE_DIR}/common/color.c
)
# If not getopt was found then add it to the lib:
${common_SRCS}
${OPENJPEG_SOURCE_DIR}/common/getopt.c
)
# Headers file are located here:
${OPENJPEG_SOURCE_DIR}/libopenjpeg
${LCMS_INCLUDE_DIR}
${OPENJPEG_SOURCE_DIR}/common
)
# Loop over all executables:
FOREACH(exe j2k_to_image image_to_j2k j2k_dump
)
ADD_TEST(${exe} ${EXECUTABLE_OUTPUT_PATH}/
${exe})
# calling those exe without option will make them fail always:
# On unix you need to link to the math library:
# Install exe
EXPORT OpenJPEGTargets
DESTINATION ${OPENJPEG_INSTALL_BIN_DIR} COMPONENT Applications
)
# Install man pages
FILES ../doc/man/man1/image_to_j2k.1
../doc/man/man1/j2k_dump.1
../doc/man/man1/j2k_to_image.1
DESTINATION ${OPENJPEG_INSTALL_MAN_DIR}/man1)
#
# Do testing here, once we know the examples are being built:
FILE(GLOB_RECURSE OPENJPEG_DATA_IMAGES_GLOB
"${JPEG2000_CONFORMANCE_DATA_ROOT}/*.j2k"
"${JPEG2000_CONFORMANCE_DATA_ROOT}/*.j2c"
"${JPEG2000_CONFORMANCE_DATA_ROOT}/*.jp2"
)
foreach(filename
${OPENJPEG_DATA_IMAGES_GLOB})
OUTPUT_VARIABLE dump_success
OUTPUT_FILE ${CMAKE_CURRENT_BINARY_DIR}/${filename_temp}.dump
ERROR_QUIET
)
file(READ
${CMAKE_CURRENT_BINARY_DIR}/
${filename_temp}.dump numcomp_file
)
string(REGEX REPLACE ".*numcomps=([0-9]+).*" "\\1"
numcomps "${numcomp_file}")
#message( "found:${output_variable} for ${filename_temp}" )
ADD_TEST(dump-
${filename_temp} ${EXECUTABLE_OUTPUT_PATH}/j2k_dump -i
${filename})
foreach(codec_type ppm pgx bmp tif raw tga png
)
ADD_TEST(j2i-
${filename_temp}-
${codec_type} ${EXECUTABLE_OUTPUT_PATH}/j2k_to_image -i
${filename} -o
${filename_temp}.
${codec_type})
ADD_TEST(i2j-
${filename_temp}-
${codec_type} ${EXECUTABLE_OUTPUT_PATH}/image_to_j2k -i
${filename_temp}.
${codec_type} -o
${filename_temp}.
${codec_type}${filename_ext})
#if(UNIX)
# ADD_TEST(cmp-${filename_temp}-${codec_type} cmp ${filename} ${filename_temp}.${codec_type}${filename_ext})
#endif(UNIX)