[Exherbo-dev] autotools.exlib

Bo Ørsted Andresen zlin at exherbo.org
Sat Sep 6 17:36:08 BST 2008


I while ago it was discussed on IRC that WANT_AUTO{CONF,MAKE}=latest isn't 
such a great idea. If a package works with the currently latest version that 
doesn't mean it'll work with the next. Therefore it was suggested to replace 
WANT_AUTO{CONF,MAKE} by two arrays which lists slots that the package in 
question is known to work with.

I have produced a patch which uses the arrays SUPPORTED_AUTO{CONF,MAKE} for 
this when they are set. It also accepts SUPPORTED_AUTO{CONF,MAKE}=none when a 
package doesn't depend upon one or the other. To ensure correct ordering it 
uses version_sort() from versionator.exlib to sort the slots so the highest 
gets listed first as any-of dependency in || (   ), and gets used by the 
various autotools functions.

To retain backwards compatibility it still uses WANT_* when SUPPORTED_* is 
unset. Whenever this happens it prints an ewarn stating that WANT_* is 
deprecated, when the first of any of the functions in autotools.exlib is 
called. Until this code gets removed, latest is frozen at what is now the 
latest slots.

What I didn't do is fix auto{conf,make}-wrapper. They still use WANT_* and 
therefore the exlib still exports the first listed, available slot as WANT_*. 
For consistency's sake I think someone should fix this at some point and 
perhaps at the same time change it so it doesn't need an version bump 
whenever a new version of auto{conf,make} gets released. Currently it hard 
codes all available versions and their slots.

Patches are attached. Will be committed to arbor during the next 24 hours if 
noone objects. After that people are obviously encouraged to start converting 
exheres.

-- 
Bo Andresen
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Reimplement-version_sort-using-ever-at_least.patch
Type: text/x-diff
Size: 1392 bytes
Desc: not available
URL: <http://lists.exherbo.org/pipermail/exherbo-dev/attachments/20080906/dfc44c0a/attachment.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Add-sorted_any_of_slot_dependencies.patch
Type: text/x-diff
Size: 1117 bytes
Desc: not available
URL: <http://lists.exherbo.org/pipermail/exherbo-dev/attachments/20080906/dfc44c0a/attachment-0001.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-Add-support-for-SUPPORTED_AUTO-CONF-MAKE-arrays.-Re.patch
Type: text/x-diff
Size: 5990 bytes
Desc: not available
URL: <http://lists.exherbo.org/pipermail/exherbo-dev/attachments/20080906/dfc44c0a/attachment-0002.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.exherbo.org/pipermail/exherbo-dev/attachments/20080906/dfc44c0a/attachment.pgp>


More information about the Exherbo-dev mailing list