summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaiki Ueno <ueno@gnu.org>2021-02-13 20:16:41 +0000
committerDaiki Ueno <ueno@gnu.org>2021-02-13 20:16:41 +0000
commit71f7e59fe4952bebcf27eaf4f9fc000c722946fa (patch)
tree96f87afd9d2f845d7863987981cebe6ca9be1d80
parent9db8723d9c21779256fbf3f72df4c5193586ee4d (diff)
parentfd683e9b2e6f6a54a1041f7cbc2b4ae45728d3f6 (diff)
downloadgnutls-71f7e59fe4952bebcf27eaf4f9fc000c722946fa.tar.gz
Merge branch 'wip/dueno/bootstrap' into 'master'
bootstrap: update from Gnulib Closes #1143 See merge request gnutls/gnutls!1384
-rw-r--r--.gitignore2
-rw-r--r--.gitlab-ci.yml2
-rwxr-xr-xbootstrap32
-rw-r--r--bootstrap.conf52
-rw-r--r--configure.ac2
5 files changed, 47 insertions, 43 deletions
diff --git a/.gitignore b/.gitignore
index f473a6fd04..6981a7bf78 100644
--- a/.gitignore
+++ b/.gitignore
@@ -438,6 +438,7 @@ tests/handshake-large-cert
tests/handshake-large-packet
tests/handshake-timeout
tests/handshake-versions
+tests/handshake-write
tests/hex
tests/hostname-check
tests/hostname-check-utf8
@@ -583,6 +584,7 @@ tests/pkcs11-token-raw
tests/pkcs11/gnutls_pcert_list_import_x509_file
tests/pkcs11/gnutls_x509_crt_list_import_url
tests/pkcs11/list-objects
+tests/pkcs11/list-tokens
tests/pkcs11/pkcs11-chainverify
tests/pkcs11/pkcs11-combo
tests/pkcs11/pkcs11-ec-privkey-test
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b58c869bd1..98095b9cf8 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -28,7 +28,7 @@ variables:
CHECKJOBS: 16
cache:
- key: "$CI_JOB_NAME-ver19"
+ key: "$CI_JOB_NAME-ver20"
paths:
- cache/
diff --git a/bootstrap b/bootstrap
index f80a56631e..5f1b1b70c0 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1,10 +1,10 @@
#! /bin/sh
# Print a version string.
-scriptversion=2019-01-04.17; # UTC
+scriptversion=2020-11-18.17; # UTC
# Bootstrap this package from checked-out sources.
-# Copyright (C) 2003-2019 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 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
@@ -71,7 +71,9 @@ Options:
--no-git do not use git to update gnulib. Requires that
--gnulib-srcdir point to a correct gnulib snapshot
--skip-po do not download po files
-
+EOF
+ bootstrap_print_option_usage_hook
+ cat <<EOF
If the file $me.conf exists in the same directory as this script, its
contents are read as shell variables to configure the bootstrap.
@@ -154,6 +156,18 @@ gnulib_files=
: ${AUTOPOINT=autopoint}
: ${AUTORECONF=autoreconf}
+# A function to be called for each unrecognized option. Returns 0 if
+# the option in $1 has been processed by the function. Returns 1 if
+# the option has not been processed by the function. Override it via
+# your own definition in bootstrap.conf
+
+bootstrap_option_hook() { return 1; }
+
+# A function to be called in order to print the --help information
+# corresponding to user-defined command-line options.
+
+bootstrap_print_option_usage_hook() { :; }
+
# A function to be called right after gnulib-tool is run.
# Override it via your own definition in bootstrap.conf.
bootstrap_post_import_hook() { :; }
@@ -166,7 +180,7 @@ bootstrap_epilogue() { :; }
# specified directory. Fill in the first %s with the destination
# directory and the second with the domain name.
po_download_command_format=\
-"wget --mirror --level=1 -nd -q -A.po -P '%s' \
+"wget --mirror --level=1 -nd -nv -A.po -P '%s' \
https://translationproject.org/latest/%s/"
# Prefer a non-empty tarname (4th argument of AC_INIT if given), else
@@ -335,7 +349,7 @@ do
--no-git)
use_git=false;;
*)
- die "$option: unknown option";;
+ bootstrap_option_hook $option || die "$option: unknown option";;
esac
done
@@ -968,10 +982,10 @@ bootstrap_post_import_hook \
# uninitialized submodules.
#
# Uninitialized submodules are listed with an initial dash.
-#if $use_git && git submodule | grep '^-' >/dev/null; then
-# die "some git submodules are not initialized. " \
-# "Run 'git submodule init' and bootstrap again."
-#fi
+if $use_git && git submodule | grep '^-' >/dev/null; then
+ die "some git submodules are not initialized. " \
+ "Run 'git submodule update --init' and bootstrap again."
+fi
# Remove any dangling symlink matching "*.m4" or "*.[ch]" in some
# gnulib-populated directories. Such .m4 files would cause aclocal to fail.
diff --git a/bootstrap.conf b/bootstrap.conf
index 31eb7a33a6..f34508a3cb 100644
--- a/bootstrap.conf
+++ b/bootstrap.conf
@@ -23,7 +23,7 @@ gnulib_tool_option_extras="--without-tests --avoid=alignof-tests --avoid=lock-te
use_libtool=1
checkout_only_file=
local_gl_dir=gl/override/
-required_submodules="tests/suite/tls-fuzzer/python-ecdsa tests/suite/tls-fuzzer/tlsfuzzer tests/suite/tls-fuzzer/tlslite-ng devel/nettle devel/libtasn1"
+required_submodules="tests/suite/tls-fuzzer/python-ecdsa tests/suite/tls-fuzzer/tlsfuzzer tests/suite/tls-fuzzer/tlslite-ng devel/nettle devel/openssl devel/libtasn1"
# Those modules are common to lib/ and src/.
common_modules="
@@ -53,53 +53,41 @@ autopoint -
autogen -
"
-GTKDOCIZE=$(which gtkdocize 2>/dev/null)
-if test $? -ne 0; then
- echo "No gtk-doc support found. You can't build the docs."
- # rm because gtk-doc.make might be a link to a protected file
- rm -f gtk-doc.make 2>/dev/null
- echo "EXTRA_DIST =" >gtk-doc.make
- echo "CLEANFILES =" >>gtk-doc.make
- GTKDOCIZE=""
-else
- $GTKDOCIZE
-fi
-
# update git submodules
git_options=
if test -n "$SUBMODULE_NOFETCH"; then
git_options="--no-fetch"
fi
-for mod in $required_submodules;do
- git submodule update --init $git_options $mod
+for mod in $required_submodules; do
+ git submodule update --init $git_options $mod
done
-if test -d ./gnulib;then
- TMP_GNULIB_SRCDIR="${GNULIB_SRCDIR:-./gnulib/}"
-
- deps=$(${TMP_GNULIB_SRCDIR}/gnulib-tool --extract-recursive-dependencies ${gnulib_modules})
- deps="echo -n ${deps} ${gnulib_modules}|sort -u"
- case ${deps} in
- *select*|*poll*|*sockets*|*recv*|*send*)
- echo "******************************************************************"
- die "the library cannot include the gnulib sockets; see CONTRIBUTION.md"
- ;;
- esac
+# This check needs to be done before actual import.
+TMP_GNULIB_SRCDIR="${GNULIB_SRCDIR:-gnulib}"
+if test -d "$TMP_GNULIB_SRCDIR"; then
+ if ${TMP_GNULIB_SRCDIR}/gnulib-tool --extract-recursive-dependencies ${gnulib_modules} | grep -E 'select|poll|sockets|recv|send' > /dev/null 2>&1; then
+ die "the library cannot include the gnulib sockets; see CONTRIBUTING.md"
+ fi
fi
bootstrap_post_import_hook ()
{
- # we re-use malloc-posix from the original gnulib
-# for i in ${unistring_modules}; do
-# sed -i 's/malloc-posix//g' ${GNULIB_SRCDIR}/modules/$i
-# done
-
${GNULIB_SRCDIR}/gnulib-tool --import --local-dir=lib/unistring/override --lib=libunistring --source-base=lib/unistring --m4-base=lib/unistring/m4 --doc-base=doc --aux-dir=build-aux --lgpl=3orGPLv2 --no-conditional-dependencies --libtool --without-tests --macro-prefix=unistring ${unistring_modules}
${GNULIB_SRCDIR}/gnulib-tool --import --local-dir=src/gl/override --lib=libgnu_gpl --source-base=src/gl --m4-base=src/gl/m4 --doc-base=doc --tests-base=src/gl/tests --aux-dir=build-aux --no-conditional-dependencies --libtool --macro-prefix=ggl --with-tests --no-vc-files ${src_modules}
-# git -C ${GNULIB_SRCDIR} reset --hard
+ gtkdocize || {
+ echo "No gtk-doc support found. You can't build the docs."
+ # rm because gtk-doc.make might be a link to a protected file
+ rm -f gtk-doc.make
+ # Those need to be defined because the upstream Makefile boilerplate
+ # (doc/reference/Makefile.am) relies on them.
+ cat > gtk-doc.make <<EOF
+EXTRA_DIST =
+CLEANFILES =
+EOF
+ }
# Automake requires that ChangeLog exist.
touch ChangeLog || return 1
diff --git a/configure.ac b/configure.ac
index 2d889c53ab..edfbdb81de 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1006,7 +1006,7 @@ fi
dnl Guile bindings.
AC_MSG_CHECKING([whether building Guile bindings])
AC_ARG_ENABLE(guile,
- AS_HELP_STRING([--enable-guile], [build GNU Guile bindings]),
+ AS_HELP_STRING([--disable-guile], [don't build GNU Guile bindings]),
[opt_guile_bindings=$enableval], [opt_guile_bindings=yes])
AC_MSG_RESULT($opt_guile_bindings)