Debian Bug report logs - #1011481
tamil-gtk2im: reproducible-builds: embedded build paths

Package: src:tamil-gtk2im; Maintainer for src:tamil-gtk2im is Debian QA Group <packages@qa.debian.org>;

Reported by: Vagrant Cascadian <vagrant@reproducible-builds.org>

Date: Mon, 23 May 2022 20:45:02 UTC

Severity: normal

Tags: patch

Reply or subscribe to this bug.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, reproducible-bugs@lists.alioth.debian.org, Debian QA Group <packages@qa.debian.org>:
Bug#1011481; Package src:tamil-gtk2im. (Mon, 23 May 2022 20:45:04 GMT) (full text, mbox, link).


Acknowledgement sent to Vagrant Cascadian <vagrant@reproducible-builds.org>:
New Bug report received and forwarded. Copy sent to reproducible-bugs@lists.alioth.debian.org, Debian QA Group <packages@qa.debian.org>. (Mon, 23 May 2022 20:45:04 GMT) (full text, mbox, link).


Message #5 received at submit@bugs.debian.org (full text, mbox, reply):

From: Vagrant Cascadian <vagrant@reproducible-builds.org>
To: submit@bugs.debian.org
Subject: tamil-gtk2im: reproducible-builds: embedded build paths
Date: Mon, 23 May 2022 13:42:24 -0700
[Message part 1 (text/plain, inline)]
Source: tamil-gtk2im
Severity: normal
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: buildpath
X-Debbugs-Cc: reproducible-bugs@lists.alioth.debian.org

The build path is embedded in various binaries:

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

  /usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/anjal-uni.so

  /build/1st/tamil-gtk2im-2.2/anjal-uni.c:112
  vs.
  /build/2/tamil-gtk2im-2.2/2nd/anjal-uni.c:112


The attached patch fixes this by passing -ffile-prefix-map to gcc in
compile-gtk2im.sh, which avoids embedding the absolute build path.


With this patch applied, tamil-gtk2im should build reproducibly on
tests.reproducible-builds.org!


live well,
  vagrant
[0001-compile-gtk2im.sh-Pass-ffile-prefix-map-to-compiler.patch (text/x-diff, inline)]
From 1003f565988783e16a7f84e66d0e719dff956bba Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@reproducible-builds.org>
Date: Mon, 23 May 2022 20:35:37 +0000
Subject: [PATCH] compile-gtk2im.sh: Pass -ffile-prefix-map to compiler.

This avoids embedding the build path in the binaries.

https://reproducible-builds.org/docs/build-path/
---
 compile-gtk2im.sh | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/compile-gtk2im.sh b/compile-gtk2im.sh
index 77900a2..13de96a 100755
--- a/compile-gtk2im.sh
+++ b/compile-gtk2im.sh
@@ -1,51 +1,51 @@
 #!/bin/sh
 
-libtool --mode=compile gcc -DHAVE_CONFIG_H \
+libtool --mode=compile gcc -ffile-prefix-map=$(pwd)=. -DHAVE_CONFIG_H \
 	`pkg-config --cflags gtk+-2.0` \
 	-g -O2 -Wall -D_GNU_SOURCE -c \
 	-o tamil99-tsc.lo tamil99-tsc.c
 
-libtool --mode=link gcc  -g -O2 -Wall -D_GNU_SOURCE \
+libtool --mode=link gcc -ffile-prefix-map=$(pwd)=. -g -O2 -Wall -D_GNU_SOURCE \
 	-o tamil99-tsc.la -rpath ~/.gtk-2.0/immodules \
 	-rpath ~/.gtk-2.0/immodules -avoid-version -module \
 	tamil99-tsc.lo `pkg-config --libs gtk+-2.0`
 
-libtool --mode=compile gcc -DHAVE_CONFIG_H \
+libtool --mode=compile gcc -ffile-prefix-map=$(pwd)=. -DHAVE_CONFIG_H \
 	`pkg-config --cflags gtk+-2.0` \
 	-g -O2 -Wall -D_GNU_SOURCE -c \
 	-o tamil99-uni.lo tamil99-uni.c
 
-libtool --mode=link gcc  -g -O2 -Wall -D_GNU_SOURCE \
+libtool --mode=link gcc -ffile-prefix-map=$(pwd)=. -g -O2 -Wall -D_GNU_SOURCE \
 	-o tamil99-uni.la -rpath ~/.gtk-2.0/immodules \
 	-rpath ~/.gtk-2.0/immodules -avoid-version -module \
 	tamil99-uni.lo `pkg-config --libs gtk+-2.0`
 
-libtool --mode=compile gcc -DHAVE_CONFIG_H \
+libtool --mode=compile gcc -ffile-prefix-map=$(pwd)=. -DHAVE_CONFIG_H \
 	`pkg-config --cflags gtk+-2.0` \
 	-g -O2 -Wall -D_GNU_SOURCE -c \
 	-o tavpim-tsc.lo tavpim-tsc.c
 
-libtool --mode=link gcc  -g -O2 -Wall -D_GNU_SOURCE \
+libtool --mode=link gcc -ffile-prefix-map=$(pwd)=. -g -O2 -Wall -D_GNU_SOURCE \
 	-o tavpim-tsc.la -rpath ~/.gtk-2.0/immodules \
 	-rpath ~/.gtk-2.0/immodules -avoid-version -module \
 	tavpim-tsc.lo `pkg-config --libs gtk+-2.0`
 
-libtool --mode=compile gcc -DHAVE_CONFIG_H \
+libtool --mode=compile gcc -ffile-prefix-map=$(pwd)=. -DHAVE_CONFIG_H \
 	`pkg-config --cflags gtk+-2.0` \
 	-g -O2 -Wall -D_GNU_SOURCE -c \
 	-o tavpim-uni.lo tavpim-uni.c
 
-libtool --mode=link gcc  -g -O2 -Wall -D_GNU_SOURCE \
+libtool --mode=link gcc -ffile-prefix-map=$(pwd)=. -g -O2 -Wall -D_GNU_SOURCE \
 	-o tavpim-uni.la -rpath ~/.gtk-2.0/immodules \
 	-rpath ~/.gtk-2.0/immodules -avoid-version -module \
 	tavpim-uni.lo `pkg-config --libs gtk+-2.0`	
 
-libtool --mode=compile gcc -DHAVE_CONFIG_H \
+libtool --mode=compile gcc -ffile-prefix-map=$(pwd)=. -DHAVE_CONFIG_H \
 	`pkg-config --cflags gtk+-2.0` \
 	-g -O2 -Wall -D_GNU_SOURCE -c \
 	-o anjal-uni.lo anjal-uni.c
 
-libtool --mode=link gcc  -g -O2 -Wall -D_GNU_SOURCE \
+libtool --mode=link gcc -ffile-prefix-map=$(pwd)=. -g -O2 -Wall -D_GNU_SOURCE \
 	-o anjal-uni.la -rpath ~/.gtk-2.0/immodules \
 	-rpath ~/.gtk-2.0/immodules -avoid-version -module \
 	anjal-uni.lo `pkg-config --libs gtk+-2.0`	
-- 
2.36.1

[signature.asc (application/pgp-signature, inline)]

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Wed May 17 12:39:23 2023; Machine Name: bembo

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.