INCLUDE_REGULAR_EXPRESSION("^.*$") # Defines the source code for the library SET(OPENJPEG_SRCS bio.c cio.c dwt.c event.c image.c j2k.c j2k_lib.c jp2.c jpt.c mct.c mqc.c openjpeg.c pi.c raw.c t1.c t2.c tcd.c tgt.c opj_convert.c ) IF(LCMS_INCLUDE_DIR) INCLUDE_DIRECTORIES( ${LCMS_INCLUDE_DIR} ) ENDIF(LCMS_INCLUDE_DIR) # Build the static library IF(WIN32) ADD_DEFINITIONS(-DOPJ_STATIC) ENDIF(WIN32) ADD_LIBRARY(${OPENJPEG_LIBRARY_NAME}.static STATIC ${OPENJPEG_SRCS}) SET_TARGET_PROPERTIES(${OPENJPEG_LIBRARY_NAME}.static PROPERTIES OUTPUT_NAME ${OPENJPEG_LIBRARY_NAME}) SET_TARGET_PROPERTIES(${OPENJPEG_LIBRARY_NAME}.static PROPERTIES ${OPENJPEG_LIBRARY_PROPERTIES}) IF(LCMS_LIB) TARGET_LINK_LIBRARIES(${OPENJPEG_LIBRARY_NAME}.static ${LCMS_LIB}) ENDIF(LCMS_LIB) # Install library INSTALL(TARGETS ${OPENJPEG_LIBRARY_NAME}.static EXPORT OpenJPEGTargets DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries ) # If BUILD_SHARED_LIBS is ON, also build the shared library IF(BUILD_SHARED_LIBS) # replace flag for static build with flag for shared build IF(WIN32) REMOVE_DEFINITIONS(-DOPJ_STATIC) ADD_DEFINITIONS(-DOPJ_EXPORTS) ENDIF(WIN32) # Create the shared library ADD_LIBRARY(${OPENJPEG_LIBRARY_NAME}.shared SHARED ${OPENJPEG_SRCS}) SET_TARGET_PROPERTIES(${OPENJPEG_LIBRARY_NAME}.shared PROPERTIES OUTPUT_NAME ${OPENJPEG_LIBRARY_NAME}) SET_TARGET_PROPERTIES(${OPENJPEG_LIBRARY_NAME}.shared PROPERTIES ${OPENJPEG_LIBRARY_PROPERTIES}) IF(LCMS_LIB) TARGET_LINK_LIBRARIES(${OPENJPEG_LIBRARY_NAME}.shared ${LCMS_LIB}) ENDIF(LCMS_LIB) # Install library INSTALL(TARGETS ${OPENJPEG_LIBRARY_NAME}.shared EXPORT OpenJPEGTargets DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries ) IF(WIN32) REMOVE_DEFINITIONS(-DOPJ_EXPORTS) ENDIF(WIN32) ENDIF(BUILD_SHARED_LIBS) # Install includes files INSTALL(FILES openjpeg.h DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR}/${subdir} COMPONENT Headers ) INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink \$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${OPENJPEG_INSTALL_INCLUDE_DIR}/${subdir}/openjpeg.h \$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${OPENJPEG_INSTALL_INCLUDE_DIR}/openjpeg.h)") # install man page of the library INSTALL( FILES ../doc/man/man3/libopenjpeg.3 DESTINATION ${OPENJPEG_INSTALL_MAN_DIR}/man3)