Bug 229819 - rpmbuild find to much dependencies in perl modules
rpmbuild find to much dependencies in perl modules
Status: CLOSED WONTFIX
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: rpm (Show other bugs)
4.4
All Linux
medium Severity medium
: ---
: ---
Assigned To: Panu Matilainen
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2007-02-23 12:12 EST by Klaus Ethgen
Modified: 2012-06-20 12:09 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-06-20 12:09:15 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Klaus Ethgen 2007-02-23 12:12:19 EST
First of all, there is no rpm-build in the component list so I'm not able to 
report the bug for the correct package. But rpm is near enough.

Description of problem:
I have a perl module with has a HERE text in the following mather:
...
print <<HERE;
blabla
require further blabla
HERE
...

When I try to make a rpm from this I get the dependency for perl(further) witch 
is completely wrong behaviour!

Version-Release number of selected component (if applicable):
rpm-build-4.3.3-18_nonptl
Comment 1 Jeff Johnson 2007-03-14 05:55:40 EDT
perl dependencies are extracted using regex's which can match other data.

Either rewrite the here document, or filter out the mis-matches.
Comment 2 Klaus Ethgen 2007-03-14 07:57:14 EDT
> perl dependencies are extracted using regex's which can match other data.

I know. I saw the source.

> Either rewrite the here document, or filter out the mis-matches.

Neither is a good solution.
- The first is not always intended. "require" is a very common English word.
- The second is not robust and I also do not know, as the documentation is very
  silent in this case, how to do that filtering in the middle of the build
  process instead of having "AutoReq: no".

Both ways are only _workarounds_ for the bug, no solution.

The perl language is very good to parse. So a bit better regex would be much
more useful. And matching Strings in a regex is never a good idea.
Comment 3 Michael Jennings (KainX) 2007-03-14 08:49:17 EDT
(In reply to comment #2)
> The perl language is very good to parse.

False.  The Perl language is a horrible language to parse.  The only thing that
can reliably parse perl is perl.

> So a bit better regex would be much more useful.

Also false.  No regular expression can compensate for all the different ways of
doing things that do, and that do not, create a dependency.  "eval"...'Nuff said.

Search elsewhere in Bugzilla (which, of course, you should've done already...but
since you created this bug, it's pretty clear you didn't) for a "perldeps.pl"
that does a much better job.
Comment 4 Jiri Pallich 2012-06-20 12:09:15 EDT
Thank you for submitting this issue for consideration in Red Hat Enterprise Linux. The release for which you requested us to review is now End of Life. 
Please See https://access.redhat.com/support/policy/updates/errata/

If you would like Red Hat to re-consider your feature request for an active release, please re-open the request via appropriate support channels and provide additional supporting details about the importance of this issue.

Note You need to log in before you can comment on or make changes to this bug.