xref: /freebsd/contrib/pkgconf/autogen.sh (revision a3cefe7f2b4df0f70ff92d4570ce18e517af43ec)
1*a3cefe7fSPierre Pronchery#! /bin/sh
2*a3cefe7fSPierre Pronchery
3*a3cefe7fSPierre ProncheryTOP_DIR=$(dirname $0)
4*a3cefe7fSPierre ProncheryLAST_DIR=$PWD
5*a3cefe7fSPierre Pronchery
6*a3cefe7fSPierre Proncheryif test ! -f $TOP_DIR/configure.ac ; then
7*a3cefe7fSPierre Pronchery   echo "You must execute this script from the top level directory."
8*a3cefe7fSPierre Pronchery   exit 1
9*a3cefe7fSPierre Proncheryfi
10*a3cefe7fSPierre Pronchery
11*a3cefe7fSPierre ProncheryAUTOCONF=${AUTOCONF:-autoconf}
12*a3cefe7fSPierre ProncheryACLOCAL=${ACLOCAL:-aclocal}
13*a3cefe7fSPierre ProncheryAUTOHEADER=${AUTOHEADER:-autoheader}
14*a3cefe7fSPierre ProncheryAUTOMAKE=${AUTOMAKE:-automake}
15*a3cefe7fSPierre ProncheryLIBTOOLIZE=${LIBTOOLIZE:-libtoolize}
16*a3cefe7fSPierre Pronchery
17*a3cefe7fSPierre Proncherydump_help_screen ()
18*a3cefe7fSPierre Pronchery{
19*a3cefe7fSPierre Pronchery   echo "Usage: $0 [options]"
20*a3cefe7fSPierre Pronchery   echo
21*a3cefe7fSPierre Pronchery   echo "options:"
22*a3cefe7fSPierre Pronchery   echo "  -n           skip CVS changelog creation"
23*a3cefe7fSPierre Pronchery   echo "  -h,--help    show this help screen"
24*a3cefe7fSPierre Pronchery   echo
25*a3cefe7fSPierre Pronchery   exit 0
26*a3cefe7fSPierre Pronchery}
27*a3cefe7fSPierre Pronchery
28*a3cefe7fSPierre Proncheryparse_options ()
29*a3cefe7fSPierre Pronchery{
30*a3cefe7fSPierre Pronchery   while test "$1" != "" ; do
31*a3cefe7fSPierre Pronchery      case $1 in
32*a3cefe7fSPierre Pronchery         -h|--help)
33*a3cefe7fSPierre Pronchery            dump_help_screen
34*a3cefe7fSPierre Pronchery            ;;
35*a3cefe7fSPierre Pronchery         -n)
36*a3cefe7fSPierre Pronchery            SKIP_CVS_CHANGELOG=yes
37*a3cefe7fSPierre Pronchery            ;;
38*a3cefe7fSPierre Pronchery         *)
39*a3cefe7fSPierre Pronchery            echo Invalid argument - $1
40*a3cefe7fSPierre Pronchery            dump_help_screen
41*a3cefe7fSPierre Pronchery            ;;
42*a3cefe7fSPierre Pronchery      esac
43*a3cefe7fSPierre Pronchery      shift
44*a3cefe7fSPierre Pronchery   done
45*a3cefe7fSPierre Pronchery}
46*a3cefe7fSPierre Pronchery
47*a3cefe7fSPierre Proncheryrun_or_die ()
48*a3cefe7fSPierre Pronchery{
49*a3cefe7fSPierre Pronchery   COMMAND=$1
50*a3cefe7fSPierre Pronchery
51*a3cefe7fSPierre Pronchery   # check for empty commands
52*a3cefe7fSPierre Pronchery   if test -z "$COMMAND" ; then
53*a3cefe7fSPierre Pronchery      echo "*warning* no command specified"
54*a3cefe7fSPierre Pronchery      return 1
55*a3cefe7fSPierre Pronchery   fi
56*a3cefe7fSPierre Pronchery
57*a3cefe7fSPierre Pronchery   shift;
58*a3cefe7fSPierre Pronchery
59*a3cefe7fSPierre Pronchery   OPTIONS="$@"
60*a3cefe7fSPierre Pronchery
61*a3cefe7fSPierre Pronchery   # print a message
62*a3cefe7fSPierre Pronchery   echo -n "*info* running $COMMAND"
63*a3cefe7fSPierre Pronchery   if test -n "$OPTIONS" ; then
64*a3cefe7fSPierre Pronchery      echo " ($OPTIONS)"
65*a3cefe7fSPierre Pronchery   else
66*a3cefe7fSPierre Pronchery      echo
67*a3cefe7fSPierre Pronchery   fi
68*a3cefe7fSPierre Pronchery
69*a3cefe7fSPierre Pronchery   # run or die
70*a3cefe7fSPierre Pronchery   $COMMAND $OPTIONS ; RESULT=$?
71*a3cefe7fSPierre Pronchery   if test $RESULT -ne 0 ; then
72*a3cefe7fSPierre Pronchery      echo "*error* $COMMAND failed. (exit code = $RESULT)"
73*a3cefe7fSPierre Pronchery      exit 1
74*a3cefe7fSPierre Pronchery   fi
75*a3cefe7fSPierre Pronchery
76*a3cefe7fSPierre Pronchery   return 0
77*a3cefe7fSPierre Pronchery}
78*a3cefe7fSPierre Pronchery
79*a3cefe7fSPierre Proncheryparse_options "$@"
80*a3cefe7fSPierre Pronchery
81*a3cefe7fSPierre Proncherycd $TOP_DIR
82*a3cefe7fSPierre Pronchery
83*a3cefe7fSPierre Proncheryrun_or_die $ACLOCAL
84*a3cefe7fSPierre Proncheryrun_or_die $AUTOHEADER
85*a3cefe7fSPierre Proncheryrun_or_die $AUTOCONF
86*a3cefe7fSPierre Proncheryrun_or_die $LIBTOOLIZE --install
87*a3cefe7fSPierre Proncheryrun_or_die $AUTOMAKE --add-missing
88