On July 3, 2022 7:33 PM, Paul Smith wrote: >I prefer to do the review via email rather than in the Savannah bug tracker >which >has pretty annoying markup. > >I would appreciate a somewhat comprehensive commit message or ChangeLog for >this set of patches, at least explaining some of the less obvious >modifications. > >> +set -x >> +if [ ! ${PLATFORM} = "OS/390" ]; then $CC $CFLAGS $LDFLAGS >> +-L"$OUTLIB" -o "$OUTDIR/makenew$EXEEXT" $objs - >> lgnu $LOADLIBES >> +else >> $CC $CFLAGS $LDFLAGS -L"$OUTLIB" $objs -lgnu $LOADLIBES -o >> "$OUTDIR/makenew$EXEEXT" >> +fi > >We don't want set -x here. > >Is the point of this that the compiler on OS/390 doesn't allow the -o option to >come after the objects? If so we should just change the command line order on >all >systems; no need to check for platforms here. >Other compilers don't care about the order in which -o comes so it can just >come >early for all of them.
I encountered the issue that the z/OS xlc compiler needs -o file ahead of all other objects on the command line. Definitely non-standard. >> -# define __stat stat >> +# define __gnustat stat > >I suppose OS/390 already defines __stat to something else? All this code in >glob.c >and fnmatch.c is not really owned by GNU make, we import it from elsewhere. >But it looks like we'll have to do something about this. stat also actually needs stat64 to get past the UNIX 2038 rollover. Regards, Randall