-
Notifications
You must be signed in to change notification settings - Fork 15
Expand file tree
/
Copy pathbootstrap.conf
More file actions
147 lines (123 loc) · 4.09 KB
/
Copy pathbootstrap.conf
File metadata and controls
147 lines (123 loc) · 4.09 KB
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
# bootstrap.conf
#
# Copyright (c) 2013-2024 Reuben Thomas <rrt@sc3d.org>
#
# This file is part of libpaper.
#
# This program is free software: you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 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 Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with this program. If not, see
# <https://www.gnu.org/licenses/lgpl-2.1.html>.
## -------------- ##
## Configuration. ##
## -------------- ##
# File that should exist relative to the top directory of a checked out
# hierarchy, but not in a distribution tarball.
checkout_only_file=.gitignore
# List of programs, minimum versions, and software urls required to
# bootstrap, maintain and release.
# Build prerequisites
buildreq='
automake 1.11.2 https://www.gnu.org/s/automake
git 1.5.5 https://git-scm.com
gpg 1.4.11 https://www.gnupg.org
help2man 1.29 https://www.gnu.org/s/help2man
m4 1.4.12 https://www.gnu.org/s/m4
perl 5.5 https://perl.com
tar - https://www.gnu.org/s/tar
'
# Non-default gnulib directory options.
source_base=libgnu
local_gl_path=gl:gl-mod/bootstrap
gnulib_git_submodules=gl-mod/bootstrap
gnulib_clone_since=2022-11-01
# Additional gnulib-tool options to use.
gnulib_tool_options='
--no-changelog
--makefile-name=Makefile.gnulib
--lgpl=2
'
# gnulib modules used by this package.
gnulib_modules='
bootstrap
manywarnings
relocatable-lib-lgpl
'
# Extra gnulib files that are not in modules, which override files of
# the same name installed by other bootstrap tools.
gnulib_non_module_files="$gnulib_non_module_files"'
build-aux/x-to-1.in
'
## -------------------- ##
## Resource management. ##
## -------------------- ##
# require_source_base
# -------------------
# Ensure any source_base setting in this file or `gnulib-cache.m4`
# is used for $source_base. If both are the empty string before
# call this function, $source_base will still be the empty string
# afterwards. Use ${source_base-lib} if you are looking at files
# inside the gnulib directory.
require_source_base=paper_require_source_base
paper_require_source_base ()
{
$debug_cmd
test -n "$source_base" || {
$require_gnulib_cache
$require_macro_dir
func_extract_trace "gl_SOURCE_BASE" "$gnulib_cache"
source_base="$func_extract_trace_result"
test -n "$source_base" && func_verbose "source_base='$source_base'"
}
require_source_base=:
}
## --------------- ##
## Hook functions. ##
## --------------- ##
# paper_ignore_gnulib_ignore
# --------------------------
# gnulib-tool updates m4/.gitignore and lib/.gitignore, and keeping
# generated files under version control does not make sense. Since
# lib is entirely ignored, we only need to prepopulate the m4 ignore
# files with generated files not tracked by gnulib-tool.
paper_ignore_gnulib_ignore ()
{
$debug_cmd
$require_macro_dir
if test -f "$macro_dir/.gitignore" ; then
:
else
func_verbose "creating initial \`$macro_dir/.gitignore'"
cat > $macro_dir/.gitignore <<\EOF
# files created by bootstrap, but that gnulib doesn't track
*~
/.gitignore
/gnulib-comp.m4
EOF
fi
}
func_add_hook func_prep paper_ignore_gnulib_ignore
# paper_src_gnulib
# ----------------
# Run gnulib-tool in src/
paper_src_gnulib ()
{
./gnulib/gnulib-tool --import --libtool --lib=libgnupaper \
--source-base=src/libgnu --m4-base=src/m4 --macro-prefix=gl_paper \
--makefile-name=Makefile.gnulib \
relocatable-prog xvasprintf getopt-gnu progname quote
}
func_add_hook func_gnulib_tool paper_src_gnulib
# Local variables:
# mode: shell-script
# sh-indentation: 4
# End: