Since openldap doesn't like db 4.6, and refuses to build if it's installed, this patch will instead attempt to find a different version (4.5 down to 4.2) and use it instead even if db 4.6 is installed. This is nice because then we don't have to block against db 4.6 anymore. Please consider applying this patch.
Created attachment 150745 [details, diff] Use db 4.5-4.2 instead of 4.6 This patch attempts to find a different version of db and 4.6 and use it instead, even if db 4.6 is installed.
Note: I will plan to apply this patch soon unless I get any objections...
Outside of masking the slotted version sys-libs/db-4.6.21 or removing openldap there currently seems to be no other way around this block. Calculating dependencies... done! [ebuild NS ] sys-libs/db-4.6.21 [4.5.20_p2] USE="-bootstrap -doc -java -nocxx -tcl -test" 11,604 kB [blocks B ] =sys-libs/db-4.6* (is blocking net-nds/openldap-2.3.41) Total: 1 package (1 in new slot), Size of downloads: 11,604 kB Conflict: 1 block (1 unsatisfied)
ok I can confirm ive just installed db-4.6, then rebuilt openldap-2.3.41 with the attached patch (adjusted to remove the db-4.6 blockage of course, and the patch needs rediffing for line# mods, ill attach a succeeding patch in a sec to replace it). i then checked my system to see what depends on openldap and ive rebuilt everything against it with no issues. my guess is there shouldnt be any issues anyway considering all this does is tells it to use a different version of db, anything but 4.6 anyways...
Created attachment 153389 [details, diff] openldap-2.3.41-no-db-46.patch new patch with line# fixes and removes db-4.6 blockage, should be safe to apply to the tree and mark bug resolved... (only tested on amd64 here, i cant see any huge reason for an arch issue though)
I tried the patch and it worked fine - it built against db-4.5 instead of db-4.6. However, I then ran 'emerge --depclean -a' and it wanted to remove db-4.5 (actually sys-libs/db-4.5.20_p2) because it thinks nothing depends on it.
Created attachment 153675 [details, diff] Depend on a supported version of sys-libs/db This is similar to Nathan's patch, but makes the openldap depend on one of the supported slots of sys-libs/db.
(In reply to comment #7) > Created an attachment (id=153675) [edit] > Depend on a supported version of sys-libs/db > > This is similar to Nathan's patch, but makes the openldap depend on one of the > supported slots of sys-libs/db. > db_includedir takes multiple arguments. Doing $(db_includedir 4.5 4.4 4.3 4.2) is enough.
Btw. slot dependencies requires EAPI=1.
And while I'm at it, I've built openldap-2.3.41 6 times now with -j and the icecc compile cluster without any problems. -j1 is probably a leftover.
Created attachment 153839 [details, diff] Remove sys-libs/db-4.6 block, find best version 4.5-4.2, allow parallel make
committed this as 2.3.41-r1
seems to work, marking as fixed.