Compare commits

...

9 Commits
master ... f20

Author SHA1 Message Date
Dave Johansen 062a4c50ac Fix for LLDB 2015-01-03 07:20:36 -07:00
Jan Vcelak ac917a07b2 clang-analyzer: fix insecure temporary file handling (CVE-2014-2893)
Resolves: #1088105 #1088107
2014-12-26 02:05:35 +01:00
Adam Jackson 18fe8ca1c7 llvm and clang 3.4.2
Conflicts:
	llvm.spec
2014-10-30 09:38:11 +10:00
Adam Jackson bc07a1672a Different attempt to default to hard-float on arm (#803433)
Conflicts:
	llvm.spec
2014-10-30 09:37:11 +10:00
Adam Jackson 2bdca5dab0 Attempt to default to hard-float on arm (#803433) 2014-10-30 09:36:04 +10:00
Adam Jackson ad1778b27a llvm 3.4.1
Signed-off-by: Adam Jackson <ajax@redhat.com>

Conflicts:
	llvm.spec
2014-10-30 09:35:39 +10:00
Adam Jackson fdf37f6fb7 Undo OpenGTL obsoletion in F20 since we got it building
- Don't conditionalize lldb source, it does the wrong thing when koji decides
  it's cool to build the srpm on !x86.
2014-04-11 14:35:24 -04:00
Adam Jackson 8e35e823b9 Merge branch 'master' into f20
Signed-off-by: Adam Jackson <ajax@redhat.com>
2014-04-11 14:22:15 -04:00
Dave Airlie a506314358 llvm: don't build lldb on powerpc - bump nvr for f20
this fails to build upstream due to a collision between

https://bugzilla.redhat.com/show_bug.cgi?id=1049976
2014-01-17 09:52:54 +10:00
6 changed files with 136 additions and 19 deletions

View File

@ -0,0 +1,20 @@
--- a/tools/lldb/scripts/Python/finish-swig-Python-LLDB.sh
+++ b/tools/lldb/scripts/Python/finish-swig-Python-LLDB.sh
@@ -118,6 +118,8 @@
echo "Python files will be put in ${framework_python_dir}"
fi
+framework_python_dir=$DESTDIR/$framework_python_dir
+
python_dirs="${framework_python_dir}"
for python_dir in $python_dirs
@@ -157,7 +159,7 @@
then
ln -s "../../../LLDB" _lldb.so
else
- ln -s "../../../liblldb${SOEXT}" _lldb.so
+ ln -s "../../../llvm/liblldb${SOEXT}" _lldb.so
fi
else
if [ $Debug -eq 1 ]

View File

@ -0,0 +1,16 @@
diff -up llvm-3.4.1.src/tools/clang/lib/Driver/Tools.cpp.jx llvm-3.4.1.src/tools/clang/lib/Driver/Tools.cpp
--- llvm-3.4.1.src/tools/clang/lib/Driver/Tools.cpp.jx 2013-12-08 21:59:27.000000000 -0500
+++ llvm-3.4.1.src/tools/clang/lib/Driver/Tools.cpp 2014-06-02 11:24:07.628292753 -0400
@@ -763,9 +763,9 @@ static StringRef getARMFloatABI(const Dr
break;
}
default:
- // Assume "soft", but warn the user we are guessing.
- FloatABI = "soft";
- D.Diag(diag::warn_drv_assuming_mfloat_abi_is) << "soft";
+ // Assume "hard", but warn the user we are guessing.
+ FloatABI = "hard";
+ D.Diag(diag::warn_drv_assuming_mfloat_abi_is) << "hard";
break;
}
}

View File

@ -0,0 +1,28 @@
CVE-2014-2893, insecure temporary file handling in clang's scan-build utility
Resolves: #1088107 #1088105
---
tools/clang/tools/scan-build/scan-build | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/tools/clang/tools/scan-build/scan-build b/tools/clang/tools/scan-build/scan-build
index 0f119f6..76135d8 100755
--- a/tools/clang/tools/scan-build/scan-build
+++ b/tools/clang/tools/scan-build/scan-build
@@ -204,6 +204,12 @@ sub GetHTMLRunDir {
else {
$NewDir = "$Dir/$DateString-$RunNumber";
}
+
+ # Make sure that the directory does not exist in order to avoid hijack.
+ if (-e $NewDir) {
+ DieDiag("The directory '$NewDir' already exists.\n");
+ }
+
system 'mkdir','-p',$NewDir;
return $NewDir;
}
--
2.1.0

View File

@ -36,7 +36,7 @@
Name: llvm
Version: 3.4
Release: 6%{?dist}
Release: 12%{?dist}
Summary: The Low Level Virtual Machine
Group: Development/Languages
@ -44,23 +44,32 @@ License: NCSA
URL: http://llvm.org/
# source archives
Source0: %{downloadurl}/llvm-%{version}%{?prerel}.src.tar.gz
Source1: %{downloadurl}/clang-%{version}%{?prerel}.src.tar.gz
Source0: http://llvm.org/releases/3.4.2/llvm-3.4.2.src.tar.gz
Source1: http://llvm.org/releases/3.4.2/cfe-3.4.2.src.tar.gz
Source2: %{downloadurl}/compiler-rt-%{version}%{?prerel}.src.tar.gz
%if %{with lldb}
Source3: %{downloadurl}/lldb-%{version}%{?prerel}.src.tar.gz
%endif
# multilib fixes
Source10: llvm-Config-config.h
Source11: llvm-Config-llvm-config.h
# patches
Patch1: 0001-data-install-preserve-timestamps.patch
Patch2: 0002-linker-flags-speedup-memory.patch
# sync with release_34@209031
#Patch1: 0001-Merging-r207990.patch
#Patch2: 0002-Merging-r208721.patch
#Patch3: 0003-Merging-r208501.patch
#Patch4: 0004-Merging-r208908.patch
# radeonsi GL 3.3 backport
Patch3: llvm-3.4-radeonsi-backport.patch
# patches
Patch11: 0001-data-install-preserve-timestamps.patch
Patch12: 0002-linker-flags-speedup-memory.patch
Patch6: 0006-fix-python-package-installation.patch
# sledgehammer to default to hard-float on arm
Patch20: clang-3.4-arm-hard-float.patch
Patch21: clang-analyzer-cve-2014-2893.patch
# http://llvm.org/bugs/attachment.cgi?id=12586
Patch22: pr12586.patch
BuildRequires: bison
BuildRequires: chrpath
@ -124,12 +133,14 @@ Documentation for the LLVM compiler infrastructure.
%package libs
Summary: LLVM shared libraries
Group: System Environment/Libraries
%if 0%{?fedora} > 20
## retire OpenGTL/libQtGTL here
Obsoletes: OpenGTL < 0.9.18-50
Obsoletes: OpenGTL-libs < 0.9.18-50
Obsoletes: OpenGTL-devel < 0.9.18-50
Obsoletes: libQtGTL < 0.9.3-50
Obsoletes: libQtGTL-devel < 0.9.3-50
%endif
%description libs
Shared libraries for the LLVM compiler infrastructure.
@ -279,10 +290,10 @@ HTML documentation for LLVM's OCaml binding.
%prep
%setup -q %{?with_clang:-a1} %{?with_crt:-a2} %{?with_lldb:-a3}
%setup -q %{?with_clang:-a1} %{?with_crt:-a2} %{?with_lldb:-a3} -n llvm-3.4.2.src
rm -rf tools/clang tools/lldb projects/compiler-rt
%if %{with clang}
mv clang-%{version} tools/clang
mv cfe-*/ tools/clang
%endif
%if %{with crt}
mv compiler-rt-%{version} projects/compiler-rt
@ -291,9 +302,16 @@ mv compiler-rt-%{version} projects/compiler-rt
mv lldb-%{version} tools/lldb
%endif
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch11 -p1
%patch12 -p1
%if %{with lldb}
%patch6 -p1
%endif
%if %{with clang}
%patch20 -p1
%patch21 -p1
%endif
%patch22 -p1
# fix library paths
sed -i 's|/lib /usr/lib $lt_ld_extra|%{_libdir} $lt_ld_extra|' ./configure
@ -616,6 +634,7 @@ exit 0
%{_bindir}/lldb
%{_bindir}/lldb-platform
%{_libdir}/%{name}/liblldb.so
%{python_sitearch}/lldb/
%doc %{_mandir}/man1/lldb.1.*
%files -n lldb-devel
@ -659,8 +678,29 @@ exit 0
%endif
%changelog
* Thu Mar 27 2014 Rex Dieter <rdieter@fedoraproject.org> 3.4-6
- -libs: Obsoletes: OpenGTL libQtGTL
* Fri Jan 02 2015 Dave Johansen <davejohansen@gmail.com> 3.4-12
- Fix for LLDB
* Fri Dec 26 2014 Jan Vcelak <jvcelak@fedoraproject.org> 3.4-11
- clang-analyzer: fix insecure temporary file handling (CVE-2014-2893)
* Thu Jul 24 2014 Adam Jackson <ajax@redhat.com> 3.4-10
- llvm and clang 3.4.2
* Wed Jun 11 2014 Adam Jackson <ajax@redhat.com> 3.4-9
- Different attempt to default to hard-float on arm (#803433)
* Mon Jun 02 2014 Adam Jackson <ajax@redhat.com> 3.4-8
- Attempt to default to hard-float on arm (#803433)
* Thu May 29 2014 Adam Jackson <ajax@redhat.com> 3.4-7
- Update to llvm 3.4.1 plus a few things from svn
- Drop radeonsi patch, merged in 3.4.1
* Fri Apr 11 2014 Adam Jackson <ajax@redhat.com> 3.4-6
- Undo OpenGTL obsoletion in F20 since we got it building
- Don't conditionalize lldb source, it does the wrong thing when koji decides
it's cool to build the srpm on !x86.
* Wed Mar 19 2014 Dave Airlie <airlied@redhat.com> 3.4-5
- backport patches from 3.5 to enable GL3.3 on radeonsi

13
pr12586.patch Normal file
View File

@ -0,0 +1,13 @@
diff --git a/tools/clang/lib/Driver/Tools.cpp b/tools/clang/lib/Driver/Tools.cpp
index 29713ed..0d23694 100644
--- a/tools/clang/lib/Driver/Tools.cpp
+++ b/tools/clang/lib/Driver/Tools.cpp
@@ -747,7 +747,7 @@ static StringRef getARMFloatABI(const Driver &D,
FloatABI = "hard";
break;
case llvm::Triple::GNUEABI:
- FloatABI = "softfp";
+ FloatABI = Triple.getVendorName() == "hardfloat" ? "hard" : "softfp";
break;
case llvm::Triple::EABI:
// EABI is always AAPCS, and if it was not marked 'hard', it's softfp

View File

@ -1,4 +1,4 @@
b378f1e2c424e03289effc75268d3d2c clang-3.4.src.tar.gz
7ed60a0463f9fdfa20db7109d4624cee lldb-3.4.src.tar.gz
7938353e3a3bda85733a165e7ac4bb84 compiler-rt-3.4.src.tar.gz
46ed668a1ce38985120dbf6344cf6116 llvm-3.4.src.tar.gz
87945973b7c73038871c5f849a818588 cfe-3.4.2.src.tar.gz
a20669f75967440de949ac3b1bad439c llvm-3.4.2.src.tar.gz