From patchwork Sat Jul 16 19:48:00 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Julien Lepiller X-Patchwork-Id: 40699 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 E982527BBEA; Sat, 16 Jul 2022 20:49:32 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 63ACF27BBE9 for ; Sat, 16 Jul 2022 20:49:32 +0100 (BST) Received: from localhost ([::1]:46470 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oCnn9-0004Sl-Gx for patchwork@mira.cbaines.net; Sat, 16 Jul 2022 15:49:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59888) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oCnmh-0004Ra-4u for guix-patches@gnu.org; Sat, 16 Jul 2022 15:49:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:48409) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oCnmg-0004gy-Sj for guix-patches@gnu.org; Sat, 16 Jul 2022 15:49:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oCnmg-0005IL-N9 for guix-patches@gnu.org; Sat, 16 Jul 2022 15:49:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#54239] [PATCH v3 03/10] gnu: llvm-9: Fix cross-compilation. Resent-From: Julien Lepiller Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 16 Jul 2022 19:49:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 54239 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 54239@debbugs.gnu.org Received: via spool by 54239-submit@debbugs.gnu.org id=B54239.165800090320228 (code B ref 54239); Sat, 16 Jul 2022 19:49:02 +0000 Received: (at 54239) by debbugs.gnu.org; 16 Jul 2022 19:48:23 +0000 Received: from localhost ([127.0.0.1]:46150 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oCnm2-0005G5-Ig for submit@debbugs.gnu.org; Sat, 16 Jul 2022 15:48:23 -0400 Received: from lepiller.eu ([89.234.186.109]:44374) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oCnly-0005FA-31 for 54239@debbugs.gnu.org; Sat, 16 Jul 2022 15:48:18 -0400 Received: from lepiller.eu (localhost [127.0.0.1]) by lepiller.eu (OpenSMTPD) with ESMTP id ad77a655 for <54239@debbugs.gnu.org>; Sat, 16 Jul 2022 19:48:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=lepiller.eu; h=from:to :subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; s=dkim; bh=KoD1RNKaxzM1fEhHOc6zFz8xz 3gonMoy+Vv8TB8cbaI=; b=fDL/7SzlgYeNN8fIpGoIIi7Bd8rRXe21kDoxkJkpy I9ISn9aEAjHFf++aV338aWa8B/AGqJ6k4vlRN2Q0FwmsaTN+Au/fcn33UOZpognj SqcsZWfiZY7FIN477MqkeZMVJhtLEswuHXTQHczRSL7JiPG/JkDg6kRYHLV7kAFE 9XVpRmkY5bdZ8kIXNiunftZLAAYYXDjVAP4vQFqJWHxXoqyiZ4aiZ2lkRCiJbWYI 7B1J8+cmlXiueEEjyQ6vKPm/gIa8Ahf9x1dwe2GeEOnW4GhAQYO6GoUbNXR3ed15 aND3e6eI/ocUE4rDuOrRKEEF+47dX0PmcpQRbAq1eOuGg== Received: by lepiller.eu (OpenSMTPD) with ESMTPSA id a77d80a1 (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO) for <54239@debbugs.gnu.org>; Sat, 16 Jul 2022 19:48:15 +0000 (UTC) From: Julien Lepiller Date: Sat, 16 Jul 2022 21:48:00 +0200 Message-Id: <20220716194807.20378-3-julien@lepiller.eu> X-Mailer: git-send-email 2.37.0 In-Reply-To: <20220716194807.20378-1-julien@lepiller.eu> References: <20220716214424.1d521d65@sybil.lepiller.eu> <20220716194807.20378-1-julien@lepiller.eu> MIME-Version: 1.0 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 `(package-arguments llvm-10)' evaluates `this-package' in the context of llvm-10. `llvm-tblgen' in llvm-10 is not compatible with llvm-9, so copy the configure-flags from llvm-12 to make sure `this-package' is evaluated here. * gnu/packages/llvm.scm (llvm-9)[arguments]: Fix cross-compilation. --- gnu/packages/llvm.scm | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 6428391650..2aec2925cf 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -973,7 +973,30 @@ (define-public llvm-9 "if (CMAKE_HOST_SYSTEM_PROCESSOR MATCHES \"riscv64\")\n" " target_link_libraries(dsymutil PRIVATE atomic)\n" "endif()")))))))) - (package-arguments llvm-10))))) + (substitute-keyword-arguments (package-arguments llvm-10) + ((#:configure-flags _) + #~(#$(if (%current-target-system) + #~quasiquote + #~quote) + ;; These options are required for cross-compiling LLVM according to + ;; https://llvm.org/docs/HowToCrossCompileLLVM.html. + (#$@(if (%current-target-system) + #~(,(string-append "-DLLVM_TABLEGEN=" + #+(file-append this-package + "/bin/llvm-tblgen")) + #$(string-append "-DLLVM_DEFAULT_TARGET_TRIPLE=" + (%current-target-system)) + #$(string-append "-DLLVM_TARGET_ARCH=" + (system->llvm-target)) + #$(string-append "-DLLVM_TARGETS_TO_BUILD=" + (system->llvm-target))) + #~()) + "-DCMAKE_SKIP_BUILD_RPATH=FALSE" + "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE" + "-DBUILD_SHARED_LIBS:BOOL=TRUE" + "-DLLVM_ENABLE_FFI:BOOL=TRUE" + "-DLLVM_REQUIRES_RTTI=1" ; For some third-party utilities + "-DLLVM_INSTALL_UTILS=ON")))))))) ; Needed for rustc. (define-public clang-runtime-9 (clang-runtime-from-llvm