On Wed, Jun 16, 2021 at 10:58:13PM -0700, Tom Stellard wrote: > On 6/16/21 2:11 PM, Charalampos Stratakis wrote: > >On Wed, Jun 16, 2021 at 1:56 AM Tom Stellard <tstel...@redhat.com > ><mailto:tstel...@redhat.com>> wrote: > > > > On 5/7/21 10:48 AM, Ben Cotton wrote: > > > > > https://fedoraproject.org/wiki/Changes/Broken_RPATH_will_fail_rpmbuild > > <https://fedoraproject.org/wiki/Changes/Broken_RPATH_will_fail_rpmbuild> > > > > > > == Summary == > > > Enable broken RPATH detection > > > > > [https://docs.fedoraproject.org/en-US/packaging-guidelines/#_brp_buildroot_policy_scripts > > > > <https://docs.fedoraproject.org/en-US/packaging-guidelines/#_brp_buildroot_policy_scripts> > > > buildroot policy] script by default. This will make the RPM build fail > > > once a broken RPATH was detected within a binary or a shared library > > > file. An opt-out mechanism will be provided as well. > > > > > > == Owner == > > > * Name: [[User:cstratak| Charalampos Stratakis]] > > > * Email: cstratak AT redhat.com <http://redhat.com> > > > > > > > > > > Hi, > > > > Was there any testing done to determine how much this script would > > increase > > build times? I've noticed it takes quite a while on the kernel builds, > > and > > I'm curious what factors influence how long the script takes. Is it > > number of binaries, binary sizes, etc? > > > > -Tom > > _______________________________________________ > > devel mailing list -- devel@lists.fedoraproject.org > > <mailto:devel@lists.fedoraproject.org> > > To unsubscribe send an email to devel-le...@lists.fedoraproject.org > > <mailto:devel-le...@lists.fedoraproject.org> > > Fedora Code of Conduct: > > https://docs.fedoraproject.org/en-US/project/code-of-conduct/ > > <https://docs.fedoraproject.org/en-US/project/code-of-conduct/> > > List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines > > <https://fedoraproject.org/wiki/Mailing_list_guidelines> > > List Archives: > > https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org > > <https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org> > > Do not reply to spam on the list, report it: > > https://pagure.io/fedora-infrastructure > > <https://pagure.io/fedora-infrastructure> > > > > > >Hey Tom, > > > >Unfortunately no, a potential increase in build time was not taken into > >account at the time of the implementation of this change, as it never came > >up when considering other buildroot policy scripts as well. > > > >Here is the actual script that runs: > >https://github.com/rpm-software-management/rpm/blob/rpm-4.16.x/scripts/check-rpaths-worker > > > ><https://github.com/rpm-software-management/rpm/blob/rpm-4.16.x/scripts/check-rpaths-worker> > > > >Could you try and compare two scratch builds? One as is and one by adding > >|%global __brp_check_rpaths %{nil} |at the SPEC?| > >| > > > > Instead of doing two scratch builds, I just added: > %global __brp_check_rpaths time /usr/lib/rpm/check-rpaths to the spec file > and did a scratch build[1]. > > The results on x86_64 were: > > real 13m51.517s > user 8m53.216s > sys 7m34.105s
An fairly easy fix might be to stuff 'parallel --group' there, to at least process different files concurrently. > Overall build time for the scratch build was 88m37s, so that means > check-rpaths > accounted for 15% of the build time. I'm going to do some more tests on some > of the larger packages I maintain (llvm and clang) and see what the impact is. > > I do think it would be worth trying to profile the script and see if there is > room for optimization. > > - Tom > > [1] https://koji.fedoraproject.org/koji/taskinfo?taskID=70270039 > > > > >Also adding here for completion that the script will also check for RUNPATH > >as of rpm 4.17: > >https://github.com/rpm-software-management/rpm/pull/1487/files > ><https://github.com/rpm-software-management/rpm/pull/1487/files> From a quick look, that looks like it'll double the time. What about: - check_rpath $i "RPATH" - check_rpath $i "RUNPATH" + check_rpath $i "RPATH|RUNPATH" Zbyszek _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure