From patchwork Fri Feb 10 22:47:16 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Romain Naour X-Patchwork-Id: 1740743 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=2605:bc80:3010::136; helo=smtp3.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=) Received: from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4PD87R47wXz23qt for ; Sat, 11 Feb 2023 09:49:39 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id D225D61200; Fri, 10 Feb 2023 22:49:37 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org D225D61200 X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id uUQnF3oMUiz1; Fri, 10 Feb 2023 22:49:36 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp3.osuosl.org (Postfix) with ESMTP id 59D9061234; Fri, 10 Feb 2023 22:49:35 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org 59D9061234 X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by ash.osuosl.org (Postfix) with ESMTP id 1974A1BF973 for ; Fri, 10 Feb 2023 22:47:36 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id E7798401B2 for ; Fri, 10 Feb 2023 22:47:35 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org E7798401B2 X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XjhytCEvbcI7 for ; Fri, 10 Feb 2023 22:47:33 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 1913A40AF7 Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [IPv6:2a00:1450:4864:20::436]) by smtp2.osuosl.org (Postfix) with ESMTPS id 1913A40AF7 for ; Fri, 10 Feb 2023 22:47:33 +0000 (UTC) Received: by mail-wr1-x436.google.com with SMTP id bu23so6526097wrb.8 for ; Fri, 10 Feb 2023 14:47:33 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wu/UrhUC0tG/8ea3z6ZFnjSt44iYOUCJETDr1/Iqtyk=; b=pR5pqfRMOTl5dgaIsEJMWSNNhWuFzoDzI5uG0dQoEmBrrtFRtiaoQn9+bY7aa0zFhB a4v5s8oObx9G7DPouysjtK6BSASDzeGZDddqpwJMQzINEUOGpluk7SpJK0CxxTBHDUqn EZtrAgPOMdtQNIea0yGYnhDh5g0qO+jrLOj+/mFcMfTWMzCYnsNqox6uLG9/6Oq/+lq3 kEjRdnXfuuaDqgb0tXi0NlNYOSC3YSzaChivv9FeJy63xuZ3L/ryWVQb6SwJju0UHFPr m05Bp92vvRhS3NNqOUsvPwACW96DlNGDwE+2sWcBLKwuehoKOUgTb4yKvjlgnQtmHreG hZXw== X-Gm-Message-State: AO0yUKVuz9hoKMbPel7pTEddHfH4UJhjDUdxpS9XG9Api9Z2iKSOeXQm r+YSepr40RGtUSU8ZpuSIxo7VHY8gPpDSjOx X-Google-Smtp-Source: AK7set9RVGGN50nSpi1Q8GIhToDMmjITc+ldveK0kljqtdQqkTxtTRouUW2Z89LYdx24Q+cqQK5M1A== X-Received: by 2002:adf:efcf:0:b0:2c3:e2c6:ff4b with SMTP id i15-20020adfefcf000000b002c3e2c6ff4bmr5698353wrp.29.1676069252517; Fri, 10 Feb 2023 14:47:32 -0800 (PST) Received: from localhost.localdomain (2a01cb05945b7e009bdc688723a24f31.ipv6.abo.wanadoo.fr. [2a01:cb05:945b:7e00:9bdc:6887:23a2:4f31]) by smtp.gmail.com with ESMTPSA id t9-20020adfeb89000000b002be0b1e556esm4576128wrn.59.2023.02.10.14.47.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 10 Feb 2023 14:47:32 -0800 (PST) From: Romain Naour To: buildroot@buildroot.org Date: Fri, 10 Feb 2023 23:47:16 +0100 Message-Id: <20230210224717.3293906-10-romain.naour@smile.fr> X-Mailer: git-send-email 2.34.3 In-Reply-To: <20230210224717.3293906-1-romain.naour@smile.fr> References: <20230210224717.3293906-1-romain.naour@smile.fr> MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=smile-fr.20210112.gappssmtp.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=wu/UrhUC0tG/8ea3z6ZFnjSt44iYOUCJETDr1/Iqtyk=; b=kZ58OpCOpmZ7zhTfDS2JOVMt/Al171thfRa3uKtF0Ip6d1grSOuBR1pYC1WhdEswc3 bhdKfiit2dKpsvjsRh0pzbIKgOiBEqtd+c8cvUGQmhf/ibkfnMb47ajme4KFgA/47vZv dY+7MrVj1bbSAwErdt9fzD0IbKmN14dVM8BhD/BqfdPExlbXMopjku8MGLG4HpcjDT34 gcrm4uSSF2RJjl4hos98UdWm4npzTz1SET1jpby/B3NIwi2kSdUuw4lctGWXY7g7agZR xkjBAybs2tQ8cJpFyMU3aGK3WyWDAOffVLg7ahV/tZMyuEd92CXvDILK5S7vLf1WTnLo V1gA== X-Mailman-Original-Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key) header.d=smile-fr.20210112.gappssmtp.com header.i=@smile-fr.20210112.gappssmtp.com header.a=rsa-sha256 header.s=20210112 header.b=kZ58OpCO Subject: [Buildroot] [PATCH v3 09/10] package/llvm-project: bump to version 15.0.3 X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Lang Daniel , Romain Naour Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" From: Lang Daniel - Add new build dependencies to lld and llvm - Add host-gcc and gcc >= 7.x dependency since clang doesn't build with gcc 6.3 [ 28%] Building CXX object utils/TableGen/CMakeFiles/obj.clang-tblgen.dir/TableGen.cpp.o output/build/host-clang-15.0.3/utils/TableGen/RISCVVEmitter.cpp: In instantiation of ‘{anonymous}::SemaSignatureTable::init(llvm::ArrayRef<{anonymous}::SemaRecord>):: [with auto:2 = const llvm::SmallVector]’: /usr/include/c++/6/bits/stl_algo.h:3769:5: required from ‘_Funct std::for_each(_IIter, _IIter, _Funct) [with _IIter = std::_Rb_tree_const_iterator >; _Funct = {anonymous}::SemaSignatureTable::init(llvm::ArrayRef<{anonymous}::SemaRecord>)::]’ output/host/include/llvm/ADT/STLExtras.h:1611:23: required from ‘UnaryFunction llvm::for_each(R&&, UnaryFunction) [with R = std::set, {anonymous}::SemaSignatureTable::init(llvm::ArrayRef<{anonymous}::SemaRecord>)::Compare>&; UnaryFunction = {anonymous}::SemaSignatureTable::init(llvm::ArrayRef<{anonymous}::SemaRecord>)::]’ output/build/host-clang-15.0.3/utils/TableGen/RISCVVEmitter.cpp:249:64: required from here output/build/host-clang-15.0.3/utils/TableGen/RISCVVEmitter.cpp:249:50: error: cannot call member function ‘void {anonymous}::SemaSignatureTable::insert(llvm::ArrayRef)’ without object llvm::for_each(Signatures, [this](auto &Sig) { insert(Sig); }); ^~~~~~ utils/TableGen/CMakeFiles/obj.clang-tblgen.dir/build.make:313: recipe for target 'utils/TableGen/CMakeFiles/obj.clang-tblgen.dir/RISCVVEmitter.cpp.o' failed make[4]: *** [utils/TableGen/CMakeFiles/obj.clang-tblgen.dir/RISCVVEmitter.cpp.o] Error 1 Indeed LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN is OFF, the CheckCompilerVersion.cmake trigger an error if gcc < 7.x. Indded since llvm 15 this option check for C++17 [1] The last gcc 7.x version (7.5) has been released in 2019. Fixing llvm/clang issues for old compiler maybe it's not worth it. [1] https://github.com/llvm/llvm-project/commit/4c72deb613d9d8838785b431facb3eb480fb2f51 - Remove LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN since gcc >= 7 is mendatory. Signed-off-by: Daniel Lang Signed-off-by: Romain Naour --- v3: - add libclc bump - llvm, clang, lld, mesa3d (llvm): add gcc >= 7.x dependency Changes v1 -> v2: - Bump to 15.0.3 instead of 15.0.1 - llvm: use CMAKE_HOST_C_COMPILER instead of HOSTCC --- package/llvm-project/clang/Config.in | 10 ++++---- package/llvm-project/clang/clang.hash | 2 +- package/llvm-project/clang/clang.mk | 8 +------ package/llvm-project/compiler-rt/Config.in | 6 ++--- .../llvm-project/compiler-rt/compiler-rt.hash | 2 +- .../llvm-project/compiler-rt/compiler-rt.mk | 3 ++- package/llvm-project/libclc/Config.in | 6 ++--- package/llvm-project/libclc/libclc.hash | 2 +- package/llvm-project/libclc/libclc.mk | 2 +- package/llvm-project/lld/Config.in.host | 6 ++--- package/llvm-project/lld/lld.hash | 2 +- package/llvm-project/lld/lld.mk | 8 +------ package/llvm-project/llvm-cmake/llvm-cmake.mk | 2 +- .../llvm-libunwind/llvm-libunwind.mk | 2 +- package/llvm-project/llvm-project.mk | 4 ++-- .../llvm/0001-nfc-Fix-missing-include.patch | 24 ------------------- package/llvm-project/llvm/Config.in | 10 ++++---- package/llvm-project/llvm/llvm.hash | 2 +- package/llvm-project/llvm/llvm.mk | 22 +++++++++-------- package/mesa3d/Config.in | 10 ++++---- 20 files changed, 50 insertions(+), 83 deletions(-) delete mode 100644 package/llvm-project/llvm/0001-nfc-Fix-missing-include.patch diff --git a/package/llvm-project/clang/Config.in b/package/llvm-project/clang/Config.in index e4d455781e..2e23888720 100644 --- a/package/llvm-project/clang/Config.in +++ b/package/llvm-project/clang/Config.in @@ -1,13 +1,13 @@ config BR2_PACKAGE_CLANG bool "clang" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::shared_future depends on !BR2_STATIC_LIBS depends on BR2_USE_WCHAR # std::wstring - depends on BR2_HOST_GCC_AT_LEAST_5 + depends on BR2_HOST_GCC_AT_LEAST_7 select BR2_PACKAGE_LLVM help Clang is a C/C++, Objective C/C++ and OpenCL C front-end @@ -15,12 +15,12 @@ config BR2_PACKAGE_CLANG http://clang.llvm.org -comment "clang needs a toolchain w/ wchar, threads, C++, gcc >= 5, dynamic library, host gcc >= 5" +comment "clang needs a toolchain w/ wchar, threads, C++, gcc >= 7, dynamic library, host gcc >= 7" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_GCC_AT_LEAST_5 \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_7 \ || BR2_STATIC_LIBS || !BR2_USE_WCHAR \ - || !BR2_HOST_GCC_AT_LEAST_5 + || !BR2_HOST_GCC_AT_LEAST_7 comment "clang needs a toolchain not affected by GCC bug 64735" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS diff --git a/package/llvm-project/clang/clang.hash b/package/llvm-project/clang/clang.hash index 0136b80664..52c755cfb3 100644 --- a/package/llvm-project/clang/clang.hash +++ b/package/llvm-project/clang/clang.hash @@ -1,3 +1,3 @@ # locally calculated -sha256 0a8288f065d1f57cb6d96da4d2965cbea32edc572aa972e466e954d17148558b clang-11.1.0.src.tar.xz +sha256 96036052694e703d159c995bda203b59d1ff185c6879189b9eba837726e1738c clang-15.0.3.src.tar.xz sha256 ebcd9bbf783a73d05c53ba4d586b8d5813dcdf3bbec50265860ccc885e606f47 LICENSE.TXT diff --git a/package/llvm-project/clang/clang.mk b/package/llvm-project/clang/clang.mk index 0943e21a8c..0bafd6461b 100644 --- a/package/llvm-project/clang/clang.mk +++ b/package/llvm-project/clang/clang.mk @@ -17,13 +17,6 @@ CLANG_INSTALL_STAGING = YES HOST_CLANG_DEPENDENCIES = host-llvm host-libxml2 CLANG_DEPENDENCIES = llvm host-clang -# LLVM >= 9.0 will soon require C++14 support, building llvm 8.x using a -# toolchain using gcc < 5.1 gives an error but actually still works. Setting -# this option makes it still build with gcc >= 4.8. -# https://reviews.llvm.org/D57264 -HOST_CLANG_CONF_OPTS += -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=ON -CLANG_CONF_OPTS += -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=ON - # This option is needed, otherwise multiple shared libs # (libclangAST.so, libclangBasic.so, libclangFrontend.so, etc.) will # be generated. As a final shared lib containing all these components @@ -62,6 +55,7 @@ CLANG_CONF_OPTS += \ HOST_CLANG_CONF_OPTS += -DLLVM_DIR=$(HOST_DIR)/lib/cmake/llvm \ -DCLANG_DEFAULT_LINKER=$(TARGET_LD) CLANG_CONF_OPTS += -DLLVM_DIR=$(STAGING_DIR)/usr/lib/cmake/llvm \ + -DCMAKE_MODULE_PATH=$(HOST_DIR)/lib/cmake/llvm \ -DCLANG_TABLEGEN:FILEPATH=$(HOST_DIR)/bin/clang-tblgen \ -DLLVM_TABLEGEN_EXE:FILEPATH=$(HOST_DIR)/bin/llvm-tblgen diff --git a/package/llvm-project/compiler-rt/Config.in b/package/llvm-project/compiler-rt/Config.in index 02169b66c0..e8f2ac4201 100644 --- a/package/llvm-project/compiler-rt/Config.in +++ b/package/llvm-project/compiler-rt/Config.in @@ -2,7 +2,7 @@ config BR2_PACKAGE_COMPILER_RT bool "compiler-rt" depends on BR2_PACKAGE_LLVM depends on BR2_TOOLCHAIN_USES_GLIBC # asan lib requires - depends on BR2_HOST_GCC_AT_LEAST_5 # host-clang + depends on BR2_HOST_GCC_AT_LEAST_7 # host-clang help A collection of runtime libraries primarily used by clang and llvm to provide builtins, sanitizer runtimes, and profiling @@ -10,6 +10,6 @@ config BR2_PACKAGE_COMPILER_RT https://compiler-rt.llvm.org/ -comment "compiler-rt requires llvm to be enabled, a glibc toolchain, host gcc >= 5" +comment "compiler-rt requires llvm to be enabled, a glibc toolchain, host gcc >= 7" depends on !BR2_PACKAGE_LLVM - depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_HOST_GCC_AT_LEAST_5 + depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_HOST_GCC_AT_LEAST_7 diff --git a/package/llvm-project/compiler-rt/compiler-rt.hash b/package/llvm-project/compiler-rt/compiler-rt.hash index 8ee010ac5a..fe4e98164b 100644 --- a/package/llvm-project/compiler-rt/compiler-rt.hash +++ b/package/llvm-project/compiler-rt/compiler-rt.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 def1fc00c764cd3abbba925c712ac38860a756a43b696b291f46fee09e453274 compiler-rt-11.1.0.src.tar.xz +sha256 db958eee92d1571d8b7f76c1be8513817f1a888dcf6ced88aca871acfb0eeddd compiler-rt-15.0.3.src.tar.xz sha256 1a8f1058753f1ba890de984e48f0242a3a5c29a6a8f2ed9fd813f36985387e8d LICENSE.TXT diff --git a/package/llvm-project/compiler-rt/compiler-rt.mk b/package/llvm-project/compiler-rt/compiler-rt.mk index 84add60801..026650c7c8 100644 --- a/package/llvm-project/compiler-rt/compiler-rt.mk +++ b/package/llvm-project/compiler-rt/compiler-rt.mk @@ -17,7 +17,8 @@ COMPILER_RT_INSTALL_TARGET = NO COMPILER_RT_CONF_OPTS=-DCOMPILER_RT_STANDALONE_BUILD=OFF \ -DCOMPILER_RT_STANDALONE_BUILD=ON \ -DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=$(GNU_TARGET_NAME) \ - -DLLVM_CONFIG_PATH=$(HOST_DIR)/bin/llvm-config + -DLLVM_CONFIG_PATH=$(HOST_DIR)/bin/llvm-config \ + -DCMAKE_MODULE_PATH=$(HOST_DIR)/lib/cmake/llvm # The installation of the target runtime libraries defaults to DESTDIR, however # host-clang resources directory needs a link so Clang can find the runtime diff --git a/package/llvm-project/libclc/Config.in b/package/llvm-project/libclc/Config.in index 938933fdd3..85eb888578 100644 --- a/package/llvm-project/libclc/Config.in +++ b/package/llvm-project/libclc/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_LIBCLC bool "libclc" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS - depends on BR2_HOST_GCC_AT_LEAST_5 # host-llvm + depends on BR2_HOST_GCC_AT_LEAST_7 # host-llvm help libclc is an open source, BSD licensed implementation of the library requirements of the OpenCL C programming language, @@ -9,6 +9,6 @@ config BR2_PACKAGE_LIBCLC http://libclc.llvm.org/ -comment "libclc needs host gcc >= 5" +comment "libclc needs host gcc >= 7" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS - depends on !BR2_HOST_GCC_AT_LEAST_5 + depends on !BR2_HOST_GCC_AT_LEAST_7 diff --git a/package/llvm-project/libclc/libclc.hash b/package/llvm-project/libclc/libclc.hash index c496291d81..7140884f6c 100644 --- a/package/llvm-project/libclc/libclc.hash +++ b/package/llvm-project/libclc/libclc.hash @@ -1,3 +1,3 @@ # locally calculated -sha256 8f0213e52e2fcaca3dfcc438f05d0e15e9b3c96fd6b0994a802b267dc1047a1d libclc-13.0.1.src.tar.xz +sha256 07e8a2b31e07a8cc8a976a6bfd87797d2543d5a9530f449755bf5119acbdbe8e libclc-15.0.3.src.tar.xz sha256 3c536c052db9afd997809e38785c9f2a9e54e2892330fa7c5b438e18a7413479 LICENSE.TXT diff --git a/package/llvm-project/libclc/libclc.mk b/package/llvm-project/libclc/libclc.mk index 406adfdb53..9f303d6d2f 100644 --- a/package/llvm-project/libclc/libclc.mk +++ b/package/llvm-project/libclc/libclc.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBCLC_VERSION = 13.0.1 +LIBCLC_VERSION = $(LLVM_PROJECT_VERSION) LIBCLC_SITE = $(LLVM_PROJECT_SITE) LIBCLC_SOURCE = libclc-$(LIBCLC_VERSION).src.tar.xz LIBCLC_LICENSE = Apache-2.0 with exceptions or MIT diff --git a/package/llvm-project/lld/Config.in.host b/package/llvm-project/lld/Config.in.host index d015fdd520..3bed364a79 100644 --- a/package/llvm-project/lld/Config.in.host +++ b/package/llvm-project/lld/Config.in.host @@ -1,7 +1,7 @@ config BR2_PACKAGE_HOST_LLD bool "host lld" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS # llvm - depends on BR2_HOST_GCC_AT_LEAST_5 # host-llvm + depends on BR2_HOST_GCC_AT_LEAST_7 # host-llvm help LLD is a linker from the LLVM project that is a drop-in replacement for system linkers, and runs much faster than @@ -10,6 +10,6 @@ config BR2_PACKAGE_HOST_LLD https://lld.llvm.org/ -comment "host lld needs host gcc >= 5" +comment "host lld needs host gcc >= 7" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS - depends on !BR2_HOST_GCC_AT_LEAST_5 + depends on !BR2_HOST_GCC_AT_LEAST_7 diff --git a/package/llvm-project/lld/lld.hash b/package/llvm-project/lld/lld.hash index 6d56ffcaab..2d2598dbeb 100644 --- a/package/llvm-project/lld/lld.hash +++ b/package/llvm-project/lld/lld.hash @@ -1,3 +1,3 @@ # locally calculated -sha256 017a788cbe1ecc4a949abf10755870519086d058a2e99f438829aef24f0c66ce lld-11.1.0.src.tar.xz +sha256 cd5d0894a74b957ce78d62212c1df0b3876a7297593aaece6b0512285e3b8732 lld-15.0.3.src.tar.xz sha256 f7891568956e34643eb6a0db1462db30820d40d7266e2a78063f2fe233ece5a0 LICENSE.TXT diff --git a/package/llvm-project/lld/lld.mk b/package/llvm-project/lld/lld.mk index 46ec3b13ff..539dd0bd71 100644 --- a/package/llvm-project/lld/lld.mk +++ b/package/llvm-project/lld/lld.mk @@ -10,13 +10,7 @@ LLD_SOURCE = lld-$(LLD_VERSION).src.tar.xz LLD_LICENSE = Apache-2.0 with exceptions LLD_LICENSE_FILES = LICENSE.TXT LLD_SUPPORTS_IN_SOURCE_BUILD = NO -HOST_LLD_DEPENDENCIES = host-llvm - -# LLVM > 9.0 will soon require C++14 support, building llvm <= 9.0 using a -# toolchain using gcc < 5.1 gives an error but actually still works. Setting -# this option makes it still build with gcc >= 4.8. -# https://reviews.llvm.org/D57264 -HOST_LLD_CONF_OPTS += -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=ON +HOST_LLD_DEPENDENCIES = host-llvm host-llvm-libunwind # build as static libs as is done in llvm & clang HOST_LLD_CONF_OPTS += -DBUILD_SHARED_LIBS=OFF diff --git a/package/llvm-project/llvm-cmake/llvm-cmake.mk b/package/llvm-project/llvm-cmake/llvm-cmake.mk index b305797891..33b6ba8339 100644 --- a/package/llvm-project/llvm-cmake/llvm-cmake.mk +++ b/package/llvm-project/llvm-cmake/llvm-cmake.mk @@ -4,7 +4,7 @@ # ################################################################################ -LLVM_CMAKE_VERSION = 15.0.3 +LLVM_CMAKE_VERSION = $(LLVM_PROJECT_VERSION) LLVM_CMAKE_SITE = $(LLVM_PROJECT_SITE) LLVM_CMAKE_SOURCE = cmake-$(LLVM_CMAKE_VERSION).src.tar.xz LLVM_CMAKE_LICENSE = Apache-2.0 with exceptions diff --git a/package/llvm-project/llvm-libunwind/llvm-libunwind.mk b/package/llvm-project/llvm-libunwind/llvm-libunwind.mk index 825e1beac0..be9965a49a 100644 --- a/package/llvm-project/llvm-libunwind/llvm-libunwind.mk +++ b/package/llvm-project/llvm-libunwind/llvm-libunwind.mk @@ -4,7 +4,7 @@ # ################################################################################ -LLVM_LIBUNWIND_VERSION = 15.0.3 +LLVM_LIBUNWIND_VERSION = $(LLVM_PROJECT_VERSION) LLVM_LIBUNWIND_SITE = $(LLVM_PROJECT_SITE) LLVM_LIBUNWIND_SOURCE = libunwind-$(LLVM_LIBUNWIND_VERSION).src.tar.xz LLVM_LIBUNWIND_LICENSE = Apache-2.0 with exceptions diff --git a/package/llvm-project/llvm-project.mk b/package/llvm-project/llvm-project.mk index 747a6f5647..5859ff7cfc 100644 --- a/package/llvm-project/llvm-project.mk +++ b/package/llvm-project/llvm-project.mk @@ -4,8 +4,8 @@ # ################################################################################ -LLVM_PROJECT_VERSION_MAJOR = 11 -LLVM_PROJECT_VERSION = $(LLVM_PROJECT_VERSION_MAJOR).1.0 +LLVM_PROJECT_VERSION_MAJOR = 15 +LLVM_PROJECT_VERSION = $(LLVM_PROJECT_VERSION_MAJOR).0.3 LLVM_PROJECT_SITE = https://github.com/llvm/llvm-project/releases/download/llvmorg-$(LLVM_PROJECT_VERSION) include $(sort $(wildcard package/llvm-project/*/*.mk)) diff --git a/package/llvm-project/llvm/0001-nfc-Fix-missing-include.patch b/package/llvm-project/llvm/0001-nfc-Fix-missing-include.patch deleted file mode 100644 index 62111ca138..0000000000 --- a/package/llvm-project/llvm/0001-nfc-Fix-missing-include.patch +++ /dev/null @@ -1,24 +0,0 @@ -From b498303066a63a203d24f739b2d2e0e56dca70d1 Mon Sep 17 00:00:00 2001 -From: serge-sans-paille -Date: Tue, 10 Nov 2020 14:55:25 +0100 -Subject: [PATCH] [nfc] Fix missing include - -[Retrieved (and backported) from: -https://github.com/llvm/llvm-project/commit/b498303066a63a203d24f739b2d2e0e56dca70d1] -Signed-off-by: Fabrice Fontaine ---- - llvm/utils/benchmark/src/benchmark_register.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/utils/benchmark/src/benchmark_register.h b/utils/benchmark/src/benchmark_register.h -index 0705e219f2fa2..4caa5ad4da079 100644 ---- a/utils/benchmark/src/benchmark_register.h -+++ b/utils/benchmark/src/benchmark_register.h -@@ -1,6 +1,7 @@ - #ifndef BENCHMARK_REGISTER_H - #define BENCHMARK_REGISTER_H - -+#include - #include - - #include "check.h" diff --git a/package/llvm-project/llvm/Config.in b/package/llvm-project/llvm/Config.in index d9d30a5ba5..ebb0fca66a 100644 --- a/package/llvm-project/llvm/Config.in +++ b/package/llvm-project/llvm/Config.in @@ -17,13 +17,13 @@ config BR2_PACKAGE_LLVM_TARGET_ARCH config BR2_PACKAGE_LLVM bool "llvm" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::shared_future depends on !BR2_STATIC_LIBS depends on BR2_USE_WCHAR # std::wstring - depends on BR2_HOST_GCC_AT_LEAST_5 # host-llvm + depends on BR2_HOST_GCC_AT_LEAST_7 # host-llvm help The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. @@ -59,12 +59,12 @@ config BR2_PACKAGE_LLVM_BPF endif -comment "llvm needs a toolchain w/ wchar, threads, C++, gcc >= 5, dynamic library, host gcc >= 5" +comment "llvm needs a toolchain w/ wchar, threads, C++, gcc >= 7, dynamic library, host gcc >= 7" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_GCC_AT_LEAST_5 \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_7 \ || BR2_STATIC_LIBS || !BR2_USE_WCHAR \ - || !BR2_HOST_GCC_AT_LEAST_5 + || !BR2_HOST_GCC_AT_LEAST_7 comment "llvm needs a toolchain not affected by GCC bug 64735" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS diff --git a/package/llvm-project/llvm/llvm.hash b/package/llvm-project/llvm/llvm.hash index e7f79492de..df9aa88411 100644 --- a/package/llvm-project/llvm/llvm.hash +++ b/package/llvm-project/llvm/llvm.hash @@ -1,3 +1,3 @@ # locally calculated -sha256 ce8508e318a01a63d4e8b3090ab2ded3c598a50258cc49e2625b9120d4c03ea5 llvm-11.1.0.src.tar.xz +sha256 c39aec729662416dcbf0bfe53a9786b34e7d93d02908a0779a2f6d83ad0a4a27 llvm-15.0.3.src.tar.xz sha256 8d85c1057d742e597985c7d4e6320b015a9139385cff4cbae06ffc0ebe89afee LICENSE.TXT diff --git a/package/llvm-project/llvm/llvm.mk b/package/llvm-project/llvm/llvm.mk index 1adad17b16..556a2f8c35 100644 --- a/package/llvm-project/llvm/llvm.mk +++ b/package/llvm-project/llvm/llvm.mk @@ -13,16 +13,16 @@ LLVM_CPE_ID_VENDOR = llvm LLVM_SUPPORTS_IN_SOURCE_BUILD = NO LLVM_INSTALL_STAGING = YES -# LLVM >= 9.0 can use python3 to build. -HOST_LLVM_DEPENDENCIES = host-python3 +HOST_LLVM_DEPENDENCIES = host-python3 host-llvm-cmake LLVM_DEPENDENCIES = host-llvm -# LLVM >= 9.0 will soon require C++14 support, building llvm 8.x using a -# toolchain using gcc < 5.1 gives an error but actually still works. Setting -# this option makes it still build with gcc >= 4.8. -# https://reviews.llvm.org/D57264 -HOST_LLVM_CONF_OPTS += -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=ON -LLVM_CONF_OPTS += -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=ON +# Path to cmake modules from host-llvm-cmake +HOST_LLVM_CONF_OPTS += -DCMAKE_MODULE_PATH=$(HOST_DIR)/lib/cmake/llvm +LLVM_CONF_OPTS += -DCMAKE_MODULE_PATH=$(HOST_DIR)/lib/cmake/llvm + +# Assembly files for x64 in lib/Support/BLAKE3 need to be compiled +# by a C compiler +HOST_LLVM_CONF_OPTS += -DCMAKE_ASM_COMPILER="$(CMAKE_HOST_C_COMPILER)" # Don't build clang libcxx libcxxabi lldb compiler-rt lld polly as llvm subprojects # This flag assumes that projects are checked out side-by-side and not nested @@ -259,7 +259,8 @@ HOST_LLVM_CONF_OPTS += \ -DLLVM_INCLUDE_EXAMPLES=OFF \ -DLLVM_INCLUDE_DOCS=OFF \ -DLLVM_INCLUDE_GO_TESTS=OFF \ - -DLLVM_INCLUDE_TESTS=OFF + -DLLVM_INCLUDE_TESTS=OFF \ + -DLLVM_INCLUDE_BENCHMARKS=OFF LLVM_CONF_OPTS += \ -DLLVM_BUILD_EXAMPLES=OFF \ -DLLVM_BUILD_DOCS=OFF \ @@ -270,7 +271,8 @@ LLVM_CONF_OPTS += \ -DLLVM_INCLUDE_EXAMPLES=OFF \ -DLLVM_INCLUDE_DOCS=OFF \ -DLLVM_INCLUDE_GO_TESTS=OFF \ - -DLLVM_INCLUDE_TESTS=OFF + -DLLVM_INCLUDE_TESTS=OFF \ + -DLLVM_INCLUDE_BENCHMARKS=OFF # Copy llvm-config (host variant) to STAGING_DIR # llvm-config (host variant) returns include and lib directories diff --git a/package/mesa3d/Config.in b/package/mesa3d/Config.in index cae2161aa3..78b53fc248 100644 --- a/package/mesa3d/Config.in +++ b/package/mesa3d/Config.in @@ -24,21 +24,21 @@ config BR2_PACKAGE_MESA3D_NEEDS_ELFUTILS config BR2_PACKAGE_MESA3D_LLVM bool "llvm support" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::shared_future depends on !BR2_STATIC_LIBS depends on BR2_USE_WCHAR # std::wstring - depends on BR2_HOST_GCC_AT_LEAST_5 # host-llvm + depends on BR2_HOST_GCC_AT_LEAST_7 # host-llvm select BR2_PACKAGE_LLVM -comment "llvm support needs a toolchain w/ wchar, threads, C++, gcc >= 5, dynamic library, host gcc >= 5" +comment "llvm support needs a toolchain w/ wchar, threads, C++, gcc >= 7, dynamic library, host gcc >= 7" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_GCC_AT_LEAST_5 \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_7 \ || BR2_STATIC_LIBS || !BR2_USE_WCHAR \ - || !BR2_HOST_GCC_AT_LEAST_5 + || !BR2_HOST_GCC_AT_LEAST_7 comment "llvm support needs a toolchain not affected by GCC bug 64735" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS