summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaiki Ueno <dueno@redhat.com>2018-11-12 15:48:44 +0100
committerDaiki Ueno <dueno@redhat.com>2018-11-13 14:57:16 +0100
commiteac0905a095a13a4652a9ebbf2df0c3e1f867cc5 (patch)
tree0413f8d1ff96473f496555ba96488407d60600be
parent11c5a3ba0cdf4fcf10094d7dc1f1a8a5a622b8b0 (diff)
downloadgnutls-eac0905a095a13a4652a9ebbf2df0c3e1f867cc5.tar.gz
build: use suffix rules for generating .bak files
Signed-off-by: Daiki Ueno <dueno@redhat.com>
-rw-r--r--Makefile.am4
-rw-r--r--src/Makefile.am82
-rwxr-xr-xsrc/args-bak-upd.sh37
3 files changed, 35 insertions, 88 deletions
diff --git a/Makefile.am b/Makefile.am
index 828a2b4e8f..06427f3395 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -19,7 +19,7 @@
# along with this file; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-DISTCHECK_CONFIGURE_FLAGS = --enable-doc --enable-gtk-doc --disable-valgrind-tests
+DISTCHECK_CONFIGURE_FLAGS = --enable-doc --enable-gtk-doc --disable-valgrind-tests AUTOGEN=false
SUBDIRS = gl lib extra
@@ -157,7 +157,6 @@ files-update: libopts-check
$(MAKE) -C doc/ compare-makefile || mv doc/tmp-compare-makefile $(srcdir)/doc/Makefile.am
$(MAKE) -C doc/manpages compare-makefile || mv doc/manpages/tmp-compare-makefile $(srcdir)/doc/manpages/Makefile.am
$(MAKE) -C . symbol-check || mv symbols.last.tmp $(srcdir)/symbols.last
- $(MAKE) -C src files-update
@echo "******************************************************************************************"
@echo "updated auto-generated files; please use git diff to verify the correctness of the changes"
@echo "******************************************************************************************"
@@ -166,7 +165,6 @@ dist-hook: libopts-check symbol-check
$(MAKE) -C doc/ compare-makefile
$(MAKE) -C doc/ compare-exported
$(MAKE) -C doc/manpages compare-makefile
- $(MAKE) -C src/ files-update
$(MAKE) ChangeLog
mv ChangeLog $(distdir)
touch $(distdir)/doc/*.html $(distdir)/doc/*.pdf $(distdir)/doc/*.info
diff --git a/src/Makefile.am b/src/Makefile.am
index 8d5804ccaf..c9bc80bd32 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -55,7 +55,7 @@ BUILT_SOURCES = $(ARGS_BUILT) mech-list.h
DISTCLEANFILES = $(BUILT_SOURCES) $(ARGS_STAMPS)
-EXTRA_DIST = gen-mech-list.sh args-bak-upd.sh $(ARGS_BAK)
+EXTRA_DIST = gen-mech-list.sh $(ARGS_BAK)
AM_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS)
AM_CPPFLAGS = \
@@ -262,80 +262,71 @@ 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)
+SUFFIXES = .stamp .def .c.bak .h.bak
+
+.def.stamp:
+ $(AM_V_GEN) $(AUTOGEN) $< || { \
+ srcdir=''; \
+ test -f ./$@ || srcdir=$(srcdir)/; \
+ b=`echo $@ | sed 's/.stamp$$//'`; \
+ cp -p $${srcdir}$${b}.c.bak $${b}.c; \
+ cp -p $${srcdir}$${b}.h.bak $${b}.h; \
+ } && \
+ touch $@
+
+.c.c.bak:
+ $(AM_V_GEN) srcdir=''; \
+ test -f ./$@ || srcdir=$(srcdir)/; \
+ test -f $${srcdir}/$@ || cp -p $< $@
+
+.h.h.bak:
+ $(AM_V_GEN) srcdir=''; \
+ test -f ./$@ || srcdir=$(srcdir)/; \
+ test -f $${srcdir}/$@ || cp -p $< $@
+
danetool-args.h: danetool-args.stamp
danetool-args.c: danetool-args.stamp
-danetool-args.stamp: $(srcdir)/danetool-args.def args-std.def
- -$(AUTOGEN) $<
- touch $@
+danetool-args.stamp: args-std.def
ocsptool-args.h: ocsptool-args.stamp
ocsptool-args.c: ocsptool-args.stamp
-ocsptool-args.stamp: $(srcdir)/ocsptool-args.def args-std.def
- -$(AUTOGEN) $<
- -$(srcdir)/args-bak-upd.sh $@ $(srcdir)
- touch $@
+ocsptool-args.stamp: args-std.def
tpmtool-args.h: tpmtool-args.stamp
tpmtool-args.c: tpmtool-args.stamp
-tpmtool-args.stamp: $(srcdir)/tpmtool-args.def args-std.def
- -$(AUTOGEN) $<
- -$(srcdir)/args-bak-upd.sh $@ $(srcdir)
- touch $@
+tpmtool-args.stamp: args-std.def
p11tool-args.h: p11tool-args.stamp
p11tool-args.c: p11tool-args.stamp
-p11tool-args.stamp: $(srcdir)/p11tool-args.def args-std.def
- -$(AUTOGEN) $<
- -$(srcdir)/args-bak-upd.sh $@ $(srcdir)
- touch $@
+p11tool-args.stamp: args-std.def
psktool-args.h: psktool-args.stamp
psktool-args.c: psktool-args.stamp
-psktool-args.stamp: $(srcdir)/psktool-args.def args-std.def
- -$(AUTOGEN) $<
- -$(srcdir)/args-bak-upd.sh $@ $(srcdir)
- touch $@
+psktool-args.stamp: args-std.def
cli-debug-args.h: cli-debug-args.stamp
cli-debug-args.c: cli-debug-args.stamp
-cli-debug-args.stamp: $(srcdir)/cli-debug-args.def args-std.def
- -$(AUTOGEN) $<
- -$(srcdir)/args-bak-upd.sh $@ $(srcdir)
- touch $@
+cli-debug-args.stamp: args-std.def
cli-args.h: cli-args.stamp
cli-args.c: cli-args.stamp
-cli-args.stamp: $(srcdir)/cli-args.def args-std.def
- -$(AUTOGEN) $<
- -$(srcdir)/args-bak-upd.sh $@ $(srcdir)
- touch $@
+cli-args.stamp: args-std.def
serv-args.h: serv-args.stamp
serv-args.c: serv-args.stamp
-serv-args.stamp: $(srcdir)/serv-args.def args-std.def
- -$(AUTOGEN) $<
- touch $@
+serv-args.stamp: args-std.def
srptool-args.h: srptool-args.stamp
srptool-args.c: srptool-args.stamp
-srptool-args.stamp: $(srcdir)/srptool-args.def args-std.def
- -$(AUTOGEN) $<
- -$(srcdir)/args-bak-upd.sh $@ $(srcdir)
- touch $@
+srptool-args.stamp: args-std.def
certtool-args.h: certtool-args.stamp
certtool-args.c: certtool-args.stamp
-certtool-args.stamp: $(srcdir)/certtool-args.def args-std.def
- -$(AUTOGEN) $<
- -$(srcdir)/args-bak-upd.sh $@ $(srcdir)
- touch $@
+certtool-args.stamp: args-std.def
systemkey-args.h: systemkey-args.stamp
systemkey-args.c: systemkey-args.stamp
-systemkey-args.stamp: $(srcdir)/systemkey-args.def args-std.def
- -$(AUTOGEN) $<
- -$(srcdir)/args-bak-upd.sh $@ $(srcdir)
- touch $@
+systemkey-args.stamp: args-std.def
mech-list.h: gen-mech-list.sh
@$(srcdir)/gen-mech-list.sh > mech-list.h.tmp
@@ -343,8 +334,3 @@ mech-list.h: gen-mech-list.sh
maintainer-clean-local:
rm -f *.stamp mech-list.h
-
-files-update: $(ARGS_STAMPS)
- @echo "******************************************************************************************"
- @echo "updated autogen files in src/"
- @echo "******************************************************************************************"
diff --git a/src/args-bak-upd.sh b/src/args-bak-upd.sh
deleted file mode 100755
index 2da5eb5b93..0000000000
--- a/src/args-bak-upd.sh
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/bin/sh
-
-# Copyright (C) 2018 Dmitry Eremin-Solenikov
-#
-# This file is part of GnuTLS.
-#
-# GnuTLS 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.
-#
-# GnuTLS 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/>.
-
-# Usage: args-bak-upd.sh file.stamp srcdir
-
-# update_file file srcdir
-update_file() {
- if ! test -h "$1"
- then
- if test "$2" = "."
- then
- cp "$1" "$1".bak
- else
- sed -e "s!$2/!!g" "$1" > "$2"/"$1".bak
- fi
- fi
-}
-
-BASENAME="`basename "$1" .stamp`"
-update_file "${BASENAME}.c" "$2"
-update_file "${BASENAME}.c" "$2"