[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gnuplot-info-beta
Subject:    Re: Some problems building gnuplot-3.7.0.4
From:       Hans-Bernhard Broeker <broeker () physik ! rwth-aachen ! de>
Date:       1999-03-30 23:54:06
[Download RAW message or body]

Hello, Lucas,

seems like someone has to stand up in favour of DJGPP :-), so let's
see what the situation is:

[...]
> > > >     - We should avoid having files with extension .com that can 
> > > >       be errorously taken instead of .exe files in DOS. Only such 
[...]

This resulted in a proposal to remove or rename docs/doc2hlp.com, avoiding
this potential clash. 

> That may be an expedient solution, but, not knowing anything about the
> details, makes me wonder about a build procedure that is so fragile that
> the existence of unrelated files causes it to fail.  Isn't the intent of 
> build procedures that they take only the correct files?

Exactly. But there's one place where that's rather hard to guarantee,
without obfuscating the Makefiles by a substantial amount of $(EXE) macros
all over the place. That place is when you want to use a Unix-borne
Makefile (here: the autoconf-generated one) with a still largely DOSish
compiler like DJGPP. 

The problem is:

	./foo

called in a Makefile means that exactly that file, './foo' will be
executed, never anything else. On DOS, however, this cannot generally be
expected, as calling '.\foo' there will actually execute either 'foo.com',
'foo.exe', or 'foo.bat', but never 'foo' without extension. So the call in
the makefile would have to be translated into

	./foo.exe

If the 'make' used is not as clever as the DJGPP version, it'll be
even worse:

	.\foo.exe
or	
	.\\foo.exe

This transformation has to be automized, to make the autoconf-based
makefile work on DOSish platforms (OS/2, MinGW32, Cygnus may also show
this problem).  This could be done, sure, but it'd be quite more of a
hassle, and way easier to break by future changes, than the simple name
change for VMS scripts proposed.

> I don't recall any previous mention that the existence of VMS command 
> files with a .COM extent caused problems.  {And how long have VMS and
> MS-DOS build procedures coexisted?}  

They did cause problems, before, but whenever they occured, I just deleted
the offending VMS .com file and that was that. IIRC, there even used to be
a 'make.com' in gnuplot's main source, which caused major pain in the
lower back, if you just tried the usual 'make -fmakefile.tc' or something
like it. 

> Perhaps the DJGPP build procedure 
> should be reexamined, rather than its errors eliminated by now imposing 
> MS-DOS conventions on other OS build procedures.

The build that breaks is not 'the DJGPP build' as such (i.e. 
makefile.dj2), but the Unix/autoconf build, if used on platform DJGPP.


Hans-Bernhard Broeker (broeker@physik.rwth-aachen.de)
Even if all the snow were burnt, ashes would remain.


[[[[ unsubscribe from info-gnuplot-beta via majordomo@dartmouth.edu ]]]]

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic