mirror of
https://git.busybox.net/buildroot.git
synced 2024-11-29 08:23:36 +08:00
Add php package
This commit is contained in:
parent
e1875d3ba2
commit
1b50c35b01
@ -367,6 +367,7 @@ source "package/microperl/Config.in"
|
||||
source "package/python/Config.in"
|
||||
source "package/ruby/Config.in"
|
||||
source "package/tcl/Config.in"
|
||||
source "package/php/Config.in"
|
||||
endif
|
||||
|
||||
endmenu
|
||||
|
47
package/php/Config.in
Normal file
47
package/php/Config.in
Normal file
@ -0,0 +1,47 @@
|
||||
config BR2_PACKAGE_PHP
|
||||
bool "php"
|
||||
default n
|
||||
help
|
||||
PHP is a widely-used general-purpose scripting
|
||||
language that is especially suited for Web development
|
||||
and can be embedded into HTML.
|
||||
|
||||
http://www.php.net
|
||||
|
||||
config BR2_PACKAGE_PHP_CLI
|
||||
bool "cli interface"
|
||||
depends on BR2_PACKAGE_PHP
|
||||
default y
|
||||
help
|
||||
command line interface for php.
|
||||
you must have at least cli or cgi selected.
|
||||
|
||||
config BR2_PACKAGE_PHP_CGI
|
||||
bool "cgi interface"
|
||||
depends on BR2_PACKAGE_PHP
|
||||
default y
|
||||
help
|
||||
cgi interface for php
|
||||
you must have at least cli or cgi selected.
|
||||
|
||||
config BR2_PACKAGE_PHP_OPENSSL
|
||||
bool "openssl support"
|
||||
depends on BR2_PACKAGE_PHP && BR2_PACKAGE_OPENSSL
|
||||
default y
|
||||
help
|
||||
openssl support
|
||||
|
||||
config BR2_PACKAGE_PHP_XML2
|
||||
bool "xml2 support"
|
||||
depends on BR2_PACKAGE_PHP && BR2_PACKAGE_LIBXML2
|
||||
default y
|
||||
help
|
||||
xml support
|
||||
|
||||
config BR2_PACKAGE_PHP_ZLIB
|
||||
bool "zlib support"
|
||||
depends on BR2_PACKAGE_PHP && BR2_PACKAGE_ZLIB
|
||||
default y
|
||||
help
|
||||
zlib support
|
||||
|
127
package/php/php.mk
Normal file
127
package/php/php.mk
Normal file
@ -0,0 +1,127 @@
|
||||
#############################################################
|
||||
#
|
||||
# php
|
||||
#
|
||||
#############################################################
|
||||
PHP_VER:=5.2.3
|
||||
PHP_SOURCE:=php-$(PHP_VER).tar.bz2
|
||||
PHP_SITE:=http://us.php.net/get/${PHP_SOURCE}/from/us2.php.net/mirror
|
||||
PHP_DIR:=$(BUILD_DIR)/php-$(PHP_VER)
|
||||
PHP_CAT=bzcat
|
||||
PHP_DEPS=
|
||||
PHP_TARGET_DEPS=
|
||||
|
||||
ifneq ($(BR2_PACKAGE_PHP_CLI),y)
|
||||
PHP_CLI="--disable-cli"
|
||||
else
|
||||
PHP_CLI="--enable-cli"
|
||||
PHP_TARGET_DEPS+=$(TARGET_DIR)/usr/bin/php
|
||||
endif
|
||||
|
||||
ifneq ($(BR2_PACKAGE_PHP_CGI),y)
|
||||
PHP_CGI="--disable-cgi"
|
||||
else
|
||||
PHP_CGI="--enable-cgi"
|
||||
PHP_TARGET_DEPS+=$(TARGET_DIR)/usr/bin/php-cgi
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_OPENSSL),y)
|
||||
PHP_OPENSSL="--with-openssl=$(STAGING_DIR)/usr"
|
||||
PHP_DEPS+=openssl
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_XML2),y)
|
||||
PHP_XML=--enable-libxml \
|
||||
--with-libxml-dir=${STAGING_DIR}/usr \
|
||||
--enable-xml \
|
||||
--enable-xmlreader \
|
||||
--enable-xmlwriter
|
||||
PHP_DEPS+=libxml2
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PHP_ZLIB),y)
|
||||
PHP_ZLIB="--with-zlib=$(STAGING_DIR)/usr"
|
||||
PHP_DEPS+=zlib
|
||||
endif
|
||||
|
||||
|
||||
$(DL_DIR)/$(PHP_SOURCE):
|
||||
$(WGET) -P $(DL_DIR) $(PHP_SITE)
|
||||
|
||||
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) -
|
||||
touch $(PHP_DIR)/.unpacked
|
||||
|
||||
$(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 \
|
||||
--datadir=/usr/share/misc \
|
||||
--localstatedir=/var \
|
||||
--mandir=/usr/man \
|
||||
--infodir=/usr/info \
|
||||
--disable-all \
|
||||
--enable-spl \
|
||||
--enable-session \
|
||||
--enable-sockets \
|
||||
--with-pcre-regex \
|
||||
--without-pear \
|
||||
--disable-ipv6 \
|
||||
$(DISABLE_NLS) \
|
||||
$(PHP_OPENSSL) \
|
||||
$(PHP_XML) \
|
||||
$(PHP_CLI) \
|
||||
$(PHP_CGI) \
|
||||
$(PHP_ZLIB) \
|
||||
);
|
||||
touch $(PHP_DIR)/.configured
|
||||
|
||||
$(PHP_DIR)/.built: $(PHP_DIR)/.configured
|
||||
$(MAKE) CC=$(TARGET_CC) -C $(PHP_DIR)
|
||||
touch $(PHP_DIR)/.built
|
||||
|
||||
$(PHP_DIR)/.staged: $(PHP_DIR)/.built
|
||||
$(MAKE) DESTDIR=$(STAGING_DIR) INSTALL_ROOT=$(STAGING_DIR) CC=$(TARGET_CC) -C $(PHP_DIR) install
|
||||
touch $(PHP_DIR)/.staged
|
||||
|
||||
$(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
|
||||
|
||||
$(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
|
||||
|
||||
$(TARGET_DIR)/etc/php.ini: $(PHP_DIR)/.staged
|
||||
cp $(PHP_DIR)/php.ini-dist $(TARGET_DIR)/etc/php.ini
|
||||
|
||||
php: uclibc $(PHP_DEPS) $(PHP_TARGET_DEPS) $(TARGET_DIR)/etc/php.ini
|
||||
|
||||
php-clean:
|
||||
rm -f $(PHP_DIR)/.configured $(PHP_DIR)/.built $(PHP_DIR)/.staged
|
||||
-$(MAKE) -C $(PHP_DIR) clean
|
||||
|
||||
php-dirclean:
|
||||
rm -rf $(PHP_DIR)
|
||||
|
||||
#############################################################
|
||||
#
|
||||
# Toplevel Makefile options
|
||||
#
|
||||
#############################################################
|
||||
ifeq ($(strip $(BR2_PACKAGE_PHP)),y)
|
||||
TARGETS+=php
|
||||
endif
|
Loading…
Reference in New Issue
Block a user