]> git.ipfire.org Git - thirdparty/rsync.git/blob - prepare-source
More tweaks for Actions.
[thirdparty/rsync.git] / prepare-source
1 #!/bin/sh
2 # Either use autoconf and autoheader to create configure.sh and config.h.in
3 # or (optionally) fetch the latest development versions of generated files.
4 #
5 # Specify one action or more than one to provide a fall-back:
6 #
7 # build build the config files [the default w/no arg]
8 # fetch fetch the latest dev autoconfig files
9 # fetchgen fetch all the latest dev generated files (including manpages)
10 # fetchSRC fetch the latest dev source files [NON-GENERATED FILES]
11 #
12 # The script stops after the first successful action.
13
14 dir=`dirname $0`
15 if test x"$dir" = x; then
16 dir=.
17 fi
18
19 if test "$dir" = '.'; then
20 branch=`packaging/prep-auto-dir` || exit 1
21 if test x"$branch" != x; then
22 cd build || exit 1
23 dir=..
24 fi
25 fi
26
27 if test "$dir" != '.'; then
28 for lnk in configure.ac m4; do
29 if test ! -h $lnk; then
30 rm -f $lnk # Just in case
31 ln -s "$dir/$lnk" $lnk
32 fi
33 done
34 for fn in configure.sh config.h.in aclocal.m4; do
35 test ! -f $fn && test -f "$dir/$fn" && cp -p "$dir/$fn" $fn
36 done
37 fi
38
39 if test $# = 0; then
40 set -- build
41 fi
42
43 for action in "${@}"; do
44 case "$action" in
45 build|make)
46 make -f "$dir/prepare-source.mak"
47 ;;
48 fetch|fetchgen)
49 if test "$action" = fetchgen; then
50 match='*'
51 else
52 match='[ca]*'
53 fi
54 $dir/rsync-ssl -iipc --no-motd "rsync://download.samba.org/rsyncftp/generated-files/$match" ./
55 test $? != 0 && continue
56 sleep 1 # The following files need to be newer than aclocal.m4
57 touch configure.sh config.h.in
58 ;;
59 fetchSRC)
60 ./rsync-ssl -iipr --no-motd --exclude=/.git/ rsync://download.samba.org/ftp/pub/unpacked/rsync/ .
61 ;;
62 *)
63 echo "Unknown action: $action"
64 exit 1
65 ;;
66 esac
67 if test $? = 0; then
68 exit
69 fi
70 done
71
72 exit 1