Getting condor builds reproducible
Vagrant Cascadian
vagrant at reproducible-builds.org
Mon May 25 02:22:38 BST 2026
On 2026-05-24, Tim Theisen wrote:
> This you for this insight. I will take care of the -DLINUX issue with
> condor. I can work directly with the developers to see what all the
> ramifications are.
Great, always best to get stuff upstream, as it helps other
distributions as well!
Please let us know the end results when you have more information.
For completeness, a few more hopefully useful comments below, since I
already tested the builds...
>> On 2026-05-24, Vagrant Cascadian wrote:
>>> During a local build I see various build arguments passing the kernel
>>> version:
>>>
>>> /usr/bin/c++ -DCONDOR_VERSION=\"25.10.1\" -DHAVE_CONFIG_H
>>> -DLINUX=\"LINUX_6.12.90+DEB13-AMD64\" ...
>>>
>>> This is probably a permutation of this issue:
>>>
>>> https://tests.reproducible-builds.org/debian/issues/unstable/captures_kernel_version_via_CMAKE_SYSTEM_issue.html
>>>
>>> Probably caused by the use of CMAKE_SYSTEM_VERSION:
>>>
>>> CMakeLists.txt-string( TOUPPER "${CMAKE_SYSTEM_NAME}" OS_NAME )
>>> CMakeLists.txt:string( TOUPPER "${CMAKE_SYSTEM_VERSION}" OS_VER )
>>> CMakeLists.txt-string( TOUPPER "${CMAKE_SYSTEM_PROCESSOR}" SYS_ARCH )
>>>
>>> Not sure if just removing that line entirely, or providing a "REDACTED"
>>> string would be an option here... we have the buildd.debian.org logs to
>>> get information like that if needed, rather than embedding in the
>>> binaries.
I tried both removing it entirely and using "REDACTED" and both worked
about the same (e.g. passing -DLINUX=\"LINUX_\"
I also tried adjusting build/cmake/CondorConfigure.cmake:
-add_definitions(-D${OS_NAME}="${OS_NAME}_${OS_VER}")
+add_definitions(-D${OS_NAME}="${OS_NAME}")
Which also worked.
In theory, putting that add_definition in a conditional and passing a
-DOS_NAME_VALUE or similar to configure might be another approach,
although this would require intervention on the package maintainers for
each and every distro, which is less ideal.
>> It seems to build by replacing OS_VER with "REDACTED" ... although
>> passes:
>>
>> -DLINUX=\"LINUX_\"
>>
>> And it dramatically reduced the diffoscope output (from hundreds of
>> megabytes to ~10MB)! Checking another build to see if I can figure out
>> what is left...
The only other issue is build path related, but that is normalized
across most of the build environments for most distros...
live well,
vagrant
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 227 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/reproducible-builds/attachments/20260524/2c9eb393/attachment.sig>
More information about the Reproducible-builds
mailing list