summaryrefslogtreecommitdiff
path: root/makerpm
diff options
context:
space:
mode:
Diffstat (limited to 'makerpm')
-rw-r--r--makerpm203
1 files changed, 203 insertions, 0 deletions
diff --git a/makerpm b/makerpm
new file mode 100644
index 0000000..07bd372
--- /dev/null
+++ b/makerpm
@@ -0,0 +1,203 @@
+#! /bin/sh
+
+# Based slightly on an original by John H Terpstra but not much left of his.
+# S Liddicott 1999 sam@campbellsci.co.uk
+
+PREFIX="php"
+TARDIR="`basename \`pwd\``"
+RELEASE=${1:-1}
+VERSION=${2:-`echo $TARDIR | sed "s/$PREFIX-//g"`}
+
+if [ "$VERSION" = "" ]
+then cat <<"EOH"
+$PREFIX source needs to be installed in a folder that contains the version
+number, e.g. ${PREFIX}5 or ${PREFIX}5b2
+EOH
+fi
+
+echo "Usage:"
+echo "$0 <release> <version>"
+echo
+echo "e.g.:"
+echo "$0 2"
+echo -n "Building RPM version $VERSION, release: $RELEASE "
+sleep 1 ; echo -n . ; sleep 1 ; echo -n . ; sleep 1 ; echo -n .
+echo
+
+TAR=php-$VERSION.tar.gz
+SPEC=php-$VERSION.spec
+PREQUIRES=`rpm -q --provides apache|grep "\(webserver\|httpd\)"`
+if [ "$PREQUIRES" = "" ]
+then PREQUIRES="webserver"
+fi
+
+# write out the .spec file
+sed -e "s/PVERSION/$VERSION/g" \
+ -e "s/PRELEASE/$RELEASE/g" \
+ -e "s/TARDIR/$TARDIR/g" \
+ -e "s/PREQUIRES/$PREQUIRES/g" \
+ > $SPEC <<'EOF'
+Summary: PHP 5 - A powerful scripting language
+Name: php5
+Version: PVERSION
+Release: PRELEASE
+Group: Networking/Daemons
+Source0: http://www.php.net/distributions/php-%{PACKAGE_VERSION}.tar.gz
+Copyright: PHP License
+BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
+Requires: PREQUIRES
+
+%description
+PHP 5 is a powerful apache module that adds scripting and database connection
+capabilities to the apache server. This version includes the "php_cgi" binary
+for suExec and stand alone php scripts too.
+
+%prep
+%setup -q -n TARDIR
+#mkdir manual; cd manual && tar xzf $RPM_SOURCE_DIR/php3-manual.tar.gz
+./buildconf
+
+%build
+# first the standalone (why can't you build both at once?)
+# need to run this under sh or it breaks
+
+sh ./configure --prefix=/usr \
+ --with-config-file-path=%{_sysconfdir} \
+ --disable-cli \
+ --without-pear \
+ --enable-force-cgi-redirect \
+ --enable-safe-mode \
+ --with-exec-dir=/usr/bin \
+ --with-mysql \
+ --with-zlib \
+ --enable-xml \
+ --enable-wddx \
+ --with-gd \
+ --enable-shared \
+
+make
+mv sapi/cgi/php php.keepme
+
+# then the apache module
+test -f config.cache && rm -f config.cache
+sh ./configure --prefix=/usr \
+ --with-apxs=/usr/sbin/apxs \
+ --enable-cli \
+ --with-config-file-path=%{_sysconfdir} \
+ --enable-safe-mode \
+ --with-exec-dir=/usr/bin \
+ --with-mysql \
+ --with-zlib \
+ --enable-xml \
+ --enable-wddx \
+ --with-gd \
+ --enable-shared \
+
+# --with-pgsql=shared \
+
+make clean
+make
+# restore cgi version
+mv php.keepme sapi/cgi/php
+
+%install
+rm -rf $RPM_BUILD_ROOT
+mkdir -p $RPM_BUILD_ROOT%{_libdir}/apache
+install -m 0755 .libs/libphp5.so $RPM_BUILD_ROOT%{_libdir}/apache
+mkdir -p $RPM_BUILD_ROOT%{_bindir}
+install -m 0755 sapi/cli/php $RPM_BUILD_ROOT%{_bindir}
+install -m 0755 sapi/cgi/php $RPM_BUILD_ROOT%{_bindir}/php_cgi
+mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
+install -m 0755 sapi/cli/php.1 $RPM_BUILD_ROOT%{_mandir}/man1
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}
+install -m 0755 php.ini-recommended $RPM_BUILD_ROOT%{_sysconfdir}/php.ini
+mkdir -p $RPM_BUILD_ROOT%{_libdir}/php/extensions
+install -m 0755 modules/*.so $RPM_BUILD_ROOT%{_libdir}/php/extensions
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%changelog
+* Thu Nov 27 2003 Marcus Boerger <helly@php.net>
+- Fix requirements for older systems.
+- Fix rpm build directory for the major distributions.
+- Fix config dir.
+- Rename package to php.
+- Add gd extension.
+- Support building of shared extensions.
+- Build CLI only once.
+
+* Thu Oct 31 2003 Marcus Boerger <helly@php.net>
+- Update version to 5.
+- Remove unsure external requirements.
+- Remove non existing directories
+- Fix targets.
+- Install both CLI and CGI.
+- Install manpage.
+- Install ini.
+
+* Mon Mar 04 2002 Arjen Lentz <agl@bitbike.com>
+- Fix path and remove --with-imap due to conflicts with kerberos.
+
+* Fri Jun 29 2001 Jani Taskinen <sniper@iki.fi>
+- Removed some useless configure options. Made the tar names correct.
+
+* Sun Apr 30 2000 Joey Smith <joey@samaritan.com>
+- Small fix: Description still referred to package as PHP3.
+
+* Wed Jul 21 1999 Sam Liddicott <sam@campbellsci.co.uk>
+- added php4b1 and modified cgi building rules so it doesn't break module
+
+* Wed Mar 17 1999 Sam Liddicott <sam@campbellsci.co.uk>
+- Stuffed in 3.0.7 source tar and added "php" as a build destination
+
+* Mon Oct 12 1998 Cristian Gafton <gafton@redhat.com>
+- rebuild for apache 1.3.3
+
+* Thu Oct 08 1998 Preston Brown <pbrown@redhat.com>
+- updated to 3.0.5, fixes nasty bugs in 3.0.4.
+
+* Sun Sep 27 1998 Cristian Gafton <gafton@redhat.com>
+- updated to 3.0.4 and recompiled for apache 1.3.2
+
+* Thu Sep 03 1998 Preston Brown <pbrown@redhat.com>
+- improvements; builds with apache-devel package installed.
+
+* Tue Sep 01 1998 Preston Brown <pbrown@redhat.com>
+- Made initial cut for PHP3.
+
+%files
+%defattr(-,root,root)
+%{_libdir}/apache/libphp5.so
+%{_bindir}/php
+%{_bindir}/php_cgi
+%{_mandir}/man1/php.1*
+%{_sysconfdir}/php.ini
+%{_libdir}/php/extensions/*.so
+
+%doc TODO CODING_STANDARDS CREDITS ChangeLog LICENSE NEWS
+EOF
+
+RPMBASE=/usr/src/redhat
+for i in /usr/src/redhat /usr/src/packages /usr/src/RPM; do
+ if test -d $i; then
+ RPMBASE=$i
+ break
+ fi
+done
+
+RPMDIR=${RPMBASE}/RPMS
+SPECDIR=${RPMBASE}/SPECS
+SRCDIR=${RPMBASE}/SOURCES
+
+(
+make clean
+find . -name config.cache -exec rm -f '{}' \;
+cd ..
+tar czvf ${SRCDIR}/${TAR} $TARDIR )
+
+cp -a $SPEC $SPECDIR/${SPEC}
+#cp -a *.patch $SRCDIR
+cd $SRCDIR
+cd $SPECDIR
+rpm -ba -v ${SPEC}