]> git.proxmox.com Git - ceph.git/blob - ceph/src/jaegertracing/opentelemetry-cpp/tools/vcpkg/ports/libwebp/portfile.cmake
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / jaegertracing / opentelemetry-cpp / tools / vcpkg / ports / libwebp / portfile.cmake
1 vcpkg_from_github(
2 OUT_SOURCE_PATH SOURCE_PATH
3 REPO webmproject/libwebp
4 REF d7844e9762b61c9638c263657bd49e1690184832 # v1.1.0
5 SHA512 13692970e7dd909cd6aaa03c9a0c863243baac1885644794362dec0c0b0721d6807f281f746215bfd856c6e0cb742b01a731a33fe075a32ff24496e10c1a94b4
6 HEAD_REF master
7 PATCHES
8 0001-build.patch
9 0002-cmake-config-add-backwards-compatibility.patch
10 0003-always-mux.patch #always build libwebpmux
11 0004-add-missing-linked-library.patch
12 0006-fix-dependecies-platform.patch
13 0007-fix-arm-build.patch
14 0008-sdl.patch
15 0009-glut.patch
16 )
17
18 vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
19 FEATURES
20 anim WEBP_BUILD_ANIM_UTILS
21 gif2webp WEBP_BUILD_GIF2WEBP
22 img2webp WEBP_BUILD_IMG2WEBP
23 vwebp WEBP_BUILD_VWEBP
24 vwebp-sdl WEBP_HAVE_SDL
25 info WEBP_BUILD_WEBPINFO
26 mux WEBP_BUILD_WEBPMUX
27 extras WEBP_BUILD_EXTRAS
28 nearlossless WEBP_NEAR_LOSSLESS
29 simd WEBP_ENABLE_SIMD
30 cwebp WEBP_BUILD_CWEBP
31 dwebp WEBP_BUILD_DWEBP
32 swap16bitcsp WEBP_ENABLE_SWAP_16BIT_CSP
33 unicode WEBP_UNICODE
34 )
35
36
37 if(VCPKG_TARGET_IS_LINUX)
38 message("WebP currently requires the following library from the system package manager:\n Xxf86vm\n\nThis can be installed on Ubuntu systems via apt-get install libxxf86vm-dev")
39 endif()
40
41 if(VCPKG_TARGET_IS_OSX)
42 if("vwebp" IN_LIST FEATURES OR "extras" IN_LIST FEATURES)
43 message(FATAL_ERROR "Due to GLUT Framework problems with CMake, at the moment it's not possible to build VWebP or extras on Mac!")
44 endif()
45 endif()
46
47 vcpkg_configure_cmake(
48 SOURCE_PATH ${SOURCE_PATH}
49 PREFER_NINJA
50 OPTIONS
51 ${FEATURE_OPTIONS}
52 OPTIONS_DEBUG
53 -DCMAKE_DEBUG_POSTFIX=d
54 )
55
56 vcpkg_install_cmake()
57
58 file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
59
60 vcpkg_copy_pdbs()
61 vcpkg_fixup_cmake_targets(CONFIG_PATH share/WebP/cmake TARGET_PATH share/WebP) # find_package is called with WebP not libwebp
62 file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
63
64 if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
65 vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/libwebp.pc" "-lwebp" "-lwebpd")
66 vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/libwebpdecoder.pc" "-lwebpdecoder" "-lwebpdecoderd")
67 vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/libwebpdemux.pc" "-lwebpdemux" "-lwebpdemuxd")
68 vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/libwebpmux.pc" "-lwebpmux" "-lwebpmuxd")
69 endif()
70 vcpkg_fixup_pkgconfig()
71
72
73 set(BIN_NAMES get_disto gif2webp img2webp vwebp vwebp_sdl webpinfo webpmux webp_quality cwebp dwebp)
74 file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/webp/")
75 foreach(tool ${BIN_NAMES})
76 if(EXISTS "${CURRENT_PACKAGES_DIR}/debug/bin/${tool}${VCPKG_TARGET_EXECUTABLE_SUFFIX}")
77 file(REMOVE "${CURRENT_PACKAGES_DIR}/debug/bin/${tool}${VCPKG_TARGET_EXECUTABLE_SUFFIX}")
78 endif()
79
80 if(EXISTS "${CURRENT_PACKAGES_DIR}/bin/${tool}${VCPKG_TARGET_EXECUTABLE_SUFFIX}")
81 file(RENAME "${CURRENT_PACKAGES_DIR}/bin/${tool}${VCPKG_TARGET_EXECUTABLE_SUFFIX}" "${CURRENT_PACKAGES_DIR}/tools/webp/${tool}${VCPKG_TARGET_EXECUTABLE_SUFFIX}")
82 endif()
83 endforeach()
84 vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/webp")
85
86 #No tools
87 file(GLOB_RECURSE RESULT "${CURRENT_PACKAGES_DIR}/tools/")
88 list(LENGTH RESULT RES_LEN)
89 if(RES_LEN EQUAL 0)
90 file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/tools/")
91 endif()
92
93 if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
94 file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
95 endif()
96
97 file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)