I'm thinking setuptools should allow you to specify that one or more C extensions in a project are optional. At minimum, there would then be a command-line option you could give to easy_install to say, "don't build any optional extensions", so if you don't have a compiler or need a cross-platform egg, you can skip those extensions. There would also need to be a way to specify this when using the regular build commands. This feature would address projects that include optional C versions of certain code, that can fall back to pure Python implementations. It would not address projects that have C extensions requiring external libraries that might or might not exist. (Such as Twisted, for instance, but Twisted falls into the category of projects requiring "extreme measures" to be supported anyway.) Comments, anyone?