[Distutils] New snapshot needs testing

Greg Ward gward@python.net
Sat Sep 16 21:13:01 2000


Hi all --

I've just put out a new code snapshot that needs some widespread
testing.  (More so than usual, I mean.)  This is mainly because I
tweaked the sysconfig module to parse Python's makefile lazily rather
than eagerly, and to store what it finds in a dictionary rather than
global variables.  This facility of sysconfig was only used in a few
places throughout the Distutils, and I'm pretty sure I got all of them
-- as usual, It Works For Me (TM).  But I just have my one Linux box at
home; at least now I test with Python 1.6 as well as 1.5.2.  (And I have 
that enormous RPM of 2.0b1 ready to install one of these days...)  So
please, download tonight's snapshot and give it a good workout -- build
stuff, lots of stuff, on lots of platforms.  Please!

Oh, a neat feature added today: I devised a brilliant and entirely
original new method for describing extensions to build.  I call it "the
Setup file".  This amazingly innovative mechanism lets you describe the
extension name, source files, include paths, macros to define/undefine,
and a few other goodies in a simple, compact, familiar (to Unix geeks at
least) notation.

For example, you could describe the "_tkinter" extension as follows:

_tkinter _tkinter.c tkappinit.c -DWITH_APPINIT -UFOO \
	-I/usr/include \
	-I/usr/X11R6/include \
	-DWITH_TIX -ltix4.1.8.0 \
	-L/usr/lib \
	-ltk8.0 -ltcl8.0 \
	-L/usr/X11R6/lib \
	-lX11

Then, a setup script to build this extension is quite simple:

  from distutils.core import setup
  from distutils.extension import read_setup_file

  exts = read_setup_file("Setup.tk")
  setup(name = "Tkinter",
        ext_modules = exts)

Hmmm... on second thought, this syntax seems vaguely familiar... where
*have* I seen it before?  ;-)

        Greg

P.S. yes, it does support comments just like in Modules/Setup!

-- 
Greg Ward                                      gward@python.net
http://starship.python.net/~gward/