The mysql eclass declares that mysql depends on procps like so: userland_GNU? ( sys-process/procps ) The problem is that, on Darwin (Mac OS X), userland_GNU is set (because Portage pulls in the GNU utilities), but sys-process/procps is masked. This prevents mysql from being emerged. The procps suite was really designed for Linux anyway, so the dependency should read: kernel_linux? ( sys-process/procps ) instead. Or does procps understand BSD procfs? Reproducible: Always Steps to Reproduce: 1. Attempt to emerge dev-db/mysql. Any version will do; the dependency was declared in the mysql eclass. Actual Results: Portage will complain that mysql needs sys-process/procps, which is masked on Darwin (for good reason!). Expected Results: Portage should be able to emerge mysql, and mysql should not depend on procps on Darwin. Portage 2.2.01.15553-prefix (prefix/darwin/macos/10.6/x86, gcc-4.2.1, unavailable, 10.4.0 i386) ================================================================= System uname: Darwin-10.4.0-i386-32bit Timestamp of tree: Fri, 22 Oct 2010 16:40:58 +0000 distcc 3.1-toolwhip.1 i386-apple-darwin10.0 [disabled] app-shells/bash: 4.1_p7 dev-lang/python: 2.6.5-r2 dev-util/cmake: 2.8.1-r2 sys-devel/autoconf: 2.65-r1 sys-devel/automake: 1.9.6-r3, 1.11.1 sys-devel/gcc-config: 1.4.1-r00.2 sys-devel/libtool: 2.2.10 sys-devel/make: 3.81-r2 ACCEPT_KEYWORDS="~x86-macos" ACCEPT_LICENSE="* -@EULA" CBUILD="i686-apple-darwin10" CFLAGS="-O2 -pipe -march=core2" CHOST="i686-apple-darwin10" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-O2 -pipe -march=core2" DISTDIR="/Users/chip/Gentoo/usr/portage/distfiles" FEATURES="assume-digests collision-protect distlocks fixlafiles fixpackages news nostrip parallel-fetch preserve-libs protect-owned sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org" LDFLAGS="-Wl,-dead_strip_dylibs" MAKEOPTS="-j4" PKGDIR="/Users/chip/Gentoo/usr/portage/packages" PORTAGE_CONFIGROOT="/Users/chip/Gentoo/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/Users/chip/Gentoo/var/tmp" PORTDIR="/Users/chip/Gentoo/usr/portage" SYNC="rsync://rsync.prefix.freens.org/gentoo-portage-prefix" USE="aqua bash-completion berkdb bzip2 coreaudio cracklib crypt curl cxx dbus exceptions expat extensions gdbm gnutls gpg gzip iconv icu ipv6 jbig jpeg libssh2 lzma lzo mmx mmxext mng modules mysql ncurses nls objc objc++ pch perl png prefix python qt3support readline ruby sql sqlite3 sse sse2 ssl subversion tcl threads tiff tk truetype unicode vim-syntax x86-macos xml zlib" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="Darwin" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse" KERNEL="Darwin" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" PHP_TARGETS="php5-2" RUBY_TARGETS="ruby18" USERLAND="GNU" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Yea, I saw this diff and noted that it might not work as intended. @mysql-bugs: Why did this change recently?
(In reply to comment #0) > The procps suite was really designed for Linux anyway, so the dependency should > read: > > kernel_linux? ( sys-process/procps ) > > instead. Or does procps understand BSD procfs? Gentoo/FreeBSD uses userland_BSD, so it incidentially works for them.
this is a very nasty issue @mysql-bugs, please allow us to revert, or explain us the intended logic
(In reply to comment #1) > @mysql-bugs: Why did this change recently? Err, what recently? That line was introduced in March 2006, it's NOT recent in the slightest. http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/mysql.eclass?r1=1.25&r2=1.26
@mysql-bugs: apologies, you have nothing to do with this. It is a Prefix-local problem. Sorry.
the latest sync done to the eclass was not done with eupdate, and accidentially removed important prefix changes, such as this userland_GNU/kernel_linux thing I redid the sync with eupdate now.
Yep, I can report it's fixed on my end.
grobian: what pending changes does prefix have for the MySQL eclass for me to merge back and avoid this problem next time?
robbat2: it is a huge diff, that probably needs some thorough review. I will open a new bug for it.