| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042 |
- ##
- ## apache.spec -- OpenPKG RPM Specification
- ## Copyright (c) 2000-2003 The OpenPKG Project <http://www.openpkg.org/>
- ## Copyright (c) 2000-2003 Ralf S. Engelschall <rse@engelschall.com>
- ## Copyright (c) 2000-2003 Cable & Wireless <http://www.cw.com/>
- ##
- ## Permission to use, copy, modify, and distribute this software for
- ## any purpose with or without fee is hereby granted, provided that
- ## the above copyright notice and this permission notice appear in all
- ## copies.
- ##
- ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
- ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- ## SUCH DAMAGE.
- ##
- ## ATTENTION: This package specification is a cruel one. It allows
- ## one to build an Apache package in hundreds of variants with just
- ## a single specification through the use of lots of condition
- ## variables. The reason for this attempt is that it was born out of
- ## the needs from the daily practice at an ISP. So do not treat this
- ## specification as a reference example of any kind, except perhaps as
- ## a example of what is maximum possible with RPM and how far one can
- ## go with the macro mechanism. But do not try to repeat this!
- # package component versions
- %define V_apache 1.3.29
- %define V_mod_ssl 2.8.16-1.3.29
- %define V_mod_perl 1.29
- %define V_mod_php 4.3.3
- %define V_mod_php3 3.0.18
- %define V_mod_dav 1.0.3-1.3.6
- %define V_mod_layout 3.2.1
- %define V_mod_macro 1.1.2
- %define V_mod_auth_pam 1.1.1
- %define V_mod_auth_ldap 2.4.1
- %define V_mod_gzip 1.3.19.1a
- %define V_mod_fastcgi 2.4.0
- %define V_mod_throttle 312
- %define V_mod_access_referer 1.0.2
- %define V_mod_roaming 1.0.2
- %define V_mod_relocate 1.0
- # package information
- Name: apache
- Summary: Apache HTTP Server
- URL: http://httpd.apache.org/
- Vendor: Apache Software Foundation
- Packager: The OpenPKG Project
- Distribution: OpenPKG [BASE]
- Group: Web
- License: ASF
- Version: %{V_apache}
- Release: 20031101
- # package options (suexec related)
- %option with_suexec yes
- %option with_suexec_caller %{l_nusr}
- %option with_suexec_userdir public_html
- # package options (additionally used Apache modules; can be enabled without thinking)
- %option with_mod_ssl no
- %option with_mod_perl no
- %option with_mod_php no
- %option with_mod_php3 no
- %option with_mod_dav no
- %option with_mod_layout no
- %option with_mod_macro no
- # package options (additionally used Apache modules; you have to know what you do)
- %option with_mod_auth_ldap no
- %option with_mod_auth_pam no
- %option with_mod_gzip no
- %option with_mod_fastcgi no
- %option with_mod_throttle no
- %option with_mod_access_referer no
- %option with_mod_roaming no
- %option with_mod_relocate no
- # package options (optional PHP4 specific settings; requires "with_mod_php")
- %option with_mod_php_calendar no
- %option with_mod_php_mysql no
- %option with_mod_php_pgsql no
- %option with_mod_php_gd no
- %option with_mod_php_db no
- %option with_mod_php_debug no
- %option with_mod_php_pdflib no
- %option with_mod_php_zlib no
- %option with_mod_php_bzip2 no
- %option with_mod_php_openssl no
- %option with_mod_php_openldap no
- %option with_mod_php_openldapsasl no
- %option with_mod_php_mm no
- %option with_mod_php_pcre no
- %option with_mod_php_ftp no
- %option with_mod_php_java no
- %option with_mod_php_oci7 no
- %option with_mod_php_oci8 no
- %option with_mod_php_freetype no
- %option with_mod_php_gettext no
- %option with_mod_php_imap no
- %option with_mod_php_xml no
- %option with_mod_php_dom no
- %option with_mod_php_bc no
- %option with_mod_php_transsid no
- %option with_mod_php_curl no
- %option with_mod_php_mhash no
- %option with_mod_php_wddx no
- %option with_mod_php_gdbm no
- %option with_mod_php_versioning no
- %option with_mod_php_snmp no
- %option with_mod_php_unixodbc no
- %option with_mod_php_mbregex no
- %option with_mod_php_mbstring no
- # package options (optional PHP3 specific settings; requires "with_mod_php3")
- %option with_mod_php3_ftp no
- %option with_mod_php3_gd no
- %option with_mod_php3_jpeg no
- %option with_mod_php3_mysql no
- %option with_mod_php3_openssl no
- %option with_mod_php3_zlib no
- # package options (braindead ones only)
- %option with_gdbm_ndbm no
- %option with_shared_core no
- %option with_shared_chain no
- # package options (debugging)
- %option with_debug no
- # fixing implicit inter-module dependencies and correlations
- %if "%{with_mod_php}" == "yes"
- %if "%{with_mod_php3}" == "yes"
- %{error:build-time options 'with_mod_php' and 'with_mod_php3' conflict}
- %endif
- %if "%{with_mod_ssl}" == "yes"
- %undefine with_mod_php_openssl
- %undefine with_mod_php_mm
- %define with_mod_php_openssl yes
- %define with_mod_php_mm yes
- %endif
- %if "%{with_mod_php_freetype}" == "yes"
- %undefine with_mod_php_gd
- %define with_mod_php_gd yes
- %endif
- %if "%{with_mod_php_mysql}" == "yes" || "%{with_mod_php_pdflib}" == "yes" || "%{with_mod_php_gd}" == "yes" || "%{with_mod_php_dom}" == "yes"
- %undefine with_mod_php_zlib
- %define with_mod_php_zlib yes
- %endif
- %if "%{with_mod_php_pgsql}" == "yes"
- %undefine with_mod_php_openssl
- %define with_mod_php_openssl yes
- %endif
- %endif
- %if "%{with_mod_php3}" == "yes"
- %if "%{with_mod_ssl}" == "yes"
- %undefine with_mod_php3_openssl
- %define with_mod_php3_openssl yes
- %endif
- %if "%{with_mod_php3_mysql}" == "yes"
- %undefine with_mod_php3_zlib
- %define with_mod_php3_zlib yes
- %endif
- %endif
- %if "%{with_mod_php_gdbm}" == "yes"
- %undefine with_gdbm_ndbm
- %define with_gdbm_ndbm yes
- %endif
- # list of sources
- Source0: http://www.apache.org/dist/httpd/apache_%{V_apache}.tar.gz
- Source1: http://www.modssl.org/source/mod_ssl-%{V_mod_ssl}.tar.gz
- Source2: http://perl.apache.org/dist/mod_perl-%{V_mod_perl}.tar.gz
- Source3: http://www.php.net/distributions/php-%{V_mod_php}.tar.gz
- Source4: http://www.webdav.org/mod_dav/mod_dav-%{V_mod_dav}.tar.gz
- Source5: http://software.tangent.org/download/mod_layout-%{V_mod_layout}.tar.gz
- Source6: http://www.cri.ensmp.fr/~coelho/mod_macro/mod_macro-%{V_mod_macro}.tar.gz
- Source7: http://pam.sourceforge.net/mod_auth_pam/dist/mod_auth_pam.tar.gz
- Source8: http://www.remotecommunications.com/apache/mod_gzip/src/%{V_mod_gzip}/mod_gzip.c
- Source9: http://www.fastcgi.com/dist/mod_fastcgi-%{V_mod_fastcgi}.tar.gz
- Source10: http://www.snert.com/Software/mod_throttle/mod_throttle%{V_mod_throttle}.tgz
- Source11: http://download.sourceforge.net/accessreferer/mod_access_referer-%{V_mod_access_referer}.tar.gz
- Source12: http://www.klomp.org/mod_roaming/mod_roaming-%{V_mod_roaming}.tar.gz
- Source13: http://software.tangent.org/download/mod_relocate-%{V_mod_relocate}.tar.gz
- Source14: http://www.php.net/distributions/php-%{V_mod_php3}.tar.gz
- Source15: http://www.muquit.com/muquit/software/mod_auth_ldap/mod_auth_ldap.tar.gz
- Source20: apache.conf
- Source21: apache.base
- Source22: apache.vhost
- Source23: apache.pl
- Source24: rc.apache
- Patch0: apache.patch
- # build information
- Prefix: %{l_prefix}
- BuildRoot: %{l_buildroot}
- BuildPreReq: OpenPKG, openpkg >= 20030927
- PreReq: OpenPKG, openpkg >= 20030927
- %if "%{with_mod_ssl}" == "yes"
- BuildPreReq: openssl, mm
- PreReq: openssl, mm
- %endif
- %if "%{with_mod_perl}" == "yes"
- BuildPreReq: perl
- PreReq: perl
- %endif
- %if "%{with_mod_php}" == "yes"
- BuildPreReq: gcc, sed, flex, bison
- PreReq: MTA
- %if "%{with_mod_php_mysql}" == "yes"
- BuildPreReq: mysql
- PreReq: mysql
- %endif
- %if "%{with_mod_php_pgsql}" == "yes"
- BuildPreReq: postgresql, openssl
- PreReq: postgresql, openssl
- %endif
- %if "%{with_mod_php_gd}" == "yes"
- BuildPreReq: gd, jpeg, png
- PreReq: gd, jpeg, png
- %endif
- %if "%{with_mod_php_db}" == "yes"
- BuildPreReq: db
- PreReq: db
- %endif
- %if "%{with_mod_php_pdflib}" == "yes"
- BuildPreReq: pdflib, jpeg, png
- PreReq: pdflib, jpeg, png
- %endif
- %if "%{with_mod_php_zlib}" == "yes"
- BuildPreReq: zlib
- PreReq: zlib
- %endif
- %if "%{with_mod_php_bzip2}" == "yes"
- BuildPreReq: bzip2
- PreReq: bzip2
- %endif
- %if "%{with_mod_php_openssl}" == "yes"
- BuildPreReq: openssl
- PreReq: openssl
- %endif
- %if "%{with_mod_php_openldap}" == "yes"
- BuildPreReq: openldap, openssl
- PreReq: openldap, openssl
- %if "%{with_mod_php_openldapsasl}" == "yes"
- BuildPreReq: openldap::with_sasl = yes
- PreReq: openldap::with_sasl = yes
- %else
- BuildPreReq: openldap::with_sasl = no
- PreReq: openldap::with_sasl = no
- %endif
- %endif
- %if "%{with_mod_php_mm}" == "yes"
- BuildPreReq: mm
- PreReq: mm
- %endif
- %if "%{with_mod_php_pcre}" == "yes"
- BuildPreReq: pcre
- PreReq: pcre
- %endif
- %if "%{with_mod_php_java}" == "yes"
- BuildPreReq: j2se
- PreReq: j2se
- %endif
- %if "%{with_mod_php_freetype}" == "yes"
- BuildPreReq: freetype
- PreReq: freetype
- %endif
- %if "%{with_mod_php_gettext}" == "yes"
- BuildPreReq: gettext, libiconv
- PreReq: gettext, libiconv
- %endif
- %if "%{with_mod_php_imap}" == "yes"
- BuildPreReq: imap, openssl
- PreReq: imap, openssl
- %endif
- %if "%{with_mod_dav}" == "yes" || "%{with_mod_php_xml}" == "yes"
- BuildPreReq: expat
- PreReq: expat
- %endif
- %if "%{with_mod_php_dom}" == "yes"
- BuildPreReq: libxml, libxslt
- PreReq: libxml, libxslt
- %endif
- %if "%{with_mod_php_curl}" == "yes"
- BuildPreReq: curl
- PreReq: curl
- %endif
- %if "%{with_mod_php_mhash}" == "yes"
- BuildPreReq: mhash
- PreReq: mhash
- %endif
- %if "%{with_mod_php_gdbm}" == "yes"
- BuildPreReq: gdbm
- PreReq: gdbm
- %endif
- %if "%{with_mod_php_oci7}" == "yes" || "%{with_mod_php_oci8}" == "yes"
- BuildPreReq: ORACLE
- %endif
- %if "%{with_mod_php_snmp}" == "yes"
- BuildPreReq: snmp
- PreReq: snmp
- %endif
- %if "%{with_mod_php_unixodbc}" == "yes"
- BuildPreReq: unixodbc
- PreReq: unixodbc
- %endif
- %endif
- %if "%{with_mod_php3}" == "yes"
- BuildPreReq: make, bison, flex
- %if "%{with_mod_php3_gd}" == "yes"
- BuildPreReq: gd
- PreReq: gd
- %endif
- %if "%{with_mod_php3_jpeg}" == "yes"
- BuildPreReq: jpeg
- PreReq: jpeg
- %endif
- %if "%{with_mod_php3_mysql}" == "yes"
- BuildPreReq: mysql
- PreReq: mysql
- %endif
- %if "%{with_mod_php3_openssl}" == "yes"
- BuildPreReq: openssl
- PreReq: openssl
- %endif
- %if "%{with_mod_php3_zlib}" == "yes"
- BuildPreReq: zlib
- PreReq: zlib
- %endif
- %endif
- %if "%{with_mod_auth_ldap}" == "yes"
- BuildPreReq: openldap, openssl
- PreReq: openldap, openssl
- %endif
- %if "%{with_mod_auth_pam}" == "yes"
- BuildPreReq: PAM
- PreReq: PAM
- %endif
- %if "%{with_gdbm_ndbm}" == "yes"
- BuildPreReq: gdbm, gdbm::with_ndbm = yes
- PreReq: gdbm, gdbm::with_ndbm = yes
- %endif
- AutoReq: no
- AutoReqProv: no
- %description
- The Apache Project is a collaborative software development effort
- aimed at creating a robust, commercial-grade, featureful, and
- freely-available source code implementation of an HTTP (Web) server.
- The project is jointly managed by a group of volunteers located
- around the world, using the Internet and the Web to communicate,
- plan, and develop the server and its related documentation. These
- volunteers are known as the Apache Group. In addition, hundreds
- of users have contributed ideas, code, and documentation to the
- project.
- %prep
- # unpack Apache distribution
- %setup0 -q -c
- %patch0 -p0
- %{l_shtool} subst \
- -e 's;"Unix";"%{l_openpkg_release -F "OpenPKG/%%s"}";g' \
- apache_%{V_apache}/src/os/unix/os.h
- # unpack optional extension modules
- %if "%{with_mod_ssl}" == "yes"
- %setup1 -q -T -D -a 1
- %endif
- %if "%{with_mod_perl}" == "yes"
- %setup2 -q -T -D -a 2
- %endif
- %if "%{with_mod_php}" == "yes"
- %setup3 -q -T -D -a 3
- %endif
- %if "%{with_mod_dav}" == "yes"
- %setup4 -q -T -D -a 4
- %endif
- %if "%{with_mod_layout}" == "yes"
- %setup5 -q -T -D -a 5
- %endif
- %if "%{with_mod_macro}" == "yes"
- %setup6 -q -T -D -a 6
- %endif
- %if "%{with_mod_auth_pam}" == "yes"
- %setup7 -q -T -D -a 7
- %endif
- %if "%{with_mod_fastcgi}" == "yes"
- %setup9 -q -T -D -a 9
- %endif
- %if "%{with_mod_throttle}" == "yes"
- %setup10 -q -T -D -a 10
- %endif
- %if "%{with_mod_access_referer}" == "yes"
- %setup11 -q -T -D -a 11
- %endif
- %if "%{with_mod_roaming}" == "yes"
- %setup12 -q -T -D -a 12
- %endif
- %if "%{with_mod_relocate}" == "yes"
- %setup13 -q -T -D -a 13
- %endif
- %if "%{with_mod_php3}" == "yes"
- %setup14 -q -T -D -a 14
- %endif
- %if "%{with_mod_auth_ldap}" == "yes"
- %setup15 -q -T -D -a 15
- %endif
- %build
- # prepare environment
- rm -rf $RPM_BUILD_ROOT
- %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}
- # optionally prepare mod_ssl
- %if "%{with_mod_ssl}" == "yes"
- ( cd mod_ssl-%{V_mod_ssl}
- ./configure \
- --with-apache=../apache_%{V_apache} \
- --expert --force
- ) || exit $?
- %endif
- # optionally pre-configure Apache for mod_php, mod_php3 and mod_dav
- %if "%{with_mod_php}" == "yes" || "%{with_mod_php3}" == "yes" || "%{with_mod_dav}" == "yes"
- ( cd apache_%{V_apache}
- CC="%{l_cc}" \
- %if "%{with_debug}" == "yes"
- CFLAGS="%{l_cflags} -g" \
- %else
- CFLAGS="%{l_cflags -O}" \
- %endif
- ./configure \
- %if "%{with_mod_ssl}" == "yes"
- --enable-rule=EAPI \
- %endif
- %if "%{with_shared_core}" == "yes"
- --enable-rule=SHARED_CORE \
- %endif
- %if "%{with_shared_chain}" == "yes"
- --enable-rule=SHARED_CHAIN \
- %endif
- --target=apache \
- --with-layout=GNU \
- --prefix=%{l_prefix} \
- --sbindir=%{l_prefix}/sbin \
- --sysconfdir=%{l_prefix}/etc/apache \
- --libexecdir=%{l_prefix}/lib/apache \
- --datadir=%{l_prefix}/share/apache \
- --localstatedir=%{l_prefix}/var/apache
- ) || exit $?
- %endif
- # optionally prepare mod_perl
- %if "%{with_mod_perl}" == "yes"
- ( cd mod_perl-%{V_mod_perl}
- eval `%{l_prefix}/bin/perl -V:archname`
- eval `%{l_prefix}/bin/perl -V:version`
- eval `%{l_prefix}/bin/perl -V:installarchlib -V:installprivlib -V:installsitearch -V:installsitelib`
- %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/bin
- perl=$RPM_BUILD_ROOT%{l_prefix}/bin/perl
- echo "#!/bin/sh" >$perl
- echo "exec %{l_prefix}/bin/perl \\" >>$perl
- echo " -I${RPM_BUILD_ROOT}${installarchlib} \\" >>$perl
- echo " -I${RPM_BUILD_ROOT}${installprivlib} \\" >>$perl
- echo " -I${RPM_BUILD_ROOT}${installsitearch} \\" >>$perl
- echo " -I${RPM_BUILD_ROOT}${installsitelib} \\" >>$perl
- echo " \"\$@\"" >>$perl
- chmod a+x $perl
- $perl Makefile.PL \
- PREFIX=$RPM_BUILD_ROOT%{l_prefix} \
- APACHE_SRC=../apache_%{V_apache}/src \
- DO_HTTPD=1 \
- USE_APACI=1 \
- PREP_HTTPD=1 \
- EVERYTHING=1 \
- PERL_TIE_TABLES=1 \
- PERL_DIRECTIVE_HANDLERS=1
- %{l_make} %{l_mflags}
- %{l_make} %{l_mflags} install
- rm -rf $RPM_BUILD_ROOT%{l_prefix}/man/man3
- %{l_shtool} subst -e "s;^\\(PERL = \\).*;\\1 $perl;" \
- ../apache_%{V_apache}/src/modules/perl/mod_perl.config
- ) || exit $?
- %endif
- # optionally prepare mod_php
- %if "%{with_mod_php}" == "yes"
- ( cd php-%{V_mod_php}
- CC="%{l_cc}"; export CC
- %if "%{with_debug}" == "yes"
- CFLAGS="%{l_cflags -O} %{l_cppflags}"; export CFLAGS
- CPPFLAGS="%{l_cflags -O} %{l_cppflags}"; export CPPFLAGS
- LDFLAGS="%{l_cflags -O} %{l_ldflags}"; export LDFLAGS
- %else
- CFLAGS="%{l_cflags} -g %{l_cppflags}"; export CFLAGS
- CPPFLAGS="%{l_cflags} -g %{l_cppflags}"; export CPPFLAGS
- LDFLAGS="%{l_cflags} -g %{l_ldflags}"; export LDFLAGS
- %endif
- LIBS=""; export LIBS
- %if "%{with_mod_ssl}" == "yes"
- CFLAGS="$CFLAGS -DEAPI"
- %endif
- %if "%{with_mod_php_gd}" == "yes"
- LIBS="$LIBS -lpng -lz"
- %endif
- %if "%{with_mod_php_gettext}" == "yes"
- LIBS="$LIBS -liconv"
- %endif
- %if "%{with_mod_php_openldap}" == "yes" && "%{with_mod_php_openldapsasl}" == "yes"
- LIBS="$LIBS -lsasl2"
- %endif
- %if "%{with_mod_php_imap}" == "yes"
- LIBS="$LIBS -lssl -lcrypto"
- %endif
- %if "%{with_mod_php_db}" == "yes"
- LIBS="$LIBS -ldb"
- %endif
- %if "%{with_mod_php_oci7}" == "yes" || "%{with_mod_php_oci8}" == "yes"
- ORACLE_HOME="`%{l_prefix}/etc/rc --query oracle_home`"
- export ORACLE_HOME
- %endif
- PROG_SENDMAIL="%{l_prefix}/sbin/sendmail"
- export PROG_SENDMAIL
- ./configure \
- --prefix=%{l_prefix} \
- --with-apache=../apache_%{V_apache} \
- --with-config-file-path=%{l_prefix}/etc/apache \
- %if "%{with_mod_php_mbregex}" == "yes"
- --enable-mbregex \
- %endif
- %if "%{with_mod_php_mbstring}" == "yes"
- --enable-mbstring \
- %endif
- %if "%{with_mod_php_calendar}" == "yes"
- --enable-calendar \
- %endif
- %if "%{with_mod_php_mysql}" == "yes"
- --with-mysql=%{l_prefix} \
- %else
- --without-mysql \
- %endif
- %if "%{with_mod_php_pgsql}" == "yes"
- --with-pgsql=%{l_prefix} \
- %else
- --without-pgsql \
- %endif
- %if "%{with_mod_php_gd}" == "yes"
- --with-gd=%{l_prefix} \
- --with-jpeg-dir=%{l_prefix} \
- --with-png-dir=%{l_prefix} \
- %endif
- %if "%{with_mod_php_freetype}" == "yes"
- --enable-gd-imgstrttf \
- --enable-gd-native-ttf \
- --with-freetype-dir=%{l_prefix} \
- %endif
- %if "%{with_mod_php_db}" == "yes"
- --with-db4=%{l_prefix} \
- %endif
- %if "%{with_mod_php_debug}" == "yes"
- --with-debug=yes \
- %else
- --with-debug=no \
- %endif
- %if "%{with_mod_php_zlib}" == "yes"
- --with-zlib=%{l_prefix} \
- --with-zlib-dir=%{l_prefix} \
- %endif
- %if "%{with_mod_php_bzip2}" == "yes"
- --with-bz2=%{l_prefix} \
- %endif
- %if "%{with_mod_php_pdflib}" == "yes"
- --with-pdflib=%{l_prefix} \
- --with-jpeg-dir=%{l_prefix} \
- --with-png-dir=%{l_prefix} \
- %endif
- %if "%{with_mod_php_openssl}" == "yes" || "%{with_mod_php_openldap}" == "yes"
- --with-openssl=%{l_prefix} \
- %endif
- %if "%{with_mod_php_openldap}" == "yes"
- --with-ldap=%{l_prefix} \
- %endif
- %if "%{with_mod_php_mm}" == "yes"
- --with-mm=%{l_prefix} \
- --enable-session \
- %endif
- %if "%{with_mod_php_pcre}" == "yes"
- --with-pcre=%{l_prefix} \
- %endif
- %if "%{with_mod_php_ftp}" == "yes"
- --enable-ftp \
- %endif
- %if "%{with_mod_php_java}" == "yes"
- --with-java=%{l_prefix}/libexec/j2se \
- %endif
- %if "%{with_mod_php_oci7}" == "yes"
- --with-oracle \
- %endif
- %if "%{with_mod_php_oci8}" == "yes"
- --with-oci8 \
- %endif
- %if "%{with_mod_php_gettext}" == "yes"
- --with-gettext=%{l_prefix} \
- %endif
- %if "%{with_mod_php_imap}" == "yes"
- --with-imap=%{l_prefix} \
- --with-imap-ssl=%{l_prefix} \
- %endif
- %if "%{with_mod_php_xml}" == "yes"
- --enable-xml \
- --with-expat-dir=%{l_prefix} \
- %else
- --disable-xml \
- %endif
- %if "%{with_mod_php_dom}" == "yes"
- --with-dom=%{l_prefix} \
- --with-dom-xslt=%{l_prefix} \
- --with-dom-exslt=%{l_prefix} \
- %endif
- %if "%{with_mod_php_wddx}" == "yes"
- --enable-wddx \
- %endif
- %if "%{with_mod_php_bc}" == "yes"
- --enable-bcmath \
- %endif
- %if "%{with_mod_php_transsid}" == "yes"
- --enable-trans-sid \
- %endif
- %if "%{with_mod_php_mhash}" == "yes"
- --with-mhash=%{l_prefix} \
- %endif
- %if "%{with_mod_php_curl}" == "yes"
- --with-curl=%{l_prefix} \
- %endif
- %if "%{with_mod_php_gdbm}" == "yes"
- --with-gdbm=%{l_prefix} \
- %endif
- %if "%{with_mod_php_versioning}" == "yes"
- --enable-versioning \
- %endif
- %if "%{with_mod_php_unixodbc}" == "yes"
- --with-unixODBC=%{l_prefix} \
- %endif
- %if "%{with_mod_php_snmp}" == "yes"
- --with-snmp=%{l_prefix} \
- %endif
- --disable-cli \
- --without-pear \
- --disable-shared \
- --enable-inline-optimization \
- --enable-track-vars
- %{l_make} %{l_mflags}
- %{l_shtool} subst \
- -e "s;^\\(EXTENSION_DIR = \\)\\(%{l_prefix}\\);\\1$RPM_BUILD_ROOT\\2;" \
- -e "s;^\\(PEAR_INSTALLDIR = \\)\\(%{l_prefix}\\);\\1$RPM_BUILD_ROOT\\2;" \
- config_vars.mk
- %{l_make} %{l_mflags} install \
- prefix=$RPM_BUILD_ROOT%{l_prefix}
- ) || exit $?
- %endif
- # optionally prepare mod_php3
- %if "%{with_mod_php3}" == "yes"
- ( cd php-%{V_mod_php3}
- CC="%{l_cc}" \
- %if "%{with_mod_ssl}" == "yes"
- CFLAGS="%{l_cflags -O} %{l_cppflags} -DEAPI" \
- %else
- CFLAGS="%{l_cflags -O} %{l_cppflags}" \
- %endif
- CPPFLAGS="%{l_cflags -O} %{l_cppflags}" \
- LDFLAGS="%{l_cflags -O} %{l_ldflags}" \
- ./configure \
- --prefix=%{l_prefix} \
- --with-apache=../apache_%{V_apache} \
- --with-config-file-path=%{l_prefix}/etc/apache \
- %if "%{with_mod_php3_ftp}" == "yes"
- --with-ftp \
- %endif
- %if "%{with_mod_php3_mysql}" == "yes"
- --with-mysql=%{l_prefix} \
- %else
- --without-mysql \
- %endif
- %if "%{with_mod_php3_zlib}" == "yes"
- --with-zlib=%{l_prefix} \
- %endif
- %if "%{with_mod_php3_jpeg}" == "yes"
- --with-jpeg=%{l_prefix} \
- %endif
- %if "%{with_mod_php3_gd}" == "yes"
- --with-gd=%{l_prefix} \
- %endif
- %if "%{with_mod_php3_openssl}" == "yes"
- --with-openssl=%{l_prefix} \
- %endif
- --disable-shared \
- --enable-track-vars
- %{l_make} %{l_mflags}
- %{l_make} %{l_mflags} install \
- prefix=$RPM_BUILD_ROOT%{l_prefix}
- ) || exit $?
- %endif
- # optionally prepare mod_dav
- %if "%{with_mod_dav}" == "yes"
- ( cd mod_dav-%{V_mod_dav}
- CC="%{l_cc}" \
- %if "%{with_debug}" == "yes"
- %if "%{with_mod_ssl}" == "yes"
- CFLAGS="%{l_cflags} -g" \
- %else
- CFLAGS="%{l_cflags} -g -DEAPI" \
- %endif
- %else
- %if "%{with_mod_ssl}" == "yes"
- CFLAGS="%{l_cflags -O}" \
- %else
- CFLAGS="%{l_cflags -O} -DEAPI" \
- %endif
- %endif
- LDFLAGS="%{l_cflags -O}" \
- ./configure \
- --with-apache=../apache_%{V_apache} \
- --with-expat=%{l_prefix}
- %{l_make} %{l_mflags}
- %{l_make} %{l_mflags} install
- ) || exit $?
- %endif
- # optionally prepare mod_layout
- %if "%{with_mod_layout}" == "yes"
- ( cd mod_layout-%{V_mod_layout}
- mkdir ../apache_%{V_apache}/src/modules/layout
- cp * ../apache_%{V_apache}/src/modules/layout/ 2>/dev/null || true
- chmod -R u+w ../apache_%{V_apache}/src/modules/layout
- ) || exit $?
- %endif
- # optionally prepare mod_macro
- %if "%{with_mod_macro}" == "yes"
- ( cd mod_macro-%{V_mod_macro}
- cp mod_macro.c ../apache_%{V_apache}/src/modules/extra/
- ) || exit $?
- %endif
- # optionally prepare mod_auth_pam
- %if "%{with_mod_auth_pam}" == "yes"
- ( cd mod_auth_pam-%{V_mod_auth_pam}
- sed -e '234N;s/\n//' -e '239N;s/\n//' <mod_auth_pam.c \
- >../apache_%{V_apache}/src/modules/extra/mod_auth_pam.c
- ) || exit $?
- %endif
- # optionally prepare mod_auth_ldap
- %if "%{with_mod_auth_ldap}" == "yes"
- ( cd modauthldap
- cp mod_auth_ldap.c ../apache_%{V_apache}/src/modules/extra/
- ) || exit $?
- %endif
- # optionally prepare mod_gzip
- %if "%{with_mod_gzip}" == "yes"
- cp %{SOURCE mod_gzip.c} apache_%{V_apache}/src/modules/extra/
- %endif
- # optionally prepare mod_fastcgi
- %if "%{with_mod_fastcgi}" == "yes"
- ( cd mod_fastcgi-%{V_mod_fastcgi}
- mkdir ../apache_%{V_apache}/src/modules/fastcgi
- cp -rp * ../apache_%{V_apache}/src/modules/fastcgi/
- ) || exit $?
- %endif
- # optionally prepare mod_throttle
- %if "%{with_mod_throttle}" == "yes"
- ( cd mod_throttle-*
- cp mod_throttle.c ../apache_%{V_apache}/src/modules/extra/
- ) || exit $?
- %endif
- # optionally prepare mod_access_referer
- %if "%{with_mod_access_referer}" == "yes"
- ( cd mod_access_referer-%{V_mod_access_referer}
- cp mod_access_referer.c ../apache_%{V_apache}/src/modules/extra/
- ) || exit $?
- %endif
- # optionally prepare mod_roaming
- %if "%{with_mod_roaming}" == "yes"
- ( cd mod_roaming-%{V_mod_roaming}
- cp mod_roaming.c ../apache_%{V_apache}/src/modules/extra/
- ) || exit $?
- %endif
- # optionally prepare mod_relocate
- %if "%{with_mod_relocate}" == "yes"
- ( cd mod_relocate-%{V_mod_relocate}
- cp mod_relocate.c ../apache_%{V_apache}/src/modules/extra/
- ) || exit $?
- %endif
- # configure Apache
- ( cd apache_%{V_apache}
- %if "%{with_debug}" == "yes"
- cflags="%{l_cflags} -g"
- %else
- cflags="%{l_cflags -O}"
- %endif
- ldflags=""
- libs=""
- %if "%{with_mod_auth_pam}" == "yes"
- pam_incdir=`%{l_prefix}/etc/rc --query pam_incdir`
- if [ ".$pam_incdir" != "./usr/include" -a ".$pam_incdir" != "./include" ]; then
- cflags="$cflags -I$pam_incdir"
- fi
- pam_libdir=`%{l_prefix}/etc/rc --query pam_libdir`
- if [ ".$pam_libdir" != "./usr/lib" -a ".$pam_libdir" != "./lib" ]; then
- ldflags="$ldflags -L$pam_libdir"
- fi
- libs="$libs -lpam"
- %endif
- %if "%{with_mod_auth_ldap}" == "yes"
- cflags="$cflags %{l_cppflags}"
- ldflags="$ldflags %{l_ldflags}"
- libs="$libs -lldap -llber -lssl -lcrypto"
- %endif
- %if "%{with_gdbm_ndbm}" == "yes"
- cflags="$cflags %{l_cppflags}"
- ldflags="$ldflags %{l_ldflags}"
- libs="$libs -lndbm -lgdbm"
- %endif
- CC="%{l_cc}" \
- CFLAGS="$cflags" \
- LDFLAGS="$ldflags" \
- LIBS="$libs" \
- LD_SHLIB="%{l_cc}" \
- %if "%{with_mod_ssl}" == "yes"
- EAPI_MM="%{l_prefix}" \
- SSL_BASE="%{l_prefix}" \
- %endif
- ./configure \
- --target=apache \
- --with-layout=GNU \
- --prefix=%{l_prefix} \
- --sbindir=%{l_prefix}/sbin \
- --sysconfdir=%{l_prefix}/etc/apache \
- --libexecdir=%{l_prefix}/lib/apache \
- --datadir=%{l_prefix}/share/apache \
- --localstatedir=%{l_prefix}/var/apache \
- %if "%{with_debug}" == "yes"
- --without-execstrip \
- %endif
- %if "%{with_suexec}" == "yes"
- --enable-suexec \
- --suexec-caller=%{with_suexec_caller} \
- --suexec-userdir=%{with_suexec_userdir} \
- --suexec-logfile=%{l_prefix}/var/apache/log/suexec.log \
- %endif
- --enable-module=most \
- --with-perl=%{l_prefix}/bin/perl \
- %if "%{with_mod_ssl}" == "yes"
- --enable-rule=EAPI \
- --enable-module=ssl \
- %endif
- %if "%{with_mod_perl}" == "yes"
- --activate-module=src/modules/perl/libperl.a \
- %endif
- %if "%{with_mod_php}" == "yes"
- --activate-module=src/modules/php4/libphp4.a \
- %endif
- %if "%{with_mod_php3}" == "yes"
- --activate-module=src/modules/php3/libphp3.a \
- %endif
- %if "%{with_mod_dav}" == "yes"
- --activate-module=src/modules/dav/libdav.a \
- --enable-rule=EXPAT \
- %else
- --disable-rule=EXPAT \
- %endif
- %if "%{with_shared_core}" == "yes"
- --enable-rule=SHARED_CORE \
- %endif
- %if "%{with_shared_chain}" == "yes"
- --enable-rule=SHARED_CHAIN \
- %endif
- %if "%{with_mod_layout}" == "yes"
- --activate-module=src/modules/layout/liblayout.a \
- %endif
- %if "%{with_mod_macro}" == "yes"
- --activate-module=src/modules/extra/mod_macro.o \
- %endif
- %if "%{with_mod_auth_pam}" == "yes"
- --activate-module=src/modules/extra/mod_auth_pam.o \
- %endif
- %if "%{with_mod_auth_ldap}" == "yes"
- --activate-module=src/modules/extra/mod_auth_ldap.c \
- %endif
- %if "%{with_mod_gzip}" == "yes"
- --activate-module=src/modules/extra/mod_gzip.o \
- %endif
- %if "%{with_mod_fastcgi}" == "yes"
- --activate-module=src/modules/fastcgi/libfastcgi.a \
- %endif
- %if "%{with_mod_throttle}" == "yes"
- --activate-module=src/modules/extra/mod_throttle.o \
- %endif
- %if "%{with_mod_access_referer}" == "yes"
- --activate-module=src/modules/extra/mod_access_referer.o \
- %endif
- %if "%{with_mod_roaming}" == "yes"
- --activate-module=src/modules/extra/mod_roaming.o \
- %endif
- %if "%{with_mod_relocate}" == "yes"
- --activate-module=src/modules/extra/mod_relocate.o \
- %endif
- --enable-module=so
- %{l_make} %{l_mflags -O} build-quiet
- ) || exit $?
- %install
- # install Apache
- ( cd apache_%{V_apache}
- # perform standard Apache installation procedure
- %{l_make} %{l_mflags} install root=$RPM_BUILD_ROOT
- # post-adjustments to installation tree
- mv $RPM_BUILD_ROOT%{l_prefix}/share/apache/icons/small/* \
- $RPM_BUILD_ROOT%{l_prefix}/share/apache/icons/
- rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/apache/icons/small
- rm -f $RPM_BUILD_ROOT%{l_prefix}/share/apache/icons/README*
- rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/apache/*.default
- rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/apache/srm.conf
- rm -f $RPM_BUILD_ROOT%{l_prefix}/etc/apache/access.conf
- mv $RPM_BUILD_ROOT%{l_prefix}/share/apache/htdocs/index.html.en \
- $RPM_BUILD_ROOT%{l_prefix}/share/apache/htdocs/index.html
- rm -f $RPM_BUILD_ROOT%{l_prefix}/share/apache/htdocs/index.html.*
- chmod a+rx $RPM_BUILD_ROOT%{l_prefix}/share/apache/cgi-bin/*
- mv $RPM_BUILD_ROOT%{l_prefix}/share/apache/cgi-bin \
- $RPM_BUILD_ROOT%{l_prefix}/cgi/
- rm -rf $RPM_BUILD_ROOT%{l_prefix}/cgi/test-cgi
- ) || exit $?
- %if "%{with_mod_perl}" == "yes"
- # cleanup for mod_perl
- rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/perl
- # provide mod_perl init script
- %{l_shtool} install -c -m 644 \
- %{SOURCE apache.pl} \
- $RPM_BUILD_ROOT%{l_prefix}/etc/apache/
- %endif
- # optionally make PHP happy
- %if "%{with_mod_php}" == "yes"
- %{l_shtool} install -c -m 644 /dev/null \
- $RPM_BUILD_ROOT%{l_prefix}/etc/apache/php.ini
- rm -rf $RPM_BUILD_ROOT%{l_prefix}/include/php
- rm -rf $RPM_BUILD_ROOT%{l_prefix}/lib/php/build
- %endif
- # create default configuration
- l_hostname=`%{l_shtool} echo -e %h`
- l_domainname=`%{l_shtool} echo -e %d | cut -c2-`
- %{l_shtool} install -c -m 644 %{l_value -s -a} \
- -e "s;@l_hostname@;$l_hostname;g" \
- -e "s;@l_domainname@;$l_domainname;g" \
- %{SOURCE apache.base} \
- %{SOURCE apache.conf} \
- %{SOURCE apache.vhost} \
- $RPM_BUILD_ROOT%{l_prefix}/etc/apache/
- mv $RPM_BUILD_ROOT%{l_prefix}/etc/apache/magic $RPM_BUILD_ROOT%{l_prefix}/etc/apache/mime.magic
- find $RPM_BUILD_ROOT%{l_prefix} -name perllocal.pod -print | xargs rm -f
- # create run-command script
- %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
- %{l_shtool} install -c -m 755 %{l_value -s -a} \
- %{SOURCE rc.apache} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
- # strip installation binaries
- %if "%{with_debug}" != "yes"
- strip $RPM_BUILD_ROOT%{l_prefix}/bin/* 2>/dev/null || true
- strip $RPM_BUILD_ROOT%{l_prefix}/sbin/* 2>/dev/null || true
- %endif
- # determine installation tree files
- %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
- %{l_files_std} \
- %if "%{with_suexec}" == "yes"
- '%attr(4755,%{l_susr},%{l_mgrp}) %{l_prefix}/sbin/suexec' \
- %endif
- '%config %{l_prefix}/etc/apache/*' \
- %if "%{with_mod_ssl}" == "yes"
- '%config %{l_prefix}/etc/apache/ssl.crl/*.crl' \
- '%config %{l_prefix}/etc/apache/ssl.crt/*.crt' \
- '%config %{l_prefix}/etc/apache/ssl.csr/*.csr' \
- '%config %{l_prefix}/etc/apache/ssl.key/*.key' \
- '%config %{l_prefix}/etc/apache/ssl.prm/*.prm' \
- %endif
- '%config %attr(444,%{l_musr},%{l_mgrp}) %{l_prefix}/etc/apache/apache.base' \
- '%config(noreplace) %attr(444,%{l_musr},%{l_mgrp}) %{l_prefix}/etc/apache/apache.vhost'
- %files -f files
- %clean
- rm -rf $RPM_BUILD_ROOT
- %post
- %if "%{with_mod_auth_pam}" == "yes"
- # add PAM configuration entry
- if [ $1 -eq 1 ]; then
- $RPM_INSTALL_PREFIX/sbin/pamtool --add --smart --name=apache
- fi
- %endif
- # after upgrade, restart service
- [ $1 -eq 2 ] || exit 0
- eval `%{l_rc} apache status 2>/dev/null`
- [ ".$apache_active" = .yes ] && %{l_rc} apache restart
- exit 0
- %preun
- # before erase, stop service and remove log files
- [ $1 -eq 0 ] || exit 0
- %{l_rc} apache stop 2>/dev/null
- rm -rf $RPM_INSTALL_PREFIX/var/apache/log/ >/dev/null 2>&1 || true
- %if "%{with_mod_auth_pam}" == "yes"
- # remove PAM configuration entry
- $RPM_INSTALL_PREFIX/sbin/pamtool --remove --smart --name=apache
- %endif
- exit 0
|