8879a47201bdba406acdcde18eb6772a0c2d53b6
[openwrt/openwrt.git] / openwrt / package / php5 / Makefile
1 # $Id$
2
3 include $(TOPDIR)/rules.mk
4
5 PKG_NAME:=php
6 PKG_VERSION:=5.0.4
7 PKG_RELEASE:=1
8 PKG_MD5SUM:=fb1aac107870f897d26563a9cc5053c0
9
10 PKG_SOURCE_URL:=http://fr.php.net/distributions/
11 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
12 PKG_CAT:=bzcat
13
14 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
15
16 include $(TOPDIR)/package/rules.mk
17
18 define PKG_mod_template
19
20 $$(IPKG_$(1)):
21 install -d -m0755 $$(IDIR_$(1))/usr/lib/php
22 install -m0755 $(PKG_BUILD_DIR)/modules/$(2).so $$(IDIR_$(1))/usr/lib/php
23 $(RSTRIP) $$(IDIR_$(1))
24 $(IPKG_BUILD) $$(IDIR_$(1)) $(PACKAGE_DIR)
25
26 endef
27
28 PKG_CONFIGURE_OPTS:= \
29 --enable-shared \
30 --disable-static \
31 --disable-rpath \
32 --disable-debug \
33 --without-pear \
34 --disable-spl \
35 \
36 --with-config-file-path=/etc \
37 --disable-ipv6 \
38 --enable-magic-quotes \
39 --enable-memory-limit \
40 --disable-short-tags \
41 \
42 --disable-ctype \
43 --disable-dom \
44 --enable-ftp=shared \
45 --without-gettext \
46 --without-iconv \
47 --disable-libxml \
48 --without-libxml-dir \
49 --disable-mbstring \
50 --disable-mbregex \
51 --with-openssl=shared,"$(STAGING_DIR)/usr" \
52 --with-kerberos=no \
53 --with-openssl-dir="$(STAGING_DIR)/usr" \
54 --enable-session=shared \
55 --disable-simplexml \
56 --disable-soap \
57 --enable-sockets=shared \
58 --disable-tokenizer \
59 --with-zlib="$(STAGING_DIR)/usr" \
60 --with-zlib-dir="$(STAGING_DIR)/usr" \
61
62 ifneq ($(BR2_PACKAGE_PHP5_MOD_GD),)
63 PKG_CONFIGURE_OPTS+= --with-gd=shared,"$(STAGING_DIR)/usr" \
64 --enable-gd-native-ttf \
65 --with-png-dir="$(STAGING_DIR)/usr"
66 else
67 PKG_CONFIGURE_OPTS+= --without-gd
68 endif
69 ifneq ($(BR2_PACKAGE_PHP5_MOD_LDAP),)
70 PKG_CONFIGURE_OPTS+= --with-ldap=shared,"$(STAGING_DIR)/usr" \
71 --with-ldap-sasl="$(STAGING_DIR)/usr"
72 else
73 PKG_CONFIGURE_OPTS+= --without-ldap
74 endif
75 ifneq ($(BR2_PACKAGE_PHP5_MOD_MYSQL),)
76 PKG_CONFIGURE_OPTS+= --with-mysql=shared,"$(STAGING_DIR)/usr"
77 else
78 PKG_CONFIGURE_OPTS+= --without-mysql
79 endif
80 ifneq ($(BR2_PACKAGE_PHP5_MOD_PCRE),)
81 PKG_CONFIGURE_OPTS+= --with-pcre-regex=shared,"$(STAGING_DIR)/usr"
82 else
83 PKG_CONFIGURE_OPTS+= --without-pcre-regex
84 endif
85 ifneq ($(BR2_PACKAGE_PHP5_MOD_PGSQL),)
86 PKG_CONFIGURE_OPTS+= --with-pgsql=shared,"$(STAGING_DIR)/usr"
87 else
88 PKG_CONFIGURE_OPTS+= --without-pgsql
89 endif
90 ifneq ($(BR2_PACKAGE_PHP5_MOD_SQLITE),)
91 PKG_CONFIGURE_OPTS+= --with-sqlite=shared,"$(STAGING_DIR)/usr"
92 else
93 PKG_CONFIGURE_OPTS+= --without-sqlite
94 endif
95 ifneq ($(BR2_PACKAGE_PHP5_MOD_XML),)
96 PKG_CONFIGURE_OPTS+= --enable-xml=shared,"$(STAGING_DIR)/usr" \
97 --with-libexpat-dir="$(STAGING_DIR)/usr"
98 else
99 PKG_CONFIGURE_OPTS+= --disable-xml
100 endif
101
102 $(eval $(call PKG_template,PHP5_CLI,php5-cli,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
103 $(eval $(call PKG_template,PHP5_CGI,php5-cgi,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
104 $(eval $(call PKG_template,PHP5_FASTCGI,php5-fastcgi,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
105
106 $(eval $(call PKG_template,PHP5_MOD_FTP,php5-mod-ftp,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
107 $(eval $(call PKG_template,PHP5_MOD_GD,php5-mod-gd,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
108 $(eval $(call PKG_template,PHP5_MOD_LDAP,php5-mod-ldap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
109 $(eval $(call PKG_template,PHP5_MOD_MYSQL,php5-mod-mysql,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
110 $(eval $(call PKG_template,PHP5_MOD_OPENSSL,php5-mod-openssl,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
111 $(eval $(call PKG_template,PHP5_MOD_PCRE,php5-mod-pcre,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
112 $(eval $(call PKG_template,PHP5_MOD_PGSQL,php5-mod-pgsql,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
113 $(eval $(call PKG_template,PHP5_MOD_SESSION,php5-mod-session,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
114 $(eval $(call PKG_template,PHP5_MOD_SOCKETS,php5-mod-sockets,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
115 $(eval $(call PKG_template,PHP5_MOD_SQLITE,php5-mod-sqlite,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
116 $(eval $(call PKG_template,PHP5_MOD_XML,php5-mod-xml,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
117
118 $(eval $(call PKG_mod_template,PHP5_MOD_FTP,ftp))
119 $(eval $(call PKG_mod_template,PHP5_MOD_GD,gd))
120 $(eval $(call PKG_mod_template,PHP5_MOD_LDAP,ldap))
121 $(eval $(call PKG_mod_template,PHP5_MOD_MYSQL,mysql))
122 $(eval $(call PKG_mod_template,PHP5_MOD_OPENSSL,openssl))
123 $(eval $(call PKG_mod_template,PHP5_MOD_PCRE,pcre))
124 $(eval $(call PKG_mod_template,PHP5_MOD_PGSQL,pgsql))
125 $(eval $(call PKG_mod_template,PHP5_MOD_SESSION,session))
126 $(eval $(call PKG_mod_template,PHP5_MOD_SOCKETS,sockets))
127 $(eval $(call PKG_mod_template,PHP5_MOD_SQLITE,sqlite))
128 $(eval $(call PKG_mod_template,PHP5_MOD_XML,xml))
129
130
131 $(PKG_BUILD_DIR)/.configured:
132 touch $@
133
134 $(PKG_BUILD_DIR)/.built:
135 (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
136 $(TARGET_CONFIGURE_OPTS) \
137 CFLAGS="$(TARGET_CFLAGS)" \
138 CPPFLAGS="-I$(STAGING_DIR)/usr/include" \
139 LDFLAGS="-L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib" \
140 LIBS="-lcrypto -lssl" \
141 php_cv_cc_rpath="no" \
142 ./configure \
143 --target=$(GNU_TARGET_NAME) \
144 --host=$(GNU_TARGET_NAME) \
145 --build=$(GNU_HOST_NAME) \
146 --program-prefix="" \
147 --program-suffix="" \
148 --prefix=/usr \
149 --exec-prefix=/usr \
150 --bindir=/usr/bin \
151 --datadir=/usr/share \
152 --includedir=/usr/include \
153 --infodir=/usr/share/info \
154 --libdir=/usr/lib \
155 --libexecdir=/usr/lib \
156 --localstatedir=/var \
157 --mandir=/usr/share/man \
158 --sbindir=/usr/sbin \
159 --sysconfdir=/etc \
160 $(DISABLE_LARGEFILE) \
161 $(DISABLE_NLS) \
162 $(PKG_CONFIGURE_OPTS) \
163 --enable-cli \
164 --disable-cgi \
165 --disable-fastcgi \
166 --enable-force-cgi-redirect \
167 --enable-discard-path \
168 );
169 $(MAKE) -C $(PKG_BUILD_DIR)
170 mv $(PKG_BUILD_DIR)/sapi/cli/php $(PKG_BUILD_DIR)/php-cli
171 (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
172 $(TARGET_CONFIGURE_OPTS) \
173 CFLAGS="$(TARGET_CFLAGS)" \
174 CPPFLAGS="-I$(STAGING_DIR)/usr/include" \
175 LDFLAGS="-L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib" \
176 LIBS="-lcrypto -lssl" \
177 php_cv_cc_rpath="no" \
178 ./configure \
179 --target=$(GNU_TARGET_NAME) \
180 --host=$(GNU_TARGET_NAME) \
181 --build=$(GNU_HOST_NAME) \
182 --program-prefix="" \
183 --program-suffix="" \
184 --prefix=/usr \
185 --exec-prefix=/usr \
186 --bindir=/usr/bin \
187 --datadir=/usr/share \
188 --includedir=/usr/include \
189 --infodir=/usr/share/info \
190 --libdir=/usr/lib \
191 --libexecdir=/usr/lib \
192 --localstatedir=/var \
193 --mandir=/usr/share/man \
194 --sbindir=/usr/sbin \
195 --sysconfdir=/etc \
196 $(DISABLE_LARGEFILE) \
197 $(DISABLE_NLS) \
198 $(PKG_CONFIGURE_OPTS) \
199 --disable-cli \
200 --enable-cgi \
201 --disable-fastcgi \
202 --enable-force-cgi-redirect \
203 --enable-discard-path \
204 );
205 $(MAKE) -C $(PKG_BUILD_DIR)
206 mv $(PKG_BUILD_DIR)/sapi/cgi/php $(PKG_BUILD_DIR)/php-cgi
207 $(MAKE) -C $(PKG_BUILD_DIR) clean
208 (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
209 $(TARGET_CONFIGURE_OPTS) \
210 CFLAGS="$(TARGET_CFLAGS)" \
211 CPPFLAGS="-I$(STAGING_DIR)/usr/include" \
212 LDFLAGS="-L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib" \
213 LIBS="-lcrypto -lssl" \
214 php_cv_cc_rpath="no" \
215 ./configure \
216 --target=$(GNU_TARGET_NAME) \
217 --host=$(GNU_TARGET_NAME) \
218 --build=$(GNU_HOST_NAME) \
219 --program-prefix="" \
220 --program-suffix="" \
221 --prefix=/usr \
222 --exec-prefix=/usr \
223 --bindir=/usr/sbin \
224 --datadir=/usr/share \
225 --includedir=/usr/include \
226 --infodir=/usr/share/info \
227 --libdir=/usr/lib \
228 --libexecdir=/usr/lib \
229 --localstatedir=/var \
230 --mandir=/usr/share/man \
231 --sbindir=/usr/sbin \
232 --sysconfdir=/etc \
233 $(DISABLE_LARGEFILE) \
234 $(DISABLE_NLS) \
235 $(PKG_CONFIGURE_OPTS) \
236 --disable-cli \
237 --enable-cgi \
238 --enable-fastcgi \
239 --enable-force-cgi-redirect \
240 --enable-discard-path \
241 );
242 $(MAKE) -C $(PKG_BUILD_DIR)
243 mv $(PKG_BUILD_DIR)/sapi/cgi/php $(PKG_BUILD_DIR)/php-fastcgi
244 touch $@
245
246 $(IPKG_PHP5_CLI):
247 install -m0755 -d $(IDIR_PHP5_CLI)/etc
248 install -m0644 ./files/php.ini $(IDIR_PHP5_CLI)/etc/
249 install -m0755 -d $(IDIR_PHP5_CLI)/usr/bin
250 cp -fpR $(PKG_BUILD_DIR)/php-cli $(IDIR_PHP5_CLI)/usr/bin/php
251 $(RSTRIP) $(IDIR_PHP5_CLI)
252 $(IPKG_BUILD) $(IDIR_PHP5_CLI) $(PACKAGE_DIR)
253
254 $(IPKG_PHP5_CGI):
255 install -m0755 -d $(IDIR_PHP5_CGI)/etc
256 install -m0644 ./files/php.ini $(IDIR_PHP5_CGI)/etc/
257 install -m0755 -d $(IDIR_PHP5_CGI)/usr/bin
258 cp -fpR $(PKG_BUILD_DIR)/php-cgi $(IDIR_PHP5_CGI)/usr/bin/php
259 $(RSTRIP) $(IDIR_PHP5_CGI)
260 $(IPKG_BUILD) $(IDIR_PHP5_CGI) $(PACKAGE_DIR)
261
262 $(IPKG_PHP5_FASTCGI):
263 install -m0755 -d $(IDIR_PHP5_FASTCGI)/etc
264 install -m0644 ./files/php.ini $(IDIR_PHP5_FASTCGI)/etc/
265 install -m0755 -d $(IDIR_PHP5_FASTCGI)/etc/init.d
266 install -m0755 ./files/php.init $(IDIR_PHP5_FASTCGI)/etc/init.d/php
267 install -m0755 -d $(IDIR_PHP5_FASTCGI)/usr/sbin
268 cp -fpR $(PKG_BUILD_DIR)/php-fastcgi $(IDIR_PHP5_FASTCGI)/usr/sbin/php
269 $(RSTRIP) $(IDIR_PHP5_FASTCGI)
270 $(IPKG_BUILD) $(IDIR_PHP5_FASTCGI) $(PACKAGE_DIR)
271