Ethereal-dev: Re: [Ethereal-dev] too long arguments passed from Makefile.nmake

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Gilbert Ramirez <gram@xxxxxxxxxxxxxxx>
Date: Sat, 13 Oct 2001 10:28:25 -0500
On Sat, 13 Oct 2001 07:42:01 Motonori Shindo wrote:
> Hi,
> 
> I don't know since when but becuase we now have so many dissectors
> hence packet-*.c, nmake.exe can't generate register.c, complaining
> about too long arguments being passed and can't invoke Python (or a
> shell) from nmake (Please refer to the following portion of
> Makefile.nmake).
> 
> register.c: $(DISSECTOR_SRC)
>         @echo Making register.c
>         @$(PYTHON) make-reg-dotc.py . $(DISSECTOR_SRC)
> #       How are ifdef's done in NMAKE? It would be nice
> #       to use python if PYTHON is defined, otherwise try to use shell.
> #       @sh make-reg-dotc . $(DISSECTOR_SRC)
> 
> 
> One way to solve this problem is to change make-reg-dotc.py (and also
> make-reg-dotc shell script) to have them extract the packet*.c file

We could modify make-reg-dotc.py to accept a "@" argument like the MSVC
"link" command:

    $(LINK) @<<
        /OUT:ethereal.exe $(guiflags) $(guilibsdll) $(LDFLAGS)
/SUBSYSTEM:windows $(ethereal_LIBS) $(ethereal_OBJECTS) $(EXTRA_OBJECTS)
image\ethereal.res
<<


The parameters between "@<<" and "<<" get put in a file, and the filename
gets
passed on the command-line.

--gilbert