vcpkg/ports/flatbuffers/portfile.cmake
Park DongHa 81d08b03fa
[flatbuffers] support iOS build (#27863)
* [flatbuffers] support iOS build

* [flatbuffers] update baseline

* [flatbuffers] use vcpkg_copy_tools

* rebase and resolve conflict

Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
2022-11-18 12:59:06 -08:00

48 lines
1.6 KiB
CMake

vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO google/flatbuffers
REF 203241ed3275625c8a25c4a1e7b86e3c0289c488 #v22.10.26
SHA512 b2c889aa97d039f0044133daea6c68361ab4d4bb80bd6c67d3e1f6ffd1b4175fc36a21b1ab3a75d83b0296c83d98f6e42756e01fc1193ba19a77c3e896cba212
HEAD_REF master
PATCHES
fix-uwp-build.patch
)
set(options "")
if(VCPKG_CROSSCOMPILING)
list(APPEND options -DFLATBUFFERS_BUILD_FLATC=OFF -DFLATBUFFERS_BUILD_FLATHASH=OFF)
if(VCPKG_TARGET_IS_OSX OR VCPKG_TARGET_IS_IOS)
# The option may cause "#error Unsupported architecture"
list(APPEND options -DFLATBUFFERS_OSX_BUILD_UNIVERSAL=OFF)
endif()
endif()
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DFLATBUFFERS_BUILD_TESTS=OFF
-DFLATBUFFERS_BUILD_GRPCTEST=OFF
${options}
)
vcpkg_cmake_install()
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/flatbuffers)
vcpkg_fixup_pkgconfig()
file(GLOB flatc_path ${CURRENT_PACKAGES_DIR}/bin/flatc*)
if(flatc_path)
vcpkg_copy_tools(TOOL_NAMES flatc AUTO_CLEAN)
else()
file(APPEND "${CURRENT_PACKAGES_DIR}/share/flatbuffers/Flatbuffers-config.cmake"
"include(\"\${CMAKE_CURRENT_LIST_DIR}/../../../${HOST_TRIPLET}/share/flatbuffers/FlatcTargets.cmake\")\n")
endif()
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
# Handle copyright
file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)