1#!/bin/sh 2# 3# Licensed to the Apache Software Foundation (ASF) under one or more 4# contributor license agreements. See the NOTICE file distributed with 5# this work for additional information regarding copyright ownership. 6# The ASF licenses this file to You under the Apache License, Version 2.0 7# (the "License"); you may not use this file except in compliance with 8# the License. You may obtain a copy of the License at 9# 10# http://www.apache.org/licenses/LICENSE-2.0 11# 12# Unless required by applicable law or agreed to in writing, software 13# distributed under the License is distributed on an "AS IS" BASIS, 14# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15# See the License for the specific language governing permissions and 16# limitations under the License. 17# 18# 19 20if [ "$1" = "--verbose" -o "$1" = "-v" ]; then 21 verbose="--verbose" 22 shift 23fi 24 25# Default place to look for apr source. Can be overridden with 26# --with-apr=[directory] 27apr_src_dir=../apr 28 29while test $# -gt 0 30do 31 # Normalize 32 case "$1" in 33 -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;; 34 *) optarg= ;; 35 esac 36 37 case "$1" in 38 --with-apr=*) 39 apr_src_dir=$optarg 40 ;; 41 esac 42 43 shift 44done 45 46if [ -f "$apr_src_dir/build/apr_common.m4" ]; then 47 apr_src_dir=`cd $apr_src_dir; pwd` 48 echo "" 49 echo "Looking for apr source in $apr_src_dir" 50else 51 echo "" 52 echo "Problem finding apr source in $apr_src_dir." 53 echo "Use:" 54 echo " --with-apr=[directory]" 55 exit 1 56fi 57 58set -e 59 60# Remove some files, then copy them from apr source tree 61rm -f build/apr_common.m4 build/find_apr.m4 build/install.sh \ 62 build/config.guess build/config.sub build/get-version.sh 63cp -p $apr_src_dir/build/apr_common.m4 $apr_src_dir/build/find_apr.m4 \ 64 $apr_src_dir/build/install.sh $apr_src_dir/build/config.guess \ 65 $apr_src_dir/build/config.sub $apr_src_dir/build/get-version.sh \ 66 build/ 67 68# Remove aclocal.m4 as it'll break some builds... 69rm -rf aclocal.m4 autom4te*.cache 70 71# 72# Generate the autoconf header (include/apu_config.h) and ./configure 73# 74echo "Creating include/private/apu_config.h ..." 75${AUTOHEADER:-autoheader} $verbose 76 77echo "Creating configure ..." 78### do some work to toss config.cache? 79if ${AUTOCONF:-autoconf} $verbose; then 80 : 81else 82 echo "autoconf failed" 83 exit 1 84fi 85 86# 87# Generate build-outputs.mk for the build system 88# 89echo "Generating 'make' outputs ..." 90$apr_src_dir/build/gen-build.py $verbose make 91 92# 93# If Expat has been bundled, then go and configure the thing 94# 95if [ -f xml/expat/buildconf.sh ]; then 96 echo "Invoking xml/expat/buildconf.sh ..." 97 (cd xml/expat; ./buildconf.sh $verbose) 98fi 99 100# Remove autoconf cache again 101rm -rf autom4te*.cache 102 103# Create RPM Spec file 104if [ -f `which cut` ]; then 105 echo rebuilding rpm spec file 106 REVISION=`build/get-version.sh all include/apu_version.h APU` 107 VERSION=`echo $REVISION | cut -d- -s -f1` 108 RELEASE=`echo $REVISION | cut -d- -s -f2` 109 if [ "x$VERSION" = "x" ]; then 110 VERSION=$REVISION 111 RELEASE=1 112 fi 113 sed -e "s/APU_VERSION/$VERSION/" -e "s/APU_RELEASE/$RELEASE/" \ 114 ./build/rpm/apr-util.spec.in > apr-util.spec 115fi 116 117