aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/uchardet
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/uchardet
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/uchardet')
-rw-r--r--vcpkg/ports/uchardet/fix-config-error.patch16
-rw-r--r--vcpkg/ports/uchardet/fix-uwp-build.patch15
-rw-r--r--vcpkg/ports/uchardet/portfile.cmake50
-rw-r--r--vcpkg/ports/uchardet/vcpkg.json25
4 files changed, 106 insertions, 0 deletions
diff --git a/vcpkg/ports/uchardet/fix-config-error.patch b/vcpkg/ports/uchardet/fix-config-error.patch
new file mode 100644
index 0000000..f65fcbc
--- /dev/null
+++ b/vcpkg/ports/uchardet/fix-config-error.patch
@@ -0,0 +1,16 @@
+diff --git a/src/tools/CMakeLists.txt b/src/tools/CMakeLists.txt
+index 7afad1d..c7a3cd8 100644
+--- a/src/tools/CMakeLists.txt
++++ b/src/tools/CMakeLists.txt
+@@ -27,10 +27,7 @@ if (GETOPT_INCLUDE_DIR AND GETOPT_LIBRARY)
+ target_link_libraries(${UCHARDET_BINARY} PRIVATE ${GETOPT_LIBRARY})
+ endif (GETOPT_INCLUDE_DIR AND GETOPT_LIBRARY)
+
+-target_link_libraries(
+- ${UCHARDET_BINARY}
+- ${UCHARDET_LIBRARY}
+-)
++target_link_libraries(${UCHARDET_BINARY} PRIVATE ${UCHARDET_LIBRARY})
+
+ install(
+ TARGETS
diff --git a/vcpkg/ports/uchardet/fix-uwp-build.patch b/vcpkg/ports/uchardet/fix-uwp-build.patch
new file mode 100644
index 0000000..d08ba9e
--- /dev/null
+++ b/vcpkg/ports/uchardet/fix-uwp-build.patch
@@ -0,0 +1,15 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 50a11e8..3a93c83 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -54,6 +54,10 @@ if (TARGET_ARCHITECTURE MATCHES ".*(x86|amd|i686).*")
+ endif (CHECK_SSE2 AND SUPPORTS_CFLAG_SSE2 AND SUPPORTS_CFLAG_SSE_MATH)
+ endif (TARGET_ARCHITECTURE MATCHES ".*(x86|amd|i686).*")
+
++if (MSVC)
++ add_compile_options(-D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE)
++endif (MSVC)
++
+ configure_file(
+ uchardet.pc.in
+ uchardet.pc
diff --git a/vcpkg/ports/uchardet/portfile.cmake b/vcpkg/ports/uchardet/portfile.cmake
new file mode 100644
index 0000000..7aeed9e
--- /dev/null
+++ b/vcpkg/ports/uchardet/portfile.cmake
@@ -0,0 +1,50 @@
+vcpkg_from_gitlab(
+ GITLAB_URL https://gitlab.freedesktop.org
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO uchardet/uchardet
+ REF "v${VERSION}"
+ SHA512 8d7a0abe1fcf7e92f9e264252eefa5810176603e3d3d825a23c3f5d23cd4f7cce9a0a9539e84bd70af5b66688394e48af00a00ce759a5a3d69b650f92351b6f2
+ HEAD_REF master
+ PATCHES
+ fix-uwp-build.patch
+ fix-config-error.patch
+)
+
+
+vcpkg_check_features(
+ OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ tool BUILD_BINARY
+)
+
+string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" BUILD_STATIC)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS_DEBUG
+ -DBUILD_BINARY=OFF
+ OPTIONS_RELEASE
+ ${FEATURE_OPTIONS}
+ OPTIONS
+ -DBUILD_STATIC=${BUILD_STATIC}
+)
+
+vcpkg_cmake_install()
+
+vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/uchardet)
+
+vcpkg_copy_pdbs()
+
+vcpkg_fixup_pkgconfig()
+
+if(tool IN_LIST FEATURES)
+ vcpkg_copy_tools(TOOL_NAMES uchardet AUTO_CLEAN)
+endif()
+
+file(REMOVE_RECURSE
+ "${CURRENT_PACKAGES_DIR}/debug/include"
+ "${CURRENT_PACKAGES_DIR}/debug/share"
+ "${CURRENT_PACKAGES_DIR}/share/man"
+)
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/COPYING")
diff --git a/vcpkg/ports/uchardet/vcpkg.json b/vcpkg/ports/uchardet/vcpkg.json
new file mode 100644
index 0000000..d56b35d
--- /dev/null
+++ b/vcpkg/ports/uchardet/vcpkg.json
@@ -0,0 +1,25 @@
+{
+ "name": "uchardet",
+ "version": "0.0.8",
+ "description": "An encoding detector library ported from Mozilla.",
+ "homepage": "https://cgit.freedesktop.org/uchardet/uchardet/",
+ "license": "GPL-2.0 AND MPL-1.1",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ],
+ "features": {
+ "tool": {
+ "description": "Build uchardet CLI tool.",
+ "dependencies": [
+ "getopt"
+ ]
+ }
+ }
+}