smcroute: make build id optional
[feed/routing.git] / smcroute / patches / 001-Make-output-of-build-id-optional.patch
diff --git a/smcroute/patches/001-Make-output-of-build-id-optional.patch b/smcroute/patches/001-Make-output-of-build-id-optional.patch
new file mode 100644 (file)
index 0000000..bffecc9
--- /dev/null
@@ -0,0 +1,65 @@
+Author: Micha Lenk <micha@lenk.info>
+Date: Thu, 7 May 2015 21:54:31 +0200
+Description: Make output of build id optional
+ With free software, anyone can inspect the source code for malicious flaws.
+ But the software is often provided as binary packages to its users. The idea
+ of “deterministic” or “reproducible” builds is to empower anyone to verify
+ that no flaws have been introduced during the build process by reproducing
+ byte-for-byte identical binary packages from a given source.  See also:
+ https://wiki.debian.org/ReproducibleBuilds
+ .
+ Prior to this change a timestamp generated at build time is included in the
+ output of 'smcroute -v'. As a result the binary is unreproducible.
+ .
+ With this change, users that still want 'smcroute -v' to include a build id
+ can run './configure --enable-build-id' to get the build id back (or even
+ specify a custom build id).
+Origin: upstream, https://github.com/troglobit/smcroute/commit/73f6f14907f709e40689216291621ad26cd22ecd
+Bug-Debian: https://bugs.debian.org/784694
+Last-Update: 2017-08-08
+
+---
+ configure.ac | 9 ++++++++-
+ smcroute.c   | 6 +++++-
+ 2 files changed, 13 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 556d958..eb4a291 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -181,7 +181,14 @@ AC_COMPILE_IFELSE(
+   [AC_MSG_RESULT(no)])
+ # Add build number to config.h.in
+-AC_DEFINE_UNQUOTED([BUILD], "`date +%y%m%d`", [Build number, abbreviated date.])
++AC_ARG_ENABLE([build-id],
++  [AS_HELP_STRING([--enable-build-id@<:@=ID@:>@],
++              [show build id in output of 'smcroute -v'])],
++  [AS_IF([test "x$enableval" = "xyes" ],
++    [build_id=`date +%y%m%d`],
++    [build_id=$enableval])
++   AC_DEFINE_UNQUOTED([BUILD], "$build_id", [Build number, abbreviated date.])])
++
+ # Checks for library functions.
+ AC_FUNC_FORK
+diff --git a/smcroute.c b/smcroute.c
+index 7bd3c72..0287458 100644
+--- a/smcroute.c
++++ b/smcroute.c
+@@ -46,7 +46,11 @@ static const char *conf_file = SMCROUTE_SYSTEM_CONF;
+ extern char *__progname;
+ static const char version_info[] =
+-      "SMCRoute version " PACKAGE_VERSION " build " BUILD "\n";
++      "SMCRoute version " PACKAGE_VERSION
++#ifdef BUILD
++        " build " BUILD
++#endif
++        "\n";
+ static const char usage_info[] =
+       "Usage: smcroute [OPTIONS]... [ARGS]...\n"
+-- 
+2.11.0
+