I get a bunch of errors that seam to be a result of sandbox when merging portage-2.0.51-r14. Reproducible: Always Steps to Reproduce: 1. FEATURES=-collision-protect emerge -a portage 2. 3. Actual Results: >>> Unpacking source... >>> Unpacking portage-2.0.51-r14.tar.bz2 to /var/tmp/portage/portage-2.0.51-r14/work >>> Source unpacked. ./create-localdecls Checking truncate argument type... off_t Checking libc version... ./create-localdecls: line 1: ldd: command not found ./create-localdecls: line 1: /bin/uname: No such file or directory ./create-localdecls: line 56: [: mips: unary operator expected gcc -O1 -pipe -D_GNU_SOURCE -DPIC -fPIC -D_REENTRANT -Wall -c libsandbox.c libsandbox.c: In function `open': libsandbox.c:544: warning: `mode_t' is promoted to `int' when passed through `...' libsandbox.c:544: warning: (so you should pass `int' not `mode_t' to `va_arg') libsandbox.c: In function `init_env_entries': libsandbox.c:958: warning: implicit declaration of function `strndupa' libsandbox.c:958: warning: assignment makes pointer from integer without a cast libsandbox.c:967: warning: implicit declaration of function `strndup' libsandbox.c:967: warning: assignment makes pointer from integer without a cast In file included from libsandbox.c:1380: getcwd.c:224:1: warning: "__lstat" redefined getcwd.c:207:1: warning: this is the location of the previous definition In file included from libsandbox.c:1380: getcwd.c: In function `__egetcwd': getcwd.c:346: error: `__ptr_t' undeclared (first use in this function) getcwd.c:346: error: (Each undeclared identifier is reported only once getcwd.c:346: error: for each function it appears in.) getcwd.c:346: error: parse error before "dotlist" getcwd.c:388: warning: implicit declaration of function `_D_ALLOC_NAMLEN' getcwd.c:419: warning: implicit declaration of function `_D_EXACT_NAMLEN' getcwd.c:443: error: void value not ignored as it ought to be getcwd.c:461: error: parse error before "dotlist" getcwd.c:472: error: parse error before "dotlist" getcwd.c: In function `egetcwd': getcwd.c:483: error: argument `size' doesn't match prototype libsandbox.c:137: error: prototype declaration In file included from libsandbox.c:1381: canonicalize.c: In function `erealpath': canonicalize.c:153: warning: implicit declaration of function `__mempcpy' canonicalize.c:153: warning: assignment makes pointer from integer without a cast canonicalize.c:163: error: void value not ignored as it ought to be make: *** [libsandbox.o] Error 1 !!! ERROR: sys-apps/portage-2.0.51-r14 failed. !!! Function src_compile, Line 83, Exitcode 2 Expected Results: Portage to upgrade correctly. Portage 2.0.51-r3 (default-macos-10.3, gcc-3.3, libsystem-7.1-r0, 7.7.0 Power Macintosh) ================================================================= System uname: 7.7.0 Power Macintosh powerpc macos-20041118 distcc 2.0.1-zeroconf powerpc-apple-darwin7.0 (protocol 1) (default port 3632) [disabled] Autoconf: sys-devel/autoconf-2.57 Automake: sys-devel/automake-1.6.3 Binutils: Headers: Libtools: ACCEPT_KEYWORDS="ppc-macos" AUTOCLEAN="yes" CFLAGS="-O2 -pipe" CHOST="powerpc-apple-darwin" COMPILER="" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache collision-protect distlocks" GENTOO_MIRRORS="http://gentoo.osuosl.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="macos perl"
Ok... here is the problem. The new profile (/usr/portage/profile/default-macos-10.3) doesn't have ppc-macos in it's make.defaults USE flag variable. This seams to be a bad thing, because lots of stuff failed to compile without it. With ppc-macos in the USE flag portage correctly decides not to compile sandbox and emerges just fine. I'm really a newbie when it comes to policies of when flags should be inforced by default and whatnot.. but it seams to me like it might be a good idea to change the default profile, or at least update the How-To so people know they have to add ppc-macos to there own USE flag in make.conf.
That is an older profile, you should be using /usr/portage/profiles/default-darwin/macos/10.3 Please re-open if you still have this problem
Is there any good reason we keep those profiles? At least we should add "deprecated" files to them IMHO. (If nobody objects I'll do so in a few days.)
The deprecated file is a good idea... I was quite confused at first as to which profile I should be using. Once I actually scanned over all the files and looked at a few ebuilds It because more obvious... but I quite obviously picked the wrong one first.. BTW.... I'm trying to clean it up a bit... but I got pango, gtk+, and all there dependencies up and running on my powerbook today.