#
# TODO:
-# - fastcgi option in cgi SAPI? or separate fcgi SAPI?
# - make sure that session-unregister patch is no longer needed
# (any crash reports related to session modules?)
+# - think of including support for:
+# - mcve,
+# - ovrimos,
+# - pfpro,
+# - ircg,
+# These extensions BuildRequires proprietary libraries...
+# - fix building of mono, sybase and sqlite extensions
+# - test if php cgi segfaults after ctrl+d when overload.so is loaded
#
# Conditional build:
%bcond_with db3 # use db3 packages instead of db (4.x) for Berkeley DB support
-%bcond_with fdf # with FDF (PDF forms) module (BR: proprietary lib)
+%bcond_with fdf # with FDF (PDF forms) module (BR: proprietary libs)
+%bcond_with hyperwave # with Hw API support (BR: proprietary libs)
%bcond_with interbase_inst # use InterBase install., not Firebird (BR: proprietary libs)
%bcond_with java # with Java extension module (BR: jdk)
%bcond_with oci8 # with Oracle oci8 extension module (BR: proprietary libs)
%bcond_without cpdf # without cpdf extension module
%bcond_without curl # without CURL extension module
%bcond_without domxslt # without DOM XSLT/EXSLT support in DOM XML extension module
-%bcond_without fribidi # without FriBiDi extension module
+%bcond_without fam # without FAM (File Alteration Monitor) extension module
%bcond_without gif # build GD extension module with gd library without GIF support
%bcond_without imap # without IMAP extension module
%bcond_without interbase # without InterBase extension module
%bcond_without pgsql # without PostgreSQL extension module
%bcond_without pspell # without pspell extension module
%bcond_without recode # without recode extension module
-%bcond_without qtdom # without QT DOM extension module
%bcond_without snmp # without SNMP extension module
-%bcond_without sybase # without Sybase and Sybase-CT extension modules
+%bcond_without tidy # without Tidy extension module
%bcond_without wddx # without WDDX extension module
%bcond_without xmlrpc # without XML-RPC extension module
%bcond_without xml # without XML and DOMXML extension modules
%bcond_without xslt # without XSLT extension module
-%bcond_without yaz # without YAZ extension module
+# To be verified
+# Removed from sources?
+%bcond_with mono # without Mono extensions module
+%bcond_with yaz # without YAZ extension module
+# Breaks build
+%bcond_with simplexml # without simplexml extension module
+%bcond_with sqlite # without SQLite extension module
+%bcond_with sybase # without Sybase and Sybase-CT extension modules
#
%define _apache2 %(rpm -q apache-devel 2> /dev/null | grep -Eq '\\-2\\.[0-9]+\\.' && echo 1 || echo 0)
%define apxs /usr/sbin/apxs
Summary(fr): Le langage de script embarque-HTML PHP pour Apache
Summary(pl): Jêzyk skryptowy PHP -- u¿ywany wraz z serwerem Apache
Summary(pt_BR): A linguagem de script PHP
-Summary(ru): PHP ÷ÅÒÓÉÉ 4 -- ÑÚÙË ÐÒÅÐÒÏÃÅÓÓÉÒÏ×ÁÎÉÑ HTML-ÆÁÊÌÏ×, ×ÙÐÏÌÎÑÅÍÙÊ ÎÁ ÓÅÒ×ÅÒÅ
-Summary(uk): PHP ÷ÅÒÓ¦§ 4 -- ÍÏ×Á ÐÒÅÐÒÏÃÅÓÕ×ÁÎÎÑ HTML-ÆÁÊ̦×, ×ÉËÏÎÕ×ÁÎÁ ÎÁ ÓÅÒ×ÅÒ¦
+Summary(ru): PHP ÷ÅÒÓÉÉ 5 -- ÑÚÙË ÐÒÅÐÒÏÃÅÓÓÉÒÏ×ÁÎÉÑ HTML-ÆÁÊÌÏ×, ×ÙÐÏÌÎÑÅÍÙÊ ÎÁ ÓÅÒ×ÅÒÅ
+Summary(uk): PHP ÷ÅÒÓ¦§ 5 -- ÍÏ×Á ÐÒÅÐÒÏÃÅÓÕ×ÁÎÎÑ HTML-ÆÁÊ̦×, ×ÉËÏÎÕ×ÁÎÁ ÎÁ ÓÅÒ×ÅÒ¦
Name: php
-Version: 4.3.4
-Release: 3
+Version: 5.0.0
+%define _pre RC2
+Release: 0.%{_pre}.1
Epoch: 3
Group: Libraries
License: PHP
-#Source0: http://www.php.net/distributions/%{name}-%{version}.tar.bz2
-Source0: http://downloads.php.net/ilia/%{name}-%{version}.tar.bz2
-# Source0-md5: b9dd601863e08e52e3c4d5e02c2627cf
+#Source0: http://www.php.net/distributions/%{name}-%{version}%{_pre}.tar.bz2
+Source0: http://pl2.php.net/distributions/%{name}-%{version}%{_pre}.tar.bz2
+# Source0-md5: 99e056269c2e3eac7e934755c60c44b7
Source1: FAQ.%{name}
Source2: zend.gif
Source4: %{name}-module-install
Patch4: %{name}-link-libs.patch
Patch5: %{name}-libpq_fs_h_path.patch
Patch6: %{name}-wddx-fix.patch
-Patch7: %{name}-cpdf-fix.patch
-Patch8: %{name}-hyperwave-fix.patch
-Patch9: %{name}-xslt-gcc33.patch
-Patch10: %{name}-java-norpath.patch
-Patch11: %{name}-mcal-shared-lib.patch
-Patch12: %{name}-msession-shared-lib.patch
-Patch13: %{name}-build_modules.patch
-Patch14: %{name}-sapi-ini-file.patch
-Patch15: %{name}-ncurses.patch
-Patch16: %{name}-no-metaccld.patch
-Patch17: %{name}-session-unregister.patch
-Patch18: %{name}-ini.patch
-Patch19: %{name}-acam.patch
-Patch20: %{name}-xmlrpc-fix.patch
-Patch21: %{name}-libtool.patch
-Patch22: %{name}-allow-db31.patch
-Patch23: %{name}-threads-acfix.patch
-Patch24: %{name}-tsrmlsfetchgcc2.patch
-Patch25: %{name}-qt.patch
-Patch26: %{name}-no_pear_install.patch
-Patch27: %{name}-zlib.patch
-Patch28: %{name}-db-shared.patch
-Patch29: %{name}-sybase-fix.patch
-Patch30: %{name}-mssql-fix.patch
-Patch31: %{name}-phpize_fixes.patch
-Patch32: %{name}-db42.patch
+Patch7: %{name}-msession-shared-lib.patch
+Patch8: %{name}-build_modules.patch
+Patch9: %{name}-sapi-ini-file.patch
+Patch10: %{name}-no-metaccld.patch
+Patch11: %{name}-session-unregister.patch
+Patch12: %{name}-ini.patch
+Patch13: %{name}-acam.patch
+Patch14: %{name}-xmlrpc-fix.patch
+Patch15: %{name}-libtool.patch
+Patch16: %{name}-allow-db31.patch
+Patch17: %{name}-threads-acfix.patch
+Patch18: %{name}-tsrmlsfetchgcc2.patch
+Patch19: %{name}-no_pear_install.patch
+Patch20: %{name}-zlib.patch
+Patch21: %{name}-sybase-fix.patch
+Patch22: %{name}-mssql-fix.patch
Icon: php4.gif
URL: http://www.php.net/
%{?with_interbase:%{!?with_interbase_inst:BuildRequires: Firebird-devel >= 1.0.2.908-2}}
BuildRequires: automake >= 1.4d
BuildRequires: bison
BuildRequires: bzip2-devel
-BuildRequires: cracklib-devel >= 2.7-15
%{?with_curl:BuildRequires: curl-devel >= 7.9.8 }
BuildRequires: cyrus-sasl-devel
%{?with_db3:BuildRequires: db3-devel >= 3.1}
BuildRequires: elfutils-devel
%if %{with xml} || %{with xmlrpc}
BuildRequires: expat-devel
+%{?with_fam:BuildRequires: fam-devel}
%endif
%{?with_fdf:BuildRequires: fdftk-devel}
+BuildRequires: fcgi-devel
BuildRequires: flex
%if %{with mssql} || %{with sybase}
BuildRequires: freetds-devel
%endif
BuildRequires: freetype-devel >= 2.0
-%{?with_fribidi:BuildRequires: fribidi-devel >= 0.10.4}
BuildRequires: gd-devel >= 2.0.1
%{?with_gif:BuildRequires: gd-devel(gif)}
%{!?with_gif:BuildConflicts: gd-devel(gif)}
%{?with_cpdf:BuildRequires: libcpdf-devel >= 2.02r1-2}
BuildRequires: libjpeg-devel
BuildRequires: libltdl-devel >= 1.4
-BuildRequires: libmcal-devel
BuildRequires: libmcrypt-devel >= 2.4.4
BuildRequires: libpng-devel >= 1.0.8
BuildRequires: libtiff-devel
%{?with_ming:BuildRequires: ming-devel >= 0.1.0}
%{?with_mm:BuildRequires: mm-devel >= 1.3.0}
%{?with_mnogosearch:BuildRequires: mnogosearch-devel >= 3.2.6}
-BuildRequires: mysql-devel >= 3.23.32
+%{?with_mono:BuildRequires: mono-devel}
+BuildRequires: mysql-devel >= 4.0.0
BuildRequires: ncurses-devel
%{?with_ldap:BuildRequires: openldap-devel >= 2.0}
%if %{with openssl} || %{with ldap}
%{?with_msession:BuildRequires: phoenix-devel}
%{?with_pgsql:BuildRequires: postgresql-devel}
%{?with_pgsql:BuildRequires: postgresql-backend-devel >= 7.2}
-%{?with_qtdom:BuildRequires: qt-devel >= 2.2.0}
BuildRequires: readline-devel
%{?with_recode:BuildRequires: recode-devel >= 3.5d-3}
BuildRequires: rpm-php-pearprov >= 4.0.2-100
BuildRequires: rpmbuild(macros) >= 1.120
%{?with_xslt:BuildRequires: sablotron-devel >= 0.96}
+%{?with_sqlite:BuildRequires: sqlite-devel}
BuildRequires: t1lib-devel
+%{?with_tidy:BuildRequires: tidy-devel}
%{?with_snmp:BuildRequires: net-snmp-devel >= 5.0.7}
%{?with_odbc:BuildRequires: unixODBC-devel}
%{?with_xmlrpc:BuildRequires: xmlrpc-epi-devel}
%{?with_yaz:BuildRequires: yaz-devel >= 1.9}
-BuildRequires: zip
BuildRequires: zlib-devel >= 1.0.9
-BuildRequires: zziplib-devel
-#BuildRequires: fcgi-devel
# apache 1.3 vs apache 2.0
%if %{_apache2}
BuildRequires: apr-devel >= 1:0.9.4-1
ÍÁ¤ÔÅ ÔÁËÏÖ ×ÓÔÁÎÏ×ÉÔÉ ÐÁËÅÔ %{name}-common. ñËÝÏ ×ÁÍ ÐÏÔÒ¦ÂÅÎ
¦ÎÔÅÒÐÒÅÔÁÔÏÒ PHP × ÑËÏÓÔ¦ ÍÏÄÕÌÑ apache, ×ÓÔÁÎÏצÔØ ÐÁËÅÔ apache-php.
+%package fcgi
+Summary: PHP as FastCGI program
+Summary(pl): PHP jako program FastCGI
+Group: Development/Languages/PHP
+PreReq: %{name}-common = %{epoch}:%{version}
+Provides: php-program = %{epoch}:%{version}-%{release}
+
+%description fcgi
+PHP as FastCGI program.
+
+%description fcgi -l pl
+PHP jako program FastCGI.
+
%package cgi
Summary: PHP as CGI program
Summary(pl): PHP jako program CGI
%description cpdf -l pl
Modu³ PHP dodaj±cy obs³ugê plików PDF poprzez bibliotekê libcpdf.
-%package crack
-Summary: crack extension module for PHP
-Summary(pl): Modu³ crack dla PHP
-Group: Libraries
-Requires(post,preun): %{name}-common = %{epoch}:%{version}
-Requires: %{name}-common = %{epoch}:%{version}
-
-%description crack
-This is a dynamic shared object (DSO) for PHP that will add cracklib
-support to PHP.
-
-Warning: this is an experimental module.
-
-%description crack -l pl
-Modu³ PHP umo¿liwiaj±cy korzystanie z biblioteki cracklib.
-
-Uwaga: to jest modu³ eksperymentalny.
-
%package ctype
Summary: ctype extension module for PHP
Summary(pl): Modu³ ctype dla PHP
%description curl -l pl
Modu³ PHP umo¿liwiaj±cy korzystanie z biblioteki curl.
-%package db
-Summary: Old xDBM extension module for PHP
-Summary(pl): Modu³ xDBM dla PHP
-Group: Libraries
-Requires(post,preun): %{name}-common = %{epoch}:%{version}
-Requires: %{name}-common = %{epoch}:%{version}
-
-%description db
-This is an old dynamic shared object (DSO) for PHP that will add DBM
-databases support.
-
-Warning: this module is deprecated and does not support database
-locking correctly. Please use DBA extension which is a fully
-operational superset.
-
-%description db -l pl
-Stary modu³ PHP dodaj±cy obs³ugê baz danych DBM.
-
-Uwaga: ten modu³ jest przestarza³y i nie obs³uguje poprawnie
-blokowania bazy danych. Zamiast niego lepiej u¿ywaæ rozszerzenia DBA,
-które obs³uguje nadzbiór funkcjonalno¶ci tego modu³u.
-
%package dba
Summary: DBA extension module for PHP
Summary(pl): Modu³ DBA dla PHP
%description dio -l pl
Modu³ PHP dodaj±cy obs³ugê bezpo¶rednich operacji I/O na plikach.
-%package domxml
-Summary: DOM XML extension module for PHP
-Summary(pl): Modu³ DOM XML dla PHP
-Group: Libraries
-Requires(post,preun): %{name}-common = %{epoch}:%{version}
-Requires: %{name}-common = %{epoch}:%{version}
-
-%description domxml
-This is a dynamic shared object (DSO) for PHP that will add DOM XML
-support.
-
-Warning: this is an experimental module.
-
-%description domxml -l pl
-Modu³ PHP dodaj±cy obs³ugê DOM XML.
-
-Uwaga: to jest modu³ eksperymentalny.
-
%package exif
Summary: exif extension module for PHP
Summary(pl): Modu³ exif dla PHP
%description exif -l pl
Modu³ PHP dodaj±cy obs³ugê znaczników EXIF w plikach obrazków.
+%package fam
+Summary: FAM (File Alteration Monitor) module for PHP
+Summary(pl): Modu³ FAM (File Alteration Monitor) dla PHP
+Group: Libraries
+Requires(post,preun): %{name}-common = %{epoch}:%{version}
+Requires: %{name}-common = %{epoch}:%{version}
+
+%description fam
+This PHP module adds support for FAM (File Alteration Monitor).
+FAM monitors files and directories, notifying interested applications
+of changes.
+
+%description fam -l pl
+Modu³ PHP dodaj±cy obs³ugê dla FAM (File Alteration Monitor).
+FAM monitoruje pliki oraz katalogi, informuj±c zainteresowane aplikacje
+o zmianach.
+
%package fdf
Summary: FDF extension module for PHP
Summary(pl): Modu³ FDF dla PHP
Modu³ PHP dodaj±cy mo¿liwo¶æ dostêpu (tylko do odczytu) do baz danych
filePro.
-%package fribidi
-Summary: FriBiDi extension module for PHP
-Summary(pl): Modu³e FriBiDi dla PHP
-Group: Libraries
-Requires(post,preun): %{name}-common = %{epoch}:%{version}
-Requires: %{name}-common = %{epoch}:%{version}
-
-%description fribidi
-This extension is basically a wrapper for the FriBidi implementation
-of the Unicode Bidi algorithm. The need for such an algorithm rises
-from the bidirectional language usage done by applications.
-Arabic/Hebrew embedded within English is such a case.
-
-%description fribidi -l pl
-To rozszerzenie to g³ównie interfejs do implementacji FriBiDi
-algorytmu Unicode Bidi. Taki algorytm jest potrzebny w przypadku
-u¿ywania dwukierunkowego pisma w aplikacjach - na przyk³ad przy
-tek¶cie arabskim lub hebrajskim osadzonym wewn±trz angielskiego.
-
%package ftp
Summary: FTP extension module for PHP
Summary(pl): Modu³ FTP dla PHP
%description mbstring -l pl
Modu³ PHP dodaj±cy obs³ugê ci±gów znaków wielobajtowych.
-%package mcal
-Summary: mcal extension module for PHP
-Summary(pl): Modu³ mcal dla PHP
-Group: Libraries
-Requires(post,preun): %{name}-common = %{epoch}:%{version}
-Requires: %{name}-common = %{epoch}:%{version}
-
-%description mcal
-This is a dynamic shared object (DSO) for PHP that will add mcal
-(Modular Calendar Access Library) support.
-
-%description mcal -l pl
-Modu³ PHP umo¿liwiaj±cy korzystanie z biblioteki mcal (daj±cej dostêp
-do kalendarzy).
-
%package mcrypt
Summary: mcrypt extension module for PHP
Summary(pl): Modu³ mcrypt dla PHP
Modu³ PHP dodaj±cy pozwalaj±cy na dostêp do wolnodostêpnego silnika
wyszukiwarki mnoGoSearch.
+%package mono
+Summary: Mono extension module for PHP
+Summary(pl): Modu³ Mono dla PHP
+Group: Libraries
+Requires(post,preun): %{name}-common = %{epoch}:%{version}
+Requires: %{name}-common = %{epoch}:%{version}
+
+%description mono
+This is a dynamic shared object (DSO) for PHP that will allow you to
+access .NET assemblies via free Mono library.
+
+%description mono -l pl
+Modu³ PHP pozwalaj±cy na dostêp do wstawek .NET za pomoc± darmowej
+biblioteki Mono.
+
%package msession
Summary: msession extension module for PHP
Summary(pl): Modu³ msession dla PHP
%description oracle -l pl
Modu³ PHP umo¿liwiaj±cy dostêp do bazy danych Oracle 7.
-%package overload
-Summary: Overload extension module for PHP
-Summary(pl): Modu³ Overload dla PHP
-Group: Libraries
-Requires(post,preun): %{name}-common = %{epoch}:%{version}
-Requires: %{name}-common = %{epoch}:%{version}
-
-%description overload
-This is a dynamic shared object (DSO) for PHP that will add user-space
-object overloading support.
-
-Warning: this is an experimental module.
-
-%description overload -l pl
-Modu³ PHP umo¿liwiaj±cy przeci±¿anie obiektów.
-
-Uwaga: to jest modu³ eksperymentalny.
-
%package pcntl
Summary: Process Control extension module for PHP
Summary(pl): Modu³ Process Control dla PHP
Modu³ PHP umo¿liwiaj±cy korzystanie z pspella. Pozwala on na
sprawdzanie pisowni s³owa i sugerowanie poprawek.
-%package qtdom
-Summary: QT DOM extension module for PHP
-Summary(pl): Modu³ QT DOM dla PHP
-Group: Libraries
-Requires(post,preun): %{name}-common = %{epoch}:%{version}
-Requires: %{name}-common = %{epoch}:%{version}
-
-%description qtdom
-This PHP module adds QT DOM functions support.
-
-%description qtdom -l pl
-Modu³ PHP dodaj±cy obs³ugê funkcji QT DOM.
-
%package readline
Summary: readline extension module for PHP
Summary(pl): Modu³ readline dla PHP
Uwaga: to jest modu³ eksperymentalny.
+%package simplexml
+Summary: SimpleXML extension module for PHP
+Summary(pl): Modu³ SimpleXML dla PHP
+Group: Libraries
+Requires(post,preun): %{name}-common = %{epoch}:%{version}
+Requires: %{name}-%{common} = %{epoch}:%{version}
+
+%description simplexml
+This is a dynamic shared object (DSO) for PHP that will add SimpleXML
+support.
+
+%description simplexml -l pl
+Modu³ PHP dodaj±cy obs³ugê SimpleXML.
+
%package snmp
Summary: SNMP extension module for PHP
Summary(pl): Modu³ SNMP dla PHP
Uwaga: to jest modu³ eksperymentalny.
+%package sqlite
+Summary: SQLite extension module for PHP
+Summary(pl): Modu³ SQLite dla PHP
+Group: Libraries
+Requires(post,preun): %{name}-common = %{epoch}:%{version}
+Requires: %{name}-common = %{epoch}:%{version}
+
+%description sqlite
+SQLite is a C library that implements an embeddable SQL database engine.
+Programs that link with the SQLite library can have SQL database access
+without running a separate RDBMS process.
+
+SQLite is not a client library used to connect to a big database server.
+SQLite is the server. The SQLite library reads and writes directly to
+and from the database files on disk.
+
+%description sqlite -l pl
+SQLite jest napisan± w C bibliotek± implementuj±c± osadzalny silnik
+bazodanowy SQL. Program linkuj±cy siê z bibliotek± SQLite mo¿e mieæ
+dostêp do bazy SQL bez potrzeby uruchamiania dodatkowego procesu RDBMS.
+
+SQLite to nie klient baz danych - biblioteka nie ³±czy siê z serwerami
+baz danych. SQLite sam jest serwerem. Biblioteka SQLite czyta i zapisuje
+dane bezpo¶rednio z/do plików baz danych znajduj±cych siê na dysku.
+
%package sybase
Summary: Sybase DB extension module for PHP
Summary(pl): Modu³ Sybase DB dla PHP
%description sysvshm -l pl
Modu³ PHP umo¿liwiaj±cy korzystanie z pamiêci dzielonej SysV.
+%package tidy
+Summary: Tidy extension module for PHP
+Summary(pl): Modu³ Tidy dla PHP
+Group: Libraries
+Requires(post,preun): %{name}-common = %{epoch}:%{version}
+Requires: %{name}-common = %{epoch}:%{version}
+
+%description tidy
+This is a dynamic shared object (DSO) for PHP that will add Tidy
+support.
+
+%description tidy -l pl
+Modu³ PHP dodaj±cy umo¿liwiaj±cy korzystanie z tidy.
+
%package wddx
Summary: wddx extension module for PHP
Summary(pl): Modu³ wddx dla PHP
%description xml -l pl
Modu³ PHP umo¿liwiaj±cy parsowanie plików XML i obs³ugê zdarzeñ
-zwi±zanych z tymi plikami. Pozwala on tworzyæ analizatory XML i
+zwi±zanych z tymi plikami. Pozwala on tworzyæ analizatory XML-a i
nastêpnie definiowaæ procedury obs³ugi dla ró¿nych zdarzeñ XML.
%package xmlrpc
%description yp -l pl
Modu³ PHP dodaj±cy wsparcie dla NIS (Yellow Pages).
-%package zip
-Summary: zip extension module for PHP
-Summary(pl): Modu³ zip dla PHP
-Group: Libraries
-Requires(post,preun): %{name}-common = %{epoch}:%{version}
-Requires: %{name}-common = %{epoch}:%{version}
-
-%description zip
-This is a dynamic shared object (DSO) for PHP that will add ZZipLib
-(read-only access to ZIP archives) support.
-
-%description zip -l pl
-Modu³ PHP umo¿liwiaj±cy korzystanie z bibliotekli ZZipLib
-(pozwalaj±cej na odczyt archiwów ZIP).
-
%package zlib
Summary: Zlib extension module for PHP
Summary(pl): Modu³ zlib dla PHP
php-pear-* (php-pear-PEAR, php-pear-Archive_Tar, itp).
%prep
-%setup -q
+%setup -q -n %{name}-%{version}%{_pre}
%patch0 -p1
%patch1 -p1
-%patch2 -p1
+#%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
+cp php.ini-dist php.ini
%patch12 -p1
+# for ac2.53b/am1.6b - AC_LANG_CXX has AM_CONDITIONAL, so cannot be invoked
+# conditionally...
%patch13 -p1
%patch14 -p1
%patch15 -p1
%patch16 -p1
%patch17 -p1
-cp php.ini-dist php.ini
%patch18 -p1
-# for ac2.53b/am1.6b - AC_LANG_CXX has AM_CONDITIONAL, so cannot be invoked
-# conditionally...
%patch19 -p1
%patch20 -p1
%patch21 -p1
%patch22 -p1
-%patch23 -p1
-%patch24 -p1
-%patch25 -p1
-%patch26 -p1
-%patch27 -p1
-%patch28 -p1
-%patch29 -p1
-%patch30 -p1
-%patch31 -p0
-%patch32 -p1
%build
CFLAGS="%{rpmcflags} -DEAPI=1 -I/usr/X11R6/include"
%{__aclocal}
%{__autoconf}
PROG_SENDMAIL="/usr/lib/sendmail"; export PROG_SENDMAIL
-for i in cgi cli apxs ; do
+for i in fcgi cgi cli apxs ; do
%configure \
`[ $i = cgi ] && echo --enable-discard-path` \
`[ $i = cli ] && echo --disable-cgi` \
--enable-dbx=shared \
--enable-dio=shared \
--enable-exif=shared \
- --enable-ftp=shared \
--enable-filepro=shared \
+ --enable-ftp=shared \
--enable-gd-native-ttf \
+ --enable-gd-jus-conf \
--enable-magic-quotes \
- --enable-mbstring=shared,all --enable-mbregex \
- --enable-overload=shared \
+ --enable-mbstring=shared,all \
+ --enable-mbregex \
--enable-pcntl=shared \
--enable-posix=shared \
--enable-session \
--enable-shared \
--enable-shmop=shared \
+ %{?with_simplexml:--enable-simplexml=shared} \
--enable-sysvmsg=shared \
--enable-sysvsem=shared \
--enable-sysvshm=shared \
--enable-yp=shared \
--with-bz2=shared \
%{?with_cpdf:--with-cpdflib=shared} \
- --with-crack=shared \
%{!?with_curl:--without-curl}%{?with_curl:--with-curl=shared} \
- --with-db=shared \
%{?with_db3:--with-db3}%{!?with_db3:--with-db4} \
--with-dbase=shared \
%{?with_xml:--with-dom=shared} \
--without-expat-dir \
%endif
%{?with_fdf:--with-fdftk=shared} \
- %{?with_fribidi:--with-fribidi=shared} \
--with-iconv=shared \
+ %{?with_fam:--with-fam=shared} \
--with-filepro=shared \
--with-freetype-dir=shared \
--with-gettext=shared \
--with-gd=shared,/usr \
--with-gdbm \
--with-gmp=shared \
- --with-hyperwave=shared \
+ %{?with_hyperwave:--with-hwapi=shared} \
%{?with_imap:--with-imap=shared --with-imap-ssl} \
%{?with_interbase:--with-interbase=shared%{!?with_interbase_inst:,/usr}} \
%{?with_java:--with-java=/usr/lib/java} \
- --with-jpeg-dir=shared,/usr \
+ --with-jpeg-dir=/usr \
%{?with_ldap:--with-ldap=shared} \
- --with-mcal=shared,/usr \
--with-mcrypt=shared \
%{?with_mhash:--with-mhash=shared} \
--with-mime-magic=shared,/usr/share/file/magic.mime \
%{?with_ming:--with-ming=shared} \
%{?with_mm:--with-mm} \
%{!?with_mnogosearch:--without-mnogosearch}%{?with_mnogosearch:--with-mnogosearch=shared,/usr} \
+ %{?with_mono:--with-mono} \
%{?with_msession:--with-msession=shared}%{!?with_msession:--without-msession} \
%{?with_mssql:--with-mssql=shared} \
--with-mysql=shared,/usr \
--with-mysql-sock=/var/lib/mysql/mysql.sock \
--with-ncurses=shared \
%{?with_oci8:--with-oci8=shared} \
- %{?with_openssl:--with-openssl} \
+ %{?with_openssl:--with-openssl=shared} \
%{?with_oracle:--with-oracle=shared} \
%{!?with_pcre:--without-pcre-regex}%{?with_pcre:--with-pcre-regex=shared} \
%{?with_pdf:--with-pdflib=shared} \
--with-pear=%{php_pear_dir} \
%{!?with_pgsql:--without-pgsql}%{?with_pgsql:--with-pgsql=shared,/usr} \
- --with-png-dir=shared,/usr \
+ --with-png-dir=/usr \
%{?with_pspell:--with-pspell=shared} \
--with-readline=shared \
%{?with_recode:--with-recode=shared} \
--with-regex=php \
- %{?with_qtdom:--with-qtdom=shared} \
--without-sablot-js \
%{?with_snmp:--with-snmp=shared} \
%{?with_sybase:--with-sybase-ct=shared,/usr --with-sybase=shared,/usr} \
+ %{?with_sqlite:--with-sqlite=shared,/usr} \
--with-t1lib=shared \
- --with-tiff-dir=shared,/usr \
+ %{?with_tidy:--with-tidy=shared} \
+ --with-tiff-dir=/usr \
%{?with_odbc:--with-unixODBC=shared} \
%{!?with_xmlrpc:--without-xmlrpc}%{?with_xmlrpc:--with-xmlrpc=shared,/usr} \
+ --with-xsl \
%{?with_xslt:--with-xslt-sablot=shared} \
%{?with_yaz:--with-yaz=shared} \
- --with-zip=shared \
--with-zlib=shared \
--with-zlib-dir=shared,/usr
-# --with-openssl=shared not supported in 4.3.2
cp -f Makefile Makefile.$i
# left for debugging purposes
# --enable-session=shared
# %{!?with_mm:--with-mm=shared,no}%{?with_mm:--with-mm=shared}
-# TODO:
-# --with-qtdom=shared
-
%{__make}
# fix install paths, avoid evil rpaths
%{__perl} -pi -e "s|^libdir=.*|libdir='%{_libdir}'|" libphp_common.la
-%{__perl} -pi -e "s|^libdir=.*|libdir='%{_libdir}/apache'|" libphp4.la
-%{__perl} -pi -e 's|^(relink_command=.* -rpath )[^ ]*/libs |$1%{_libdir}/apache |' libphp4.la
+%{__perl} -pi -e "s|^libdir=.*|libdir='%{_libdir}/apache'|" libphp5.la
+%{__perl} -pi -e 's|^(relink_command=.* -rpath )[^ ]*/libs |$1%{_libdir}/apache |' libphp5.la
+
+# for fcgi: -DDISCARD_PATH=0 -DENABLE_PATHINFO_CHECK=1 -DFORCE_CGI_REDIRECT=0
+# -DHAVE_FILENO_PROTO=1 -DHAVE_FPOS=1 -DHAVE_LIBNSL=1(die) -DHAVE_SYS_PARAM_H=1
+# -DPHP_FASTCGI=1 -DPHP_FCGI_STATIC=1 -DPHP_WRITE_STDOUT=1
+
+%{__make} sapi/cgi/php -f Makefile.fcgi \
+ CFLAGS_CLEAN="%{rpmcflags} -DDISCARD_PATH=0 -DENABLE_PATHINFO_CHECK=1 -DFORCE_CGI_REDIRECT=0 -DHAVE_FILENO_PROTO=1 -DHAVE_FPOS=1 -DHAVE_LIBNSL=1 -DHAVE_SYS_PARAM_H=1 -DPHP_FASTCGI=1 -DPHP_FCGI_STATIC=1 -DPHP_WRITE_STDOUT=1"
+cp -r sapi/cgi sapi/fcgi
+rm -rf sapi/cgi/.libs sapi/cgi/*.lo
# notes:
# -DENABLE_CHROOT_FUNC=1 (cgi,fcgi) is used in ext/standard/dir.c (libphp_common)
%{__make} sapi/cgi/php -f Makefile.cgi \
CFLAGS_CLEAN="%{rpmcflags} -DDISCARD_PATH=1 -DENABLE_PATHINFO_CHECK=1 -DFORCE_CGI_REDIRECT=0 -DPHP_WRITE_STDOUT=1"
-# for fcgi: -DDISCARD_PATH=0 -DENABLE_PATHINFO_CHECK=1 -DFORCE_CGI_REDIRECT=0
-# -DHAVE_FILENO_PROTO=1 -DHAVE_FPOS=1 -DHAVE_LIBNSL=1(die) -DHAVE_SYS_PARAM_H=1
-# -DPHP_FASTCGI=1 -DPHP_FCGI_STATIC=1 -DPHP_WRITE_STDOUT=1
-
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{_libdir}/{php,apache},%{_sysconfdir}/{apache,cgi}} \
%{__make} install \
INSTALL_ROOT=$RPM_BUILD_ROOT \
- INSTALL_IT="\$(LIBTOOL) --mode=install install libphp_common.la $RPM_BUILD_ROOT%{_libdir} ; \$(LIBTOOL) --mode=install install libphp4.la $RPM_BUILD_ROOT%{_libdir}/apache ; \$(LIBTOOL) --mode=install install sapi/cgi/php $RPM_BUILD_ROOT%{_bindir}/php.cgi" \
+ INSTALL_IT="\$(LIBTOOL) --mode=install install libphp_common.la $RPM_BUILD_ROOT%{_libdir} ; \$(LIBTOOL) --mode=install install libphp5.la $RPM_BUILD_ROOT%{_libdir}/apache ; \$(LIBTOOL) --mode=install install sapi/cgi/php $RPM_BUILD_ROOT%{_bindir}/php.cgi ; \$(LIBTOOL) --mode=install install sapi/fcgi/php $RPM_BUILD_ROOT%{_bindir}/php.fcgi" \
INSTALL_CLI="\$(LIBTOOL) --mode=install install sapi/cli/php $RPM_BUILD_ROOT%{_bindir}/php.cli"
+# ToDo:
+# Why make install doesn't install libphp5.so ?
+install libs/libphp5.so $RPM_BUILD_ROOT%{_libdir}/apache
+
# compatibility (/usr/bin/php used to be CGI SAPI)
ln -sf php.cgi $RPM_BUILD_ROOT%{_bindir}/php
install php.ini $RPM_BUILD_ROOT%{_sysconfdir}/php.ini
install %{SOURCE6} %{SOURCE7} %{SOURCE8} $RPM_BUILD_ROOT%{_sysconfdir}
+install %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/php-cgi-fcgi.ini
install %{SOURCE2} php.gif $RPM_BUILD_ROOT%{httpdir}/icons
install %{SOURCE4} $RPM_BUILD_ROOT%{_sbindir}
install %{SOURCE5} $RPM_BUILD_ROOT/etc/httpd/httpd.conf/70_mod_php.conf
# Directories created for pear:
install -d $RPM_BUILD_ROOT%{php_pear_dir}/{Archive,Console,Crypt,HTML/Template,Image,Net,Science,XML}
-rm -f $RPM_BUILD_ROOT%{_libdir}/apache/libphp4.la
+rm -f $RPM_BUILD_ROOT%{_libdir}/apache/libphp5.la
%clean
rm -rf $RPM_BUILD_ROOT
%if ! %{_apache2}
%{__perl} -pi -e 's|^#AddType application/x-httpd-php \.php|AddType application/x-httpd-php .php|' \
/etc/httpd/httpd.conf
-%{apxs} -e -a -n php4 %{_pkglibdir}/libphp4.so 1>&2
+%{apxs} -e -a -n php5 %{_pkglibdir}/libphp5.so 1>&2
%endif
if [ -f /var/lock/subsys/httpd ]; then
/etc/rc.d/init.d/httpd restart 1>&2
%else
%preun
if [ "$1" = "0" ]; then
- %{apxs} -e -A -n php4 %{_pkglibdir}/libphp4.so 1>&2
+ %{apxs} -e -A -n php5 %{_pkglibdir}/libphp5.so 1>&2
%{__perl} -pi -e \
's|^AddType application/x-httpd-php \.php|#AddType application/x-httpd-php .php|' \
/etc/httpd/httpd.conf
%{_sbindir}/php-module-install remove cpdf %{_sysconfdir}/php.ini
fi
-%post crack
-%{_sbindir}/php-module-install install crack %{_sysconfdir}/php.ini
-
-%preun crack
-if [ "$1" = "0" ]; then
- %{_sbindir}/php-module-install remove crack %{_sysconfdir}/php.ini
-fi
-
%post ctype
%{_sbindir}/php-module-install install ctype %{_sysconfdir}/php.ini
%{_sbindir}/php-module-install remove curl %{_sysconfdir}/php.ini
fi
-%post db
-%{_sbindir}/php-module-install install db %{_sysconfdir}/php.ini
-
-%preun db
-if [ "$1" = "0" ]; then
- %{_sbindir}/php-module-install remove db %{_sysconfdir}/php.ini
-fi
-
%post dba
%{_sbindir}/php-module-install install dba %{_sysconfdir}/php.ini
%{_sbindir}/php-module-install remove dio %{_sysconfdir}/php.ini
fi
-%post domxml
-%{_sbindir}/php-module-install install domxml %{_sysconfdir}/php.ini
-
-%preun domxml
-if [ "$1" = "0" ]; then
- %{_sbindir}/php-module-install remove domxml %{_sysconfdir}/php.ini
-fi
-
%post exif
%{_sbindir}/php-module-install install exif %{_sysconfdir}/php.ini
%{_sbindir}/php-module-install remove exif %{_sysconfdir}/php.ini
fi
+%post fam
+%{_sbindir}/php-module-install install fam %{_sysconfdir}/php.ini
+
+%preun fam
+if [ "$1" = "0" ]; then
+ %{_sbindir}/php-module-install remove fam %{_sysconfdir}/php.ini
+fi
+
%post fdf
%{_sbindir}/php-module-install install fdf %{_sysconfdir}/php.ini
%{_sbindir}/php-module-install remove filepro %{_sysconfdir}/php.ini
fi
-%post fribidi
-%{_sbindir}/php-module-install install fribidi %{_sysconfdir}/php.ini
-
-%preun fribidi
-if [ "$1" = "0" ]; then
- %{_sbindir}/php-module-install remove fribidi %{_sysconfdir}/php.ini
-fi
-
%post ftp
%{_sbindir}/php-module-install install ftp %{_sysconfdir}/php.ini
%{_sbindir}/php-module-install remove mbstring %{_sysconfdir}/php.ini
fi
-%post mcal
-%{_sbindir}/php-module-install install mcal %{_sysconfdir}/php.ini
-
-%preun mcal
-if [ "$1" = "0" ]; then
- %{_sbindir}/php-module-install remove mcal %{_sysconfdir}/php.ini
-fi
-
%post mcrypt
%{_sbindir}/php-module-install install mcrypt %{_sysconfdir}/php.ini
%{_sbindir}/php-module-install remove mnogosearch %{_sysconfdir}/php.ini
fi
+%post mono
+%{_sbindir}/php-module-install install mono %{_sysconfdir}/php.ini
+
+%preun mono
+if [ "$1" = "0" ]; then
+ %{_sbindir}/php-module-install remove mono %{_sysconfdir}/php.ini
+fi
+
%post msession
%{_sbindir}/php-module-install install msession %{_sysconfdir}/php.ini
%{_sbindir}/php-module-install remove oracle %{_sysconfdir}/php.ini
fi
-%post overload
-%{_sbindir}/php-module-install install overload %{_sysconfdir}/php.ini
-
-%preun overload
-if [ "$1" = "0" ]; then
- %{_sbindir}/php-module-install remove overload %{_sysconfdir}/php.ini
-fi
-
%post pcntl
if [ -f %{_sysconfdir}/php-cgi.ini ]; then
%{_sbindir}/php-module-install install pcntl %{_sysconfdir}/php-cgi.ini
%{_sbindir}/php-module-install remove pspell %{_sysconfdir}/php.ini
fi
-%post qtdom
-%{_sbindir}/php-module-install install qtdom %{_sysconfdir}/php.ini
-
-%preun qtdom
-if [ "$1" = "0" ]; then
- %{_sbindir}/php-module-install remove qtdom %{_sysconfdir}/php.ini
-fi
-
%post readline
if [ -f %{_sysconfdir}/php-cgi.ini ]; then
%{_sbindir}/php-module-install install readline %{_sysconfdir}/php-cgi.ini
%{_sbindir}/php-module-install remove yp %{_sysconfdir}/php.ini
fi
-%post zip
-%{_sbindir}/php-module-install install zip %{_sysconfdir}/php.ini
-
-%preun zip
-if [ "$1" = "0" ]; then
- %{_sbindir}/php-module-install remove zip %{_sysconfdir}/php.ini
-fi
-
%post zlib
%{_sbindir}/php-module-install install zlib %{_sysconfdir}/php.ini
%if %{_apache2}
%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/httpd/httpd.conf/*_mod_php.conf
%endif
-%attr(755,root,root) %{_libdir}/apache/libphp4.so
+%attr(755,root,root) %{_libdir}/apache/libphp5.so
%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/php-apache.ini
+%files fcgi
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/php.fcgi
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/php-cgi-fcgi.ini
+
%files cgi
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/php.cgi
%attr(755,root,root) %{extensionsdir}/cpdf.so
%endif
-%files crack
-%defattr(644,root,root,755)
-%attr(755,root,root) %{extensionsdir}/crack.so
-
%files ctype
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/ctype.so
%attr(755,root,root) %{extensionsdir}/curl.so
%endif
-%files db
-%defattr(644,root,root,755)
-%attr(755,root,root) %{extensionsdir}/db.so
-
%files dba
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/dba.so
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/dio.so
-%if %{with xml}
-%files domxml
+%if %{with fam}
+%files fam
%defattr(644,root,root,755)
-%attr(755,root,root) %{extensionsdir}/domxml.so
+%attr(755,root,root) %{extensionsdir}/fam.so
%endif
%if %{with fdf}
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/filepro.so
-%if %{with fribidi}
-%files fribidi
-%defattr(644,root,root,755)
-%doc ext/fribidi/{CREDITS,README}
-%attr(755,root,root) %{extensionsdir}/fribidi.so
-%endif
-
%files ftp
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/ftp.so
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/gmp.so
+%if %{with hyperwave}
%files hyperwave
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/hyperwave.so
+%endif
%files iconv
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/mbstring.so
-%files mcal
-%defattr(644,root,root,755)
-%attr(755,root,root) %{extensionsdir}/mcal.so
-
%files mcrypt
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/mcrypt.so
%attr(755,root,root) %{extensionsdir}/mnogosearch.so
%endif
+%if %{with mono}
+%files mono
+%defattr(644,root,root,755)
+%attr(755,root,root) %{extensionsdir}/mono.so
+%endif
+
%if %{with msession}
%files msession
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/odbc.so
%endif
-# shared openssl module not supported in 4.3.2
-#%if %{with openssl}
-#%files openssl
-#%defattr(644,root,root,755)
-#%attr(755,root,root) %{extensionsdir}/openssl.so
-#%endif
+%if %{with openssl}
+%files openssl
+%defattr(644,root,root,755)
+%attr(755,root,root) %{extensionsdir}/openssl.so
+%endif
%if %{with oracle}
%files oracle
%attr(755,root,root) %{extensionsdir}/oracle.so
%endif
-%files overload
-%defattr(644,root,root,755)
-%attr(755,root,root) %{extensionsdir}/overload.so
-
%files pcntl
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/pcntl.so
%attr(755,root,root) %{extensionsdir}/pspell.so
%endif
-%if %{with qtdom}
-%files qtdom
-%defattr(644,root,root,755)
-%attr(755,root,root) %{extensionsdir}/qtdom.so
-%endif
-
%files readline
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/readline.so
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/sysvshm.so
+%if %{with tidy}
+%files tidy
+%defattr(644,root,root,755)
+%attr(755,root,root) %{extensionsdir}/tidy.so
+%endif
+
%if %{with wddx}
%files wddx
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/xml.so
%endif
+%if %{with simplexml}
+%files simplexml
+%defattr(644,root,root,755)
+%attr(755,roor,root) %{extensionsdir}/simplexml.so
+%endif
+
%if %{with xmlrpc}
%files xmlrpc
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/xmlrpc.so
%endif
-%if %{with xslt}
-%files xslt
-%defattr(644,root,root,755)
-%attr(755,root,root) %{extensionsdir}/xslt.so
-%endif
+#%if %{with xslt}
+#%files xslt
+#%defattr(644,root,root,755)
+#%attr(755,root,root) %{extensionsdir}/xslt.so
+#%endif
%if %{with yaz}
%files yaz
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/yp.so
-%files zip
-%defattr(644,root,root,755)
-%attr(755,root,root) %{extensionsdir}/zip.so
-
%files zlib
%defattr(644,root,root,755)
%attr(755,root,root) %{extensionsdir}/zlib.so