diff options
author | Stefan Fritsch <sf@sfritsch.de> | 2012-02-16 02:47:54 +0100 |
---|---|---|
committer | Stefan Fritsch <sf@sfritsch.de> | 2012-02-16 02:47:54 +0100 |
commit | 212cb6c2dcb419aaa6c848406136ec05e98c8632 (patch) | |
tree | 3c6f8cc25cde8781809bfeb92ebcadac341b1af4 /build | |
parent | e072a2dd866b7cb9f14319b80326a4e7fd16fcdf (diff) | |
download | apache2-212cb6c2dcb419aaa6c848406136ec05e98c8632.tar.gz |
Import upstream release candidate 2.4.1upstream/2.4.1
Diffstat (limited to 'build')
-rw-r--r-- | build/aix/README | 32 | ||||
-rwxr-xr-x | build/aix/aixproto.ksh | 78 | ||||
-rwxr-xr-x | build/aix/buildaix.ksh | 53 | ||||
-rw-r--r-- | build/installwinconf.awk | 11 | ||||
-rw-r--r-- | build/mkconfNW.awk | 2 | ||||
-rw-r--r-- | build/rpm/httpd.spec.in | 36 | ||||
-rw-r--r-- | build/rules.mk.in | 10 |
7 files changed, 199 insertions, 23 deletions
diff --git a/build/aix/README b/build/aix/README new file mode 100644 index 00000000..8cc75a59 --- /dev/null +++ b/build/aix/README @@ -0,0 +1,32 @@ +The script buildaix.ksh will attempt to build a AIX installp fileset +out of a source tree for httpd. + +REQUIREMENTS: +fileset bos.adt.insttools + +RECOMMENDED: +Toolbox filesets zlib and zlib-devel +Toolbox fileset coreutils + +To build a package, make sure you are in the root of the source tree, +and run: + +build/aix/buildaix.ksh + +## coming - argument to leave the DESTDIR results for manual +## modifications to the template (to create seperate filesets) + +An AIX fileset named <PKG>.<NAME>.<version>.<architecture>.I will be +created in the build/aix directory. Also included is the .template file. + +KNOWN issues: +on AIX libtool is known to have issues with the install command. +many of these issues can be resolved by inserting the GNU install command +earlier in the PATH variable. Testing has shown that this may still +have issues when installing to DESTDIR. To compensate for this +the buildaix.ksh also does a "regular" make install before executing +the make DESTDIR=$TEMPDIR install command + +TODO +Add Apache LICENSE to fileset and require acceptance +Add test for bos.adt.insttools at start of build script diff --git a/build/aix/aixproto.ksh b/build/aix/aixproto.ksh new file mode 100755 index 00000000..5c5c471a --- /dev/null +++ b/build/aix/aixproto.ksh @@ -0,0 +1,78 @@ +#!/usr/bin/ksh +TEMPDIR=$1 +BUILD=`pwd` +. build/aix/pkginfo + +package=$PKG +name=$NAME +vrmf=$VERSION +descr="$VENDOR $NAME for $ARCH" +umask 022 +INFO=$BUILD/build/aix/.info +mkdir -p $INFO + +template=${INFO}/${PKG}.${NAME}.${vrmf}.template +>$template + +cd ${TEMPDIR} +rm -rf .info lpp_name tmp +# get the directory sizes in blocks +for d in etc opt var +do + set `du -s $d/${NAME}` + let sz$d=$1+1 +done +set `du -s usr/share/man` +szman=$1+1 + +files=./httpd-root +cd ${TEMPDIR}/.. +find ${files} -type d -exec chmod og+rx {} \; +chmod -R go+r ${files} +chown -R 0:0 ${files} + +cat - <<EOF >>$template +Package Name: ${package}.${NAME} +Package VRMF: ${vrmf}.0 +Update: N +Fileset + Fileset Name: ${package}.${NAME}.rte + Fileset VRMF: ${vrmf}.0 + Fileset Description: ${descr} + USRLIBLPPFiles + EOUSRLIBLPPFiles + Bosboot required: N + License agreement acceptance required: N + Include license files in this package: N + Requisites: + Upsize: /usr/share/man ${szman}; + Upsize: /etc/${NAME} $szetc; + Upsize: /opt/${NAME} $szopt; + Upsize: /var/${NAME} $szvar; + USRFiles +EOF + +find ${files} | sed -e s#^${files}## | sed -e "/^$/d" >>$template + +cat - <<EOF >>$template + EOUSRFiles + ROOT Part: N + ROOTFiles + EOROOTFiles + Relocatable: N +EOFileset +EOF + +cp ${template} ${BUILD}/build/aix + +# use mkinstallp to create the fileset. result is in ${TEMPDIR}/tmp +mkinstallp -d ${TEMPDIR} -T ${template} + +cp ${TEMPDIR}/tmp/$PKG.$NAME.$VERSION.0.bff ${BUILD}/build/aix +cd $BUILD/build/aix +rm -f $PKG.$NAME.$VERSION.$ARCH.I +mv $PKG.$NAME.$VERSION.0.bff $PKG.$NAME.$VERSION.$ARCH.I +rm .toc +inutoc . +installp -d . -ap ${PKG}.${NAME} +installp -d . -L diff --git a/build/aix/buildaix.ksh b/build/aix/buildaix.ksh new file mode 100755 index 00000000..a7caa6ba --- /dev/null +++ b/build/aix/buildaix.ksh @@ -0,0 +1,53 @@ +#!/usr/bin/ksh +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# + +# buildaix.ksh: This script builds an AIX fileset + +LAYOUT=AIX +TEMPDIR=/var/tmp/$USER/httpd-root +rm -rf $TEMPDIR + +## strange interaction between install and libtool requires a regular install +## for all the links to succeed in the TEMPDIR +## httpd-2.0 does not include ssl by default +## will make a seperate build for that later + +> nohup.out +./configure \ + --enable-layout=$LAYOUT \ + --enable-module=so \ + --enable-proxy \ + --enable-cache \ + --enable-disk-cache \ + --with-mpm=worker \ + --enable-mods-shared=all | tee nohup.out + +make | tee -a nohup.out + +make install > install.log +make install DESTDIR=$TEMPDIR + +# will make use of the pkginfo data as input for mkinstallp template +cp build/aix/pkginfo $TEMPDIR + +## no seperate filesets for man pages, documents, etc. + +build/aix/aixproto.ksh $TEMPDIR + +# rm -rf $TEMPDIR +ls -ltr build/aix | grep -i aix diff --git a/build/installwinconf.awk b/build/installwinconf.awk index 88cf46cf..4dc2cd1a 100644 --- a/build/installwinconf.awk +++ b/build/installwinconf.awk @@ -134,14 +134,17 @@ BEGIN { print "#LoadModule file_cache_module modules/mod_file_cache.so" > dstfl; print "#LoadModule filter_module modules/mod_filter.so" > dstfl; print "#LoadModule headers_module modules/mod_headers.so" > dstfl; + print "#LoadModule heartbeat_module modules/mod_heartbeat.so" > dstfl; + print "#LoadModule heartmonitor_module modules/mod_heartmonitor.so" > dstfl; print "#LoadModule ident_module modules/mod_ident.so" > dstfl; print "#LoadModule imagemap_module modules/mod_imagemap.so" > dstfl; print "LoadModule include_module modules/mod_include.so" > dstfl; print "#LoadModule info_module modules/mod_info.so" > dstfl; print "LoadModule isapi_module modules/mod_isapi.so" > dstfl; - print "#LoadModule lbmethod_bybusyness_module mod_lbmethod_bybusyness.so" > dstfl; - print "#LoadModule lbmethod_byrequests_module mod_lbmethod_byrequests.so" > dstfl; - print "#LoadModule lbmethod_bytraffic_module mod_lbmethod_bytraffic.so" > dstfl; + print "#LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so" > dstfl; + print "#LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so" > dstfl; + print "#LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so" > dstfl; + print "#LoadModule lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.so" > dstfl; print "#LoadModule ldap_module modules/mod_ldap.so" > dstfl; print "#LoadModule logio_module modules/mod_logio.so" > dstfl; print "LoadModule log_config_module modules/mod_log_config.so" > dstfl; @@ -170,6 +173,7 @@ BEGIN { print "#LoadModule sed_module modules/mod_sed.so" > dstfl; print "#LoadModule session_module modules/mod_session.so" > dstfl; print "#LoadModule session_cookie_module modules/mod_session_cookie.so" > dstfl; + print "#LoadModule session_crypto_module modules/mod_session_crypto.so" > dstfl; print "#LoadModule session_dbd_module modules/mod_session_dbd.so" > dstfl; print "LoadModule setenvif_module modules/mod_setenvif.so" > dstfl; print "#LoadModule slotmem_plain_module modules/mod_slotmem_plain.so" > dstfl; @@ -186,6 +190,7 @@ BEGIN { print "#LoadModule usertrack_module modules/mod_usertrack.so" > dstfl; print "#LoadModule version_module modules/mod_version.so" > dstfl; print "#LoadModule vhost_alias_module modules/mod_vhost_alias.so" > dstfl; + print "#LoadModule watchdog_module modules/mod_watchdog.so" > dstfl; print "#LoadModule xml2enc_module modules/mod_xml2enc.so" > dstfl; continue; } diff --git a/build/mkconfNW.awk b/build/mkconfNW.awk index 4c40e827..a9be017c 100644 --- a/build/mkconfNW.awk +++ b/build/mkconfNW.awk @@ -88,6 +88,8 @@ BEGIN { print "#LoadModule userdir_module modules/userdir.nlm" print "#LoadModule vhost_alias_module modules/vhost.nlm" if (MODSSL) { + print "#LoadModule socache_dbm_module modules/socachedbm.nlm" + print "#LoadModule socache_shmcb_module modules/socacheshmcb.nlm" print "#LoadModule ssl_module modules/mod_ssl.nlm" } print "" diff --git a/build/rpm/httpd.spec.in b/build/rpm/httpd.spec.in index 0fe820b4..46eb8628 100644 --- a/build/rpm/httpd.spec.in +++ b/build/rpm/httpd.spec.in @@ -137,10 +137,6 @@ fi # forcibly prevent use of bundled apr, apr-util, pcre rm -rf srclib/{apr,apr-util,pcre} -# Before configure; fix location of build dir in generated apxs -%{__perl} -pi -e "s:\@exp_installbuilddir\@:%{_libdir}/httpd/build:g" \ - support/apxs.in - %configure \ --enable-layout=RPM \ --libdir=%{_libdir} \ @@ -160,7 +156,8 @@ rm -rf srclib/{apr,apr-util,pcre} --enable-pie \ --with-pcre \ --enable-mods-shared=all \ - --enable-ssl --with-ssl --enable-socache-dc \ + --enable-ssl --with-ssl --enable-socache-dc --enable-bucketeer \ + --enable-case-filter --enable-case-filter-in \ --disable-imagemap make %{?_smp_mflags} @@ -332,9 +329,12 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/httpd/modules/mod_authz_owner.so %{_libdir}/httpd/modules/mod_authz_user.so %{_libdir}/httpd/modules/mod_autoindex.so +%{_libdir}/httpd/modules/mod_bucketeer.so %{_libdir}/httpd/modules/mod_buffer.so %{_libdir}/httpd/modules/mod_cache_disk.so %{_libdir}/httpd/modules/mod_cache.so +%{_libdir}/httpd/modules/mod_case_filter.so +%{_libdir}/httpd/modules/mod_case_filter_in.so %{_libdir}/httpd/modules/mod_cgid.so %{_libdir}/httpd/modules/mod_charset_lite.so %{_libdir}/httpd/modules/mod_data.so @@ -428,7 +428,6 @@ rm -rf $RPM_BUILD_ROOT %attr(0700,apache,apache) %dir %{_localstatedir}/cache/httpd/cache-root %{_mandir}/man1/* -%{_mandir}/man8/ab* %{_mandir}/man8/suexec* %{_mandir}/man8/apachectl.8* %{_mandir}/man8/httpd.8* @@ -441,19 +440,19 @@ rm -rf $RPM_BUILD_ROOT %files tools %defattr(-,root,root) -%{_sbindir}/ab -%{_sbindir}/htdbm -%{_sbindir}/htdigest -%{_sbindir}/htpasswd -%{_sbindir}/logresolve -%{_sbindir}/httxt2dbm +%{_bindir}/ab +%{_bindir}/htdbm +%{_bindir}/htdigest +%{_bindir}/htpasswd +%{_bindir}/logresolve +%{_bindir}/httxt2dbm %{_sbindir}/rotatelogs -%{_mandir}/man1/dbmmanage.1* %{_mandir}/man1/htdbm.1* %{_mandir}/man1/htdigest.1* %{_mandir}/man1/htpasswd.1* -%{_mandir}/man8/ab.8* -%{_mandir}/man8/logresolve.8* +%{_mandir}/man1/httxt2dbm.1* +%{_mandir}/man1/ab.1* +%{_mandir}/man1/logresolve.1* %{_mandir}/man8/rotatelogs.8* %doc LICENSE NOTICE @@ -488,11 +487,12 @@ rm -rf $RPM_BUILD_ROOT %files devel %defattr(-,root,root) %{_includedir}/httpd -%{_sbindir}/apxs +%{_bindir}/apxs %{_sbindir}/checkgid -%{_sbindir}/dbmmanage +%{_bindir}/dbmmanage %{_sbindir}/envvars* -%{_mandir}/man8/apxs.8* +%{_mandir}/man1/dbmmanage.1* +%{_mandir}/man1/apxs.1* %dir %{_libdir}/httpd/build %{_libdir}/httpd/build/*.mk %{_libdir}/httpd/build/instdso.sh diff --git a/build/rules.mk.in b/build/rules.mk.in index 2bf16fe6..3dedb9a3 100644 --- a/build/rules.mk.in +++ b/build/rules.mk.in @@ -166,9 +166,15 @@ local-extraclean: local-distclean x-local-extraclean fi program-install: $(TARGETS) $(SHARED_TARGETS) - @if test -n '$(PROGRAMS)'; then \ + @if test -n '$(bin_PROGRAMS)'; then \ + test -d $(DESTDIR)$(bindir) || $(MKINSTALLDIRS) $(DESTDIR)$(bindir); \ + list='$(bin_PROGRAMS)'; for i in $$list; do \ + $(INSTALL_PROGRAM) $$i $(DESTDIR)$(bindir); \ + done; \ + fi + @if test -n '$(sbin_PROGRAMS)'; then \ test -d $(DESTDIR)$(sbindir) || $(MKINSTALLDIRS) $(DESTDIR)$(sbindir); \ - list='$(PROGRAMS)'; for i in $$list; do \ + list='$(sbin_PROGRAMS)'; for i in $$list; do \ $(INSTALL_PROGRAM) $$i $(DESTDIR)$(sbindir); \ done; \ fi |