fritzkink
2023-12-25 4fabf2f907067d5eacb432f76eca97e5cf4b1337
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#
# 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
#
 
OPENSSL_VERSION=    3.1
include ../../../../make-rules/shared-macros.mk
 
COMPONENT_NAME=        php-8.2-ext-memcached
COMPONENT_REAL_NAME=    memcached
COMPONENT_VERSION=    3.2.0
COMPONENT_FMRI=        web/php-82/extension/php-memcached
COMPONENT_SUMMARY=    PHP extension for interfacing with memcached via libmemcached library
COMPONENT_PROJECT_URL=    https://pecl.php.net/package/$(COMPONENT_REAL_NAME)
COMPONENT_SRC=        $(COMPONENT_REAL_NAME)-$(COMPONENT_VERSION)
COMPONENT_ARCHIVE=    $(COMPONENT_NAME)-$(COMPONENT_VERSION).tgz
COMPONENT_ARCHIVE_HASH=    sha256:2a41143a7b29f4a962a3805b77aa207a99e4566e2d314ce98a051cd24d6e9636
COMPONENT_ARCHIVE_URL=    https://pecl.php.net/get/$(COMPONENT_SRC).tgz
COMPONENT_SUMMARY=    PHP extension for interfacing with memcached via libmemcached library
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
 
COMPONENT_PRE_CONFIGURE_ACTION    =    cp -R $(SOURCE_DIR)/* $(@D) ; cd $(@D) ; $(PHP_PREFIX)/bin/phpize
CONFIGURE_SCRIPT        =    $(@D)/configure
COMPONENT_INSTALL_ARGS        +=    INSTALL_ROOT=$(PROTO_DIR)
 
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)
CONFIGURE_OPTIONS  +=    --enable-memcached
CONFIGURE_OPTIONS  +=    --enable-memcached-session
CONFIGURE_OPTIONS  +=    --enable-memcached-json
#CONFIGURE_OPTIONS  +=    --enable-memcached-protocol
CONFIGURE_OPTIONS  +=    --disable-memcached-sasl
CONFIGURE_OPTIONS  +=    --disable-static
 
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/usr/include -I$(PHP_PREFIX)/include
CPPFLAGS           +=    $(CFLAGS)
LDFLAGS            +=    -L$(PHP_PREFIX)/lib/$(MACH64) -R$(PHP_PREFIX)/lib/$(MACH64)
 
# manually added dependencies
REQUIRED_PACKAGES += web/php-82/php-common
 
# Auto-generated dependencies
REQUIRED_PACKAGES += library/libmemcached
REQUIRED_PACKAGES += library/zlib
REQUIRED_PACKAGES += system/library