From 83c266a71326fdca4ec00f2d43bfca1664f2dc62 Mon Sep 17 00:00:00 2001 From: crazywhalecc Date: Tue, 17 Mar 2026 15:41:00 +0800 Subject: [PATCH] Add ext-yac --- config/pkg/ext/ext-yac.yml | 14 ++++++++++++++ src/Package/Extension/yac.php | 25 +++++++++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 config/pkg/ext/ext-yac.yml create mode 100644 src/Package/Extension/yac.php diff --git a/config/pkg/ext/ext-yac.yml b/config/pkg/ext/ext-yac.yml new file mode 100644 index 00000000..e10bea06 --- /dev/null +++ b/config/pkg/ext/ext-yac.yml @@ -0,0 +1,14 @@ +ext-yac: + type: php-extension + artifact: + source: + type: pecl + name: yac + metadata: + license-files: [LICENSE] + license: PHP-3.01 + depends@unix: + - fastlz + - ext-igbinary + php-extension: + arg-type@unix: '--enable-yac@shared_suffix@ --enable-igbinary --enable-json --with-system-fastlz' diff --git a/src/Package/Extension/yac.php b/src/Package/Extension/yac.php new file mode 100644 index 00000000..4bf2cf66 --- /dev/null +++ b/src/Package/Extension/yac.php @@ -0,0 +1,25 @@ +getSourceDir()}/storage/allocator/yac_allocator.h", 'defined(HAVE_SHM_MMAP_ANON)', 'defined(YAC_ALLOCATOR_H)'); + FileSystem::replaceFileStr("{$this->getSourceDir()}/serializer/igbinary.c", '#ifdef YAC_ENABLE_IGBINARY', '#if 1'); + FileSystem::replaceFileStr("{$this->getSourceDir()}/serializer/json.c", '#if YAC_ENABLE_JSON', '#if 1'); + return true; + } +}