That has me thinking that after I get my TODO list done (mostly moving the tracker, closing some bugs, and then getting Python to use my import implementation), I will need a new Python project. Fixing the bloody build system is probably a good one. =)
But what will I need? I need to replace both autoconf and GNU Make. Usually the trick is replacing autoconf as we have a bunch of IFDEFs in various places that activate the compilation of a method or function on an object based on whether the underlying C implementation exposes something. We also have a ton of macros that make sure that certain values (such as Py_ssize_t) are at a guaranteed width.
But portability is really critical. Python runs on basically any platform that has a shell, GNU Make, and a C89 compiler. That portability cannot be lost.
So who seem to be the bigger players out there? Now granted I have not researched this at all and this is just based on my various readings around the web and keeping an eye on this topic since I hate autoconf and GNU Make so much. But there seems to be about two projects that have really tried to replace these two tools (or at least GNU Make):
- CMake (major project - KDE 4). KDE is a big project. The fact that they moved over to it and seem to have been happy with the switch is a big plus. Minus is that I don't know how active development is as the news page has as its last announcement that KDE 4 was using the tool. It generates Makefiles and such so it is just as portable which is great.
- Bakefile (major project - wxWidgets). Considering how many different operating systems wxWidgets builds on this speaks well for Bakefile. They had a release in February which is encouraging, although it was version 0.2.2. I don't know how mature Bakefile is. But it is written in Python which is a (minor) perk. It also generates Makefiles which makes it very portable.
As I said, this might be a project that I tackle after I finish my Python TODO list (which is already long), so it will be months before I even consider seriously looking at this.