From: "Mike Frysinger" <vapier@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/crossdev:master commit in: /
Date: Tue, 14 Feb 2012 20:24:50 +0000 (UTC) [thread overview]
Message-ID: <1326426870.dcc0180a31c46ea8a3cbe05e0bc5bd162e9ce015.vapier@gentoo> (raw)
commit: dcc0180a31c46ea8a3cbe05e0bc5bd162e9ce015
Author: Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 13 03:54:30 2012 +0000
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Fri Jan 13 03:54:30 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/crossdev.git;a=commit;h=dcc0180a
crossdev: make sure to always process extra pkgs
For targets which do not go through all stages (like arm-non-eabi), we
end up always exiting early before we get a chance to process the extra
stuff (like gdb). So allow the extra args to always be processed.
That's the only functional change here. The rest is finally using proper
if statements and indenting relevant blocks of code. It's grown too much
at this point to get away with the previous `foo && bar` logic.
Reported-by: David Hendricks <dhendrix <AT> google.com>
Signed-off-by: Mike Frysinger <vapier <AT> gentoo.org>
---
crossdev | 87 ++++++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 57 insertions(+), 30 deletions(-)
diff --git a/crossdev b/crossdev
index 35e2a6b..ed625ec 100755
--- a/crossdev
+++ b/crossdev
@@ -905,40 +905,67 @@ USE="${USE} -selinux"
# only allow UCLIBC_CPU from env, not from make.conf/profile
export UCLIBC_CPU=${UCLIBC_CPU}
-ex_fast || {
+if ! ex_fast ; then
+
+ # stage 0: binutils
+ doemerge ${BPKG}
+
+ # stage1: bare C compiler
+ if is_s1 ; then
+
+ # first install headers if requested
+ if with_headers ; then
+ # install kernel headers (since the C library often uses them)
+ USE="${KUSE} ${USE}" \
+ CROSSCOMPILE_OPTS="headers-only" \
+ doemerge ${KPKG} ${KPKG}-quick
+
+ if [[ -n ${LPKG} ]] ; then
+ # install C library headers
+ USE="${LUSE} ${USE}" \
+ CROSSCOMPILE_OPTS="headers-only" \
+ doemerge ${LPKG} ${LPKG}-headers
+ fi
+ fi
-doemerge ${BPKG}
+ # then finally get around to the C compiler
+ USE="${GUSE} ${USE} ${GUSE_DISABLE_STAGE_1}" \
+ CROSSCOMPILE_OPTS="bootstrap" \
+ doemerge ${GPKG} ${GPKG}-stage1
+ fi
-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_STAGE_1}" 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
+ # stage2: kernel headers
+ if is_s2 ; then
+ set_eopts_on_pkg_status ${KPKG} crosscompile_opts_headers-only
-}
+ USE="${KUSE} ${USE}" \
+ CROSSCOMPILE_OPTS="" \
+ doemerge ${KPKG}
+ fi
+
+ # stage3: full C library (headers/libs/etc...)
+ if is_s3 ; then
+ [[ -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}
+ fi
+
+ # stage4: full compiler (C/C++/etc...)
+ if is_s4 ; then
+ set_eopts_on_pkg_status ${GPKG} crosscompile_opts_bootstrap
+
+ EOPTS="${EOPTS_UP} --newuse"
+ USE="${GUSE} ${USE} ${GUSE_DISABLE_STAGE_2}" \
+ doemerge ${GPKG} ${GPKG}-stage2
+ fi
+
+fi
+# all the extra things (like debuggers)
EOPTS="${EOPTS_UP} --newuse"
ex_gcc && USE="${GUSE} ${USE}" doemerge ${GPKG} ${GPKG}-extra
ex_gdb && USE="${DUSE} ${USE}" doemerge ${DPKG}
next reply other threads:[~2012-02-14 20:25 UTC|newest]
Thread overview: 240+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-14 20:24 Mike Frysinger [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-02-03 17:14 [gentoo-commits] proj/crossdev:master commit in: / Mike Gilbert
2025-01-12 18:39 Sam James
2025-01-04 15:20 Sam James
2025-01-02 23:26 Sam James
2025-01-02 23:24 Sam James
2025-01-02 23:24 Sam James
2025-01-02 23:24 Sam James
2024-12-25 0:45 Sam James
2024-12-25 0:43 Sam James
2024-12-25 0:42 Sam James
2024-12-25 0:42 Sam James
2024-12-25 0:42 Sam James
2024-12-15 18:29 Sam James
2024-12-14 18:14 Sam James
2024-12-02 21:40 Sam James
2024-12-02 15:27 Sam James
2024-12-02 9:42 Sam James
2024-12-01 23:05 Sam James
2024-11-30 10:18 Sam James
2024-11-30 5:12 Sam James
2024-11-30 2:55 Sam James
2024-11-30 2:08 Sam James
2024-11-30 2:08 Sam James
2024-10-15 7:13 Sam James
2024-10-15 7:13 Sam James
2024-07-02 21:01 James Le Cuirot
2024-06-16 13:47 Luca Barbato
2024-05-07 16:06 Sam James
2024-05-07 13:04 Sam James
2024-05-07 13:01 Sam James
2024-05-04 11:57 Sam James
2024-05-04 11:52 Sam James
2024-05-04 11:52 Sam James
2024-05-04 11:52 Sam James
2024-05-04 11:48 Sam James
2024-05-04 11:48 Sam James
2024-01-26 9:31 Sam James
2024-01-17 4:51 Sam James
2023-09-26 18:30 Sam James
2023-09-23 12:26 Sam James
2023-08-31 1:32 Sam James
2023-08-31 1:15 Sam James
2023-03-21 22:41 Sam James
2023-02-25 1:14 Sam James
2023-02-02 17:40 Sam James
2023-02-02 17:40 Sam James
2023-01-14 17:58 Sam James
2022-12-28 15:17 Sam James
2022-12-28 15:17 Sam James
2022-11-18 17:57 Mike Gilbert
2022-11-18 17:57 Mike Gilbert
2022-07-09 3:45 Sam James
2022-07-09 3:45 Sam James
2022-07-09 3:45 Sam James
2022-05-02 23:19 Sam James
2022-04-24 16:30 Sam James
2022-04-19 20:25 Sam James
2022-03-17 23:42 Sam James
2022-03-06 2:08 Sam James
2022-02-20 2:19 Sam James
2022-02-11 22:53 Andreas K. Hüttel
2022-01-31 2:06 Sam James
2022-01-28 12:30 Mike Frysinger
2021-11-21 13:08 Sam James
2021-10-27 17:20 Mike Frysinger
2021-10-27 9:19 Mike Frysinger
2021-10-27 8:56 Mike Frysinger
2021-10-27 8:55 Mike Frysinger
2021-07-17 23:38 Sergei Trofimovich
2021-06-21 21:23 Sergei Trofimovich
2021-06-21 21:23 Sergei Trofimovich
2021-06-21 21:23 Sergei Trofimovich
2021-06-21 21:23 Sergei Trofimovich
2021-06-08 22:44 Sergei Trofimovich
2021-06-07 20:44 Sergei Trofimovich
2021-01-05 23:25 Sergei Trofimovich
2021-01-05 23:25 Sergei Trofimovich
2021-01-05 23:25 Sergei Trofimovich
2020-12-31 12:23 Sergei Trofimovich
2020-11-29 22:30 Sergei Trofimovich
2020-11-22 20:41 Sergei Trofimovich
2020-11-08 13:26 Sergei Trofimovich
2020-11-08 13:26 Sergei Trofimovich
2020-08-01 19:50 Sergei Trofimovich
2020-03-26 23:52 Sergei Trofimovich
2020-01-31 7:36 Sergei Trofimovich
2020-01-31 7:36 Sergei Trofimovich
2020-01-31 7:36 Sergei Trofimovich
2020-01-30 8:36 Sergei Trofimovich
2020-01-29 23:20 Sergei Trofimovich
2020-01-25 21:17 Sergei Trofimovich
2020-01-25 12:05 Sergei Trofimovich
2020-01-25 12:05 Sergei Trofimovich
2019-12-22 22:32 Sergei Trofimovich
2019-12-22 22:04 Sergei Trofimovich
2019-12-22 22:01 Sergei Trofimovich
2019-10-21 22:54 Sergei Trofimovich
2019-10-21 22:50 Sergei Trofimovich
2019-10-14 7:35 Sergei Trofimovich
2019-09-08 11:16 Sergei Trofimovich
2019-09-01 19:02 Sergei Trofimovich
2019-09-01 16:14 Sergei Trofimovich
2019-08-25 9:38 Sergei Trofimovich
2019-06-08 18:20 Sergei Trofimovich
2019-03-18 22:54 Sergei Trofimovich
2018-10-18 22:26 Sergei Trofimovich
2018-10-17 21:45 Sergei Trofimovich
2018-09-27 23:44 Jason Donenfeld
2018-09-18 22:44 Sergei Trofimovich
2018-08-18 15:42 Sergei Trofimovich
2018-07-24 23:44 Sergei Trofimovich
2018-05-08 21:40 Sergei Trofimovich
2018-04-10 7:15 Sergei Trofimovich
2018-04-09 20:46 Sergei Trofimovich
2018-04-07 15:57 Sergei Trofimovich
2018-04-07 11:21 Sergei Trofimovich
2018-04-07 10:56 Sergei Trofimovich
2018-04-07 7:27 Sergei Trofimovich
2018-04-05 22:16 Sergei Trofimovich
2018-03-02 22:32 Sergei Trofimovich
2018-02-03 9:39 Sergei Trofimovich
2018-01-20 12:37 Sergei Trofimovich
2018-01-07 20:15 Sergei Trofimovich
2018-01-05 23:27 Sergei Trofimovich
2017-12-30 21:21 Sergei Trofimovich
2017-12-30 17:41 Sergei Trofimovich
2017-12-30 17:41 Sergei Trofimovich
2017-12-30 14:52 Sergei Trofimovich
2017-12-30 14:46 Sergei Trofimovich
2017-12-29 20:44 Sergei Trofimovich
2017-12-28 17:47 Sergei Trofimovich
2017-12-27 18:10 Sergei Trofimovich
2017-12-12 21:35 Steve Arnold
2017-11-23 18:18 Steve Arnold
2017-11-21 23:01 Sergei Trofimovich
2017-11-21 22:13 Sergei Trofimovich
2017-11-19 23:03 Sergei Trofimovich
2017-10-24 17:38 Steve Arnold
2017-10-14 23:46 Steve Arnold
2017-10-14 23:46 Steve Arnold
2017-10-14 23:46 Steve Arnold
2017-10-13 17:56 Steve Arnold
2017-10-13 16:31 Steve Arnold
2017-10-13 16:31 Steve Arnold
2017-10-13 16:31 Steve Arnold
2017-10-13 16:31 Steve Arnold
2016-06-02 15:56 Mike Frysinger
2016-06-02 15:56 Mike Frysinger
2016-06-02 15:56 Mike Frysinger
2016-06-02 15:56 Mike Frysinger
2016-01-16 6:38 Mike Frysinger
2015-10-16 3:19 Mike Frysinger
2015-08-13 2:45 Mike Frysinger
2015-06-02 17:01 Mike Frysinger
2015-05-30 4:46 Mike Frysinger
2015-05-23 5:35 Mike Frysinger
2015-04-18 22:58 Mike Frysinger
2014-10-31 1:56 Mike Frysinger
2014-10-31 1:56 Mike Frysinger
2014-10-31 0:52 Mike Frysinger
2014-09-17 21:41 Mike Frysinger
2014-01-18 18:42 Mike Frysinger
2013-11-07 20:32 Mike Frysinger
2013-11-07 20:28 Mike Frysinger
2013-10-12 20:15 Mike Frysinger
2013-10-11 19:05 Mike Frysinger
2013-10-11 18:48 Mike Frysinger
2013-09-30 0:21 Mike Frysinger
2013-06-28 5:42 Mike Frysinger
2013-06-28 5:14 Mike Frysinger
2013-04-20 2:50 Mike Frysinger
2013-03-28 16:20 Mike Frysinger
2013-03-28 16:20 Mike Frysinger
2013-02-18 20:11 Mike Frysinger
2012-12-25 21:44 Mike Frysinger
2012-11-18 7:56 Mike Frysinger
2012-11-11 9:10 Mike Frysinger
2012-11-05 8:37 Mike Frysinger
2012-10-02 3:23 Mike Frysinger
2012-09-13 5:13 Mike Frysinger
2012-09-13 5:05 Mike Frysinger
2012-08-30 18:16 Mike Frysinger
2012-08-20 21:36 Mike Frysinger
2012-08-17 21:20 Mike Frysinger
2012-07-31 16:19 Mike Frysinger
2012-07-30 3:01 Mike Frysinger
2012-06-09 5:23 Mike Frysinger
2012-06-09 5:23 Mike Frysinger
2012-06-03 9:03 Mike Frysinger
2012-06-03 9:03 Mike Frysinger
2012-06-03 9:03 Mike Frysinger
2012-06-03 9:03 Mike Frysinger
2012-05-30 15:28 Mike Frysinger
2012-05-30 15:28 Mike Frysinger
2012-05-30 15:28 Mike Frysinger
2012-05-30 15:28 Mike Frysinger
2012-03-07 18:31 Mike Frysinger
2012-03-05 23:15 Mike Frysinger
2012-03-05 23:15 Mike Frysinger
2012-03-05 23:15 Mike Frysinger
2012-03-01 18:43 Mike Frysinger
2012-03-01 18:43 Mike Frysinger
2012-03-01 18:43 Mike Frysinger
2012-03-01 18:43 Mike Frysinger
2012-02-29 17:18 Mike Frysinger
2012-02-29 16:22 Mike Frysinger
2012-02-29 16:22 Mike Frysinger
2012-02-29 16:22 Mike Frysinger
2012-02-27 22:50 Mike Frysinger
2012-02-27 22:47 Mike Frysinger
2012-02-24 22:23 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2011-12-21 21:06 Mike Frysinger
2011-12-21 21:06 Mike Frysinger
2011-12-13 19:06 Mike Frysinger
2011-12-06 21:50 Mike Frysinger
2011-11-18 20:44 Mike Frysinger
2011-10-31 3:30 Mike Frysinger
2011-10-18 17:36 Mike Frysinger
2011-10-11 22:22 Mike Frysinger
2011-08-25 15:50 Mike Frysinger
2011-08-19 18:05 Mike Frysinger
2011-08-19 18:05 Mike Frysinger
2011-08-18 20:06 Mike Frysinger
2011-08-18 20:06 Mike Frysinger
2011-08-18 20:06 Mike Frysinger
2011-08-15 22:25 Mike Frysinger
2011-08-12 18:59 Mike Frysinger
2011-07-05 6:44 Mike Frysinger
2011-03-27 6:07 Mike Frysinger
2011-03-11 4:22 Mike Frysinger
2011-03-11 4:22 Mike Frysinger
2011-03-11 4:22 Mike Frysinger
2011-02-14 3:08 Mike Frysinger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1326426870.dcc0180a31c46ea8a3cbe05e0bc5bd162e9ce015.vapier@gentoo \
--to=vapier@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox