diff options
Diffstat (limited to 'ports/graphicsmagick')
| -rw-r--r-- | ports/graphicsmagick/CMakeLists.txt | 52 | ||||
| -rw-r--r-- | ports/graphicsmagick/CONTROL | 3 | ||||
| -rw-r--r-- | ports/graphicsmagick/disable_graphicsmagick_modules.patch | 11 | ||||
| -rw-r--r-- | ports/graphicsmagick/portfile.cmake | 36 |
4 files changed, 75 insertions, 27 deletions
diff --git a/ports/graphicsmagick/CMakeLists.txt b/ports/graphicsmagick/CMakeLists.txt index 27f9fb109..c156b69c7 100644 --- a/ports/graphicsmagick/CMakeLists.txt +++ b/ports/graphicsmagick/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required (VERSION 3.6) project (graphicsmagick) -find_package(Zlib REQUIRED) +find_package(ZLIB REQUIRED) find_package(Bzip2 REQUIRED) find_package(JPEG REQUIRED) find_package(PNG REQUIRED) @@ -29,13 +29,6 @@ include_directories("Magick++") include_directories("Magick++/lib") include_directories("wand") -include_directories(${ZLIB_INCLUDE_DIRS}) -include_directories(${BZIP2_INCLUDE_DIR}) -include_directories(${NATIVE_JPEG_INCLUDE_PATH}) -include_directories(${PNG_INCLUDE_DIRS}) -include_directories(${TIFF_INCLUDE_DIRS}) -include_directories(${FREETYPE_INCLUDE_DIRS}) - file(READ "magick/magick_config.h.in" CONFIG_H) string(REPLACE "#undef HasBZLIB" "#define HasBZLIB" CONFIG_H "${CONFIG_H}") string(REPLACE "#undef HasJPEG" "#define HasJPEG" CONFIG_H "${CONFIG_H}") @@ -108,18 +101,49 @@ add_library(graphicsmagick coders/art.c coders/avs.c Magick++/lib/TypeMetric.cpp wand/drawing_wand.c wand/magick_compat.c wand/magick_wand.c wand/pixel_wand.c) -TARGET_LINK_LIBRARIES(graphicsmagick ${ZLIB_LIBRARIES}) -TARGET_LINK_LIBRARIES(graphicsmagick ${BZIP2_LIBRARIES}) -TARGET_LINK_LIBRARIES(graphicsmagick ${JPEG_LIBRARIES}) -TARGET_LINK_LIBRARIES(graphicsmagick ${PNG_LIBRARIES}) -TARGET_LINK_LIBRARIES(graphicsmagick ${TIFF_LIBRARIES}) -TARGET_LINK_LIBRARIES(graphicsmagick ${FREETYPE_LIBRARIES}) +TARGET_LINK_LIBRARIES(graphicsmagick PRIVATE + ZLIB::ZLIB + BZip2::BZip2 + #${JPEG_LIBRARIES} + JPEG::JPEG + PNG::PNG + TIFF::TIFF + Freetype::Freetype +) +target_include_directories(graphicsmagick INTERFACE $<INSTALL_INTERFACE:include>) install(TARGETS graphicsmagick + EXPORT graphicsmagick-targets RUNTIME DESTINATION bin ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +install( + EXPORT graphicsmagick-targets + FILE unofficial-graphicsmagick-targets.cmake + NAMESPACE unofficial::graphicsmagick:: + DESTINATION share/unofficial-graphicsmagick +) +find_package(ZLIB REQUIRED) +find_package(BZip2 REQUIRED) +find_package(JPEG REQUIRED) +find_package(PNG REQUIRED) +find_package(TIFF REQUIRED) +find_package(Freetype REQUIRED) + +file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/unofficial-graphicsmagick-config.cmake " +include(CMakeFindDependencyMacro) +find_dependency(ZLIB) +find_dependency(BZip2) +find_dependency(JPEG) +find_dependency(PNG) +find_dependency(TIFF) +find_dependency(Freetype) + +include(\${CMAKE_CURRENT_LIST_DIR}/unofficial-graphicsmagick-targets.cmake) +") +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/unofficial-graphicsmagick-config.cmake DESTINATION share/unofficial-graphicsmagick) + option(INSTALL_HEADERS "Install development header files" ON) if (INSTALL_HEADERS) diff --git a/ports/graphicsmagick/CONTROL b/ports/graphicsmagick/CONTROL index 275bae92f..7b89a8fd9 100644 --- a/ports/graphicsmagick/CONTROL +++ b/ports/graphicsmagick/CONTROL @@ -1,4 +1,5 @@ Source: graphicsmagick -Version: 1.3.28 +Maintainer: josuegomes@gmail.com +Version: 1.3.31 Build-Depends: zlib, bzip2, freetype, libjpeg-turbo, libpng, tiff Description: Image processing library diff --git a/ports/graphicsmagick/disable_graphicsmagick_modules.patch b/ports/graphicsmagick/disable_graphicsmagick_modules.patch new file mode 100644 index 000000000..bfb91d0fd --- /dev/null +++ b/ports/graphicsmagick/disable_graphicsmagick_modules.patch @@ -0,0 +1,11 @@ +--- a/magick/studio.h 2018-06-23 14:13:49.191541000 -0400 ++++ b/magick/studio.h 2018-09-02 11:50:41.856753700 -0400 +@@ -414,7 +414,7 @@ + #endif + + #if defined(HasLTDL) || ( defined(MSWINDOWS) && defined(_DLL) ) +-# define SupportMagickModules ++//# define SupportMagickModules + #endif + + #if defined(_MAGICKMOD_) diff --git a/ports/graphicsmagick/portfile.cmake b/ports/graphicsmagick/portfile.cmake index 12630d346..87d03bd1f 100644 --- a/ports/graphicsmagick/portfile.cmake +++ b/ports/graphicsmagick/portfile.cmake @@ -1,31 +1,41 @@ include(vcpkg_common_functions) -set(GM_VERSION 1.3.28) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/graphicsmagick-${GM_VERSION}-windows-source) +set(GM_VERSION 1.3.31) vcpkg_download_distfile(ARCHIVE URLS "https://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/${GM_VERSION}/GraphicsMagick-${GM_VERSION}-windows-source.7z" FILENAME "GraphicsMagick-${GM_VERSION}-windows-source.7z" - SHA512 0271c187634580204dcc3173553bae9e3cd799203d621ad9e2ba64be778760ac307f25af54859b10e60f8e2589287ad98062548f1c3c94f229e68e7c83878419 - ) -vcpkg_extract_source_archive(${ARCHIVE}) + SHA512 ff67f5e6adf352527264e7a6a76d45ce34470263dc764760d876b9ab5d5078e3a46b9d9cb2e7ab52d53106ffe584d44c66b42f3d4d62c972662d488c86510881 +) + +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + REF "${GM_VERSION}" + PATCHES + # GM always requires a dynamic BZIP2. This patch makes this dependent if _DLL is defined + dynamic_bzip2.patch + + # Bake GM's own modules into the .dll itself. This fixes a bug whereby + # 'vcpkg install graphicsmagick' did not lead to a copy of GM that could + # load either PNG or JPEG files (due to missing GM Modules, with names + # matching "IM_*.DLL"). + disable_graphicsmagick_modules.patch +) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) file(COPY ${CMAKE_CURRENT_LIST_DIR}/magick_types.h DESTINATION ${SOURCE_PATH}/magick) -# GM always requires a dynamic BZIP2. This patch makes this dependent if _DLL is defined -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/dynamic_bzip2.patch) - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - OPTIONS_DEBUG -DINSTALL_HEADERS=OFF + OPTIONS_DEBUG + -DINSTALL_HEADERS=OFF ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-graphicsmagick TARGET_PATH share/unofficial-graphicsmagick) + # copy license file(COPY ${SOURCE_PATH}/Copyright.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/graphicsmagick) file(RENAME ${CURRENT_PACKAGES_DIR}/share/graphicsmagick/Copyright.txt ${CURRENT_PACKAGES_DIR}/share/graphicsmagick/copyright) @@ -40,3 +50,5 @@ string(REPLACE "@windows_font_dir@" "$ENV{SYSTEMROOT}/Fonts/" TYPE_MGK "${TYPE_M file(WRITE ${CURRENT_PACKAGES_DIR}/share/graphicsmagick/config/type.mgk "${TYPE_MGK}") vcpkg_copy_pdbs() + +vcpkg_test_cmake(PACKAGE_NAME unofficial-graphicsmagick) |
