From c8e5e28048dd9605f7958ef95f2a6dd626658069 Mon Sep 17 00:00:00 2001 From: ng0 Date: Mon, 2 Dec 2019 15:30:56 +0000 Subject: [PATCH] rewrite sed logic used in Makefiles and move into dosubst awk script. include 'bin' and its files in dist files, this is where dosubst is located. While the invocation (passing of the variables) is not optimal (yet, will be changed), this will in the end allow sharing code between Makefiles better, and maybe drop sed usage in the future. --- Makefile.am | 4 +- bin/Makefile.am | 6 +++ bin/dosubst.awk | 47 +++++++++++++++++++ configure.ac | 1 + contrib/scripts/Makefile.am | 6 +-- doc/man/Makefile.am | 8 +--- doc/man/produce_html.sh.in | 4 +- src/arm/Makefile.am | 6 +-- src/arm/test_gnunet_arm.py.in | 2 +- src/consensus/Makefile.am | 4 +- src/consensus/consensus-simulation.py.in | 2 +- src/dht/Makefile.am | 8 +--- src/dht/test_dht_tools.py.in | 4 +- src/fs/Makefile.am | 10 ++-- src/fs/test_gnunet_fs_idx.py.in | 2 +- src/fs/test_gnunet_fs_psd.py.in | 2 +- src/fs/test_gnunet_fs_rec.py.in | 2 +- src/gns/Makefile.am | 9 +--- src/gns/gnunet-gns-proxy-setup-ca.in | 20 ++++---- src/gns/test_gnunet_gns.sh.in | 6 +-- src/integration-tests/Makefile.am | 20 ++++---- src/integration-tests/gnunet_pyexpect.py.in | 2 +- src/integration-tests/gnunet_testing.py.in | 2 +- ...st_integration_bootstrap_and_connect.py.in | 2 +- .../test_integration_clique.py.in | 2 +- .../test_integration_disconnect.py.in | 2 +- .../test_integration_disconnect_nat.py.in | 2 +- .../test_integration_reconnect.py.in | 2 +- .../test_integration_reconnect_nat.py.in | 2 +- src/peerinfo-tool/Makefile.am | 4 +- src/peerinfo-tool/test_gnunet_peerinfo.py.in | 2 +- src/revocation/Makefile.am | 4 +- src/revocation/test_local_revocation.py.in | 2 +- src/statistics/Makefile.am | 6 +-- src/statistics/test_gnunet_statistics.py.in | 2 +- .../gnunet-transport-certificate-creation.in | 4 +- 36 files changed, 118 insertions(+), 95 deletions(-) create mode 100644 bin/Makefile.am create mode 100755 bin/dosubst.awk diff --git a/Makefile.am b/Makefile.am index f8725390e..62c46cb2b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -3,9 +3,9 @@ AM_CPPFLAGS = -I$(top_srcdir)/src/include # only documentation (ALL of the documentation) if DOCUMENTATION_ONLY - SUBDIRS = doc + SUBDIRS = bin doc else - SUBDIRS = m4 src po pkgconfig + SUBDIRS = m4 bin src po pkgconfig endif # documentation on / off switch (affects all of the documentation) diff --git a/bin/Makefile.am b/bin/Makefile.am new file mode 100644 index 000000000..6c11e26ef --- /dev/null +++ b/bin/Makefile.am @@ -0,0 +1,6 @@ +EXTRA_DIST = \ + dosubst.awk \ + grephdr.sh \ + grepsrc.sh \ + pogen.sh \ + rename.sh diff --git a/bin/dosubst.awk b/bin/dosubst.awk new file mode 100755 index 000000000..3ed0403dd --- /dev/null +++ b/bin/dosubst.awk @@ -0,0 +1,47 @@ +# Dedicated to the public domain. +# SPDX-License-Identifier: 0BSD +# +# awk script to substitute variables in scripts and applications. +# +# You can pass these variables to it in Makefiles or on the +# commandline: +# bdir="$(bindir)" +# py="$(PYTHON)" +# awkay="$(AWK_BINARY)" +# pfx="$(prefix)" +# prl="$(PERL)" +# sysconfdirectory="$(sysconfdir)" +# pkgdatadirectory="$(pkgdatadir)" + +{ + + if (/@bindirectory@/) { + gsub("@bindirectory@",bdir) ; + } + + if (/@PYTHONEXE@/) { + gsub("@PYTHONEXE@",py) ; + } + + if (/@AWKEXE@/) { + gsub("@AWKEXE@",awkay) ; + } + + if (/@SUBSTPREFIX@/) { + gsub("@SUBSTPREFIX@",pfx) ; + } + + if (/@PERLEXE@/) { + gsub("@PERLEXE@",prl) ; + } + + if (/@SYSCONFDIR@/) { + gsub("@SYSCONFDIR@",sysconfdirectory) ; + } + + if (/@PKGDATADIRECTORY@/) { + gsub("@PKGDATADIRECTORY@",pkgdatadirectory) ; + } + + print $0 ; +} diff --git a/configure.ac b/configure.ac index 99713a079..f6b33dd02 100644 --- a/configure.ac +++ b/configure.ac @@ -1832,6 +1832,7 @@ AC_DEFINE_UNQUOTED(VCS_VERSION, [$vcs_version], [VCS revision/hash or tarball ve AC_CONFIG_FILES([ Makefile +bin/Makefile contrib/Makefile contrib/hellos/Makefile contrib/services/Makefile diff --git a/contrib/scripts/Makefile.am b/contrib/scripts/Makefile.am index f55bcabfe..f8b7ec3d1 100644 --- a/contrib/scripts/Makefile.am +++ b/contrib/scripts/Makefile.am @@ -39,8 +39,6 @@ EXTRA_DIST = \ CLEANFILES = \ $(noinst_SCRIPTS) -do_subst = $(AWK) -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" '{if (/@AWKEXE@/) { gsub("@AWKEXE@",awkay)}; gsub("@PYTHONEXE@",py); print $$0}' - # Use SUFFIX Extension rules, they are more portable for every # implementation of 'make'. # You'll also run into the "'%' is a GNU make extension warning" @@ -54,11 +52,11 @@ do_subst = $(AWK) -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" '{if (/@AWKEXE@/) { SUFFIXES = .py.in .py .py.in.py: - $(do_subst) < $< > $@ + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $< > $@ chmod +x $@ if HAVE_AWK check-texinfo.awk: check-texinfo.awk.in Makefile - $(do_subst) < $(srcdir)/check-texinfo.awk.in > check-texinfo.awk + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/check-texinfo.awk.in > check-texinfo.awk chmod +x check-texinfo.awk endif diff --git a/doc/man/Makefile.am b/doc/man/Makefile.am index 601a85555..a0283cf44 100644 --- a/doc/man/Makefile.am +++ b/doc/man/Makefile.am @@ -1,11 +1,7 @@ # This Makefile.am is in the public domain -do_subst = $(SED) -e 's,[@]SYSCONFDIR[@],$(sysconfdir),g' - gnunet.conf.5: gnunet.conf.5.in Makefile - $(do_subst) < $(srcdir)/gnunet.conf.5.in > gnunet.conf.5 - -do_subst_pkgdatadir = $(SED) -e 's,[@]pkgdatadir[@],$(pkgdatadir),g' + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/gnunet.conf.5.in > $(srcdir)/gnunet.conf.5 CLEANFILES = gnunet.conf.5 @@ -28,7 +24,7 @@ if HAVE_MANDOC # I want and that the alternatives are depressing and # nonfunctional. produce_html.sh: produce_html.sh.in Makefile - $(do_subst_pkgdatadir) < $(srcdir)/produce_html.sh.in > produce_html.sh + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/produce_html.sh.in > produce_html.sh @chmod +x produce_html.sh CLEANFILES += produce_html.sh diff --git a/doc/man/produce_html.sh.in b/doc/man/produce_html.sh.in index 962601513..d2bd768a8 100755 --- a/doc/man/produce_html.sh.in +++ b/doc/man/produce_html.sh.in @@ -1,8 +1,8 @@ #!/bin/sh -if test -e @pkgdatadir@/existence.sh +if test -e @PKGDATADIRECTORY@/existence.sh then - . @pkgdatadir@/existence.sh + . @PKGDATADIRECTORY@/existence.sh else . $dir/../../contrib/build-common/sh/lib.sh/existence.sh fi diff --git a/src/arm/Makefile.am b/src/arm/Makefile.am index 43e868805..8a738c5a9 100644 --- a/src/arm/Makefile.am +++ b/src/arm/Makefile.am @@ -88,15 +88,13 @@ test_gnunet_service_arm_SOURCES = \ libgnunetarm.la \ $(top_builddir)/src/util/libgnunetutil.la -do_subst = $(SED) -e 's,[@]PYTHON[@],$(PYTHON),g' - SUFFIXES = .py.in .py .py.in.py: - $(do_subst) < $(srcdir)/$< > $@ + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/$< > $@ chmod +x $@ test_gnunet_arm.py: test_gnunet_arm.py.in Makefile - $(do_subst) < $(srcdir)/test_gnunet_arm.py.in > test_gnunet_arm.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_gnunet_arm.py.in > test_gnunet_arm.py chmod +x test_gnunet_arm.py EXTRA_DIST = \ diff --git a/src/arm/test_gnunet_arm.py.in b/src/arm/test_gnunet_arm.py.in index 9605c4eae..e657d4a3f 100644 --- a/src/arm/test_gnunet_arm.py.in +++ b/src/arm/test_gnunet_arm.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ import os import sys diff --git a/src/consensus/Makefile.am b/src/consensus/Makefile.am index 4ad224aa3..24e685fb9 100644 --- a/src/consensus/Makefile.am +++ b/src/consensus/Makefile.am @@ -23,12 +23,10 @@ libexec_PROGRAMS += \ gnunet-service-evil-consensus endif -do_subst = $(SED) -e 's,[@]PYTHON[@],$(PYTHON),g' - SUFFIXES = .py.in .py .py.in.py: - $(do_subst) < $< > $@ + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $< > $@ chmod +x $@ check-python-style: diff --git a/src/consensus/consensus-simulation.py.in b/src/consensus/consensus-simulation.py.in index c6b97e63f..272a52da2 100644 --- a/src/consensus/consensus-simulation.py.in +++ b/src/consensus/consensus-simulation.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet # (C) 2013, 2018 Christian Grothoff (and other contributing authors) # diff --git a/src/dht/Makefile.am b/src/dht/Makefile.am index bf73e8f19..2182d1c7f 100644 --- a/src/dht/Makefile.am +++ b/src/dht/Makefile.am @@ -220,13 +220,7 @@ check_SCRIPTS = \ test_dht_tools.py endif -do_subst = $(SED) -e 's,[@]PYTHON[@],$(PYTHON),g' -e 's,[@]bindir[@],$(bindir),g' - SUFFIXES = .py.in .py .py.in.py: - $(do_subst) < $(srcdir)/$< > $@ + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/$< > $@ chmod +x $@ - -test_dht_tools.py: test_dht_tools.py.in Makefile - $(do_subst) < $(srcdir)/test_dht_tools.py.in > test_dht_tools.py - chmod +x test_dht_tools.py diff --git a/src/dht/test_dht_tools.py.in b/src/dht/test_dht_tools.py.in index c2f95e4b5..20739c45f 100644 --- a/src/dht/test_dht_tools.py.in +++ b/src/dht/test_dht_tools.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # # This testcase simply checks that the DHT command-line tools work. # It launches a single peer, stores a value "testdata" under "testkey", @@ -20,7 +20,7 @@ import subprocess import time import tempfile -os.environ["PATH"] = "@bindir@" + ":" + os.environ["PATH"] +os.environ["PATH"] = "@bindirectory@" + ":" + os.environ["PATH"] if os.name == "nt": tmp = os.getenv("TEMP") diff --git a/src/fs/Makefile.am b/src/fs/Makefile.am index f0efefc4b..b1555be60 100644 --- a/src/fs/Makefile.am +++ b/src/fs/Makefile.am @@ -525,22 +525,20 @@ perf_gnunet_service_fs_p2p_respect_LDADD = \ $(top_builddir)/src/util/libgnunetutil.la -do_subst = $(SED) -e 's,[@]PYTHON[@],$(PYTHON),g' - test_gnunet_fs_psd.py: test_gnunet_fs_psd.py.in Makefile - $(do_subst) < $(srcdir)/test_gnunet_fs_psd.py.in > test_gnunet_fs_psd.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_gnunet_fs_psd.py.in > test_gnunet_fs_psd.py chmod +x test_gnunet_fs_psd.py test_gnunet_fs_rec.py: test_gnunet_fs_rec.py.in Makefile - $(do_subst) < $(srcdir)/test_gnunet_fs_rec.py.in > test_gnunet_fs_rec.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_gnunet_fs_rec.py.in > test_gnunet_fs_rec.py chmod +x test_gnunet_fs_rec.py test_gnunet_fs_ns.py: test_gnunet_fs_ns.py.in Makefile - $(do_subst) < $(srcdir)/test_gnunet_fs_ns.py.in > test_gnunet_fs_ns.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_gnunet_fs_ns.py.in > test_gnunet_fs_ns.py chmod +x test_gnunet_fs_ns.py test_gnunet_fs_idx.py: test_gnunet_fs_idx.py.in Makefile - $(do_subst) < $(srcdir)/test_gnunet_fs_idx.py.in > test_gnunet_fs_idx.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_gnunet_fs_idx.py.in > test_gnunet_fs_idx.py chmod +x test_gnunet_fs_idx.py diff --git a/src/fs/test_gnunet_fs_idx.py.in b/src/fs/test_gnunet_fs_idx.py.in index 2c8c7e8ec..564dd68f2 100755 --- a/src/fs/test_gnunet_fs_idx.py.in +++ b/src/fs/test_gnunet_fs_idx.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010 Christian Grothoff (and other contributing authors) # diff --git a/src/fs/test_gnunet_fs_psd.py.in b/src/fs/test_gnunet_fs_psd.py.in index abb3d0b83..a25e4eaef 100755 --- a/src/fs/test_gnunet_fs_psd.py.in +++ b/src/fs/test_gnunet_fs_psd.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010, 2018 Christian Grothoff (and other contributing authors) # diff --git a/src/fs/test_gnunet_fs_rec.py.in b/src/fs/test_gnunet_fs_rec.py.in index f827aa3a5..f7e84e3da 100755 --- a/src/fs/test_gnunet_fs_rec.py.in +++ b/src/fs/test_gnunet_fs_rec.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010 Christian Grothoff (and other contributing authors) # diff --git a/src/gns/Makefile.am b/src/gns/Makefile.am index 9f0e0bbb6..abd5d5b48 100644 --- a/src/gns/Makefile.am +++ b/src/gns/Makefile.am @@ -103,17 +103,12 @@ plugin_LTLIBRARIES = \ bin_SCRIPTS = \ gnunet-gns-proxy-setup-ca -# See: https://www.gnu.org/software/automake/manual/html_node/Scripts.html#Scripts -do_subst = $(SED) -e 's,[@]pkgdatadir[@],$(pkgdatadir),g' - gnunet-gns-proxy-setup-ca: gnunet-gns-proxy-setup-ca.in Makefile - $(do_subst) < $(srcdir)/gnunet-gns-proxy-setup-ca.in > gnunet-gns-proxy-setup-ca + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/gnunet-gns-proxy-setup-ca.in > gnunet-gns-proxy-setup-ca @chmod +x gnunet-gns-proxy-setup-ca -do_subst_pkgdatadir = $(SED) -e 's,[@]pkgdatadir[@],$(pkgdatadir),g' - test_gnunet_gns.sh: test_gnunet_gns.sh.in Makefile - $(do_subst_pkgdatadir) < $(srcdir)/test_gnunet_gns.sh.in > test_gnunet_gns.sh + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_gnunet_gns.sh.in > test_gnunet_gns.sh @chmod +x test_gnunet_gns.sh CLEANFILES = test_gnunet_gns.sh diff --git a/src/gns/gnunet-gns-proxy-setup-ca.in b/src/gns/gnunet-gns-proxy-setup-ca.in index 7a79c7994..602aadb2a 100644 --- a/src/gns/gnunet-gns-proxy-setup-ca.in +++ b/src/gns/gnunet-gns-proxy-setup-ca.in @@ -48,30 +48,30 @@ dir=$(dirname "$0") -if test -e @pkgdatadir@/progname.sh +if test -e @PKGDATADIRECTORY@/progname.sh then - . @pkgdatadir@/progname.sh + . @PKGDATADIRECTORY@/progname.sh else . $dir/../../contrib/build-common/sh/lib.sh/progname.sh fi -if test -e @pkgdatadir@/existence.sh +if test -e @PKGDATADIRECTORY@/existence.sh then - . @pkgdatadir@/existence.sh + . @PKGDATADIRECTORY@/existence.sh else . $dir/../../contrib/build-common/sh/lib.sh/existence.sh fi -if test -e @pkgdatadir@/msg.sh +if test -e @PKGDATADIRECTORY@/msg.sh then - . @pkgdatadir@/msg.sh + . @PKGDATADIRECTORY@/msg.sh else . $dir/../../contrib/build-common/sh/lib.sh/msg.sh fi -if test -e @pkgdatadir@/version_gnunet.sh +if test -e @PKGDATADIRECTORY@/version_gnunet.sh then - . @pkgdatadir@/version_gnunet.sh + . @PKGDATADIRECTORY@/version_gnunet.sh else . $dir/../../contrib/build-common/sh/lib.sh/version_gnunet.sh fi @@ -143,8 +143,8 @@ generate_ca() # ------------- openssl - GNUTLS_CA_TEMPLATE=@pkgdatadir@/gnunet-gns-proxy-ca.template - OPENSSLCFG=@pkgdatadir@/openssl.cnf + GNUTLS_CA_TEMPLATE=@PKGDATADIRECTORY@/gnunet-gns-proxy-ca.template + OPENSSLCFG=@PKGDATADIRECTORY@/openssl.cnf CERTTOOL="" OPENSSL=0 if test -x $(existence gnunet-certtool) diff --git a/src/gns/test_gnunet_gns.sh.in b/src/gns/test_gnunet_gns.sh.in index 66bed0516..8cdd062c7 100755 --- a/src/gns/test_gnunet_gns.sh.in +++ b/src/gns/test_gnunet_gns.sh.in @@ -8,9 +8,9 @@ # but this works for now. dir=$(dirname "$0") -if test -e @pkgdatadir@/existence.sh +if test -e @PKGDATADIRECTORY@/existence.sh then - . @pkgdatadir@/existence.sh + . @PKGDATADIRECTORY@/existence.sh else . $dir/../../contrib/build-common/sh/lib.sh/existence.sh fi @@ -22,7 +22,7 @@ fi $LOCATION --version if test $? != 0 then - echo "GNUnet command line tools cannot be found, check environmental variables PATH and GNUNET_PREFIX" + echo "GNUnet command line tools cannot be found, check environmental variables PATH and GNUNET_PREFIX" exit 77 fi diff --git a/src/integration-tests/Makefile.am b/src/integration-tests/Makefile.am index 8b50def4d..f456544db 100644 --- a/src/integration-tests/Makefile.am +++ b/src/integration-tests/Makefile.am @@ -36,43 +36,41 @@ endif endif endif -do_subst = $(SED) -e 's,[@]PYTHON[@],$(PYTHON),g' - SUFFIXES = .py.in .py .py.in.py: - $(do_subst) < $(srcdir)/$< > $@ + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/$< > $@ chmod +x $@ gnunet_testing.py: gnunet_testing.py.in Makefile - $(do_subst) < $(srcdir)/gnunet_testing.py.in > gnunet_testing.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/gnunet_testing.py.in > gnunet_testing.py chmod +x gnunet_testing.py gnunet_pyexpect.py: gnunet_pyexpect.py.in Makefile - $(do_subst) < $(srcdir)/gnunet_pyexpect.py.in > gnunet_pyexpect.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/gnunet_pyexpect.py.in > gnunet_pyexpect.py chmod +x gnunet_pyexpect.py test_integration_bootstrap_and_connect.py: test_integration_bootstrap_and_connect.py.in Makefile - $(do_subst) < $(srcdir)/test_integration_bootstrap_and_connect.py.in > test_integration_bootstrap_and_connect.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_integration_bootstrap_and_connect.py.in > test_integration_bootstrap_and_connect.py chmod +x test_integration_bootstrap_and_connect.py test_integration_disconnect.py: test_integration_disconnect.py.in Makefile - $(do_subst) < $(srcdir)/test_integration_disconnect.py.in > test_integration_disconnect.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_integration_disconnect.py.in > test_integration_disconnect.py chmod +x test_integration_disconnect.py test_integration_disconnect_nat.py: test_integration_disconnect_nat.py.in Makefile - $(do_subst) < $(srcdir)/test_integration_disconnect_nat.py.in > test_integration_disconnect_nat.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_integration_disconnect_nat.py.in > test_integration_disconnect_nat.py chmod +x test_integration_disconnect_nat.py test_integration_reconnect.py: test_integration_reconnect.py.in Makefile - $(do_subst) < $(srcdir)/test_integration_reconnect.py.in > test_integration_reconnect.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_integration_reconnect.py.in > test_integration_reconnect.py chmod +x test_integration_reconnect.py test_integration_reconnect_nat.py: test_integration_reconnect_nat.py.in Makefile - $(do_subst) < $(srcdir)/test_integration_reconnect_nat.py.in > test_integration_reconnect_nat.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_integration_reconnect_nat.py.in > test_integration_reconnect_nat.py chmod +x test_integration_reconnect_nat.py test_integration_clique.py: test_integration_clique.py.in Makefile - $(do_subst) < $(srcdir)/test_integration_clique.py.in > test_integration_clique.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_integration_clique.py.in > test_integration_clique.py chmod +x test_integration_clique.py diff --git a/src/integration-tests/gnunet_pyexpect.py.in b/src/integration-tests/gnunet_pyexpect.py.in index aad84e4f7..b8ce52f00 100644 --- a/src/integration-tests/gnunet_pyexpect.py.in +++ b/src/integration-tests/gnunet_pyexpect.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010 Christian Grothoff (and other contributing authors) # diff --git a/src/integration-tests/gnunet_testing.py.in b/src/integration-tests/gnunet_testing.py.in index 10f9d4475..828f6ff42 100644 --- a/src/integration-tests/gnunet_testing.py.in +++ b/src/integration-tests/gnunet_testing.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010, 2017, 2018 Christian Grothoff (and other contributing authors) # diff --git a/src/integration-tests/test_integration_bootstrap_and_connect.py.in b/src/integration-tests/test_integration_bootstrap_and_connect.py.in index ddac326cd..441523dfe 100755 --- a/src/integration-tests/test_integration_bootstrap_and_connect.py.in +++ b/src/integration-tests/test_integration_bootstrap_and_connect.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010, 2018 Christian Grothoff (and other contributing authors) # diff --git a/src/integration-tests/test_integration_clique.py.in b/src/integration-tests/test_integration_clique.py.in index a23c025ca..65df632f0 100755 --- a/src/integration-tests/test_integration_clique.py.in +++ b/src/integration-tests/test_integration_clique.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010, 2018 Christian Grothoff (and other contributing authors) # diff --git a/src/integration-tests/test_integration_disconnect.py.in b/src/integration-tests/test_integration_disconnect.py.in index 9861728c2..c942042c4 100755 --- a/src/integration-tests/test_integration_disconnect.py.in +++ b/src/integration-tests/test_integration_disconnect.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010, 2017 Christian Grothoff (and other contributing authors) # diff --git a/src/integration-tests/test_integration_disconnect_nat.py.in b/src/integration-tests/test_integration_disconnect_nat.py.in index d3ff84ebe..2f10818cc 100755 --- a/src/integration-tests/test_integration_disconnect_nat.py.in +++ b/src/integration-tests/test_integration_disconnect_nat.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010, 2018 Christian Grothoff (and other contributing authors) # diff --git a/src/integration-tests/test_integration_reconnect.py.in b/src/integration-tests/test_integration_reconnect.py.in index 5bffb72e3..97dc94502 100755 --- a/src/integration-tests/test_integration_reconnect.py.in +++ b/src/integration-tests/test_integration_reconnect.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010, 2017 Christian Grothoff (and other contributing authors) # diff --git a/src/integration-tests/test_integration_reconnect_nat.py.in b/src/integration-tests/test_integration_reconnect_nat.py.in index 751a0484b..7624e7b38 100755 --- a/src/integration-tests/test_integration_reconnect_nat.py.in +++ b/src/integration-tests/test_integration_reconnect_nat.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010, 2018 Christian Grothoff (and other contributing authors) # diff --git a/src/peerinfo-tool/Makefile.am b/src/peerinfo-tool/Makefile.am index 8a2efba63..05173d551 100644 --- a/src/peerinfo-tool/Makefile.am +++ b/src/peerinfo-tool/Makefile.am @@ -56,10 +56,8 @@ AM_TESTS_ENVIRONMENT=export GNUNET_PREFIX=$${GNUNET_PREFIX:-@libdir@};export PAT TESTS = $(check_SCRIPTS) endif -do_subst = $(SED) -e 's,[@]PYTHON[@],$(PYTHON),g' - test_gnunet_peerinfo.py: test_gnunet_peerinfo.py.in Makefile - $(do_subst) < $(srcdir)/test_gnunet_peerinfo.py.in > test_gnunet_peerinfo.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_gnunet_peerinfo.py.in > test_gnunet_peerinfo.py chmod +x test_gnunet_peerinfo.py EXTRA_DIST = \ diff --git a/src/peerinfo-tool/test_gnunet_peerinfo.py.in b/src/peerinfo-tool/test_gnunet_peerinfo.py.in index 5d9daa930..9a87d3649 100755 --- a/src/peerinfo-tool/test_gnunet_peerinfo.py.in +++ b/src/peerinfo-tool/test_gnunet_peerinfo.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010, 2018 Christian Grothoff (and other contributing authors) # diff --git a/src/revocation/Makefile.am b/src/revocation/Makefile.am index 5e48fb29f..b3b2877ca 100644 --- a/src/revocation/Makefile.am +++ b/src/revocation/Makefile.am @@ -90,10 +90,8 @@ if ENABLE_TEST_RUN $(check_PROGRAMS) endif -do_subst = $(SED) -e 's,[@]PYTHON[@],$(PYTHON),g' - test_local_revocation.py: test_local_revocation.py.in Makefile - $(do_subst) < $(srcdir)/test_local_revocation.py.in > test_local_revocation.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_local_revocation.py.in > test_local_revocation.py chmod +x test_local_revocation.py EXTRA_DIST = test_revocation.conf \ diff --git a/src/revocation/test_local_revocation.py.in b/src/revocation/test_local_revocation.py.in index d73d0a869..e667c10ce 100644 --- a/src/revocation/test_local_revocation.py.in +++ b/src/revocation/test_local_revocation.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ # This file is part of GNUnet. # (C) 2010, 2018 Christian Grothoff (and other contributing authors) # diff --git a/src/statistics/Makefile.am b/src/statistics/Makefile.am index 6d69d58d8..52f382156 100644 --- a/src/statistics/Makefile.am +++ b/src/statistics/Makefile.am @@ -84,15 +84,13 @@ check_SCRIPTS = \ test_gnunet_statistics.py endif -do_subst = $(SED) -e 's,[@]PYTHON[@],$(PYTHON),g' - SUFFIXES = .py.in .py .py.in.py: - $(do_subst) < $(srcdir)/$< > $@ + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/$< > $@ chmod +x $@ test_gnunet_statistics.py: test_gnunet_statistics.py.in Makefile - $(do_subst) < $(srcdir)/test_gnunet_statistics.py.in > test_gnunet_statistics.py + $(AWK) -v bdir="$(bindir)" -v py="$(PYTHON)" -v awkay="$(AWK_BINARY)" -v pfx="$(prefix)" -v prl="$(PERL)" -v sysconfdirectory="$(sysconfdir)" -v pkgdatadirectory="$(pkgdatadir)" -f $(top_srcdir)/bin/dosubst.awk < $(srcdir)/test_gnunet_statistics.py.in > test_gnunet_statistics.py chmod +x test_gnunet_statistics.py EXTRA_DIST = \ diff --git a/src/statistics/test_gnunet_statistics.py.in b/src/statistics/test_gnunet_statistics.py.in index 3a13c24f3..ce277b13e 100644 --- a/src/statistics/test_gnunet_statistics.py.in +++ b/src/statistics/test_gnunet_statistics.py.in @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!@PYTHONEXE@ import os import sys diff --git a/src/transport/gnunet-transport-certificate-creation.in b/src/transport/gnunet-transport-certificate-creation.in index 1c04089a4..8348dd1b7 100644 --- a/src/transport/gnunet-transport-certificate-creation.in +++ b/src/transport/gnunet-transport-certificate-creation.in @@ -101,9 +101,9 @@ generate_cert_key() { echo "" infomsg "Generating Cert and Key" - + CERTTOOL="" - GNUTLS_CA_TEMPLATE=@pkgdatadir@/gnunet-gns-proxy-ca.template + GNUTLS_CA_TEMPLATE=@PKGDATADIRECTORY@/gnunet-gns-proxy-ca.template OPENSSL=0 if test -z "`gnutls-certtool --version`" > /dev/null then -- 2.25.1