update to new stable major version 7.6.3
- bootstrap build - use new ghc-rpm-macros-extra - no longer filter type-level package from haddock index
This commit is contained in:
parent
83540ee652
commit
9340b05892
2
.gitignore
vendored
2
.gitignore
vendored
@ -9,3 +9,5 @@ testsuite-6.12.3.tar.bz2
|
|||||||
/ghc-7.4.1-src.tar.bz2
|
/ghc-7.4.1-src.tar.bz2
|
||||||
/ghc-7.4.2-src.tar.bz2
|
/ghc-7.4.2-src.tar.bz2
|
||||||
/ghc-7.4.2-testsuite.tar.bz2
|
/ghc-7.4.2-testsuite.tar.bz2
|
||||||
|
/ghc-7.6.3-src.tar.bz2
|
||||||
|
/ghc-7.6.3-testsuite.tar.bz2
|
||||||
|
@ -1,33 +0,0 @@
|
|||||||
diff -u ghc-7.2.0.20110728/libraries/Cabal/cabal/Distribution/Simple/GHC.hs.orig ghc-7.2.0.20110728/libraries/Cabal/cabal/Distribution/Simple/GHC.hs
|
|
||||||
--- ghc-7.2.0.20110728/libraries/Cabal/Cabal/Distribution/Simple/GHC.hs.orig 2011-07-29 02:12:09.000000000 +0900
|
|
||||||
+++ ghc-7.2.0.20110728/libraries/Cabal/Cabal/Distribution/Simple/GHC.hs 2011-08-05 18:08:05.192042529 +0900
|
|
||||||
@@ -778,7 +778,10 @@
|
|
||||||
++ ["-L"++libDir | libDir <- extraLibDirs exeBi]
|
|
||||||
++ concat [["-framework", f] | f <- PD.frameworks exeBi]
|
|
||||||
++ if dynExe
|
|
||||||
- then ["-dynamic"]
|
|
||||||
+ then ["-dynamic",
|
|
||||||
+ "-hisuf", "dyn_hi",
|
|
||||||
+ "-osuf", "dyn_o"
|
|
||||||
+ ]
|
|
||||||
else []
|
|
||||||
++ if profExe
|
|
||||||
then ["-prof",
|
|
||||||
@@ -787,13 +790,14 @@
|
|
||||||
] ++ ghcProfOptions exeBi
|
|
||||||
else []
|
|
||||||
|
|
||||||
- -- For building exe's for profiling that use TH we actually
|
|
||||||
+ -- For building exe's for profiling or dynamic that use TH we actually
|
|
||||||
-- have to build twice, once without profiling and the again
|
|
||||||
-- with profiling. This is because the code that TH needs to
|
|
||||||
-- run at compile time needs to be the vanilla ABI so it can
|
|
||||||
-- be loaded up and run by the compiler.
|
|
||||||
- when (withProfExe lbi && EnableExtension TemplateHaskell `elem` allExtensions exeBi)
|
|
||||||
- (runGhcProg (binArgs False (withDynExe lbi) False))
|
|
||||||
+ when ((withProfExe lbi || withDynExe lbi) &&
|
|
||||||
+ EnableExtension TemplateHaskell `elem` allExtensions exeBi)
|
|
||||||
+ (runGhcProg (binArgs False False False))
|
|
||||||
|
|
||||||
runGhcProg (binArgs True (withDynExe lbi) (withProfExe lbi))
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
|||||||
diff -u ghc-6.12.1/libraries/gen_contents_index\~ ghc-6.12.1/libraries/gen_contents_index
|
|
||||||
--- ghc-6.12.1/libraries/gen_contents_index~ 2009-12-11 04:11:33.000000000 +1000
|
|
||||||
+++ ghc-6.12.1/libraries/gen_contents_index 2009-12-12 21:08:02.000000000 +1000
|
|
||||||
@@ -20,7 +20,7 @@
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
- HADDOCK=../../../../../bin/haddock
|
|
||||||
+ HADDOCK=/usr/bin/haddock
|
|
||||||
# We don't want the GHC API to swamp the index
|
|
||||||
HADDOCK_FILES=`ls -1 */*.haddock | grep -v '/ghc\.haddock' | sort`
|
|
||||||
for HADDOCK_FILE in $HADDOCK_FILES
|
|
File diff suppressed because it is too large
Load Diff
@ -1,11 +0,0 @@
|
|||||||
--- ghc-7.4.1/libraries/gen_contents_index~ 2012-09-30 16:14:39.368295240 +0900
|
|
||||||
+++ ghc-7.4.1/libraries/gen_contents_index 2012-10-30 19:12:10.017398594 +0900
|
|
||||||
@@ -50,7 +50,7 @@
|
|
||||||
esac
|
|
||||||
|
|
||||||
# Now create the combined contents and index pages
|
|
||||||
-echo $HADDOCK_ARGS
|
|
||||||
+#echo $HADDOCK_ARGS
|
|
||||||
$HADDOCK --gen-index --gen-contents -o . \
|
|
||||||
-t "Haskell Hierarchical Libraries" \
|
|
||||||
-p "prologue.txt" \
|
|
11
ghc-gen_contents_index-haddock-path.patch
Normal file
11
ghc-gen_contents_index-haddock-path.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- ghc-7.6.3/libraries/gen_contents_index~ 2013-04-19 06:22:46.000000000 +0900
|
||||||
|
+++ ghc-7.6.3/libraries/gen_contents_index 2013-04-22 12:07:48.922152864 +0900
|
||||||
|
@@ -60,7 +60,7 @@
|
||||||
|
done
|
||||||
|
done
|
||||||
|
else
|
||||||
|
- HADDOCK=../../../../../bin/haddock
|
||||||
|
+ HADDOCK=/usr/bin/haddock
|
||||||
|
# We don't want the GHC API to swamp the index
|
||||||
|
HADDOCK_FILES=`ls -1 */*.haddock | grep -v '/ghc\.haddock' | sort`
|
||||||
|
HADDOCK_ARGS="-p prologue.txt"
|
@ -1,12 +0,0 @@
|
|||||||
diff -u ghc-6.12.3/libraries/gen_contents_index\~ ghc-6.12.3/libraries/gen_contents_index
|
|
||||||
--- ghc-6.12.3/libraries/gen_contents_index~ 2010-09-14 13:03:12.000000000 +1000
|
|
||||||
+++ ghc-6.12.3/libraries/gen_contents_index 2010-11-04 16:41:32.000000000 +1000
|
|
||||||
@@ -24,7 +24,7 @@
|
|
||||||
*)
|
|
||||||
HADDOCK=/usr/bin/haddock
|
|
||||||
# We don't want the GHC API to swamp the index
|
|
||||||
- HADDOCK_FILES=`ls -1 */*.haddock | grep -v '/ghc\.haddock' | sort`
|
|
||||||
+ HADDOCK_FILES=`ls -1 */*.haddock | grep -v '/ghc\.haddock' | grep -v '/type-level\.haddock' | sort`
|
|
||||||
for HADDOCK_FILE in $HADDOCK_FILES
|
|
||||||
do
|
|
||||||
NAME_VERSION=`echo "$HADDOCK_FILE" | sed 's#/.*##'`
|
|
@ -1,34 +0,0 @@
|
|||||||
diff -up ghc-7.0.2/rts/Linker.c.fix-powerpc ghc-7.0.2/rts/Linker.c
|
|
||||||
--- ghc-7.0.2/rts/Linker.c.fix-powerpc 2011-02-28 19:10:08.000000000 +0100
|
|
||||||
+++ ghc-7.0.2/rts/Linker.c 2011-04-25 22:20:10.781092305 +0200
|
|
||||||
@@ -70,11 +70,12 @@
|
|
||||||
#include <sys/wait.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-#if defined(linux_HOST_OS ) || defined(freebsd_HOST_OS) || \
|
|
||||||
- defined(dragonfly_HOST_OS) || defined(netbsd_HOST_OS ) || \
|
|
||||||
- defined(openbsd_HOST_OS ) || \
|
|
||||||
- ( defined(darwin_HOST_OS ) && !defined(powerpc_HOST_ARCH) )
|
|
||||||
-/* Don't use mmap on powerpc-apple-darwin as mmap doesn't support
|
|
||||||
+#if !defined(powerpc_HOST_ARCH) && \
|
|
||||||
+ ( defined(linux_HOST_OS ) || defined(freebsd_HOST_OS) || \
|
|
||||||
+ defined(dragonfly_HOST_OS) || defined(netbsd_HOST_OS ) || \
|
|
||||||
+ defined(openbsd_HOST_OS ) || defined(darwin_HOST_OS ) || \
|
|
||||||
+ defined(kfreebsdgnu_HOST_OS) )
|
|
||||||
+/* Don't use mmap on powerpc_HOST_ARCH as mmap doesn't support
|
|
||||||
* reallocating but we need to allocate jump islands just after each
|
|
||||||
* object images. Otherwise relative branches to jump islands can fail
|
|
||||||
* due to 24-bits displacement overflow.
|
|
||||||
@@ -2436,7 +2437,11 @@ static void ocFlushInstructionCacheFrom(
|
|
||||||
static void ocFlushInstructionCache( ObjectCode *oc )
|
|
||||||
{
|
|
||||||
/* The main object code */
|
|
||||||
- ocFlushInstructionCacheFrom(oc->image + oc->misalignment, oc->fileSize);
|
|
||||||
+ ocFlushInstructionCacheFrom(oc->image
|
|
||||||
+#ifdef darwin_HOST_OS
|
|
||||||
+ + oc->misalignment
|
|
||||||
+#endif
|
|
||||||
+ , oc->fileSize);
|
|
||||||
|
|
||||||
/* Jump Islands */
|
|
||||||
ocFlushInstructionCacheFrom(oc->symbol_extras, sizeof(SymbolExtra) * oc->n_symbol_extras);
|
|
@ -1,18 +0,0 @@
|
|||||||
diff -up ghc-7.0.2/aclocal.m4.pthread ghc-7.0.2/aclocal.m4
|
|
||||||
--- ghc-7.0.2/aclocal.m4.pthread 2011-02-28 13:10:03.000000000 -0500
|
|
||||||
+++ ghc-7.0.2/aclocal.m4 2011-04-20 07:12:36.489772545 -0400
|
|
||||||
@@ -1385,7 +1385,7 @@ AC_MSG_NOTICE(Building in-tree ghc-pwd)
|
|
||||||
dnl except we don't want to have to know what make is called. Sigh.
|
|
||||||
rm -rf utils/ghc-pwd/dist-boot
|
|
||||||
mkdir utils/ghc-pwd/dist-boot
|
|
||||||
- if ! "$WithGhc" -v0 -no-user-package-conf -hidir utils/ghc-pwd/dist-boot -odir utils/ghc-pwd/dist-boot -stubdir utils/ghc-pwd/dist-boot --make utils/ghc-pwd/Main.hs -o utils/ghc-pwd/dist-boot/ghc-pwd
|
|
||||||
+ if ! "$WithGhc" -optl-pthread -v0 -no-user-package-conf -hidir utils/ghc-pwd/dist-boot -odir utils/ghc-pwd/dist-boot -stubdir utils/ghc-pwd/dist-boot --make utils/ghc-pwd/Main.hs -o utils/ghc-pwd/dist-boot/ghc-pwd
|
|
||||||
then
|
|
||||||
AC_MSG_ERROR([Building ghc-pwd failed])
|
|
||||||
fi
|
|
||||||
diff -up ghc-7.0.2/ghc/ghc.wrapper.pthread ghc-7.0.2/ghc/ghc.wrapper
|
|
||||||
--- ghc-7.0.2/ghc/ghc.wrapper.pthread 2011-04-20 09:58:50.307894773 -0400
|
|
||||||
+++ ghc-7.0.2/ghc/ghc.wrapper 2011-04-20 09:59:14.477894370 -0400
|
|
||||||
@@ -1 +1 @@
|
|
||||||
-exec "$executablename" -B"$topdir" -pgmc "$pgmgcc" -pgma "$pgmgcc" -pgml "$pgmgcc" -pgmP "$pgmgcc -E -undef -traditional" ${1+"$@"}
|
|
||||||
+exec "$executablename" -B"$topdir" -pgmc "$pgmgcc" -pgma "$pgmgcc" -pgml "$pgmgcc" -pgmP "$pgmgcc -E -undef -traditional" -optl-pthread ${1+"$@"}
|
|
@ -1,10 +1,10 @@
|
|||||||
This patch could be replaced by a configure call if
|
This patch could be replaced by a configure call if
|
||||||
http://hackage.haskell.org/trac/ghc/ticket/5743 were fixed.
|
http://hackage.haskell.org/trac/ghc/ticket/5743 were fixed.
|
||||||
|
|
||||||
Index: ghc-7.4.0.20111219/rts/package.conf.in
|
Index: ghc-7.6.1/rts/package.conf.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- ghc-7.4.0.20111219.orig/rts/package.conf.in 2011-12-21 23:21:03.000000000 +0100
|
--- ghc-7.6.1.orig/rts/package.conf.in 2012-09-04 19:10:15.000000000 +0200
|
||||||
+++ ghc-7.4.0.20111219/rts/package.conf.in 2011-12-21 23:21:04.000000000 +0100
|
+++ ghc-7.6.1/rts/package.conf.in 2012-10-08 13:06:55.167887121 +0200
|
||||||
@@ -24,8 +24,9 @@
|
@@ -24,8 +24,9 @@
|
||||||
hs-libraries: "HSrts"
|
hs-libraries: "HSrts"
|
||||||
|
|
||||||
@ -16,48 +16,38 @@ Index: ghc-7.4.0.20111219/rts/package.conf.in
|
|||||||
#endif
|
#endif
|
||||||
#ifdef HAVE_LIBRT
|
#ifdef HAVE_LIBRT
|
||||||
, "rt"
|
, "rt"
|
||||||
Index: ghc-7.4.0.20111219/ghc.mk
|
Index: ghc-7.6.1/ghc.mk
|
||||||
===================================================================
|
===================================================================
|
||||||
--- ghc-7.4.0.20111219.orig/ghc.mk 2011-12-21 23:21:03.000000000 +0100
|
--- ghc-7.6.1.orig/ghc.mk 2012-09-04 19:10:15.000000000 +0200
|
||||||
+++ ghc-7.4.0.20111219/ghc.mk 2011-12-21 23:21:04.000000000 +0100
|
+++ ghc-7.6.1/ghc.mk 2012-10-08 13:06:55.171887120 +0200
|
||||||
@@ -579,7 +579,6 @@
|
@@ -600,7 +600,6 @@
|
||||||
driver/ghci \
|
$(MAYBE_GHCI) \
|
||||||
driver/ghc \
|
driver/ghc \
|
||||||
driver/haddock \
|
driver/haddock \
|
||||||
- libffi \
|
- libffi \
|
||||||
includes \
|
includes \
|
||||||
rts
|
rts
|
||||||
|
|
||||||
Index: ghc-7.4.0.20111219/rts/ghc.mk
|
Index: ghc-7.6.1/rts/ghc.mk
|
||||||
===================================================================
|
===================================================================
|
||||||
--- ghc-7.4.0.20111219.orig/rts/ghc.mk 2011-12-21 19:56:29.000000000 +0100
|
--- ghc-7.6.1.orig/rts/ghc.mk 2012-09-04 19:10:15.000000000 +0200
|
||||||
+++ ghc-7.4.0.20111219/rts/ghc.mk 2011-12-21 23:23:52.000000000 +0100
|
+++ ghc-7.6.1/rts/ghc.mk 2012-10-08 13:08:52.019882891 +0200
|
||||||
@@ -86,8 +86,7 @@
|
@@ -177,12 +177,12 @@
|
||||||
ALL_RTS_DEF_LIBNAMES = base ghc-prim
|
|
||||||
ALL_RTS_DEF_LIBS = \
|
|
||||||
rts/dist/build/win32/libHSbase.dll.a \
|
|
||||||
- rts/dist/build/win32/libHSghc-prim.dll.a \
|
|
||||||
- libffi/build/inst/lib/libffi.dll.a
|
|
||||||
+ rts/dist/build/win32/libHSghc-prim.dll.a
|
|
||||||
|
|
||||||
# -- import libs for the regular Haskell libraries
|
|
||||||
define make-importlib-def # args $1 = lib name
|
|
||||||
@@ -172,12 +171,12 @@
|
|
||||||
# Making a shared library for the RTS.
|
# Making a shared library for the RTS.
|
||||||
ifneq "$$(findstring dyn, $1)" ""
|
ifneq "$$(findstring dyn, $1)" ""
|
||||||
ifeq "$$(HOSTPLATFORM)" "i386-unknown-mingw32"
|
ifeq "$$(HostOS_CPP)" "mingw32"
|
||||||
-$$(rts_$1_LIB) : $$(rts_$1_OBJS) $$(ALL_RTS_DEF_LIBS) rts/libs.depend rts/dist/build/libffi-5.dll
|
-$$(rts_$1_LIB) : $$(rts_$1_OBJS) $$(ALL_RTS_DEF_LIBS) rts/libs.depend rts/dist/build/$$(LIBFFI_DLL)
|
||||||
+$$(rts_$1_LIB) : $$(rts_$1_OBJS) $$(ALL_RTS_DEF_LIBS) rts/libs.depend
|
+$$(rts_$1_LIB) : $$(rts_$1_OBJS) $$(ALL_RTS_DEF_LIBS) rts/libs.depend
|
||||||
"$$(RM)" $$(RM_OPTS) $$@
|
"$$(RM)" $$(RM_OPTS) $$@
|
||||||
"$$(rts_dist_HC)" -package-name rts -shared -dynamic -dynload deploy \
|
"$$(rts_dist_HC)" -package-name rts -shared -dynamic -dynload deploy \
|
||||||
-no-auto-link-packages -Lrts/dist/build -lffi-5 `cat rts/libs.depend` $$(rts_$1_OBJS) $$(ALL_RTS_DEF_LIBS) -o $$@
|
-no-auto-link-packages -Lrts/dist/build -l$(LIBFFI_WINDOWS_LIB) `cat rts/libs.depend` $$(rts_$1_OBJS) $$(ALL_RTS_DEF_LIBS) -o $$@
|
||||||
else
|
else
|
||||||
-$$(rts_$1_LIB) : $$(rts_$1_OBJS) $$(rts_$1_DTRACE_OBJS) rts/libs.depend rts/dist/build/libffi$$(soext)
|
-$$(rts_$1_LIB) : $$(rts_$1_OBJS) $$(rts_$1_DTRACE_OBJS) rts/libs.depend rts/dist/build/libffi$$(soext)
|
||||||
+$$(rts_$1_LIB) : $$(rts_$1_OBJS) $$(rts_$1_DTRACE_OBJS) rts/libs.depend
|
+$$(rts_$1_LIB) : $$(rts_$1_OBJS) $$(rts_$1_DTRACE_OBJS) rts/libs.depend
|
||||||
"$$(RM)" $$(RM_OPTS) $$@
|
"$$(RM)" $$(RM_OPTS) $$@
|
||||||
"$$(rts_dist_HC)" -package-name rts -shared -dynamic -dynload deploy \
|
"$$(rts_dist_HC)" -package-name rts -shared -dynamic -dynload deploy \
|
||||||
-no-auto-link-packages -Lrts/dist/build -lffi `cat rts/libs.depend` $$(rts_$1_OBJS) \
|
-no-auto-link-packages -Lrts/dist/build -lffi `cat rts/libs.depend` $$(rts_$1_OBJS) \
|
||||||
@@ -188,9 +187,9 @@
|
@@ -193,9 +193,9 @@
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
@ -69,12 +59,12 @@ Index: ghc-7.4.0.20111219/rts/ghc.mk
|
|||||||
$$(AR_OPTS_STAGE1) $$(EXTRA_AR_ARGS_STAGE1) $$@
|
$$(AR_OPTS_STAGE1) $$(EXTRA_AR_ARGS_STAGE1) $$@
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -504,10 +503,8 @@
|
@@ -509,10 +509,8 @@
|
||||||
# installing
|
# installing
|
||||||
|
|
||||||
INSTALL_LIBS += $(ALL_RTS_LIBS)
|
INSTALL_LIBS += $(ALL_RTS_LIBS)
|
||||||
-INSTALL_LIBS += $(wildcard rts/dist/build/libffi$(soext)*)
|
-INSTALL_LIBS += $(wildcard rts/dist/build/libffi$(soext)*)
|
||||||
-INSTALL_LIBS += $(wildcard rts/dist/build/libffi-5.dll)
|
-INSTALL_LIBS += $(wildcard rts/dist/build/$(LIBFFI_DLL))
|
||||||
|
|
||||||
-install: install_libffi_headers
|
-install: install_libffi_headers
|
||||||
+install:
|
+install:
|
||||||
|
149
ghc.spec
149
ghc.spec
@ -2,10 +2,10 @@
|
|||||||
# (disabled for other archs in ghc-rpm-macros)
|
# (disabled for other archs in ghc-rpm-macros)
|
||||||
|
|
||||||
# To bootstrap build a new version of ghc, uncomment the following:
|
# To bootstrap build a new version of ghc, uncomment the following:
|
||||||
#%%global ghc_bootstrapping 1
|
%global ghc_bootstrapping 1
|
||||||
#%%{?ghc_bootstrap}
|
%{?ghc_bootstrap}
|
||||||
#%%global without_testsuite 1
|
%global without_testsuite 1
|
||||||
#%%global without_haddock 1
|
%global without_haddock 1
|
||||||
|
|
||||||
# To do a test build instead with shared libs, uncomment the following:
|
# To do a test build instead with shared libs, uncomment the following:
|
||||||
#%%global ghc_bootstrapping 1
|
#%%global ghc_bootstrapping 1
|
||||||
@ -24,25 +24,35 @@
|
|||||||
Name: ghc
|
Name: ghc
|
||||||
# part of haskell-platform
|
# part of haskell-platform
|
||||||
# ghc must be rebuilt after a version bump to avoid ABI change problems
|
# ghc must be rebuilt after a version bump to avoid ABI change problems
|
||||||
Version: 7.4.2
|
Version: 7.6.3
|
||||||
# Since library subpackages are versioned:
|
# Since library subpackages are versioned:
|
||||||
# - release can only be reset if all library versions get bumped simultaneously
|
# - release can only be reset if *all* library versions get bumped simultaneously
|
||||||
# (eg for a major release)
|
# (sometimes after a major release)
|
||||||
# - minor release numbers should be incremented monotonically
|
# - minor release numbers for a branch should be incremented monotonically
|
||||||
Release: 11%{?dist}
|
Release: 11.9%{?dist}
|
||||||
Summary: Glasgow Haskell Compiler
|
Summary: Glasgow Haskell Compiler
|
||||||
# fedora ghc has been bootstrapped on
|
|
||||||
# %{ix86} x86_64 ppc alpha sparcv9 ppc64 armv7hl armv5tel s390 s390x
|
|
||||||
# see ghc_arches defined in /etc/rpm/macros.ghc-srpm by redhat-rpm-macros
|
|
||||||
ExcludeArch: sparc64
|
|
||||||
License: %BSDHaskellReport
|
License: %BSDHaskellReport
|
||||||
|
URL: http://haskell.org/ghc/
|
||||||
Source0: http://www.haskell.org/ghc/dist/%{version}/ghc-%{version}-src.tar.bz2
|
Source0: http://www.haskell.org/ghc/dist/%{version}/ghc-%{version}-src.tar.bz2
|
||||||
%if %{undefined without_testsuite}
|
%if %{undefined without_testsuite}
|
||||||
Source2: http://www.haskell.org/ghc/dist/%{version}/ghc-%{version}-testsuite.tar.bz2
|
Source2: http://www.haskell.org/ghc/dist/%{version}/ghc-%{version}-testsuite.tar.bz2
|
||||||
%endif
|
%endif
|
||||||
Source3: ghc-doc-index.cron
|
Source3: ghc-doc-index.cron
|
||||||
Source4: ghc-doc-index
|
Source4: ghc-doc-index
|
||||||
URL: http://haskell.org/ghc/
|
# absolute haddock path (was for html/libraries -> libraries)
|
||||||
|
Patch1: ghc-gen_contents_index-haddock-path.patch
|
||||||
|
# fedora does not allow copy libraries
|
||||||
|
Patch4: ghc-use-system-libffi.patch
|
||||||
|
# add libffi include dir to ghc wrapper for archs using gcc/llc
|
||||||
|
Patch10: ghc-wrapper-libffi-include.patch
|
||||||
|
# disable building HS*.o libs for ghci
|
||||||
|
Patch12: ghc-7.4.2-Cabal-disable-ghci-libs.patch
|
||||||
|
|
||||||
|
# fedora ghc has been bootstrapped on
|
||||||
|
# %{ix86} x86_64 ppc alpha sparcv9 ppc64 armv7hl armv5tel s390 s390x
|
||||||
|
# see ghc_arches defined in /etc/rpm/macros.ghc-srpm by redhat-rpm-macros
|
||||||
|
ExcludeArch: sparc64
|
||||||
Obsoletes: ghc-dph-base < 0.5, ghc-dph-base-devel < 0.5, ghc-dph-base-prof < 0.5
|
Obsoletes: ghc-dph-base < 0.5, ghc-dph-base-devel < 0.5, ghc-dph-base-prof < 0.5
|
||||||
Obsoletes: ghc-dph-par < 0.5, ghc-dph-par-devel < 0.5, ghc-dph-par-prof < 0.5
|
Obsoletes: ghc-dph-par < 0.5, ghc-dph-par-devel < 0.5, ghc-dph-par-prof < 0.5
|
||||||
Obsoletes: ghc-dph-prim-interface < 0.5, ghc-dph-prim-interface-devel < 0.5, ghc-dph-interface-prim-prof < 0.5
|
Obsoletes: ghc-dph-prim-interface < 0.5, ghc-dph-prim-interface-devel < 0.5, ghc-dph-interface-prim-prof < 0.5
|
||||||
@ -53,7 +63,7 @@ Obsoletes: ghc-feldspar-language < 0.4, ghc-feldspar-language-devel < 0.4, ghc-f
|
|||||||
%if %{undefined ghc_bootstrapping}
|
%if %{undefined ghc_bootstrapping}
|
||||||
BuildRequires: ghc-compiler = %{version}
|
BuildRequires: ghc-compiler = %{version}
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: ghc-rpm-macros >= 0.91
|
BuildRequires: ghc-rpm-macros-extra
|
||||||
BuildRequires: ghc-bytestring-devel
|
BuildRequires: ghc-bytestring-devel
|
||||||
BuildRequires: ghc-containers-devel
|
BuildRequires: ghc-containers-devel
|
||||||
BuildRequires: ghc-directory-devel
|
BuildRequires: ghc-directory-devel
|
||||||
@ -73,31 +83,10 @@ BuildRequires: python
|
|||||||
%ifarch armv7hl armv5tel
|
%ifarch armv7hl armv5tel
|
||||||
BuildRequires: llvm >= 3.0
|
BuildRequires: llvm >= 3.0
|
||||||
%endif
|
%endif
|
||||||
%ifarch armv7hl
|
|
||||||
BuildRequires: autoconf
|
|
||||||
%endif
|
|
||||||
Requires: ghc-compiler = %{version}-%{release}
|
Requires: ghc-compiler = %{version}-%{release}
|
||||||
Requires: ghc-doc-index = %{version}-%{release}
|
Requires: ghc-doc-index = %{version}-%{release}
|
||||||
Requires: ghc-libraries = %{version}-%{release}
|
Requires: ghc-libraries = %{version}-%{release}
|
||||||
Requires: ghc-ghc-devel = %{version}-%{release}
|
Requires: ghc-ghc-devel = %{version}-%{release}
|
||||||
# absolute haddock path (was for html/libraries -> libraries)
|
|
||||||
Patch1: ghc-6.12.1-gen_contents_index-haddock-path.patch
|
|
||||||
# type-level too big so skip it in gen_contents_index
|
|
||||||
Patch2: ghc-gen_contents_index-type-level.patch
|
|
||||||
# fedora does not allow copy libraries
|
|
||||||
Patch4: ghc-use-system-libffi.patch
|
|
||||||
Patch7: ghc-powerpc-pthread.patch
|
|
||||||
# http://hackage.haskell.org/trac/ghc/ticket/4999
|
|
||||||
Patch8: ghc-powerpc-linker-mmap.patch
|
|
||||||
# fix dynamic linking of executables using Template Haskell
|
|
||||||
Patch9: Cabal-fix-dynamic-exec-for-TH.patch
|
|
||||||
# add libffi include dir to ghc wrapper for archs using gcc/llc
|
|
||||||
Patch10: ghc-wrapper-libffi-include.patch
|
|
||||||
# latest arm hf patch
|
|
||||||
Patch11: ghc-7.4-add-support-for-ARM-hard-float-ABI-fixes-5914.patch
|
|
||||||
# disable building HS*.o libs for ghci
|
|
||||||
Patch12: ghc-7.4.2-Cabal-disable-ghci-libs.patch
|
|
||||||
Patch17: ghc-7.4-silence-gen_contents_index.patch
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
GHC is a state-of-the-art, open source, compiler and interactive environment
|
GHC is a state-of-the-art, open source, compiler and interactive environment
|
||||||
@ -161,31 +150,30 @@ documention.
|
|||||||
%global ghc_pkg_c_deps ghc-compiler = %{ghc_version_override}-%{release}
|
%global ghc_pkg_c_deps ghc-compiler = %{ghc_version_override}-%{release}
|
||||||
|
|
||||||
%if %{defined ghclibdir}
|
%if %{defined ghclibdir}
|
||||||
%ghc_lib_subpackage Cabal 1.14.0
|
%ghc_lib_subpackage Cabal 1.16.0
|
||||||
%ghc_lib_subpackage -l %BSDHaskellReport array 0.4.0.0
|
%ghc_lib_subpackage -l %BSDHaskellReport array 0.4.0.1
|
||||||
%ghc_lib_subpackage -l %BSDHaskellReport -c gmp-devel%{?_isa},libffi-devel%{?_isa} base 4.5.1.0
|
%ghc_lib_subpackage -l %BSDHaskellReport -c gmp-devel%{?_isa},libffi-devel%{?_isa} base 4.6.0.1
|
||||||
%ghc_lib_subpackage binary 0.5.1.0
|
%ghc_lib_subpackage binary 0.5.1.1
|
||||||
%ghc_lib_subpackage bytestring 0.9.2.1
|
%ghc_lib_subpackage bytestring 0.10.0.2
|
||||||
%ghc_lib_subpackage -l %BSDHaskellReport containers 0.4.2.1
|
%ghc_lib_subpackage -l %BSDHaskellReport containers 0.5.0.0
|
||||||
%ghc_lib_subpackage -l %BSDHaskellReport deepseq 1.3.0.0
|
%ghc_lib_subpackage -l %BSDHaskellReport deepseq 1.3.0.1
|
||||||
%ghc_lib_subpackage -l %BSDHaskellReport directory 1.1.0.2
|
%ghc_lib_subpackage -l %BSDHaskellReport directory 1.2.0.1
|
||||||
%ghc_lib_subpackage -l %BSDHaskellReport extensible-exceptions 0.1.1.4
|
%ghc_lib_subpackage filepath 1.3.0.1
|
||||||
%ghc_lib_subpackage filepath 1.3.0.0
|
|
||||||
%define ghc_pkg_obsoletes ghc-bin-package-db-devel < 0.0.0.0-12
|
%define ghc_pkg_obsoletes ghc-bin-package-db-devel < 0.0.0.0-12
|
||||||
# in ghc not ghc-libraries:
|
# in ghc not ghc-libraries:
|
||||||
%ghc_lib_subpackage -x ghc %{ghc_version_override}
|
%ghc_lib_subpackage -x ghc %{ghc_version_override}
|
||||||
%undefine ghc_pkg_obsoletes
|
%undefine ghc_pkg_obsoletes
|
||||||
%ghc_lib_subpackage -l HaskellReport haskell2010 1.1.0.1
|
%ghc_lib_subpackage -l HaskellReport haskell2010 1.1.1.0
|
||||||
%ghc_lib_subpackage -l HaskellReport haskell98 2.0.0.1
|
%ghc_lib_subpackage -l HaskellReport haskell98 2.0.0.2
|
||||||
%ghc_lib_subpackage hoopl 3.8.7.3
|
%ghc_lib_subpackage hoopl 3.9.0.0
|
||||||
%ghc_lib_subpackage hpc 0.5.1.1
|
%ghc_lib_subpackage hpc 0.6.0.0
|
||||||
%ghc_lib_subpackage -l %BSDHaskellReport old-locale 1.0.0.4
|
%ghc_lib_subpackage -l %BSDHaskellReport old-locale 1.0.0.5
|
||||||
%ghc_lib_subpackage -l %BSDHaskellReport old-time 1.1.0.0
|
%ghc_lib_subpackage -l %BSDHaskellReport old-time 1.1.0.1
|
||||||
%ghc_lib_subpackage pretty 1.1.1.0
|
%ghc_lib_subpackage pretty 1.1.1.0
|
||||||
%ghc_lib_subpackage -l %BSDHaskellReport process 1.1.0.1
|
%ghc_lib_subpackage -l %BSDHaskellReport process 1.1.0.2
|
||||||
%ghc_lib_subpackage template-haskell 2.7.0.0
|
%ghc_lib_subpackage template-haskell 2.8.0.0
|
||||||
%ghc_lib_subpackage time 1.4
|
%ghc_lib_subpackage time 1.4.0.1
|
||||||
%ghc_lib_subpackage unix 2.5.1.1
|
%ghc_lib_subpackage unix 2.6.0.1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global version %{ghc_version_override}
|
%global version %{ghc_version_override}
|
||||||
@ -206,37 +194,28 @@ Obsoletes: ghc-libs < 7.0.1-3
|
|||||||
This is a meta-package for all the development library packages in GHC
|
This is a meta-package for all the development library packages in GHC
|
||||||
except the ghc library, which is installed by the toplevel ghc metapackage.
|
except the ghc library, which is installed by the toplevel ghc metapackage.
|
||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n %{name}-%{version} %{!?without_testsuite:-b2}
|
%setup -q -n %{name}-%{version} %{!?without_testsuite:-b2}
|
||||||
|
|
||||||
# tweaks to gen_contents_index
|
# gen_contents_index: use absolute path for haddock
|
||||||
%patch1 -p1 -b .orig
|
%patch1 -p1 -b .orig
|
||||||
%patch2 -p1
|
|
||||||
%patch17 -p1
|
|
||||||
|
|
||||||
# make sure we don't use these
|
# make sure we don't use these
|
||||||
rm -r ghc-tarballs/{mingw,perl}
|
rm -r ghc-tarballs/{mingw*,perl}
|
||||||
# use system libffi
|
# use system libffi
|
||||||
%patch4 -p1 -b .libffi
|
%patch4 -p1 -b .libffi
|
||||||
rm -r ghc-tarballs/libffi
|
rm -r ghc-tarballs/libffi
|
||||||
mkdir -p rts/dist/build
|
mkdir -p rts/dist/build
|
||||||
ln -s $(pkg-config --variable=includedir libffi)/*.h rts/dist/build
|
ln -s $(pkg-config --variable=includedir libffi)/*.h rts/dist/build
|
||||||
|
|
||||||
%patch9 -p1 -b .orig
|
|
||||||
|
|
||||||
%ifnarch %{ix86} x86_64
|
%ifnarch %{ix86} x86_64
|
||||||
%patch10 -p1 -b .10-ffi
|
%patch10 -p1 -b .10-ffi
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# ARM patches
|
|
||||||
%ifarch armv7hl
|
|
||||||
# touches aclocal.m4
|
|
||||||
%patch11 -p1 -b .arm
|
|
||||||
autoreconf
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%patch12 -p1 -b .orig
|
%patch12 -p1 -b .orig
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
# http://hackage.haskell.org/trac/ghc/wiki/Platforms
|
# http://hackage.haskell.org/trac/ghc/wiki/Platforms
|
||||||
# cf https://github.com/gentoo-haskell/gentoo-haskell/tree/master/dev-lang/ghc
|
# cf https://github.com/gentoo-haskell/gentoo-haskell/tree/master/dev-lang/ghc
|
||||||
@ -261,6 +240,7 @@ export CFLAGS="${CFLAGS:-%optflags}"
|
|||||||
|
|
||||||
make %{?_smp_mflags}
|
make %{?_smp_mflags}
|
||||||
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
make DESTDIR=%{buildroot} install
|
make DESTDIR=%{buildroot} install
|
||||||
|
|
||||||
@ -268,21 +248,19 @@ for i in %{ghc_packages_list}; do
|
|||||||
name=$(echo $i | sed -e "s/\(.*\)-.*/\1/")
|
name=$(echo $i | sed -e "s/\(.*\)-.*/\1/")
|
||||||
ver=$(echo $i | sed -e "s/.*-\(.*\)/\1/")
|
ver=$(echo $i | sed -e "s/.*-\(.*\)/\1/")
|
||||||
%ghc_gen_filelists $name $ver
|
%ghc_gen_filelists $name $ver
|
||||||
echo "%doc libraries/$name/LICENSE" >> ghc-$name%{?ghc_without_shared:-devel}.files
|
echo "%doc libraries/$name/LICENSE" >> ghc-$name.files
|
||||||
done
|
done
|
||||||
|
|
||||||
# ghc-base should own ghclibdir
|
# ghc-base should own ghclibdir
|
||||||
echo "%dir %{ghclibdir}" >> ghc-base%{?ghc_without_shared:-devel}.files
|
echo "%dir %{ghclibdir}" >> ghc-base.files
|
||||||
|
|
||||||
%ghc_gen_filelists bin-package-db 0.0.0.0
|
%ghc_gen_filelists bin-package-db 0.0.0.0
|
||||||
%ghc_gen_filelists ghc %{ghc_version_override}
|
%ghc_gen_filelists ghc %{ghc_version_override}
|
||||||
%ghc_gen_filelists ghc-prim 0.2.0.0
|
%ghc_gen_filelists ghc-prim 0.3.0.0
|
||||||
%ghc_gen_filelists integer-gmp 0.4.0.0
|
%ghc_gen_filelists integer-gmp 0.5.0.0
|
||||||
|
|
||||||
%define merge_filelist()\
|
%define merge_filelist()\
|
||||||
%if %{undefined ghc_without_shared}\
|
|
||||||
cat ghc-%1.files >> ghc-%2.files\
|
cat ghc-%1.files >> ghc-%2.files\
|
||||||
%endif\
|
|
||||||
cat ghc-%1-devel.files >> ghc-%2-devel.files\
|
cat ghc-%1-devel.files >> ghc-%2-devel.files\
|
||||||
cp -p libraries/%1/LICENSE libraries/LICENSE.%1\
|
cp -p libraries/%1/LICENSE libraries/LICENSE.%1\
|
||||||
echo "%doc libraries/LICENSE.%1" >> ghc-%2.files
|
echo "%doc libraries/LICENSE.%1" >> ghc-%2.files
|
||||||
@ -318,6 +296,7 @@ mkdir -p %{buildroot}%{_localstatedir}/lib/ghc
|
|||||||
install -p --mode=0755 %SOURCE4 %{buildroot}%{_bindir}/ghc-doc-index
|
install -p --mode=0755 %SOURCE4 %{buildroot}%{_bindir}/ghc-doc-index
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
|
||||||
%check
|
%check
|
||||||
# stolen from ghc6/debian/rules:
|
# stolen from ghc6/debian/rules:
|
||||||
# Do some very simple tests that the compiler actually works
|
# Do some very simple tests that the compiler actually works
|
||||||
@ -343,6 +322,7 @@ rm testghc/*
|
|||||||
make test
|
make test
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
|
||||||
%post compiler
|
%post compiler
|
||||||
# Alas, GHC, Hugs, and nhc all come with different set of tools in
|
# Alas, GHC, Hugs, and nhc all come with different set of tools in
|
||||||
# addition to a runFOO:
|
# addition to a runFOO:
|
||||||
@ -367,6 +347,7 @@ if [ "$1" = 0 ]; then
|
|||||||
update-alternatives --remove hsc2hs %{_bindir}/hsc2hs-ghc
|
update-alternatives --remove hsc2hs %{_bindir}/hsc2hs-ghc
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
%files
|
%files
|
||||||
|
|
||||||
%files compiler
|
%files compiler
|
||||||
@ -381,7 +362,7 @@ fi
|
|||||||
%{_bindir}/hpc
|
%{_bindir}/hpc
|
||||||
%ghost %{_bindir}/hsc2hs
|
%ghost %{_bindir}/hsc2hs
|
||||||
%{_bindir}/hsc2hs-ghc
|
%{_bindir}/hsc2hs-ghc
|
||||||
%{_bindir}/runghc
|
%{_bindir}/runghc*
|
||||||
%ghost %{_bindir}/runhaskell
|
%ghost %{_bindir}/runhaskell
|
||||||
%{_bindir}/runhaskell-ghc
|
%{_bindir}/runhaskell-ghc
|
||||||
%{ghclibdir}/ghc
|
%{ghclibdir}/ghc
|
||||||
@ -417,9 +398,10 @@ fi
|
|||||||
%dir %{ghcdocbasedir}/libraries
|
%dir %{ghcdocbasedir}/libraries
|
||||||
%{ghcdocbasedir}/libraries/frames.html
|
%{ghcdocbasedir}/libraries/frames.html
|
||||||
%{ghcdocbasedir}/libraries/gen_contents_index
|
%{ghcdocbasedir}/libraries/gen_contents_index
|
||||||
%{ghcdocbasedir}/libraries/hscolour.css
|
%{ghcdocbasedir}/libraries/hslogo-16.png
|
||||||
%{ghcdocbasedir}/libraries/ocean.css
|
%{ghcdocbasedir}/libraries/ocean.css
|
||||||
%{ghcdocbasedir}/libraries/prologue.txt
|
%{ghcdocbasedir}/libraries/prologue.txt
|
||||||
|
%{ghcdocbasedir}/libraries/synopsis.png
|
||||||
%{ghcdocbasedir}/index.html
|
%{ghcdocbasedir}/index.html
|
||||||
%ghost %{ghcdocbasedir}/libraries/doc-index*.html
|
%ghost %{ghcdocbasedir}/libraries/doc-index*.html
|
||||||
%ghost %{ghcdocbasedir}/libraries/haddock-util.js
|
%ghost %{ghcdocbasedir}/libraries/haddock-util.js
|
||||||
@ -436,7 +418,20 @@ fi
|
|||||||
|
|
||||||
%files libraries
|
%files libraries
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Apr 22 2013 Jens Petersen <petersen@redhat.com> - 7.6.3-11.9
|
||||||
|
- bootstrap 7.6.3, see release notes:
|
||||||
|
http://www.haskell.org/ghc/docs/7.6.3/html/users_guide/release-7-6-1.html
|
||||||
|
http://www.haskell.org/ghc/docs/7.6.3/html/users_guide/release-7-6-2.html
|
||||||
|
http://www.haskell.org/ghc/docs/7.6.3/html/users_guide/release-7-6-3.html
|
||||||
|
- all library versions bumped except pretty
|
||||||
|
- Cabal-fix-dynamic-exec-for-TH.patch,
|
||||||
|
ghc-7.4-add-support-for-ARM-hard-float-ABI-fixes-5914.patch, and
|
||||||
|
ghc-7.4-silence-gen_contents_index.patch are no longer needed
|
||||||
|
- build with ghc-rpm-macros-extra
|
||||||
|
- no longer filter type-level package from haddock index
|
||||||
|
|
||||||
* Tue Feb 5 2013 Jens Petersen <petersen@redhat.com> - 7.4.2-11
|
* Tue Feb 5 2013 Jens Petersen <petersen@redhat.com> - 7.4.2-11
|
||||||
- ghclibdir should be owned at runtime by ghc-base instead of ghc-compiler
|
- ghclibdir should be owned at runtime by ghc-base instead of ghc-compiler
|
||||||
(thanks Michael Scherer, #907671)
|
(thanks Michael Scherer, #907671)
|
||||||
|
Loading…
Reference in New Issue
Block a user