4517db3592
Upgrade Gnulib files to 20190105. It's much easier to maintain GRUB's use of portability support files from Gnulib when the process is automatic and driven by a single configuration file, rather than by maintainers occasionally running gnulib-tool and committing the result. Removing these automatically-copied files from revision control also removes the temptation to hack the output in ways that are difficult for future maintainers to follow. Gnulib includes a "bootstrap" program which is designed for this. The canonical way to bootstrap GRUB from revision control is now "./bootstrap", but "./autogen.sh" is still useful if you just want to generate the GRUB-specific parts of the build system. GRUB now requires Autoconf >= 2.63 and Automake >= 1.11, in line with Gnulib. Gnulib source code is now placed in grub-core/lib/gnulib/ (which should not be edited directly), and GRUB's patches are in grub-core/lib/gnulib-patches/. I've added a few notes to the developer manual on how to maintain this. Signed-off-by: Colin Watson <cjwatson@ubuntu.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
90 lines
2.1 KiB
Text
90 lines
2.1 KiB
Text
# Bootstrap configuration.
|
|
|
|
# Copyright (C) 2006-2019 Free Software Foundation, Inc.
|
|
|
|
# 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 3 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 program. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
|
|
GNULIB_REVISION=d271f868a8df9bbec29049d01e056481b7a1a263
|
|
|
|
# gnulib modules used by this package.
|
|
# mbswidth is used by gnulib-fix-width.diff's changes to argp rather than
|
|
# directly.
|
|
gnulib_modules="
|
|
argp
|
|
error
|
|
fnmatch
|
|
getdelim
|
|
getline
|
|
gettext-h
|
|
gitlog-to-changelog
|
|
mbswidth
|
|
progname
|
|
realloc-gnu
|
|
regex
|
|
"
|
|
|
|
gnulib_tool_option_extras="\
|
|
--no-conditional-dependencies \
|
|
--no-vc-files \
|
|
"
|
|
|
|
gnulib_name=libgnu
|
|
source_base=grub-core/lib/gnulib
|
|
gnulib_extra_files="
|
|
build-aux/install-sh
|
|
build-aux/mdate-sh
|
|
build-aux/texinfo.tex
|
|
build-aux/depcomp
|
|
build-aux/config.guess
|
|
build-aux/config.sub
|
|
"
|
|
|
|
# Additional xgettext options to use. Use "\\\newline" to break lines.
|
|
XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
|
|
--from-code=UTF-8\\\
|
|
'
|
|
|
|
checkout_only_file=
|
|
copy=true
|
|
vc_ignore=
|
|
|
|
SKIP_PO=t
|
|
|
|
# Build prerequisites
|
|
buildreq="\
|
|
autoconf 2.63
|
|
automake 1.11
|
|
gettext 0.18.3
|
|
git 1.5.5
|
|
tar -
|
|
"
|
|
|
|
# bootstrap doesn't give us a reasonable way to stop Automake from
|
|
# overwriting this, so we just copy our version aside and put it back later.
|
|
cp -a INSTALL INSTALL.grub
|
|
|
|
bootstrap_post_import_hook () {
|
|
set -e
|
|
for patchname in fix-null-deref fix-width no-abort; do
|
|
patch -d grub-core/lib/gnulib -p2 \
|
|
< "grub-core/lib/gnulib-patches/$patchname.patch"
|
|
done
|
|
FROM_BOOTSTRAP=1 ./autogen.sh
|
|
set +e # bootstrap expects this
|
|
}
|
|
|
|
bootstrap_epilogue () {
|
|
mv INSTALL.grub INSTALL
|
|
}
|