diff options
| author | myd7349 <myd7349@gmail.com> | 2020-04-29 04:15:57 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-04-28 13:15:57 -0700 |
| commit | be2f81f9121e0213cd86351c5f98ec8976faa47c (patch) | |
| tree | 7e166dd9392ba6fbaea26c3fceb2541885b88764 | |
| parent | b9c3a2639261713bead562191c8295543a49a28b (diff) | |
| download | vcpkg-be2f81f9121e0213cd86351c5f98ec8976faa47c.tar.gz vcpkg-be2f81f9121e0213cd86351c5f98ec8976faa47c.zip | |
[uchardet] Add new port (#8477)
* [uchardet] Add new port
* [uchardet] Fix string no output variable error
[uchardet] Update homepage
* [uchardet] Fix tool build error on Windows
* [uchardet] Update
* [uchardet] Modernize
* [uchardet] Update to 2020-04-26
* [uchardet] Fix static build
* [uchardet] Fix UWP build
| -rw-r--r-- | ports/uchardet/CONTROL | 8 | ||||
| -rw-r--r-- | ports/uchardet/portfile.cmake | 56 |
2 files changed, 64 insertions, 0 deletions
diff --git a/ports/uchardet/CONTROL b/ports/uchardet/CONTROL new file mode 100644 index 000000000..587f25d68 --- /dev/null +++ b/ports/uchardet/CONTROL @@ -0,0 +1,8 @@ +Source: uchardet
+Version: 2020-04-26
+Description: An encoding detector library ported from Mozilla
+Homepage: https://cgit.freedesktop.org/uchardet/uchardet/
+
+Feature: tool
+Description: Build uchardet CLI tool
+Build-Depends: getopt
diff --git a/ports/uchardet/portfile.cmake b/ports/uchardet/portfile.cmake new file mode 100644 index 000000000..281dec77d --- /dev/null +++ b/ports/uchardet/portfile.cmake @@ -0,0 +1,56 @@ +vcpkg_from_git(
+ OUT_SOURCE_PATH SOURCE_PATH
+ URL https://gitlab.freedesktop.org/uchardet/uchardet
+ REF 8681fc060ea07f646434cd2d324e4a5aa7c495c4
+)
+
+vcpkg_check_features(
+ OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ tool BUILD_BINARY
+)
+
+string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" BUILD_STATIC)
+
+if(VCPKG_TARGET_IS_UWP)
+ # uchardet calls `fopen` and `strdup`, which makes UWP unhappy.
+ set(VCPKG_C_FLAGS "${VCPKG_C_FLAGS} -D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE")
+ set(VCPKG_CXX_FLAGS "${VCPKG_CXX_FLAGS} -D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE")
+endif()
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ OPTIONS_DEBUG
+ -DBUILD_BINARY=OFF
+ OPTIONS_RELEASE
+ ${FEATURE_OPTIONS}
+ OPTIONS
+ -DBUILD_STATIC=${BUILD_STATIC}
+)
+
+vcpkg_install_cmake()
+
+vcpkg_copy_pdbs()
+
+if(tool IN_LIST FEATURES)
+ file(COPY
+ ${CURRENT_PACKAGES_DIR}/bin/uchardet${VCPKG_TARGET_EXECUTABLE_SUFFIX}
+ DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT}
+ )
+
+ vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT})
+endif()
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin)
+else()
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/uchardet${VCPKG_TARGET_EXECUTABLE_SUFFIX})
+endif()
+
+file(REMOVE_RECURSE
+ ${CURRENT_PACKAGES_DIR}/debug/include
+ ${CURRENT_PACKAGES_DIR}/debug/share
+ ${CURRENT_PACKAGES_DIR}/share/man
+)
+
+file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
