Bug#1098253: onevpl-intel-gpu: please make the build reproducible
On 2026-05-13, Vagrant Cascadian wrote: > I have uploaded an NMU to DELAYED/10 and pushed to the git repository on > salsa. I apparently uploaded directly by accident! I dcut within a minute or two, but I guess it processed it already... Sorry about the that! live well, vagrant > diff -Nru onevpl-intel-gpu-26.1.2/debian/changelog > onevpl-intel-gpu-26.1.2/debian/changelog > --- onevpl-intel-gpu-26.1.2/debian/changelog 2026-02-23 23:34:47.0 > -0800 > +++ onevpl-intel-gpu-26.1.2/debian/changelog 2026-05-13 14:59:34.0 > -0700 > @@ -1,3 +1,11 @@ > +onevpl-intel-gpu (26.1.2-1.1) unstable; urgency=medium > + > + * Non-maintainer upload. > + * debian/rules: Pass a deterministic value for MFX_SYSTEM in > +dh_auto_configure override. (Closes: #1098253) > + > + -- Vagrant Cascadian Wed, 13 May 2026 > 14:59:34 -0700 > + > onevpl-intel-gpu (26.1.2-1) unstable; urgency=medium > >* New upstream release. > diff -Nru onevpl-intel-gpu-26.1.2/debian/rules > onevpl-intel-gpu-26.1.2/debian/rules > --- onevpl-intel-gpu-26.1.2/debian/rules 2026-02-23 23:31:23.0 > -0800 > +++ onevpl-intel-gpu-26.1.2/debian/rules 2026-05-13 14:57:21.0 > -0700 > @@ -7,7 +7,8 @@ > override_dh_auto_configure: > dh_auto_configure -- \ > -DBUILD_TESTS=ON \ > - -DBUILD_TOOLS=ON > + -DBUILD_TOOLS=ON \ > + -DMFX_SYSTEM=Debian > > %: > dh $@ --builddir build/ signature.asc Description: PGP signature
Bug#1098253: onevpl-intel-gpu: please make the build reproducible
On 2026-05-02, Vagrant Cascadian wrote: > On 2025-02-18, Chris Lamb wrote: >> This is because the binary embeds the kernel version into one of the >> binaries via the MFX_BUILD_INFO macro: >> >> │ │ │ ├── ./usr/lib/x86_64-linux-gnu/libmfx-gen.so.1.2.13 > ... >> │ │ │ │ │ -mediasdk_build_info: Linux-6.12.9+bpo-amd64 6.12.9+bpo-amd64 | >> GNU 14.2.0 | glibc 2.40 >> │ │ │ │ │ +mediasdk_build_info: Linux-6.1.0-31-amd64 6.1.0-31-amd64 | GNU >> 14.2.0 | glibc 2.40 ... > I *thought* this looked familiar! > > https://bugs.debian.org/1006455 > > With the newer upstream version, It looks like this can be easily fixed > in debian/rules with: > > diff --git a/debian/rules b/debian/rules > index 47129d2..95146a9 100755 > --- a/debian/rules > +++ b/debian/rules > @@ -7,7 +7,8 @@ > override_dh_auto_configure: > dh_auto_configure -- \ > -DBUILD_TESTS=ON \ > - -DBUILD_TOOLS=ON > + -DBUILD_TOOLS=ON \ > + -DMFX_SYSTEM=Debian > > %: > dh $@ --builddir build/ > > ... or some other deterministic value for MFX_SYSTEM. > > At the moment, tests.reproducible-builds.org is not varying the kernel > version, so it is not detecting this issue, but I can reproduce the > issue locally. As soon as someone tries to reproduce a build with a > slightly different kernel version, this will trigger the reproducibility > issue. > > I would like to fix this by performing an NMU with the above patch, > unless the maintainers would like to tackle this some other way? I have uploaded an NMU to DELAYED/10 and pushed to the git repository on salsa. debdiff attached. live well, vagrant diff -Nru onevpl-intel-gpu-26.1.2/debian/changelog onevpl-intel-gpu-26.1.2/debian/changelog --- onevpl-intel-gpu-26.1.2/debian/changelog2026-02-23 23:34:47.0 -0800 +++ onevpl-intel-gpu-26.1.2/debian/changelog2026-05-13 14:59:34.0 -0700 @@ -1,3 +1,11 @@ +onevpl-intel-gpu (26.1.2-1.1) unstable; urgency=medium + + * Non-maintainer upload. + * debian/rules: Pass a deterministic value for MFX_SYSTEM in +dh_auto_configure override. (Closes: #1098253) + + -- Vagrant Cascadian Wed, 13 May 2026 14:59:34 -0700 + onevpl-intel-gpu (26.1.2-1) unstable; urgency=medium * New upstream release. diff -Nru onevpl-intel-gpu-26.1.2/debian/rules onevpl-intel-gpu-26.1.2/debian/rules --- onevpl-intel-gpu-26.1.2/debian/rules2026-02-23 23:31:23.0 -0800 +++ onevpl-intel-gpu-26.1.2/debian/rules2026-05-13 14:57:21.0 -0700 @@ -7,7 +7,8 @@ override_dh_auto_configure: dh_auto_configure -- \ -DBUILD_TESTS=ON \ - -DBUILD_TOOLS=ON + -DBUILD_TOOLS=ON \ + -DMFX_SYSTEM=Debian %: dh $@ --builddir build/ signature.asc Description: PGP signature
Bug#1098253: onevpl-intel-gpu: please make the build reproducible
On 2025-02-18, Chris Lamb wrote: > Whilst working on the Reproducible Builds effort [0], we noticed that > onevpl-intel-gpu could not be built reproducibly. > > This is because the binary embeds the kernel version into one of the > binaries via the MFX_BUILD_INFO macro: > > │ │ │ ├── ./usr/lib/x86_64-linux-gnu/libmfx-gen.so.1.2.13 ... > │ │ │ │ │ -mediasdk_build_info: Linux-6.12.9+bpo-amd64 6.12.9+bpo-amd64 | GNU > 14.2.0 | glibc 2.40 > │ │ │ │ │ +mediasdk_build_info: Linux-6.1.0-31-amd64 6.1.0-31-amd64 | GNU > 14.2.0 | glibc 2.40 > A patch is attached that ensures that this value is not passed to the > compiler, resulting in "no build info" (via an #ifndef already in the > code). > > An alternative approach is perhaps adding: > >export DEB_CPPFLAGS_MAINT_APPEND = -DMFX_BUILD_INFO="no build info" > > ... to debian/rules, although this will result in "redefinition" > warnings in the build log as it will cause multiple -DMFX_BUILD_INFO="[…]" > comand-line arguments. I *thought* this looked familiar! https://bugs.debian.org/1006455 With the newer upstream version, It looks like this can be easily fixed in debian/rules with: diff --git a/debian/rules b/debian/rules index 47129d2..95146a9 100755 --- a/debian/rules +++ b/debian/rules @@ -7,7 +7,8 @@ override_dh_auto_configure: dh_auto_configure -- \ -DBUILD_TESTS=ON \ - -DBUILD_TOOLS=ON + -DBUILD_TOOLS=ON \ + -DMFX_SYSTEM=Debian %: dh $@ --builddir build/ ... or some other deterministic value for MFX_SYSTEM. At the moment, tests.reproducible-builds.org is not varying the kernel version, so it is not detecting this issue, but I can reproduce the issue locally. As soon as someone tries to reproduce a build with a slightly different kernel version, this will trigger the reproducibility issue. I would like to fix this by performing an NMU with the above patch, unless the maintainers would like to tackle this some other way? live well, vagrant signature.asc Description: PGP signature
Bug#1098253: onevpl-intel-gpu: please make the build reproducible
Source: onevpl-intel-gpu Version: 24.3.4-1 Severity: wishlist Tags: patch User: [email protected] Usertags: kernel X-Debbugs-Cc: [email protected] Hi, Whilst working on the Reproducible Builds effort [0], we noticed that onevpl-intel-gpu could not be built reproducibly. This is because the binary embeds the kernel version into one of the binaries via the MFX_BUILD_INFO macro: │ │ │ ├── ./usr/lib/x86_64-linux-gnu/libmfx-gen.so.1.2.13 │ │ │ │┄ File has been modified after NT_GNU_BUILD_ID has been applied. │ │ │ │ ├── readelf --wide --notes {} │ │ │ │ │ @@ -1,4 +1,4 @@ │ │ │ │ │ │ │ │ │ │ Displaying notes found in: .note.gnu.build-id │ │ │ │ │OwnerData size Description │ │ │ │ │ - GNU 0x0014NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: 97c4c33f55d6d62f6a9d25fb95e901bca16c68f0 │ │ │ │ │ + GNU 0x0014NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: b144d3a34b074cb0ee714b4ab17c53b2059e6a71 │ │ │ │ ├── strings --all --bytes=8 {} │ │ │ │ │ @@ -6387,15 +6387,15 @@ │ │ │ │ │ MFX_ERR_INCOMPATIBLE_VIDEO_PARAM │ │ │ │ │ MFX_WRN_INCOMPATIBLE_VIDEO_PARAM │ │ │ │ │ ./_studio/mfx_lib/shared/src/libmfxsw.cpp │ │ │ │ │ APIImpl_MFXReleaseImplDescription │ │ │ │ │ APIImpl_MFXQueryImplsDescription │ │ │ │ │ MFXVideoCORE_SetBufferAllocator │ │ │ │ │ mediasdk_libva_version: 1.22.0 │ │ │ │ │ -mediasdk_build_info: Linux-6.12.9+bpo-amd64 6.12.9+bpo-amd64 | GNU 14.2.0 | glibc 2.40 │ │ │ │ │ +mediasdk_build_info: Linux-6.1.0-31-amd64 6.1.0-31-amd64 | GNU 14.2.0 | glibc 2.40 │ │ │ │ │ mediasdk_copyright: Copyright(c) 2007-2020 Intel Corporation │ │ │ │ │ mediasdk_product_name: Intel(R) Media SDK │ │ │ │ │ APIImpl_MFXVideoCORE_SyncOperation │ │ │ │ │ ./_studio/mfx_lib/shared/src/libmfxsw_async.cpp A patch is attached that ensures that this value is not passed to the compiler, resulting in "no build info" (via an #ifndef already in the code). An alternative approach is perhaps adding: export DEB_CPPFLAGS_MAINT_APPEND = -DMFX_BUILD_INFO="no build info" ... to debian/rules, although this will result in "redefinition" warnings in the build log as it will cause multiple -DMFX_BUILD_INFO="[…]" comand-line arguments. [0] https://reproducible-builds.org/ Regards, -- ,''`. : :' : Chris Lamb `. `'` [email protected] / chris-lamb.co.uk `- --- a/debian/patches/reproducible-build.patch 1970-01-01 01:00:00.0 +0100 --- b/debian/patches/reproducible-build.patch 2025-02-18 11:36:27.514956436 + @@ -0,0 +1,14 @@ +Description: Make the build reproducible +Author: Chris Lamb +Last-Update: 2025-02-18 + +--- onevpl-intel-gpu-24.3.4.orig/builder/FindGlobals.cmake onevpl-intel-gpu-24.3.4/builder/FindGlobals.cmake +@@ -247,7 +247,6 @@ target_compile_definitions(mfx_common_pr + INTERFACE + ${API_FLAGS} + ${WARNING_FLAGS} +-MFX_BUILD_INFO=\"${BUILD_INFO}\" + MFX_API_VERSION=\"${API_VER_MODIF}\" + MFX_GIT_COMMIT=\"${git_commit}\" + MEDIA_VERSION_STR=\"${MEDIA_VERSION_STR}\" --- a/debian/patches/series 2025-02-18 11:17:28.157549783 + --- b/debian/patches/series 2025-02-18 11:36:26.514952356 + @@ -1 +1,2 @@ #placeholder +reproducible-build.patch

