[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: "nmake info" Windows patch
From: |
Peter 'Luna' Runestig |
Subject: |
Re: "nmake info" Windows patch |
Date: |
Sat, 22 Feb 2003 10:53:19 +0100 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.3b) Gecko/20030207 |
On 2003-02-22 10:21, Eli Zaretskii wrote:
>> [...]
>> +SHELL = cmd
>> [...]
>> +MAKEINFO = makeinfo
>> +TEXI2DVI = texi2dvi
>> +DVIPS = dvips
>> +ENVADD = TEXINPUTS="$(srcdir):$(TEXINPUTS)" MAKEINFO="$(MAKEINFO)
>> -I$(srcdir)"
>> [...]
>> +emacs-lisp-intro.dvi: $(INFO_SOURCES)
>> + $(ENVADD) $(TEXI2DVI) $(srcdir)/emacs-lisp-intro.texi
>
> Does this really work in native Windows environment (i.e. without
> Cygwin being installed)? I don't think CMD.EXE can run Unix shell
> scripts such as texi2dvi, and neither I think that a native Windows
> port of makeinfo will DTRT with the value of TEXINPUTS where
> directories are separated by colons (instead of semi-colons).
The `info' target works in native Windows (well, on XP at least). I
cheated a bit when making the `makefile.w32-in' files, by copying the
`Makefile.in' files, and tweaking them until the `info' target worked.
So, yes, there are stuff left there that cmd.exe can't handle, but it's
never been called upon in my testings.
> If this only works with Cygwin tools, we should at least tell that
> somewhere.
That's not the intention, but I've used `cp', `rm' and `makeinfo' (and
dependencies to that) from Cygwin when testing this.
> What would be _really_ nice if at least some targets would
> work with native Windows tools, not only with Cygwin. For example:
>
>> +mostlyclean:
>> + rm -f *.log *.cp *.fn *.ky *.pg *.vr *.tp
>> +
>> +clean: mostlyclean
>> + rm -f *.dvi
> There's no reason not to use CMD's built-in DEL command here (perhaps
> with a FOR loop).
Sure, but you need `rm' to build emacs anyway.
>> +++ emacs-20030219/nt/makefile.w32-in 2003-02-21 21:23:01.000000000
>> +0100
>> @@ -214,6 +214,15 @@
>> $(MAKE) $(MFLAGS) -C ../lisp install
>> $(MAKE) $(MFLAGS) -C ../leim install
>>
>> +force-info:
>> +# Note that man/makefile knows how to
>> +# put the info files in $(srcdir),
>> +# so we can do ok running make in the build dir.
>> +info: force-info
>> + (cd ..\man && $(MAKE) $(MFLAGS) info)
>> + (cd ..\lispref && $(MAKE) $(MFLAGS) info)
>> + (cd ..\lispintro && $(MAKE) $(MFLAGS) info)
>
> This also won't work except with Cygwin Bash (or some other ported
> Unix shell) as your shell.
This works fine with cmd.exe.
Cheers,
- Peter
--
Peter 'Luna' Runestig (fd. Altberg), Sweden <address@hidden>
PGP Key ID: 0xD07BBE13
Fingerprint: 7B5C 1F48 2997 C061 DE4B 42EA CB99 A35C D07B BE13
AOL Instant Messenger Screen name: PRunestig