Red Hat Bugzilla – Bug 179083
perl.prov too old to parse "our $VERSION = '1.00'" constructs
Last modified: 2007-11-30 17:07:22 EST
The perl.prov script contributed by rpm-build-4.3.3-11_nonptl doesn't know about
the new "our" pragma, and thus fails to identify the version of perl modules
that use it. As a result, rpm packages built on RHEL that contain perl modules
using the "our" pragma won't have the correct version information embedded in
the rpm package.
Here's a succinct description of the problem:
$ rpm -q rpm perl
$ rpm -qf /usr/lib/perl5/5.8.5/File/Path.pm
$ /usr/lib/rpm/perl.prov /usr/lib/perl5/5.8.5/File/Path.pm
But if I use perl.prov from rpm-4.4.1-22 (from FC4):
$ ~/perl.prov /usr/lib/perl5/5.8.5/File/Path.pm
perl(File::Path) = 1.06
As you can see, not only are there already RHEL4 packages that are using it the
"our" pragma, but the RHEL4 perl package is one of the packages that is using it!
Conclusion: the RHEL4 rpm-build perl.prov script *must* handle the "our" pragma.
If you diff the perl.prov script from rpm-4.3 and rpm-4.4, you'll see that that
there's no reason not to simply backport the perl.prov from rpm-4.4 to into the
RHEL4 rpm package.
For that matter, the RHEL3 rpm package should get the backported perl.prov
script as well.
Alas, it doesn't look like the upstream fix is going to make it into U3, correct?
Support issues for update releases need to be raised through Red Hat support,
not through bugzilla. Please file a support request that can be linked against
NEEDINFO_ENG has been deprecated in favor of NEEDINFO or ASSIGNED. Changing
status to ASSIGNED for ENG review.
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release. Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products. This request is not yet committed for inclusion in an Update