From patchwork Wed Nov 10 06:49:13 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Ford X-Patchwork-Id: 34379 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 72AAB27BBE3; Wed, 10 Nov 2021 06:58:14 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,FREEMAIL_FROM,HTML_MESSAGE,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,T_DKIM_INVALID,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id E868C27BBE1 for ; Wed, 10 Nov 2021 06:58:13 +0000 (GMT) Received: from localhost ([::1]:32992 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mkhYj-0003b4-42 for patchwork@mira.cbaines.net; Wed, 10 Nov 2021 01:58:13 -0500 Received: from eggs.gnu.org ([209.51.188.92]:35628) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mkhYY-0003a7-8a for guix-patches@gnu.org; Wed, 10 Nov 2021 01:58:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:53515) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mkhYY-0002zt-0A for guix-patches@gnu.org; Wed, 10 Nov 2021 01:58:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mkhYX-0001JU-TY for guix-patches@gnu.org; Wed, 10 Nov 2021 01:58:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#51743] [PATCH] cross-base: fix environment variables patch for GCC 10 Resent-From: Michael Ford Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 10 Nov 2021 06:58:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 51743 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 51743@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.16365274304978 (code B ref -1); Wed, 10 Nov 2021 06:58:01 +0000 Received: (at submit) by debbugs.gnu.org; 10 Nov 2021 06:57:10 +0000 Received: from localhost ([127.0.0.1]:36828 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mkhXi-0001IE-8N for submit@debbugs.gnu.org; Wed, 10 Nov 2021 01:57:10 -0500 Received: from lists.gnu.org ([209.51.188.17]:33228) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mkhXf-0001I6-Uf for submit@debbugs.gnu.org; Wed, 10 Nov 2021 01:57:09 -0500 Received: from eggs.gnu.org ([209.51.188.92]:35228) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mkhXf-0002Ut-Mi for guix-patches@gnu.org; Wed, 10 Nov 2021 01:57:07 -0500 Received: from [2a00:1450:4864:20::231] (port=46040 helo=mail-lj1-x231.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mkhXa-0002s7-1b for guix-patches@gnu.org; Wed, 10 Nov 2021 01:57:05 -0500 Received: by mail-lj1-x231.google.com with SMTP id u25so622628ljo.12 for ; Tue, 09 Nov 2021 22:57:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=u6rQfvcOatJ6C8ii+YRoIGBLbTF8DTuumLYR8cqO83c=; b=Ox39HJuIT9JEEyXs5a6a5A6jX4t3yrY0R+63WekKXRFR8eNgiGfqnyEnnipdb20o/5 tA9arTDhG4g1nKw4e4e8r7gAPT3KOTy28zhTchmY5hdOTrla+LBXkZD+yQi2Xr65fo2W Y9T/341WDzQir2EwlTb2Dra7cffu2bgV6D16OZAUBdrqufKFr60w63CHLWy9vREHz/0d TTtiyFXqDwklyKxywoLUjrv6uL58RWEkeOpj7MqQ6jrubVQ1k9DPQucXcU0B5YEVX8M8 ThZB9msP8LE+ej4ZntgTfq4Y9yRIGuWDpoVqWnaAFp9woqfS0gUGzzLbfyuDBQ9vVU3f Csqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=u6rQfvcOatJ6C8ii+YRoIGBLbTF8DTuumLYR8cqO83c=; b=asdSpor0VKIelhgFluIhbZ7aov7GhaJCg9TxH5oDEliY67vPoNT+1Jx89o2RL6OmQl wIoLJwZZ1o6pnEBbG2SqHr7mPGHvqPfc8p1TzBFWcC4W3crS0i1DQ46l9sbzAZVKqlt8 3vd6wgOjTUI3oH1o7hm5pYjIjCCiEtkVuNsDIzQw5COAc6EqCT3cvWyMWOiJjQJOIohA 6NqGNnqpMaE0w2Cc1JVwOCY+4RquwONZV+ODG4GbScIa0G5Ck1PMl8hUMPPwHUXRf9x1 fhGE6nhXIEAfTW4yrxuM96N4e11fReo99kXb6Por+cE2St373I2D0ezGgyxsPrR3lU7P /3iQ== X-Gm-Message-State: AOAM532wF4TC0gVNDFdZ2QleUu/sRbChhz0AkPgLdA9BucIaCsTiESGr EQiVJcYVGYN5/57OL/Tx+HyxOQ8F2IZg/khMv2s2P5zvDPbXZQ== X-Google-Smtp-Source: ABdhPJwDRVC1rXzoz5HThQZEbRLsE9G8o3znL8C5+7+qbzAvJxyPk/AGc7rP+hnfKbsj6hlxEamFKozuzRimzmyYiOU= X-Received: by 2002:a05:6000:1564:: with SMTP id 4mr17118034wrz.9.1636526963966; Tue, 09 Nov 2021 22:49:23 -0800 (PST) MIME-Version: 1.0 From: Michael Ford Date: Wed, 10 Nov 2021 14:49:13 +0800 Message-ID: X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a00:1450:4864:20::231 (failed) Received-SPF: pass client-ip=2a00:1450:4864:20::231; envelope-from=fanquake@gmail.com; helo=mail-lj1-x231.google.com X-Spam_score_int: -12 X-Spam_score: -1.3 X-Spam_bar: - X-Spam_report: (-1.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, PDS_HP_HELO_NORDNS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches --- gnu/packages/cross-base.scm | 2 + .../gcc-10-cross-environment-variables.patch | 54 +++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 gnu/packages/patches/gcc-10-cross-environment-variables.patch ++ + #endif /* ! GCC_SYSTEM_H */ diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm index 180594509b..0a93d0dc6d 100644 --- a/gnu/packages/cross-base.scm +++ b/gnu/packages/cross-base.scm @@ -243,6 +243,8 @@ (define* (cross-gcc target (append (origin-patches (package-source xgcc)) (append (cond + ((version>=? (package-version xgcc) "10.0") + (search-patches "gcc-10-cross-environment-variables.patch")) ((version>=? (package-version xgcc) "8.0") (search-patches "gcc-8-cross-environment-variables.patch")) ((version>=? (package-version xgcc) "6.0") diff --git a/gnu/packages/patches/gcc-10-cross-environment-variables.patch b/gnu/packages/patches/gcc-10-cross-environment-variables.patch new file mode 100644 index 0000000000..829bc583e9 --- /dev/null +++ b/gnu/packages/patches/gcc-10-cross-environment-variables.patch @@ -0,0 +1,54 @@ +Search path environment variables for cross-compilers. See the discussion +at . + +Note: Touch 'C_INCLUDE_PATH' et al. rather than 'CPATH', as discussed +at . + +diff --git a/gcc/gcc.c b/gcc/gcc.c +index 9f790db0daf..326aa52f46f 100644 +--- a/gcc/gcc.c ++++ b/gcc/gcc.c +@@ -4474,7 +4474,7 @@ process_command (unsigned int decoded_options_count, + } + + temp = env.get (LIBRARY_PATH_ENV); +- if (temp && *cross_compile == '0') ++ if (temp) + { + const char *startp, *endp; + char *nstore = (char *) alloca (strlen (temp) + 3); +diff --git a/gcc/incpath.c b/gcc/incpath.c +index 8a2bda00f80..4f740a6a4c3 100644 +--- a/gcc/incpath.c ++++ b/gcc/incpath.c +@@ -472,8 +472,8 @@ register_include_chains (cpp_reader *pfile, const char *sysroot, + int stdinc, int cxx_stdinc, int verbose) + { + static const char *const lang_env_vars[] = +- { "C_INCLUDE_PATH", "CPLUS_INCLUDE_PATH", +- "OBJC_INCLUDE_PATH", "OBJCPLUS_INCLUDE_PATH" }; ++ { "CROSS_C_INCLUDE_PATH", "CROSS_CPLUS_INCLUDE_PATH", ++ "CROSS_OBJC_INCLUDE_PATH", "CROSS_OBJCPLUS_INCLUDE_PATH" }; + cpp_options *cpp_opts = cpp_get_options (pfile); + size_t idx = (cpp_opts->objc ? 2: 0); + +@@ -484,7 +484,7 @@ register_include_chains (cpp_reader *pfile, const char *sysroot, + + /* CPATH and language-dependent environment variables may add to the + include chain. */ +- add_env_var_paths ("CPATH", INC_BRACKET); ++ add_env_var_paths ("CROSS_CPATH", INC_BRACKET); + add_env_var_paths (lang_env_vars[idx], INC_SYSTEM); + + target_c_incpath.extra_pre_includes (sysroot, iprefix, stdinc); +diff --git a/gcc/system.h b/gcc/system.h +index 263070169ab..14a819db28d 100644 +--- a/gcc/system.h ++++ b/gcc/system.h +@@ -1248,4 +1248,6 @@ void gcc_stablesort (void *, size_t, size_t, + of the number. */ + #define PRsa(n) "%" #n PRIu64 "%c" + ++#define LIBRARY_PATH_ENV "CROSS_LIBRARY_PATH"