After sbcl-0.7.13-sparc-linux-binary.tar.bz2 is unpacked to /var/tmp/portage/sbcl-0.8.5-r1/work, the following error message is seen: mv: cannot stat `sbcl-0.7.13-sparc-linux': No such file or directory The status of the mv isn't checked by the ebuild leading to a cascade of errors and the subsequent installation of a non-working "installation" of sbcl. Reproducible: Always Steps to Reproduce: 1. emerge /usr/portage/dev-lisp/sbcl-0.8.5-r1.ebuild 2. 3. Actual Results: # emerge /usr/portage/dev-lisp/sbcl/sbcl-0.8.5-r1.ebuild ..."installation" of a binary that was never actually built. >>> md5 src_uri ;-) sbcl_0.8.5-1.diff.gz >>> md5 src_uri ;-) sbcl-0.7.13-sparc-linux-binary.tar.bz2 >>> Unpacking source... >>> Unpacking sbcl-0.7.13-sparc-linux-binary.tar.bz2 to /var/tmp/portage/sbcl-0.8.5-r1/work mv: cannot stat `sbcl-0.7.13-sparc-linux': No such file or directory >>> Unpacking sbcl_0.8.5.orig.tar.gz to /var/tmp/portage/sbcl-0.8.5-r1/work >>> Unpacking sbcl_0.8.5-1.diff.gz to /var/tmp/portage/sbcl-0.8.5-r1/work >>> Source unpacked. //SBCL_XC_HOST="sbcl --sysinit /dev/null --userinit /dev/null --noprogrammer --core ${bindir}/output/sbcl.core" //GNUMAKE="make" //entering make-config.sh //ensuring the existence of output/ directory //initializing /var/tmp/portage/sbcl-0.8.5-r1/work/sbcl-0.8.5/local-target-features.lisp-expr //guessing default target CPU architecture from host architecture //setting up CPU-architecture-dependent information sbcl_arch="sparc" //setting up symlink src/compiler/target //setting up symlink src/assembly/target //setting up symlink src/compiler/assembly //setting up OS-dependent information //finishing /var/tmp/portage/sbcl-0.8.5-r1/work/sbcl-0.8.5/local-target-features.lisp-expr //entering make-host-1.sh //building cross-compiler, and doing first genesis fatal error encountered in SBCL pid 5762 : can't find core file >>> Install sbcl-0.8.5-r1 into /var/tmp/portage/sbcl-0.8.5-r1/image/ category dev-lisp cp: cannot stat `src/runtime/sbcl': No such file or directory cp: cannot stat `output/sbcl.core': No such file or directory //GNUMAKE="gmake" mv: cannot stat `/var/tmp/portage/sbcl-0.8.5-r1/image//usr/lib/sbcl/sbcl.core': No such file or directory ./ ./systems/ ./site-systems/ ./install-clc.lisp man: gzipping man page: sbcl.1 prepallstrip: strip: strip: >>> Completed installing into /var/tmp/portage/sbcl-0.8.5-r1/image/ >>> Merging dev-lisp/sbcl-0.8.5-r1 to / --- /etc/ >>> /etc/sbcl.rc --- /usr/ --- /usr/lib/ --- /usr/lib/common-lisp/ --- /usr/lib/common-lisp/bin/ >>> /usr/lib/common-lisp/bin/sbcl.sh >>> /usr/lib/common-lisp/sbcl/ >>> /usr/lib/common-lisp/sbcl/.keep >>> /usr/lib/sbcl/ >>> /usr/lib/sbcl/systems/ >>> /usr/lib/sbcl/site-systems/ >>> /usr/lib/sbcl/install-clc.lisp --- /usr/bin/ --- /usr/share/ --- /usr/share/man/ --- /usr/share/man/man1/ >>> /usr/share/man/man1/sbcl.1.gz >>> /usr/share/man/man1/sbcl-asdf-install.1.gz --- /usr/share/doc/ >>> /usr/share/doc/sbcl-0.8.5-r1/ >>> /usr/share/doc/sbcl-0.8.5-r1/BUGS.gz >>> /usr/share/doc/sbcl-0.8.5-r1/NEWS.gz >>> /usr/share/doc/sbcl-0.8.5-r1/COPYING.gz >>> /usr/share/doc/sbcl-0.8.5-r1/CREDITS.gz >>> /usr/share/doc/sbcl-0.8.5-r1/INSTALL.gz >>> /usr/share/doc/sbcl-0.8.5-r1/TLA.gz >>> /usr/share/doc/sbcl-0.8.5-r1/OPTIMIZATIONS.gz >>> /usr/share/doc/sbcl-0.8.5-r1/PRINCIPLES.gz >>> /usr/share/doc/sbcl-0.8.5-r1/README.gz >>> /usr/share/doc/sbcl-0.8.5-r1/STYLE.gz >>> /usr/share/doc/sbcl-0.8.5-r1/TODO.gz >>> /usr/share/doc/sbcl-0.8.5-r1/debian/ >>> /usr/share/doc/sbcl-0.8.5-r1/debian/copyright.gz >>> /usr/share/doc/sbcl-0.8.5-r1/debian/changelog.gz >>> /usr/share/doc/sbcl-0.8.5-r1/debian/README.Debian.gz >>> /usr/share/sbcl/ >>> /usr/share/sbcl/portage-timestamp-compensate >>> /usr/bin/sbcl-asdf-install -> /usr/lib/sbcl/asdf-install/asdf-install ./ ./systems/ ./site-systems/ ./install-clc.lisp /usr/lib/common-lisp/bin/sbcl.sh loading and dumping clc. mv: cannot stat `sbcl-new.core': No such file or directory FAILED cp: cannot stat `sbcl-dist.core': No such file or directory register-common-lisp-implementation: Compiler sbcl installed >>> Regenerating /etc/ld.so.cache... ... bash-2.05b# Expected Results: Aside from fixing the basic problem, the status of intermediate steps of the build should be checked to prevent the "installation" of a binary that was never actually built. % uname -a Linux flopsy.megahack.com 2.4.23-sparc-r1 #1 SMP Sun Dec 7 20:00:39 MST 2003 sparc64 sun4u TI UltraSparc IIi (Sabre) GNU/Linux Older sbcl ebuilds (with ~sparc KEYWORDS) appear to have the same problem.
Created attachment 22367 [details, diff] diff -u sbcl-0.8.5-r1.ebuild.orig sbcl-0.8.5-r1.ebuild This patch works around the problem and lets the SPARC build/install proceed to a successful completion.
Added patch. Thanks for the bug report :)