use llvm34 instead of llvm-3.5 for arm (#1161049)

This commit is contained in:
Jens Petersen 2014-12-22 18:24:56 +09:00
parent 178134facc
commit 90d9ed7db6
4 changed files with 22 additions and 36 deletions

3
ghc Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
/usr/bin/ghc -pgmlc llc-3.4 -pgmlo opt-3.4 $*

View File

@ -1,32 +0,0 @@
commit 08a38628f29df63ac842f4d083efb414f42d7bff
Author: Edward Z. Yang <ezyang@mit.edu>
Date: Tue Jul 9 00:01:43 2013 -0700
Disable executable stack for the linker note, fixing #703 (again)
Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
Modified compiler/main/DriverPipeline.hs
diff --git a/compiler/main/DriverPipeline.hs b/compiler/main/DriverPipeline.hs
index 67377e6..26425ae 100644
--- a/compiler/main/DriverPipeline.hs
+++ b/compiler/main/DriverPipeline.hs
@@ -1640,7 +1640,17 @@ mkNoteObjsToLinkIntoBinary dflags dep_packages = do
text elfSectionNote,
text "\n",
- text "\t.ascii \"", info', text "\"\n" ]
+ text "\t.ascii \"", info', text "\"\n",
+
+ -- ALL generated assembly must have this section to disable
+ -- executable stacks. See also
+ -- compiler/nativeGen/AsmCodeGen.lhs for another instance
+ -- where we need to do this.
+ (if platformHasGnuNonexecStack (targetPlatform dflags)
+ then text ".section .note.GNU-stack,\"\",@progbits\n"
+ else empty)
+
+ ]
where
info' = text $ escape info

3
ghc-pkg Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
/usr/bin/ghc-pkg $*

View File

@ -22,7 +22,7 @@ Version: 7.6.3
# - release can only be reset if *all* library versions get bumped simultaneously
# (sometimes after a major release)
# - minor release numbers for a branch should be incremented monotonically
Release: 26.1%{?dist}
Release: 26.2%{?dist}
Summary: Glasgow Haskell Compiler
License: %BSDHaskellReport
@ -33,6 +33,8 @@ Source2: http://www.haskell.org/ghc/dist/%{version}/ghc-%{version}-testsuite.tar
%endif
Source3: ghc-doc-index.cron
Source4: ghc-doc-index
Source5: ghc
Source6: ghc-pkg
# absolute haddock path (was for html/libraries -> libraries)
Patch1: ghc-gen_contents_index-haddock-path.patch
# fedora does not allow copy libraries
@ -124,7 +126,7 @@ BuildRequires: libxslt, docbook-style-xsl
BuildRequires: python
%endif
%ifarch armv7hl armv5tel
BuildRequires: llvm >= 3.0
BuildRequires: llvm34
%endif
%ifarch ppc64le aarch64
# for patch19 and patch21
@ -172,7 +174,7 @@ Requires(postun): chkconfig
# added in f14
Obsoletes: ghc-doc < 6.12.3-4
%ifarch armv7hl armv5tel
Requires: llvm >= 3.0
Requires: llvm34
%endif
%description compiler
@ -359,12 +361,19 @@ autoreconf
%endif
export CFLAGS="${CFLAGS:-%optflags}"
export LDFLAGS="${LDFLAGS:-%__global_ldflags}"
%ifarch armv7hl armv5tel
export GHC=%SOURCE5
%endif
./configure --prefix=%{_prefix} --exec-prefix=%{_exec_prefix} \
--bindir=%{_bindir} --sbindir=%{_sbindir} --sysconfdir=%{_sysconfdir} \
--datadir=%{_datadir} --includedir=%{_includedir} --libdir=%{_libdir} \
--libexecdir=%{_libexecdir} --localstatedir=%{_localstatedir} \
--sharedstatedir=%{_sharedstatedir} --mandir=%{_mandir} \
--with-gcc=%{_bindir}/gcc
--with-gcc=%{_bindir}/gcc \
%ifarch armv7hl armv5tel
--with-llc=%{_bindir}/llc-3.4 --with-opt=%{_bindir}/opt-3.4 \
%endif
%{nil}
# utf8 is needed when building with verbose output
LANG=en_US.utf8 make %{?_smp_mflags}
@ -556,6 +565,9 @@ fi
%changelog
* Mon Dec 22 2014 Jens Petersen <petersen@redhat.com> - 7.6.3-26.2
- use llvm34 instead of llvm-3.5 for arm (#1161049)
* Tue Nov 18 2014 Jens Petersen <petersen@redhat.com> - 7.6.3-26.1
- use rpm internal dependency generator with ghc.attr on F21+
- fix bash-ism in ghc-doc-index (#1146733)