From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 09 05:13:05 2020 Received: (at 43679) by debbugs.gnu.org; 9 Oct 2020 09:13:05 +0000 Received: from localhost ([127.0.0.1]:34103 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kQoSX-00046C-1J for submit@debbugs.gnu.org; Fri, 09 Oct 2020 05:13:05 -0400 Received: from eggs.gnu.org ([209.51.188.92]:48808) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kQoST-00045P-CR for 43679@debbugs.gnu.org; Fri, 09 Oct 2020 05:13:03 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:57145) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kQoSN-0001jX-RF; Fri, 09 Oct 2020 05:12:55 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=56284 helo=gnu.org) by fencepost.gnu.org with esmtpsa (TLS1.2:DHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kQoSL-0001o4-AL; Fri, 09 Oct 2020 05:12:53 -0400 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= To: 43679@debbugs.gnu.org Subject: [PATCH v2 0/5] Add '--with-c-toolchain' Date: Fri, 9 Oct 2020 11:12:26 +0200 Message-Id: <20201009091231.26287-1-ludo@gnu.org> X-Mailer: git-send-email 2.28.0 In-Reply-To: <87mu17yzfn.fsf@inria.fr> References: <87mu17yzfn.fsf@inria.fr> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 43679 Cc: =?UTF-8?q?Ludovic=20Court=C3=A8s?= X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi! This is v2 of this patch, with these changes: 1. ‘with-toolchain’ is replaced by ‘with-c-toolchain’ everywhere, with the understanding that it’s about the C/C++ toolchain in practice. In the end I’m sympathetic with the argument that C/C++ don’t have a monopoly on toolchains. ;-) 2. ‘--with-c-toolchain=PACKAGE=TOOLCHAIN’ rebuilds not just PACKAGE with TOOLCHAIN, but also everything above PACKAGE with TOOLCHAIN (in v1, only PACKAGE was rebuilt with TOOLCHAIN but everything above it had to be rebuilt anyway.) The main motivation here is to reduce the changes that we’re introducing ABI incompatibilities that users would have to work around by passing on ‘--with-c-toolchain’ for each package in the chain. I think it also more closely matches user expectations: when you see things are being rebuilt, you’re likely to think that’s because they’re rebuilt with the new toolchain, not the default one. Feedback welcome! Ludo’. Ludovic Courtès (5): gnu: gcc-toolchain: Add 'GUIX_LOCPATH' to the search paths. gnu: clang-toolchain: Add 'GUIX_LOCPATH' to the search paths. gnu: clang-toolchain: Create 'cc' and 'c++' symlinks. packages: Add 'package-with-c-toolchain'. guix build: Add '--with-c-toolchain'. doc/guix.texi | 70 +++++++++++++++++++++++++++++ gnu/packages/commencement.scm | 8 +++- gnu/packages/llvm.scm | 12 ++++- guix/build-system.scm | 35 ++++++++++++++- guix/packages.scm | 9 ++++ guix/scripts/build.scm | 84 +++++++++++++++++++++++++++++++++++ tests/packages.scm | 20 +++++++++ tests/scripts-build.scm | 82 ++++++++++++++++++++++++++++++++++ 8 files changed, 315 insertions(+), 5 deletions(-) -- 2.28.0