Enabling -ffile-prefix-map by default

Vagrant Cascadian vagrant at reproducible-builds.org
Thu Oct 15 20:19:58 BST 2020


On 2020-10-15, Chris Lamb wrote:
>> At a quick glance, looks to be 33 packages, many of which were already
>> identified in by our tags:
>>
>> https://tests.reproducible-builds.org/debian/issues/unstable/ftbfs_due_to_f-file-prefix-map_issue.html
>> https://tests.reproducible-builds.org/debian/issues/unstable/ffile_prefix_map_passed_to_clang_issue.html
>>
>> I've just added the missing ones, and will follow-up with bugs and
>> hopefully patches in the coming weeks. It is a pretty reasonable number
>> of packages to tackle.
>
> Vagrant, can you briefly elaborate on your plan of action here? In
> particular, at what point do you plan to request enabling
> -ffile-prefix-map distribution-wide? I can think of a number of
> potential answers, so would be interested to learn your current
> intentions.

I need to follow-up with bug reports for the packages that aren't
triggered by clang. Was hoping to have that done by now; it's on my
priority list... I would guess this is in the ballpark of 10-20 more
bugs. Of course, anyone can file those bug reports...

Once llvm-defaults updates the default clang, I think nearly half of the
FTBFS issues will likely disappear, so don't think this is worth filing
for those bugs, presuming llvm-defaults gets updated soon.

The stupid fix for the remaining packages is to disable this feature for
a handful of packages, e.g. in debian/rules:

  DEB_BUILD_MAIN_OPTIONS=reproducible=-fixfilepath,+fixdebugpath

(or maybe just -fixfilepath, depending on how the dpkg patch lands)

More ideally just disabling it in the test suites somehow, as that's the
primary use-case that would ever matter.


So, looking at:

  https://wiki.debian.org/Teams/Dpkg/FAQ#Q:_Can_we_add_support_for_new_default_build_flags_to_dpkg-buildflags.3F

We're nearly ready to take it to debian-devel for comments...

Some remaining points:

  * For non-warning flags, a comparison of the build logs to see the
    memory and build time difference if these might seem relevant
    (sbuild should provide those).

I haven't compared the build logs to get this data yet, but I would be
surprised if it made any significant difference. I'd like to invoke the
"these are not relevent" clause.

  * For flags that change run-time semantics, ideally an additional run
    of the autopkgtest for packages that ship them (although this cannot
    be deemed conclusive as our coverage is not great yet).

I don't believe it changes run-time semantics in any way that could
matter.


I guess, at risk of a small breach of procedure, it would be worth
starting the conversation on debian-devel *now* even though the
remaining bugs aren't yet filed just to get the process started (while
continuing to file the remaining bugs)... to hopefully make it in time
for bullseye.


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/20201015/bc36f587/attachment.sig>


More information about the Reproducible-builds mailing list