develooper Front page | perl.perl5.porters | Postings from March 2013

Fw: New EBCDIC branch available

From:
John Goodyear
Date:
March 1, 2013 03:35
Subject:
Fw: New EBCDIC branch available
Message ID:
OF489D4D31.FCF7F5E6-ON85257B21.00138728-85257B21.0013AD4A@us.ibm.com


"H.Merijn Brand"  wrote on 02/28/2013 02:23:33 AM:

> Subject: Re: New EBCDIC branch available
>
> On Wed, 27 Feb 2013 16:36:46 -0700, Karl Williamson wrote:

>
> > On 02/26/2013 08:41 PM, John Goodyear wrote:
> > > Karl,
> > > I pulled down a snapshot from the link you provided.
> > >
> > > Here is the configure output: of
> > >
> > >     sh ./Configure -Dprefix=/u/jgood/local -Dusedl -Dusedevel -de >
> > >     configure.out 2>&1&
> > >
> > >
> > > /(See attached file: configure.out)/
> > >
> > >
> > > WRT to the errors previously seen during the makedepend step, besides
> > > the errors about missing headers which don't yet exist in the
makedepend
> > > phase, the only remain error is:
> > >
> > >   2002  Finding dependencies for pp_sys.o.
> > >    2003  ERROR CCN3010 ./time64.c:478   Macro PeRl_CaTiFy invoked
with a
> > > null argument for parameter a.
> > >    2004  ERROR CCN3010 ./time64.c:478   Macro PeRl_CaTiFy invoked
with a
> > > null argument for parameter a.
> >
> > These appear to be Configure not finding the values for LOCALTIME_MAX
> > and LOCALTIME_MIN.  Look in your config.h to see what happened for
them.
>
> If there is a (real) bug in the detection system, we might also need to
> update other modules. The detection was part of Schwern and me "fixing"
> y2038 problems.


Here is another wrinkle from z:
To get LOCALTIME_MIN/MAX to work -Wc,LANGLVL(LONGLONG) needs to be passed
to the
compiler so the local_check() function with the test against
0x7ffffffffffff000LL
will work. The wrinkle is that it (usually) needs to be -Wc,"LANGLVL
(LONGLONG)"
so the shell does not complain about the parenthesis.  It seems there was
some
level of wrestling to get float(ieee) added to ccflags vial the config.arch
support.

Unless I'm mistaken, doing this doesn't make the values available inside of
the
Configure script so all of the tests that need LANGLVL(LONGLONG) don't see
it.

I tried various combinations of quotes, escaped quotes, ect..., but
couldn't find
the right combination that would make all of the different references to
$ccflags
happy.

>
> > I also added code to makedepend to cut line lengths input to cpp to
1000
> > (should be less than any of their limits).  I think that would have
> > solved the grep problem.
>

Now I get this sed error for each of the files makedepend runs against:
      sed: FSUM6660 contents of { } or \{ \} invalid



I turned on trace in the hopes it would shed some light on what's going on.
      + echo Finding dependencies for doio.o.
      Finding dependencies for doio.o.
      + 1> UU/doio.c.c
      + echo #line 2 "doio.c"
      + sed -n -e /^doio_init(/q -e : testcontinuation -e /^
      [         ]*#/s|[         ]*/\*..*\*/[    ]*| | -e /\\$/{ -e N -e
      b testcontinuation -e } -e s/[  ]*\\\n[         ]*/ /g -e /^#line/d
      -e /^[      ]*#/{ -e s|[    ]*/\*[^*].*$|| -e s|[
      ]*/\*\*[^/].*$|| -e s/.\{1000\}/&\\\n/g -e p -e }
      + 0< doio.c
      sed: FSUM6660 contents of { } or \{ \} invalid
      + [ os390 = os390 ]
      + cppstdin -I.
      + 0< UU/doio.c.c
      + sed -e /^#.*<stdin>/d -e /^#.*"-"/d -e /^#.*git_version\.h/d -e
      s#\.[0-9][0-9]*\.c#doio.c.c# -e s/^[   ]*#[    ]*line/
      #/ -e /^# *[0-9][0-9]* *[".\/]/!d -e s/^.*"\(.*\)".*$/doio\$
      (OBJ_EXT): \1/ -e s/^# *[0-9][0-9]* \(.*\)$/doio\$(OBJ_EXT):
       \1/ -e s|: \./|: | -e s|\.c\.c|.c|
      + uniq
      + sort
      + uniq
      + 1>> .deptmp
      + echo doio$(OBJ_EXT): cflags
      + 1>> .deptmp
      + uwinfix=
      + + basename dump.c .c
      + 1<TMP> /tmp/shcaeFEBfaA


Karl
I ran make -k to see what complaints there are for the other files.
      - There are still "INFORMATIONAL CCN4108 ..." messages being emitted,
      but not as many as before.
        Andy, If the current tactic won't take care of them all, adding the
      compiler option -Wc,"SUPRESS(CCN4108)" will take care of them.

      - In addition to to the isIDFIRST_utf8 macro causing its problems
      with expansion > 2K, TRIE_BITMAP_SET or UTF8_TWO_BYTE_HI,
      UTF8_EIGHT_BIT_LO, UTF8_IS_CONTINUATION  may be doing the same thing

      - Only other thing I saw was const char* vs char* agreement in
      pp_sys.c

See attached file make.out

Regarding the macro expansion that is getting split across lines, I waiting
on some feedback from a compiler contact.



John Goodyear



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About