Source: cclive
Severity: normal
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: buildpath
X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org

The build path is embedded in /usr/bin/cclive:

  
https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/diffoscope-results/cclive.html

  
g++,·-g·-O2·-ffile-prefix-map=/build/1st/cclive-0.9.3=.·-fstack-protector-strong
 ...
  vs.
  
g++,·-g·-O2·-ffile-prefix-map=/build/2/cclive-0.9.3/2nd=.·-fstack-protector-strong
 ...

The attached proof-of-concept patch to src/cc/options.h fixes this by
not embedding CXXFLAGS in the resulting binaries.

A better fix would be to adjust the included CXXFLAGS and replace the
build path with a placeholder string (e.g. BUILDPATH), but maybe someone
who knows cclive specifically would have a better idea where would be
best to do that.

According to my local tests, with this patch applied, cclive should build
reproducibly on tests.reproducible-builds.org!

Thanks for maintaining cclive!

live well,
  vagrant
From cb92801bf7abb55ba8af60a804aebe401f13717a Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagr...@reproducible-builds.org>
Date: Thu, 6 Oct 2022 00:37:11 +0000
Subject: [PATCH] src/cc/options.h: Avoid recording the build flags.

These flags embed the build path, which may vary between builds.

https://tests.reproducible-builds.org/debian/issues/unstable/records_build_flags_issue.html
---
 src/cc/options.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/cc/options.h b/src/cc/options.h
index c8df39b..49ea333 100644
--- a/src/cc/options.h
+++ b/src/cc/options.h
@@ -747,7 +747,7 @@ private:
 #endif
               << "\n  built on " << BUILD_TIME
               << " for "         << CANONICAL_TARGET
-              << "\n    with "   << CXX", "CXXFLAGS
+              << "\n    with "   << CXX
               << "\n  libquvi "  << quvi::version()
               << "\n  libquvi-scripts "
               << quvi_version(QUVI_VERSION_SCRIPTS)
-- 
2.30.2

Attachment: signature.asc
Description: PGP signature

Reply via email to