fc22128784758909f51a5c351bfabc8741c9a8d9
[chise/xemacs-chise.git.1] / lib-src / config.values.sh
1 #! /bin/sh
2 # config.values.sh --- create config.values.in from ../configure
3
4 # Author:       Martin Buchholz
5 # Maintainer:   Martin Buchholz
6 # Keywords:     configure elisp report-xemacs-bugs
7
8 # This file is part of XEmacs.
9
10 # XEmacs is free software; you can redistribute it and/or modify it
11 # under the terms of the GNU General Public License as published by
12 # the Free Software Foundation; either version 2, or (at your option)
13 # any later version.
14
15 # XEmacs is distributed in the hope that it will be useful, but
16 # WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
18 # General Public License for more details.
19
20 # You should have received a copy of the GNU General Public License
21 # along with XEmacs; see the file COPYING.  If not, write to
22 # the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
23 # Boston, MA 02111-1307, USA.
24
25 ### Commentary:
26
27 ## Extract all the @foo@ configuration symbols from ../configure
28 ## to make them available to elisp later (see util/config.el)
29 ## Primarily useful for creating ridiculously verbose bug reports.
30 ##
31 ## See lisp/utils/config.el, ../configure.in,
32 ## and the Autoconf documentation on AC_OUTPUT, for more details.
33 ##
34 ## This script needs only to be run occasionally (before a Net release)
35 ## by an XEmacs Maintainer (consider yourself so blessed, if you are
36 ## actually reading this commentary).
37 ##
38 if test ! -r ./configure; then
39   cd ..
40   if test ! -r ./configure; then
41     echo "Can't find configure!";
42     exit 1;
43   fi
44 fi
45
46 exec < ./configure > "lib-src/config.values.in"
47 cat <<\EOF
48 ;;; Do not edit this file!
49 ;;; This file was automatically generated, by the config.values.sh script,
50 ;;; from configure, which was itself automatically generated from configure.in.
51 ;;;
52 ;;; See lisp/util/config.el for details on how this file is used.
53 ;;;
54 ;;; You are trapped in a twisty maze of strange-looking files, all autogenerated...
55
56 ;;; configure        is created, from configure.in,     by autoconf
57 ;;; config.values.in is created, from configure,        by config.values.sh
58 ;;; config.values    is created, from config.values.in, by configure
59 ;;; config.values    is read by lisp/utils/config.el,
60 ;;;                  to create the (Lisp object) config-value-hash-table
61
62 ;;; Variables defined in configure by AC_SUBST follow:
63 ;;; (These are used in Makefiles)
64
65 EOF
66 sed -n '/^s%@\([A-Za-z_][A-Za-z_]*\)@%\$\1%g$/ {
67   s/^s%@\([A-Za-z_][A-Za-z_]*\)@%\$\1%g$/\1 "@\1@"/
68   p
69 }' | \
70 sort -u
71 cat <<\EOF
72
73 ;;; Variables defined in configure by AC_DEFINE and AC_DEFINE_UNQUOTED follow:
74 ;;; (These are used in C code)
75
76 EOF