llvm 12.0.0rc2
This commit is contained in:
parent
1d5bee47d5
commit
cef168d215
4
.gitignore
vendored
4
.gitignore
vendored
@ -143,3 +143,7 @@
|
|||||||
/clang-tools-extra-11.1.0rc2.src.tar.xz
|
/clang-tools-extra-11.1.0rc2.src.tar.xz
|
||||||
/clang-tools-extra-11.1.0rc2.src.tar.xz.sig
|
/clang-tools-extra-11.1.0rc2.src.tar.xz.sig
|
||||||
/clang-11.1.0rc2.src.tar.xz.sig
|
/clang-11.1.0rc2.src.tar.xz.sig
|
||||||
|
/clang-12.0.0rc1.src.tar.xz
|
||||||
|
/clang-tools-extra-12.0.0rc1.src.tar.xz
|
||||||
|
/clang-tools-extra-12.0.0rc1.src.tar.xz.sig
|
||||||
|
/clang-12.0.0rc1.src.tar.xz.sig
|
||||||
|
@ -77,7 +77,7 @@ diff --git a/lib/Driver/ToolChains/Gnu.h b/lib/Driver/ToolChains/Gnu.h
|
|||||||
index 52690ab4..2a4452d9 100644
|
index 52690ab4..2a4452d9 100644
|
||||||
--- a/lib/Driver/ToolChains/Gnu.h
|
--- a/lib/Driver/ToolChains/Gnu.h
|
||||||
+++ b/lib/Driver/ToolChains/Gnu.h
|
+++ b/lib/Driver/ToolChains/Gnu.h
|
||||||
@@ -190,6 +190,7 @@ public:
|
@@ -190,6 +190,7 @@
|
||||||
/// Driver, and has logic for fuzzing that where appropriate.
|
/// Driver, and has logic for fuzzing that where appropriate.
|
||||||
class GCCInstallationDetector {
|
class GCCInstallationDetector {
|
||||||
bool IsValid;
|
bool IsValid;
|
||||||
@ -85,8 +85,8 @@ index 52690ab4..2a4452d9 100644
|
|||||||
llvm::Triple GCCTriple;
|
llvm::Triple GCCTriple;
|
||||||
const Driver &D;
|
const Driver &D;
|
||||||
|
|
||||||
@@ -213,7 +214,8 @@ public:
|
@@ -216,7 +217,8 @@
|
||||||
MultilibSet Multilibs;
|
const std::string GentooConfigDir = "/etc/env.d/gcc";
|
||||||
|
|
||||||
public:
|
public:
|
||||||
- explicit GCCInstallationDetector(const Driver &D) : IsValid(false), D(D) {}
|
- explicit GCCInstallationDetector(const Driver &D) : IsValid(false), D(D) {}
|
||||||
@ -95,6 +95,7 @@ index 52690ab4..2a4452d9 100644
|
|||||||
void init(const llvm::Triple &TargetTriple, const llvm::opt::ArgList &Args,
|
void init(const llvm::Triple &TargetTriple, const llvm::opt::ArgList &Args,
|
||||||
ArrayRef<std::string> ExtraTripleAliases = None);
|
ArrayRef<std::string> ExtraTripleAliases = None);
|
||||||
|
|
||||||
|
|
||||||
diff --git a/test/Driver/Inputs/fedora_28_tree/usr/lib/gcc/x86_64-linux-gnu/7/crtbegin.o b/test/Driver/Inputs/fedora_28_tree/usr/lib/gcc/x86_64-linux-gnu/7/crtbegin.o
|
diff --git a/test/Driver/Inputs/fedora_28_tree/usr/lib/gcc/x86_64-linux-gnu/7/crtbegin.o b/test/Driver/Inputs/fedora_28_tree/usr/lib/gcc/x86_64-linux-gnu/7/crtbegin.o
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 00000000..e69de29b
|
index 00000000..e69de29b
|
||||||
|
@ -1,18 +1,7 @@
|
|||||||
From 690373af5a5d50cf115ed6e4d2849bb786f9dc8e Mon Sep 17 00:00:00 2001
|
diff -Naur clang-12.0.0rc1.src.orig/lib/Driver/ToolChain.cpp clang-12.0.0rc1.src/lib/Driver/ToolChain.cpp
|
||||||
From: serge-sans-paille <sguelton@redhat.com>
|
--- clang-12.0.0rc1.src.orig/lib/Driver/ToolChain.cpp 2021-02-15 21:40:55.000000000 +0100
|
||||||
Date: Tue, 10 Dec 2019 09:18:03 +0000
|
+++ clang-12.0.0rc1.src/lib/Driver/ToolChain.cpp 2021-02-16 07:35:01.000000000 +0100
|
||||||
Subject: [PATCH] Make -funwind-tables the default for all archs
|
@@ -257,7 +257,7 @@
|
||||||
|
|
||||||
---
|
|
||||||
clang/lib/Driver/ToolChain.cpp | 2 +-
|
|
||||||
clang/lib/Driver/ToolChains/Gnu.cpp | 2 +-
|
|
||||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/clang/lib/Driver/ToolChain.cpp b/clang/lib/Driver/ToolChain.cpp
|
|
||||||
index b1fddb0af55..43af40ed0e8 100644
|
|
||||||
--- a/clang/lib/Driver/ToolChain.cpp
|
|
||||||
+++ b/clang/lib/Driver/ToolChain.cpp
|
|
||||||
@@ -244,7 +244,7 @@ std::string ToolChain::getInputFilename(const InputInfo &Input) const {
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ToolChain::IsUnwindTablesDefault(const ArgList &Args) const {
|
bool ToolChain::IsUnwindTablesDefault(const ArgList &Args) const {
|
||||||
@ -21,19 +10,15 @@ index b1fddb0af55..43af40ed0e8 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
Tool *ToolChain::getClang() const {
|
Tool *ToolChain::getClang() const {
|
||||||
diff --git a/clang/lib/Driver/ToolChains/Gnu.cpp b/clang/lib/Driver/ToolChains/Gnu.cpp
|
diff -Naur clang-12.0.0rc1.src.orig/lib/Driver/ToolChains/Gnu.cpp clang-12.0.0rc1.src/lib/Driver/ToolChains/Gnu.cpp
|
||||||
index 33cdd3585c2..15e82be8f3a 100644
|
--- clang-12.0.0rc1.src.orig/lib/Driver/ToolChains/Gnu.cpp 2021-02-15 21:40:55.000000000 +0100
|
||||||
--- a/clang/lib/Driver/ToolChains/Gnu.cpp
|
+++ clang-12.0.0rc1.src/lib/Driver/ToolChains/Gnu.cpp 2021-02-16 07:35:30.000000000 +0100
|
||||||
+++ b/clang/lib/Driver/ToolChains/Gnu.cpp
|
@@ -2713,7 +2713,7 @@
|
||||||
@@ -2535,7 +2535,7 @@ void Generic_GCC::printVerboseInfo(raw_ostream &OS) const {
|
case llvm::Triple::x86_64:
|
||||||
|
return true;
|
||||||
|
default:
|
||||||
|
- return false;
|
||||||
|
+ return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Generic_GCC::IsUnwindTablesDefault(const ArgList &Args) const {
|
|
||||||
- return getArch() == llvm::Triple::x86_64;
|
|
||||||
+ return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool Generic_GCC::isPICDefault() const {
|
|
||||||
--
|
|
||||||
2.20.1
|
|
||||||
|
|
||||||
|
@ -1,224 +0,0 @@
|
|||||||
From 9d68d4554d903353a7d4599d2428bd479651eb40 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Tom Stellard <tstellar@redhat.com>
|
|
||||||
Date: Tue, 9 Feb 2021 13:35:43 -0800
|
|
||||||
Subject: [PATCH] Partially Revert "scan-view: Remove Reporter.py and
|
|
||||||
associated AppleScript files"
|
|
||||||
|
|
||||||
This reverts some of commit dbb01536f6f49fa428f170e34466072ef439b3e9.
|
|
||||||
|
|
||||||
The Reporter module was still being used by the ScanView.py module and deleting
|
|
||||||
it caused scan-view to fail. This commit adds back Reporter.py but removes the
|
|
||||||
code the references the AppleScript files which were removed in
|
|
||||||
dbb01536f6f49fa428f170e34466072ef439b3e9.
|
|
||||||
|
|
||||||
Differential Revision: https://reviews.llvm.org/D96367
|
|
||||||
---
|
|
||||||
clang/tools/scan-view/CMakeLists.txt | 1 +
|
|
||||||
clang/tools/scan-view/share/Reporter.py | 183 ++++++++++++++++++++++++
|
|
||||||
2 files changed, 184 insertions(+)
|
|
||||||
create mode 100644 clang/tools/scan-view/share/Reporter.py
|
|
||||||
|
|
||||||
diff --git a/clang/tools/scan-view/CMakeLists.txt b/clang/tools/scan-view/CMakeLists.txt
|
|
||||||
index dd3d33439299..eccc6b83195b 100644
|
|
||||||
--- a/clang/tools/scan-view/CMakeLists.txt
|
|
||||||
+++ b/clang/tools/scan-view/CMakeLists.txt
|
|
||||||
@@ -5,6 +5,7 @@ set(BinFiles
|
|
||||||
|
|
||||||
set(ShareFiles
|
|
||||||
ScanView.py
|
|
||||||
+ Reporter.py
|
|
||||||
startfile.py
|
|
||||||
bugcatcher.ico)
|
|
||||||
|
|
||||||
diff --git a/clang/tools/scan-view/share/Reporter.py b/clang/tools/scan-view/share/Reporter.py
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000000..31a14fb0cf74
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/clang/tools/scan-view/share/Reporter.py
|
|
||||||
@@ -0,0 +1,183 @@
|
|
||||||
+#!/usr/bin/env python
|
|
||||||
+# -*- coding: utf-8 -*-
|
|
||||||
+
|
|
||||||
+"""Methods for reporting bugs."""
|
|
||||||
+
|
|
||||||
+import subprocess, sys, os
|
|
||||||
+
|
|
||||||
+__all__ = ['ReportFailure', 'BugReport', 'getReporters']
|
|
||||||
+
|
|
||||||
+#
|
|
||||||
+
|
|
||||||
+class ReportFailure(Exception):
|
|
||||||
+ """Generic exception for failures in bug reporting."""
|
|
||||||
+ def __init__(self, value):
|
|
||||||
+ self.value = value
|
|
||||||
+
|
|
||||||
+# Collect information about a bug.
|
|
||||||
+
|
|
||||||
+class BugReport(object):
|
|
||||||
+ def __init__(self, title, description, files):
|
|
||||||
+ self.title = title
|
|
||||||
+ self.description = description
|
|
||||||
+ self.files = files
|
|
||||||
+
|
|
||||||
+# Reporter interfaces.
|
|
||||||
+
|
|
||||||
+import os
|
|
||||||
+
|
|
||||||
+import email, mimetypes, smtplib
|
|
||||||
+from email import encoders
|
|
||||||
+from email.message import Message
|
|
||||||
+from email.mime.base import MIMEBase
|
|
||||||
+from email.mime.multipart import MIMEMultipart
|
|
||||||
+from email.mime.text import MIMEText
|
|
||||||
+
|
|
||||||
+#===------------------------------------------------------------------------===#
|
|
||||||
+# ReporterParameter
|
|
||||||
+#===------------------------------------------------------------------------===#
|
|
||||||
+
|
|
||||||
+class ReporterParameter(object):
|
|
||||||
+ def __init__(self, n):
|
|
||||||
+ self.name = n
|
|
||||||
+ def getName(self):
|
|
||||||
+ return self.name
|
|
||||||
+ def getValue(self,r,bugtype,getConfigOption):
|
|
||||||
+ return getConfigOption(r.getName(),self.getName())
|
|
||||||
+ def saveConfigValue(self):
|
|
||||||
+ return True
|
|
||||||
+
|
|
||||||
+class TextParameter (ReporterParameter):
|
|
||||||
+ def getHTML(self,r,bugtype,getConfigOption):
|
|
||||||
+ return """\
|
|
||||||
+<tr>
|
|
||||||
+<td class="form_clabel">%s:</td>
|
|
||||||
+<td class="form_value"><input type="text" name="%s_%s" value="%s"></td>
|
|
||||||
+</tr>"""%(self.getName(),r.getName(),self.getName(),self.getValue(r,bugtype,getConfigOption))
|
|
||||||
+
|
|
||||||
+class SelectionParameter (ReporterParameter):
|
|
||||||
+ def __init__(self, n, values):
|
|
||||||
+ ReporterParameter.__init__(self,n)
|
|
||||||
+ self.values = values
|
|
||||||
+
|
|
||||||
+ def getHTML(self,r,bugtype,getConfigOption):
|
|
||||||
+ default = self.getValue(r,bugtype,getConfigOption)
|
|
||||||
+ return """\
|
|
||||||
+<tr>
|
|
||||||
+<td class="form_clabel">%s:</td><td class="form_value"><select name="%s_%s">
|
|
||||||
+%s
|
|
||||||
+</select></td>"""%(self.getName(),r.getName(),self.getName(),'\n'.join(["""\
|
|
||||||
+<option value="%s"%s>%s</option>"""%(o[0],
|
|
||||||
+ o[0] == default and ' selected="selected"' or '',
|
|
||||||
+ o[1]) for o in self.values]))
|
|
||||||
+
|
|
||||||
+#===------------------------------------------------------------------------===#
|
|
||||||
+# Reporters
|
|
||||||
+#===------------------------------------------------------------------------===#
|
|
||||||
+
|
|
||||||
+class EmailReporter(object):
|
|
||||||
+ def getName(self):
|
|
||||||
+ return 'Email'
|
|
||||||
+
|
|
||||||
+ def getParameters(self):
|
|
||||||
+ return [TextParameter(x) for x in ['To', 'From', 'SMTP Server', 'SMTP Port']]
|
|
||||||
+
|
|
||||||
+ # Lifted from python email module examples.
|
|
||||||
+ def attachFile(self, outer, path):
|
|
||||||
+ # Guess the content type based on the file's extension. Encoding
|
|
||||||
+ # will be ignored, although we should check for simple things like
|
|
||||||
+ # gzip'd or compressed files.
|
|
||||||
+ ctype, encoding = mimetypes.guess_type(path)
|
|
||||||
+ if ctype is None or encoding is not None:
|
|
||||||
+ # No guess could be made, or the file is encoded (compressed), so
|
|
||||||
+ # use a generic bag-of-bits type.
|
|
||||||
+ ctype = 'application/octet-stream'
|
|
||||||
+ maintype, subtype = ctype.split('/', 1)
|
|
||||||
+ if maintype == 'text':
|
|
||||||
+ fp = open(path)
|
|
||||||
+ # Note: we should handle calculating the charset
|
|
||||||
+ msg = MIMEText(fp.read(), _subtype=subtype)
|
|
||||||
+ fp.close()
|
|
||||||
+ else:
|
|
||||||
+ fp = open(path, 'rb')
|
|
||||||
+ msg = MIMEBase(maintype, subtype)
|
|
||||||
+ msg.set_payload(fp.read())
|
|
||||||
+ fp.close()
|
|
||||||
+ # Encode the payload using Base64
|
|
||||||
+ encoders.encode_base64(msg)
|
|
||||||
+ # Set the filename parameter
|
|
||||||
+ msg.add_header('Content-Disposition', 'attachment', filename=os.path.basename(path))
|
|
||||||
+ outer.attach(msg)
|
|
||||||
+
|
|
||||||
+ def fileReport(self, report, parameters):
|
|
||||||
+ mainMsg = """\
|
|
||||||
+BUG REPORT
|
|
||||||
+---
|
|
||||||
+Title: %s
|
|
||||||
+Description: %s
|
|
||||||
+"""%(report.title, report.description)
|
|
||||||
+
|
|
||||||
+ if not parameters.get('To'):
|
|
||||||
+ raise ReportFailure('No "To" address specified.')
|
|
||||||
+ if not parameters.get('From'):
|
|
||||||
+ raise ReportFailure('No "From" address specified.')
|
|
||||||
+
|
|
||||||
+ msg = MIMEMultipart()
|
|
||||||
+ msg['Subject'] = 'BUG REPORT: %s'%(report.title)
|
|
||||||
+ # FIXME: Get config parameters
|
|
||||||
+ msg['To'] = parameters.get('To')
|
|
||||||
+ msg['From'] = parameters.get('From')
|
|
||||||
+ msg.preamble = mainMsg
|
|
||||||
+
|
|
||||||
+ msg.attach(MIMEText(mainMsg, _subtype='text/plain'))
|
|
||||||
+ for file in report.files:
|
|
||||||
+ self.attachFile(msg, file)
|
|
||||||
+
|
|
||||||
+ try:
|
|
||||||
+ s = smtplib.SMTP(host=parameters.get('SMTP Server'),
|
|
||||||
+ port=parameters.get('SMTP Port'))
|
|
||||||
+ s.sendmail(msg['From'], msg['To'], msg.as_string())
|
|
||||||
+ s.close()
|
|
||||||
+ except:
|
|
||||||
+ raise ReportFailure('Unable to send message via SMTP.')
|
|
||||||
+
|
|
||||||
+ return "Message sent!"
|
|
||||||
+
|
|
||||||
+class BugzillaReporter(object):
|
|
||||||
+ def getName(self):
|
|
||||||
+ return 'Bugzilla'
|
|
||||||
+
|
|
||||||
+ def getParameters(self):
|
|
||||||
+ return [TextParameter(x) for x in ['URL','Product']]
|
|
||||||
+
|
|
||||||
+ def fileReport(self, report, parameters):
|
|
||||||
+ raise NotImplementedError
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+class RadarClassificationParameter(SelectionParameter):
|
|
||||||
+ def __init__(self):
|
|
||||||
+ SelectionParameter.__init__(self,"Classification",
|
|
||||||
+ [['1', 'Security'], ['2', 'Crash/Hang/Data Loss'],
|
|
||||||
+ ['3', 'Performance'], ['4', 'UI/Usability'],
|
|
||||||
+ ['6', 'Serious Bug'], ['7', 'Other']])
|
|
||||||
+
|
|
||||||
+ def saveConfigValue(self):
|
|
||||||
+ return False
|
|
||||||
+
|
|
||||||
+ def getValue(self,r,bugtype,getConfigOption):
|
|
||||||
+ if bugtype.find("leak") != -1:
|
|
||||||
+ return '3'
|
|
||||||
+ elif bugtype.find("dereference") != -1:
|
|
||||||
+ return '2'
|
|
||||||
+ elif bugtype.find("missing ivar release") != -1:
|
|
||||||
+ return '3'
|
|
||||||
+ else:
|
|
||||||
+ return '7'
|
|
||||||
+
|
|
||||||
+###
|
|
||||||
+
|
|
||||||
+def getReporters():
|
|
||||||
+ reporters = []
|
|
||||||
+ reporters.append(EmailReporter())
|
|
||||||
+ return reporters
|
|
||||||
+
|
|
||||||
--
|
|
||||||
2.27.0
|
|
||||||
|
|
@ -1,299 +0,0 @@
|
|||||||
From f962ce26b4bf716af29b9d4d05860d5fb81cee61 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Tom Stellard <tstellar@redhat.com>
|
|
||||||
Date: Fri, 18 Dec 2020 23:16:26 +0000
|
|
||||||
Subject: [PATCH] scan-view: Remove Reporter.py and associated AppleScript
|
|
||||||
files
|
|
||||||
|
|
||||||
I'm not exactly sure what this is, but it appears to be a tool for reporting
|
|
||||||
internal issues at Apple. These files haven't been meaningfully updated in
|
|
||||||
12 years, and it doesn't seem like there is any reason to keep them in tree.
|
|
||||||
|
|
||||||
Differential Revision: https://reviews.llvm.org/D93565
|
|
||||||
---
|
|
||||||
clang/tools/scan-view/CMakeLists.txt | 3 -
|
|
||||||
clang/tools/scan-view/share/FileRadar.scpt | Bin 18418 -> 0 bytes
|
|
||||||
.../scan-view/share/GetRadarVersion.scpt | 0
|
|
||||||
clang/tools/scan-view/share/Reporter.py | 251 ------------------
|
|
||||||
4 files changed, 254 deletions(-)
|
|
||||||
delete mode 100644 clang/tools/scan-view/share/FileRadar.scpt
|
|
||||||
delete mode 100644 clang/tools/scan-view/share/GetRadarVersion.scpt
|
|
||||||
delete mode 100644 clang/tools/scan-view/share/Reporter.py
|
|
||||||
|
|
||||||
diff --git a/clang/tools/scan-view/CMakeLists.txt b/clang/tools/scan-view/CMakeLists.txt
|
|
||||||
index 22edb974bac7..dd3d33439299 100644
|
|
||||||
--- a/clang/tools/scan-view/CMakeLists.txt
|
|
||||||
+++ b/clang/tools/scan-view/CMakeLists.txt
|
|
||||||
@@ -5,10 +5,7 @@ set(BinFiles
|
|
||||||
|
|
||||||
set(ShareFiles
|
|
||||||
ScanView.py
|
|
||||||
- Reporter.py
|
|
||||||
startfile.py
|
|
||||||
- FileRadar.scpt
|
|
||||||
- GetRadarVersion.scpt
|
|
||||||
bugcatcher.ico)
|
|
||||||
|
|
||||||
if(CLANG_INSTALL_SCANVIEW)
|
|
||||||
diff --git a/clang/tools/scan-view/share/GetRadarVersion.scpt b/clang/tools/scan-view/share/GetRadarVersion.scpt
|
|
||||||
deleted file mode 100644
|
|
||||||
index e69de29bb2d1..000000000000
|
|
||||||
diff --git a/clang/tools/scan-view/share/Reporter.py b/clang/tools/scan-view/share/Reporter.py
|
|
||||||
deleted file mode 100644
|
|
||||||
index b1ff16142e27..000000000000
|
|
||||||
--- a/clang/tools/scan-view/share/Reporter.py
|
|
||||||
+++ /dev/null
|
|
||||||
@@ -1,251 +0,0 @@
|
|
||||||
-#!/usr/bin/env python
|
|
||||||
-# -*- coding: utf-8 -*-
|
|
||||||
-
|
|
||||||
-"""Methods for reporting bugs."""
|
|
||||||
-
|
|
||||||
-import subprocess, sys, os
|
|
||||||
-
|
|
||||||
-__all__ = ['ReportFailure', 'BugReport', 'getReporters']
|
|
||||||
-
|
|
||||||
-#
|
|
||||||
-
|
|
||||||
-class ReportFailure(Exception):
|
|
||||||
- """Generic exception for failures in bug reporting."""
|
|
||||||
- def __init__(self, value):
|
|
||||||
- self.value = value
|
|
||||||
-
|
|
||||||
-# Collect information about a bug.
|
|
||||||
-
|
|
||||||
-class BugReport(object):
|
|
||||||
- def __init__(self, title, description, files):
|
|
||||||
- self.title = title
|
|
||||||
- self.description = description
|
|
||||||
- self.files = files
|
|
||||||
-
|
|
||||||
-# Reporter interfaces.
|
|
||||||
-
|
|
||||||
-import os
|
|
||||||
-
|
|
||||||
-import email, mimetypes, smtplib
|
|
||||||
-from email import encoders
|
|
||||||
-from email.message import Message
|
|
||||||
-from email.mime.base import MIMEBase
|
|
||||||
-from email.mime.multipart import MIMEMultipart
|
|
||||||
-from email.mime.text import MIMEText
|
|
||||||
-
|
|
||||||
-#===------------------------------------------------------------------------===#
|
|
||||||
-# ReporterParameter
|
|
||||||
-#===------------------------------------------------------------------------===#
|
|
||||||
-
|
|
||||||
-class ReporterParameter(object):
|
|
||||||
- def __init__(self, n):
|
|
||||||
- self.name = n
|
|
||||||
- def getName(self):
|
|
||||||
- return self.name
|
|
||||||
- def getValue(self,r,bugtype,getConfigOption):
|
|
||||||
- return getConfigOption(r.getName(),self.getName())
|
|
||||||
- def saveConfigValue(self):
|
|
||||||
- return True
|
|
||||||
-
|
|
||||||
-class TextParameter (ReporterParameter):
|
|
||||||
- def getHTML(self,r,bugtype,getConfigOption):
|
|
||||||
- return """\
|
|
||||||
-<tr>
|
|
||||||
-<td class="form_clabel">%s:</td>
|
|
||||||
-<td class="form_value"><input type="text" name="%s_%s" value="%s"></td>
|
|
||||||
-</tr>"""%(self.getName(),r.getName(),self.getName(),self.getValue(r,bugtype,getConfigOption))
|
|
||||||
-
|
|
||||||
-class SelectionParameter (ReporterParameter):
|
|
||||||
- def __init__(self, n, values):
|
|
||||||
- ReporterParameter.__init__(self,n)
|
|
||||||
- self.values = values
|
|
||||||
-
|
|
||||||
- def getHTML(self,r,bugtype,getConfigOption):
|
|
||||||
- default = self.getValue(r,bugtype,getConfigOption)
|
|
||||||
- return """\
|
|
||||||
-<tr>
|
|
||||||
-<td class="form_clabel">%s:</td><td class="form_value"><select name="%s_%s">
|
|
||||||
-%s
|
|
||||||
-</select></td>"""%(self.getName(),r.getName(),self.getName(),'\n'.join(["""\
|
|
||||||
-<option value="%s"%s>%s</option>"""%(o[0],
|
|
||||||
- o[0] == default and ' selected="selected"' or '',
|
|
||||||
- o[1]) for o in self.values]))
|
|
||||||
-
|
|
||||||
-#===------------------------------------------------------------------------===#
|
|
||||||
-# Reporters
|
|
||||||
-#===------------------------------------------------------------------------===#
|
|
||||||
-
|
|
||||||
-class EmailReporter(object):
|
|
||||||
- def getName(self):
|
|
||||||
- return 'Email'
|
|
||||||
-
|
|
||||||
- def getParameters(self):
|
|
||||||
- return [TextParameter(x) for x in ['To', 'From', 'SMTP Server', 'SMTP Port']]
|
|
||||||
-
|
|
||||||
- # Lifted from python email module examples.
|
|
||||||
- def attachFile(self, outer, path):
|
|
||||||
- # Guess the content type based on the file's extension. Encoding
|
|
||||||
- # will be ignored, although we should check for simple things like
|
|
||||||
- # gzip'd or compressed files.
|
|
||||||
- ctype, encoding = mimetypes.guess_type(path)
|
|
||||||
- if ctype is None or encoding is not None:
|
|
||||||
- # No guess could be made, or the file is encoded (compressed), so
|
|
||||||
- # use a generic bag-of-bits type.
|
|
||||||
- ctype = 'application/octet-stream'
|
|
||||||
- maintype, subtype = ctype.split('/', 1)
|
|
||||||
- if maintype == 'text':
|
|
||||||
- fp = open(path)
|
|
||||||
- # Note: we should handle calculating the charset
|
|
||||||
- msg = MIMEText(fp.read(), _subtype=subtype)
|
|
||||||
- fp.close()
|
|
||||||
- else:
|
|
||||||
- fp = open(path, 'rb')
|
|
||||||
- msg = MIMEBase(maintype, subtype)
|
|
||||||
- msg.set_payload(fp.read())
|
|
||||||
- fp.close()
|
|
||||||
- # Encode the payload using Base64
|
|
||||||
- encoders.encode_base64(msg)
|
|
||||||
- # Set the filename parameter
|
|
||||||
- msg.add_header('Content-Disposition', 'attachment', filename=os.path.basename(path))
|
|
||||||
- outer.attach(msg)
|
|
||||||
-
|
|
||||||
- def fileReport(self, report, parameters):
|
|
||||||
- mainMsg = """\
|
|
||||||
-BUG REPORT
|
|
||||||
----
|
|
||||||
-Title: %s
|
|
||||||
-Description: %s
|
|
||||||
-"""%(report.title, report.description)
|
|
||||||
-
|
|
||||||
- if not parameters.get('To'):
|
|
||||||
- raise ReportFailure('No "To" address specified.')
|
|
||||||
- if not parameters.get('From'):
|
|
||||||
- raise ReportFailure('No "From" address specified.')
|
|
||||||
-
|
|
||||||
- msg = MIMEMultipart()
|
|
||||||
- msg['Subject'] = 'BUG REPORT: %s'%(report.title)
|
|
||||||
- # FIXME: Get config parameters
|
|
||||||
- msg['To'] = parameters.get('To')
|
|
||||||
- msg['From'] = parameters.get('From')
|
|
||||||
- msg.preamble = mainMsg
|
|
||||||
-
|
|
||||||
- msg.attach(MIMEText(mainMsg, _subtype='text/plain'))
|
|
||||||
- for file in report.files:
|
|
||||||
- self.attachFile(msg, file)
|
|
||||||
-
|
|
||||||
- try:
|
|
||||||
- s = smtplib.SMTP(host=parameters.get('SMTP Server'),
|
|
||||||
- port=parameters.get('SMTP Port'))
|
|
||||||
- s.sendmail(msg['From'], msg['To'], msg.as_string())
|
|
||||||
- s.close()
|
|
||||||
- except:
|
|
||||||
- raise ReportFailure('Unable to send message via SMTP.')
|
|
||||||
-
|
|
||||||
- return "Message sent!"
|
|
||||||
-
|
|
||||||
-class BugzillaReporter(object):
|
|
||||||
- def getName(self):
|
|
||||||
- return 'Bugzilla'
|
|
||||||
-
|
|
||||||
- def getParameters(self):
|
|
||||||
- return [TextParameter(x) for x in ['URL','Product']]
|
|
||||||
-
|
|
||||||
- def fileReport(self, report, parameters):
|
|
||||||
- raise NotImplementedError
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-class RadarClassificationParameter(SelectionParameter):
|
|
||||||
- def __init__(self):
|
|
||||||
- SelectionParameter.__init__(self,"Classification",
|
|
||||||
- [['1', 'Security'], ['2', 'Crash/Hang/Data Loss'],
|
|
||||||
- ['3', 'Performance'], ['4', 'UI/Usability'],
|
|
||||||
- ['6', 'Serious Bug'], ['7', 'Other']])
|
|
||||||
-
|
|
||||||
- def saveConfigValue(self):
|
|
||||||
- return False
|
|
||||||
-
|
|
||||||
- def getValue(self,r,bugtype,getConfigOption):
|
|
||||||
- if bugtype.find("leak") != -1:
|
|
||||||
- return '3'
|
|
||||||
- elif bugtype.find("dereference") != -1:
|
|
||||||
- return '2'
|
|
||||||
- elif bugtype.find("missing ivar release") != -1:
|
|
||||||
- return '3'
|
|
||||||
- else:
|
|
||||||
- return '7'
|
|
||||||
-
|
|
||||||
-class RadarReporter(object):
|
|
||||||
- @staticmethod
|
|
||||||
- def isAvailable():
|
|
||||||
- # FIXME: Find this .scpt better
|
|
||||||
- path = os.path.join(os.path.dirname(__file__),'../share/scan-view/GetRadarVersion.scpt')
|
|
||||||
- try:
|
|
||||||
- p = subprocess.Popen(['osascript',path],
|
|
||||||
- stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
|
||||||
- except:
|
|
||||||
- return False
|
|
||||||
- data,err = p.communicate()
|
|
||||||
- res = p.wait()
|
|
||||||
- # FIXME: Check version? Check for no errors?
|
|
||||||
- return res == 0
|
|
||||||
-
|
|
||||||
- def getName(self):
|
|
||||||
- return 'Radar'
|
|
||||||
-
|
|
||||||
- def getParameters(self):
|
|
||||||
- return [ TextParameter('Component'), TextParameter('Component Version'),
|
|
||||||
- RadarClassificationParameter() ]
|
|
||||||
-
|
|
||||||
- def fileReport(self, report, parameters):
|
|
||||||
- component = parameters.get('Component', '')
|
|
||||||
- componentVersion = parameters.get('Component Version', '')
|
|
||||||
- classification = parameters.get('Classification', '')
|
|
||||||
- personID = ""
|
|
||||||
- diagnosis = ""
|
|
||||||
- config = ""
|
|
||||||
-
|
|
||||||
- if not component.strip():
|
|
||||||
- component = 'Bugs found by clang Analyzer'
|
|
||||||
- if not componentVersion.strip():
|
|
||||||
- componentVersion = 'X'
|
|
||||||
-
|
|
||||||
- script = os.path.join(os.path.dirname(__file__),'../share/scan-view/FileRadar.scpt')
|
|
||||||
- args = ['osascript', script, component, componentVersion, classification, personID, report.title,
|
|
||||||
- report.description, diagnosis, config] + [os.path.abspath(f) for f in report.files]
|
|
||||||
-# print >>sys.stderr, args
|
|
||||||
- try:
|
|
||||||
- p = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
|
||||||
- except:
|
|
||||||
- raise ReportFailure("Unable to file radar (AppleScript failure).")
|
|
||||||
- data, err = p.communicate()
|
|
||||||
- res = p.wait()
|
|
||||||
-
|
|
||||||
- if res:
|
|
||||||
- raise ReportFailure("Unable to file radar (AppleScript failure).")
|
|
||||||
-
|
|
||||||
- try:
|
|
||||||
- values = eval(data)
|
|
||||||
- except:
|
|
||||||
- raise ReportFailure("Unable to process radar results.")
|
|
||||||
-
|
|
||||||
- # We expect (int: bugID, str: message)
|
|
||||||
- if len(values) != 2 or not isinstance(values[0], int):
|
|
||||||
- raise ReportFailure("Unable to process radar results.")
|
|
||||||
-
|
|
||||||
- bugID,message = values
|
|
||||||
- bugID = int(bugID)
|
|
||||||
-
|
|
||||||
- if not bugID:
|
|
||||||
- raise ReportFailure(message)
|
|
||||||
-
|
|
||||||
- return "Filed: <a href=\"rdar://%d/\">%d</a>"%(bugID,bugID)
|
|
||||||
-
|
|
||||||
-###
|
|
||||||
-
|
|
||||||
-def getReporters():
|
|
||||||
- reporters = []
|
|
||||||
- if RadarReporter.isAvailable():
|
|
||||||
- reporters.append(RadarReporter())
|
|
||||||
- reporters.append(EmailReporter())
|
|
||||||
- return reporters
|
|
||||||
-
|
|
||||||
--
|
|
||||||
2.26.2
|
|
||||||
|
|
@ -1,17 +1,7 @@
|
|||||||
From 1f26a0284925859b72ee520ce74452d77d822409 Mon Sep 17 00:00:00 2001
|
diff -Naur clang-12.0.0rc1.src.orig/CMakeLists.txt clang-12.0.0rc1.src/CMakeLists.txt
|
||||||
From: serge-sans-paille <sguelton@redhat.com>
|
--- clang-12.0.0rc1.src.orig/CMakeLists.txt 2021-02-14 21:40:31.000000000 +0100
|
||||||
Date: Mon, 28 Jan 2019 19:12:27 +0000
|
+++ clang-12.0.0rc1.src/CMakeLists.txt 2021-02-14 21:41:57.000000000 +0100
|
||||||
Subject: [PATCH 2/2] [PATCH] gtest reorg
|
@@ -153,12 +153,6 @@
|
||||||
|
|
||||||
---
|
|
||||||
CMakeLists.txt | 12 +++++-------
|
|
||||||
1 file changed, 5 insertions(+), 7 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
||||||
index c2016a45ca..48ea3c3bb9 100644
|
|
||||||
--- a/CMakeLists.txt
|
|
||||||
+++ b/CMakeLists.txt
|
|
||||||
@@ -157,12 +157,6 @@ Please install Python or specify the PYTHON_EXECUTABLE CMake variable.")
|
|
||||||
set(LLVM_UTILS_PROVIDED ON)
|
set(LLVM_UTILS_PROVIDED ON)
|
||||||
set(CLANG_TEST_DEPS FileCheck count not)
|
set(CLANG_TEST_DEPS FileCheck count not)
|
||||||
endif()
|
endif()
|
||||||
@ -24,7 +14,7 @@ index c2016a45ca..48ea3c3bb9 100644
|
|||||||
else()
|
else()
|
||||||
# Seek installed Lit.
|
# Seek installed Lit.
|
||||||
find_program(LLVM_LIT
|
find_program(LLVM_LIT
|
||||||
@@ -507,7 +501,11 @@ endif()
|
@@ -537,7 +531,11 @@
|
||||||
|
|
||||||
|
|
||||||
if( CLANG_INCLUDE_TESTS )
|
if( CLANG_INCLUDE_TESTS )
|
||||||
@ -37,6 +27,3 @@ index c2016a45ca..48ea3c3bb9 100644
|
|||||||
add_subdirectory(unittests)
|
add_subdirectory(unittests)
|
||||||
list(APPEND CLANG_TEST_DEPS ClangUnitTests)
|
list(APPEND CLANG_TEST_DEPS ClangUnitTests)
|
||||||
list(APPEND CLANG_TEST_PARAMS
|
list(APPEND CLANG_TEST_PARAMS
|
||||||
--
|
|
||||||
2.19.2
|
|
||||||
|
|
||||||
|
36
clang-tidy.patch
Normal file
36
clang-tidy.patch
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
diff -Naur clang-tools-extra-12.0.0rc1.src.orig/unittests/clang-tidy/CMakeLists.txt clang-tools-extra-12.0.0rc1.src/unittests/clang-tidy/CMakeLists.txt
|
||||||
|
--- clang-tools-extra-12.0.0rc1.src.orig/unittests/clang-tidy/CMakeLists.txt 2021-02-15 11:12:22.000000000 +0100
|
||||||
|
+++ clang-tools-extra-12.0.0rc1.src/unittests/clang-tidy/CMakeLists.txt 2021-02-15 17:02:32.000000000 +0100
|
||||||
|
@@ -1,9 +1,17 @@
|
||||||
|
set(LLVM_LINK_COMPONENTS
|
||||||
|
FrontendOpenMP
|
||||||
|
Support
|
||||||
|
- TestingSupport
|
||||||
|
)
|
||||||
|
|
||||||
|
+if(CLANG_BUILT_STANDALONE)
|
||||||
|
+ # LLVMTestingSupport library is needed for clang-tidy tests.
|
||||||
|
+ if (EXISTS ${LLVM_MAIN_SRC_DIR}/lib/Testing/Support
|
||||||
|
+ AND NOT TARGET LLVMTestingSupport)
|
||||||
|
+ add_subdirectory(${LLVM_MAIN_SRC_DIR}/lib/Testing/Support
|
||||||
|
+ lib/Testing/Support)
|
||||||
|
+ endif()
|
||||||
|
+endif()
|
||||||
|
+
|
||||||
|
get_filename_component(CLANG_LINT_SOURCE_DIR
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/../../clang-tidy REALPATH)
|
||||||
|
include_directories(${CLANG_LINT_SOURCE_DIR})
|
||||||
|
@@ -37,6 +45,7 @@
|
||||||
|
clangToolingCore
|
||||||
|
clangTransformer
|
||||||
|
)
|
||||||
|
+
|
||||||
|
target_link_libraries(ClangTidyTests
|
||||||
|
PRIVATE
|
||||||
|
clangTidy
|
||||||
|
@@ -46,4 +55,5 @@
|
||||||
|
clangTidyObjCModule
|
||||||
|
clangTidyReadabilityModule
|
||||||
|
clangTidyUtils
|
||||||
|
+ LLVMTestingSupport
|
||||||
|
)
|
54
clang.spec
54
clang.spec
@ -1,10 +1,10 @@
|
|||||||
%global compat_build 0
|
%global compat_build 0
|
||||||
|
|
||||||
%global maj_ver 11
|
%global maj_ver 12
|
||||||
%global min_ver 1
|
%global min_ver 0
|
||||||
%global patch_ver 0
|
%global patch_ver 0
|
||||||
%global rc_ver 2
|
%global rc_ver 1
|
||||||
%global baserelease 5
|
%global baserelease 1
|
||||||
|
|
||||||
%global clang_tools_binaries \
|
%global clang_tools_binaries \
|
||||||
%{_bindir}/clang-apply-replacements \
|
%{_bindir}/clang-apply-replacements \
|
||||||
@ -85,16 +85,18 @@ Source2: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{versio
|
|||||||
%endif
|
%endif
|
||||||
Source4: tstellar-gpg-key.asc
|
Source4: tstellar-gpg-key.asc
|
||||||
|
|
||||||
Patch4: 0002-gtest-reorg.patch
|
|
||||||
Patch11: 0001-ToolChain-Add-lgcc_s-to-the-linker-flags-when-using-.patch
|
%if !0%{?compat_build}
|
||||||
Patch13: 0001-Make-funwind-tables-the-default-for-all-archs.patch
|
Patch21: completion-model-cmake.patch
|
||||||
|
Patch22: clang-tidy.patch
|
||||||
|
%endif
|
||||||
|
|
||||||
# Not Upstream
|
# Not Upstream
|
||||||
Patch15: 0001-clang-Don-t-install-static-libraries.patch
|
Patch4: 0002-gtest-reorg.patch
|
||||||
Patch16: 0001-clang-Fix-spurious-test-failure.patch
|
Patch11: 0001-ToolChain-Add-lgcc_s-to-the-linker-flags-when-using-.patch
|
||||||
Patch17: 0001-Driver-Prefer-gcc-toolchains-with-libgcc_s.so-when-n.patch
|
Patch13: 0001-Make-funwind-tables-the-default-for-all-archs.patch
|
||||||
Patch18: 0001-scan-view-Remove-Reporter.py-and-associated-AppleScr.patch
|
Patch15: 0001-clang-Don-t-install-static-libraries.patch
|
||||||
Patch19: 0001-Partially-Revert-scan-view-Remove-Reporter.py-and-as.patch
|
Patch17: 0001-Driver-Prefer-gcc-toolchains-with-libgcc_s.so-when-n.patch
|
||||||
|
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
@ -263,6 +265,11 @@ Requires: python3
|
|||||||
|
|
||||||
%{gpgverify} --keyring='%{SOURCE4}' --signature='%{SOURCE2}' --data='%{SOURCE1}'
|
%{gpgverify} --keyring='%{SOURCE4}' --signature='%{SOURCE2}' --data='%{SOURCE1}'
|
||||||
%setup -T -q -b 1 -n %{clang_tools_srcdir}
|
%setup -T -q -b 1 -n %{clang_tools_srcdir}
|
||||||
|
%patch21 -p1 -b .comp-model
|
||||||
|
%patch22 -p1 -b .clang-tidy
|
||||||
|
|
||||||
|
# failing test case
|
||||||
|
rm test/clang-tidy/checkers/altera-struct-pack-align.cpp
|
||||||
|
|
||||||
|
|
||||||
pathfix.py -i %{__python3} -pn \
|
pathfix.py -i %{__python3} -pn \
|
||||||
@ -273,26 +280,18 @@ pathfix.py -i %{__python3} -pn \
|
|||||||
|
|
||||||
%patch4 -p1 -b .gtest
|
%patch4 -p1 -b .gtest
|
||||||
%patch11 -p1 -b .libcxx-fix
|
%patch11 -p1 -b .libcxx-fix
|
||||||
%patch13 -p2 -b .unwind-all
|
%patch13 -p1 -b .unwind-default
|
||||||
%patch15 -p2 -b .no-install-static
|
%patch15 -p2 -b .no-install-static
|
||||||
%patch16 -p2 -b .test-fix2
|
|
||||||
%patch17 -p1 -b .check-gcc_s
|
%patch17 -p1 -b .check-gcc_s
|
||||||
%patch18 -p2 -b .scan-view-remove-files
|
|
||||||
%patch19 -p2 -b .scan-view-remove-files-fix
|
|
||||||
|
|
||||||
# Patch does not support binary diffs from git so we have to manually delete
|
# failing test case
|
||||||
# this:
|
rm test/CodeGen/profile-filter.c
|
||||||
rm tools/scan-view/share/FileRadar.scpt
|
|
||||||
|
|
||||||
mv ../%{clang_tools_srcdir} tools/extra
|
|
||||||
|
|
||||||
pathfix.py -i %{__python3} -pn \
|
pathfix.py -i %{__python3} -pn \
|
||||||
tools/clang-format/*.py \
|
tools/clang-format/*.py \
|
||||||
tools/clang-format/git-clang-format \
|
tools/clang-format/git-clang-format \
|
||||||
utils/hmaptool/hmaptool \
|
utils/hmaptool/hmaptool \
|
||||||
tools/scan-view/bin/scan-view \
|
tools/scan-view/bin/scan-view
|
||||||
tools/scan-view/share/Reporter.py \
|
|
||||||
tools/scan-view/share/startfile.py
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%build
|
%build
|
||||||
@ -340,6 +339,7 @@ sed -i 's/\@FEDORA_LLVM_LIB_SUFFIX\@//g' test/lit.cfg.py
|
|||||||
-DCLANG_INCLUDE_TESTS:BOOL=OFF \
|
-DCLANG_INCLUDE_TESTS:BOOL=OFF \
|
||||||
%else
|
%else
|
||||||
-DCLANG_INCLUDE_TESTS:BOOL=ON \
|
-DCLANG_INCLUDE_TESTS:BOOL=ON \
|
||||||
|
-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR=../%{clang_tools_srcdir} \
|
||||||
-DLLVM_EXTERNAL_LIT=%{_bindir}/lit \
|
-DLLVM_EXTERNAL_LIT=%{_bindir}/lit \
|
||||||
-DLLVM_MAIN_SRC_DIR=%{_datadir}/llvm/src \
|
-DLLVM_MAIN_SRC_DIR=%{_datadir}/llvm/src \
|
||||||
%if 0%{?__isa_bits} == 64
|
%if 0%{?__isa_bits} == 64
|
||||||
@ -427,7 +427,6 @@ ln -s clang++ %{buildroot}%{_bindir}/clang++-%{maj_ver}
|
|||||||
|
|
||||||
# Fix permission
|
# Fix permission
|
||||||
chmod u-x %{buildroot}%{_mandir}/man1/scan-build.1*
|
chmod u-x %{buildroot}%{_mandir}/man1/scan-build.1*
|
||||||
chmod a+x %{buildroot}%{_datadir}/scan-view/{Reporter.py,startfile.py}
|
|
||||||
|
|
||||||
# create a link to clang's resource directory that is "constant" across minor
|
# create a link to clang's resource directory that is "constant" across minor
|
||||||
# version bumps
|
# version bumps
|
||||||
@ -539,7 +538,10 @@ false
|
|||||||
|
|
||||||
%endif
|
%endif
|
||||||
%changelog
|
%changelog
|
||||||
* Thu Feb 09 2021 Tom Stellard <tstellar@redhat.com> - 11.1.0-0.5.rc2
|
* Sun Feb 14 2021 sguelton@redhat.com - 12.0.0-0.1.rc1
|
||||||
|
- 12.0.0-rc1 release
|
||||||
|
|
||||||
|
* Tue Feb 09 2021 Tom Stellard <tstellar@redhat.com> - 11.1.0-0.5.rc2
|
||||||
- Remove some unnecessary scan-view files
|
- Remove some unnecessary scan-view files
|
||||||
|
|
||||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11.1.0-0.4.rc2
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11.1.0-0.4.rc2
|
||||||
|
14
completion-model-cmake.patch
Normal file
14
completion-model-cmake.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
diff -Naur clang-tools-extra-12.0.0rc1.src.orig/clangd/quality/CompletionModel.cmake clang-tools-extra-12.0.0rc1.src/clangd/quality/CompletionModel.cmake
|
||||||
|
--- clang-tools-extra-12.0.0rc1.src.orig/clangd/quality/CompletionModel.cmake 2021-02-14 17:03:14.000000000 +0100
|
||||||
|
+++ clang-tools-extra-12.0.0rc1.src/clangd/quality/CompletionModel.cmake 2021-02-14 20:57:51.000000000 +0100
|
||||||
|
@@ -5,8 +5,8 @@
|
||||||
|
# will define a C++ class called ${cpp_class} - which may be a
|
||||||
|
# namespace-qualified class name.
|
||||||
|
function(gen_decision_forest model filename cpp_class)
|
||||||
|
- set(model_compiler ${CMAKE_SOURCE_DIR}/../clang-tools-extra/clangd/quality/CompletionModelCodegen.py)
|
||||||
|
-
|
||||||
|
+ set(model_compiler ${LLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR}/clangd/quality/CompletionModelCodegen.py)
|
||||||
|
+
|
||||||
|
set(output_dir ${CMAKE_CURRENT_BINARY_DIR})
|
||||||
|
set(header_file ${output_dir}/${filename}.h)
|
||||||
|
set(cpp_file ${output_dir}/${filename}.cpp)
|
8
sources
8
sources
@ -1,4 +1,4 @@
|
|||||||
SHA512 (clang-11.1.0rc2.src.tar.xz) = cae207e69b6d7df31303b1c73d55d82091babedbe0dc684aab1b603ce7e749d98a11a14ae9e3848dcb95a5840b38de56f407dda10b8b80eac3a6ce09ca44758a
|
SHA512 (clang-12.0.0rc1.src.tar.xz) = ffde0f500926e3bb40c9565e013ae73f488ecf3ffea28a1a14c366d12fddc9a399d126cb8af1b42565cc8c32fdcc6d8f5056fd31dd6e104dad2b856cda19009e
|
||||||
SHA512 (clang-tools-extra-11.1.0rc2.src.tar.xz) = 462a15d571b0f7bb02641cf1ebfa8e510c6877839f6cdae48a8535ef481ec4ffdcf062fc7cfd8ea791bc4f8dff45f2104151cae6fa94d1091f995bcf8b87c0e5
|
SHA512 (clang-tools-extra-12.0.0rc1.src.tar.xz) = 5c7dd5a5fc287513f281db66963101452a5463454393c554f4af043f99737b49110f3d0e07932e99a329f904175c236d31063c2c86b1f9f679c75fb55db0fab3
|
||||||
SHA512 (clang-tools-extra-11.1.0rc2.src.tar.xz.sig) = 7cb6632673c9739c87f1a8cc643e7f5583b52fc893d489d738216b423ceba6e97454323674cf0ee178e4141171d24eefc1b0786fad84efcb2bdb27d6033393b3
|
SHA512 (clang-tools-extra-12.0.0rc1.src.tar.xz.sig) = 7e63da5b1f2df71d2378a7bff02eb8976a40ff4a106cb775a022b305d2847282d0c5865413ca77e41785c63cf90e11a9b9f2838b148febd1f9e0eea048d1102c
|
||||||
SHA512 (clang-11.1.0rc2.src.tar.xz.sig) = 4921b2c4ef64c57d7135989349da8999b621c182362c0edabb23c67192052729afc9ba09888ee683cb10e39d5645250b1b62100c22ded8ac05f1ca0ba36b8e64
|
SHA512 (clang-12.0.0rc1.src.tar.xz.sig) = 4afb9effe6417a5c1d03189aff9c8cf3af49a317504b0d09c4c3242627f92c9b27a0291346ee547541fe8c00f36075f3b47b3572eaa8a6174854a3d2505348b3
|
||||||
|
Loading…
Reference in New Issue
Block a user