Path: utzoo!attcan!uunet!ncrlnk!ncrcae!hubcap!gatech!bloom-beacon!EXPO.LCS.MIT.EDU!jim From: jim@EXPO.LCS.MIT.EDU (Jim Fulton) Newsgroups: comp.windows.x Subject: Re: Stupid Imake question Message-ID: <8903021347.AA19337@expo.lcs.mit.edu> Date: 2 Mar 89 13:47:02 GMT References: <4331@psuvax1.cs.psu.edu> Sender: daemon@bloom-beacon.MIT.EDU Organization: X Consortium, MIT Laboratory for Computer Science Lines: 48 >> Confusion over the use of imake is common enough that this is worth >> spelling out: > > Note that this is because Imake is basically confusing, NOT because > the people trying to use it aren't smart enough. I'm sure Phil wasn't suggesting otherwise. Setting up configurations for new platforms will be much simpler in R4. Also, there will hopefully be better documentation on how to write Imakefiles. > Since 99 44/100 percent of the X11 installations either don't > have the distribution source tree around, or have done a "make clean" > in it, you not only have to edit the imakefile, but you have to > decipher it to figure out what to edit. Not fun, not nice, and not > worth it. Although it doesn't help now, the new configuration stuff doesn't require the source tree at all. > The Right Way to do this is to use Larry Wall's configure program, so > you never have to edit a makefile or anything else. Perhaps. In any case, you do need some sort of Makefile generator. Imake certainly isn't the best there is, but it is much better than nothing. It is simple to maintain, uses existing mechanisms as much as possible, is easy to port, allows configuration of both the build process and the software being built, is easy to tailor for machine-specifics, and (here's the tough part to swallow) is actually more palatable than eating garden slugs once you get used to it. More to the point, for all of these reasons (plus simple inertia) the core distribution uses imake. And so long as it does, we are going to encourage other people who are distributing X programs to use it as well because you have to have a common base. I'm sure that there are other solutions that meet all of the requirements mentioned above, would allow us to do hundreds things which we can't do already, wouldn't get snagged because of missing features on particular systems, wouldn't require massive amounts of work on our part, and would please everyone. But since I'm not Dionysus, I'm not going to go searching for one. Better the devil you know than the one you don't. Jim Fulton MIT X Consortium