summaryrefslogtreecommitdiff
path: root/Build/source/reautoconf
blob: 6ded33b7978ecf668ad2be17f3d4cd98a6675b8e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#! /bin/sh

echo "autoconf stuff in transition, do not use! --peb/martin/karl 1feb08"
/bin/false

# $Id$
# This "reautoconf" script found at the root of the TeX Live source tree 
# runs a hacked autoconf 2.13 in various directories and the
# current autoconf (from PATH) in the rest.
# Adapted from Peter Breitenlohner's original version.
#
# Copyright 2008 Karl Berry.
# Copyright 2005 Olaf Weber.
# Copyright 2004 Peter Breitenlohner.
#
# This program 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.
#
# This program 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 this library; if not, see <http://www.gnu.org/licenses/>.

unset CDPATH

[ -f ./texk/make/common.mk ] || {
	echo "$0: *** can't find ./texk/make/common.mk (from `pwd`)" >&2
	exit 1
}

# Remember the topdir.
topdir=`pwd`

# "acold" runs our hacked autoconf-2.13 with special includes.
acold () {	# $dir=current
	echo "$0: running our autoconf2.13 in \`$dir'"
	$topdir/texk/autoconf2.13 -m "$topdir/texk/etc/autoconf"
}

# acnew runs autoconf from PATH.
acnew () {	# $dir=current, $dir/$rdir->./texk/m4 with the KPSE macros.
	echo "$0: running $TL_AUTOCONF in \`$dir'"
	$TL_AUTOCONF --force || return
}

: ${TL_AUTOCONF=autoconf}
echo "$0: new $TL_AUTOCONF = `$TL_AUTOCONF --version | sed 1q`"
echo "$0: if you want to use a different autoconf, set TL_AUTOCONF."

# Autoconf in . (the top level).
dir=. rdir=texk/m4
acold

# Autoconf in all other directories
for dir in `find utils libs texk -name configure.in | sed 's,/configure.in$,,'`; do
  case $dir in
    */texi*)	# texinfo and texi2html are automade
    ;;
    */ncurses)	# ncurses has its own special configure
    ;;
    */icu*)     # ICU needs new autoconf
            (cd $dir; acnew)
    ;;
    */libgnuw32)# only for windows
    ;;
    utils/*)	# Skip everything in utils for now.
    ;;
    */curl)	# Is automade.
    ;;
    texk)	rdir=m4
            (cd $dir; acold)
    ;;
    texk/*)	rdir=`echo $dir | sed -e 's,^texk/,,' -e 's,[^/]*,..,g'`/m4
            case $dir in
                    */devnag|*/dvipdfmx|*/xdvipdfmx)
                            (cd $dir; acnew);;
                    *)	(cd $dir; acold);;
            esac
    ;;
    *)	rdir=`echo $dir | sed 's,[^/]*,..,g'`/texk/m4
            case $dir in
            */t1utils|*/lcdf-typetools|*/curl|*/expat)
                    (cd $dir; acnew) ;;
            *)	(cd $dir; acold) ;;
            esac
    ;;
esac
done

echo "$0: done."