Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Source/Plugins/J2KHelper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

#include "FreeImage.h"
#include "Utilities.h"
#include "openjp2/openjpeg.h"
#include "openjpeg.h"
#include "J2KHelper.h"

// --------------------------------------------------------------------------
Expand Down
2 changes: 1 addition & 1 deletion Source/Plugins/PluginJ2K.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

#include "FreeImage.h"
#include "Utilities.h"
#include "openjp2/openjpeg.h"
#include "openjpeg.h"
#include "J2KHelper.h"

// ==========================================================
Expand Down
2 changes: 1 addition & 1 deletion Source/Plugins/PluginJP2.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

#include "FreeImage.h"
#include "Utilities.h"
#include "openjp2/openjpeg.h"
#include "openjpeg.h"
#include "J2KHelper.h"

// ==========================================================
Expand Down
33 changes: 26 additions & 7 deletions Source/Plugins/PluginWebP.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
#include "webp/decode.h"
#include "webp/encode.h"
#include "webp/mux.h"
#include "dec/vp8i_dec.h"
//#include "dec/vp8i_dec.h"

// ==========================================================
// Plugin Interface
Expand Down Expand Up @@ -679,13 +679,32 @@ InitWEBP(Plugin *plugin, int format_id) {
plugin->supports_no_pixels_proc = SupportsNoPixels;
}

namespace {

const char* PrintWebpVersion(uint32_t major, uint32_t minor, uint32_t revision) {
static char buffer[128] = {};
std::snprintf(buffer, std::size(buffer), "LibWebP v%u.%u.%u", major, minor, revision);
return buffer;
}

FIDEPENDENCY MakeWebpDependency() {
const auto packedVersion = static_cast<uint32_t>(WebPGetDecoderVersion());
const auto major = (packedVersion >> 16) & 0xFF;
const auto minor = (packedVersion >> 8) & 0xFF;
const auto revision = packedVersion & 0xFF;

return FIDEPENDENCY {
.name = "LibWebP",
.fullVersion = PrintWebpVersion(major, minor, revision),
.majorVersion = major,
.minorVersion = minor
};
}

} // namespace


const FIDEPENDENCY* GetWebpDependencyInfo() {
static const FIDEPENDENCY info = {
.name = "LibWebP",
.fullVersion = "LibWebP v" FI_QUOTE(DEC_MAJ_VERSION) "." FI_QUOTE(DEC_MIN_VERSION) "." FI_QUOTE(DEC_REV_VERSION),
.majorVersion = DEC_MAJ_VERSION,
.minorVersion = DEC_MIN_VERSION
};
static const FIDEPENDENCY info = MakeWebpDependency();
return &info;
}
9 changes: 3 additions & 6 deletions cmake/dependency.brotli.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ ExternalProject_Add(BROTLI
PATCH_COMMAND ""
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET}
INSTALL_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t install
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG}
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS}
"-DBUILD_SHARED_LIBS=OFF" "-DBUILD_TESTING=OFF" "-DBROTLI_BUILD_FOR_PACKAGE=OFF" "-DBROTLI_BUILD_TOOLS=OFF"
"-DCMAKE_C_FLAGS:STRING=${ZERO_WARNINGS_FLAG} ${FPIC_FLAG}" "-DCMAKE_DEBUG_POSTFIX=" "-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/brotli/install"
EXCLUDE_FROM_ALL
Expand All @@ -29,11 +29,8 @@ ExternalProject_Get_Property(BROTLI INSTALL_DIR)

add_library(LibBrotli INTERFACE)
add_dependencies(LibBrotli BROTLI)
target_link_libraries(LibBrotli INTERFACE
${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}brotlidec${CMAKE_STATIC_LIBRARY_SUFFIX}
${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}brotlienc${CMAKE_STATIC_LIBRARY_SUFFIX}
${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}brotlicommon${CMAKE_STATIC_LIBRARY_SUFFIX}
)
target_link_directories(LibBrotli INTERFACE ${INSTALL_DIR}/lib)
target_link_libraries(LibBrotli INTERFACE brotlidec brotlienc brotlicommon)
target_include_directories(LibBrotli INTERFACE ${INSTALL_DIR}/include)
set_property(TARGET BROTLI PROPERTY FOLDER "Dependencies")

Expand Down
4 changes: 2 additions & 2 deletions cmake/dependency.de265.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ ExternalProject_Add(DE265
PATCH_COMMAND ""
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t de265
INSTALL_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t install
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG} "-DBUILD_SHARED_LIBS=OFF" "-DENABLE_DECODER=ON" "-DENABLE_ENCODER=OFF" "-DENABLE_SDL=OFF"
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS} "-DBUILD_SHARED_LIBS=OFF" "-DENABLE_DECODER=ON" "-DENABLE_ENCODER=OFF" "-DENABLE_SDL=OFF"
"-DCMAKE_C_FLAGS:STRING=${CMAKE_C_FLAGS} ${ZERO_WARNINGS_FLAG}" "-DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS} ${ZERO_WARNINGS_FLAG}"
"-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/libde265/install" "-DCMAKE_DEBUG_POSTFIX="
EXCLUDE_FROM_ALL
Expand All @@ -31,7 +31,7 @@ set_property(TARGET DE265 PROPERTY FOLDER "Dependencies")

set(LIBDE265_INCLUDE_DIRS ${INSTALL_DIR}/include)
set(LIBDE265_LINK_DIRS ${INSTALL_DIR}/lib)
if (WIN32)
if (MSVC)
set(LIBDE265_LIBRARY libde265)
else()
set(LIBDE265_LIBRARY de265)
Expand Down
2 changes: 1 addition & 1 deletion cmake/dependency.heif.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ ExternalProject_Add(HEIF
PATCH_COMMAND ""
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t heif
INSTALL_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t install
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG}
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS}
"-DBUILD_SHARED_LIBS=ON" "-DBUILD_TESTING=OFF" "-DENABLE_EXPERIMENTAL_FEATURES=OFF" "-DCMAKE_COMPILE_WARNING_AS_ERROR=OFF"
"-DENABLE_PLUGIN_LOADING=OFF" "-DWITH_REDUCED_VISIBILITY=ON" "-DWITH_EXAMPLES=OFF" "-DWITH_FUZZERS=OFF"
"-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/heif/install" "-DCMAKE_SHARED_LIBRARY_PREFIX=lib"
Expand Down
5 changes: 3 additions & 2 deletions cmake/dependency.highway.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ ExternalProject_Add(HIGHWAY
PATCH_COMMAND ""
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET}
INSTALL_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t install
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG} "-DBUILD_SHARED_LIBS=OFF" "-DBUILD_TESTING=OFF" "-DHWY_ENABLE_TESTS=OFF" "-DHWY_ENABLE_EXAMPLES=OFF"
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS} "-DBUILD_SHARED_LIBS=OFF" "-DBUILD_TESTING=OFF" "-DHWY_ENABLE_TESTS=OFF" "-DHWY_ENABLE_EXAMPLES=OFF"
"-DHWY_FORCE_STATIC_LIBS=ON" "-DHWY_ENABLE_CONTRIB=OFF" "-DHWY_TEST_STANDALONE=OFF" "-DHWY_WARNINGS_ARE_ERRORS=OFF" "-DHWY_CMAKE_HEADER_ONLY=OFF"
"-DCMAKE_C_FLAGS:STRING=${ZERO_WARNINGS_FLAG} ${FPIC_FLAG}" "-DCMAKE_DEBUG_POSTFIX=" "-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/highway/install"
EXCLUDE_FROM_ALL
Expand All @@ -28,7 +28,8 @@ ExternalProject_Get_Property(HIGHWAY INSTALL_DIR)

add_library(LibHighway INTERFACE)
add_dependencies(LibHighway HIGHWAY)
target_link_libraries(LibHighway INTERFACE ${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}hwy${CMAKE_STATIC_LIBRARY_SUFFIX})
target_link_directories(LibHighway INTERFACE ${INSTALL_DIR}/lib)
target_link_libraries(LibHighway INTERFACE hwy)
target_include_directories(LibHighway INTERFACE ${INSTALL_DIR}/include)
set_property(TARGET HIGHWAY PROPERTY FOLDER "Dependencies")

Expand Down
5 changes: 3 additions & 2 deletions cmake/dependency.imath.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ ExternalProject_Add(IMATH
PATCH_COMMAND ""
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET}
INSTALL_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t install
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG} "-DBUILD_SHARED_LIBS=OFF" "-DBUILD_TESTING=OFF" "-DIMATH_LIB_SUFFIX="
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS} "-DBUILD_SHARED_LIBS=OFF" "-DBUILD_TESTING=OFF" "-DIMATH_LIB_SUFFIX="
"-DCMAKE_C_FLAGS:STRING=${ZERO_WARNINGS_FLAG} ${FPIC_FLAG}" "-DCMAKE_DEBUG_POSTFIX=" "-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/imath/install"
EXCLUDE_FROM_ALL
)
Expand All @@ -31,7 +31,8 @@ ExternalProject_Get_Property(IMATH INSTALL_DIR)

add_library(LibImath INTERFACE)
add_dependencies(LibImath IMATH)
target_link_libraries(LibImath INTERFACE ${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}Imath${CMAKE_STATIC_LIBRARY_SUFFIX})
target_link_directories(LibImath INTERFACE ${INSTALL_DIR}/lib)
target_link_libraries(LibImath INTERFACE Imath)
target_include_directories(LibImath INTERFACE ${INSTALL_DIR}/include ${INSTALL_DIR}/include/Imath)
set_property(TARGET IMATH PROPERTY FOLDER "Dependencies")

Expand Down
12 changes: 7 additions & 5 deletions cmake/dependency.jpeg.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,16 @@ if (JPEG_REPOSITORY STREQUAL "IJG")
-t "${EXTERNALPROJECT_SOURCE_PREFIX}/jpeg/source"
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET}
INSTALL_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t install
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG} "-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/jpeg/install"
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS} "-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/jpeg/install"
EXCLUDE_FROM_ALL
)

ExternalProject_Get_Property(JPEG INSTALL_DIR)

add_library(LibJPEG INTERFACE)
add_dependencies(LibJPEG JPEG)
target_link_libraries(LibJPEG INTERFACE ${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}jpeg${CMAKE_STATIC_LIBRARY_SUFFIX})
target_link_directories(LibJPEG INTERFACE ${INSTALL_DIR}/lib)
target_link_libraries(LibJPEG INTERFACE jpeg)
target_include_directories(LibJPEG INTERFACE ${INSTALL_DIR}/include)
set_property(TARGET JPEG PROPERTY FOLDER "Dependencies")

Expand All @@ -56,7 +57,7 @@ elseif(JPEG_REPOSITORY STREQUAL "JPEG-turbo")
"${EXTERNALPROJECT_BINARY_ROOT}/turbojpeg/build/jversion.h"
"${EXTERNALPROJECT_BINARY_ROOT}/turbojpeg/build/jconfigint.h"
-t "${EXTERNALPROJECT_BINARY_ROOT}/turbojpeg/install/include"
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG} "-DENABLE_SHARED=OFF" "-DENABLE_STATIC=ON" "-DWITH_JPEG7=ON" "-DWITH_CRT_DLL=ON"
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS} "-DENABLE_SHARED=OFF" "-DENABLE_STATIC=ON" "-DWITH_JPEG7=ON" "-DWITH_CRT_DLL=ON"
"-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON" "-DWITH_TOOLS=OFF" "-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/turbojpeg/install"
EXCLUDE_FROM_ALL
)
Expand All @@ -65,10 +66,11 @@ elseif(JPEG_REPOSITORY STREQUAL "JPEG-turbo")

add_library(LibJPEG INTERFACE)
add_dependencies(LibJPEG TURBOJPEG)
target_link_directories(LibJPEG INTERFACE ${INSTALL_DIR}/lib)
if (MSVC)
target_link_libraries(LibJPEG INTERFACE ${INSTALL_DIR}/lib/turbojpeg-static${CMAKE_STATIC_LIBRARY_SUFFIX})
target_link_libraries(LibJPEG INTERFACE turbojpeg-static${CMAKE_STATIC_LIBRARY_SUFFIX})
else()
target_link_libraries(LibJPEG INTERFACE ${INSTALL_DIR}/lib/libturbojpeg${CMAKE_STATIC_LIBRARY_SUFFIX})
target_link_libraries(LibJPEG INTERFACE libturbojpeg${CMAKE_STATIC_LIBRARY_SUFFIX})
endif()
target_compile_options(LibJPEG INTERFACE "-DJPEG_HAS_READ_ICC_PROFILE=1")
target_include_directories(LibJPEG INTERFACE ${INSTALL_DIR}/include)
Expand Down
9 changes: 3 additions & 6 deletions cmake/dependency.jpegxl.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ ExternalProject_Add(JPEGXL
UPDATE_COMMAND ""
PATCH_COMMAND ""
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t jxl
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG}
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS}
"-DBUILD_SHARED_LIBS=OFF" "-DBUILD_TESTING=OFF" "-DJPEGXL_ENABLE_BENCHMARK=OFF" "-DJPEGXL_ENABLE_EXAMPLES=OFF" "-DJPEGXL_ENABLE_JNI=OFF"
"-DJPEGXL_ENABLE_JPEGLI=OFF" "-DJPEGXL_ENABLE_JPEGLI_LIBJPEG=OFF" "-DJPEGXL_ENABLE_MANPAGES=OFF" "-DJPEGXL_ENABLE_OPENEXR=OFF" "-DJPEGXL_ENABLE_SJPEG=OFF"
"-DJPEGXL_ENABLE_TOOLS=OFF" "-DJPEGXL_ENABLE_TOOLS=ON" "-DJPEGXL_WARNINGS_AS_ERRORS=OFF" "-DJPEGXL_ENABLE_SKCMS=OFF"
Expand All @@ -45,12 +45,9 @@ ExternalProject_Get_Property(JPEGXL INSTALL_DIR)

add_library(LibJpegXL INTERFACE)
add_dependencies(LibJpegXL JPEGXL)
target_link_libraries(LibJpegXL INTERFACE
${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}jxl${CMAKE_STATIC_LIBRARY_SUFFIX}
${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}jxl_cms${CMAKE_STATIC_LIBRARY_SUFFIX}
)
target_link_directories(LibJpegXL INTERFACE ${INSTALL_DIR}/lib)
target_link_libraries(LibJpegXL INTERFACE jxl jxl_cms LibHighway LibBrotli LibLCMS2)
target_include_directories(LibJpegXL INTERFACE ${INSTALL_DIR}/include)
target_link_libraries(LibJpegXL INTERFACE LibHighway LibBrotli LibLCMS2)
set_property(TARGET JPEGXL PROPERTY FOLDER "Dependencies")

set(JPEGXL_ROOT ${INSTALL_DIR})
Expand Down
4 changes: 2 additions & 2 deletions cmake/dependency.kvazaar.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ ExternalProject_Add(KVAZAAR
PATCH_COMMAND ""
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t kvazaar
INSTALL_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t install
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG} "-DBUILD_SHARED_LIBS=OFF" "-DBUILD_TESTS=OFF" "-DUSE_CRYPTO=OFF"
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS} "-DBUILD_SHARED_LIBS=OFF" "-DBUILD_TESTS=OFF" "-DUSE_CRYPTO=OFF"
"-DCMAKE_C_FLAGS:STRING=${CMAKE_C_FLAGS} ${ZERO_WARNINGS_FLAG}" "-DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS} ${ZERO_WARNINGS_FLAG}"
"-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/kvazaar/install" "-DCMAKE_DEBUG_POSTFIX="
EXCLUDE_FROM_ALL
Expand All @@ -31,7 +31,7 @@ set_property(TARGET KVAZAAR PROPERTY FOLDER "Dependencies")

set(KVAZAAR_INCLUDE_DIRS ${INSTALL_DIR}/include)
set(KVAZAAR_LINK_DIRS ${INSTALL_DIR}/lib)
if(WIN32)
if(MSVC)
set(KVAZAAR_LIBRARY libkvazaar)
else()
set(KVAZAAR_LIBRARY kvazaar)
Expand Down
5 changes: 3 additions & 2 deletions cmake/dependency.lcms2.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ ExternalProject_Add(LCMS2
PATCH_COMMAND ""
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET}
INSTALL_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t install
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG} "-DLCMS2_BUILD_SHARED=OFF" "-DLCMS2_BUILD_STATIC=ON" "-DLCMS2_BUILD_TESTS=OFF" "-DLCMS2_BUILD_TIFICC=OFF"
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS} "-DLCMS2_BUILD_SHARED=OFF" "-DLCMS2_BUILD_STATIC=ON" "-DLCMS2_BUILD_TESTS=OFF" "-DLCMS2_BUILD_TIFICC=OFF"
"-DLCMS2_BUILD_JPGICC=OFF" "-DLCMS2_BUILD_TOOLS=OFF" "-DLCMS2_WITH_JPEG=OFF" "-DLCMS2_WITH_TIFF=OFF" "-DLCMS2_WITH_ZLIB=OFF"
"-DCMAKE_C_FLAGS:STRING=${ZERO_WARNINGS_FLAG} ${FPIC_FLAG} -DCMS_NO_REGISTER_KEYWORD=1" "-DCMAKE_DEBUG_POSTFIX=" "-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/lcms2/install"
EXCLUDE_FROM_ALL
Expand All @@ -28,7 +28,8 @@ ExternalProject_Get_Property(LCMS2 INSTALL_DIR)

add_library(LibLCMS2 INTERFACE)
add_dependencies(LibLCMS2 LCMS2)
target_link_libraries(LibLCMS2 INTERFACE ${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}lcms2${CMAKE_STATIC_LIBRARY_SUFFIX})
target_link_directories(LibLCMS2 INTERFACE ${INSTALL_DIR}/lib)
target_link_libraries(LibLCMS2 INTERFACE lcms2)
target_include_directories(LibLCMS2 INTERFACE ${INSTALL_DIR}/include)
set_property(TARGET LCMS2 PROPERTY FOLDER "Dependencies")

Expand Down
11 changes: 4 additions & 7 deletions cmake/dependency.openexr.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ ExternalProject_Add(EXR
UPDATE_COMMAND ""
PATCH_COMMAND ""
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t OpenEXR
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG} "-DOPENEXR_IS_SUBPROJECT=ON" "-DOPENEXR_FORCE_INTERNAL_IMATH=OFF" "-DOPENEXR_FORCE_INTERNAL_DEFLATE=ON" "-DOPENEXR_INSTALL=ON"
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS} "-DOPENEXR_IS_SUBPROJECT=ON" "-DOPENEXR_FORCE_INTERNAL_IMATH=OFF" "-DOPENEXR_FORCE_INTERNAL_DEFLATE=ON" "-DOPENEXR_INSTALL=ON"
"-DOPENEXR_INSTALL_TOOLS=OFF" "-DOPENEXR_INSTALL_EXAMPLES=OFF" "-DOPENEXR_INSTALL_PKG_CONFIG=OFF" "-DOPENEXR_BUILD_TOOLS=OFF" "-DBUILD_SHARED_LIBS=OFF" "-DBUILD_TESTING=OFF"
"-DOPENEXR_LIB_SUFFIX=" "-DCMAKE_C_FLAGS:STRING=${ZERO_WARNINGS_FLAG}" "-DCMAKE_CXX_FLAGS:STRING=${ZERO_WARNINGS_FLAG}" "-DCMAKE_DEBUG_POSTFIX="
"-DImath_ROOT=${IMATH_ROOT}" "-Dopenjph_ROOT=${OPENJPH_ROOT}" "-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/openexr/install"
Expand All @@ -36,13 +36,10 @@ ExternalProject_Get_Property(EXR INSTALL_DIR)

add_library(LibOpenEXR INTERFACE)
add_dependencies(LibOpenEXR EXR)
target_link_directories(LibOpenEXR INTERFACE ${INSTALL_DIR}/lib)
target_link_libraries(LibOpenEXR INTERFACE
${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}OpenEXR${CMAKE_STATIC_LIBRARY_SUFFIX}
${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}OpenEXRCore${CMAKE_STATIC_LIBRARY_SUFFIX}
${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}Iex${CMAKE_STATIC_LIBRARY_SUFFIX}
${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}IlmThread${CMAKE_STATIC_LIBRARY_SUFFIX}
LibOpenJPH
LibImath
OpenEXR OpenEXRCore Iex IlmThread
LibOpenJPH LibImath
)
target_include_directories(LibOpenEXR INTERFACE ${INSTALL_DIR}/include ${INSTALL_DIR}/include/Imath ${INSTALL_DIR}/include/OpenEXR)
set_property(TARGET EXR PROPERTY FOLDER "Dependencies")
Expand Down
16 changes: 8 additions & 8 deletions cmake/dependency.openjpeg.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -12,25 +12,25 @@ ExternalProject_Add(OPENJPEG
DOWNLOAD_DIR "${EXTERNALPROJECT_SOURCE_ROOT}/openjpeg"
SOURCE_DIR "${EXTERNALPROJECT_SOURCE_PREFIX}/openjpeg/source"
BINARY_DIR "${EXTERNALPROJECT_BINARY_ROOT}/openjpeg/build"
INSTALL_DIR "${EXTERNALPROJECT_BINARY_ROOT}/openjpeg/install"
DOWNLOAD_EXTRACT_TIMESTAMP TRUE
UPDATE_COMMAND ""
PATCH_COMMAND ""
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t openjp2
INSTALL_COMMAND ""
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG} "-DBUILD_STATIC_LIBS=ON" "-DBUILD_SHARED_LIBS=OFF" "-DBUILD_CODEC=OFF" "-DBUILD_JPIP=OFF" "-DBUILD_TESTING=OFF"
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS} "-DBUILD_STATIC_LIBS=ON" "-DBUILD_SHARED_LIBS=OFF" "-DBUILD_CODEC=OFF" "-DBUILD_JPIP=OFF" "-DBUILD_TESTING=OFF"
"-DCMAKE_C_FLAGS:STRING=${ZERO_WARNINGS_FLAG} ${FPIC_FLAG}"
"-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/openjpeg/install"
EXCLUDE_FROM_ALL
)

ExternalProject_Get_Property(OPENJPEG SOURCE_DIR)
ExternalProject_Get_Property(OPENJPEG BINARY_DIR)
ExternalProject_Get_Property(OPENJPEG INSTALL_DIR)

add_library(LibOpenJPEG INTERFACE)
add_dependencies(LibOpenJPEG OPENJPEG)
link_config_aware_library_path(LibOpenJPEG ${BINARY_DIR}/bin ${CMAKE_STATIC_LIBRARY_PREFIX}openjp2${CMAKE_STATIC_LIBRARY_SUFFIX})
target_include_directories(LibOpenJPEG INTERFACE ${SOURCE_DIR}/src/lib ${BINARY_DIR}/src/lib/openjp2)
target_link_directories(LibOpenJPEG INTERFACE ${INSTALL_DIR}/lib)
target_link_libraries(LibOpenJPEG INTERFACE openjp2)
target_include_directories(LibOpenJPEG INTERFACE ${INSTALL_DIR}/include/openjpeg-2.5)
set_property(TARGET OPENJPEG PROPERTY FOLDER "Dependencies")

unset(SOURCE_DIR)
unset(BINARY_DIR)
unset(INSTALL_DIR)

7 changes: 4 additions & 3 deletions cmake/dependency.openjph.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ ExternalProject_Add(OPENJPH
UPDATE_COMMAND ""
PATCH_COMMAND ""
BUILD_COMMAND ${BUILD_COMMAND_FOR_TARGET} -t openjph
CMAKE_ARGS ${CMAKE_TOOLCHAIN_FILE_ARG} ${CMAKE_BUILD_TYPE_ARG} "-DBUILD_SHARED_LIBS=OFF" "-DOJPH_BUILD_TESTS=OFF" "-DOJPH_ENABLE_TIFF_SUPPORT=OFF" "-DOJPH_BUILD_EXECUTABLES=OFF"
CMAKE_ARGS ${EXTERNALPROJECT_CMAKE_ARGS} "-DBUILD_SHARED_LIBS=OFF" "-DOJPH_BUILD_TESTS=OFF" "-DOJPH_ENABLE_TIFF_SUPPORT=OFF" "-DOJPH_BUILD_EXECUTABLES=OFF"
"-DCMAKE_C_FLAGS:STRING=${ZERO_WARNINGS_FLAG} ${FPIC_FLAG}" "-DCMAKE_DEBUG_POSTFIX=" "-DCMAKE_INSTALL_PREFIX:PATH=${EXTERNALPROJECT_BINARY_ROOT}/openjph/install"
EXCLUDE_FROM_ALL
)
Expand All @@ -26,10 +26,11 @@ ExternalProject_Get_Property(OPENJPH INSTALL_DIR)

add_library(LibOpenJPH INTERFACE)
add_dependencies(LibOpenJPH OPENJPH)
target_link_directories(LibOpenJPH INTERFACE ${INSTALL_DIR}/lib)
if (MSVC)
target_link_libraries(LibOpenJPH INTERFACE ${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}openjph.0.27${CMAKE_STATIC_LIBRARY_SUFFIX})
target_link_libraries(LibOpenJPH INTERFACE openjph.0.27)
else()
target_link_libraries(LibOpenJPH INTERFACE ${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}openjph${CMAKE_STATIC_LIBRARY_SUFFIX})
target_link_libraries(LibOpenJPH INTERFACE openjph)
endif()
target_include_directories(LibOpenJPH INTERFACE ${INSTALL_DIR}/include)
set_property(TARGET OPENJPH PROPERTY FOLDER "Dependencies")
Expand Down
Loading
Loading