What I did was to change QUOTESED in the Makefile to have the extra back
slashes as mentioned here:
http://vim.1045645.n5.nabble.com/patch-7-3-for-zOS-EBCDIC-td1210648.html.
Ralf says configure is auto-created but is the Makefile also auto-created?
Anyway, Makefile as shipped appears wrong. After making the change, it built
ok (hurrah!)

Cheers,

Dave

On Thu, Sep 9, 2010 at 1:05 PM, David Griffiths
<[email protected]>wrote:

> Ok, downloaded vim73 and got this:
>
> creating auto/pathdef.c
> cc -c -I. -Iproto -DHAVE_CONFIG_H -g -D_ALL_SOURCE -Wc,float\(IEEE\) -o
> objects/pathdef.o auto/pathdef.c
> WARNING CCN3296 ./os_unix.h:60    #include file <libc.h> not found.
> WARNING CCN3296 ./os_unix.h:64    #include file <sys/param.h> not found.
> ERROR CCN3275 ./auto/pathdef.c:5     Unexpected text '/' encountered.
> ERROR CCN3045 ./auto/pathdef.c:5     Undeclared identifier usr.
> ERROR CCN3045 ./auto/pathdef.c:5     Undeclared identifier local.
> ERROR CCN3045 ./auto/pathdef.c:5     Undeclared identifier share.
> ERROR CCN3045 ./auto/pathdef.c:5     Undeclared identifier vim.
> ERROR CCN3046 ./auto/pathdef.c:5     Syntax error.
> ERROR CCN3221 ./auto/pathdef.c:5     Initializer must be a valid constant
> expression.
> ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier cc.
> ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier c.
> ERROR CCN3275 ./auto/pathdef.c:7     Unexpected text '-' encountered.
> ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier I.
> ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier DHAVE_CONFIG_H.
> ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier g.
> ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier D_ALL_SOURCE.
> ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier Wc.
> ERROR CCN3221 ./auto/pathdef.c:7     Initializer must be a valid constant
> expression.
> ERROR CCN3046 ./auto/pathdef.c:7     Syntax error.
> ERROR CCN3045 ./auto/pathdef.c:8     Undeclared identifier Wl.
> ERROR CCN3221 ./auto/pathdef.c:8     Initializer must be a valid constant
> expression.
> ERROR CCN3045 ./auto/pathdef.c:8     Undeclared identifier NO.
> ERROR CCN3045 ./auto/pathdef.c:8     Undeclared identifier o.
> ERROR CCN3221 ./auto/pathdef.c:8     Initializer must be a valid constant
> expression.
> ERROR CCN3277 ./auto/pathdef.c:8     Syntax error: possible missing ';' or
> ','?
> CCN0793(I) Compilation failed for file ./auto/pathdef.c.  Object file not
> created.
> FSUM3065 The COMPILE step ended with return code 12.
> FSUM3017 Could not compile auto/pathdef.c. Correct the errors and try
> again.
> FSUM8226 make: Error code 3
>
> That's because pathdef.c contains:
>
> /* pathdef.c */
> /* This file is automatically created by Makefile
>  * DO NOT EDIT!  Change Makefile only. */
> #include "vim.h"
> char_u *default_vim_dir = (char_u *)&/usr/local/share/vim&;
> char_u *default_vimruntime_dir = (char_u *)&&;
> char_u *all_cflags = (char_u *)&cc -c -I. -Iproto -DHAVE_CONFIG_H -g
> -D_ALL_SOURCE -Wc,float&(IEEE&)&;
> char_u *all_lflags = (char_u *)&cc  -Wl,EDIT=NO -o vim             -lm
> -lcurses &;
> char_u *compiled_user = (char_u *)"DGRIFF";
> char_u *compiled_sys = (char_u *)"WINMVS3C.HURSLEY.IBM.COM";
>
> Makefile has (eg):
>
> echo 'char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)";' | $(QUOTESED) >>
> $@
>
> where
>
> QUOTESED = sed -e 's/[\\"]/\\&/g' -e 's/\\"/"/' -e 's/\\";$$/";/'
>
> no idea yet why it is replacing " with &.
>
> Cheers,
>
> Dave
>
> 2010/9/8 Dominique PellĂ© <[email protected]>
>
> Dave Griffiths <[email protected]> wrote:
>>
>> > Hi, just tried building vim on z/OS as described here:
>> > http://vimdoc.sourceforge.net/htmldoc/os_390.html. It fails on
>> > compiling regexp:
>> >
>> > cc -c -I. -Iproto -DHAVE_CONFIG_H -g -D_ALL_SOURCE -o objects/regexp.o
>> > regexp.c
>> > ERROR CCN3052 ./regexp.c:748   Duplicate case label for value 193.
>> > Labels must be unique.
>> > ERROR CCN3052 ./regexp.c:754   Duplicate case label for value 195.
>> > Labels must be unique.
>> > [etc]
>> >
>> > According to configure it has recognized that this is a z/OS (OS/390)
>> > machine.
>> >
>> > It appears as though it is trying to compile in native ebcdic mode. So
>> > when it sees this:
>> >
>> > case 'A': case '\300': case '\301': case '\302':
>> >
>> > 'A' in ebcdic is decimal 193, the same as octal 301. Is it intended
>> > that vim is compiled using the ebcdic code page?
>> >
>> > Thanks,
>> >
>> > Dave
>>
>> This code (case 'A': case '\300': case '\301': case '\302':)
>> in regex.c is in the #else section of #ifdef EBCDIC.
>>
>> On z/OS, I'm pretty sure EBCDIC should be #define/d so
>> this line should not even be compiled.  Now the question
>> is: why EBCDIC is not defined for you?
>>
>> What does configure say after...
>> checking if character set is EBCDIC...
>> ?
>>
>> Also, which version of Vim are you using?  I'm asking because
>> your error message gives line regexp.c:748, but for me, using
>> the latest version of Vim from Mercurial, the case 'A' (...) is
>> at line regexp.c:789.
>>
>> You should download the the latest version of Vim (7.3.003)
>> since patches for z/OS have been included in version-7.3.
>> See ":help version-7.3" which says...
>>
>> Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
>>
>> Regards
>> -- Dominique
>>
>> --
>> You received this message from the "vim_dev" maillist.
>> Do not top-post! Type your reply below the text you are replying to.
>> For more information, visit http://www.vim.org/maillist.php
>>
>
>

-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

Raspunde prin e-mail lui