blob: f388ddaec632ebfde69e43ad68da6855071458cb [file] [log] [blame]
#!/bin/sh -e
# 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.
cd `dirname $0`
get () {
variable_name=$1
echo "changequote(\`[', \`]')" > acinclude.m4.tmp
sed -e "s/m4_//" < acinclude.m4.in >> acinclude.m4.tmp
echo $variable_name >> acinclude.m4.tmp
if test -x "`which gm4 2> /dev/null || true`"; then
gm4 acinclude.m4.tmp | grep -v "^$" || true
else
if test -x "`which m4 2> /dev/null || true`"; then
m4 acinclude.m4.tmp | grep -v "^$" || true
else
echo unknown
fi
fi
rm -f acinclude.m4.tmp
}
if test -z "$REVISION"; then
if test -e .git; then
REVISION=`git describe --always`
fi
fi
if test -z "`get LOCAL_VERSION_STAGE`" -o -z "$REVISION"; then
sed "s/%revision%//" < acinclude.m4.in > acinclude.m4
else
sed "s/%revision%/$REVISION/" < acinclude.m4.in > acinclude.m4
fi
if test -e .git; then
OS=`uname -s`
case "$OS" in
Linux|CYGWIN*) # GNU sed
SED_ERE_FLAG=-r
;;
*) # BSD sed
SED_ERE_FLAG=-E
;;
esac
sed -e "/^#.*/d" THANKS.in > THANKS
CONTRIB_EMAIL_SED_COMMAND="s/^[[:blank:]]{5}[[:digit:]]+[[:blank:]]/ * /"
git shortlog -se 6c976bd..HEAD \
| grep -v @apache.org \
| sed $SED_ERE_FLAG -e "$CONTRIB_EMAIL_SED_COMMAND" >> THANKS
echo "" >> THANKS # simplest portable newline
echo "For a list of authors see the \`AUTHORS\` file." >> THANKS
fi
find_program() {
set +e
for f in "$@"
do
file=`which ${f} 2>/dev/null | grep -v '^no '`
if test -n "x${file}" -a -x "${file}"
then
echo ${file}
set -e
exit 0
fi
done
echo "Unable to find any variant: $@" 1>&2
echo 1>&2
echo "Have you installed a version of this package?" 1>&2
set -e
exit 1
}
LIBTOOLIZE=`find_program glibtoolize libtoolize`
ACLOCAL=`find_program aclocal-1.11 aclocal-1.10 aclocal-1.9 aclocal`
AUTOHEADER=`find_program autoheader`
AUTOMAKE=`find_program automake-1.11 automake-1.10 automake-1.9 automake`
AUTOCONF=`find_program autoconf`
get_aclocal_dir_list () {
aclocal_dir=`$ACLOCAL --print-ac-dir`
echo $aclocal_dir
aclocal_dirlist="$aclocal_dir/dirlist"
if test -e $aclocal_dirlist; then
cat $aclocal_dirlist | while read dir; do
if test -d "$dir"; then
echo $dir
fi
done
fi
}
aclocal_dir_list=`get_aclocal_dir_list`
if test -z "`find $aclocal_dir_list -name ax_check_icu.m4`"; then
echo "Unable to find the \`ax_check_icu.m4' file."
echo
echo "Have you installed GNU Autoconf Archive?"
exit 1
fi
if test -z "`find $aclocal_dir_list -name ax_lib_curl.m4`"; then
echo "Unable to find the \`ax_check_icu.m4' file."
echo
echo "Have you installed GNU Autoconf Archive?"
exit 1
fi
if test -z "`find $aclocal_dir_list -name pkg.m4`"; then
echo "Unable to find the \`pkg.m4' file."
echo
echo "Have you installed pkg-config?"
exit 1
fi
mkdir -p build-aux
mkdir -p m4
${LIBTOOLIZE} -f -c --automake
${ACLOCAL} -I m4 -Wall
${AUTOHEADER} -f
${AUTOMAKE} -f -a -Wall
${AUTOCONF} -f -Wall
rm -f INSTALL
ln -f -s "`dirname \`readlink build-aux/missing\``/INSTALL"
if test ! -s INSTALL; then
echo "Broken INSTALL file."
exit 1
fi
cat << EOF
You have bootstrapped Apache CouchDB, time to relax.
Run \`./configure' to configure the source before you install.
EOF