From 6ee8dc799497485977ef6a3023b42850b24bb342 Mon Sep 17 00:00:00 2001 From: crazywhalecc Date: Mon, 2 Feb 2026 16:15:36 +0800 Subject: [PATCH] Add zstd,libcares --- config/pkg/lib/libcares.yml | 23 +++++++++++++++++++ config/pkg/lib/zstd.yml | 19 ++++++++++++++++ src/Package/Library/libcares.php | 38 ++++++++++++++++++++++++++++++++ src/Package/Library/zstd.php | 29 ++++++++++++++++++++++++ 4 files changed, 109 insertions(+) create mode 100644 config/pkg/lib/libcares.yml create mode 100644 config/pkg/lib/zstd.yml create mode 100644 src/Package/Library/libcares.php create mode 100644 src/Package/Library/zstd.php diff --git a/config/pkg/lib/libcares.yml b/config/pkg/lib/libcares.yml new file mode 100644 index 00000000..da0d1ad6 --- /dev/null +++ b/config/pkg/lib/libcares.yml @@ -0,0 +1,23 @@ +libcares: + type: library + artifact: + source: + type: ghrel + repo: c-ares/c-ares + match: c-ares-.+\.tar\.gz + prefer-stable: true + source-mirror: + type: filelist + url: 'https://c-ares.org/download/' + regex: '/href="\/download\/(?c-ares-(?[^"]+)\.tar\.gz)"/' + binary: hosted + metadata: + license-files: [LICENSE.md] + headers@unix: + - ares.h + - ares_dns.h + - ares_nameser.h + static-libs@unix: + - libcares.a + pkg-configs: + - libcares diff --git a/config/pkg/lib/zstd.yml b/config/pkg/lib/zstd.yml new file mode 100644 index 00000000..60d33519 --- /dev/null +++ b/config/pkg/lib/zstd.yml @@ -0,0 +1,19 @@ +zstd: + type: library + artifact: + source: + type: ghrel + repo: facebook/zstd + match: zstd.+\.tar\.gz + prefer-stable: true + metadata: + license-files: [LICENSE] + license: BSD-3-Clause + headers@unix: + - zdict.h + - zstd.h + - zstd_errors.h + static-libs@unix: + - libzstd.a + pkg-configs: + - libzstd diff --git a/src/Package/Library/libcares.php b/src/Package/Library/libcares.php new file mode 100644 index 00000000..fbfb5830 --- /dev/null +++ b/src/Package/Library/libcares.php @@ -0,0 +1,38 @@ +getSourceDir()}/src/lib/thirdparty/apple/dnsinfo.h")) { + FileSystem::createDir("{$lib->getSourceDir()}/src/lib/thirdparty/apple"); + copy(ROOT_DIR . '/src/globals/extra/libcares_dnsinfo.h', "{$lib->getSourceDir()}/src/lib/thirdparty/apple/dnsinfo.h"); + return true; + } + return false; + } + + #[BuildFor('Linux')] + #[BuildFor('Darwin')] + public function build(LibraryPackage $lib): void + { + UnixAutoconfExecutor::create($lib)->configure('--disable-tests')->make(); + + $lib->patchPkgconfPrefix(['libcares.pc'], PKGCONF_PATCH_PREFIX); + } +} diff --git a/src/Package/Library/zstd.php b/src/Package/Library/zstd.php new file mode 100644 index 00000000..ab538358 --- /dev/null +++ b/src/Package/Library/zstd.php @@ -0,0 +1,29 @@ +setBuildDir("{$lib->getSourceDir()}/build/cmake/build") + ->addConfigureArgs( + '-DZSTD_BUILD_STATIC=ON', + '-DZSTD_BUILD_SHARED=OFF', + ) + ->build(); + + $lib->patchPkgconfPrefix(['libzstd.pc'], PKGCONF_PATCH_PREFIX); + } +}