Yitzchak Scott-Thoennes wrote:
On Fri, Oct 14, 2005 at 02:44:55PM +0200, H.Merijn Brand wrote:

On Fri, 14 Oct 2005 00:33:29 -0700, Yitzchak Scott-Thoennes
<[EMAIL PROTECTED]> wrote:


A change to patchlevel.h broke this; later on Configure compares
what's in .patch to $perl_patchlevel and gets:

  Getting the current patchlevel...
  ./Configure: line 5906: test: : integer expression expected
  (You have perl5 version 9 subversion 3.)

leaving perl_patchlevel unset.  It would be nice if the earlier change
to patchlevel.h (25374) could get into maint along with this; it would
fix the similar problem maint has due to having MAINT instead of
DEVEL.

1. You're right
2. I'm a bit reluctant

ad 1. Of course
ad 2. I need an assurance from Nicholas that the patch is going to be in
     maint too, since Configure is the same for both. I don't think that
     will be a problem.

More to the point. Can we improve here:


I'm not sure what you are asking about.  25374 also changed cflags.SH to
provide a -DPERL_PATCHNUM=xxxxx if the .patch file exists, so the 24148
isn't actually used.  I'm not sure what the idea was for patchlevel.h
to look like for a real release; I'd assumed that at least the
        ,"DEVEL" STRINGIFY(PERL_PATCHNUM)
line would be yanked.

VMS does not use cflags.SH, so the PERL_PATCHNUM is set to what ever is in patchlevel.h.

It does set PERL_PATCHLEVEL correctly in config.sh though.

Does this need to be fixed on VMS?

Adding defines in to the CC line is different on VMS. The last /define=x overrides a previous /define=y that was in effect, so they need to be combined to be /define=(x,y).

Past experience has shown that several components of Perl that manipulate compiler flags are not aware of that, and will silently or noisily do the wrong thing on VMS.

For macro definitions, it is easiest for VMS to put them in an include file as it also removes command line length restrictions.

-John
[EMAIL PROTECTED]
Personal Opinion Only



Reply via email to