- undefine ghc_without_shared if it is defined for now

- ghc-ppc64el.patch is in 7.8.3
- use quick/quick-llvm when building
- set LDFLAGS
- probably no bindir/ghci now on archs without ghci
This commit is contained in:
Jens Petersen 2014-10-20 11:43:44 +09:00
parent 6066ff4e49
commit 138479e435
2 changed files with 19 additions and 58 deletions

View File

@ -1,41 +0,0 @@
Description: Add ppc64el support
Author: Colin Watson <cjwatson@ubuntu.com>
Bug: https://ghc.haskell.org/trac/ghc/ticket/8965
Last-Update: 2014-04-12
Index: b/aclocal.m4
===================================================================
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -173,7 +173,7 @@
GET_ARM_ISA()
test -z "[$]2" || eval "[$]2=\"ArchARM {armISA = \$ARM_ISA, armISAExt = \$ARM_ISA_EXT, armABI = \$ARM_ABI}\""
;;
- alpha|mips|mipseb|mipsel|hppa|hppa1_1|ia64|m68k|rs6000|s390|s390x|sparc64|vax)
+ alpha|mips|mipseb|mipsel|hppa|hppa1_1|ia64|m68k|powerpc64le|rs6000|s390|s390x|sparc64|vax)
test -z "[$]2" || eval "[$]2=ArchUnknown"
;;
*)
@@ -1868,6 +1868,9 @@
mips*)
$2="mips"
;;
+ powerpc64le*)
+ $2="powerpc64le"
+ ;;
powerpc64*)
$2="powerpc64"
;;
Index: b/includes/Stg.h
===================================================================
--- a/includes/Stg.h
+++ b/includes/Stg.h
@@ -213,7 +213,7 @@
#define II_(X) static StgWordArray (X) GNU_ATTRIBUTE(aligned (8))
#define IF_(f) static StgFunPtr GNUC3_ATTRIBUTE(used) f(void)
#define FN_(f) StgFunPtr f(void)
-#define EF_(f) extern StgFunPtr f(void)
+#define EF_(f) extern StgFunPtr f()
/* -----------------------------------------------------------------------------
Tail calls

View File

@ -10,6 +10,11 @@
### uncomment to generate haddocks for bootstrap ### uncomment to generate haddocks for bootstrap
#%%undefine without_haddock #%%undefine without_haddock
# need to enable shared libs for all arches
%if %{defined ghc_without_shared}
%undefine ghc_without_shared
%endif
%global space %(echo -n ' ') %global space %(echo -n ' ')
%global BSDHaskellReport BSD%{space}and%{space}HaskellReport %global BSDHaskellReport BSD%{space}and%{space}HaskellReport
@ -42,9 +47,6 @@ Patch1: ghc-gen_contents_index-haddock-path.patch
Patch14: ghc-7.6.3-LlvmCodeGen-llvm-version-warning.patch Patch14: ghc-7.6.3-LlvmCodeGen-llvm-version-warning.patch
# unversion library html docdirs # unversion library html docdirs
Patch16: ghc-cabal-unversion-docdir.patch Patch16: ghc-cabal-unversion-docdir.patch
# changes for ppc64le committed upstream for 7.8.3
# (https://ghc.haskell.org/trac/ghc/ticket/8965)
Patch19: ghc-ppc64el.patch
# warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
Patch20: ghc-glibc-2.20_BSD_SOURCE.patch Patch20: ghc-glibc-2.20_BSD_SOURCE.patch
# Debian patch # Debian patch
@ -119,11 +121,7 @@ BuildRequires: python
%ifarch armv7hl armv5tel %ifarch armv7hl armv5tel
BuildRequires: llvm >= 3.0 BuildRequires: llvm >= 3.0
%endif %endif
%ifarch ppc64le aarch64 %ifarch armv7hl aarch64
# for patch19 and patch21
BuildRequires: autoconf
%endif
%ifarch armv7hl
# patch22 # patch22
BuildRequires: autoconf, automake BuildRequires: autoconf, automake
%endif %endif
@ -268,19 +266,11 @@ rm -r libffi-tarballs
%patch14 -p1 -b .orig %patch14 -p1 -b .orig
%endif %endif
%ifarch ppc64 s390x
%patch15 -p1 -b .orig
%endif
# unversion pkgdoc htmldir # unversion pkgdoc htmldir
%if 0%{?fedora} >= 21 %if 0%{?fedora} >= 21
%patch16 -p1 -b .orig %patch16 -p1 -b .orig
%endif %endif
%ifarch ppc64le
%patch19 -p1 -b .orig
%endif
%patch20 -p1 -b .orig %patch20 -p1 -b .orig
%ifarch aarch64 %ifarch aarch64
@ -312,6 +302,12 @@ BuildFlavour = perf
%else %else
BuildFlavour = perf-llvm BuildFlavour = perf-llvm
%endif %endif
%else
%ifnarch armv7hl armv5tel
BuildFlavour = quick-llvm
%else
BuildFlavour = quick
%endif
%endif %endif
GhcLibWays = v dyn %{!?without_prof:p} GhcLibWays = v dyn %{!?without_prof:p}
%if %{defined without_haddock} %if %{defined without_haddock}
@ -328,9 +324,10 @@ BUILD_DOCBOOK_HTML = NO
EOF EOF
export CFLAGS="${CFLAGS:-%optflags}" export CFLAGS="${CFLAGS:-%optflags}"
export LDFLAGS="${LDFLAGS:-%__global_ldflags}"
# * %%configure induces cross-build due to different target/host/build platform names # * %%configure induces cross-build due to different target/host/build platform names
# * --with-gcc=%{_bindir}/gcc is to avoid ccache hardcoding problem when bootstrapping # * --with-gcc=%{_bindir}/gcc is to avoid ccache hardcoding problem when bootstrapping
%ifarch ppc64le aarch64 armv7hl %ifarch aarch64 armv7hl
for i in $(find . -name config.guess -o -name config.sub) ; do for i in $(find . -name config.guess -o -name config.sub) ; do
[ -f /usr/lib/rpm/redhat/$(basename $i) ] && %{__rm} -f $i && %{__cp} -fv /usr/lib/rpm/redhat/$(basename $i) $i [ -f /usr/lib/rpm/redhat/$(basename $i) ] && %{__rm} -f $i && %{__cp} -fv /usr/lib/rpm/redhat/$(basename $i) $i
done done
@ -473,8 +470,10 @@ fi
%{_bindir}/ghc-%{version} %{_bindir}/ghc-%{version}
%{_bindir}/ghc-pkg %{_bindir}/ghc-pkg
%{_bindir}/ghc-pkg-%{version} %{_bindir}/ghc-pkg-%{version}
%ifarch %ghc_arches_with_ghci
%{_bindir}/ghci %{_bindir}/ghci
%{_bindir}/ghci-%{version} %{_bindir}/ghci-%{version}
%endif
%{_bindir}/hp2ps %{_bindir}/hp2ps
%{_bindir}/hpc %{_bindir}/hpc
%ghost %{_bindir}/hsc2hs %ghost %{_bindir}/hsc2hs
@ -552,6 +551,9 @@ fi
- shared libraries on all archs - shared libraries on all archs
- use rpm internal dependency generator with ghc.attr on F22 - use rpm internal dependency generator with ghc.attr on F22
- fix bash-ism in ghc-doc-index (#1146733) - fix bash-ism in ghc-doc-index (#1146733)
- do "quick" build when bootstrapping
- setup LDFLAGS
- bindir/ghci only on ghc_arches_with_ghci
* Tue Jul 15 2014 Jens Petersen <petersen@redhat.com> - 7.6.3-25 * Tue Jul 15 2014 Jens Petersen <petersen@redhat.com> - 7.6.3-25
- configure ARM with VFPv3D16 and without NEON (#995419) - configure ARM with VFPv3D16 and without NEON (#995419)