On 2017-09-29 03:45, Digimer wrote:
Hi all,

  Continuing down by build dependency hole, I ran into another circular
dependency. I checked in perl-namespace-autoclean.spec for the bootstrap
option, but it didn't seem to exist. I added it, and it allowed me to
build -> install perl-namespace-autoclean, then build -> install
perl-MooseX-Role-WithOverloading, then rebuild perl-namespace-autoclean
normally.

====
--- perl-namespace-autoclean.spec       2014-08-14 22:16:54.000000000 +0000
+++ perl-namespace-autoclean.spec.new 2017-09-29 02:42:34.666511773 +0000
@@ -41,7 +41,9 @@
 %if 0%{?fedora} || 0%{?rhel} > 7
 BuildRequires:  perl(MooseX::MarkAsMethods)
 %endif
+%if !0%{?perl_bootstrap}
 BuildRequires:  perl(MooseX::Role::WithOverloading) >= 0.09
+%endif
 BuildRequires:  perl(Mouse)
 BuildRequires:  perl(Sub::Name)
 # Runtime
====

  Was this the right approach? I worry not because obviously you guys
compiled them before.

perl-namespace-autoclean was updated in EPEL from version 0.13 to version 0.19. Version 0.13 did not have the build dependency on perl(MooseX::Role::WithOverloading) and thus was able to build successfully. By the time the upgrade to 0.19 happened, perl-MooseX-Role-WithOverloading had been built (pulling in the existing perl-namespace-autoclean 0.13) and so there was no problem doing that version 0.19 build.

If you look at the master branch of perl-namespace-autoclean, you'll see that there's now a bootstrapping conditional around the perl(MooseX::Role::WithOverloading) build requirement.

What you did is fine.

Paul.
_______________________________________________
epel-devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to