[TUHS] "Imake: an obsolete build tool" -- anybody got this?

segaloco via TUHS tuhs at tuhs.org
Wed Mar 19 05:21:36 AEST 2025


On Tuesday, March 18th, 2025 at 12:03 PM, Greg A. Woods <woods at robohack.ca> wrote:

> At Tue, 18 Mar 2025 16:39:45 +0000, "Ronald Natalie" ron at ronnatalie.com wrote:
> 
> Subject: [TUHS] Re: "Imake: an obsolete build tool" -- anybody got this?
> 
> > We eventually switched
> > to CMAKE.
> 
> 
> Yikes. That's not what I would call an improvement!
> 
> I think CMake is about as anti-Unix (in philosophy) as you can get.
> 
> At least Imake had a clear design and simple basic concept, and in its
> basic form it could be highly performant. It was simple tool for using
> other tools in an innovative way. As used by X11 though it was part of
> what might best be described as a dog's breakfast, but that's only
> really because the X11 macros kind of grew by committee and had an
> extraordinary variety of target systems and source code to contend with.
> 
> CMake has ended up with what I would consider an even uglier and more
> unpalatable dog's breakfast. It also abuses other tools, requires hours
> to compile on otherwise usable platforms, and wastes CPU and memory like
> nothing else.
> 
> --
> Greg A. Woods gwoods at acm.org
> 
> 
> Kelowna, BC +1 250 762-7675 RoboHack woods at robohack.ca
> 
> Planix, Inc. woods at planix.com Avoncote Farms woods at avoncote.ca

CMake does seem to be losing some ground to the meson/ninja combination
these days.  I haven't used any of these beyond autotools, but the most
complex stuff I've built has only depended on Xlib and OpenGL.  I just keep an
LDFLAGS_<platform> up at the top of my makefiles these days and if I need to
target such platform, add $(LDFLAGS_<platform>) to my main LDFLAGS definition.
Same with CFLAGS and other such variables.  Maybe not tenable for a huge
sprawling project, but in my case, I'd much rather edit a line or two of a
Makefile at build time than maintain the whole added dependency of some
specialized build system.  Admittedly there are simple little projects I see
sometimes with something like autotools draped over the top and it feels like
a solution in want of a problem.  I put more effort into ensuring things like
pkg-config are happy than I would just adding -L/opt/lib to an LDFLAGS
variable...

- Matt G.


More information about the TUHS mailing list