From d0ee8e7347adbd3b798658d6f90a29dbbdfca643 Mon Sep 17 00:00:00 2001
From: fritzkink <96341974+fritzkink@users.noreply.github.com>
Date: Mon, 25 Dec 2023 11:47:40 +0100
Subject: [PATCH] php-8_2-ext-apcu - new package for php 8.2

---
 components/web/php/php-8_2-ext-apcu/Makefile                      |   90 ++++++++++++++++++++++
 components/web/php/php-8_2-ext-apcu/php82-ext-apcu.p5m            |   45 +++++++++++
 components/web/php/php-8_2-ext-apcu/pkg5                          |   11 ++
 components/web/php/php-8_2-ext-apcu/test/results-all.master       |   13 +++
 components/web/php/php-8_2-ext-apcu/apcu.ini                      |    2 
 components/web/php/php-8_2-ext-apcu/manifests/sample-manifest.p5m |   39 +++++++++
 6 files changed, 200 insertions(+), 0 deletions(-)

diff --git a/components/web/php/php-8_2-ext-apcu/Makefile b/components/web/php/php-8_2-ext-apcu/Makefile
new file mode 100644
index 0000000..49fedbf
--- /dev/null
+++ b/components/web/php/php-8_2-ext-apcu/Makefile
@@ -0,0 +1,90 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL)". You may
+# only use this file in accordance with the terms of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2016 Sergey Avseyev
+# Copyright (c) 2019 Alexander Pyhalov
+# Copyright (c) 2023 Friedrich Kink
+#
+
+BUILD_BITS=             64
+OPENSSL_VERSION=	3.1
+include ../../../../make-rules/shared-macros.mk
+
+COMPONENT_NAME=		apcu
+COMPONENT_VERSION=	5.1.23
+COMPONENT_SRC=		$(COMPONENT_NAME)-$(COMPONENT_VERSION)
+COMPONENT_PROJECT_URL=	https://pecl.php.net/package/apcu
+COMPONENT_ARCHIVE=	$(COMPONENT_NAME)-$(COMPONENT_VERSION).tgz
+COMPONENT_ARCHIVE_HASH=	sha256:67ee7464ccad2335c3fa4aeb0b8edbcf6d8344feea7922620c6a13015d604482
+COMPONENT_ARCHIVE_URL=	https://pecl.php.net/get/$(COMPONENT_ARCHIVE)
+COMPONENT_SUMMARY=	php APCu - APC User Cache
+COMPONENT_FMRI=		web/php-82/extension/php-apcu
+COMPONENT_LICENSE=	PHP3.01
+COMPONENT_LICENSE_FILE=	LICENSE
+COMPONENT_CLASSIFICATION=	Development/PHP
+
+include $(WS_MAKE_RULES)/common.mk
+
+COMPONENT_TEST_TARGETS = test
+
+COMPONENT_TEST_ENV += NO_INTERACTION=yes
+
+COMPONENT_TEST_TRANSFORMS += \
+    '-e "/^make/d" ' \
+    '-e "/^Time taken/d" ' \
+    '-e "/^TEST RESULT SUMMARY$$/,\$$p" ' \
+    '-e "/.*/d" '
+
+CLEAN_PATHS +=  package.xml
+
+PHP_PREFIX=/usr/php/8.2
+PHP_SYSCONFDIR=/etc/php/8.2
+PHP_DATADIR=/var/php/8.2
+
+CONFIGURE_SCRIPT	=      $(BUILD_DIR)/$(MACH64)/configure
+
+CFLAGS			+=	-I/usr/include/pcre
+
+# Configure Options
+CONFIGURE_OPTIONS	=    --prefix=$(PHP_PREFIX)
+CONFIGURE_OPTIONS	+=   --bindir=$(PHP_PREFIX)/bin
+CONFIGURE_OPTIONS	+=   --sbindir=$(PHP_PREFIX)/bin
+CONFIGURE_OPTIONS	+=   --libdir=$(PHP_PREFIX)/lib/$(MACH64)
+CONFIGURE_OPTIONS	+=   --libexecdir=$(PHP_PREFIX)/libexec
+CONFIGURE_OPTIONS	+=   --includedir=$(PHP_PREFIX)/include
+CONFIGURE_OPTIONS	+=   --sysconfdir=$(PHP_SYSCONFDIR)
+CONFIGURE_OPTIONS	+=   --datadir=$(PHP_DATADIR)
+CONFIGURE_OPTIONS	+=   --mandir=$(PHP_PREFIX)/share/man
+CONFIGURE_OPTIONS	+=   --localstatedir=$(PHP_DATADIR)
+
+ifeq ($(strip $(MACH)),i386)
+CONFIGURE_OPTIONS	+=   --build=x86_64-pc-solaris$(SOLARIS_VERSION)
+else
+CONFIGURE_OPTIONS.64	+=	--build=sparcv9-sun-solaris$(SOLARIS_VERSION)
+endif
+
+CONFIGURE_OPTIONS	+=   --with-php-config=$(PHP_PREFIX)/bin/php-config
+
+CFLAGS                +=	-I$(PHP_PREFIX)/include
+CPPFLAGS              +=	$(CFLAGS)
+LDFLAGS		      +=	-L$(PHP_PREFIX)/lib/$(MACH64) -R$(PHP_PREFIX)/lib/$(MACH64)
+
+CONFIGURE_OPTIONS     +=        CC="$(CC)" CXX="$(CXX)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
+
+COMPONENT_PRE_CONFIGURE_ACTION	 =	cp -R $(SOURCE_DIR)/* $(@D) ; cd $(@D) ; $(PHP_PREFIX)/bin/phpize
+COMPONENT_INSTALL_ARGS		+=	INSTALL_ROOT=$(PROTO_DIR)
+
+# manually added dependencies
+REQUIRED_PACKAGES += web/php-82/php-common
+REQUIRED_PACKAGES += library/pcre2
+
+# Auto-generated dependencies
+REQUIRED_PACKAGES += system/library
diff --git a/components/web/php/php-8_2-ext-apcu/apcu.ini b/components/web/php/php-8_2-ext-apcu/apcu.ini
new file mode 100644
index 0000000..5093b4a
--- /dev/null
+++ b/components/web/php/php-8_2-ext-apcu/apcu.ini
@@ -0,0 +1,2 @@
+[apcu]
+extension=apcu.so
diff --git a/components/web/php/php-8_2-ext-apcu/manifests/sample-manifest.p5m b/components/web/php/php-8_2-ext-apcu/manifests/sample-manifest.p5m
new file mode 100644
index 0000000..b22da22
--- /dev/null
+++ b/components/web/php/php-8_2-ext-apcu/manifests/sample-manifest.p5m
@@ -0,0 +1,39 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source.  A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright 2023 <contributor>
+#
+
+set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
+set name=pkg.human-version value=$(HUMAN_VERSION)
+set name=pkg.summary value="$(COMPONENT_SUMMARY)"
+set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
+set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
+set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
+set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
+
+license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
+
+file path=usr/php/8.2/extensions/apcu.so
+file path=usr/php/8.2/include/php/ext/apcu/apc.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_api.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_arginfo.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_cache.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_globals.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_iterator.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_lock.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_mutex.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_serializer.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_sma.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_stack.h
+file path=usr/php/8.2/include/php/ext/apcu/php_apc.h
+file path=usr/php/8.2/include/php/ext/apcu/php_apc_legacy_arginfo.h
diff --git a/components/web/php/php-8_2-ext-apcu/php82-ext-apcu.p5m b/components/web/php/php-8_2-ext-apcu/php82-ext-apcu.p5m
new file mode 100644
index 0000000..e934cf4
--- /dev/null
+++ b/components/web/php/php-8_2-ext-apcu/php82-ext-apcu.p5m
@@ -0,0 +1,45 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL)". You may
+# only use this file in accordance with the terms of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+
+#
+# Copyright (c) 2016 Sergey Avseyev
+# Copyright (c) 2019 Alexander Pyhalov
+# Copyright (c) 2023 Friedrich Kink
+#
+
+set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
+set name=pkg.human-version value=$(HUMAN_VERSION)
+set name=pkg.summary value="$(COMPONENT_SUMMARY)"
+set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
+set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
+set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
+set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
+
+license $(COMPONENT_LICENSE_FILE) license=$(COMPONENT_LICENSE)
+
+<transform file path=usr/php/8.2/extensions/.*\.so -> \
+    add pkg.linted.userland.action001.2 true>
+
+file apcu.ini path=etc/php/8.2/conf.d/apcu.ini preserve=true mode=0644
+
+file path=usr/php/8.2/extensions/apcu.so
+file path=usr/php/8.2/include/php/ext/apcu/apc.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_api.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_arginfo.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_cache.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_globals.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_iterator.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_lock.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_mutex.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_serializer.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_sma.h
+file path=usr/php/8.2/include/php/ext/apcu/apc_stack.h
+file path=usr/php/8.2/include/php/ext/apcu/php_apc.h
+file path=usr/php/8.2/include/php/ext/apcu/php_apc_legacy_arginfo.h
diff --git a/components/web/php/php-8_2-ext-apcu/pkg5 b/components/web/php/php-8_2-ext-apcu/pkg5
new file mode 100644
index 0000000..dc09afa
--- /dev/null
+++ b/components/web/php/php-8_2-ext-apcu/pkg5
@@ -0,0 +1,11 @@
+{
+    "dependencies": [
+        "library/pcre2",
+        "system/library",
+        "web/php-82/php-common"
+    ],
+    "fmris": [
+        "web/php-82/extension/php-apcu"
+    ],
+    "name": "apcu"
+}
\ No newline at end of file
diff --git a/components/web/php/php-8_2-ext-apcu/test/results-all.master b/components/web/php/php-8_2-ext-apcu/test/results-all.master
new file mode 100644
index 0000000..4c8afd4
--- /dev/null
+++ b/components/web/php/php-8_2-ext-apcu/test/results-all.master
@@ -0,0 +1,13 @@
+TEST RESULT SUMMARY
+---------------------------------------------------------------------
+Exts skipped    :    0
+Exts tested     :   31
+---------------------------------------------------------------------
+
+Number of tests :   68                57
+Tests skipped   :   11 ( 16.2%) --------
+Tests warned    :    0 (  0.0%) (  0.0%)
+Tests failed    :    0 (  0.0%) (  0.0%)
+Tests passed    :   57 ( 83.8%) (100.0%)
+---------------------------------------------------------------------
+=====================================================================

--
Gitblit v1.9.3