73 lines
1.7 KiB
Bash
Executable File
73 lines
1.7 KiB
Bash
Executable File
#!/bin/sh
|
|
# Either use autoconf and autoheader to create configure.sh and config.h.in
|
|
# or (optionally) fetch the latest development versions of generated files.
|
|
#
|
|
# Specify one action or more than one to provide a fall-back:
|
|
#
|
|
# build build the config files [the default w/no arg]
|
|
# fetch fetch the latest dev autoconfig files
|
|
# fetchgen fetch all the latest dev generated files (including man pages)
|
|
# fetchSRC fetch the latest dev source files [NON-GENERATED FILES]
|
|
#
|
|
# The script stops after the first successful action.
|
|
|
|
dir=`dirname $0`
|
|
if test x"$dir" = x; then
|
|
dir=.
|
|
fi
|
|
|
|
if test "$dir" = '.'; then
|
|
branch=`packaging/prep-auto-dir` || exit 1
|
|
if test x"$branch" != x; then
|
|
cd build || exit 1
|
|
dir=..
|
|
fi
|
|
fi
|
|
|
|
if test "$dir" != '.'; then
|
|
for lnk in configure.ac m4; do
|
|
if test ! -h $lnk; then
|
|
rm -f $lnk # Just in case
|
|
ln -s "$dir/$lnk" $lnk
|
|
fi
|
|
done
|
|
for fn in configure.sh config.h.in aclocal.m4; do
|
|
test ! -f $fn && test -f "$dir/$fn" && cp -p "$dir/$fn" $fn
|
|
done
|
|
fi
|
|
|
|
if test $# = 0; then
|
|
set -- build
|
|
fi
|
|
|
|
for action in "${@}"; do
|
|
case "$action" in
|
|
build|make)
|
|
make -f "$dir/prepare-source.mak"
|
|
;;
|
|
fetch|fetchgen)
|
|
if test "$action" = fetchgen; then
|
|
match='*'
|
|
else
|
|
match='[ca]*'
|
|
fi
|
|
$dir/rsync-ssl -iipc --no-motd "rsync://download.samba.org/rsyncftp/generated-files/$match" ./
|
|
test $? != 0 && continue
|
|
sleep 1 # The following files need to be newer than aclocal.m4
|
|
touch configure.sh config.h.in
|
|
;;
|
|
fetchSRC)
|
|
./rsync-ssl -iipr --no-motd --exclude=/.git/ rsync://download.samba.org/ftp/pub/unpacked/rsync/ .
|
|
;;
|
|
*)
|
|
echo "Unknown action: $action"
|
|
exit 1
|
|
;;
|
|
esac
|
|
if test $? = 0; then
|
|
exit
|
|
fi
|
|
done
|
|
|
|
exit 1
|