Recently, releng autobuilds started failing with this error: !!! Problem resolving dependencies for net-fs/cifs-utils !!! The ebuild selected to satisfy "net-fs/cifs-utils" has unmet requirements. - net-fs/cifs-utils-6.1-r1::gentoo USE="acl caps caps-ng -ads -creds" The following REQUIRED_USE flag constraints are unsatisfied: acl? ( ads ) It was discussed in #gentoo (bonsaikitten, polyc, and myself) that the best solution was to enable ads (since acl is important functionality) and enable samba[winbind] as requires by cifs-utils[ads]. Unfortunately, this causes circular deps as follows: * Error: circular dependencies: (net-fs/cifs-utils-6.1-r1::gentoo, ebuild scheduled for merge) depends on (net-fs/samba-3.6.19::gentoo, ebuild scheduled for merge) (buildtime) (net-fs/cifs-utils-6.1-r1::gentoo, ebuild scheduled for merge) (buildtime) It might be possible to break this cycle by applying any of the following changes: - net-fs/samba-3.6.19 (Change USE: -client) - net-fs/cifs-utils-6.1-r1 (Change USE: -acl) I am open to suggestions, but this stops iso builds for now and the only solution that I see is disabling acl on cifs-utils. Anyone have a better idea?
The build-time dependency on cifs-utils in the samba ebuild seems strange. cifs-utils installs no libraries, but does install one header (/usr/include/cifsidmap.h). Does samba use that header during its build process?
Grepping through the samba sources doesn't turn up any reference to cifsidmap, and I don't see it looking for mount.cifs anywhere. I think this could be safely changed into a runtime-only dep.
I am going to commit the fix suggested by floppym and the needed profile changes if someone from the appropriate team doesn't do it for me or provide a reason why it is wrong by November 9th.
--- ./ChangeLog +++ ./ChangeLog @@ -4,0 +5,5 @@ + 15 Nov 2013; Rick Farina <zerochaos@gentoo.org> samba-3.6.19.ebuild, + samba-3.6.20.ebuild, samba-4.0.10-r1.ebuild, samba-4.0.11.ebuild, + samba-4.1.0-r1.ebuild, samba-4.1.1.ebuild: + moving cifs-utils to an RDEP per bug #489472 + * 7 files being committed... 7 have headers that will change. * Files with headers will cause the manifests to be changed and committed separately. Using commit message: ------------------------------------------------------------------------------ moving cifs-utils to an RDEP per bug #489472 (Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key DD11F94A) ------------------------------------------------------------------------------ /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.6.19.ebuild,v <-- samba-3.6.19.ebuild new revision: 1.13; previous revision: 1.12 /var/cvsroot/gentoo-x86/net-fs/samba/samba-4.1.1.ebuild,v <-- samba-4.1.1.ebuild new revision: 1.2; previous revision: 1.1 /var/cvsroot/gentoo-x86/net-fs/samba/samba-4.1.0-r1.ebuild,v <-- samba-4.1.0-r1.ebuild new revision: 1.3; previous revision: 1.2 /var/cvsroot/gentoo-x86/net-fs/samba/samba-4.0.11.ebuild,v <-- samba-4.0.11.ebuild new revision: 1.2; previous revision: 1.1 /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.6.20.ebuild,v <-- samba-3.6.20.ebuild new revision: 1.2; previous revision: 1.1 /var/cvsroot/gentoo-x86/net-fs/samba/samba-4.0.10-r1.ebuild,v <-- samba-4.0.10-r1.ebuild new revision: 1.3; previous revision: 1.2 /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v <-- ChangeLog new revision: 1.623; previous revision: 1.622 >>> Creating Manifest for /home/zero/development/gentoo-x86/net-fs/samba You need a passphrase to unlock the secret key for user: "Rick Farina (Zero_Chaos) <zerochaos@gentoo.org>" 4096-bit RSA key, ID DD11F94A, created 2012-04-20 /var/cvsroot/gentoo-x86/net-fs/samba/Manifest,v <-- Manifest new revision: 1.782; previous revision: 1.781 Commit complete. RepoMan sez: "If everyone were like you, I'd be out of business!"
since USE=acl is set in gentoo-x86/profiles/releases/make.defaults it appears to me that this affects all gentoo profiles and arches. As such, I feel it is cleaner to add the defaults in the ebuild than to add package.use to such an important area of the profile. I really don't want to encourage adding things like that to the profile when we have use flag defaults since eapi 2. --- ./ChangeLog +++ ./ChangeLog @@ -4,0 +5,5 @@ + 15 Nov 2013; Rick Farina <zerochaos@gentoo.org> cifs-utils-6.1-r1.ebuild, + cifs-utils-6.2.ebuild: + acl use flag is default from profiles/releases/make.defaults and requires ads + use flag + * 3 files being committed... 3 have headers that will change. * Files with headers will cause the manifests to be changed and committed separately. Using commit message: ------------------------------------------------------------------------------ acl use flag is default from profiles/releases/make.defaults and requires ads use flag (Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key DD11F94A) ------------------------------------------------------------------------------ /var/cvsroot/gentoo-x86/net-fs/cifs-utils/cifs-utils-6.2.ebuild,v <-- cifs-utils-6.2.ebuild new revision: 1.3; previous revision: 1.2 /var/cvsroot/gentoo-x86/net-fs/cifs-utils/cifs-utils-6.1-r1.ebuild,v <-- cifs-utils-6.1-r1.ebuild new revision: 1.6; previous revision: 1.5 /var/cvsroot/gentoo-x86/net-fs/cifs-utils/ChangeLog,v <-- ChangeLog new revision: 1.71; previous revision: 1.70 >>> Creating Manifest for /home/zero/development/gentoo-x86/net-fs/cifs-utils You need a passphrase to unlock the secret key for user: "Rick Farina (Zero_Chaos) <zerochaos@gentoo.org>" 4096-bit RSA key, ID DD11F94A, created 2012-04-20 /var/cvsroot/gentoo-x86/net-fs/cifs-utils/Manifest,v <-- Manifest new revision: 1.73; previous revision: 1.72 Commit complete. RepoMan sez: "If everyone were like you, I'd be out of business!" --- ./ChangeLog +++ ./ChangeLog @@ -4,0 +5,6 @@ + 15 Nov 2013; Rick Farina <zerochaos@gentoo.org> samba-3.6.19.ebuild, + samba-3.6.20.ebuild: + acl use flag is default from profiles/releases/make.defaults, on cifs-utils + this requires ads use flag which needs samba-3.6*[winbind} or >=samba-4; don't + ask me why it doesn't need winbind on samba 4, closing bug 490122 + * 3 files being committed... 3 have headers that will change. * Files with headers will cause the manifests to be changed and committed separately. Using commit message: ------------------------------------------------------------------------------ acl use flag is default from profiles/releases/make.defaults, on cifs-utils this requires ads use flag which needs samba-3.6*[winbind} or >=samba-4; don't ask me why it doesn't need winbind on samba 4, closing bug 490122 (Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key DD11F94A) ------------------------------------------------------------------------------ /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.6.19.ebuild,v <-- samba-3.6.19.ebuild new revision: 1.14; previous revision: 1.13 /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.6.20.ebuild,v <-- samba-3.6.20.ebuild new revision: 1.3; previous revision: 1.2 /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v <-- ChangeLog new revision: 1.624; previous revision: 1.623 >>> Creating Manifest for /home/zero/development/gentoo-x86/net-fs/samba You need a passphrase to unlock the secret key for user: "Rick Farina (Zero_Chaos) <zerochaos@gentoo.org>" 4096-bit RSA key, ID DD11F94A, created 2012-04-20 /var/cvsroot/gentoo-x86/net-fs/samba/Manifest,v <-- Manifest new revision: 1.783; previous revision: 1.782 Commit complete. RepoMan sez: "If everyone were like you, I'd be out of business!"