vcpkg/ports/libraw/portfile.cmake
Jack·Boos·Yu 657d66a6cb
[libraw] Re-fix non-thread-safe library installation, always export pkgconfig files, add usage (#19593)
* [libraw] Re-fix non-thread-safe library installation, always export pkgconfig files, add usage

* format manifest and version

* Update ports/libraw/portfile.cmake

* Update ports/libraw/portfile.cmake

* Update ports/libraw/portfile.cmake

* update version

* version

* Fix wrapper and usage

* version

* apply suggestions

* version

* Fix cmake install path

* version

* Fix usage

* version
2021-10-18 14:22:23 -07:00

56 lines
2.0 KiB
CMake

vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO LibRaw/LibRaw
REF d4f05dd1b9b2d44c8f7e82043cbad3c724db2416
SHA512 5794521f535163afd7815ad005295301c5e0e2f8b2f34ef0a911d9dd1572c1f456b292777548203f9767957a55782b5bc9041c033190d25d1e9b4240d7df32b9
HEAD_REF master
)
vcpkg_from_github(
OUT_SOURCE_PATH LIBRAW_CMAKE_SOURCE_PATH
REPO LibRaw/LibRaw-cmake
REF a71f3b83ee3dccd7be32f9a2f410df4d9bdbde0a
SHA512 607e6f76bcb57534da4f0c864b7a421f1ed49244468b1b52abe77f65aa599cae80715520b3a951294321b812deffd4f163757c9949f337571aa54f414ccc58a5
HEAD_REF master
PATCHES
findlibraw_debug_fix.patch
lcms2_debug_fix.patch
# Move the non-thread-safe library to manual-link. This is unfortunately needed
# because otherwise libraries that build on top of libraw have to choose.
fix-install.patch
)
file(COPY "${LIBRAW_CMAKE_SOURCE_PATH}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")
file(COPY "${LIBRAW_CMAKE_SOURCE_PATH}/cmake" DESTINATION "${SOURCE_PATH}")
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DINSTALL_CMAKE_MODULE_PATH=share/${PORT}
-DENABLE_EXAMPLES=OFF
-DCMAKE_DEBUG_POSTFIX=d
)
vcpkg_cmake_install()
vcpkg_copy_pdbs()
vcpkg_fixup_pkgconfig()
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/libraw/libraw_types.h"
"#ifdef LIBRAW_NODLL" "#if 1"
)
else()
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/libraw/libraw_types.h"
"#ifdef LIBRAW_NODLL" "#if 0"
)
endif()
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")
configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY)
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
file(INSTALL "${SOURCE_PATH}/COPYRIGHT" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)