Front page | perl.perl5.porters |
Postings from May 2012
Re: Smoke [5.15.9] v5.15.9-270-g5a0c7e9 FAIL(m) HP-UX B.11.00/64(PA-RISC2.0/64/2 cpu)
Thread Previous
|
Thread Next
From:
H.Merijn Brand
Date:
May 5, 2012 01:32
Subject:
Re: Smoke [5.15.9] v5.15.9-270-g5a0c7e9 FAIL(m) HP-UX B.11.00/64(PA-RISC2.0/64/2 cpu)
Message ID:
20120505103145.24af3c44@pc09.procura.nl
On Sat, 5 May 2012 07:13:28 +0100, Nicholas Clark <nick@ccl4.org> wrote:
> On Fri, May 04, 2012 at 01:38:00PM +0200, H.Merijn Brand wrote:
> > Automated smoke report for 5.15.9 patch 5a0c7e9d45ff6da450098635b233527990112d8a v5.15.9-270-g5a0c7e9
> > a5: PA8700 (PA-RISC2.0/64/2 cpu)
> > on HP-UX - B.11.00/64
> > using cc version B.11.X.35098-35101.GP
> > smoketime 14 hours 53 minutes (average 1 hour 51 minutes)
>
> > v5.15.9-270-g5a0c7e9 Configuration (common) none
> > ----------- ---------------------------------------------------------
> > O O O m - -
> > O O O O O O -Duse64bitall
> > O O O m - - -Duseithreads
> > O O O O O O -Duseithreads -Duse64bitall
>
> So, to replicate the 'm', configure exactly the same way:
>
> ./Configure -de -DDEBUGGING -Dusedevel -Dcc=ccache\ cc -Dld=cc
>
>
> one gets these flags
>
> $ egrep '^(optimize|ccflags)=' config.sh
> ccflags=' -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings -DDEBUGGING -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 '
> optimize='+O2 +Onolimit -g'
> $ make run.o
> `sh cflags "optimize='+O2 +Onolimit -g'" run.o` run.c
> CCCMD = ccache cc -DPERL_CORE -c -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings -DDEBUGGING -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +O2 +Onolimit -g
> cc: error 1414: Can't handle preprocessed file "/perl/usr/nick/.ccache/run.tmp.p5p-hpux.28123.i" if -g and -O specified.
> *** Error exit code 1
>
> Stop.
>
>
> Simply add -Duse64bitall to that Configure command line:
>
> ./Configure -de -Duse64bitall -DDEBUGGING -Dusedevel -Dcc=ccache\ cc -Dld=cc
>
>
> and one gets the same flags, just with +DD64 added:
>
> $ egrep '^(optimize|ccflags)=' config.sh
> ccflags=' -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings +DD64 -DDEBUGGING -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 '
> optimize='+O2 +Onolimit -g'
> $ make run.o
> `sh cflags "optimize='+O2 +Onolimit -g'" run.o` run.c
> CCCMD = ccache cc -DPERL_CORE -c -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings +DD64 -DDEBUGGING -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +O2 +Onolimit -g
> cc: warning 404: Pre-processor not invoked, options ignored.
>
>
>
> and it works!
>
> So it looks like a crazy compiler, in in that doesn't permit -g +O2 for 32 bit
> mode, but does permit -g +O2 for 64 bit mode. But wait. What's the bit about
> "Can't handle preprocessed file"
>
> $ echo 'int i;' >bonkers.c
> $ cc -c -g +O2 bonkers.c
> $ cc -E -g +O2 bonkers.c >bonkers.i
> $ cc -c -g +O2 bonkers.i
> cc: error 1414: Can't handle preprocessed file "bonkers.i" if -g and -O specified.
> $ cat bonkers.i
> # 1 "bonkers.c"
> int i;
>
> $ cc -c -g +O2 +DD64 bonkers.c
> $ cc -E -g +O2 +DD64 bonkers.c >bonkers.i
> $ cc -c -g +O2 +DD64 bonkers.i
> $ cat bonkers.i
> # 1 "bonkers.c"
> int i;
>
>
> No, it's not just crazy compiler, its insane! It handles -g +O2 just fine
> normally, but for 32 bit mode it refuses to accept pre-processed input.
> Whereas for 64 bit mode it does.
>
> If HP think that this isn't a bug, I'd love to know what their excuse is.
Wow, what dig-work.
This is indeed insane. It probably only #fail this way on PA-RISC, as
the itanium boxes seem to accept these. I do not expect HP to come with
a fix, as PA-RISC is kinda abandoned. I could try to contact them.
Shall I alter the hints to drop +O when -g is in place?
I also tried with +O1, but the effect was the same
> Nicholas Clark
--
H.Merijn Brand http://tux.nl Perl Monger http://amsterdam.pm.org/
using perl5.00307 .. 5.14 porting perl5 on HP-UX, AIX, and openSUSE
http://mirrors.develooper.com/hpux/ http://www.test-smoke.org/
http://qa.perl.org http://www.goldmark.org/jeff/stupid-disclaimers/
Thread Previous
|
Thread Next