-
Notifications
You must be signed in to change notification settings - Fork 4
/
bootstrap.conf
160 lines (126 loc) · 4.04 KB
/
bootstrap.conf
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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
# bootstrap.conf (GNU M4) version 2017-01-03
# Written by Gary V. Vaughan, 2010
# Copyright (C) 2010, 2013-2014, 2017 Free Software Foundation, Inc.
# This file is part of GNU M4.
#
# GNU M4 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 3 of the License, or
# (at your option) any later version.
#
# GNU M4 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 program. If not, see <http://www.gnu.org/licenses/>.
## -------------- ##
## Configuration. ##
## -------------- ##
copyright_holder="Free Software Foundation, Inc."
# List of programs (and minimum versions) required to bootstrap, maintain
# and release Libtool.
buildreq='
help2man 1.29 http://www.gnu.org/s/help2man
makeinfo 4.13 http://www.gnu.org/s/texinfo
xz - http://tukaani.org/xz
'
# Instructions on how to install packages in $buildreq.
buildreq_readme=HACKING
# A file only visible in a vcs working directory.
checkout_only_file=HACKING
# Local gnulib submodule path.
gnulib_path=build-aux/gnulib
# Additional gnulib-tool options to use.
gnulib_tool_options=$gnulib_tool_options'
--libtool
'
# gnulib_modules must remain empty in order to get --update style
# gnulib-tool invocations, so we add the bootstrap components here.
gnulib_non_module_files=$gnulib_non_module_files"
build-aux/bootstrap.in
build-aux/extract-trace
build-aux/funclib.sh
build-aux/inline-source
build-aux/options-parser"
# List dependencies here too; we don't extract them, otherwise dependent
# modules could end up being imported to src/ *and* gnu/!
src_modules='
assure
getopt-gnu
getopt-posix
version-etc-fsf
version-etc
xstrtol
'
# What ignore files to maintain.
vc_ignore=".gitignore"
## --------------- ##
## Hook functions. ##
## --------------- ##
# m4_precopy_git_version_gen
# --------------------------
# Autopoint gets confused if git-version-gen is missing.
m4_precopy_git_version_gen ()
{
$debug_cmd
$require_build_aux
func_gnulib_tool_copy_file build-aux/git-version-gen $build_aux/git-version-gen
}
func_add_hook func_prep m4_precopy_git_version_gen
# m4_install_texinfo_diff_driver
# ------------------------------
# Help git to do a better job of merging texinfo files.
m4_install_texinfo_diff_driver ()
{
$debug_cmd
$require_git
test true = "$GIT" || {
if $GIT config diff.texinfo.funcname >/dev/null ; then
:
else
func_echo "initializing git texinfo diff driver"
git config diff.texinfo.funcname '^@node[ \t][ \t]*\\([^,][^,]*\\)'
fi
}
}
func_add_hook func_prep m4_install_texinfo_diff_driver
# m4_copy_src_modules
# -------------------
# Copy $src_modules from gnulib to src directory.
m4_copy_src_modules ()
{
$debug_cmd
$require_gnulib_tool
test true = "$gnulib_tool" || {
$require_macro_dir
for file in `$gnulib_tool --extract-filelist $src_modules | sort -u`
do
maybe_exit_cmd=:
func_basename $file
dest=$func_basename_result
case $file in
lib/*) dest=src/$dest ;;
m4/*) dest=$macro_dir/$dest ;;
*) func_error "$file: unknown file"
maybe_exit_cmd="exit $EXIT_FAILURE"
dest= ;;
esac
# Be sure to show all copying errors before bailing out
if test -n "$dest"; then
func_gnulib_tool_copy_file "$file" "$dest"
fi
done
$maybe_exit_cmd
}
}
func_add_hook func_gnulib_tool m4_copy_src_modules
# Local variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "# bootstrap.conf (GNU M4) version "
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "$"
# End: