Here's something I was playing with a few days go. The problem is that when you have a package delivering a python module, you have to have a separate, full manifest for each version of python, even though they're essentially identical. This is a pretty ugly maintenance burden, since on update, you have to tweak each one in exactly the same way, and every time a new python version is introduced or removed, you gotta go add or remove a ton of manifests. They should be autogenerated.
So here's an attempt at that: https://cr.opensolaris.org/action/browse/userland/dduvall/pyver/ There are a couple of things to note: - I've included the ability to do the same thing for Perl. It'll extend indefinitely, though the way I managed to make make do this requires that those definitions be somewhat intertwined. - I'm not even remotely sold on the variable names; if someone has better ideas, I'm all ears. - The changes to shared-macros.mk are primarily for performance, though IIRC, the WS_TOP change is necessary in order that its definition isn't too slippery (I can't remember now the exact failure mode, though I can retry that if anyone wants to know). - The whole canonical-manifests rule was a royal pain in the butt. You'd think it wouldn't have any effect on what I was trying to do, but it definitely made things not work until I tweaked everything that used it. I'm tempted to remove it, since I don't really see its purpose, but left it in for now. - Make is annoyingly fragile. And yet it deals with chained rulesets better than anything else. <sigh> - Assuming folks are okay with this, I'd rewrite all the modules to use this, not just mercurial. Thanks, Danek _______________________________________________ userland-discuss mailing list userland-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/userland-discuss