[FFmpeg-devel] [PATCH 1/1] tools/cl2c: Strip full path from input file in embedded

Vagrant Cascadian vagrant at reproducible-builds.org
Tue Oct 19 01:28:23 EEST 2021

Without this patch, the full build path gets embedded into various
binaries shipped in the package, for example, libavfilter.a contains
a reference to:

  #line 1 "/build/1st/ffmpeg-4.3.2/libavfilter/opencl/avgblur.cl"

By not embedding the build path, it makes it easier to recreate the
build environment and reproduce the build:


Originally submitted to Debian as:


Signed-off-by: Vagrant Cascadian <vagrant at reproducible-builds.org>
 tools/cl2c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/tools/cl2c b/tools/cl2c
index e3f92bab1c..48444e61a7 100755
--- a/tools/cl2c
+++ b/tools/cl2c
@@ -23,11 +23,13 @@ input="$1"
 name=$(basename "$input" | sed 's/.cl$//')
+# Avoid embedded the build path, using only the basename of the input file.
+base_input=$(basename "$input")
 cat >$output <<EOF
 // Generated from $input
 const char *ff_opencl_source_$name =
-"#line 1 \"$input\"\n"
+"#line 1 \"$base_input\"\n"
 # Convert \ to \\ and " to \", then add " to the start and end of the line.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 227 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20211018/d3109fd2/attachment.sig>

More information about the ffmpeg-devel mailing list