|
@@ -3,209 +3,181 @@
|
|
|
# php
|
|
|
#
|
|
|
#############################################################
|
|
|
-PHP_VER:=5.2.9
|
|
|
-PHP_SOURCE:=php-$(PHP_VER).tar.bz2
|
|
|
-PHP_SITE:=http://www.php.net/distributions
|
|
|
-PHP_DIR:=$(BUILD_DIR)/php-$(PHP_VER)
|
|
|
-PHP_CAT=$(BZCAT)
|
|
|
-PHP_DEPS=
|
|
|
-PHP_TARGET_DEPS=
|
|
|
-PHP_CONFIGURE = $(ENABLE_DEBUG)
|
|
|
+
|
|
|
+PHP_VERSION = 5.2.9
|
|
|
+PHP_SOURCE = php-$(PHP_VERSION).tar.bz2
|
|
|
+PHP_SITE = http://www.php.net/distributions
|
|
|
+PHP_INSTALL_STAGING = YES
|
|
|
+PHP_INSTALL_STAGING_OPT = INSTALL_ROOT=$(STAGING_DIR) install
|
|
|
+PHP_INSTALL_TARGET_OPT = INSTALL_ROOT=$(TARGET_DIR) install
|
|
|
+PHP_LIBTOOL_PATCH = NO
|
|
|
+PHP_DEPENDENCIES = uclibc
|
|
|
+PHP_CONF_OPT = $(DISABLE_IPV6) \
|
|
|
+ --mandir=/usr/share/man \
|
|
|
+ --infodir=/usr/share/info \
|
|
|
+ --disable-all \
|
|
|
+ --without-pear \
|
|
|
+ --with-config-file-path=/etc \
|
|
|
+ --localstatedir=/var \
|
|
|
|
|
|
ifneq ($(BR2_PACKAGE_PHP_CLI),y)
|
|
|
- PHP_CONFIGURE+=--disable-cli
|
|
|
+ PHP_CONF_OPT += --disable-cli
|
|
|
else
|
|
|
- PHP_CONFIGURE+=--enable-cli
|
|
|
- PHP_TARGET_DEPS+=$(TARGET_DIR)/usr/bin/php
|
|
|
+ PHP_CONF_OPT += --enable-cli
|
|
|
endif
|
|
|
|
|
|
ifneq ($(BR2_PACKAGE_PHP_CGI),y)
|
|
|
- PHP_CONFIGURE+=--disable-cgi
|
|
|
+ PHP_CONF_OPT += --disable-cgi
|
|
|
else
|
|
|
- PHP_CONFIGURE=--enable-cgi
|
|
|
- PHP_TARGET_DEPS+=$(TARGET_DIR)/usr/bin/php-cgi
|
|
|
+ PHP_CONF_OPT += --enable-cgi
|
|
|
ifeq ($(BR2_PACKAGE_PHP_FASTCGI),y)
|
|
|
- PHP_CONFIGURE+=--enable-fastcgi
|
|
|
+ PHP_CONF_OPT += --enable-fastcgi
|
|
|
endif
|
|
|
endif
|
|
|
|
|
|
-ifneq ($(BR2_INET_IPV6),y)
|
|
|
- PHP_CONFIGURE+=--disable-ipv6
|
|
|
-endif
|
|
|
-
|
|
|
### Extensions
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_SOCKETS),y)
|
|
|
- PHP_CONFIGURE+=--enable-sockets
|
|
|
+ PHP_CONF_OPT += --enable-sockets
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_POSIX),y)
|
|
|
- PHP_CONFIGURE+=--enable-posix
|
|
|
+ PHP_CONF_OPT += --enable-posix
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_SPL),y)
|
|
|
- PHP_CONFIGURE+=--enable-spl
|
|
|
+ PHP_CONF_OPT += --enable-spl
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_SESSION),y)
|
|
|
- PHP_CONFIGURE+=--enable-session
|
|
|
+ PHP_CONF_OPT += --enable-session
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_OPENSSL),y)
|
|
|
- PHP_CONFIGURE+=--with-openssl=$(STAGING_DIR)/usr
|
|
|
- PHP_DEPS+=openssl
|
|
|
+ PHP_CONF_OPT += --with-openssl=$(STAGING_DIR)/usr
|
|
|
+ PHP_DEPENDENCIES += openssl
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_LIBXML2),y)
|
|
|
- PHP_CONFIGURE+=--enable-libxml \
|
|
|
+ PHP_CONF_OPT += --enable-libxml \
|
|
|
--with-libxml-dir=${STAGING_DIR}/usr \
|
|
|
--enable-xml \
|
|
|
--enable-xmlreader \
|
|
|
--enable-xmlwriter
|
|
|
- PHP_DEPS+=libxml2
|
|
|
+ PHP_DEPENDENCIES += libxml2
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_SIMPLEXML),y)
|
|
|
- PHP_CONFIGURE+=--enable-simplexml
|
|
|
+ PHP_CONF_OPT += --enable-simplexml
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_ZLIB),y)
|
|
|
- PHP_CONFIGURE+=--with-zlib=$(STAGING_DIR)/usr
|
|
|
- PHP_DEPS+=zlib
|
|
|
+ PHP_CONF_OPT += --with-zlib=$(STAGING_DIR)/usr
|
|
|
+ PHP_DEPENDENCIES += zlib
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_EXIF),y)
|
|
|
- PHP_CONFIGURE+=--enable-exif
|
|
|
+ PHP_CONF_OPT += --enable-exif
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_FTP),y)
|
|
|
- PHP_CONFIGURE+=--enable-ftp
|
|
|
+ PHP_CONF_OPT += --enable-ftp
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_GETTEXT),y)
|
|
|
- PHP_CONFIGURE+=--with-gettext=$(STAGING_DIR)/usr
|
|
|
- PHP_DEPS+=gettext
|
|
|
+ PHP_CONF_OPT += --with-gettext=$(STAGING_DIR)/usr
|
|
|
+ PHP_DEPENDENCIES += gettext
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_GMP),y)
|
|
|
- PHP_CONFIGURE+=--with-gmp=$(STAGING_DIR)/usr
|
|
|
- PHP_DEPS+=libgmp
|
|
|
+ PHP_CONF_OPT += --with-gmp=$(STAGING_DIR)/usr
|
|
|
+ PHP_DEPENDENCIES += libgmp
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_JSON),y)
|
|
|
- PHP_CONFIGURE+=--enable-json
|
|
|
+ PHP_CONF_OPT += --enable-json
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_READLINE),y)
|
|
|
- PHP_CONFIGURE+=--with-readline=$(STAGING_DIR)/usr
|
|
|
- PHP_DEPS+=readline
|
|
|
+ PHP_CONF_OPT += --with-readline=$(STAGING_DIR)/usr
|
|
|
+ PHP_DEPENDENCIES += readline
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_NCURSES),y)
|
|
|
- PHP_CONFIGURE+=--with-ncurses=$(STAGING_DIR)/usr
|
|
|
- PHP_DEPS+=ncurses
|
|
|
+ PHP_CONF_OPT += --with-ncurses=$(STAGING_DIR)/usr
|
|
|
+ PHP_DEPENDENCIES += ncurses
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_SYSVMSG),y)
|
|
|
- PHP_CONFIGURE+=--enable-sysvmsg
|
|
|
+ PHP_CONF_OPT += --enable-sysvmsg
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_SYSVSEM),y)
|
|
|
- PHP_CONFIGURE+=--enable-sysvsem
|
|
|
+ PHP_CONF_OPT += --enable-sysvsem
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_SYSVSHM),y)
|
|
|
- PHP_CONFIGURE+=--enable-sysvshm
|
|
|
+ PHP_CONF_OPT += --enable-sysvshm
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_ZIP),y)
|
|
|
- PHP_CONFIGURE+=--enable-zip
|
|
|
+ PHP_CONF_OPT += --enable-zip
|
|
|
endif
|
|
|
+
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_FILTER),y)
|
|
|
- PHP_CONFIGURE+=--enable-filter
|
|
|
+ PHP_CONF_OPT += --enable-filter
|
|
|
+endif
|
|
|
+
|
|
|
+ifeq ($(BR2_PACKAGE_PHP_EXT_CALENDAR),y)
|
|
|
+ PHP_CONF_OPT += --enable-calendar
|
|
|
endif
|
|
|
|
|
|
-### Database extensions
|
|
|
+ifeq ($(BR2_PACKAGE_PHP_EXT_PCRE),y)
|
|
|
+ PHP_CONF_OPT += --with-pcre-regex
|
|
|
+endif
|
|
|
+
|
|
|
+### Legacy sqlite2 support
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_SQLITE),y)
|
|
|
- PHP_CONFIGURE+=--with-sqlite
|
|
|
+ PHP_CONF_OPT += --with-sqlite
|
|
|
ifneq ($(BR2_LARGEFILE),y)
|
|
|
- PHP_CFLAGS+= -DSQLITE_DISABLE_LFS
|
|
|
+ PHP_CONF_ENV += CFLAGS+=" -DSQLITE_DISABLE_LFS"
|
|
|
endif
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_SQLITE_UTF8),y)
|
|
|
- PHP_CONFIGURE+=--enable-sqlite-utf8
|
|
|
+ PHP_CONF_OPT += --enable-sqlite-utf8
|
|
|
endif
|
|
|
endif
|
|
|
+
|
|
|
+### PDO
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_PDO),y)
|
|
|
- PHP_CONFIGURE+=--enable-pdo
|
|
|
+ PHP_CONF_OPT += --enable-pdo
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_SQLITE),y)
|
|
|
- PHP_CONFIGURE+=--with-pdo-sqlite
|
|
|
- PHP_CFLAGS+= -DSQLITE_OMIT_LOAD_EXTENSION
|
|
|
+ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_SQLITE_EXTERNAL),y)
|
|
|
+ PHP_CONF_OPT += --with-pdo-sqlite=$(STAGING_DIR)/usr
|
|
|
+else
|
|
|
+ PHP_CONF_OPT += --with-pdo-sqlite
|
|
|
+endif
|
|
|
+ PHP_CONF_ENV += CFLAGS+=" -DSQLITE_OMIT_LOAD_EXTENSION"
|
|
|
endif
|
|
|
ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_MYSQL),y)
|
|
|
- PHP_CONFIGURE+=--with-pdo-mysql=$(STAGING_DIR)/usr
|
|
|
- PHP_DEPS+=mysql_client
|
|
|
-endif
|
|
|
-endif
|
|
|
-
|
|
|
-$(DL_DIR)/$(PHP_SOURCE):
|
|
|
- $(call DOWNLOAD,$(PHP_SITE),$(PHP_SOURCE))
|
|
|
-
|
|
|
-php-source: $(DL_DIR)/$(PHP_SOURCE)
|
|
|
-
|
|
|
-$(PHP_DIR)/.unpacked: $(DL_DIR)/$(PHP_SOURCE)
|
|
|
- $(PHP_CAT) $(DL_DIR)/$(PHP_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
|
|
|
- toolchain/patch-kernel.sh $(PHP_DIR) package/php/ php\*.patch
|
|
|
- toolchain/patch-kernel.sh $(PHP_DIR) package/php/ php\*.patch.$(ARCH)
|
|
|
- touch $@
|
|
|
-
|
|
|
-$(PHP_DIR)/.configured: $(PHP_DIR)/.unpacked
|
|
|
- (cd $(PHP_DIR); rm -rf config.cache; \
|
|
|
- $(TARGET_CONFIGURE_OPTS) \
|
|
|
- $(TARGET_CONFIGURE_ARGS) \
|
|
|
- CC=$(TARGET_CC) \
|
|
|
- ./configure \
|
|
|
- --target=$(GNU_TARGET_NAME) \
|
|
|
- --host=$(GNU_TARGET_NAME) \
|
|
|
- --build=$(GNU_HOST_NAME) \
|
|
|
- --prefix=/usr \
|
|
|
- --exec-prefix=/ \
|
|
|
- --bindir=/usr/bin \
|
|
|
- --sbindir=/usr/sbin \
|
|
|
- --libexecdir=/usr/lib \
|
|
|
- --sysconfdir=/etc \
|
|
|
- --with-config-file-path=/etc \
|
|
|
- --datadir=/usr/share/misc \
|
|
|
- --localstatedir=/var \
|
|
|
- --mandir=/usr/man \
|
|
|
- --infodir=/usr/info \
|
|
|
- --disable-all \
|
|
|
- --with-pcre-regex \
|
|
|
- --without-pear \
|
|
|
- $(PHP_CONFIGURE) \
|
|
|
- )
|
|
|
- touch $@
|
|
|
-
|
|
|
-$(PHP_DIR)/.built: $(PHP_DIR)/.configured
|
|
|
- $(MAKE) CC="$(TARGET_CC) $(PHP_CFLAGS)" -C $(PHP_DIR)
|
|
|
- touch $@
|
|
|
-
|
|
|
-$(PHP_DIR)/.staged: $(PHP_DIR)/.built
|
|
|
- $(MAKE) DESTDIR=$(STAGING_DIR) INSTALL_ROOT=$(STAGING_DIR) CC=$(TARGET_CC) -C $(PHP_DIR) install
|
|
|
- touch $@
|
|
|
-
|
|
|
-$(TARGET_DIR)/usr/bin/php: $(PHP_DIR)/.staged
|
|
|
- cp -dpf $(STAGING_DIR)/usr/bin/php $(TARGET_DIR)/usr/bin/php
|
|
|
- chmod 755 $(TARGET_DIR)/usr/bin/php
|
|
|
- $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/bin/php
|
|
|
-
|
|
|
-$(TARGET_DIR)/usr/bin/php-cgi: $(PHP_DIR)/.staged
|
|
|
- cp -dpf $(STAGING_DIR)/usr/bin/php-cgi $(TARGET_DIR)/usr/bin/php-cgi
|
|
|
- chmod 755 $(TARGET_DIR)/usr/bin/php-cgi
|
|
|
- $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/bin/php-cgi
|
|
|
-
|
|
|
-$(TARGET_DIR)/etc/php.ini: $(PHP_DIR)/.staged
|
|
|
- cp -f $(PHP_DIR)/php.ini-dist $(TARGET_DIR)/etc/php.ini
|
|
|
+ PHP_CONF_OPT += --with-pdo-mysql=$(STAGING_DIR)/usr
|
|
|
+ PHP_DEPENDENCIES += mysql_client
|
|
|
+endif
|
|
|
+endif
|
|
|
|
|
|
-php: uclibc $(PHP_DEPS) $(PHP_TARGET_DEPS) $(TARGET_DIR)/etc/php.ini
|
|
|
+$(eval $(call AUTOTARGETS,package,php))
|
|
|
|
|
|
-php-unpacked: $(PHP_DIR)/.unpacked
|
|
|
+$(PHP_HOOK_POST_INSTALL):
|
|
|
+ rm -rf $(TARGET_DIR)/usr/lib/php
|
|
|
+ rm -f $(TARGET_DIR)/usr/bin/phpize
|
|
|
+ rm -f $(TARGET_DIR)/usr/bin/php-config
|
|
|
+ $(INSTALL) -m 0755 $(BR2_PACKAGE_PHP_CONFIG) $(TARGET_DIR)/etc/php.ini
|
|
|
|
|
|
-php-clean:
|
|
|
- rm -f $(PHP_DIR)/.configured $(PHP_DIR)/.built $(PHP_DIR)/.staged
|
|
|
- rm -f $(PHP_TARGET_DEPS)
|
|
|
- rm -f $(STAGING_DIR)/usr/bin/php* $(STAGING_DIR)/usr/man/man1/php*
|
|
|
+$(PHP_TARGET_UNINSTALL):
|
|
|
+ $(call MESSAGE,"Uninstalling")
|
|
|
rm -rf $(STAGING_DIR)/usr/include/php
|
|
|
- -$(MAKE) -C $(PHP_DIR) clean
|
|
|
+ rm -rf $(STAGING_DIR)/usr/lib/php
|
|
|
+ rm -f $(STAGING_DIR)/usr/bin/php*
|
|
|
+ rm -f $(STAGING_DIR)/usr/share/man/man1/php*.1
|
|
|
+ rm -f $(TARGET_DIR)/etc/php.ini
|
|
|
+ rm -f $(TARGET_DIR)/usr/bin/php*
|
|
|
+ rm -f $(PHP_TARGET_INSTALL_TARGET) $(PHP_HOOK_POST_INSTALL)
|
|
|
|
|
|
-php-dirclean:
|
|
|
- rm -rf $(PHP_DIR)
|
|
|
-
|
|
|
-#############################################################
|
|
|
-#
|
|
|
-# Toplevel Makefile options
|
|
|
-#
|
|
|
-#############################################################
|
|
|
-ifeq ($(BR2_PACKAGE_PHP),y)
|
|
|
-TARGETS+=php
|
|
|
-endif
|