summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGraham Leggett <minfrin@apache.org>2005-03-30 11:00:06 +0000
committerGraham Leggett <minfrin@apache.org>2005-03-30 11:00:06 +0000
commitc2eb730569715d4e68dc0bfe6f3fa1629b0b4a0e (patch)
treed38ab8234b206ff604e226d0b4eef2255430cc4a
parent17ac47209072655a1b7a1b40210437d7bfa668c8 (diff)
downloadhttpd-c2eb730569715d4e68dc0bfe6f3fa1629b0b4a0e.tar.gz
Add a build script to create a solaris package. (packaging build script: lazy
consensus) git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x@159475 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--CHANGES2
-rw-r--r--STATUS4
-rw-r--r--build/pkg/README16
-rwxr-xr-xbuild/pkg/buildpkg.sh94
-rw-r--r--build/pkg/pkginfo.in11
-rw-r--r--configure.in6
6 files changed, 128 insertions, 5 deletions
diff --git a/CHANGES b/CHANGES
index 480ee17b55..900704994b 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,7 @@
Changes with Apache 2.0.54
+ *) Add a build script to create a solaris package. [Graham Leggett]
+
*) worker MPM: Fix a problem which could cause httpd processes to
remain active after shutdown. [Jeff Trawick]
diff --git a/STATUS b/STATUS
index e63bdabd2c..850e0f0a62 100644
--- a/STATUS
+++ b/STATUS
@@ -94,10 +94,6 @@ PATCHES TO BACKPORT FROM TRUNK:
identify exactly what the proposed changes are! ]
[ please append new backports at the end of this list not the top. ]
- *) Add a build script to create a solaris package.
- svn rev 124104
- +1: minfrin, trawick
-
*) util_ldap: Add the directive LDAPConnectionTimeout to control
the socket timeout value when binding to an LDAP server
svn rev 126565
diff --git a/build/pkg/README b/build/pkg/README
new file mode 100644
index 0000000000..147c1f1e58
--- /dev/null
+++ b/build/pkg/README
@@ -0,0 +1,16 @@
+The script in this directory will attempt to build a Solaris package
+out of a source tree for httpd.
+
+To build a package, make sure you are in the root of the source tree,
+and run:
+
+build/pkg/buildpkg.sh
+
+A Solaris package called httpd-<version>-<architecture>-local.gz will be
+created in the root of the source tree.
+
+By default, the script will attempt to find a system installed version of
+APR and APR-util v1. You may override the location of apr or apr-util like so:
+
+build/pkg/buildpkg.sh --with-apr=some/other/path --with-apr-util=some/other/path
+
diff --git a/build/pkg/buildpkg.sh b/build/pkg/buildpkg.sh
new file mode 100755
index 0000000000..8862014b4e
--- /dev/null
+++ b/build/pkg/buildpkg.sh
@@ -0,0 +1,94 @@
+#!/bin/sh
+# Copyright 2000-2005 The Apache Software Foundation or its licensors, as
+# applicable.
+#
+# Licensed 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.
+#
+#
+
+# buildpkg.sh: This script builds a Solaris PKG from the source tree
+# provided.
+
+LAYOUT=Apache
+PREFIX=/usr/local/apache2
+TEMPDIR=/var/tmp/$USER/httpd-root
+rm -rf $TEMPDIR
+
+apr_config=`which apr-config`
+apu_config=`which apu-config`
+
+while test $# -gt 0
+do
+ # Normalize
+ case "$1" in
+ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+ *) optarg= ;;
+ esac
+
+ case "$1" in
+ --with-apr=*)
+ apr_config=$optarg
+ ;;
+ esac
+
+ case "$1" in
+ --with-apr-util=*)
+ apu_config=$optarg
+ ;;
+ esac
+
+ shift
+done
+
+if [ ! -f "$apr_config" -a ! -f "$apr_config/configure.in" ]; then
+ echo "The apr source directory / apr-1-config could not be found"
+ echo "Usage: buildpkg [--with-apr=[dir|file]] [--with-apr-util=[dir|file]]"
+ exit 1
+fi
+
+if [ ! -f "$apu_config" -a ! -f "$apu_config/configure.in" ]; then
+ echo "The apu source directory / apu-1-config could not be found"
+ echo "Usage: buildpkg [--with-apr=[dir|file]] [--with-apr-util=[dir|file]]"
+ exit 1
+fi
+
+./configure --enable-layout=$LAYOUT \
+ --with-apr=$apr_config \
+ --with-apr-util=$apu_config \
+ --enable-mods-shared=all \
+ --with-devrandom \
+ --with-ldap --enable-ldap --enable-authnz-ldap \
+ --enable-cache --enable-disk-cache --enable-mem-cache \
+ --enable-ssl --with-ssl \
+ --enable-deflate --enable-cgid \
+ --enable-proxy --enable-proxy-connect \
+ --enable-proxy-http --enable-proxy-ftp
+
+make
+make install DESTDIR=$TEMPDIR
+. build/pkg/pkginfo
+cp build/pkg/pkginfo $TEMPDIR$PREFIX
+
+current=`pwd`
+cd $TEMPDIR$PREFIX
+echo "i pkginfo=./pkginfo" > prototype
+find . -print | grep -v ./prototype | grep -v ./pkginfo | pkgproto | awk '{print $1" "$2" "$3" "$4" root bin"}' >> prototype
+mkdir $TEMPDIR/pkg
+pkgmk -r $TEMPDIR$PREFIX -d $TEMPDIR/pkg
+
+cd $current
+pkgtrans -s $TEMPDIR/pkg $current/$NAME-$VERSION-$ARCH-local
+gzip $current/$NAME-$VERSION-$ARCH-local
+
+rm -rf $TEMPDIR
+
diff --git a/build/pkg/pkginfo.in b/build/pkg/pkginfo.in
new file mode 100644
index 0000000000..928dad4636
--- /dev/null
+++ b/build/pkg/pkginfo.in
@@ -0,0 +1,11 @@
+PKG="ASFhttpd"
+NAME="httpd"
+ARCH="@target_cpu@"
+VERSION="@HTTPD_VERSION@"
+CATEGORY="application"
+VENDOR="Apache Software Foundation"
+EMAIL="dev@httpd.apache.org"
+PSTAMP="dev@httpd.apache.org"
+BASEDIR="@prefix@"
+CLASSES="none"
+
diff --git a/configure.in b/configure.in
index 24bd014d00..fffc863f4d 100644
--- a/configure.in
+++ b/configure.in
@@ -579,7 +579,11 @@ AC_SUBST(ap_make_delimiter)
dnl Ensure that docs/conf is created.
test -d docs/conf||$mkdir_p docs/conf
-AC_OUTPUT($APACHE_OUTPUT_FILES docs/conf/httpd-std.conf docs/conf/ssl-std.conf include/ap_config_layout.h support/apxs support/apachectl support/dbmmanage support/envvars-std support/log_server_status support/logresolve.pl support/phf_abuse_log.cgi support/split-logfile build/rules.mk,[true],[
+dnl Ensure that the httpd version is included
+HTTPD_VERSION=`build/get-version.sh all include/ap_release.h AP_SERVER`
+AC_SUBST(HTTPD_VERSION)
+
+AC_OUTPUT($APACHE_OUTPUT_FILES docs/conf/httpd-std.conf docs/conf/ssl-std.conf include/ap_config_layout.h support/apxs support/apachectl support/dbmmanage support/envvars-std support/log_server_status support/logresolve.pl support/phf_abuse_log.cgi support/split-logfile build/rules.mk build/pkg/pkginfo,[true],[
APACHE_GEN_MAKEFILES
])