Commit 33e6306a authored by Graham Leggett's avatar Graham Leggett
Browse files

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
parent c4c37e5b
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
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]
+0 −4
Original line number Diff line number Diff line
@@ -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

build/pkg/README

0 → 100644
+16 −0
Original line number Diff line number Diff line
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

build/pkg/buildpkg.sh

0 → 100755
+94 −0
Original line number Diff line number Diff line
#!/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

build/pkg/pkginfo.in

0 → 100644
+11 −0
Original line number Diff line number Diff line
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"
Loading