All,
I am starting a long running side project on z/OS that would benefit from
the development release of Perl. I'm running into some config/build
issues, so I'm reaching out to the Perl community to get some help.
I have pulled the current dev tree (5.17.10) on Feb-21 via:
rsync -avz rsync://perl5.git.perl.org/APC/perl-current
Configure (seems) to run cleanly enough, the contents of myconfig are down
towards the bottom of this post.
There are problems with makedepend. Here is some of the output of
makedepend. Let me know what else you might have to see.
sh ./makedepend MAKE=make
...
...
perl.c
Finding dependencies for perl.o.
WARNING CCN3296 ./patchlevel.h:132 #include file "git_version.h" not
found.
ERROR CCN3198 perl.c:535 #if, #else, #elif, #ifdef, #ifndef block must
be ended with #endif.
FSUM3065 The COMPILE step ended with return code 12.
FSUM3017 Could not compile .83952605.c. Correct the errors and try
again.
Where does git_version.h come from? I don't have it.
Not sure why the compiler is issuing the coplaint about 535. Is it
possibly 535 of the preprocessor expanded version of perl.c ??
533 destruct_level = PL_perl_destruct_level;
534 #if defined(DEBUGGING) || defined(PERL_TRACK_MEMPOOL)
535 {
...
...
perly.c
Same issue for perly.c. complaint at line 82 does not make sense
ERROR CCN3202 perly.c:82 #endif can only appear at the end of a #if,
#elif, #ifdef or #ifndef block.
FSUM3065 The COMPILE step ended with return code 12.
FSUM3017 Could not compile .83952612.c. Correct the errors and try
again.
71 # define YYFPRINTF PerlIO_printf
72
73 # define YYDPRINTF(Args) \
74 do { \
75 if (yydebug) \
76 YYFPRINTF Args; \
77 } while (0)
78
79 # define YYDSYMPRINTF(Title, Token, Value) \
80 do { \
81 if (yydebug) { \
82 YYFPRINTF (Perl_debug_log, "%s ", Title); \
83 yysymprint (aTHX_ Perl_debug_log, Token, Value); \
84 YYFPRINTF (Perl_debug_log, "\n"); \
85 } \
86 } while (0)
Other makedepend output indicating problems
...
...
Finding dependencies for pp_sys.o.
ERROR CCN3010 ./time64.c:478 Macro PeRl_CaTiFy invoked with a null
argument for parameter a.
ERROR CCN3010 ./time64.c:478 Macro PeRl_CaTiFy invoked with a null
argument for parameter a.
FSUM3065 The COMPILE step ended with return code 12.
FSUM3017 Could not compile .83952614.c. Correct the errors and try again.
Finding dependencies for regcomp.o.
Finding dependencies for regexec.o.
ERROR CCN3287 regexec.c:34 The parameter list on the definition of macro
LOAD_UTF8_CHARCLASS_DEBUG_TEST is not complete.
ERROR CCN3287 regexec.c:74 The parameter list on the definition of macro
REXEC_TRIE_READ_CHAR is not complete.
FSUM3065 The COMPILE step ended with return code 12.
FSUM3017 Could not compile .67174402.c. Correct the errors and try again.
...
...
Finding dependencies for globals.o.
WARNING CCN3296 ./perl.h:4331 #include file "uudmap.h" not found.
WARNING CCN3296 ./perl.h:4338 #include file "bitcount.h" not found.
WARNING CCN3296 ./perl.h:5203 #include file "mg_data.h" not found.
FSUM3065 The COMPILE step ended with return code 4.
...
...
Finding dependencies for pp_pack.o.
ERROR CCN3294 pp_pack.c:115 Syntax error in expression on #if directive.
FSUM3065 The COMPILE step ended with return code 12.
FSUM3017 Could not compile .67174450.c. Correct the errors and try again.
..
..
Finding dependencies for perlmini.o.
WARNING CCN3296 ./patchlevel.h:132 #include file "git_version.h" not
found.
ERROR CCN3198 perlmini.c:535 #if, #else, #elif, #ifdef, #ifndef block
must be ended with #endif.
FSUM3065 The COMPILE step ended with return code 12.
FSUM3017 Could not compile .50397241.c. Correct the errors and try again.
echo Makefile.SH cflags.SH config_h.SH makedepend.SH myconfig.SH
pod/Makefile.SH | tr ' ' '\n' >.shlist
Updating makefile...
cd x2p; make depend
sh ../makedepend MAKE=make
echo hash.c str.c util.c walk.c | tr ' ' '\n' >.clist
Finding dependencies for hash.o.
..
..
echo Makefile.SH cflags.SH | tr ' ' '\n' >.shlist
Updating makefile...
Now you must run 'make'.
Does configure usually notice errors from makedepend and indicate something
needs to be fixed before running make, or is this normal
contents of ./myconfig:
cat <<'!NO!SUBS!'
Summary of my perl5 (revision 5 version 17 subversion 10) configuration:
Platform:
osname=os390, osvers=23.00, archname=os390
uname='os390 wsya 23.00 03 2827 '
config_args='-Dprefix=/u/jgood/local -Dusedl'
hint=recommended, useposix=true, d_sigaction=define
useithreads=undef, usemultiplicity=undef
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=undef, use64bitall=undef, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='c89', ccflags ='-2 -Wc,XPLINK -DMAXSIG=39 -DOEMVS -D_OE_SOCKETS
-D_XOPEN_SOURCE_EXTENDED -D_ALL_SOURCE -DYYDYNAMIC -D_
SHR_ENVIRON -DPERL_EXTERNAL_GLOB -Wc,dll -W 0,float(ieee)',
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, prototype=define
Linker and Libraries:
ld='c89', ldflags ='-Wl,EDIT=NO -Wl,XPLINK,dll'
libpth=/lib /usr/lib
libs=-lm -lc
perllibs=-lm -lc
libc=, so=so, useshrplib=true, libperl=libperl.so
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dllload.xs, dlext=dll, d_dlsymun=undef, ccdlflags='-W
l,XPLINK,dll /u/jgood/perlsrc/dev-2-21-2012/libperl.x'
cccdlflags='-c -Wc,XPLINK,dll,EXPORTALL', lddlflags='-W
l,XPLINK,dll /u/jgood/perlsrc/dev-2-21-2012/libperl.x'
!NO!SUBS!
John Goodyear