Bug 236837

Summary: 'perl -e' multiline expression invoked from a Makefile syntax error
Product: Red Hat Enterprise Linux 5 Reporter: Kevin J. McCarthy <kmccarth>
Component: perlAssignee: Robin Norwood <robin.norwood>
Status: CLOSED NOTABUG QA Contact: David Lawrence <dkl>
Severity: medium Docs Contact:
Priority: medium    
Version: 5.0CC: bhorton, perl-maint-list
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-04-23 23:40:58 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Makefile to generate error. none

Description Kevin J. McCarthy 2007-04-17 21:08:38 UTC
Description of problem:

On RHEL5, perl 5.8.8, the attached Makefile generates a Perl syntax error.  On
RHEL4, perl 5.8.5 (and other platforms), it runs correctly.

How reproducible:

Install make and perl, and run 'make' against the attached Makefile

Actual results:

syntax error at -e line 3, near "while"
Execution of -e aborted due to compilation errors.
make: *** [all] Error 255


Expected results:

prints "hi" and then enters an infinite loop.

Additional info:

This is a simplication of a bug that's occurring while trying to compile JSS
<http://www.mozilla.org/projects/security/pki/jss/> on RHEL5

The behaviour of Perl seems a bit wacky.  Two "print()" calls on multiple lines
will run, but the moment you try to put in a while loop, the syntax error occurs.

Comment 1 Kevin J. McCarthy 2007-04-17 21:08:41 UTC
Created attachment 152860 [details]
Makefile to generate error.

Comment 2 Kevin J. McCarthy 2007-04-23 23:40:58 UTC
This turns out to be a (well known) gmake issue. I've located a patch from
upstream for JSS.
For more details see: http://lists.debian.org/debian-devel/2005/12/msg00988.html

Closing bug report.