]> git.ipfire.org Git - thirdparty/krb5.git/commitdiff
Remove util/reconf 374/head
authorTom Yu <tlyu@mit.edu>
Thu, 17 Dec 2015 22:42:05 +0000 (17:42 -0500)
committerTom Yu <tlyu@mit.edu>
Fri, 18 Dec 2015 01:25:48 +0000 (20:25 -0500)
The bulk of the util/reconf script is to detect old versions of
autoconf and possibly work around bugs in them.  Require
autoconf>=2.63, and remove the util/reconf script.  Adjust
documentation and other scripts accordingly.

Also remove Makefile rules that remove autom4te.cache.  Such rules
were supposedly necessary when mixing of different versions of
autoconf was common; this seems to be less of an issue now.

ticket: 8299
subject: Remove util/reconf

doc/build/doing_build.rst
src/aclocal.m4
src/config/post.in
src/include/Makefile.in
src/util/mkrel
src/util/reconf [deleted file]

index 3c686cc71665e9af2b329e39cf532f04bc15463f..25daa5255a96f3f3f14dfc72a18ddac726cf2cd0 100644 (file)
@@ -1,38 +1,6 @@
 Doing the build
 ===============
 
-Using autoconf
---------------
-
-(If you are not a developer, you can skip this section.)
-
-In the Kerberos V5 source directory, there is a configure script which
-automatically determines the compilation environment and creates the
-proper Makefiles for a particular platform.  This configure script is
-generated using autoconf, which you should already have installed.
-
-Normal users will not need to worry about running autoconf; the
-distribution comes with the configure script already prebuilt.
-
-One tool which is provided for the convenience of developers can be
-found in ``src/util/reconf``.  This program should be run while the
-current directory is the top source directory.  It will automatically
-rebuild the configure script if it needs rebuilding.  If you know that
-you have made a change that will require that the configure file be
-rebuilt from scratch, specify the **-**\ **-force** option::
-
-    cd /u1/krb5-VERSION/src
-    ./util/reconf --force
-
-Then follow the instructions for building packaged source trees
-(below).  To install the binaries into a binary tree, do::
-
-    cd /u1/krb5-VERSION/src
-    make all
-    make install DESTDIR=somewhere-else
-
-You have a number of different options in how to build Kerberos.
-
 .. _do_build:
 
 Building within a single tree
@@ -165,5 +133,26 @@ Cleaning up the build
   command.
 * Use ``make distclean`` to remove all files generated by running
   ./configure script.  After running ``make distclean`` your source
-  tree (ideally) should look like the raw (just un-tarred) source tree
-  with executed ``util/reconf`` command.
+  tree (ideally) should look like the raw (just un-tarred) source
+  tree.
+
+Using autoconf
+--------------
+
+(If you are not a developer, you can ignore this section.)
+
+In the Kerberos V5 source directory, there is a configure script which
+automatically determines the compilation environment and creates the
+proper Makefiles for a particular platform.  This configure script is
+generated using autoconf, which you should already have installed if
+you will be making changes to ``src/configure.in``.
+
+Normal users will not need to worry about running autoconf; the
+distribution comes with the configure script already prebuilt.
+
+The autoconf package comes with a script called ``autoreconf`` that
+will automatically run ``autoconf`` and ``autoheader`` as needed.  You
+should run ``autoreconf`` from the top source directory, e.g.::
+
+    cd /u1/krb5-VERSION/src
+    autoreconf --verbose
index e2d5434eed3a32180a17b56af7bc70ecae82a5ea..118c2c578094928c20149d09c788dfe3060612c6 100644 (file)
@@ -1,4 +1,4 @@
-AC_PREREQ(2.53)
+AC_PREREQ(2.63)
 AC_COPYRIGHT([Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009
 Massachusetts Institute of Technology.
 ])
index 07816ed841326acf44144f799178c09f5b1a296a..f0733969522b7c37550278b055ff403306b0d85b 100644 (file)
@@ -150,7 +150,7 @@ clean:: clean-$(WHAT)
 clean-unix::
        $(RM) $(OBJS) $(DEPTARGETS_CLEAN) $(EXTRA_FILES)
        $(RM) et-[ch]-*.et et-[ch]-*.[ch] testlog
-       -$(RM) -r $(top_srcdir)/autom4te.cache testdir
+       -$(RM) -r testdir
 
 clean-windows::
        $(RM) *.$(OBJEXT)
@@ -173,17 +173,12 @@ Makefile: $(srcdir)/Makefile.in $(srcdir)/deps $(BUILDTOP)/config.status \
        cd $(BUILDTOP) && $(SHELL) config.status $(mydir)/Makefile
 $(BUILDTOP)/config.status: $(top_srcdir)/configure
        cd $(BUILDTOP) && $(SHELL) config.status --recheck
-# autom4te.cache supposedly improves performance with multiple runs, but
-# it breaks across versions, and around MIT we've got plenty of version
-# mixing.  So nuke it.
 $(top_srcdir)/configure: @MAINT@ \
                $(top_srcdir)/configure.in \
                $(top_srcdir)/patchlevel.h \
                $(top_srcdir)/aclocal.m4
-       -$(RM) -r $(top_srcdir)/autom4te.cache
        cd $(top_srcdir) && \
                $(AUTOCONF) --include=$(CONFIG_RELTOPDIR) $(AUTOCONFFLAGS)
-       -$(RM) -r $(top_srcdir)/autom4te.cache
 
 RECURSE_TARGETS=all-recurse clean-recurse distclean-recurse install-recurse \
        generate-files-mac-recurse \
index b160ea4f58f178ea9b487012c407bc830304ac81..4bb11e48687b00b1781c4a1cce97621ad30cb565 100644 (file)
@@ -34,10 +34,8 @@ all-unix:: @MAINT@ verify-calling-conventions-krb5
 
 $(srcdir)/autoconf.h.in: @MAINT@ $(srcdir)/autoconf.stmp
 $(srcdir)/autoconf.stmp: $(top_srcdir)/configure.in $(top_srcdir)/aclocal.m4
-       $(RM) -r $(top_srcdir)/autom4te.cache
        cd $(top_srcdir) && $(AUTOHEADER) --include=$(CONFIG_RELTOPDIR) $(AUTOHEADERFLAGS)
        touch $(srcdir)/autoconf.stmp
-       $(RM) -r $(top_srcdir)/autom4te.cache
 
 ##DOS##autoconf.h: win-mac.h
 ##DOS##        $(CP) win-mac.h $@
index a1c0d360998022bedcab827317fa6b1c262c9293..6223cf1317a09c518afb56286508f5b1fb6ddd8d 100755 (executable)
@@ -167,7 +167,7 @@ if test $dosrc = t; then
                        make)
        fi
        echo "Creating configure scripts..."
-       (cd $reldir/src; util/reconf)
+       (cd $reldir/src; autoreconf -v)
 
        if test -d $reldir/src/util/autoconf; then
                echo "Cleaning src/util/autoconf..."
@@ -179,7 +179,7 @@ echo "Nuking unneeded files..."
 find $reldir \( -name TODO -o -name todo -o -name .cvsignore \
        -o -name .gitignore -o -name BADSYMS -o -name .Sanitize \
        -o -name .rconf \) -print | xargs rm -f || true
-find $reldir -type d \( -name autom4te.cache \
+find $reldir -depth -type d \( -name autom4te.cache \
        -o -name \$ac_config_fragdir \) -exec rm -rf {} \; || true
 rm -rf $reldir/.git || true
 
diff --git a/src/util/reconf b/src/util/reconf
deleted file mode 100755 (executable)
index aec534f..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-#!/bin/sh
-
-force=
-autoreconfprog=autoreconf
-localdir=.
-autoreconfoptions=""
-verbose=false
-localdirarg=
-
-autoreconf="/bin/sh $autoreconfprog"
-
-# This should prevent autoreconf -- at least, the Debian version -- from
-# running aclocal in directories with configure.in but not aclocal.m4, so
-# that we can find the top-level one via the --include option.
-ACLOCAL=true ; export ACLOCAL
-
-usage="Usage: $0 [--force] [--verbose] [--help]"
-for option
-do
-  case "$option" in
-  --force | -f)
-    echo "Remaking all configuration files"
-    force=--force ;;
-  -help | --help | --hel | --he | --h)
-    echo "$usage"; exit 0 ;;
-  -v | --verbose)
-    verbose=true ;;
-  *) echo "$usage"; exit 1 ;;
-  esac
-done
-
-# Currently (2003-04-24) we need 2.52 or later.
-patb="2.(1[0-9][0-9])|(5[2-9])|([6-9][0-9])"
-
-# sedcmd1 recognizes the older 2.12 version, and sedcmd2 the newer 2.49
-sedcmd1="s,.*version \(.*\)$,\1,"
-sedcmd2="s,.*) \(.*\)$,\1,;1q"
-
-if autoreconf --version | sed -e "$sedcmd1" -e "$sedcmd2" | egrep "$patb" >/dev/null && \
-    autoconf --version  | sed -e "$sedcmd1" -e "$sedcmd2"  | egrep "$patb" >/dev/null && \
-    autoheader --version | sed -e "$sedcmd1" -e "$sedcmd2" | egrep "$patb" >/dev/null; then
-    autoreconf=autoreconf
-    autoreconfoptions=
-    autoconfversion=`autoconf --version | sed -e "$sedcmd1" -e "$sedcmd2"`
-       echo "Using autoconf version $autoconfversion found in your path..."
-       localdir=`pwd`
-
-       # Determine if we need to patch autoreconf for 2.53
-       case "$autoconfversion" in
-         2.52)
-              echo "WARNING: autoconf 2.52 is known to generate buggy configure scripts!"
-              ;;
-         2.53)
-              echo "Patching autoreconf"
-              # Walk the path to find autoreconf
-              autoreconfpath=
-              for i in `echo $PATH | sed -e 's/:/ /g'` ; do
-                  if test -r $i/autoreconf; then
-                      autoreconfpath=$i/autoreconf
-                      break
-                  fi
-              done
-              if test "x$autoreconfpath" = "x" ; then 
-                  echo "Could not find autoreconf executable!!!"
-                  exit
-              fi
-              
-              echo "About to patch $autoreconfpath to ..."
-              TMPCMD=/tmp/autoreconf$$
-              sed -e 's/push @ARGV, $_;/push @ARGV, catfile ($directory, $_);/' $autoreconfpath > $TMPCMD
-              autoreconf="/bin/sh $TMPCMD"
-              trap "rm $TMPCMD" 0
-              ;;
-         *)
-              ;;
-       esac
-
-       # Determine the proper argument to autoreconf 
-       case "$autoconfversion" in
-         2.1*)
-              localdirarg="-l"
-              ;;
-         2.5[23])
-              localdirarg="-l"
-              ;;
-           *)
-              localdirarg="-I"
-              ;;
-       esac
-else
-       echo "Couldn't find autoconf 2.52 or higher in your path."
-       echo " "
-       echo "Please install or add to your path and re-run ./util/reconf"
-       exit 1
-fi
-
-if $verbose ; then 
-       echo $autoreconf $autoreconfoptions $localdirarg $localdir --verbose $force
-fi
-$autoreconf $autoreconfoptions  $localdirarg $localdir --verbose $force || exit 1
-if test $? = 0 ; then
-    if test ! -d include/autoconf.stmp ; then
-       cp /dev/null include/autoconf.stmp
-    fi
-fi
-find . -name autom4te.cache -print | xargs rm -rf