Merge remote-tracking branch 'origin/f27' into f26
This commit is contained in:
commit
da075636c1
|
@ -8,3 +8,7 @@
|
|||
/clang-tools-extra-3.9.1.src.tar.xz
|
||||
/cfe-4.0.0.src.tar.xz
|
||||
/clang-tools-extra-4.0.0.src.tar.xz
|
||||
/test-suite-4.0.0.src.tar.xz
|
||||
/cfe-4.0.1.src.tar.xz
|
||||
/test-suite-4.0.1.src.tar.xz
|
||||
/clang-tools-extra-4.0.1.src.tar.xz
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
From 9d17579a4fa653627bfafa77621c3a89867da97d Mon Sep 17 00:00:00 2001
|
||||
From: Tom Stellard <tstellar@redhat.com>
|
||||
Date: Tue, 9 May 2017 01:42:33 +0000
|
||||
Subject: [PATCH] docs: Fix Sphinx detection with out-of-tree builds
|
||||
|
||||
Adapt to changes made in r302499.
|
||||
|
||||
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@302500 91177308-0d34-0410-b5e6-96231b3b80d8
|
||||
---
|
||||
docs/CMakeLists.txt | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/docs/CMakeLists.txt b/docs/CMakeLists.txt
|
||||
index 13b79fdf..d2956c1 100644
|
||||
--- a/docs/CMakeLists.txt
|
||||
+++ b/docs/CMakeLists.txt
|
||||
@@ -91,8 +91,8 @@ endif()
|
||||
endif()
|
||||
|
||||
if (LLVM_ENABLE_SPHINX)
|
||||
+ include(AddSphinxTarget)
|
||||
if (SPHINX_FOUND)
|
||||
- include(AddSphinxTarget)
|
||||
if (${SPHINX_OUTPUT_HTML})
|
||||
add_sphinx_target(html clang)
|
||||
add_custom_command(TARGET docs-clang-html POST_BUILD
|
||||
--
|
||||
1.8.3.1
|
||||
|
|
@ -0,0 +1,73 @@
|
|||
From c4d409e8481e402eb34739c6579bd9ffe383f3cd Mon Sep 17 00:00:00 2001
|
||||
From: Tom Stellard <tstellar@redhat.com>
|
||||
Date: Fri, 16 Jun 2017 00:48:27 +0000
|
||||
Subject: [PATCH] lit.cfg: Remove substitutions for clang/llvm tools
|
||||
|
||||
We were missing some subsitutions, for example 'not with no pipe, so
|
||||
there was a mismatch where some tests would run tools using the full
|
||||
path and others would search PATH for the tool.
|
||||
|
||||
The new beahavior is that the lit tests will always search PATH for the
|
||||
tool. This should not change the current functionality, because the
|
||||
smae paths that were being used in substitutions are being added to
|
||||
PATH.
|
||||
---
|
||||
test/lit.cfg | 42 ------------------------------------------
|
||||
1 file changed, 42 deletions(-)
|
||||
|
||||
diff --git a/test/lit.cfg b/test/lit.cfg
|
||||
index 7d8bebf..9ded96c 100644
|
||||
--- a/test/lit.cfg
|
||||
+++ b/test/lit.cfg
|
||||
@@ -303,48 +303,6 @@ config.substitutions.append(
|
||||
(' %clang-cl ',
|
||||
"""*** invalid substitution, use '%clang_cl'. ***""") )
|
||||
|
||||
-# For each occurrence of a clang tool name as its own word, replace it
|
||||
-# with the full path to the build directory holding that tool. This
|
||||
-# ensures that we are testing the tools just built and not some random
|
||||
-# tools that might happen to be in the user's PATH.
|
||||
-tool_dirs = os.path.pathsep.join((clang_tools_dir, llvm_tools_dir))
|
||||
-
|
||||
-# Regex assertions to reject neighbor hyphens/dots (seen in some tests).
|
||||
-# For example, don't match 'clang-check-' or '.clang-format'.
|
||||
-NoPreHyphenDot = r"(?<!(-|\.))"
|
||||
-NoPostHyphenDot = r"(?!(-|\.))"
|
||||
-NoPostBar = r"(?!(/|\\))"
|
||||
-
|
||||
-tool_patterns = [r"\bFileCheck\b",
|
||||
- r"\bc-index-test\b",
|
||||
- NoPreHyphenDot + r"\bclang-check\b" + NoPostHyphenDot,
|
||||
- NoPreHyphenDot + r"\bclang-format\b" + NoPostHyphenDot,
|
||||
- # FIXME: Some clang test uses opt?
|
||||
- NoPreHyphenDot + r"\bopt\b" + NoPostBar + NoPostHyphenDot,
|
||||
- # Handle these specially as they are strings searched
|
||||
- # for during testing.
|
||||
- r"\| \bcount\b",
|
||||
- r"\| \bnot\b"]
|
||||
-
|
||||
-if config.clang_examples:
|
||||
- tool_patterns.append(NoPreHyphenDot + r"\bclang-interpreter\b" + NoPostHyphenDot)
|
||||
-
|
||||
-for pattern in tool_patterns:
|
||||
- # Extract the tool name from the pattern. This relies on the tool
|
||||
- # name being surrounded by \b word match operators. If the
|
||||
- # pattern starts with "| ", include it in the string to be
|
||||
- # substituted.
|
||||
- tool_match = re.match(r"^(\\)?((\| )?)\W+b([0-9A-Za-z-_]+)\\b\W*$",
|
||||
- pattern)
|
||||
- tool_pipe = tool_match.group(2)
|
||||
- tool_name = tool_match.group(4)
|
||||
- tool_path = lit.util.which(tool_name, tool_dirs)
|
||||
- if not tool_path:
|
||||
- # Warn, but still provide a substitution.
|
||||
- lit_config.note('Did not find ' + tool_name + ' in ' + tool_dirs)
|
||||
- tool_path = clang_tools_dir + '/' + tool_name
|
||||
- config.substitutions.append((pattern, tool_pipe + tool_path))
|
||||
-
|
||||
###
|
||||
|
||||
# Set available features we allow tests to conditionalize on.
|
||||
--
|
||||
2.9.3
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
From 3306314bccdb3429a58fca198bec8d1a01cdf170 Mon Sep 17 00:00:00 2001
|
||||
From: Matthias Braun <matze@braunis.de>
|
||||
Date: Fri, 13 Jan 2017 18:36:20 +0000
|
||||
Subject: [PATCH] litsupport: Add compatibility cludge so it still works with
|
||||
the pypy version of lit
|
||||
|
||||
git-svn-id: https://llvm.org/svn/llvm-project/test-suite/trunk@291933 91177308-0d34-0410-b5e6-96231b3b80d8
|
||||
---
|
||||
litsupport/testfile.py | 13 ++++++++-----
|
||||
1 file changed, 8 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/litsupport/testfile.py b/litsupport/testfile.py
|
||||
index d1d234a..7223938 100644
|
||||
--- a/litsupport/testfile.py
|
||||
+++ b/litsupport/testfile.py
|
||||
@@ -27,16 +27,19 @@ def parse(context, filename):
|
||||
runscript = []
|
||||
verifyscript = []
|
||||
metricscripts = {}
|
||||
- keywords = ['PREPARE:', 'RUN:', 'VERIFY:', 'METRIC:']
|
||||
+ # Note that we keep both "RUN" and "RUN:" in the list to stay compatible
|
||||
+ # with older lit versions.
|
||||
+ keywords = ['PREPARE:', 'PREPARE', 'RUN:', 'RUN', 'VERIFY:', 'VERIFY',
|
||||
+ 'METRIC:', 'METRIC']
|
||||
for line_number, command_type, ln in \
|
||||
parseIntegratedTestScriptCommands(filename, keywords):
|
||||
- if command_type == 'PREPARE:':
|
||||
+ if command_type.startswith('PREPARE'):
|
||||
_parseShellCommand(preparescript, ln)
|
||||
- elif command_type == 'RUN:':
|
||||
+ elif command_type.startswith('RUN'):
|
||||
_parseShellCommand(runscript, ln)
|
||||
- elif command_type == 'VERIFY:':
|
||||
+ elif command_type.startswith('VERIFY'):
|
||||
_parseShellCommand(verifyscript, ln)
|
||||
- elif command_type == 'METRIC:':
|
||||
+ elif command_type.startswith('METRIC'):
|
||||
metric, ln = ln.split(':', 1)
|
||||
metricscript = metricscripts.setdefault(metric.strip(), list())
|
||||
_parseShellCommand(metricscript, ln)
|
||||
--
|
||||
2.9.3
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
From 0d272ed9be35fcd1992b08a9026a74d18cf1d7ec Mon Sep 17 00:00:00 2001
|
||||
From: Tom Stellard <tstellar@redhat.com>
|
||||
Date: Thu, 15 Jun 2017 16:33:25 -0400
|
||||
Subject: [PATCH] test: Remove FileCheck, not, count dependencies
|
||||
|
||||
clang already adds these as dependencies for lit.
|
||||
---
|
||||
test/CMakeLists.txt | 3 ---
|
||||
1 file changed, 3 deletions(-)
|
||||
|
||||
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
|
||||
index a9d7b7c..1a8930a 100644
|
||||
--- a/test/CMakeLists.txt
|
||||
+++ b/test/CMakeLists.txt
|
||||
@@ -31,9 +31,6 @@ if(CLANG_TOOLS_TEST_USE_VG)
|
||||
endif()
|
||||
|
||||
set(CLANG_TOOLS_TEST_DEPS
|
||||
- # Base line deps.
|
||||
- FileCheck count not
|
||||
-
|
||||
# clang-tidy tests require it.
|
||||
clang-headers
|
||||
|
||||
--
|
||||
1.8.3.1
|
||||
|
97
clang.spec
97
clang.spec
|
@ -16,28 +16,57 @@
|
|||
%{_bindir}/clang-cpp \
|
||||
%{_bindir}/clang-format \
|
||||
%{_bindir}/clang-import-test \
|
||||
%{_bindir}/clang-offload-bundler
|
||||
%{_bindir}/clang-offload-bundler \
|
||||
%{_bindir}/git-clang-format
|
||||
|
||||
%if 0%{?fedora}
|
||||
%bcond_without python3
|
||||
%else
|
||||
%bcond_with python3
|
||||
%endif
|
||||
|
||||
Name: clang
|
||||
Version: 4.0.0
|
||||
Release: 3%{?dist}
|
||||
Version: 4.0.1
|
||||
Release: 4%{?dist}
|
||||
Summary: A C language family front-end for LLVM
|
||||
|
||||
License: NCSA
|
||||
URL: http://llvm.org
|
||||
Source0: http://llvm.org/releases/%{version}/cfe-%{version}.src.tar.xz
|
||||
Source1: http://llvm.org/releases/%{version}/clang-tools-extra-%{version}.src.tar.xz
|
||||
Source2: http://llvm.org/releases/%{version}/test-suite-%{version}.src.tar.xz
|
||||
|
||||
Source100: clang-config.h
|
||||
|
||||
Patch0: 0001-CMake-Fix-pthread-handling-for-out-of-tree-builds.patch
|
||||
# This patch is required when the test suite is using python-lit 0.5.0.
|
||||
Patch1: 0001-litsupport-Add-compatibility-cludge-so-it-still-work.patch
|
||||
Patch2: 0001-docs-Fix-Sphinx-detection-with-out-of-tree-builds.patch
|
||||
Patch3: 0001-test-Remove-FileCheck-not-count-dependencies.patch
|
||||
Patch4: 0001-lit.cfg-Remove-substitutions-for-clang-llvm-tools.patch
|
||||
|
||||
BuildRequires: cmake
|
||||
BuildRequires: llvm-devel = %{version}
|
||||
BuildRequires: libxml2-devel
|
||||
# llvm-static is required, because clang-tablegen needs libLLVMTableGen, which
|
||||
# is not included in libLLVM.so.
|
||||
BuildRequires: llvm-static = %{version}
|
||||
BuildRequires: perl-generators
|
||||
BuildRequires: ncurses-devel
|
||||
|
||||
# These build dependencies are required for the test suite.
|
||||
%if %with python3
|
||||
BuildRequires: python3-lit
|
||||
%else
|
||||
BuildRequires: python2-lit
|
||||
%endif
|
||||
|
||||
BuildRequires: zlib-devel
|
||||
BuildRequires: tcl
|
||||
BuildRequires: python-virtualenv
|
||||
BuildRequires: libstdc++-static
|
||||
BuildRequires: python3-sphinx
|
||||
|
||||
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
|
||||
# clang requires gcc, clang++ requires libstdc++-devel
|
||||
|
@ -96,8 +125,14 @@ A set of extra tools built using Clang's tooling API.
|
|||
|
||||
%prep
|
||||
%setup -T -q -b 1 -n clang-tools-extra-%{version}.src
|
||||
%patch0 -p1 -b .pthread-fix
|
||||
%patch3 -p1 -b .lit-dep-fix
|
||||
|
||||
%setup -T -q -b 2 -n test-suite-%{version}.src
|
||||
%patch1 -p1 -b .lit-fix
|
||||
|
||||
%setup -q -n cfe-%{version}.src
|
||||
%patch2 -p1 -b .docs-fix
|
||||
%patch4 -p1 -b .lit-tools-fix
|
||||
|
||||
mv ../clang-tools-extra-%{version}.src tools/extra
|
||||
|
||||
|
@ -117,6 +152,9 @@ cd _build
|
|||
-DENABLE_LINKER_BUILD_ID:BOOL=ON \
|
||||
-DLLVM_ENABLE_EH=ON \
|
||||
-DLLVM_ENABLE_RTTI=ON \
|
||||
-DLLVM_BUILD_DOCS=ON \
|
||||
-DLLVM_ENABLE_SPHINX=ON \
|
||||
-DSPHINX_WARNINGS_AS_ERRORS=OFF \
|
||||
\
|
||||
-DCLANG_BUILD_EXAMPLES:BOOL=OFF \
|
||||
%if 0%{?__isa_bits} == 64
|
||||
|
@ -136,8 +174,6 @@ make install DESTDIR=%{buildroot}
|
|||
mv -v %{buildroot}%{_includedir}/clang/Config/config{,-%{__isa_bits}}.h
|
||||
install -m 0644 %{SOURCE100} %{buildroot}%{_includedir}/clang/Config/config.h
|
||||
|
||||
# remove git integration
|
||||
rm -vf %{buildroot}%{_bindir}/git-clang-format
|
||||
# remove editor integrations (bbedit, sublime, emacs, vim)
|
||||
rm -vf %{buildroot}%{_datadir}/clang/clang-format-bbedit.applescript
|
||||
rm -vf %{buildroot}%{_datadir}/clang/clang-format-sublime.py*
|
||||
|
@ -154,15 +190,29 @@ rm -vf %{buildroot}%{_datadir}/clang/clang-rename.py
|
|||
# remove diff reformatter
|
||||
rm -vf %{buildroot}%{_datadir}/clang/clang-format-diff.py*
|
||||
|
||||
# TODO: Package html docs
|
||||
rm -Rvf %{buildroot}%{_pkgdocdir}
|
||||
|
||||
%check
|
||||
# requires lit.py from LLVM utilities
|
||||
#cd _build
|
||||
#make check-all
|
||||
cd _build
|
||||
PATH=%{_libdir}/llvm:$PATH make check-clang
|
||||
|
||||
mkdir -p %{_builddir}/test-suite-%{version}.src/_build
|
||||
cd %{_builddir}/test-suite-%{version}.src/_build
|
||||
|
||||
# FIXME: Using the cmake macro adds -Werror=format-security to the C/CXX flags,
|
||||
# which causes the test suite to fail to build.
|
||||
cmake .. -DCMAKE_C_COMPILER=%{buildroot}/usr/bin/clang \
|
||||
-DCMAKE_CXX_COMPILER=%{buildroot}/usr/bin/clang++
|
||||
make %{?_smp_mflags} check || :
|
||||
|
||||
|
||||
%files
|
||||
%{_libdir}/clang/
|
||||
%{clang_binaries}
|
||||
%{_bindir}/c-index-test
|
||||
%{_mandir}/man1/clang.1.gz
|
||||
|
||||
%files libs
|
||||
%{_libdir}/*.so.*
|
||||
|
@ -171,7 +221,7 @@ rm -vf %{buildroot}%{_datadir}/clang/clang-format-diff.py*
|
|||
%files devel
|
||||
%{_includedir}/clang/
|
||||
%{_includedir}/clang-c/
|
||||
%{_libdir}/cmake/
|
||||
%{_libdir}/cmake/*
|
||||
%dir %{_datadir}/clang/
|
||||
|
||||
%files analyzer
|
||||
|
@ -190,6 +240,33 @@ rm -vf %{buildroot}%{_datadir}/clang/clang-format-diff.py*
|
|||
%{_bindir}/modularize
|
||||
|
||||
%changelog
|
||||
* Sun Aug 06 2017 Björn Esser <besser82@fedoraproject.org> - 4.0.1-4
|
||||
- Rebuilt for AutoReq cmake-filesystem
|
||||
|
||||
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||
|
||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||
|
||||
* Fri Jun 23 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-1
|
||||
- 4.0.1 Release.
|
||||
|
||||
* Fri Jun 16 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-8
|
||||
- Enable make check-clang
|
||||
|
||||
* Mon Jun 12 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-7
|
||||
- Package git-clang-format
|
||||
|
||||
* Thu Jun 08 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-6
|
||||
- Generate man pages
|
||||
|
||||
* Thu Jun 08 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-5
|
||||
- Ignore test-suite failures until all arches are fixed.
|
||||
|
||||
* Mon Apr 03 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-4
|
||||
- Run llvm test-suite
|
||||
|
||||
* Mon Mar 27 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-3
|
||||
- Enable eh/rtti, which are required by lldb.
|
||||
|
||||
|
|
4
sources
4
sources
|
@ -1,2 +1,6 @@
|
|||
SHA512 (cfe-4.0.0.src.tar.xz) = a0d9972ec337a5c105fcbe7abc4076ba1e580f28908a3318f43bbfe59143f446ed5b78dad210f624145d7e5a3d56c15bfead78826c068422b60120fa1cfa482a
|
||||
SHA512 (clang-tools-extra-4.0.0.src.tar.xz) = 2f9aed5ff7e175b730802961f9ce0aa6376ce78d905839e60536b6d166f68dc31d4420a668ed1e08f3601a5fefa8f7514172daaf77eb325fecd00e55f56e5af4
|
||||
SHA512 (test-suite-4.0.0.src.tar.xz) = 1ec2bc3307d8047ffe877e86ebac69f8f1f3ac062d789c2e341b4d4be4b1973d02ab398879cd42faf3346b8952991f00f4f77e4e63604718241cc5f5abb822b3
|
||||
SHA512 (cfe-4.0.1.src.tar.xz) = 936c9e1626b27e63a4fb11f3c0cb998eeaf9a520ad6e2bcd67cb4352e59e7781ecc700df79794f3fd70473d90b7e2ba418a39038eb0146b68e843f0705c1f964
|
||||
SHA512 (test-suite-4.0.1.src.tar.xz) = 4a7184568fb805f299d7723622f87e1c7755701a2344b1a554ed657952caa25855ec637c889a15ad23994e4850822571b008c4fc95bee833aa05d564b9ff11c6
|
||||
SHA512 (clang-tools-extra-4.0.1.src.tar.xz) = ea26d926f428e62e76cf8a073e63ffe05645f6592e05d7717d5c257908870ae9217727d3e1578227b14eda5937085872463f1a8e99970256179c68b8a92e69e0
|
||||
|
|
Loading…
Reference in New Issue