Perl / perl5

🐪 The Perl programming language
https://dev.perl.org/perl5/
Other
1.85k stars 527 forks source link

Not OK: perl v5.7.0 +DEVEL9582 on os390 10.00 (UNINSTALLED) #3834

Closed p5pRT closed 20 years ago

p5pRT commented 23 years ago

Migrated from rt.perl.org#6760 (status was 'resolved')

Searchable as RT6760$

p5pRT commented 23 years ago

From pvhp@forte.com

`make test` dies on a -des Configured default build of perl on OS/390 (where $usedl='undef' is still the default and DPERL_EXTERNAL_GLOB is used simply as a trick) with the following​:

  Making re (static) make[2]​: Entering directory `/SYSTEM/tmp/ttt/perl/ext/re' make[2]​: Leaving directory `/SYSTEM/tmp/ttt/perl/ext/re' make[2]​: Entering directory `/SYSTEM/tmp/ttt/perl/ext/re' make[2]​: Leaving directory `/SYSTEM/tmp/ttt/perl/ext/re' cd t && (rm -f ./perl; /bin/ln -s .././perl ./perl) make[1]​: Leaving directory `/SYSTEM/tmp/ttt/perl' make​: *** No rule to make target `lib/auto/File/Glob/Glob.none'\, needed by `test'. Stop.

There appears to be a new bug in Makefile.SH\, I note the following in my extracted Makefile​:

$ grep EXTGLOB Makefile EXTGLOB = lib/auto/File/Glob/Glob$(DLSUFFIX) TESTREQEXT = $(EXTGLOB)

A workaround for `make test` appears to be to touch the requisite file (why no suych make rule in Makefile?)​:

$ ls -F lib/auto/File/Glob Glob.a* autosplit.ix extralibs.ld $ touch lib/auto/File/Glob/Glob.none $ make test

some test failures and # comments​:

op/append.............Malformed UTF-8 character (unexpected continuation byte 0x62) in pattern match (m//) at op/append.t line 46. Wide character in print at op/append.t line 46. Malformed UTF-8 character (unexpected continuation byte 0x62) in pattern match (m//) at op/append.t line 50. Wide character in print at op/append.t line 50. Malformed UTF-8 character (unexpected continuation byte 0x62) in pattern match (m//) at op/append.t line 54. Wide character in print at op/append.t line 54. Malformed UTF-8 character (unexpected continuation byte 0x62) in pattern match (m//) at op/append.t line 58. Wide character in print at op/append.t line 58. FAILED at test 7

op/pat................CEE5213S The signal SIGPIPE was received. FAILED at test 234 # UTF-EBCDIC bug in perl regular expressions?

op/tr.................CEE5213S The signal SIGPIPE was received. FAILED at test 50

pragma/locale.........Unmatched [ before HERE mark in regex m/[ \<\< HERE / at pragma/locale.t line 710. FAILED at test 99 # known seen before - memory or C RTL setlocale() bug

pragma/warnings.......PROG​: -W

# perl.c no warnings 'once' ; $x = 3 ; use warnings 'once' ; $z = 3 ; EXPECTED​: Name "main​::z" used only once​: possible typo at - line 6. Name "main​::x" used only once​: possible typo at - line 4. GOT​: Name "main​::x" used only once​: possible typo at - line 4. Name "main​::z" used only once​: possible typo at - line 6. CEE5213S The signal SIGPIPE was received. FAILED at test 74 # seen before\, possible patch   # that would need s/72/73/ modification   # is at​:

  http​://www.xray.mpe.mpg.de/mailing-lists/perl-mvs/2001-03/msg00099.html

lib/b.................CEE5213S The signal SIGPIPE was received. FAILED at test 17 # new failure (IIRC)

lib/glob-basic........FAILED at test 11 # new failure ?

lib/io_unix...........Can't call method "getline" on an undefined value at lib/io_unix.t line 65. FAILED at test 3 # known seen before\, fork problem?

lib/mimeqp............FAILED at test 2 # known seen before\, an EBCDIC workaround exists but needs developement

Failed 9 test scripts out of 324\, 97.22% okay. u=18.23 s=6.07 cu=405.26 cs=135.08 scripts=324 tests=23104

One completely untested "hack around" might be to​:

Inline Patch ```diff --- Makefile.SH;1 Fri Apr 6 14:07:00 2001 +++ Makefile.SH Fri Apr 6 16:43:51 2001 @@ -135,7 +135,12 @@ case "$DPERL_EXTERNAL_GLOB" in "") ;; -*) testreqext="$testreqext \$(EXTGLOB)" ;; +*) + case "${osname}${osvers}" in + os390*) ;; + *) testreqext="$testreqext \$(EXTGLOB)" ;; + esac + ;; esac echo "Extracting Makefile (with variable substitutions)" ```

End of "hack:"

I am sorry - I actually do not like that and it is untested. I am primarily trying to point out the trouble spot. I'd appreciate it if a Makefile.SH expert took a crack at it. Thank you. (Running out of the office for the weekend now).

Perl Info ``` Flags: category=install severity=none Site configuration information for perl v5.7.0: Configured by PVHP at Fri Apr 6 15:49:44 PDT 2001. Summary of my perl5 (revision 5.0 version 7 subversion 0) configuration: Platform: osname=os390, osvers=10.00, archname=os390 uname='os390 lpr210 10.00 02 9672 ' config_args='-Dusedevel -des' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef Compiler: cc='c89', ccflags ='-DMAXSIG=38 -DOEMVS -D_OE_SOCKETS -D_XOPEN_SOURCE_EXTENDED -D_ALL_SOURCE -DYYDYNAMIC -I/usr/local/include', optimize=' ', cppflags='' ccversion='', gccversion='', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321 d_longlong=undef, longlongsize=, d_longdbl=define, longdblsize=16 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=4 alignbytes=8, usemymalloc=n, prototype=define Linker and Libraries: ld='ld', ldflags ='-Wl,EDIT=NO -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lm -lc perllibs=-lm -lc libc=, so=a, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_none.xs, dlext=none, d_dlsymun=undef, ccdlflags='' cccdlflags='-W 0,dll', lddlflags='' Locally applied patches: DEVEL9582 @INC for perl v5.7.0: lib /usr/local/lib/perl5/5.7.0/os390 /usr/local/lib/perl5/5.7.0 /usr/local/lib/perl5/site_perl/5.7.0/os390 /usr/local/lib/perl5/site_perl/5.7.0 /usr/local/lib/perl5/site_perl/5.005/os390 /usr/local/lib/perl5/site_perl/5.005 /usr/local/lib/perl5/site_perl . Environment for perl v5.7.0: HOME=/usr/forte/pvhp LANG=C LANGUAGE (unset) LD_LIBRARY_PATH (unset) LIBPATH=/lib:/usr/lib:. LOGDIR (unset) PATH=/usr/local/bin:/bin:. PERL_BADLANG (unset) SHELL=/bin/sh ```