Opened 9 years ago
Closed 9 years ago
#50103 closed defect (fixed)
perl5: using perl5 port group to create variants results in circular logic
Reported by: | dbevans (David B. Evans) | Owned by: | mojca (Mojca Miklavec) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | ||
Port: | perl5 |
Description
The circular logic derives from the fact that the perl5 port group checks the version of the perl installed by perl5 to determine the default variant. This results in perl5's default variant always being set to the currently installed variant rather than +perl5_22 as it should be. This is the correct behavior for other ports that declare perl variants but not for port perl5 which is a special case.
Because of this, I'm suggesting that you manually set the perl5 variants rather than using the perl5 port group to set them.
Change History (5)
comment:1 follow-up: 3 Changed 9 years ago by mojca (Mojca Miklavec)
comment:2 follow-up: 4 Changed 9 years ago by mojca (Mojca Miklavec)
Unrelated, but weird: while doing some tests and compiling perl5.16
, the compilation failed with
error: use of undeclared identifier 'KERN_PROC_PATHNAME'
In the next attempt it ran just fine, so I'm slightly confused.
The above change seems to fix the problem of circular dependency, but I would like your confirmation just in case. Thanks a lot for spotting this.
And another tiny request: can you please try to revbump all the perl5.x
ports locally and check if you notice any problems? We had a working perl that I broke for a few hours, but some users upgraded exactly in that time window, so we should revbump. I just want to avoid revbumping to a broken version and risk breaking everyone's installation, not just the one of those who were unlucky enough to upgrade at that time.
comment:3 Changed 9 years ago by dbevans (David B. Evans)
Replying to mojca@…:
Do you mean just adding
perl5.default_branch 5.22to the
perl5
port?
Yes, that works (just tested) but it needs to go before the call to perl5.create_variants.
comment:4 Changed 9 years ago by dbevans (David B. Evans)
Replying to mojca@…:
And another tiny request: can you please try to revbump all the
perl5.x
ports locally and check if you notice any problems? We had a working perl that I broke for a few hours, but some users upgraded exactly in that time window, so we should revbump. I just want to avoid revbumping to a broken version and risk breaking everyone's installation, not just the one of those who were unlucky enough to upgrade at that time.
After bumping the revision, all 4 perl5.* subports built for me without problem. Didn't see anything like the transient error that you mentioned for perl5.16 above.
Anything more that I should be looking for?
comment:5 Changed 9 years ago by mojca (Mojca Miklavec)
Resolution: | → fixed |
---|---|
Status: | new → closed |
Version: | 2.3.4 |
I committed r143798.
I'm not sure what to look for. I compared my old installation and the revbumped update by extracting the files and running diff -r
. Lots of timestamps everywhere that we'll have to fix when we start worrying about reproducible builds. If there were any real differences, I probably missed them in the sea of the rest.
Do you mean just adding
to the
perl5
port?