On 06/06/2012 01:28 AM, Pacho Ramos wrote: > El mar, 05-06-2012 a las 16:07 -0700, Zac Medico escribió: >> The "SLOT operator" dependencies that Ciaran has been advocating are >> very close to a good solution. However, if we want it to work with >> unslotted packages, then we need to introduce a separate ABI_SLOT >> variable as discussed here: >> >> https://bugs.gentoo.org/show_bug.cgi?id=192319#c18 >> >> It's really no more difficult to do than "SLOT operator" dependencies, >> it's more flexible, and we can do it in EAPI 5. > > In that case, I obviously wouldn't have any problem with that approach > (it sound even better :)). Is there any place where I could get a bit > more documentation about how this "SLOT operator" way would work? For > example, how would work for rebuilding x11 drivers after updating xorg > or rebuilding gobject-introspection after major glib update...
Whenever you have an ABI change, the developer doing the version bump needs to increment the SLOT (or ABI_SLOT if we use a separate variable) in the package. Packages that depend on the package with the ABI change (reverse dependencies) append a := operator to their dependency atoms, indicating that they are locked to the ABI of the SLOT that they are built against. The package manager translates the := operators into a dependencies on specific SLOTs at build time, so that when you update your system next time, it can use this information to trigger rebuilds automatically when necessary. -- Thanks, Zac