From patchwork Thu Nov 22 22:57:05 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yann Diorcet X-Patchwork-Id: 201222 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id B91172C0086 for ; Fri, 23 Nov 2012 09:58:07 +1100 (EST) Comment: DKIM? See http://www.dkim.org DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=sourceware.org; s=default; x=1354229888; h=Comment: DomainKey-Signature:Received:Received:Received:Received:Received: Received:Content-Type:MIME-Version:Content-Transfer-Encoding: Subject:Message-Id:User-Agent:Date:From:To:Cc:Mailing-List: Precedence:List-Id:List-Unsubscribe:List-Subscribe:List-Archive: List-Post:List-Help:Sender:Delivered-To; bh=1D0JuJKDSIuV2AQw1v03 fC8p7II=; b=F7nkLfj6BCWOQSrNf6y4Tt5eZThA3n/vgK3JjL7vDDQ5streCHbU gB7yLYzmplJ+W9rbBbYkwReybsKwTxTNYty3F2ktmBs+eLoxOdCoC6TzlneZf1sD JCpPXzCnFzYS+lHcusGKpSuZdKQmfyk2RfRcacwbnCMCB/t5Y7EOj34= Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=sourceware.org; h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:Received:Received:Received:Content-Type:MIME-Version:Content-Transfer-Encoding:Subject:X-Mercurial-Node:Message-Id:User-Agent:Date:From:To:Cc:X-IsSubscribed:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Subscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=YhdD7BTIRm8xTF4YgKQIHgp3UaPbSB4fSAVN4MQvxVPu+g0LnDxDAzZageQy7C vc0tfjPrUscBg22oi+LT5TgD/K5jjA4/xxXt9Kn7uKGGgyAw4fNpMb84gatcQRGS 0FF6ct7aEVdXLJ4GpirZBbuuIh+rnIztRStwZgRT6Ygm0=; Received: (qmail 16367 invoked by alias); 22 Nov 2012 22:57:58 -0000 Received: (qmail 16351 invoked by uid 22791); 22 Nov 2012 22:57:56 -0000 X-SWARE-Spam-Status: No, hits=-4.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, KHOP_RCVD_TRUST, RCVD_IN_DNSWL_LOW, RCVD_IN_HOSTKARMA_YE X-Spam-Check-By: sourceware.org Received: from mail-wi0-f177.google.com (HELO mail-wi0-f177.google.com) (209.85.212.177) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 22 Nov 2012 22:57:11 +0000 Received: by mail-wi0-f177.google.com with SMTP id c10so825558wiw.12 for ; Thu, 22 Nov 2012 14:57:10 -0800 (PST) Received: by 10.180.99.5 with SMTP id em5mr3310791wib.8.1353625030560; Thu, 22 Nov 2012 14:57:10 -0800 (PST) Received: from [127.0.1.1] ([2a01:e35:2ec9:ab70:a00:27ff:fec3:c819]) by mx.google.com with ESMTPS id ec3sm6116711wib.10.2012.11.22.14.57.08 (version=TLSv1/SSLv3 cipher=OTHER); Thu, 22 Nov 2012 14:57:09 -0800 (PST) MIME-Version: 1.0 Subject: [PATCH] Added a flag for skipping core passes X-Mercurial-Node: 150eadb0117e697d79aa35cf523a5c851817e2db Message-Id: <150eadb0117e697d79aa.1353625025@blackmint> User-Agent: Mercurial-patchbomb/2.2.2 Date: Thu, 22 Nov 2012 23:57:05 +0100 From: Yann Diorcet To: "Yann E. MORIN" Cc: crossgcc@sourceware.org X-IsSubscribed: yes Mailing-List: contact crossgcc-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: crossgcc-owner@sourceware.org Delivered-To: mailing list crossgcc@sourceware.org # HG changeset patch # User Yann Diorcet # Date 1353625018 -3600 # Node ID 150eadb0117e697d79aa35cf523a5c851817e2db # Parent 2af20cfd210bac338ec18d774458c84fd585ef07 Added a flag for skipping core passes. It is used for skipping unnecessary compilation steps when the libc doesn't need to be compiled. cc: add CC_CORE_PASSES_NEEDED flag libc: all libc select CC_CORE_PASSES_NEEDED script: skip cc1 and cc2 if CT_CC_CORE_PASSES_NEEDED is selected Signed-off-by: Yann Diorcet --- For unsubscribe information see http://sourceware.org/lists.html#faq diff -r 2af20cfd210b -r 150eadb0117e config/cc.in --- a/config/cc.in Thu Nov 22 19:43:26 2012 +0100 +++ b/config/cc.in Thu Nov 22 23:56:58 2012 +0100 @@ -8,6 +8,9 @@ config CC_VERSION string +config CC_CORE_PASSES_NEEDED + bool + source "config.gen/cc.in" config CC_SUPPORT_CXX diff -r 2af20cfd210b -r 150eadb0117e config/libc/eglibc.in --- a/config/libc/eglibc.in Thu Nov 22 19:43:26 2012 +0100 +++ b/config/libc/eglibc.in Thu Nov 22 23:56:58 2012 +0100 @@ -4,6 +4,7 @@ ## ## select LIBC_SUPPORT_NPTL ## select LIBC_SUPPORT_LINUXTHREADS +## select CC_CORE_PASSES_NEEDED ## ## help EGLIBC (Embedded GLIBC) is a variant of the standard GNU GLIBC ## help that is designed to work well on embedded systems. EGLIBC strives diff -r 2af20cfd210b -r 150eadb0117e config/libc/glibc.in --- a/config/libc/glibc.in Thu Nov 22 19:43:26 2012 +0100 +++ b/config/libc/glibc.in Thu Nov 22 23:56:58 2012 +0100 @@ -3,6 +3,7 @@ ## depends on ! WINDOWS && ! BARE_METAL && ARCH_USE_MMU ## ## select LIBC_SUPPORT_NPTL +## select CC_CORE_PASSES_NEEDED ## ## help The de-facto standard for Linux distributions. ## help Feature-rich, but large... Most usefull for desktop-like systems. diff -r 2af20cfd210b -r 150eadb0117e config/libc/mingw.in --- a/config/libc/mingw.in Thu Nov 22 19:43:26 2012 +0100 +++ b/config/libc/mingw.in Thu Nov 22 23:56:58 2012 +0100 @@ -3,6 +3,7 @@ ## depends on WINDOWS ## ## select LIBC_SUPPORT_WIN32THREADS +## select CC_CORE_PASSES_NEEDED ## ## help The de-facto standard for Mingw distributions. diff -r 2af20cfd210b -r 150eadb0117e config/libc/newlib.in --- a/config/libc/newlib.in Thu Nov 22 19:43:26 2012 +0100 +++ b/config/libc/newlib.in Thu Nov 22 23:56:58 2012 +0100 @@ -3,6 +3,7 @@ ## depends on BARE_METAL ## ## select LIBC_SUPPORT_THREADS_NONE +## select CC_CORE_PASSES_NEEDED ## ## help Newlib is a C library intended for use on embedded systems. It is a ## help conglomeration of several library parts, all under free software diff -r 2af20cfd210b -r 150eadb0117e config/libc/uClibc.in --- a/config/libc/uClibc.in Thu Nov 22 19:43:26 2012 +0100 +++ b/config/libc/uClibc.in Thu Nov 22 23:56:58 2012 +0100 @@ -4,6 +4,7 @@ ## ## select LIBC_SUPPORT_LINUXTHREADS ## select LIBC_SUPPORT_THREADS_NONE +## select CC_CORE_PASSES_NEEDED ## ## help The de-facto standard for embeded linux systems. ## help diff -r 2af20cfd210b -r 150eadb0117e scripts/build/cc/gcc.sh --- a/scripts/build/cc/gcc.sh Thu Nov 22 19:43:26 2012 +0100 +++ b/scripts/build/cc/gcc.sh Thu Nov 22 23:56:58 2012 +0100 @@ -82,6 +82,10 @@ # Core gcc pass 1 do_cc_core_pass_1() { local -a core_opts + + if [ "${CT_CC_CORE_PASSES_NEEDED}" != "y" ]; then + return 0 + fi core_opts+=( "mode=static" ) core_opts+=( "host=${CT_BUILD}" ) @@ -103,6 +107,10 @@ # Core gcc pass 2 do_cc_core_pass_2() { local -a core_opts + + if [ "${CT_CC_CORE_PASSES_NEEDED}" != "y" ]; then + return 0 + fi # Common options: core_opts+=( "host=${CT_BUILD}" )