From f35780e31b9147514bae1ce424a39cb20f6c6b3a Mon Sep 17 00:00:00 2001 From: Benda Xu Date: Fri, 10 Jun 2016 12:40:43 +0900 Subject: sys-devel/crossdev: remove outdated crossdev. --- sys-devel/crossdev/ChangeLog | 382 --------------- sys-devel/crossdev/Manifest | 8 - sys-devel/crossdev/crossdev-0.9.18-r10.ebuild | 21 - sys-devel/crossdev/crossdev-0.9.19.ebuild | 21 - sys-devel/crossdev/crossdev-20091209.ebuild | 31 -- sys-devel/crossdev/crossdev-20100108.ebuild | 32 -- sys-devel/crossdev/files/crossdev | 662 -------------------------- sys-devel/crossdev/files/crossdev-stable | 646 ------------------------- 8 files changed, 1803 deletions(-) delete mode 100644 sys-devel/crossdev/ChangeLog delete mode 100644 sys-devel/crossdev/crossdev-0.9.18-r10.ebuild delete mode 100644 sys-devel/crossdev/crossdev-0.9.19.ebuild delete mode 100644 sys-devel/crossdev/crossdev-20091209.ebuild delete mode 100644 sys-devel/crossdev/crossdev-20100108.ebuild delete mode 100644 sys-devel/crossdev/files/crossdev delete mode 100644 sys-devel/crossdev/files/crossdev-stable diff --git a/sys-devel/crossdev/ChangeLog b/sys-devel/crossdev/ChangeLog deleted file mode 100644 index ed208e3..0000000 --- a/sys-devel/crossdev/ChangeLog +++ /dev/null @@ -1,382 +0,0 @@ -# ChangeLog for sys-devel/crossdev -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/crossdev/ChangeLog,v 1.65 2010/01/08 10:52:54 vapier Exp $ - -*crossdev-20100108 (08 Jan 2010) - - 08 Jan 2010; Mike Frysinger +crossdev-20100108.ebuild: - Improve .pc sysroot handling #299990. - -*crossdev-20091209 (10 Dec 2009) - - 10 Dec 2009; Mike Frysinger +crossdev-20091209.ebuild: - Version bump and merge crossdev-wrappers. - -*crossdev-99999999 (23 Nov 2009) - - 23 Nov 2009; Mike Frysinger +crossdev-99999999.ebuild: - Move to unified crossdev packages. - - 15 Feb 2009; Mike Frysinger files/crossdev: - Do not build with headers by default for avr #230343. - -*crossdev-0.9.19 (28 Nov 2008) - - 28 Nov 2008; Mike Frysinger files/crossdev, - +crossdev-0.9.19.ebuild: - Initial cygwin support. - -*crossdev-0.9.18-r10 (27 Oct 2008) - - 27 Oct 2008; Mike Frysinger files/crossdev, - +crossdev-0.9.18-r10.ebuild: - Push out misc minor fixes and make sure we emerge gcc stage2 with --newuse - #235551. - -*crossdev-0.9.18-r9 (23 Jun 2008) - - 23 Jun 2008; Mike Frysinger files/crossdev, - +crossdev-0.9.18-r9.ebuild: - Build with --with-headers by default as gcc-4.3 relies on them a lot more - #227065. - -*crossdev-0.9.18-r8 (16 May 2008) - - 16 May 2008; Mike Frysinger files/crossdev, - +crossdev-0.9.18-r8.ebuild: - Disable openmp and libffi when building gcc stage1 #222227 by Donnie Berkholz. - -*crossdev-0.9.18-r7 (05 Feb 2008) - - 05 Feb 2008; Mike Frysinger files/crossdev, - +crossdev-0.9.18-r7.ebuild: - Do not use mips-headers anymore for mips-targets. - -*crossdev-0.9.18-r6 (30 Dec 2007) - - 30 Dec 2007; Mike Frysinger files/crossdev, - +crossdev-0.9.18-r6.ebuild: - If a target w/out a libc is selected, then error out while attempting a step - that requires a libc. - -*crossdev-0.9.18-r5 (04 Nov 2007) - - 04 Nov 2007; Mike Frysinger files/crossdev, - files/crossdev-stable, +crossdev-0.9.18-r5.ebuild: - Stop using -* now that we have ** and the meaning of -* is changing. - -*crossdev-0.9.18-r4 (06 Oct 2007) - - 06 Oct 2007; Mike Frysinger files/crossdev, - +crossdev-0.9.18-r4.ebuild: - Fix from Andrew Gaffney to tee output from emerge when using just --pretend - #188812. - -*crossdev-0.9.18-r3 (29 Jul 2007) - - 29 Jul 2007; Mike Frysinger files/crossdev, - +crossdev-0.9.18-r3.ebuild: - Make default keywords use the target rather than target+host. - -*crossdev-0.9.18-r2 (09 Jun 2007) - - 09 Jun 2007; Mike Frysinger files/crossdev, - +crossdev-0.9.18-r2.ebuild: - Have targets set default stage which user can override via --stage. - - 23 May 2007; Diego Pettenò - crossdev-0.9.17-r3.ebuild, crossdev-0.9.18-r1.ebuild: - unifdef command can also be provided by freebsd-ubin, add an or-dependency - over it. - - 05 May 2007; Mike Frysinger files/crossdev: - Force latest version of gnuconfig #177052 by Arkadi Shishlov. - -*crossdev-0.9.18-r1 (30 Apr 2007) - - 30 Apr 2007; Mike Frysinger files/crossdev, - +crossdev-0.9.18-r1.ebuild: - Filter USE=d #175493 by Mr.Mad. - -*crossdev-0.9.18 (17 Feb 2007) - - 17 Feb 2007; Mike Frysinger +files/crossdev-stable, - +crossdev-0.9.18.ebuild: - Rewrite target handling to be more flexible and make sure the ex steps - actually re-emerge the package #167332 by Jozef Maslik. - -*crossdev-0.9.17-r3 (10 Feb 2007) - - 10 Feb 2007; Mike Frysinger - -crossdev-0.9.17-r2.ebuild, +crossdev-0.9.17-r3.ebuild: - Push out updates for new targets (h8300/xc16x) and tweaked /etc/portage - handling. - - 06 Jan 2007; Luca Barbato files/crossdev: - Cleanup cell/ps3 support, always use the latest snapshot for now, soon it - will appear a stable release - - 02 Dec 2006; Mike Frysinger crossdev-0.9.17-r2.ebuild: - Force dev-util/unifdef to "fix" #155447. - - 29 Nov 2006; Luca Barbato files/crossdev: - Bumping binutils version required by Cell - - 14 Nov 2006; Luca Barbato files/crossdev: - Cell update, not bumping version yet. - -*crossdev-0.9.17-r2 (11 Oct 2006) - - 11 Oct 2006; Gustavo Zacarias files/crossdev, - -crossdev-0.9.17-r1.ebuild, +crossdev-0.9.17-r2.ebuild: - Shoot me, should be 2.16.1-r3 rather than just 2.16.1 for avr - -*crossdev-0.9.17-r1 (11 Oct 2006) - - 11 Oct 2006; Gustavo Zacarias files/crossdev, - -crossdev-0.9.17.ebuild, +crossdev-0.9.17-r1.ebuild: - Bump to fix AVR binutils version - -*crossdev-0.9.17 (17 Sep 2006) - - 17 Sep 2006; Mike Frysinger files/crossdev, - -crossdev-0.9.16-r2.ebuild, +crossdev-0.9.17.ebuild: - Add support for mingw compilers #129598. - -*crossdev-0.9.16-r2 (07 Sep 2006) - - 07 Sep 2006; Mike Frysinger files/crossdev, - +crossdev-0.9.16-r2.ebuild: - Fixup previous cross-compile commit and fix handling of /etc/portage files - when dealing with subdirs. - -*crossdev-0.9.16-r1 (03 Sep 2006) - - 03 Sep 2006; Danny van Dyk files/crossdev, - -crossdev-0.9.16.ebuild, +crossdev-0.9.16-r1.ebuild: - Bumped to use new CROSSCOMPILE_OPTS USE_EXPAND flag. - -*crossdev-0.9.16 (21 Aug 2006) - - 21 Aug 2006; Mike Frysinger files/crossdev, - -crossdev-0.9.15-r2.ebuild, +crossdev-0.9.16.ebuild: - Add support for cell from lu_zero and push out accumulated fixes. - -*crossdev-0.9.15-r2 (10 Aug 2006) - - 10 Aug 2006; Mike Frysinger files/crossdev, - -crossdev-0.9.15-r1.ebuild, +crossdev-0.9.15-r2.ebuild: - Add support for dirs in /etc/portage #143367 by Ryan Neufeld. - - 09 May 2006; Diego Pettenò - crossdev-0.9.15-r1.ebuild: - Add ~x86-fbsd (and remove redundant coreutils dependency). - -*crossdev-0.9.15-r1 (26 Apr 2006) - - 26 Apr 2006; Mike Frysinger -crossdev-0.9.15.ebuild, - +crossdev-0.9.15-r1.ebuild: - Make sure we use --version when checking binutils-config #131133 by Brett - Johnson. - -*crossdev-0.9.15 (12 Apr 2006) - - 12 Apr 2006; Mike Frysinger files/crossdev, - +crossdev-0.9.15.ebuild: - Add support for multiple PORTDIR_OVERLAY values; fixes from Joel Martin. - -*crossdev-0.9.14 (11 Apr 2006) - - 11 Apr 2006; Mike Frysinger files/crossdev, - +crossdev-0.9.14.ebuild: - Add support for storing env vars in config files in /etc/portage/crossdev. - -*crossdev-0.9.13 (14 Mar 2006) - - 14 Mar 2006; Mike Frysinger files/crossdev, - +crossdev-0.9.13.ebuild: - Make sure our binutils/gcc config scripts are up-to-date and not of the - broken variety. Also add support for storing USE flags in package.use. - -*crossdev-0.9.12-r1 (23 Jan 2006) - - 23 Jan 2006; Mike Frysinger files/crossdev, - +crossdev-0.9.12-r1.ebuild: - Forgot to use the disabled gcc flags for stage1 as pointed out by Kumba. - -*crossdev-0.9.12 (22 Jan 2006) - - 22 Jan 2006; Mike Frysinger files/crossdev, - +crossdev-0.9.12.ebuild: - J. Christopher Six says in #119934: make sure objc-gc is disabled for newer - versions of gcc. - -*crossdev-0.9.11-r1 (08 Jan 2006) - - 08 Jan 2006; Mike Frysinger files/crossdev, - +crossdev-0.9.11-r1.ebuild: - Fix typo in avr CPOST logic #118208 by Sandro. - -*crossdev-0.9.11 (02 Jan 2006) - - 02 Jan 2006; Mike Frysinger files/crossdev, - +crossdev-0.9.11.ebuild: - Add support for nios2/bfin embedded targets and update help output to - include information about softfloat toolchains. - -*crossdev-0.9.10 (18 Nov 2005) - - 18 Nov 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.10.ebuild: - Add support for building bootstrap gcc with libc/kernel headers - (--with-headers), fix cleaning of categories/package.keywords files, add - generic support for future --with-/--without- options, better detect when a - package needs to be re-emerged or can be safely skipped, and touchup code in - general. - -*crossdev-0.9.9-r3 (08 Oct 2005) - - 08 Oct 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.9-r3.ebuild: - Add support for passing -d to portage #108383 by Jan Kobler and allow env - USE/ABI to be passed in. - -*crossdev-0.9.9-r2 (29 Aug 2005) - - 29 Aug 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.9-r2.ebuild: - Update avr to require 3.4.4-r1 since 3.4.4 no longer exists. - -*crossdev-0.9.9-r1 (23 Aug 2005) - - 23 Aug 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.9-r1.ebuild: - Touchup help output, add more error checking, clean more directories when - uninstalling, be a bit more user friendly with cmdline options, add untested - support for klibc, touchup internal syntax, and improve ABI faking out. - -*crossdev-0.9.9 (17 Aug 2005) - - 17 Aug 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.9.ebuild: - Add a help target so the user knows what crossdev supports, and add initial - support for msp430 targets. - -*crossdev-0.9.8 (25 Jul 2005) - - 25 Jul 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.8.ebuild: - Add an option to create a cross gdb. - -*crossdev-0.9.7 (15 Jul 2005) - - 15 Jul 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.7.ebuild: - Add support for C++ with avr targets; fixes by Ludek Stepan #99014 / #99020. - -*crossdev-0.9.6-r1 (14 Jul 2005) - - 14 Jul 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.6-r1.ebuild: - Make sure the stupid ABI var doesnt screw us up. - - 20 Jun 2005; Markus Rothe crossdev-0.9.6.ebuild: - Stable on ppc64 - - 25 May 2005; Markus Rothe crossdev-0.9.6.ebuild: - Added ~ppc64 to KEYWORDS - -*crossdev-0.9.6 (18 Apr 2005) - - 18 Apr 2005; Mike Frysinger - -files/crossdev-0.4-fixes-one.patch, files/crossdev, - +crossdev-0.9.6.ebuild: - Add some initial support for ps2 targets (ee/iop/dvp). - -*crossdev-0.9.5-r1 (25 Mar 2005) - - 25 Mar 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.5-r1.ebuild: - Make sure PORTDIR_OVERLAY is set #86641. - -*crossdev-0.9.5 (16 Mar 2005) - - 16 Mar 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.5.ebuild: - Make binutils/gcc/linux-headers dynamic package names (to support - mips-headers). Add support for pulling in avr libc (thanks to Scott). - -*crossdev-0.9.1-r2 (12 Mar 2005) - - 12 Mar 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.1-r2.ebuild: - Add a --stage0 (for binutils), use a diff PORTAGE_TMPDIR, and make sure that - the diff PKGDIR is actually used. - -*crossdev-0.9.1-r1 (10 Mar 2005) - - 10 Mar 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.1-r1.ebuild: - Fix the set_use function to actually work, add an uninstall option, and make - sure the stage1-gcc is just a C compiler (no fortran/etc...). - -*crossdev-0.9.1 (09 Mar 2005) - - 09 Mar 2005; Mike Frysinger files/crossdev, - +crossdev-0.9.1.ebuild: - Add sanity checks for host system and add support for avr (fixes from Scott - L Price). - -*crossdev-0.9-r3 (04 Mar 2005) - - 04 Mar 2005; Mike Frysinger files/crossdev, - +crossdev-0.9-r3.ebuild: - Fix option collsion between internal -b (--binutils) and portages -b (build - package). - -*crossdev-0.9-r2 (03 Mar 2005) - - 03 Mar 2005; Mike Frysinger files/crossdev, - +crossdev-0.9-r2.ebuild: - Add sanity checks to keep from breaking the host system. - -*crossdev-0.9-r1 (03 Mar 2005) - - 03 Mar 2005; Mike Frysinger files/crossdev, - +crossdev-0.9-r1.ebuild: - Make sure we use a custom PKGDIR so we dont overwrite the users normal - toolchain binpkgs. - -*crossdev-0.9 (03 Mar 2005) - - 03 Mar 2005; Mike Frysinger +files/crossdev, - +crossdev-0.9.ebuild: - Version bumpage, use the portage tree now. - - 03 Sep 2004; Pieter Van den Abeele - crossdev-0.4-r1.ebuild: - Masked crossdev-0.4-r1.ebuild stable for ppc - -*crossdev-0.4-r1 (26 Feb 2004) - - 26 Feb 2004; Joshua Kinard crossdev-0.4-r1.ebuild, - crossdev-0.4.ebuild, files/crossdev-0.4-fixes-one.patch: - Added a patch to fix some annoying bugs, and bumped into stable for x86, - sparc, and mips. - -*crossdev-0.4 (30 Jan 2004) - - 30 Jan 2004; Joshua Kinard crossdev-0.4.ebuild: - New version, has lots of changes. See the package changelog for more details. - -*crossdev-0.3 (24 Dec 2003) - - 23 Dec 2003; Joshua Kinard metadata.xml: - New revision, adds toolchain support for several new archs and other minor - fixes - -*crossdev-0.2 (04 Dec 2003) - - 04 Dec 2003; Joshua Kinard crossdev-0.2.ebuild: - Initial introduction of this script/ebuild - diff --git a/sys-devel/crossdev/Manifest b/sys-devel/crossdev/Manifest index 238923b..14cece5 100644 --- a/sys-devel/crossdev/Manifest +++ b/sys-devel/crossdev/Manifest @@ -1,10 +1,2 @@ -AUX crossdev 19527 SHA256 8f969f9be291a28e603a0ea3fb4ad46623dac6a1ac95d9a2b732e14d19651584 SHA512 c59d329ae6771acebf5bafc0e8a6ed1342b2ce5da3938e71576e0ab0abc8d0138505143ed3d4fb265fa333e84e97612a1131f8b79511087d4d50fe43b4d23d54 WHIRLPOOL 6dfc096549ab0146871d1403c43c6144badebd452d2b3e32ebc9d86fba50cd1e6c88f181125a1a53024f9c3e954b0a712d903ebf399fb6bd0865cda27f542342 -AUX crossdev-stable 18883 SHA256 6a69e6481b4c304185d652d4f7cfa1024466a5990eb9670fc50aa85dcb8efd10 SHA512 273b31245ffa8210d850f43d54a3c9826b6757e26dd216aa2f7d88415558badc138e121056221a653cd9a5f0aa6283dd152521ea4eaab104db6c1fd581f35fbd WHIRLPOOL 8623100d1e618b0393aa1ec794e0b1dd0601056592a8b5c47569a17ff72e041cd900dc77ad0754ef33629b31e9c631b5ffbc924805e4c08fe8000234936d7ab3 -DIST crossdev-20100108.tar.lzma 16243 SHA256 f4a91418e5b917773e0dbcfdec254c52eb37f80ef1b41a0e27b9aea0c65793d7 -EBUILD crossdev-0.9.18-r10.ebuild 618 SHA256 1a355b96ba040e1646a4af43d9e3b9a96ae23c6278613f34fcf55e96d75d5a8c SHA512 95f44903c0bdb7132792a1d9350f4df8a4d9441a923bcaf346669d50d6ae2c93d0847e6cea4ccb8dd242bfad9e3f2c3b5fa5dd775fc2ceba8fce18fe2fddae82 WHIRLPOOL cd25a2856765c06ec1fe5063129c6e7f36e410893d1cd617fb71d4a17a1eceac1b07835bf89f05f421428aabe140858e621d88f4185bbb934fbb0d490e0f3e78 -EBUILD crossdev-0.9.19.ebuild 597 SHA256 6d312b25f283ecee742f22fd91bb9abd8d54f15cbeb64a11d7e8e4be2831a661 SHA512 87093b1255255e0b534fc6815d3636c7cfbe001b2e088ac184785c32688bf7989897283dc825937ac63b2ea6eaeff35c93582ec4b4be9d50e180a2b906f7694f WHIRLPOOL 80de942e465990132e8fd149dc6f94f49de73fb49442202e18f2ff360f269e5ac8bb3dc67dce0162d3674ab73565a50b36377881bd71643232f5ecbb40a6328e -EBUILD crossdev-20091209.ebuild 752 SHA256 0dc6a83076d434c0bbfb3b7c39102a704f7f05f39c435f4ae3a2e66fac1d5863 SHA512 9c6ff3acf82bd10f349fa890440fe0ddb89254ba9e327cb709ce6cb5f493bbb08aaf83f257892a9b6075b3ea957433d789af5bb0f0ffca79b17a0629bcdb78ed WHIRLPOOL b56ee0f177f2a385925c74c033d5f486222e014b834b8695783060f0d47a8c9a2110849c1caa6de60329411f48560bbfc476ef898b7f5c859bb6318fb70fb6f8 -EBUILD crossdev-20100108.ebuild 757 SHA256 b0f54edda3225c0c4bb0f63c9506d440385c3c4d525546cfafd3ea70248ada60 SHA512 071435ac3dc64661ee1d6cc797db0aacac75fb8a4324f6ff61a4f96a8a9831dc71fd7a8e83323179c2762635770020f3a666ad2b7160ab3c68b4c07b860b8944 WHIRLPOOL 62a5f23a3dbfabe9e12cc0358667dd914d08aa8d84b8748702b0aedee2bd0f2280b0b0c9a6db50205a71cb3ffb8a657f5b674ae95f95044fa5c69ee5080b87d4 EBUILD crossdev-99999999.ebuild 875 SHA256 ef7776507c1704cc083a0787f6e642ffdc44f664c4435d9cd0e3738810d02c39 SHA512 8d7c4b8ba34c822857dc9444147451d26b1b521f0db340e960a44c6e30c8a0524fc07739d553cd1045ba7f02c0d0c3e1050f5c806e33d2fb2a802deb0364df6d WHIRLPOOL af4f228657dd831de2d3e00269e4699f3f22080a65a28f430e66de5d7b78d960e7c003821501683f746570a28534aaeb7c99a86bbae4047b5423cc8b2ee5e448 -MISC ChangeLog 13045 SHA256 673b468a1cabcbc75f10a6bb729edf423d34258bee788ddc8fd1c8aeba5fcfdd SHA512 8c1f775f0ef7b465584555e43b6a31a170b09ad9a28e122fea35c144645a034a25f5ee4473ced998389b79e22bd826439034e9d0095fc309ed0ccec3e47b45d4 WHIRLPOOL 25d441ebc35c846cb989223eddf68ad4a89275b1060854839306ba948e7d27cd27429ac012eb3895dead7d245f3f34c97443c3a3d2ee211da568cf70d952e9f3 MISC metadata.xml 244 SHA256 5431488a9792fce5a4d11743e355abefa2c5016c9b542c2e53d87072d553a37f SHA512 4a33773e95965b86d3e2f934eec69d4f69e46f07015f4c61ca278e4dd248e98170952b683dccd06a672e2f582db6bc76a8abb1d38ecce98f4e33bbef6539d6c0 WHIRLPOOL 831226e1c2bab3af85242e42a117d3e660aa146c1e3a5ceef39f9bfd855b1402e902f7ae1504fc8e23a8b3bbb4871f6033326367f86da701034c5b52dd5fd29b diff --git a/sys-devel/crossdev/crossdev-0.9.18-r10.ebuild b/sys-devel/crossdev/crossdev-0.9.18-r10.ebuild deleted file mode 100644 index fae04f3..0000000 --- a/sys-devel/crossdev/crossdev-0.9.18-r10.ebuild +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/crossdev/crossdev-0.9.18-r10.ebuild,v 1.3 2008/12/10 04:23:05 vapier Exp $ - -DESCRIPTION="Gentoo Cross-toolchain generator" -HOMEPAGE="http://www.gentoo.org/" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="" -IUSE="" - -RDEPEND=">=sys-apps/portage-2.1 - app-shells/bash - || ( dev-util/unifdef sys-freebsd/freebsd-ubin >=sys-apps/darwin-miscutils-4 )" - -src_install() { - newsbin "${FILESDIR}"/crossdev-stable crossdev || die - dosed "s:GENTOO_PV:${PV}:" /usr/sbin/crossdev -} diff --git a/sys-devel/crossdev/crossdev-0.9.19.ebuild b/sys-devel/crossdev/crossdev-0.9.19.ebuild deleted file mode 100644 index 170ea4e..0000000 --- a/sys-devel/crossdev/crossdev-0.9.19.ebuild +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/crossdev/crossdev-0.9.19.ebuild,v 1.1 2008/11/28 09:21:10 vapier Exp $ - -DESCRIPTION="Gentoo Cross-toolchain generator" -HOMEPAGE="http://www.gentoo.org/" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="" -IUSE="" - -RDEPEND=">=sys-apps/portage-2.1 - app-shells/bash - || ( dev-util/unifdef sys-freebsd/freebsd-ubin >=sys-apps/darwin-miscutils-4 )" - -src_install() { - dosbin "${FILESDIR}"/crossdev || die - dosed "s:GENTOO_PV:${PV}:" /usr/sbin/crossdev -} diff --git a/sys-devel/crossdev/crossdev-20091209.ebuild b/sys-devel/crossdev/crossdev-20091209.ebuild deleted file mode 100644 index 82971b2..0000000 --- a/sys-devel/crossdev/crossdev-20091209.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/crossdev/crossdev-20091209.ebuild,v 1.1 2009/12/10 01:59:02 vapier Exp $ - -if [[ ${PV} == "99999999" ]] ; then - EGIT_REPO_URI="git://git.overlays.gentoo.org/proj/crossdev.git" - inherit git - SRC_URI="" - #KEYWORDS="" -else - SRC_URI="mirror://gentoo/${P}.tar.lzma - http://dev.gentoo.org/~vapier/dist/${P}.tar.lzma" -KEYWORDS="" -fi - -DESCRIPTION="Gentoo Cross-toolchain generator" -HOMEPAGE="http://www.gentoo.org/" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -IUSE="" - -RDEPEND=">=sys-apps/portage-2.1 - app-shells/bash - !sys-devel/crossdev-wrappers" -DEPEND="" - -src_install() { - emake install DESTDIR="${D}" || die -} diff --git a/sys-devel/crossdev/crossdev-20100108.ebuild b/sys-devel/crossdev/crossdev-20100108.ebuild deleted file mode 100644 index 20c3470..0000000 --- a/sys-devel/crossdev/crossdev-20100108.ebuild +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/crossdev/crossdev-20100108.ebuild,v 1.1 2010/01/08 10:52:54 vapier Exp $ - -EAPI="3" - -SRC_URI="mirror://gentoo/${P}.tar.lzma - http://dev.gentoo.org/~vapier/dist/${P}.tar.lzma" - -KEYWORDS="~x86-linux" - -DESCRIPTION="Gentoo Cross-toolchain generator" -HOMEPAGE="http://www.gentoo.org/" - -LICENSE="GPL-2" -SLOT="0" -IUSE="" - -RDEPEND=">=sys-apps/portage-2.1 - app-shells/bash - !sys-devel/crossdev-wrappers" -DEPEND="" - -src_prepare() { - sed -i -e 's,/etc,${EPREFIX}/etc,' \ - -e 's,/var,${EPREFIX}/var,' \ - -e's,/usr,${EPREFIX}/usr,' ${S}/crossdev -} - -src_install() { - emake install DESTDIR="${ED}" || die -} diff --git a/sys-devel/crossdev/files/crossdev b/sys-devel/crossdev/files/crossdev deleted file mode 100644 index 1841c6a..0000000 --- a/sys-devel/crossdev/files/crossdev +++ /dev/null @@ -1,662 +0,0 @@ -#!/usr/bin/env bash -# Copyright 1999-2007 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/crossdev/files/crossdev,v 1.110 2009/02/15 23:43:11 vapier Exp $ - -EPREFIX=$(portageq envvar EPREFIX) - -cd "${EPREFIX}" -umask 0022 #159111 - -if [[ ${ROOT:-/} != "/" ]] ; then - echo "Sorry, but crossdev does not support ROOT." - exit 2 -fi - -source "${EPREFIX}"/etc/init.d/functions.sh || exit 1 -esyslog() { :; } -die() { - echo - eerror $* - eerror If you file a bug, please attach the following logfiles: - eerror ${PORT_LOGDIR}/cross-${CTARGET}-info.log - eerror ${logfile} - exit 1 -} - -usage() { - local exit_status=${1:-0} - shift -cat << EOF -Usage: ${HILITE}crossdev${NORMAL} ${GOOD}[options]${NORMAL} ${BRACKET}--target TARGET${NORMAL} - -Options: - ${GOOD}--b, --binutils${NORMAL} ver Specify version of binutils to use - ${GOOD}--g, --gcc${NORMAL} ver Specify version of gcc to use - ${GOOD}--k, --kernel${NORMAL} ver Specify version of kernel headers to use - ${GOOD}--l, --libc${NORMAL} ver Specify version of libc to use - ${GOOD}-S, --stable${NORMAL} Use latest stable versions as default - ${GOOD}-C, --clean${NORMAL} target Uninstall specified target - ${GOOD}-P, --portage${NORMAL} opts Options to pass to emerge (see emerge(1)) - ${GOOD}--with[out]-headers${NORMAL} Build C library headers before C compiler? -Stage Options: - ${GOOD}-s0, --stage0${NORMAL} Build just binutils - ${GOOD}-s1, --stage1${NORMAL} Also build a C compiler (no libc/C++) - ${GOOD}-s2, --stage2${NORMAL} Also build kernel headers - ${GOOD}-s3, --stage3${NORMAL} Also build the C library (no C++) - ${GOOD}-s4, --stage4${NORMAL} Also build a C++ compiler [default] -Extra Fun (must be run after above stages): - ${GOOD}--ex-only${NORMAL} Skip the stage steps above - ${GOOD}--ex-gcc${NORMAL} Build extra gcc targets (gcj/ada/etc...) - ${GOOD}--ex-gdb${NORMAL} Build a cross gdb - ${GOOD}--ex-insight${NORMAL} Build a cross insight -${BRACKET}Target (-t)${NORMAL} takes a tuple ${BRACKET}ARCH-VENDOR-OS-LIBC${NORMAL}; see 'crossdev -t help' -EOF - [[ -n $* ]] && echo && eerror "Error: $*" - exit ${exit_status} -} -STAGE_BINUTILS=0 -STAGE_C_ONLY=1 -STAGE_C_KERNEL=2 -STAGE_LIBC=3 -STAGE_C_CPP=4 -STAGE_DEFAULT=${STAGE_C_CPP} -STAGE_DISP=( "binutils" "C compiler only" "kernel headers" "C compiler & libc" "C/C++ compiler" ) - -parse_target() { - CTARGET=${1#cross-} - - [[ -z ${CTARGET} ]] && usage 1 - - if [[ ${CTARGET} == "help" ]] ; then - cat <<-EOF - Supported Architectures: - - alpha - arm / armeb - - hppa (parisc) - ia64 - - i386 / i486 / i586 / i686 (x86) - m68k - - mips / mipsel / mips64 / mips64el - - powerpc (ppc) / powerpc64 (ppc64) - - sparc / sparc64 - s390 / s390x - - sh / sh[1-5] / sh64 - x86_64 (amd64) - Supported C Libraries: - - glibc (gnu) - - klibc [prob wont work] - - newlib [bare metal/no operating system] - - uclibc [not all arches are ported] - Special Targets: - - avr http://www.nongnu.org/avr-libc/ - - bfin http://blackfin.uclinux.org/ - - h8300 http://h8300-hms.sourceforge.net/ - - mingw32 http://www.mingw.org/ - - msp430 http://mspgcc.sourceforge.net/ - - nios2 http://www.altera.com/products/ip/processors/nios2/ni2-index.html - - xc16x http://www.infineon.com/ - - ee / iop / dvp (ps2) [Playstation 2 targets] - - ppu / spu (cell) [Cell/Playstation 3 targets] - Softfloat toolchains: - Include 'softfloat' in the 'vendor' field - e.g. armeb-softfloat-linux-uclibc powerpc-booya_softfloat-linux-gnu - EOF - exit 0 - fi - - # Allow for laziness - if [[ ${CTARGET} != *-* ]] ; then - # First translate portage ARCH to actual tuple - case ${CTARGET} in - amd64) CTARGET="x86_64";; - parisc*) CTARGET=${CTARGET/parisc/hppa};; - ppc|ppc64) CTARGET=${CTARGET/ppc/powerpc};; - x86) CTARGET="i686";; - esac - - # Then add common suffixes - case ${CTARGET} in - i?86|x86_64) - CTARGET="${CTARGET}-pc-linux-gnu";; - s390*) - CTARGET="${CTARGET}-ibm-linux-gnu";; - alpha*|arm*|cris*|hppa*|ia64*|m68*|mips*|powerpc*|sparc*|sh*) - CTARGET="${CTARGET}-unknown-linux-gnu";; - bfin*|h8300*|nios2*|spu*|xc16x*) - CTARGET="${CTARGET}-elf";; - esac - fi - - # Figure out an acceptable portage ARCH for this target - case ${CTARGET} in - alpha*) TARCH=alpha;; - arm*) TARCH=arm;; - hppa*) TARCH=hppa;; - ia64*) TARCH=ia64 WITH_DEF_HEADERS="yes";; - i?86*) TARCH=x86;; - m68*) TARCH=m68k;; - mips*) TARCH=mips;; - powerpc64*) TARCH=ppc64;; - powerpc*) TARCH=ppc;; - sparc*) TARCH=sparc;; - s390*) TARCH=s390;; - sh*) TARCH=sh;; - x86_64*) TARCH=amd64;; - *) TARCH="*";; - esac - case ${CTARGET} in - *-freebsd*) TARCH="${TARCH}-fbsd";; - esac - - # Now account for all the "special" architectures out there - case ${CTARGET} in - avr*) KPKG="[none]"; STAGE_DEFAULT=${STAGE_LIBC}; - LCAT="dev-embedded"; LPKG="avr-libc"; - GUSE=${GUSE_DISABLE} - WITH_DEF_HEADERS="no";; - - # due to upstream lameness, build C/C++ at first glance - *-cygwin) - GUSE_DISABLE=${GUSE_DISABLE/nocxx};; - - mingw*|*-mingw*) - WITH_DEF_HEADERS="yes"; - KCAT="dev-util"; KPKG="w32api"; - LCAT="dev-util"; LPKG="mingw-runtime";; - - msp430) - STAGE_DEFAULT=${STAGE_BINUTILS};; - - nios2*) - BPKG="binutils-nios2"; - GPKG="gcc-nios2";; - - cell) einfo "The cell target is really an alias for the spu/ppu targets" - ${CROSSDEV} -t ppu || exit 1 - ${CROSSDEV} -t spu-elf || exit 1 - exit 0;; - spu*) TARCH=ppc64; - KPKG="[none]"; - LPKG="newlib";; - ppu*) TARCH=ppc64;; - - ps2) einfo "The ps2 target is really an alias for the ee/iop/dvp targets" - ${CROSSDEV} -t ee || exit 1 - ${CROSSDEV} -t iop || exit 1 - ${CROSSDEV} -t dvp || exit 1 - exit 0;; - ee*) TARCH=mips; - KPKG="[none]" - GVER="3.2.2"; BVER="2.14"; - STAGE_DEFAULT=${STAGE_C_ONLY}; - GUSE=${GUSE_DISABLE};; - iop*) TARCH=mips; - GVER="3.2.2"; BVER="2.14"; - STAGE_DEFAULT=${STAGE_C_ONLY}; - GUSE=${GUSE_DISABLE};; - dvp*) TARCH=mips; - GVER="3.2.2"; BVER="2.14"; - STAGE_DEFAULT=${STAGE_BINUTILS};; - esac - - # Tweak packages based upon CTARGET - case ${CTARGET} in - # Normal Linux host, just diff libc - *-dietlibc) LPKG="dietlibc"; LCAT="dev-libs";; - *-gnu*) LPKG="glibc";; - *-klibc) LPKG="klibc";; - *-uclibc*) LPKG="uclibc";; - *-uclinux) LPKG="uclibc";; - - # Windows targets - *-cygwin) - LCAT="dev-libs"; LPKG="cygwin"; - KPKG="[none]"; - ;; - - # Bare metal targets - *-newlib|*-elf) - LPKG="newlib" - KPKG="[none]" - STAGE_DEFAULT=${STAGE_LIBC} - ;; - - # Now for the BSDs ... - *-freebsd*) - LCAT="sys-freebsd" LPKG="freebsd-lib" - KPKG="[none]" - ;; - esac - - : ${LPKG=[none]} -} - -setup_portage_vars() { - PORTDIR_OVERLAYS=$(portageq envvar PORTDIR_OVERLAY) - PORTDIR_OVERLAY=${PORTDIR_OVERLAYS%% *} - PORTDIR=$(portageq envvar PORTDIR) - PORT_LOGDIR=$(portageq envvar PORT_LOGDIR) - PORT_LOGDIR=${PORT_LOGDIR:-${EPREFIX}/var/log/portage} - export PKGDIR=$(portageq envvar PKGDIR)/cross/${CTARGET} - export PORTAGE_TMPDIR=$(portageq envvar PORTAGE_TMPDIR)/cross/${CTARGET} - [[ ! -d ${PORT_LOGDIR} ]] && mkdir -p ${PORT_LOGDIR} - [[ ! -d ${PORTAGE_TMPDIR} ]] && mkdir -p ${PORTAGE_TMPDIR} -} - -uninstall() { - setup_portage_vars - - ewarn "Uninstalling target '${CTARGET}' ..." - - [[ -d ${PORTDIR_OVERLAY}/cross-${CTARGET} ]] \ - && rm -r ${PORTDIR_OVERLAY}/cross-${CTARGET} - sed -i -e "/^cross-${CTARGET}$/d" "${EPREFIX}"/etc/portage/categories - for f in package.{mask,keywords,use} ; do - f="${EPREFIX}/etc/portage/${f}" - if [[ -d ${f} ]] ; then - rm -f "${f}"/cross-${CTARGET} - elif [[ -f ${f} ]] ; then - sed -i -e "/cross-${CTARGET}\//d" "${f}" - fi - done - - if [[ ! -d ${EPREFIX}/var/db/pkg/cross-${CTARGET} ]] ; then - eerror "${CTARGET} is not installed." - exit 1 - fi - - export CLEAN_DELAY=0 - cd "${EPREFIX}"/var/db/pkg - for p in cross-${CTARGET}/* ; do - emerge -C =${p} || exit 1 - done - for b in addr2line ar as c++filt ld nm objcopy objdump ranlib readelf size strings strip ; do - rm -f "${EPREFIX}"/usr/bin/${CTARGET}-${b} "${EPREFIX}"/usr/${CTARGET}/bin/${b} - done - rm -f "${EPREFIX}"/usr/${CTARGET}/{sys-include,usr} - rm -f "${EPREFIX}"/usr/bin/${CTARGET}-{gcc,{c,g}++,cpp,gfortran,gcov} - rmdir "${EPREFIX}"/usr/${CTARGET}/{include/asm,include} &> /dev/null - for d in "${EPREFIX}"/usr/${CTARGET} "${EPREFIX}"/usr/lib/gcc{,-lib}/${CTARGET} ; do - if [[ ! -d ${d} ]] ; then - rm -f "${d}" &> /dev/null - else - rmdir "${d}" &> /dev/null && continue - rm -ri "${d}" - fi - done - rm -f "${EPREFIX}"/etc/env.d/{binutils,gcc}/config-${CTARGET} - rmdir "${EPREFIX}"/var/db/pkg/cross-${CTARGET} - - exit 0 -} - -set_withval() { - local withval varname - varname=${*#--with-} - varname=${varname#--without-} - varname=${varname%%=*} - if [[ $* == *=* ]] ; then - withval=${*#*=} - else - [[ $* == --with-* ]] && withval="yes" || withval="no" - fi - - echo WITH_`echo ${varname} | tr '[:lower:]' '[:upper:]'`=\"${withval}\" -} - -is_stage() { [[ ${STAGE} -ge $1 ]] ; } -is_s0() { is_stage 0 ; } -is_s1() { is_stage 1 ; } -is_s2() { is_stage 2 ; } -is_s3() { is_stage 3 ; } -is_s4() { is_stage 4 ; } -is_s5() { is_stage 5 ; } - -with_headers() { [[ ${WITH_HEADERS} == "yes" ]] ; } - -ex_fast() { [[ ${EX_FAST} == "yes" ]] ; } -ex_gcc() { [[ ${EX_GCC} == "yes" ]] ; } -ex_gdb() { [[ ${EX_GDB} == "yes" ]] ; } -ex_insight() { [[ ${EX_INSIGHT} == "yes" ]] ; } - -hr() { - local c=${COLUMNS:-0} - if [[ ${c} -eq 0 ]] ; then - c=$(stty size 2> /dev/null) - [[ -z ${c} ]] \ - && c=50 \ - || c=${c##* } - fi - local ext=${1:- _ - ~ -} - local sext=${ext//?/ } - local br=$(printf "%$((c + ${#ext}))s") - local banner=${br//${sext}/${ext}} - echo "${banner:0:${c}}" -} - -################## -### setup vars ### -CROSSDEV=$0 -EOPTS= -UOPTS= -TARCH= -HARCH=$(unset ARCH ; portageq envvar ARCH) -CTARGET= -STAGE="" -BCAT="sys-devel" ; BPKG="binutils" ; BVER="" ; BUSE="" -GCAT="sys-devel" ; GPKG="gcc" ; GVER="" ; GUSE="" -KCAT="sys-kernel" ; KPKG="linux-headers" ; KVER="" ; KUSE="" -LCAT="sys-libs" ; LPKG="" ; LVER="" ; LUSE="" -DEFAULT_VER="[latest]" -GUSE_DISABLE="-boundschecking -d -fortran -gtk -gcj -libffi -mudflap nocxx -objc -objc++ -objc-gc -openmp" -GUSE_DISABLE_STAGE_2=${GUSE_DISABLE/-fortran} -GUSE_DISABLE_STAGE_2=${GUSE_DISABLE_STAGE_2/nocxx} -WITH_HEADERS="COW" WITH_DEF_HEADERS="yes" #227065 gcc-4.3+ is a pita w/out headers -EX_FAST="no" -EX_GCC="no" -EX_GDB="no" -SET_X="no" - -while [[ $# -gt 0 ]] ; do - case $1 in - -V|--version) echo "crossdev-GENTOO_PV"; exit 0;; - -t|--target) shift; parse_target $1;; - --b|--binutils) shift; BVER=$1;; - --g|--gcc) shift; GVER=$1;; - --k|--kernel) shift; KVER=$1;; - --l|--libc) shift; LVER=$1;; - -S|--stable) DEFAULT_VER="[stable]";; - -C|--clean) shift; parse_target $1; uninstall;; - -s?|--stage?) STAGE=${1:0-1};; - --ex-only) EX_FAST="yes";; - --ex-gcc) EX_GCC="yes";; - --ex-gdb) EX_GDB="yes";; - --ex-insight) EX_INSIGHT="yes";; - --with-*) eval $(set_withval $1);; - --without-*) eval $(set_withval $1);; - -x) SET_X="yes";; - -P|--portage) UOPTS="${UOPTS} $2"; shift;; - -b|-d|-p|-v|-q) UOPTS="${UOPTS} $1";; - -pv|-vp) UOPTS="${UOPTS} -p -v";; - -h|--help) usage;; - -*) eerror "UNKNOWN OPTION: '$1'" ; usage 1;; - *) parse_target $1;; - esac - shift -done -[[ ${SET_X} == "yes" ]] && set -x - -BVER=${BVER:-${DEFAULT_VER}} -GVER=${GVER:-${DEFAULT_VER}} -KVER=${KVER:-${DEFAULT_VER}} -LVER=${LVER:-${DEFAULT_VER}} -STAGE=${STAGE:-${STAGE_DEFAULT}} -[[ -z ${CTARGET} ]] && usage 1 -for with in HEADERS ; do - var=WITH_${with} defvar=WITH_DEF_${with} - [[ ${!var} == "COW" ]] && eval ${var}=${!defvar} -done - -##################### -### sanity checks ### -if ! binutils-config --version &> /dev/null ; then - eerror "Sorry, but your host system needs to have binutils-config" - eerror "in order to keep from screwing things up." - eerror "That means you must be running unstable versions of" - eerror "both binutils and binutils-config." - exit 1 -fi -if ! egrep -qs 'inherit.*toolchain( |$)' "${EPREFIX}"/var/db/pkg/sys-devel/gcc-*/*.ebuild ; then - eerror "Sorry, but your host system needs to have" - eerror "an unstable version of gcc in order to" - eerror "keep from screwing things up." - exit 1 -fi - -setup_portage_vars -if [[ -z ${PORTDIR_OVERLAY} ]] ; then - eerror "You need to set PORTDIR_OVERLAY in your make.conf." - eerror "A standard setting is /usr/local/portage" - exit 1 -fi - -if [[ $(unset CHOST ; portageq envvar CHOST) == ${CTARGET} ]] ; then - eerror "Refusing to create a cross-compiler using the same" - eerror "target name as your host utils." - exit 1 -fi - -# grab user settings -for v in ABI UCLIBC_CPU USE BVER GVER KVER LVER STAGE CFLAGS LDFLAGS ASFLAGS ; do - if [[ -e ${EPREFIX}/etc/portage/crossdev/${CTARGET}/${v} ]] ; then - # yes, quotes are needed in this instance (export $var="...") - export ${v}="$(<${EPREFIX}/etc/portage/crossdev/${CTARGET}/${v})" - einfo "Restoring user setting '${v}' to '${!v}'" - fi - if [[ -e ${EPREFIX}/etc/portage/crossdev/${CTARGET}/env ]] ; then - einfo "Restoring generic user env settings" - source ${EPREFIX}/etc/portage/crossdev/${CTARGET}/env - fi -done - -##################### -### do the emerge ### -( -hr - -einfo "Host Portage ARCH: ${HARCH}" -einfo "Target Portage ARCH: ${TARCH}" -einfo "Target System: ${CTARGET}" -einfo "Stage: ${STAGE} (${STAGE_DISP[${STAGE}]})" -echo -ex_fast || { -is_s0 && { -einfo "binutils: ${BPKG}-${BVER}" -} -is_s1 && { -einfo "gcc: ${GPKG}-${GVER}" -} -is_s2 && { -[[ ${KPKG} != "[none]" ]] && \ -einfo "headers: ${KPKG}-${KVER}" -} -is_s3 && { -einfo "libc: ${LPKG}-${LVER}" -} -} -ex_gcc && { -einfo "Extra: gcc pass: DO IT" -} -ex_gdb && { -einfo "Extra: gdb: DO IT" -} -ex_insight && { -einfo "Extra: insight: DO IT" -} -echo -einfo "PORTDIR_OVERLAY: ${PORTDIR_OVERLAY}" -einfo "PORT_LOGDIR: ${PORT_LOGDIR}" -einfo "PKGDIR: ${PKGDIR}" -einfo "PORTAGE_TMPDIR: ${PORTAGE_TMPDIR}" -hr -) >& ${PORT_LOGDIR}/cross-${CTARGET}-info.log || exit 1 -cat ${PORT_LOGDIR}/cross-${CTARGET}-info.log -emerge -v --info >> ${PORT_LOGDIR}/cross-${CTARGET}-info.log - -#################################### -### Fix up portage files / paths ### - -set_keywords() { - local pkg=$1 ver=$2 output - [[ -z ${pkg} ]] && return 0 - if [[ -f package.keywords ]] ; then - output="package.keywords" - sed -i -e "/^cross-${CTARGET}\/${pkg} /d" ${output} - else - output="package.keywords/cross-${CTARGET}" - fi - if [[ ${ver} == "["*"]" ]] || [[ -z ${ver} ]] ; then - local keywords="" - case ${ver} in - "[stable]") keywords="${TARCH}";; - *) keywords="${TARCH} ~${TARCH}";; - esac - [[ "${TARCH}" != "${HARCH}" ]] && keywords="${keywords} -${HARCH} -~${HARCH}" - echo "cross-${CTARGET}/${pkg} ${keywords}" >> ${output} - else - echo "cross-${CTARGET}/${pkg} * ~* **" >> ${output} - if [[ -f package.mask ]] ; then - output="package.mask" - sed -i -e "/cross-${CTARGET}\/${pkg}/d" ${output} - else - output="package.mask/cross-${CTARGET}" - fi - echo ">cross-${CTARGET}/${pkg}-${ver}" >> ${output} - fi -} -set_use() { - local pkg=$1 output - shift - local use=$@ - [[ -z ${use} ]] && return 0 - if [[ -f package.use ]] ; then - output="package.use" - else - output="package.use/cross-${CTARGET}" - fi - [[ -e ${output} ]] && sed -i -e "/cross-${CTARGET}\/${pkg}/d" ${output} - echo "cross-${CTARGET}/${pkg} ${use}" >> ${output} -} -set_links() { - local cat=$1 pkg=$2 - local s srcdir=${PORTDIR} - rm -f "${PORTDIR_OVERLAY}"/cross-${CTARGET}/${pkg} - for s in ${PORTDIR_OVERLAYS} ; do - if [[ -d ${s}/${cat}/${pkg} ]] ; then - einfo "Using ${cat}/${pkg} from ${s} instead of ${PORTDIR}" - srcdir=${s} - break - fi - done - ln -s "${srcdir}"/${cat}/${pkg} "${PORTDIR_OVERLAY}"/cross-${CTARGET}/${pkg} -} -set_portage() { - local cat=$1 pkg=$2 ver=$3 - shift ; shift ; shift - local use=$@ - - [[ ${pkg} == "[none]" ]] && return 0 - - set_keywords ${pkg} ${ver} - set_use ${pkg} ${use} - set_links ${cat} ${pkg} -} - -mkdir -p "${EPREFIX}"/etc/portage -grep -qs "^cross-${CTARGET}$" "${EPREFIX}"/etc/portage/categories \ - || echo cross-${CTARGET} >> "${EPREFIX}"/etc/portage/categories -mkdir -p "${PORTDIR_OVERLAY}"/cross-${CTARGET} -cd "${EPREFIX}"/etc/portage -for f in package.{keywords,mask,use} ; do - [[ -f ${f} ]] && continue - mkdir -p ${f} - rm -f ${f}/cross-${CTARGET} -done - -set_portage ${BCAT} ${BPKG} ${BVER} -set_portage ${GCAT} ${GPKG} ${GVER} -set_portage ${KCAT} ${KPKG} ${KVER} -set_portage ${LCAT} ${LPKG} ${LVER} -set_portage sys-devel gdb -set_portage dev-util insight - -################# -emerged_with_use() { - local pkg=$1 use=$2 - grep -qs ${use} "${EPREFIX}"/var/db/pkg/cross-${CTARGET}/${pkg}-*/USE -} -set_eopts_on_pkg_status() { - emerged_with_use "$@" \ - && EOPTS=${EOPTS_DEF} \ - || EOPTS=${EOPTS_UP} -} -doemerge() { - [[ $1 == "[none]" ]] && return 0 - - local logfile=${PORT_LOGDIR}/cross-${CTARGET} - [[ -z $2 ]] \ - && logfile=${logfile}-$1.log \ - || logfile=${logfile}-$2.log - - einfo "Log: ${logfile}" - ebegin "Emerging cross-${2:-$1}" - - set_use $1 ${USE} - - if [[ ${UOPTS/-v} != ${UOPTS} || ${UOPTS/-p} != ${UOPTS} ]] ; then - emerge cross-${CTARGET}/$1 ${EOPTS} \ - 2>&1 | tee ${logfile} - else - emerge cross-${CTARGET}/$1 ${EOPTS} \ - >& ${logfile} - fi - local _pipestatus=${PIPESTATUS[*]} - [[ "${_pipestatus// /}" -eq 0 ]] || die "$1 failed :(" - eend 0 -} - -# we include the '-u' so that we don't re-emerge packages -EOPTS_DEF="${UOPTS} --nodeps --oneshot" -EOPTS_UP="${EOPTS_DEF} -u" -EOPTS=${EOPTS_UP} -# keep things like --ask from screwing us up -export EMERGE_DEFAULT_OPTS="" - -# maybe someday this work, but that day != today -USE="${USE} -selinux" - -# make sure multilib crap doesn't screw us over -export ABI=${ABI:-pos} LIBDIR_pos="lib" CFLAGS_pos="" LDFLAGS_pos="" - -# only allow UCLIBC_CPU from env, not from make.conf/profile -export UCLIBC_CPU=${UCLIBC_CPU} - -ex_fast || { - -ebegin "Forcing the latest versions of {binutils,gcc}-config/gnuconfig" -emerge {binutils,gcc}-config gnuconfig -qu --ignore-default-opts &> /dev/null -eend $? || exit 1 - -doemerge ${BPKG} - -is_s1 || exit 0 -if with_headers ; then -USE="${KUSE} ${USE}" CROSSCOMPILE_OPTS="headers-only" \ - doemerge ${KPKG} ${KPKG}-quick -[[ -n ${LPKG} ]] && \ -USE="${LUSE} ${USE}" CROSSCOMPILE_OPTS="headers-only" \ - doemerge ${LPKG} ${LPKG}-headers -fi -USE="${GUSE} ${USE} ${GUSE_DISABLE}" CROSSCOMPILE_OPTS="bootstrap" \ - doemerge ${GPKG} ${GPKG}-stage1 - -is_s2 || exit 0 -set_eopts_on_pkg_status ${KPKG} crosscompile_opts_headers-only -USE="${KUSE} ${USE}" CROSSCOMPILE_OPTS="" \ - doemerge ${KPKG} - -is_s3 || exit 0 -[[ -z ${LPKG} ]] && die "Invalid target '${CTARGET}': unknown libc" -set_eopts_on_pkg_status ${LPKG} crosscompile_opts_headers-only -USE="${LUSE} ${USE}" CROSSCOMPILE_OPTS="" \ - doemerge ${LPKG} - -is_s4 || exit 0 -set_eopts_on_pkg_status ${GPKG} crosscompile_opts_bootstrap -EOPTS="${EOPTS_UP} --newuse" -USE="${GUSE} ${USE} ${GUSE_DISABLE_STAGE_2}" \ - doemerge ${GPKG} ${GPKG}-stage2 - -} - -EOPTS="${EOPTS_UP} --newuse" -ex_gcc && USE="${GUSE} ${USE}" doemerge ${GPKG} ${GPKG}-extra -ex_gdb && doemerge gdb -ex_insight && doemerge insight - -exit 0 diff --git a/sys-devel/crossdev/files/crossdev-stable b/sys-devel/crossdev/files/crossdev-stable deleted file mode 100644 index 54b6e04..0000000 --- a/sys-devel/crossdev/files/crossdev-stable +++ /dev/null @@ -1,646 +0,0 @@ -#!/bin/bash -# Copyright 1999-2007 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/crossdev/files/crossdev-stable,v 1.6 2008/11/28 09:19:41 vapier Exp $ - -cd / -umask 0022 #159111 - -if [[ ${ROOT:-/} != "/" ]] ; then - echo "Sorry, but crossdev does not support ROOT." - exit 2 -fi - -source /etc/init.d/functions.sh || exit 1 -esyslog() { :; } -die() { - echo - eerror $* - eerror If you file a bug, please attach the following logfiles: - eerror ${PORT_LOGDIR}/cross-${CTARGET}-info.log - eerror ${logfile} - exit 1 -} - -usage() { - local exit_status=${1:-0} - shift -cat << EOF -Usage: ${HILITE}crossdev${NORMAL} ${GOOD}[options]${NORMAL} ${BRACKET}--target TARGET${NORMAL} - -Options: - ${GOOD}--b, --binutils${NORMAL} ver Specify version of binutils to use - ${GOOD}--g, --gcc${NORMAL} ver Specify version of gcc to use - ${GOOD}--k, --kernel${NORMAL} ver Specify version of kernel headers to use - ${GOOD}--l, --libc${NORMAL} ver Specify version of libc to use - ${GOOD}-S, --stable${NORMAL} Use latest stable versions as default - ${GOOD}-C, --clean${NORMAL} target Uninstall specified target - ${GOOD}-P, --portage${NORMAL} opts Options to pass to emerge (see emerge(1)) - ${GOOD}--with[out]-headers${NORMAL} Build C library headers before C compiler? -Stage Options: - ${GOOD}-s0, --stage0${NORMAL} Build just binutils - ${GOOD}-s1, --stage1${NORMAL} Also build a C compiler (no libc/C++) - ${GOOD}-s2, --stage2${NORMAL} Also build kernel headers - ${GOOD}-s3, --stage3${NORMAL} Also build the C library (no C++) - ${GOOD}-s4, --stage4${NORMAL} Also build a C++ compiler [default] -Extra Fun (must be run after above stages): - ${GOOD}--ex-only${NORMAL} Skip the stage steps above - ${GOOD}--ex-gcc${NORMAL} Build extra gcc targets (gcj/ada/etc...) - ${GOOD}--ex-gdb${NORMAL} Build a cross gdb - ${GOOD}--ex-insight${NORMAL} Build a cross insight -${BRACKET}Target (-t)${NORMAL} takes a tuple ${BRACKET}ARCH-VENDOR-OS-LIBC${NORMAL}; see 'crossdev -t help' -EOF - [[ -n $* ]] && echo && eerror "Error: $*" - exit ${exit_status} -} -STAGE_BINUTILS=0 -STAGE_C_ONLY=1 -STAGE_C_KERNEL=2 -STAGE_LIBC=3 -STAGE_C_CPP=4 -STAGE_DEFAULT=${STAGE_C_CPP} -STAGE_DISP=( "binutils" "C compiler only" "kernel headers" "C compiler & libc" "C/C++ compiler" ) - -parse_target() { - CTARGET=${1#cross-} - - [[ -z ${CTARGET} ]] && usage 1 - - if [[ ${CTARGET} == "help" ]] ; then - cat <<-EOF - Supported Architectures: - - alpha - arm / armeb - - hppa (parisc) - ia64 - - i386 / i486 / i586 / i686 (x86) - m68k - - mips / mipsel / mips64 / mips64el - - powerpc (ppc) / powerpc64 (ppc64) - - sparc / sparc64 - s390 / s390x - - sh / sh[1-5] / sh64 - x86_64 (amd64) - Supported C Libraries: - - glibc (gnu) - - klibc [prob wont work] - - newlib [bare metal/no operating system] - - uclibc [not all arches are ported] - Special Targets: - - avr http://www.nongnu.org/avr-libc/ - - bfin http://blackfin.uclinux.org/ - - h8300 http://h8300-hms.sourceforge.net/ - - mingw32 http://www.mingw.org/ - - msp430 http://mspgcc.sourceforge.net/ - - nios2 http://www.altera.com/products/ip/processors/nios2/ni2-index.html - - xc16x http://www.infineon.com/ - - ee / iop / dvp (ps2) [Playstation 2 targets] - - ppu / spu (cell) [Cell/Playstation 3 targets] - Softfloat toolchains: - Include 'softfloat' in the 'vendor' field - e.g. armeb-softfloat-linux-uclibc powerpc-booya_softfloat-linux-gnu - EOF - exit 0 - fi - - # Allow for laziness - if [[ ${CTARGET} != *-* ]] ; then - # First translate portage ARCH to actual tuple - case ${CTARGET} in - amd64) CTARGET="x86_64";; - parisc*) CTARGET=${CTARGET/parisc/hppa};; - ppc|ppc64) CTARGET=${CTARGET/ppc/powerpc};; - x86) CTARGET="i686";; - esac - - # Then add common suffixes - case ${CTARGET} in - i?86|x86_64) - CTARGET="${CTARGET}-pc-linux-gnu";; - s390*) - CTARGET="${CTARGET}-ibm-linux-gnu";; - alpha*|arm*|cris*|hppa*|ia64*|m68*|mips*|powerpc*|sparc*|sh*) - CTARGET="${CTARGET}-unknown-linux-gnu";; - bfin*|h8300*|nios2*|spu*|xc16x*) - CTARGET="${CTARGET}-elf";; - esac - fi - - # Figure out an acceptable portage ARCH for this target - case ${CTARGET} in - alpha*) TARCH=alpha;; - arm*) TARCH=arm;; - hppa*) TARCH=hppa;; - ia64*) TARCH=ia64 WITH_DEF_HEADERS="yes";; - i?86*) TARCH=x86;; - m68*) TARCH=m68k;; - mips*) TARCH=mips;; - powerpc64*) TARCH=ppc64;; - powerpc*) TARCH=ppc;; - sparc*) TARCH=sparc;; - s390*) TARCH=s390;; - sh*) TARCH=sh;; - x86_64*) TARCH=amd64;; - *) TARCH="*";; - esac - case ${CTARGET} in - *-freebsd*) TARCH="${TARCH}-fbsd";; - esac - - # Now account for all the "special" architectures out there - case ${CTARGET} in - avr*) KPKG="[none]"; STAGE_DEFAULT=${STAGE_LIBC}; - LCAT="dev-embedded"; LPKG="avr-libc"; - GUSE=${GUSE_DISABLE};; - - mingw*|*-mingw*) - WITH_DEF_HEADERS="yes"; - KCAT="dev-util"; KPKG="w32api"; - LCAT="dev-util"; LPKG="mingw-runtime";; - - msp430) - STAGE_DEFAULT=${STAGE_BINUTILS};; - - nios2*) - BPKG="binutils-nios2"; - GPKG="gcc-nios2";; - - cell) einfo "The cell target is really an alias for the spu/ppu targets" - ${CROSSDEV} -t ppu || exit 1 - ${CROSSDEV} -t spu-elf || exit 1 - exit 0;; - spu*) TARCH=ppc64; - KPKG="[none]"; - LPKG="newlib";; - ppu*) TARCH=ppc64;; - - ps2) einfo "The ps2 target is really an alias for the ee/iop/dvp targets" - ${CROSSDEV} -t ee || exit 1 - ${CROSSDEV} -t iop || exit 1 - ${CROSSDEV} -t dvp || exit 1 - exit 0;; - ee*) TARCH=mips; - KPKG="[none]" - GVER="3.2.2"; BVER="2.14"; - STAGE_DEFAULT=${STAGE_C_ONLY}; - GUSE=${GUSE_DISABLE};; - iop*) TARCH=mips; - GVER="3.2.2"; BVER="2.14"; - STAGE_DEFAULT=${STAGE_C_ONLY}; - GUSE=${GUSE_DISABLE};; - dvp*) TARCH=mips; - GVER="3.2.2"; BVER="2.14"; - STAGE_DEFAULT=${STAGE_BINUTILS};; - esac - - # Tweak packages based upon CTARGET - case ${CTARGET} in - # Normal Linux host, just diff libc - *-dietlibc) LPKG="dietlibc"; LCAT="dev-libs";; - *-gnu*) LPKG="glibc";; - *-klibc) LPKG="klibc";; - *-uclibc*) LPKG="uclibc";; - *-uclinux) LPKG="uclibc";; - - # Bare metal targets - *-newlib|*-elf) - LPKG="newlib" - KPKG="[none]" - STAGE_DEFAULT=${STAGE_LIBC} - ;; - - # Now for the BSDs ... - *-freebsd*) - LCAT="sys-freebsd" LPKG="freebsd-lib" - KPKG="[none]" - ;; - esac -} - -setup_portage_vars() { - PORTDIR_OVERLAYS=$(portageq envvar PORTDIR_OVERLAY) - PORTDIR_OVERLAY=${PORTDIR_OVERLAYS%% *} - PORTDIR=$(portageq envvar PORTDIR) - PORT_LOGDIR=$(portageq envvar PORT_LOGDIR) - PORT_LOGDIR=${PORT_LOGDIR:-/var/log/portage} - export PKGDIR=$(portageq envvar PKGDIR)/cross/${CTARGET} - export PORTAGE_TMPDIR=$(portageq envvar PORTAGE_TMPDIR)/cross/${CTARGET} - [[ ! -d ${PORT_LOGDIR} ]] && mkdir -p ${PORT_LOGDIR} - [[ ! -d ${PORTAGE_TMPDIR} ]] && mkdir -p ${PORTAGE_TMPDIR} -} - -uninstall() { - setup_portage_vars - - ewarn "Uninstalling target '${CTARGET}' ..." - - [[ -d ${PORTDIR_OVERLAY}/cross-${CTARGET} ]] \ - && rm -r ${PORTDIR_OVERLAY}/cross-${CTARGET} - sed -i -e "/^cross-${CTARGET}$/d" /etc/portage/categories - for f in package.{mask,keywords,use} ; do - f="/etc/portage/${f}" - if [[ -d ${f} ]] ; then - rm -f "${f}"/cross-${CTARGET} - elif [[ -f ${f} ]] ; then - sed -i -e "/cross-${CTARGET}\//d" "${f}" - fi - done - - if [[ ! -d /var/db/pkg/cross-${CTARGET} ]] ; then - eerror "${CTARGET} is not installed." - exit 1 - fi - - export CLEAN_DELAY=0 - cd /var/db/pkg - for p in cross-${CTARGET}/* ; do - emerge -C =${p} || exit 1 - done - for b in addr2line ar as c++filt ld nm objcopy objdump ranlib readelf size strings strip ; do - rm -f /usr/bin/${CTARGET}-${b} /usr/${CTARGET}/bin/${b} - done - rm -f /usr/${CTARGET}/{sys-include,usr} - rm -f /usr/bin/${CTARGET}-{gcc,{c,g}++,cpp,gfortran,gcov} - rmdir /usr/${CTARGET}/{include/asm,include} &> /dev/null - for d in /usr/${CTARGET} /usr/lib/gcc{,-lib}/${CTARGET} ; do - if [[ ! -d ${d} ]] ; then - rm -f "${d}" &> /dev/null - else - rmdir "${d}" &> /dev/null && continue - rm -ri "${d}" - fi - done - rm -f /etc/env.d/{binutils,gcc}/config-${CTARGET} - rmdir /var/db/pkg/cross-${CTARGET} - - exit 0 -} - -set_withval() { - local withval varname - varname=${*#--with-} - varname=${varname#--without-} - varname=${varname%%=*} - if [[ $* == *=* ]] ; then - withval=${*#*=} - else - [[ $* == --with-* ]] && withval="yes" || withval="no" - fi - - echo WITH_`echo ${varname} | tr '[:lower:]' '[:upper:]'`=\"${withval}\" -} - -is_stage() { [[ ${STAGE} -ge $1 ]] ; } -is_s0() { is_stage 0 ; } -is_s1() { is_stage 1 ; } -is_s2() { is_stage 2 ; } -is_s3() { is_stage 3 ; } -is_s4() { is_stage 4 ; } -is_s5() { is_stage 5 ; } - -with_headers() { [[ ${WITH_HEADERS} == "yes" ]] ; } - -ex_fast() { [[ ${EX_FAST} == "yes" ]] ; } -ex_gcc() { [[ ${EX_GCC} == "yes" ]] ; } -ex_gdb() { [[ ${EX_GDB} == "yes" ]] ; } -ex_insight() { [[ ${EX_INSIGHT} == "yes" ]] ; } - -hr() { - local c=${COLUMNS:-0} - if [[ ${c} -eq 0 ]] ; then - c=$(stty size 2> /dev/null) - [[ -z ${c} ]] \ - && c=50 \ - || c=${c##* } - fi - local ext=${1:- _ - ~ -} - local sext=${ext//?/ } - local br=$(printf "%$((c + ${#ext}))s") - local banner=${br//${sext}/${ext}} - echo "${banner:0:${c}}" -} - -################## -### setup vars ### -CROSSDEV=$0 -EOPTS= -UOPTS= -TARCH= -HARCH=$(unset ARCH ; portageq envvar ARCH) -CTARGET= -STAGE="" -BCAT="sys-devel" ; BPKG="binutils" ; BVER="" ; BUSE="" -GCAT="sys-devel" ; GPKG="gcc" ; GVER="" ; GUSE="" -KCAT="sys-kernel" ; KPKG="linux-headers" ; KVER="" ; KUSE="" -LCAT="sys-libs" ; LPKG="" ; LVER="" ; LUSE="" -DEFAULT_VER="[latest]" -GUSE_DISABLE="-boundschecking -d -fortran -gtk -gcj -libffi -mudflap -objc -objc++ -objc-gc -openmp" -GUSE_DISABLE_STAGE_2=${GUSE_DISABLE/-fortran} -WITH_HEADERS="COW" WITH_DEF_HEADERS="yes" #227065 gcc-4.3+ is a pita w/out headers -EX_FAST="no" -EX_GCC="no" -EX_GDB="no" -SET_X="no" - -while [[ $# -gt 0 ]] ; do - case $1 in - -V|--version) echo "crossdev-GENTOO_PV"; exit 0;; - -t|--target) shift; parse_target $1;; - --b|--binutils) shift; BVER=$1;; - --g|--gcc) shift; GVER=$1;; - --k|--kernel) shift; KVER=$1;; - --l|--libc) shift; LVER=$1;; - -S|--stable) DEFAULT_VER="[stable]";; - -C|--clean) shift; parse_target $1; uninstall;; - -s?|--stage?) STAGE=${1:0-1};; - --ex-only) EX_FAST="yes";; - --ex-gcc) EX_GCC="yes";; - --ex-gdb) EX_GDB="yes";; - --ex-insight) EX_INSIGHT="yes";; - --with-*) eval $(set_withval $1);; - --without-*) eval $(set_withval $1);; - -x) SET_X="yes";; - -P|--portage) UOPTS="${UOPTS} $2"; shift;; - -b|-d|-p|-v|-q) UOPTS="${UOPTS} $1";; - -pv|-vp) UOPTS="${UOPTS} -p -v";; - -h|--help) usage;; - -*) eerror "UNKNOWN OPTION: '$1'" ; usage 1;; - *) parse_target $1;; - esac - shift -done -[[ ${SET_X} == "yes" ]] && set -x - -BVER=${BVER:-${DEFAULT_VER}} -GVER=${GVER:-${DEFAULT_VER}} -KVER=${KVER:-${DEFAULT_VER}} -LVER=${LVER:-${DEFAULT_VER}} -STAGE=${STAGE:-${STAGE_DEFAULT}} -[[ -z ${CTARGET} ]] && usage 1 -for with in HEADERS ; do - var=WITH_${with} defvar=WITH_DEF_${with} - [[ ${!var} == "COW" ]] && eval ${var}=${!defvar} -done - -##################### -### sanity checks ### -if ! binutils-config --version &> /dev/null ; then - eerror "Sorry, but your host system needs to have binutils-config" - eerror "in order to keep from screwing things up." - eerror "That means you must be running unstable versions of" - eerror "both binutils and binutils-config." - exit 1 -fi -if ! egrep -qs 'inherit.*toolchain( |$)' /var/db/pkg/sys-devel/gcc-*/*.ebuild ; then - eerror "Sorry, but your host system needs to have" - eerror "an unstable version of gcc in order to" - eerror "keep from screwing things up." - exit 1 -fi - -setup_portage_vars -if [[ -z ${PORTDIR_OVERLAY} ]] ; then - eerror "You need to set PORTDIR_OVERLAY in your make.conf." - eerror "A standard setting is /usr/local/portage" - exit 1 -fi - -if [[ $(unset CHOST ; portageq envvar CHOST) == ${CTARGET} ]] ; then - eerror "Refusing to create a cross-compiler using the same" - eerror "target name as your host utils." - exit 1 -fi - -# grab user settings -for v in ABI UCLIBC_CPU USE BVER GVER KVER LVER STAGE CFLAGS LDFLAGS ASFLAGS ; do - if [[ -e /etc/portage/crossdev/${CTARGET}/${v} ]] ; then - # yes, quotes are needed in this instance (export $var="...") - export ${v}="$(& ${PORT_LOGDIR}/cross-${CTARGET}-info.log || exit 1 -cat ${PORT_LOGDIR}/cross-${CTARGET}-info.log -emerge -v --info >> ${PORT_LOGDIR}/cross-${CTARGET}-info.log - -#################################### -### Fix up portage files / paths ### - -set_keywords() { - local pkg=$1 ver=$2 output - [[ -z ${pkg} ]] && return 0 - if [[ -f package.keywords ]] ; then - output="package.keywords" - sed -i -e "/^cross-${CTARGET}\/${pkg} /d" ${output} - else - output="package.keywords/cross-${CTARGET}" - fi - if [[ ${ver} == "["*"]" ]] || [[ -z ${ver} ]] ; then - local keywords="" - case ${ver} in - "[stable]") keywords="${TARCH}";; - *) keywords="${TARCH} ~${TARCH}";; - esac - [[ "${TARCH}" != "${HARCH}" ]] && keywords="${keywords} -${HARCH} -~${HARCH}" - echo "cross-${CTARGET}/${pkg} ${keywords}" >> ${output} - else - echo "cross-${CTARGET}/${pkg} * ~* **" >> ${output} - if [[ -f package.mask ]] ; then - output="package.mask" - sed -i -e "/cross-${CTARGET}\/${pkg}/d" ${output} - else - output="package.mask/cross-${CTARGET}" - fi - echo ">cross-${CTARGET}/${pkg}-${ver}" >> ${output} - fi -} -set_use() { - local pkg=$1 output - shift - local use=$@ - [[ -z ${use} ]] && return 0 - if [[ -f package.use ]] ; then - output="package.use" - else - output="package.use/cross-${CTARGET}" - fi - [[ -e ${output} ]] && sed -i -e "/cross-${CTARGET}\/${pkg}/d" ${output} - echo "cross-${CTARGET}/${pkg} ${use}" >> ${output} -} -set_links() { - local cat=$1 pkg=$2 - local s srcdir=${PORTDIR} - rm -f "${PORTDIR_OVERLAY}"/cross-${CTARGET}/${pkg} - for s in ${PORTDIR_OVERLAYS} ; do - if [[ -d ${s}/${cat}/${pkg} ]] ; then - einfo "Using ${cat}/${pkg} from ${s} instead of ${PORTDIR}" - srcdir=${s} - break - fi - done - ln -s "${srcdir}"/${cat}/${pkg} "${PORTDIR_OVERLAY}"/cross-${CTARGET}/${pkg} -} -set_portage() { - local cat=$1 pkg=$2 ver=$3 - shift ; shift ; shift - local use=$@ - - [[ ${pkg} == "[none]" ]] && return 0 - - set_keywords ${pkg} ${ver} - set_use ${pkg} ${use} - set_links ${cat} ${pkg} -} - -mkdir -p /etc/portage -grep -qs "^cross-${CTARGET}$" /etc/portage/categories \ - || echo cross-${CTARGET} >> /etc/portage/categories -mkdir -p "${PORTDIR_OVERLAY}"/cross-${CTARGET} -cd /etc/portage -for f in package.{keywords,mask,use} ; do - [[ -f ${f} ]] && continue - mkdir -p ${f} - rm -f ${f}/cross-${CTARGET} -done - -set_portage ${BCAT} ${BPKG} ${BVER} -set_portage ${GCAT} ${GPKG} ${GVER} -set_portage ${KCAT} ${KPKG} ${KVER} -set_portage ${LCAT} ${LPKG} ${LVER} -set_portage sys-devel gdb -set_portage dev-util insight - -################# -emerged_with_use() { - local pkg=$1 use=$2 - grep -qs ${use} /var/db/pkg/cross-${CTARGET}/${pkg}-*/USE -} -set_eopts_on_pkg_status() { - emerged_with_use "$@" \ - && EOPTS=${EOPTS_DEF} \ - || EOPTS=${EOPTS_UP} -} -doemerge() { - [[ $1 == "[none]" ]] && return 0 - - local logfile=${PORT_LOGDIR}/cross-${CTARGET} - [[ -z $2 ]] \ - && logfile=${logfile}-$1.log \ - || logfile=${logfile}-$2.log - - einfo "Log: ${logfile}" - ebegin "Emerging cross-${2:-$1}" - - set_use $1 ${USE} - - if [[ ${UOPTS/-v} != ${UOPTS} || ${UOPTS/-p} != ${UOPTS} ]] ; then - emerge cross-${CTARGET}/$1 ${EOPTS} \ - 2>&1 | tee ${logfile} - else - emerge cross-${CTARGET}/$1 ${EOPTS} \ - >& ${logfile} - fi - local _pipestatus=${PIPESTATUS[*]} - [[ "${_pipestatus// /}" -eq 0 ]] || die "$1 failed :(" - eend 0 -} - -# we include the '-u' so that we don't re-emerge packages -EOPTS_DEF="${UOPTS} --nodeps --oneshot" -EOPTS_UP="${EOPTS_DEF} -u" -EOPTS=${EOPTS_UP} -# keep things like --ask from screwing us up -export EMERGE_DEFAULT_OPTS="" - -# maybe someday this work, but that day != today -USE="${USE} -selinux" - -# make sure multilib crap doesn't screw us over -export ABI=${ABI:-pos} LIBDIR_pos="lib" CFLAGS_pos="" LDFLAGS_pos="" - -# only allow UCLIBC_CPU from env, not from make.conf/profile -export UCLIBC_CPU=${UCLIBC_CPU} - -ex_fast || { - -ebegin "Forcing the latest versions of {binutils,gcc}-config/gnuconfig" -emerge {binutils,gcc}-config gnuconfig -qu --ignore-default-opts &> /dev/null -eend $? || exit 1 - -doemerge ${BPKG} - -is_s1 || exit 0 -if with_headers ; then -USE="${KUSE} ${USE}" CROSSCOMPILE_OPTS="headers-only" \ - doemerge ${KPKG} ${KPKG}-quick -[[ -n ${LPKG} ]] && \ -USE="${LUSE} ${USE}" CROSSCOMPILE_OPTS="headers-only" \ - doemerge ${LPKG} ${LPKG}-headers -fi -USE="${GUSE} ${USE} ${GUSE_DISABLE} nocxx" CROSSCOMPILE_OPTS="bootstrap" \ - doemerge ${GPKG} ${GPKG}-stage1 - -is_s2 || exit 0 -set_eopts_on_pkg_status ${KPKG} crosscompile_opts_headers-only -USE="${KUSE} ${USE}" CROSSCOMPILE_OPTS="" \ - doemerge ${KPKG} - -is_s3 || exit 0 -[[ -z ${LPKG} ]] && die "Invalid target '${CTARGET}': unknown libc" -set_eopts_on_pkg_status ${LPKG} crosscompile_opts_headers-only -USE="${LUSE} ${USE}" CROSSCOMPILE_OPTS="" \ - doemerge ${LPKG} - -is_s4 || exit 0 -set_eopts_on_pkg_status ${GPKG} crosscompile_opts_bootstrap -EOPTS="${EOPTS_UP} --newuse" -USE="${GUSE} ${USE} ${GUSE_DISABLE_STAGE_2}" \ - doemerge ${GPKG} ${GPKG}-stage2 - -} - -EOPTS="${EOPTS_UP} --newuse" -ex_gcc && USE="${GUSE} ${USE}" doemerge ${GPKG} ${GPKG}-extra -ex_gdb && doemerge gdb -ex_insight && doemerge insight - -exit 0 -- cgit v1.2.3-65-gdbad