findlinks, mklinks, mdw-setup: Spruce up style.
[cfd] / mdw-setup
index 276b6da..57dbd90 100755 (executable)
--- a/mdw-setup
+++ b/mdw-setup
@@ -1,22 +1,46 @@
 #! /bin/sh
+### -*-sh-*-
+###
+### Create links to the repository
+###
+### (c) 1997 Mark Wooding
+###
+
+###----- Licensing notice ---------------------------------------------------
+###
+### This file is part of the Common Files Distribution (`common').
+###
+### `Common' is free software; you can redistribute it and/or modify
+### it under the terms of the GNU General Public License as published by
+### the Free Software Foundation; either version 2 of the License, or
+### (at your option) any later version.
+###
+### `Common' is distributed in the hope that it will be useful,
+### but WITHOUT ANY WARRANTY; without even the implied warranty of
+### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+### GNU General Public License for more details.
+###
+### You should have received a copy of the GNU General Public License
+### along with `common'; if not, write to the Free Software Foundation,
+### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
 set -e
 
-### Basic setup stuff
+###--------------------------------------------------------------------------
+### Basic setup stuff.
+
 ego=$(echo "$0" | sed 's:^.*[/\\]::; s:\.*$::')
-usage="Usage: $ego [--debian]"
+usage="Usage: $ego"
+
+###--------------------------------------------------------------------------
+### Parse command line arguments.
 
-### Parse options
-debian=no
 while [ $# -gt 0 ]; do
   case "$1" in
     --help | -h | --usage | -u)
       echo "$usage"
       exit
       ;;
-    --debian)
-      debian=yes
-      ;;
     --)
       shift
       break
@@ -28,15 +52,25 @@ while [ $# -gt 0 ]; do
   esac
   shift
 done
+
 if [ $# -ne 0 ]; then
   echo >&2 "$usage"
   exit 1
 fi
 
-### Link any strange common files we need
+###--------------------------------------------------------------------------
+### Link any strange common files we need.
+
 [ -f .links ] && mklinks
 
-### Grind through the Autoconf machinery
+###--------------------------------------------------------------------------
+### Do any initial local stuff.
+
+[ -x build-setup ] && ./build-setup start
+
+###--------------------------------------------------------------------------
+### Grind through the Autoconf machinery.
+
 configure=
 for i in configure.ac configure.in; do
   [ -f $i ] && configure=$i
@@ -49,11 +83,22 @@ if [ "$configure" ]; then
      m4 Makefile.m4 >Makefile.am.new &&
      mv Makefile.am.new Makefile.am)
   done
-  mkaclocal
-  autoconf
-  grep >/dev/null AM_CONFIG_HEADER $configure && autoheader
+  aclocalargs=
+  for i in config m4; do [ -d $i ] && aclocalargs="$aclocalargs -I $i"; done
+  aclocal $aclocalargs
+  autoconf --force
+  if grep >/dev/null 'AC_CONFIG_AUX_DIR' $configure; then
+    auxdir=$(
+      sed -n 's:^.*AC_CONFIG_AUX_DIR(\[\?\([^])]*\)\]\?).*$:\1:p' $configure)
+    mkdir -p $auxdir
+  fi
+  grep >/dev/null 'A[MC]_CONFIG_HEADER' $configure && autoheader
   [ -f Makefile.am ] && automake -a
 fi
 
-### Maybe make a build directory
-[ $debian = no ] && [ ! -e build ] && mkdir build
+###--------------------------------------------------------------------------
+### Do any final local stuff.
+
+[ -x build-setup ] && ./build-setup end
+
+###------ That's all, folks -------------------------------------------------