From fbd5bfda6a39b04b3fe0459a8c388e84fb81b860 Mon Sep 17 00:00:00 2001 From: EfesX Date: Fri, 31 May 2024 14:56:45 +0500 Subject: [PATCH] [tinytiff] add new port (#38874) - [x] Changes comply with the [maintainer guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md). - [x] The name of the port matches an existing name for this component on https://repology.org/ if possible, and/or is strongly associated with that component on search engines. - [x] Optional dependencies are resolved in exactly one way. For example, if the component is built with CMake, all `find_package` calls are REQUIRED, are satisfied by `vcpkg.json`'s declared dependencies, or disabled with [CMAKE_DISABLE_FIND_PACKAGE_Xxx](https://cmake.org/cmake/help/latest/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html). - [x] The versioning scheme in `vcpkg.json` matches what upstream says. - [x] The license declaration in `vcpkg.json` matches what upstream says. - [x] The installed as the "copyright" file matches what upstream says. - [x] The source code of the component installed comes from an authoritative source. - [x] The generated "usage text" is accurate. See [adding-usage](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/examples/adding-usage.md) for context. - [x] The version database is fixed by rerunning `./vcpkg x-add-version --all` and committing the result. - [x] Only one version is in the new port's versions file. - [x] Only one version is added to each modified port's versions file. #38778 jkriege2/TinyTIFF#29 --------- Co-authored-by: Kai Pastor Co-authored-by: Frank <65999885+FrankXie05@users.noreply.github.com> --- ports/tinytiff/portfile.cmake | 34 ++++++++++++++++++++++++++++++++++ ports/tinytiff/usage | 7 +++++++ ports/tinytiff/vcpkg.json | 23 +++++++++++++++++++++++ versions/baseline.json | 4 ++++ versions/t-/tinytiff.json | 9 +++++++++ 5 files changed, 77 insertions(+) create mode 100644 ports/tinytiff/portfile.cmake create mode 100644 ports/tinytiff/usage create mode 100644 ports/tinytiff/vcpkg.json create mode 100644 versions/t-/tinytiff.json diff --git a/ports/tinytiff/portfile.cmake b/ports/tinytiff/portfile.cmake new file mode 100644 index 0000000000..6369309daf --- /dev/null +++ b/ports/tinytiff/portfile.cmake @@ -0,0 +1,34 @@ +vcpkg_check_features( + OUT_FEATURE_OPTIONS FEATURE_OPTIONS + FEATURES + winapi TinyTIFF_USE_WINAPI_FOR_FILEIO +) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO jkriege2/TinyTIFF + REF ${VERSION} + SHA512 9a6a00a1278e7040bf3057f069e6d4f106a15982c78c84112edfdbe8ca9a28d849fc63636d8011696dbf4059c5d9b205743fd77ece859d08b9dd33945835be54 + HEAD_REF master +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + ${FEATURE_OPTIONS} + -DTinyTIFF_BUILD_TESTS=OFF +) + +vcpkg_cmake_install() + +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/TinyTIFF DO_NOT_DELETE_PARENT_CONFIG_PATH) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/TinyTIFFXX PACKAGE_NAME tinytiffxx) + +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE") + +file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") diff --git a/ports/tinytiff/usage b/ports/tinytiff/usage new file mode 100644 index 0000000000..09fa42a715 --- /dev/null +++ b/ports/tinytiff/usage @@ -0,0 +1,7 @@ +tinytiff provides CMake targets: + + find_package(TinyTIFF CONFIG REQUIRED) + find_package(TinyTIFFXX CONFIG REQUIRED) + + target_link_libraries(main PRIVATE TinyTIFF::TinyTIFF TinyTIFF::TinyTIFFXX) + \ No newline at end of file diff --git a/ports/tinytiff/vcpkg.json b/ports/tinytiff/vcpkg.json new file mode 100644 index 0000000000..c1abef9152 --- /dev/null +++ b/ports/tinytiff/vcpkg.json @@ -0,0 +1,23 @@ +{ + "name": "tinytiff", + "version": "4.0.1.0", + "description": "Lightweight TIFF reader/writer library", + "homepage": "https://jkriege2.github.io/TinyTIFF/", + "license": "LGPL-3.0", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ], + "features": { + "winapi": { + "description": "Use WIN-API for File-IO", + "supports": "windows" + } + } +} diff --git a/versions/baseline.json b/versions/baseline.json index 1d72db5115..faa50a338c 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -8748,6 +8748,10 @@ "baseline": "1.1", "port-version": 6 }, + "tinytiff": { + "baseline": "4.0.1.0", + "port-version": 0 + }, "tinytoml": { "baseline": "20180219", "port-version": 3 diff --git a/versions/t-/tinytiff.json b/versions/t-/tinytiff.json new file mode 100644 index 0000000000..244b99a3fd --- /dev/null +++ b/versions/t-/tinytiff.json @@ -0,0 +1,9 @@ +{ + "versions": [ + { + "git-tree": "4ec7ed1ab9c45c0b75ff706757c10061acaa0d75", + "version": "4.0.1.0", + "port-version": 0 + } + ] +}