This post originated from an RSS feed registered with Agile Buzz
by James Robertson.
Original Post: Make'd me Sad
Feed Title: Travis Griggs - Blog
Feed URL: http://www.cincomsmalltalk.com/rssBlog/travis-rss.xml
Feed Description: This TAG Line is Extra
How saddened I was, as I skimmed through this mornings deluge of Squeak mail, to note one which made me aware that the *nix builds for Squeak now use automake/autoconf. I admit readily to being a Squeak list lurker, so this has been in place for who knows how long.
I've played with automake/autoconf a bit from time to time. Many open source projects use it. You download a tarball and expand it. Inside a crawling directory structure, there might be a directory called src. That's where your source code is. And there'll be a README with the usual license ramblings. And maybe a sparsly or dated filled doc directory. And there's all these other files scattered about that have to do with how you compile/install the thing. After a while, I learned a couple of useful commands with these things, and mostly not to ask more. When I had problems, the responses are usually "try this. that worked for me." or "it works for me, but I'm not trying to do what you are" or "i don't know."
One acute example of this was GNUSmalltalk. It's a cute little smalltalk. And in some ways very novel. Back when we were playing with the Wisp/WeeSpeak stuff, I toyed with using GNUSmalltalk as the basis. The problem was, I couldn't figure out how to distill the build process down so I could really warp it. I asked the then maintainer how I could strip away all of the auto-this-n-that and just play with the source. He admitted to me that he didn't really know how the stuff worked, he had just copied it from somewhereelse and modified as needed. I've found that this is quite common. I suspect that the ratio of people using automake/autoconf to those who actually understand what's going on to be quite high. Not to be deterred, I decided that I would take a look at these black boxes and find enlightenment. The table of contents for automake has no less than 28 sections to it! And when you're done assimilating at least some portion of that, you can move over to the 18 chapter autoconf manual. This is all for cross platform and to simplify the 14 chapters fo the make manual. Somewhere in the shuffle of rules, idioms, and practices, I gave up. Maybe some day I'll have another go at groking this thing again. Like when I have my appendix out and need something to put me to sleep in the hospital after the drugs have warn off.
As an aside, I have actually used one "make system" that seemed simplistic and straightforward to use with a minimal amount of learning curve. It's used by the GNUstep guys. It's simple, example based manual can be found here. My one big complaint at the time, was that you needed to source an environment modifying script in your bash.profile. But I believe they have actually fixed that now.