#
+# TODO:
+# - BUILD!!! (more voodoo for multiple SAPIs; fix for new libtool)
+# - fastcgi option in cgi SAPI?
+# - add cli SAPI?
+# - check/update "experimental" in descriptions
+#
# Automatic pear requirements finding:
%include /usr/lib/rpm/macros.php
Source7: %{name}-apache.ini
Patch0: %{name}-shared.patch
Patch1: %{name}-pldlogo.patch
-Patch2: %{name}-mysql-socket.patch
+Patch2: %{name}-xml-expat-fix.patch
+#Patch2: %{name}-mysql-socket.patch
Patch3: %{name}-mail.patch
Patch4: %{name}-link-libs.patch
-Patch5: %{name}-fastcgi.patch
+#Patch5: %{name}-fastcgi.patch
Patch6: %{name}-libpq_fs_h_path.patch
Patch7: %{name}-wddx-fix.patch
Patch8: %{name}-cpdf-fix.patch
-Patch9: %{name}-session-fix-shared.patch
+#Patch9: %{name}-session-fix-shared.patch
Patch10: %{name}-hyperwave-fix.patch
-Patch11: %{name}-openssl-for-ext-only.patch
+Patch11: %{name}-odbc-fix.patch
+#Patch11: %{name}-openssl-for-ext-only.patch
Patch12: %{name}-java-fix.patch
Patch13: %{name}-mcal-shared-lib.patch
Patch14: %{name}-msession-shared-lib.patch
Patch15: %{name}-build_modules.patch
-Patch16: %{name}-sapi-ini-file.patch
-Patch17: %{name}-%{name}_iconv_string_declaration.patch
-Patch18: %{name}-pear-cosmetic.patch
-Patch19: %{name}-mnogosearch.patch
+#Patch16: %{name}-sapi-ini-file.patch
+#Patch17: %{name}-%{name}_iconv_string_declaration.patch
+#Patch18: %{name}-pear-cosmetic.patch
+#Patch19: %{name}-mnogosearch.patch
Patch20: %{name}-ini.patch
Patch21: %{name}-acam.patch
Patch22: %{name}-xmlrpc-fix.patch
-Patch23: %{name}-iconv-bug18039.patch
+#Patch23: %{name}-iconv-bug18039.patch
Patch24: %{name}-db4.patch
Icon: php4.gif
URL: http://www.php.net/
%{!?_without_snmp:BuildRequires: ucd-snmp-devel >= 4.2.6}
%{!?_without_odbc:BuildRequires: unixODBC-devel}
%{!?_without_xmlrpc:BuildRequires: xmlrpc-epi-devel}
-BuildRequires: yaz-devel
+BuildRequires: yaz-devel >= 1.9
BuildRequires: zip
BuildRequires: zlib-devel >= 1.0.9
BuildRequires: zziplib-devel
Group: Libraries
Requires(post,preun):%{name}-common = %{version}
Requires: %{name}-common = %{version}
+Requires: yaz >= 1.9
%description yaz
This is a dynamic shared object (DSO) for Apache that will add yaz
%setup -q
%patch0 -p1
%patch1 -p1
+#%patch2 -p1 -- obsolete
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch5 -p1
+#%patch5 -p1 -- obsolete (fastcgi interface changed)
%patch6 -p1
%patch7 -p1
%patch8 -p1
-%patch9 -p1
+#%patch9 -p1 -- obsolete
%patch10 -p1
%patch11 -p1
-%patch12 -p1
+#%patch11 -p1 -- obsolete (openssl used also in common part)
+#%patch12 -p1 -- needs update? to check
%patch13 -p1
%patch14 -p1
%patch15 -p1
-%patch16 -p1
-%patch17 -p1
-%patch18 -p1
-%patch19 -p1
+#%patch16 -p1 -- uhm... php allows _separate_ (not included) php-${SAPI}.ini files now
+#%patch17 -p1 -- obsolete
+#%patch18 -p1 -- obsolete? - no such file
+#%patch19 -p1 -- obsolete
cp php.ini-dist php.ini
%patch20 -p1
# for ac2.53b/am1.6b - AC_LANG_CXX has AM_CONDITIONAL, so cannot be invoked
# conditionally...
%patch21 -p1
%patch22 -p1
-%patch23 -p1
+#%patch23 -p1 -- obsolete
%patch24 -p1
install -d manual
%{__libtoolize}
%{__aclocal}
autoconf
-#for i in cgi fastcgi apxs ; do
+#for i in cgi cli fastcgi apxs ; do
PROG_SENDMAIL="/usr/lib/sendmail"; export PROG_SENDMAIL
for i in cgi apxs ; do
%configure \
`[ $i = cgi ] && echo --enable-discard-path` \
- `[ $i = fastcgi ] && echo --enable-discard-path --with-fastcgi=/usr` \
+ `[ $i != cli ] && echo --disable-cli` \
+ `[ $i = cli ] && echo --disable-cgi` \
+ `[ $i = fastcgi ] && --enable-fastcgi --with-fastcgi=/usr` \
%if %{_apache2}
`[ $i = apxs ] && echo --with-apxs2=%{apxs}` \
%else
--%{!?debug:dis}%{?debug:en}able-debug \
--enable-bcmath=shared \
--enable-calendar=shared \
- --disable-cli \
--enable-ctype=shared \
--enable-dba=shared \
--enable-dbx=shared \
--with-filepro=shared \
--with-freetype-dir=shared \
--with-gettext=shared \
- --with-gd=shared \
+ --with-gd=shared,/usr \
--with-gdbm \
--with-gmp=shared \
--with-hyperwave=shared \
%{!?_without_pspell:--with-pspell=shared} \
%{!?_without_recode:--with-recode=shared} \
--with-regex=php \
- --with-sablot-js=shared,no \
+ --without-sablot-js \
%{!?_without_snmp:--with-snmp=shared} \
%{!?_without_sybase_ct:--with-sybase-ct=shared,/usr} \
--with-t1lib=shared \
--with-yaz=shared \
--with-zip=shared \
--with-zlib=shared \
- --with-zlib-dir=shared
+ --with-zlib-dir=shared,/usr
+
+cp -f Makefile Makefile.$i
done
+# --with-sablot-js=shared,no
+
# for now session_mm doesn't work with shared session module...
# --enable-session=shared
# %{?_without_mm:--with-mm=shared,no}%{!?_without_mm:--with-mm=shared}
# --with-qtdom=shared
%{__make}
-%{__make} CFLAGS="%{rpmcflags} -DDISCARD_PATH=1" -C sapi/cgi
+
+cp -f Makefile.cgi Makefile
+#%{__make} CFLAGS="%{rpmcflags} -DDISCARD_PATH=1" -C sapi/cgi
+%{__make} sapi/cgi/php
+cp -f Makefile.apxs Makefile
# Kill -rpath from php binary and libphp4.so
-perl -pi -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
-perl -pi -e 's|^runpath_var=.*|runpath_var=|g' libtool
-%{__make} CFLAGS="%{rpmcflags} -DDISCARD_PATH=1" php
+#perl -pi -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
+#perl -pi -e 's|^runpath_var=.*|runpath_var=|g' libtool
+#%{__make} CFLAGS="%{rpmcflags} -DDISCARD_PATH=1" php
-perl -pi -e 's|^hardcode_into_libs=.*|hardcode_into_libs=no|g' libtool
-rm libphp4.la ; %{__make} libphp4.la
+#perl -pi -e 's|^hardcode_into_libs=.*|hardcode_into_libs=no|g' libtool
+#rm libphp4.la ; %{__make} libphp4.la
%install
rm -rf $RPM_BUILD_ROOT
%{?_with_java:install ext/java/php_java.jar $RPM_BUILD_ROOT%{_libdir}}
-install .libs/php $RPM_BUILD_ROOT%{_bindir}/php
+#install .libs/php $RPM_BUILD_ROOT%{_bindir}/php
+install sapi/cgi/php $RPM_BUILD_ROOT%{_bindir}/php
install php.ini $RPM_BUILD_ROOT%{_sysconfdir}/php.ini
install %{SOURCE6} %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}
mv -f Zend/LICENSE{,.Zend}
-mkdir $RPM_BUILD_ROOT%{php_pear_dir}/{Auth,Science,HTML/Template}
+install -d $RPM_BUILD_ROOT%{php_pear_dir}/{Auth,Science,HTML/Template}
%clean
rm -rf $RPM_BUILD_ROOT