From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id B625C138350 for ; Thu, 9 Apr 2020 21:37:21 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 4552EE08F6; Thu, 9 Apr 2020 21:37:20 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id D1B42E08F6 for ; Thu, 9 Apr 2020 21:37:19 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 9780234EDB5 for ; Thu, 9 Apr 2020 21:37:18 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 96A331D2 for ; Thu, 9 Apr 2020 21:37:15 +0000 (UTC) From: "Andreas Sturmlechner" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Andreas Sturmlechner" Message-ID: <1586468184.014cfb8ff4491f6122312b8f2ba11eda28427af5.asturm@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/clazy/files/, dev-util/clazy/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-util/clazy/clazy-1.6-r1.ebuild dev-util/clazy/files/clazy-1.6-llvm-10.patch X-VCS-Directories: dev-util/clazy/files/ dev-util/clazy/ X-VCS-Committer: asturm X-VCS-Committer-Name: Andreas Sturmlechner X-VCS-Revision: 014cfb8ff4491f6122312b8f2ba11eda28427af5 X-VCS-Branch: master Date: Thu, 9 Apr 2020 21:37:15 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 29bcb7fa-533c-495b-9678-742db1a5eadd X-Archives-Hash: ace65f2e787da9c67a98537c3506062a commit: 014cfb8ff4491f6122312b8f2ba11eda28427af5 Author: Andreas Sturmlechner gentoo org> AuthorDate: Thu Apr 9 15:58:13 2020 +0000 Commit: Andreas Sturmlechner gentoo org> CommitDate: Thu Apr 9 21:36:24 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=014cfb8f dev-util/clazy: Fix build with >=sys-devel/clang-10 Closes: https://bugs.gentoo.org/711642 Package-Manager: Portage-2.3.98, Repoman-2.3.22 Signed-off-by: Andreas Sturmlechner gentoo.org> dev-util/clazy/clazy-1.6-r1.ebuild | 50 +++++++++++++++++++ dev-util/clazy/files/clazy-1.6-llvm-10.patch | 75 ++++++++++++++++++++++++++++ 2 files changed, 125 insertions(+) diff --git a/dev-util/clazy/clazy-1.6-r1.ebuild b/dev-util/clazy/clazy-1.6-r1.ebuild new file mode 100644 index 00000000000..075782027ed --- /dev/null +++ b/dev-util/clazy/clazy-1.6-r1.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake + +DESCRIPTION="Compiler plugin which allows clang to understand Qt semantics" +HOMEPAGE="https://cgit.kde.org/clazy.git/tree/README.md" +SRC_URI="mirror://kde/stable/${PN}/${PV}/src/${P}.tar.xz" + +LICENSE="LGPL-2+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="" + +RDEPEND=" + >=sys-devel/llvm-3.8:= +" +DEPEND="${RDEPEND}" + +DOCS=( README.md ) + +PATCHES=( "${FILESDIR}/${P}-llvm-10.patch" ) + +src_prepare() { + cmake_src_prepare + + sed -e '/install(FILES README.md COPYING-LGPL2.txt checks.json DESTINATION/d' \ + -i CMakeLists.txt || die + + sed -e 's|${MAN_INSTALL_DIR}|share/man/man1|' \ + -i docs/man/CMakeLists.txt || die +} + +src_configure() { + # this package requires both llvm and clang of the same version. + # clang pulls in the equivalent llvm version, but not vice versa. + # so, we must find llvm based on the installed clang version. + # bug #681568 + local clang_version=$(best_version "sys-devel/clang") + export LLVM_ROOT="/usr/lib/llvm/$(ver_cut 1 ${clang_version##sys-devel/clang-})" + cmake_src_configure +} + +src_install() { + cmake_src_install + mv "${D}"/usr/share/doc/clazy/* "${D}"/usr/share/doc/${PF} || die + rmdir "${D}"/usr/share/doc/clazy || die +} diff --git a/dev-util/clazy/files/clazy-1.6-llvm-10.patch b/dev-util/clazy/files/clazy-1.6-llvm-10.patch new file mode 100644 index 00000000000..f00695f5211 --- /dev/null +++ b/dev-util/clazy/files/clazy-1.6-llvm-10.patch @@ -0,0 +1,75 @@ +From df41bd29433937111edca3654a7beb11ec765029 Mon Sep 17 00:00:00 2001 +From: Johannes Ziegenbalg +Date: Fri, 27 Mar 2020 14:18:32 +0100 +Subject: Fix build issues using llvm 10.0.0 + +--- + CMakeLists.txt | 2 +- + src/ClazyStandaloneMain.cpp | 10 ++++++++++ + src/checks/level0/qstring-ref.cpp | 4 ++++ + 3 files changed, 15 insertions(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index f1463cf..a30813f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -53,7 +53,7 @@ if(MSVC) + # disable trigger-happy warnings from Clang/LLVM headers + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4267 /wd4244 /wd4291 /wd4800 /wd4141 /wd4146 /wd4251") + elseif(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-common -Woverloaded-virtual -Wcast-qual -fno-strict-aliasing -pedantic -Wno-long-long -Wall -W -Wno-unused-parameter -Wwrite-strings -fno-exceptions -fno-rtti") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -fno-common -Woverloaded-virtual -Wcast-qual -fno-strict-aliasing -pedantic -Wno-long-long -Wall -W -Wno-unused-parameter -Wwrite-strings -fno-exceptions -fno-rtti") + endif() + + set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,-flat_namespace -Wl,-undefined -Wl,suppress") +diff --git a/src/ClazyStandaloneMain.cpp b/src/ClazyStandaloneMain.cpp +index aada189..6baae32 100644 +--- a/src/ClazyStandaloneMain.cpp ++++ b/src/ClazyStandaloneMain.cpp +@@ -93,7 +93,11 @@ public: + { + } + ++#if LLVM_VERSION_MAJOR >= 10 ++ std::unique_ptr create() override ++#else + FrontendAction *create() override ++#endif + { + ClazyContext::ClazyOptions options = ClazyContext::ClazyOption_None; + +@@ -116,9 +120,15 @@ public: + options |= ClazyContext::ClazyOption_IgnoreIncludedFiles; + + // TODO: We need to agregate the fixes with previous run ++#if LLVM_VERSION_MAJOR >= 10 ++ return std::make_unique(s_checks.getValue(), s_headerFilter.getValue(), ++ s_ignoreDirs.getValue(), s_exportFixes.getValue(), ++ m_paths, options); ++#else + return new ClazyStandaloneASTAction(s_checks.getValue(), s_headerFilter.getValue(), + s_ignoreDirs.getValue(), s_exportFixes.getValue(), + m_paths, options); ++#endif + } + std::vector m_paths; + }; +diff --git a/src/checks/level0/qstring-ref.cpp b/src/checks/level0/qstring-ref.cpp +index d1d8a4e..ec9e890 100644 +--- a/src/checks/level0/qstring-ref.cpp ++++ b/src/checks/level0/qstring-ref.cpp +@@ -117,7 +117,11 @@ static bool containsChild(Stmt *s, Stmt *target) + return true; + + if (auto mte = dyn_cast(s)) { ++#if LLVM_VERSION_MAJOR >= 10 ++ return containsChild(mte->getSubExpr(), target); ++#else + return containsChild(mte->getTemporary(), target); ++#endif + } else if (auto ice = dyn_cast(s)) { + return containsChild(ice->getSubExpr(), target); + } else if (auto bte = dyn_cast(s)) { +-- +cgit v1.1 +