summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaiki Ueno <dueno@redhat.com>2019-01-08 14:40:25 +0100
committerDaiki Ueno <dueno@redhat.com>2019-01-08 14:43:50 +0100
commit32a47026617824a7a4b1bd65497e050c56bdef33 (patch)
tree5f01a799d162ef71f99a3fa63a5a45a556b2ee6e
parenta33776ac705327e29ded0ca4cb91ed9c4e0929b7 (diff)
downloadgnutls-tmp-autogen-bak-revert.tar.gz
Revert "build: remove src/*.bak from distribution"tmp-autogen-bak-revert
This reverts commit 9ba397aa841730e4824d2bf8537aa15e711ad9b3, as it turned out to be not practical. See !862 for the discussion. Signed-off-by: Daiki Ueno <dueno@redhat.com>
-rw-r--r--cfg.mk2
-rw-r--r--configure.ac9
-rw-r--r--src/Makefile.am48
3 files changed, 41 insertions, 18 deletions
diff --git a/cfg.mk b/cfg.mk
index 17ac5e8249..7402dc6e63 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -41,7 +41,7 @@ local-checks-to-skip = sc_GPL_version sc_bindtextdomain \
sc_unmarked_diagnostics sc_useless_cpp_parens \
sc_two_space_separator_in_usage
-VC_LIST_ALWAYS_EXCLUDE_REGEX = ^maint.mk|gtk-doc.make|m4/pkg|doc/fdl-1.3.texi|src/crywrap/|(devel/perlasm/|lib/accelerated/x86/|build-aux/|gl/|src/libopts/|tests/suite/ecore/|doc/protocol/).*$$
+VC_LIST_ALWAYS_EXCLUDE_REGEX = ^maint.mk|gtk-doc.make|m4/pkg|doc/fdl-1.3.texi|src/.*\.bak|src/crywrap/|(devel/perlasm/|lib/accelerated/x86/|build-aux/|gl/|src/libopts/|tests/suite/ecore/|doc/protocol/).*$$
update-copyright-env = UPDATE_COPYRIGHT_USE_INTERVALS=1
# Explicit syntax-check exceptions.
diff --git a/configure.ac b/configure.ac
index a2267b8671..e81ff89709 100644
--- a/configure.ac
+++ b/configure.ac
@@ -708,11 +708,9 @@ AM_MISSING_PROG([AUTOGEN], [autogen])
included_libopts=no
if test "$enable_tools" != "no" || test "$enable_doc" != "no"; then
- AC_MSG_CHECKING([whether autogen is recent enough])
- if $PKG_CONFIG --atleast-version=41.1.16 autoopts 2>&1 >/dev/null; then
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
+ AC_CHECK_PROGS([autogen], [autogen])
+
+ if test -z "$autogen"; then
AC_MSG_WARN([[
***
*** autogen not found. Will not link against system libopts.
@@ -984,6 +982,7 @@ AC_CONFIG_FILES([
lib/unistring/Makefile
po/Makefile.in
src/Makefile
+ src/args-std.def
src/gl/Makefile
tests/Makefile
tests/windows/Makefile
diff --git a/src/Makefile.am b/src/Makefile.am
index 329cfdfd0f..35a3855c00 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -33,6 +33,24 @@ ARGS_BUILT = \
tpmtool-args.c tpmtool-args.h \
systemkey-args.c systemkey-args.h
+# We bundle autogen-generated files as *.bak files. This is awkward,
+# but it covers the common use-cases where autogen/libopts is
+# installed or not. Do not attempt to simplify it unless autogen
+# gains a support for better handling of intermediate files with
+# autotools.
+ARGS_BAK = \
+ srptool-args.c.bak srptool-args.h.bak \
+ psktool-args.c.bak psktool-args.h.bak \
+ ocsptool-args.h.bak ocsptool-args.c.bak \
+ serv-args.c.bak serv-args.h.bak \
+ cli-args.c.bak cli-args.h.bak \
+ cli-debug-args.c.bak cli-debug-args.h.bak \
+ certtool-args.c.bak certtool-args.h.bak \
+ danetool-args.c.bak danetool-args.h.bak \
+ p11tool-args.c.bak p11tool-args.h.bak \
+ tpmtool-args.c.bak tpmtool-args.h.bak \
+ systemkey-args.c.bak systemkey-args.h.bak
+
ARGS_STAMPS = \
certtool-args.stamp cli-debug-args.stamp cli-args.stamp tpmtool-args.stamp \
systemkey-args.stamp srptool-args.stamp ocsptool-args.stamp p11tool-args.stamp \
@@ -40,11 +58,11 @@ ARGS_STAMPS = \
BUILT_SOURCES = $(ARGS_BUILT) mech-list.h
-DISTCLEANFILES = mech-list.h
+DISTCLEANFILES = $(BUILT_SOURCES) $(ARGS_STAMPS)
-EXTRA_DIST = gen-mech-list.sh args-std.def.in args-std.def $(ARGS_BUILT) $(ARGS_STAMPS)
+EXTRA_DIST = gen-mech-list.sh $(ARGS_BAK)
-MAINTAINERCLEANFILES = args-std.def $(ARGS_BUILT) $(ARGS_STAMPS)
+MAINTAINERCLEANFILES = $(ARGS_BAK)
AM_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS)
AM_CPPFLAGS = \
@@ -251,17 +269,23 @@ nodist_libcmd_systemkey_la_SOURCES = systemkey-args.c systemkey-args.h
libcmd_systemkey_la_LIBADD = ../lib/libgnutls.la gl/libgnu_gpl.la ../gl/libgnu.la
libcmd_systemkey_la_LIBADD += $(LTLIBREADLINE) $(INET_PTON_LIB) $(LIB_CLOCK_GETTIME)
-args-std.def: args-std.def.in
- $(AM_V_GEN) sed \
- -e 's|@VERSION[@]|$(VERSION)|g' \
- -e 's|@YEAR[@]|$(YEAR)|g' \
- -e 's|@PACKAGE_BUGREPORT[@]|$(PACKAGE_BUGREPORT)|g' \
- $< > $@.tmp && mv $@.tmp $@
-
-SUFFIXES = .stamp .def
+SUFFIXES = .stamp .def .c.bak .h.bak
.def.stamp:
- $(AM_V_GEN) $(AUTOGEN) $< && touch $@
+ $(AM_V_GEN) $(AUTOGEN) $< || { \
+ srcdir=''; \
+ b=`echo $@ | sed 's/.stamp$$//'`; \
+ test -f ./$${b}.def || srcdir=$(srcdir)/; \
+ cp -p $${srcdir}$${b}.c.bak $${b}.c; \
+ cp -p $${srcdir}$${b}.h.bak $${b}.h; \
+ } && \
+ touch $@
+
+.c.c.bak:
+ $(AM_V_GEN) cp -p $< $@
+
+.h.h.bak:
+ $(AM_V_GEN) cp -p $< $@
danetool-args.h: danetool-args.stamp
danetool-args.c: danetool-args.stamp