Compare commits
11 Commits
Author | SHA1 | Date |
---|---|---|
Jens Petersen | 16bd29d4d9 | |
Jens Petersen | 634c496912 | |
Jens Petersen | 9053635f54 | |
Jens Petersen | ffa4970ed4 | |
Jens Petersen | bfb829e82e | |
Jens Petersen | 5cc7cbb6d2 | |
Jens Petersen | 08317bd05b | |
Jens Petersen | 1731bbf65b | |
Jens Petersen | bd5c3be99c | |
Jens Petersen | 494bb4045c | |
Jens Petersen | 6acbe2a1c3 |
|
@ -1,2 +1,4 @@
|
|||
ghc-6.12.3-src.tar.bz2
|
||||
testsuite-6.12.3.tar.bz2
|
||||
/ghc-7.0.4-src.tar.bz2
|
||||
/testsuite-7.0.4.tar.bz2
|
||||
|
|
|
@ -0,0 +1,145 @@
|
|||
diff -rN -u old-ghc-7.0.1/libraries/Cabal/Distribution/Simple/Configure.hs new-ghc-7.0.1/libraries/Cabal/Distribution/Simple/Configure.hs
|
||||
--- old-ghc-7.0.1/libraries/Cabal/Distribution/Simple/Configure.hs 2011-01-22 14:49:22.000000000 +1000
|
||||
+++ new-ghc-7.0.1/libraries/Cabal/Distribution/Simple/Configure.hs 2011-01-22 14:49:22.000000000 +1000
|
||||
@@ -488,6 +488,7 @@
|
||||
withVanillaLib = fromFlag $ configVanillaLib cfg,
|
||||
withProfLib = fromFlag $ configProfLib cfg,
|
||||
withSharedLib = fromFlag $ configSharedLib cfg,
|
||||
+ withDynExe = fromFlag $ configDynExe cfg,
|
||||
withProfExe = fromFlag $ configProfExe cfg,
|
||||
withOptimization = fromFlag $ configOptimization cfg,
|
||||
withGHCiLib = fromFlag $ configGHCiLib cfg,
|
||||
diff -u ghc-7.0.1/libraries/Cabal/Distribution/Simple/GHC.hs.orig ghc-7.0.1/libraries/Cabal/Distribution/Simple/GHC.hs
|
||||
--- ghc-7.0.1/libraries/Cabal/Distribution/Simple/GHC.hs.orig 2010-11-13 04:10:09.000000000 +1000
|
||||
+++ ghc-7.0.1/libraries/Cabal/Distribution/Simple/GHC.hs 2011-01-22 14:52:52.000000000 +1000
|
||||
@@ -537,6 +537,7 @@
|
||||
info verbosity "Building C Sources..."
|
||||
sequence_ [do let (odir,args) = constructCcCmdLine lbi libBi clbi pref
|
||||
filename verbosity
|
||||
+ False
|
||||
(withProfLib lbi)
|
||||
createDirectoryIfMissingVerbose verbosity True odir
|
||||
runGhcProg args
|
||||
@@ -671,7 +672,7 @@
|
||||
info verbosity "Building C Sources."
|
||||
sequence_ [do let (odir,args) = constructCcCmdLine lbi exeBi clbi
|
||||
exeDir filename verbosity
|
||||
- (withProfExe lbi)
|
||||
+ (withDynExe lbi) (withProfExe lbi)
|
||||
createDirectoryIfMissingVerbose verbosity True odir
|
||||
runGhcProg args
|
||||
| filename <- cSources exeBi]
|
||||
@@ -679,7 +680,7 @@
|
||||
srcMainFile <- findFile (exeDir : hsSourceDirs exeBi) modPath
|
||||
|
||||
let cObjs = map (`replaceExtension` objExtension) (cSources exeBi)
|
||||
- let binArgs linkExe profExe =
|
||||
+ let binArgs linkExe dynExe profExe =
|
||||
"--make"
|
||||
: (if linkExe
|
||||
then ["-o", targetDir </> exeNameReal]
|
||||
@@ -691,6 +692,9 @@
|
||||
++ ["-l"++lib | lib <- extraLibs exeBi]
|
||||
++ ["-L"++libDir | libDir <- extraLibDirs exeBi]
|
||||
++ concat [["-framework", f] | f <- PD.frameworks exeBi]
|
||||
+ ++ if dynExe
|
||||
+ then ["-dynamic"]
|
||||
+ else []
|
||||
++ if profExe
|
||||
then ["-prof",
|
||||
"-hisuf", "p_hi",
|
||||
@@ -704,9 +708,9 @@
|
||||
-- run at compile time needs to be the vanilla ABI so it can
|
||||
-- be loaded up and run by the compiler.
|
||||
when (withProfExe lbi && TemplateHaskell `elem` allExtensions exeBi)
|
||||
- (runGhcProg (binArgs False False))
|
||||
+ (runGhcProg (binArgs (withDynExe lbi) False False))
|
||||
|
||||
- runGhcProg (binArgs True (withProfExe lbi))
|
||||
+ runGhcProg (binArgs True (withDynExe lbi) (withProfExe lbi))
|
||||
|
||||
-- | Filter the "-threaded" flag when profiling as it does not
|
||||
-- work with ghc-6.8 and older.
|
||||
@@ -836,9 +840,9 @@
|
||||
ierror = error ("internal error: unexpected package db stack: " ++ show dbstack)
|
||||
|
||||
constructCcCmdLine :: LocalBuildInfo -> BuildInfo -> ComponentLocalBuildInfo
|
||||
- -> FilePath -> FilePath -> Verbosity -> Bool
|
||||
+ -> FilePath -> FilePath -> Verbosity -> Bool -> Bool
|
||||
->(FilePath,[String])
|
||||
-constructCcCmdLine lbi bi clbi pref filename verbosity profiling
|
||||
+constructCcCmdLine lbi bi clbi pref filename verbosity dynamic profiling
|
||||
= let odir | compilerVersion (compiler lbi) >= Version [6,4,1] [] = pref
|
||||
| otherwise = pref </> takeDirectory filename
|
||||
-- ghc 6.4.1 fixed a bug in -odir handling
|
||||
@@ -852,6 +856,7 @@
|
||||
-- option to ghc here when compiling C code, so that the PROFILING
|
||||
-- macro gets defined. The macro is used in ghc's Rts.h in the
|
||||
-- definitions of closure layouts (Closures.h).
|
||||
+ ++ ["-dynamic" | dynamic]
|
||||
++ ["-prof" | profiling])
|
||||
|
||||
ghcCcOptions :: LocalBuildInfo -> BuildInfo -> ComponentLocalBuildInfo
|
||||
diff -rN -u old-ghc-7.0.1/libraries/Cabal/Distribution/Simple/LocalBuildInfo.hs new-ghc-7.0.1/libraries/Cabal/Distribution/Simple/LocalBuildInfo.hs
|
||||
--- old-ghc-7.0.1/libraries/Cabal/Distribution/Simple/LocalBuildInfo.hs 2011-01-22 14:49:22.000000000 +1000
|
||||
+++ new-ghc-7.0.1/libraries/Cabal/Distribution/Simple/LocalBuildInfo.hs 2011-01-22 14:49:22.000000000 +1000
|
||||
@@ -118,6 +118,7 @@
|
||||
withVanillaLib:: Bool, -- ^Whether to build normal libs.
|
||||
withProfLib :: Bool, -- ^Whether to build profiling versions of libs.
|
||||
withSharedLib :: Bool, -- ^Whether to build shared versions of libs.
|
||||
+ withDynExe :: Bool, -- ^Whether to link executables dynamically
|
||||
withProfExe :: Bool, -- ^Whether to build executables for profiling.
|
||||
withOptimization :: OptimisationLevel, -- ^Whether to build with optimization (if available).
|
||||
withGHCiLib :: Bool, -- ^Whether to build libs suitable for use with GHCi.
|
||||
diff -rN -u old-ghc-7.0.1/libraries/Cabal/Distribution/Simple/Setup.hs new-ghc-7.0.1/libraries/Cabal/Distribution/Simple/Setup.hs
|
||||
--- old-ghc-7.0.1/libraries/Cabal/Distribution/Simple/Setup.hs 2011-01-22 14:49:22.000000000 +1000
|
||||
+++ new-ghc-7.0.1/libraries/Cabal/Distribution/Simple/Setup.hs 2011-01-22 14:49:22.000000000 +1000
|
||||
@@ -270,6 +270,7 @@
|
||||
configVanillaLib :: Flag Bool, -- ^Enable vanilla library
|
||||
configProfLib :: Flag Bool, -- ^Enable profiling in the library
|
||||
configSharedLib :: Flag Bool, -- ^Build shared library
|
||||
+ configDynExe :: Flag Bool, -- ^Enable dynamic linking of the executables.
|
||||
configProfExe :: Flag Bool, -- ^Enable profiling in the executables.
|
||||
configConfigureArgs :: [String], -- ^Extra arguments to @configure@
|
||||
configOptimization :: Flag OptimisationLevel, -- ^Enable optimization.
|
||||
@@ -301,6 +302,7 @@
|
||||
configVanillaLib = Flag True,
|
||||
configProfLib = Flag False,
|
||||
configSharedLib = Flag False,
|
||||
+ configDynExe = Flag False,
|
||||
configProfExe = Flag False,
|
||||
configOptimization = Flag NormalOptimisation,
|
||||
configProgPrefix = Flag (toPathTemplate ""),
|
||||
@@ -388,10 +390,16 @@
|
||||
configSharedLib (\v flags -> flags { configSharedLib = v })
|
||||
(boolOpt [] [])
|
||||
|
||||
+ ,option "" ["executable-dynamic"]
|
||||
+ "Executable dynamic linking (fedora patch)"
|
||||
+ configDynExe (\v flags -> flags { configDynExe = v })
|
||||
+ (boolOpt [] [])
|
||||
+
|
||||
,option "" ["executable-profiling"]
|
||||
"Executable profiling"
|
||||
configProfExe (\v flags -> flags { configProfExe = v })
|
||||
(boolOpt [] [])
|
||||
+
|
||||
,multiOption "optimization"
|
||||
configOptimization (\v flags -> flags { configOptimization = v })
|
||||
[optArg' "n" (Flag . flagToOptimisationLevel)
|
||||
@@ -553,6 +561,7 @@
|
||||
configVanillaLib = mempty,
|
||||
configProfLib = mempty,
|
||||
configSharedLib = mempty,
|
||||
+ configDynExe = mempty,
|
||||
configProfExe = mempty,
|
||||
configConfigureArgs = mempty,
|
||||
configOptimization = mempty,
|
||||
@@ -583,6 +592,7 @@
|
||||
configVanillaLib = combine configVanillaLib,
|
||||
configProfLib = combine configProfLib,
|
||||
configSharedLib = combine configSharedLib,
|
||||
+ configDynExe = combine configDynExe,
|
||||
configProfExe = combine configProfExe,
|
||||
configConfigureArgs = combine configConfigureArgs,
|
||||
configOptimization = combine configOptimization,
|
|
@ -0,0 +1,37 @@
|
|||
From 3a49e5147822bdfea2c763c863a7ca6b6baee609 Mon Sep 17 00:00:00 2001
|
||||
From: Joachim Breitner <mail@joachim-breitner.de>
|
||||
Date: Mon, 5 Sep 2011 09:37:24 +0200
|
||||
Subject: [PATCH] Add s390x to list of supported architectures
|
||||
|
||||
---
|
||||
aclocal.m4 | 3 +++
|
||||
configure.ac | 2 +-
|
||||
2 files changed, 4 insertions(+), 1 deletions(-)
|
||||
|
||||
Index: ghc-7.0.4/aclocal.m4
|
||||
===================================================================
|
||||
--- ghc-7.0.4.orig/aclocal.m4 2011-08-31 08:44:42.000000000 +0200
|
||||
+++ ghc-7.0.4/aclocal.m4 2011-09-05 14:08:59.000000000 +0200
|
||||
@@ -1457,6 +1457,9 @@
|
||||
rs6000)
|
||||
$2="rs6000"
|
||||
;;
|
||||
+ s390x*)
|
||||
+ $2="s390x"
|
||||
+ ;;
|
||||
s390*)
|
||||
$2="s390"
|
||||
;;
|
||||
Index: ghc-7.0.4/configure.ac
|
||||
===================================================================
|
||||
--- ghc-7.0.4.orig/configure.ac 2011-06-13 19:10:04.000000000 +0200
|
||||
+++ ghc-7.0.4/configure.ac 2011-09-05 14:08:59.000000000 +0200
|
||||
@@ -244,7 +244,7 @@
|
||||
|
||||
checkArch() {
|
||||
case $1 in
|
||||
- alpha|arm|hppa|hppa1_1|i386|ia64|m68k|mips|mipseb|mipsel|powerpc|powerpc64|rs6000|s390|sparc|sparc64|vax|x86_64)
|
||||
+ alpha|arm|hppa|hppa1_1|i386|ia64|m68k|mips|mipseb|mipsel|powerpc|powerpc64|rs6000|s390|s390x|sparc|sparc64|vax|x86_64)
|
||||
;;
|
||||
*)
|
||||
echo "Unknown arch $1"
|
|
@ -0,0 +1,41 @@
|
|||
#! /bin/bash
|
||||
|
||||
if [ -e /etc/sysconfig/ghc-doc-index ]; then
|
||||
. /etc/sysconfig/ghc-doc-index
|
||||
fi
|
||||
|
||||
if [ "$CRON" = "no" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
|
||||
LOCKFILE=/var/lock/ghc-doc-index.lock
|
||||
|
||||
# the lockfile is not meant to be perfect, it's just in case the
|
||||
# two cron scripts get run close to each other to keep
|
||||
# them from stepping on each other's toes.
|
||||
[ -f $LOCKFILE ] && exit 0
|
||||
|
||||
trap "{ rm -f $LOCKFILE ; exit 255; }" EXIT
|
||||
touch $LOCKFILE
|
||||
|
||||
PKGDIRCACHE=/var/lib/ghc/pkg-dir.cache
|
||||
LISTING="env LANG=C ls -dl"
|
||||
|
||||
# only re-index ghc docs when there are changes
|
||||
cd /usr/share/doc/ghc/html/libraries
|
||||
if [ -r "$PKGDIRCACHE" ]; then
|
||||
$LISTING */ > $PKGDIRCACHE.new
|
||||
DIR_DIFF=$(diff $PKGDIRCACHE $PKGDIRCACHE.new)
|
||||
else
|
||||
$LISTING */ > $PKGDIRCACHE
|
||||
fi
|
||||
if [ -x "gen_contents_index" -a ! -r "$PKGDIRCACHE.new" -o -n "$DIR_DIFF" ]; then
|
||||
./gen_contents_index --batch
|
||||
fi
|
||||
|
||||
if [ -f $PKGDIRCACHE.new ]; then
|
||||
mv -f $PKGDIRCACHE{.new,}
|
||||
fi
|
||||
|
||||
exit 0
|
|
@ -0,0 +1,13 @@
|
|||
diff -Nuard ghc-7.0.1.orig/compiler/main/DriverPipeline.hs ghc-7.0.1/compiler/main/DriverPipeline.hs
|
||||
--- ghc-7.0.1.orig/compiler/main/DriverPipeline.hs 2010-11-12 19:10:03.000000000 +0100
|
||||
+++ ghc-7.0.1/compiler/main/DriverPipeline.hs 2011-02-22 11:08:26.079686994 +0100
|
||||
@@ -1211,6 +1211,9 @@
|
||||
let ld_r args = SysTools.runLink dflags ([
|
||||
SysTools.Option "-nostdlib",
|
||||
SysTools.Option "-nodefaultlibs",
|
||||
+#ifdef sparc_TARGET_ARCH
|
||||
+ SysTools.Option "-Wl,--no-relax",
|
||||
+#endif
|
||||
SysTools.Option "-Wl,-r",
|
||||
SysTools.Option ld_x_flag,
|
||||
SysTools.Option "-o",
|
|
@ -0,0 +1,20 @@
|
|||
diff -u ghc-6.12.3/libraries/gen_contents_index gen_contents_index
|
||||
--- ghc-6.12.3/libraries/gen_contents_index 2010-11-05 10:28:02.000000000 +1000
|
||||
+++ gen_contents_index 2010-11-05 10:20:37.000000000 +1000
|
||||
@@ -22,5 +22,5 @@
|
||||
done
|
||||
;;
|
||||
-*)
|
||||
+--batch)
|
||||
HADDOCK=/usr/bin/haddock
|
||||
# We don't want the GHC API to swamp the index
|
||||
@@ -32,6 +32,9 @@
|
||||
HADDOCK_ARGS="$HADDOCK_ARGS $HADDOCK_ARG"
|
||||
done
|
||||
;;
|
||||
+*)
|
||||
+ HADDOCK=/bin/true
|
||||
+ tty -s && echo Run with '--batch' to index package haddock docs.
|
||||
esac
|
||||
|
||||
# Now create the combined contents and index pages
|
|
@ -0,0 +1,12 @@
|
|||
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#/.*##'`
|
|
@ -0,0 +1,34 @@
|
|||
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);
|
|
@ -0,0 +1,18 @@
|
|||
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.4/ghc/ghc.wrapper.pthread ghc-7.0.4/ghc/ghc.wrapper
|
||||
--- ghc-7.0.4/ghc/ghc.wrapper.pthread 2012-03-09 09:39:58.205330373 +0900
|
||||
+++ ghc-7.0.4/ghc/ghc.wrapper 2012-03-09 09:41:01.791237737 +0900
|
||||
@@ -1 +1 @@
|
||||
-exec "$executablename" -B"$topdir" -pgmc "$pgmgcc" -pgma "$pgmgcc" -pgml "$pgmgcc" -pgmP "$pgmgcc -E -undef -traditional" -optc-I$(pkg-config --variable=includedir libffi) ${1+"$@"}
|
||||
+exec "$executablename" -B"$topdir" -pgmc "$pgmgcc" -pgma "$pgmgcc" -pgml "$pgmgcc" -pgmP "$pgmgcc -E -undef -traditional" -optl-pthread -optc-I$(pkg-config --variable=includedir libffi) ${1+"$@"}
|
|
@ -0,0 +1,120 @@
|
|||
diff -up ghc-7.0.1/compiler/ghc.cabal.in.libffi ghc-7.0.1/compiler/ghc.cabal.in
|
||||
--- ghc-7.0.1/compiler/ghc.cabal.in.libffi 2010-11-13 04:10:03.000000000 +1000
|
||||
+++ ghc-7.0.1/compiler/ghc.cabal.in 2010-11-16 19:04:28.000000000 +1000
|
||||
@@ -83,7 +83,7 @@ Library
|
||||
if flag(ghci)
|
||||
Build-Depends: template-haskell
|
||||
CPP-Options: -DGHCI
|
||||
- Include-Dirs: ../libffi/build/include
|
||||
+ pkgconfig-depends: libffi
|
||||
|
||||
if !flag(ncg)
|
||||
CPP-Options: -DOMIT_NATIVE_CODEGEN
|
||||
diff -up ghc-7.0.1/ghc.mk.libffi ghc-7.0.1/ghc.mk
|
||||
--- ghc-7.0.1/ghc.mk.libffi 2010-11-13 04:10:05.000000000 +1000
|
||||
+++ ghc-7.0.1/ghc.mk 2010-11-16 19:04:28.000000000 +1000
|
||||
@@ -437,7 +437,6 @@ utils/runghc/dist/package-data.mk: compi
|
||||
# add the final two package.conf dependencies: ghc-prim depends on RTS,
|
||||
# and RTS depends on libffi.
|
||||
libraries/ghc-prim/dist-install/package-data.mk : rts/package.conf.inplace
|
||||
-rts/package.conf.inplace : libffi/package.conf.inplace
|
||||
endif
|
||||
|
||||
# --------------------------------
|
||||
@@ -452,11 +451,6 @@ ALL_STAGE1_LIBS += $(foreach lib,$(PACKA
|
||||
endif
|
||||
BOOT_LIBS = $(foreach lib,$(STAGE0_PACKAGES),$(libraries/$(lib)_dist-boot_v_LIB))
|
||||
|
||||
-OTHER_LIBS = libffi/dist-install/build/libHSffi$(v_libsuf) libffi/dist-install/build/HSffi.o
|
||||
-ifeq "$(BuildSharedLibs)" "YES"
|
||||
-OTHER_LIBS += libffi/dist-install/build/libHSffi$(dyn_libsuf)
|
||||
-endif
|
||||
-
|
||||
# ----------------------------------------
|
||||
# Special magic for the ghc-prim package
|
||||
|
||||
@@ -581,7 +575,6 @@ BUILD_DIRS += \
|
||||
driver/ghci \
|
||||
driver/ghc \
|
||||
driver/haddock \
|
||||
- libffi \
|
||||
includes \
|
||||
rts
|
||||
|
||||
@@ -937,11 +930,10 @@ INSTALL_DISTDIR_compiler = stage2
|
||||
|
||||
# Now we can do the installation
|
||||
install_packages: install_libexecs
|
||||
-install_packages: libffi/package.conf.install rts/package.conf.install
|
||||
+install_packages: rts/package.conf.install
|
||||
$(call INSTALL_DIR,"$(DESTDIR)$(topdir)")
|
||||
"$(RM)" $(RM_OPTS_REC) "$(INSTALLED_PACKAGE_CONF)"
|
||||
$(call INSTALL_DIR,"$(INSTALLED_PACKAGE_CONF)")
|
||||
- "$(INSTALLED_GHC_PKG_REAL)" --force --global-conf "$(INSTALLED_PACKAGE_CONF)" update libffi/package.conf.install
|
||||
"$(INSTALLED_GHC_PKG_REAL)" --force --global-conf "$(INSTALLED_PACKAGE_CONF)" update rts/package.conf.install
|
||||
$(foreach p, $(INSTALLED_PKG_DIRS), \
|
||||
$(call make-command, \
|
||||
@@ -1024,7 +1016,7 @@ BIN_DIST_MK = $(BIN_DIST_PREP_DIR)/bindi
|
||||
unix-binary-dist-prep:
|
||||
"$(RM)" $(RM_OPTS_REC) bindistprep/
|
||||
"$(MKDIRHIER)" $(BIN_DIST_PREP_DIR)
|
||||
- set -e; for i in packages LICENSE compiler ghc rts libraries utils docs libffi includes driver mk rules Makefile aclocal.m4 config.sub config.guess install-sh extra-gcc-opts.in ghc.mk inplace distrib/configure.ac distrib/README distrib/INSTALL; do ln -s ../../$$i $(BIN_DIST_PREP_DIR)/; done
|
||||
+ set -e; for i in packages LICENSE compiler ghc rts libraries utils docs includes driver mk rules Makefile aclocal.m4 config.sub config.guess install-sh extra-gcc-opts.in ghc.mk inplace distrib/configure.ac distrib/README distrib/INSTALL; do ln -s ../../$$i $(BIN_DIST_PREP_DIR)/; done
|
||||
echo "HADDOCK_DOCS = $(HADDOCK_DOCS)" >> $(BIN_DIST_MK)
|
||||
echo "LATEX_DOCS = $(LATEX_DOCS)" >> $(BIN_DIST_MK)
|
||||
echo "BUILD_DOCBOOK_HTML = $(BUILD_DOCBOOK_HTML)" >> $(BIN_DIST_MK)
|
||||
@@ -1102,7 +1094,7 @@ SRC_DIST_DIR=$(shell pwd)/$(SRC_DIST_NAM
|
||||
#
|
||||
# Files to include in source distributions
|
||||
#
|
||||
-SRC_DIST_DIRS = mk rules docs distrib bindisttest libffi includes utils docs rts compiler ghc driver libraries ghc-tarballs
|
||||
+SRC_DIST_DIRS = mk rules docs distrib bindisttest includes utils docs rts compiler ghc driver libraries ghc-tarballs
|
||||
SRC_DIST_FILES += \
|
||||
configure.ac config.guess config.sub configure \
|
||||
aclocal.m4 README ANNOUNCE HACKING LICENSE Makefile install-sh \
|
||||
diff -up ghc-7.0.1/rts/ghc.mk.libffi ghc-7.0.1/rts/ghc.mk
|
||||
--- ghc-7.0.1/rts/ghc.mk.libffi 2010-11-13 04:10:06.000000000 +1000
|
||||
+++ ghc-7.0.1/rts/ghc.mk 2010-11-16 19:06:09.000000000 +1000
|
||||
@@ -430,15 +430,15 @@ endif
|
||||
|
||||
$(eval $(call build-dependencies,rts,dist,1))
|
||||
|
||||
-$(rts_dist_depfile_c_asm) : libffi/dist-install/build/ffi.h $(DTRACEPROBES_H)
|
||||
+$(rts_dist_depfile_c_asm) : $(DTRACEPROBES_H)
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# libffi stuff
|
||||
|
||||
-rts_CC_OPTS += -Ilibffi/build/include
|
||||
-rts_HC_OPTS += -Ilibffi/build/include
|
||||
-rts_HSC2HS_OPTS += -Ilibffi/build/include
|
||||
-rts_LD_OPTS += -Llibffi/build/include
|
||||
+rts_CC_OPTS += $(shell pkg-config --cflags libffi)
|
||||
+rts_HC_OPTS += $(shell pkg-config --cflags libffi)
|
||||
+rts_HSC2HS_OPTS += $(shell pkg-config --cflags libffi)
|
||||
+rts_LD_OPTS += $(shell pkg-config --libs libffi)
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# compile dtrace probes if dtrace is supported
|
||||
diff -up ghc-7.0.1/rts/package.conf.in.libffi ghc-7.0.1/rts/package.conf.in
|
||||
--- ghc-7.0.1/rts/package.conf.in.libffi 2010-11-13 04:10:06.000000000 +1000
|
||||
+++ ghc-7.0.1/rts/package.conf.in 2010-11-16 19:04:28.000000000 +1000
|
||||
@@ -24,8 +24,9 @@ library-dirs: TOP"/rts/dist/build" PAPI
|
||||
hs-libraries: "HSrts"
|
||||
|
||||
extra-libraries:
|
||||
+ "ffi"
|
||||
#ifdef HAVE_LIBM
|
||||
- "m" /* for ldexp() */
|
||||
+ , "m" /* for ldexp() */
|
||||
#endif
|
||||
#ifdef HAVE_LIBRT
|
||||
, "rt"
|
||||
@@ -55,7 +56,6 @@ include-dirs: TOP"/includes"
|
||||
#endif
|
||||
|
||||
includes: Stg.h
|
||||
-depends: builtin_ffi
|
||||
hugs-options:
|
||||
cc-options:
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
diff -u ghc-7.0.4/ghc/ghc.wrapper\~ ghc-7.0.4/ghc/ghc.wrapper
|
||||
--- ghc-7.0.4/ghc/ghc.wrapper~ 2011-06-14 02:10:05.000000000 +0900
|
||||
+++ ghc-7.0.4/ghc/ghc.wrapper 2012-03-08 18:00:02.713144402 +0900
|
||||
@@ -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" -optc-I$(pkg-config --variable=includedir libffi) ${1+"$@"}
|
||||
|
||||
Diff finished. Thu Mar 8 18:01:14 2012
|
530
ghc.spec
530
ghc.spec
|
@ -1,44 +1,49 @@
|
|||
## default enabled options ##
|
||||
# experimental shared libraries support available in ghc-6.12 for x86
|
||||
%ifarch %{ix86} x86_64
|
||||
%bcond_without shared
|
||||
%endif
|
||||
%bcond_without doc
|
||||
# test builds can made faster and smaller by disabling profiled libraries
|
||||
# (currently libHSrts_thr_p.a breaks no prof build)
|
||||
%bcond_without prof
|
||||
# build xml manuals (users_guide, etc)
|
||||
%bcond_without manual
|
||||
# run testsuite
|
||||
%bcond_without testsuite
|
||||
# include colored html src
|
||||
%bcond_without hscolour
|
||||
# Shared haskell libraries disabled for epel5
|
||||
|
||||
## default disabled options ##
|
||||
# include extralibs
|
||||
%bcond_with extralibs
|
||||
# quick build profile
|
||||
%bcond_with quick
|
||||
# To bootstrap a new version of ghc, uncomment the following:
|
||||
#%%global ghc_bootstrapping 1
|
||||
#%%{?ghc_bootstrap}
|
||||
#%%global without_hscolour 1
|
||||
#%%global without_testsuite 1
|
||||
%global without_manual 1
|
||||
|
||||
# the debuginfo subpackage is currently empty anyway, so don't generate it
|
||||
# unregisterized archs
|
||||
%global unregisterised_archs ppc64 armv7hl armv5tel s390 s390x
|
||||
|
||||
# ghc does not output dwarf format so debuginfo is not useful
|
||||
%global debug_package %{nil}
|
||||
|
||||
%global space %(echo -n ' ')
|
||||
%global BSDHaskellReport BSD%{space}and%{space}HaskellReport
|
||||
|
||||
# gcc-4.1 is too old for ghc7 dyn:
|
||||
# "/usr/bin/ld: rts/dist/build/RtsStartup.dyn_o: relocation R_X86_64_PC32 against `StgRun' can not be used when making a shared object; recompile with -fPIC"
|
||||
%ifarch %{ix86} x86_64
|
||||
%global gcc gcc44
|
||||
%else
|
||||
%global gcc gcc
|
||||
%endif
|
||||
|
||||
Name: ghc
|
||||
# part of haskell-platform-2010.2.0.0
|
||||
Version: 6.12.3
|
||||
Release: 5%{?dist}
|
||||
Summary: Glasgow Haskell Compilation system
|
||||
# fedora ghc has only been bootstrapped on the following archs:
|
||||
ExclusiveArch: %{ix86} x86_64 ppc alpha
|
||||
License: BSD
|
||||
# part of haskell-platform
|
||||
# NB make sure to rebuild ghc after a version bump to avoid ABI change problems
|
||||
Version: 7.0.4
|
||||
# Since library subpackages are versioned:
|
||||
# - release can only be reset if all library versions get bumped simultaneously
|
||||
# (eg for a major release)
|
||||
# - minor release numbers should be incremented monotonically
|
||||
Release: 45.3%{?dist}
|
||||
Summary: Glasgow Haskell Compiler
|
||||
# fedora ghc has been bootstrapped on the following archs:
|
||||
#ExclusiveArch: %{ix86} x86_64 ppc alpha sparcv9 ppc64 armv7hl armv5tel
|
||||
ExcludeArch: sparc64
|
||||
License: %BSDHaskellReport
|
||||
Group: Development/Languages
|
||||
Source0: http://www.haskell.org/ghc/dist/%{version}/ghc-%{version}-src.tar.bz2
|
||||
%if %{with extralibs}
|
||||
Source1: http://www.haskell.org/ghc/dist/%{version}/ghc-%{version}-src-extralibs.tar.bz2
|
||||
%endif
|
||||
%if %{with testsuite}
|
||||
%if %{undefined without_testsuite}
|
||||
Source2: http://www.haskell.org/ghc/dist/%{version}/testsuite-%{version}.tar.bz2
|
||||
%endif
|
||||
Source3: ghc-doc-index.cron
|
||||
URL: http://haskell.org/ghc/
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
# introduced for f14
|
||||
|
@ -50,156 +55,260 @@ Obsoletes: ghc-haddock-doc < 2.4.2-3
|
|||
# introduced for f14
|
||||
Obsoletes: ghc-time-devel < 1.1.2.4-5
|
||||
Obsoletes: ghc-time-doc < 1.1.2.4-5
|
||||
# until new cabalized gtk2hs packages in f14+
|
||||
Obsoletes: ghc-cairo-devel < 0.11-1, ghc-cairo-doc < 0.11-1
|
||||
Obsoletes: ghc-gconf-devel < 0.11-1, ghc-gconf-doc < 0.11-1
|
||||
Obsoletes: ghc-gio-devel < 0.11-1, ghc-gio-doc < 0.11-1
|
||||
Obsoletes: ghc-glade-devel < 0.11-1, ghc-glade-doc < 0.11-1
|
||||
Obsoletes: ghc-glib-devel < 0.11-1, ghc-glib-doc < 0.11-1
|
||||
Obsoletes: ghc-gstreamer-devel < 0.11-1, ghc-gstreamer-doc < 0.11-1
|
||||
Obsoletes: ghc-gtk-devel < 0.11-1, ghc-gtk-doc < 0.11-1
|
||||
Obsoletes: ghc-gtkglext-devel < 0.11-1, ghc-gtkglext-doc < 0.11-1
|
||||
Obsoletes: ghc-gtksourceview2-devel < 0.11-1, ghc-gtksourceview2-doc < 0.11-1
|
||||
Obsoletes: ghc-soegtk-devel < 0.11-1, ghc-soegtk-doc < 0.11-1
|
||||
Obsoletes: ghc-svgcairo-devel < 0.11-1, ghc-svgcairo-doc < 0.11-1
|
||||
Obsoletes: ghc-vte-devel < 0.11-1, ghc-vte-doc < 0.11-1
|
||||
BuildRequires: ghc, happy, ghc-rpm-macros >= 0.8.0
|
||||
BuildRequires: gmp-devel, ncurses-devel
|
||||
Requires: gcc, gmp-devel
|
||||
%if %{with shared}
|
||||
# not sure if this is actually needed:
|
||||
BuildRequires: libffi-devel
|
||||
Requires: %{name}-libs = %{version}-%{release}
|
||||
%if %{undefined ghc_bootstrapping}
|
||||
BuildRequires: ghc-compiler = %{version}
|
||||
%endif
|
||||
%if %{with manual}
|
||||
BuildRequires: ghc-rpm-macros >= 0.14
|
||||
BuildRequires: ghc-bytestring-devel
|
||||
BuildRequires: ghc-containers-devel
|
||||
BuildRequires: ghc-directory-devel
|
||||
BuildRequires: ghc-haskell98-devel
|
||||
BuildRequires: ghc-pretty-devel
|
||||
BuildRequires: ghc-process-devel
|
||||
BuildRequires: gmp-devel
|
||||
BuildRequires: libffi-devel
|
||||
# for internal terminfo
|
||||
BuildRequires: ncurses-devel
|
||||
%if %{undefined without_manual}
|
||||
BuildRequires: libxslt, docbook-style-xsl
|
||||
%endif
|
||||
%if %{with hscolour}
|
||||
%if %{undefined without_haddock} && %{undefined without_hscolour}
|
||||
BuildRequires: hscolour
|
||||
%endif
|
||||
%if %{with testsuite}
|
||||
%if %{undefined without_testsuite}
|
||||
BuildRequires: python
|
||||
%endif
|
||||
%ifarch ppc64 s390x
|
||||
BuildRequires: autoconf
|
||||
%endif
|
||||
%ifarch %{ix86} x86_64
|
||||
BuildRequires: %{gcc}
|
||||
%endif
|
||||
Requires: ghc-compiler = %{version}-%{release}
|
||||
Requires: ghc-libraries = %{version}-%{release}
|
||||
Requires: ghc-ghc-devel = %{version}-%{release}
|
||||
Patch1: ghc-6.12.1-gen_contents_index-haddock-path.patch
|
||||
Patch2: ghc-gen_contents_index-type-level.patch
|
||||
Patch3: ghc-gen_contents_index-cron-batch.patch
|
||||
Patch4: ghc-use-system-libffi.patch
|
||||
# add cabal configure option --enable-executable-dynamic
|
||||
# (see http://hackage.haskell.org/trac/hackage/ticket/600)
|
||||
Patch5: Cabal-option-executable-dynamic.patch
|
||||
Patch6: ghc-fix-linking-on-sparc.patch
|
||||
Patch7: ghc-powerpc-pthread.patch
|
||||
# http://hackage.haskell.org/trac/ghc/ticket/4999
|
||||
Patch8: ghc-powerpc-linker-mmap.patch
|
||||
# touches configure.ac
|
||||
Patch9: ghc-7.0.4-configure-s390x.patch
|
||||
# add libffi include dir to ghc wrapper for archs using gcc
|
||||
Patch10: ghc-wrapper-libffi-include.patch
|
||||
|
||||
%description
|
||||
GHC is a state-of-the-art programming suite for Haskell, a purely
|
||||
functional programming language. It includes an optimising compiler
|
||||
generating good code for a variety of platforms, together with an
|
||||
interactive system for convenient, quick development. The
|
||||
distribution includes space and time profiling facilities, a large
|
||||
collection of libraries, and support for various language
|
||||
extensions, including concurrency, exceptions, and a foreign language
|
||||
interface.
|
||||
GHC is a state-of-the-art, open source, compiler and interactive environment
|
||||
for the functional language Haskell. Highlights:
|
||||
|
||||
%if %{with shared}
|
||||
%package libs
|
||||
Summary: Shared libraries for GHC
|
||||
Group: Development/Libraries
|
||||
Obsoletes: ghc-time < 1.1.2.4-5
|
||||
- GHC supports the entire Haskell 2010 language plus various extensions.
|
||||
- GHC has particularly good support for concurrency and parallelism,
|
||||
including support for Software Transactional Memory (STM).
|
||||
- GHC generates fast code, particularly for concurrent programs
|
||||
(check the results on the "Computer Language Benchmarks Game").
|
||||
- GHC works on several platforms including Windows, Mac, Linux,
|
||||
most varieties of Unix, and several different processor architectures.
|
||||
- GHC has extensive optimisation capabilities,
|
||||
including inter-module optimisation.
|
||||
- GHC compiles Haskell code either directly to native code or using LLVM
|
||||
as a back-end. GHC can also generate C code as an intermediate target for
|
||||
porting to new platforms. The interactive environment compiles Haskell to
|
||||
bytecode, and supports execution of mixed bytecode/compiled programs.
|
||||
- Profiling is supported, both by time/allocation and heap profiling.
|
||||
- GHC comes with core libraries, and thousands more are available on Hackage.
|
||||
|
||||
%description libs
|
||||
Shared libraries for Glorious Glasgow Haskell Compilation System (GHC).
|
||||
%endif
|
||||
%package compiler
|
||||
Summary: GHC compiler and utilities
|
||||
License: BSD
|
||||
Group: Development/Languages
|
||||
Requires: %{gcc}
|
||||
Requires: ghc-base-devel
|
||||
Requires(post): chkconfig
|
||||
Requires(postun): chkconfig
|
||||
# added in f14
|
||||
Obsoletes: ghc-doc < 6.12.3-4
|
||||
# llvm is an optional dependency
|
||||
|
||||
%if %{with prof}
|
||||
%package prof
|
||||
Summary: Profiling libraries for GHC
|
||||
Group: Development/Libraries
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Obsoletes: ghc-haddock-prof < 2.4.2-3
|
||||
Obsoletes: ghc-time-prof < 1.1.2.4-5
|
||||
# gtk2hs
|
||||
Obsoletes: ghc-cairo-prof < 0.11-1
|
||||
Obsoletes: ghc-gconf-prof < 0.11-1
|
||||
Obsoletes: ghc-gio-prof < 0.11-1
|
||||
Obsoletes: ghc-glade-prof < 0.11-1
|
||||
Obsoletes: ghc-glib-prof < 0.11-1
|
||||
Obsoletes: ghc-gstreamer-prof < 0.11-1
|
||||
Obsoletes: ghc-gtk-prof < 0.11-1
|
||||
Obsoletes: ghc-gtkglext-prof < 0.11-1
|
||||
Obsoletes: ghc-gtksourceview2-prof < 0.11-1
|
||||
Obsoletes: ghc-soegtk-prof < 0.11-1
|
||||
Obsoletes: ghc-svgcairo-prof < 0.11-1
|
||||
Obsoletes: ghc-vte-prof < 0.11-1
|
||||
%description compiler
|
||||
The package contains the GHC compiler, tools and utilities.
|
||||
|
||||
%description prof
|
||||
Profiling libraries for Glorious Glasgow Haskell Compilation System (GHC).
|
||||
They should be installed when GHC's profiling subsystem is needed.
|
||||
%endif
|
||||
The ghc libraries are provided by ghc-devel.
|
||||
To install all of ghc, install the ghc base package.
|
||||
|
||||
%global ghc_version_override %{version}
|
||||
|
||||
%ghc_binlib_package -n ghc -o 6.12.3-4
|
||||
# needs ghc_version_override for bootstrapping
|
||||
%global _use_internal_dependency_generator 0
|
||||
%global __find_provides %{_prefix}/lib/rpm/ghc-deps.sh --provides %{buildroot}%{ghclibdir}
|
||||
%global __find_requires %{_prefix}/lib/rpm/ghc-deps.sh --requires %{buildroot}%{ghclibdir}
|
||||
|
||||
|
||||
%global ghc_pkg_c_deps ghc-compiler = %{ghc_version_override}-%{release}
|
||||
|
||||
%if %{defined ghclibdir}
|
||||
%ghc_lib_subpackage Cabal 1.10.2.0
|
||||
%ghc_lib_subpackage -l %BSDHaskellReport array 0.3.0.2
|
||||
%ghc_lib_subpackage -l %BSDHaskellReport -c gmp-devel,libffi-devel base 4.3.1.0
|
||||
%ghc_lib_subpackage bytestring 0.9.1.10
|
||||
%ghc_lib_subpackage -l %BSDHaskellReport containers 0.4.0.0
|
||||
%ghc_lib_subpackage -l %BSDHaskellReport directory 1.1.0.0
|
||||
%ghc_lib_subpackage -l %BSDHaskellReport extensible-exceptions 0.1.1.2
|
||||
%ghc_lib_subpackage filepath 1.2.0.0
|
||||
%define ghc_pkg_obsoletes ghc-bin-package-db-devel < 0.0.0.0-12
|
||||
# in ghc not ghc-libraries:
|
||||
%ghc_lib_subpackage -x ghc %{ghc_version_override}
|
||||
%undefine ghc_pkg_obsoletes
|
||||
%ghc_lib_subpackage -l HaskellReport haskell2010 1.0.0.0
|
||||
%ghc_lib_subpackage -l HaskellReport haskell98 1.1.0.1
|
||||
%ghc_lib_subpackage hpc 0.5.0.6
|
||||
%ghc_lib_subpackage -l %BSDHaskellReport old-locale 1.0.0.2
|
||||
%ghc_lib_subpackage -l %BSDHaskellReport old-time 1.0.0.6
|
||||
%ghc_lib_subpackage pretty 1.0.1.2
|
||||
%ghc_lib_subpackage -l %BSDHaskellReport process 1.0.1.5
|
||||
%ghc_lib_subpackage -l %BSDHaskellReport random 1.0.0.3
|
||||
%ghc_lib_subpackage template-haskell 2.5.0.0
|
||||
%ghc_lib_subpackage time 1.2.0.3
|
||||
%ghc_lib_subpackage unix 2.4.2.0
|
||||
%endif
|
||||
|
||||
%global version %{ghc_version_override}
|
||||
|
||||
%package libraries
|
||||
Summary: GHC development libraries meta package
|
||||
License: %BSDHaskellReport
|
||||
Group: Development/Libraries
|
||||
Requires: ghc-compiler = %{version}-%{release}
|
||||
Obsoletes: ghc-devel < %{version}-%{release}
|
||||
Provides: ghc-devel = %{version}-%{release}
|
||||
Obsoletes: ghc-prof < %{version}-%{release}
|
||||
Provides: ghc-prof = %{version}-%{release}
|
||||
# since f15
|
||||
Obsoletes: ghc-libs < 7.0.1-3
|
||||
%{?ghc_packages_list:Requires: %(echo %{ghc_packages_list} | sed -e "s/\([^ ]*\)-\([^ ]*\)/ghc-\1-devel = \2-%{release},/g")}
|
||||
|
||||
%description libraries
|
||||
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.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{version} %{?with_extralibs:-b1} %{?with_testsuite:-b2}
|
||||
%setup -q -n %{name}-%{version} %{!?without_testsuite:-b2}
|
||||
# absolute haddock path (was for html/libraries -> libraries)
|
||||
%patch1 -p1 -b .orig
|
||||
# type-level too big so skip it in gen_contents_index
|
||||
%patch2 -p1
|
||||
# disable gen_contents_index when not --batch for cron
|
||||
%patch3 -p1
|
||||
|
||||
# make sure we don't use these
|
||||
rm -r ghc-tarballs/{mingw,perl}
|
||||
# use system libffi
|
||||
%patch4 -p1 -b .libffi
|
||||
rm -r ghc-tarballs/libffi
|
||||
# needed for tier 2 archs
|
||||
%ifnarch %{ix86} x86_64
|
||||
ln -s $(pkg-config --variable=includedir libffi)/*.h libraries/base/include
|
||||
%endif
|
||||
|
||||
%patch5 -p1 -b .orig
|
||||
|
||||
%patch6 -p1 -b .sparclinking
|
||||
|
||||
%ifnarch %{ix86} x86_64
|
||||
%patch10 -p1 -b .10-ffi
|
||||
%endif
|
||||
|
||||
%ifarch ppc ppc64
|
||||
%patch7 -p1 -b .pthread
|
||||
%patch8 -p1 -b .mmap
|
||||
%endif
|
||||
|
||||
%ifarch s390x
|
||||
%patch9 -p1 -b .s390x
|
||||
%endif
|
||||
|
||||
%build
|
||||
# http://hackage.haskell.org/trac/ghc/wiki/Platforms
|
||||
# cf https://github.com/gentoo-haskell/gentoo-haskell/tree/master/dev-lang/ghc
|
||||
cat > mk/build.mk << EOF
|
||||
GhcLibWays = v %{?with_prof:p} %{?with_shared:dyn}
|
||||
%if %{without doc}
|
||||
HADDOCK_DOCS = NO
|
||||
GhcLibWays = v %{!?ghc_without_shared:dyn} %{!?without_prof:p}
|
||||
%if %{defined without_haddock}
|
||||
HADDOCK_DOCS = NO
|
||||
%endif
|
||||
%if %{without manual}
|
||||
%if %{defined without_manual}
|
||||
BUILD_DOCBOOK_HTML = NO
|
||||
%endif
|
||||
%if %{with quick}
|
||||
SRC_HC_OPTS = -H64m -O0 -fasm
|
||||
GhcStage1HcOpts = -O -fasm
|
||||
GhcStage2HcOpts = -O0 -fasm
|
||||
GhcLibHcOpts = -O0 -fasm
|
||||
SplitObjs = NO
|
||||
%endif
|
||||
%if %{without hscolour}
|
||||
%if %{undefined without_hscolour}
|
||||
HSCOLOUR_SRCS = NO
|
||||
%endif
|
||||
%ifarch %{unregisterised_archs}
|
||||
GhcUnregisterised=YES
|
||||
%endif
|
||||
%ifarch ppc64
|
||||
GhcNotThreaded=YES
|
||||
SRC_HC_OPTS+=-optc-mminimal-toc -optl-pthread
|
||||
SRC_CC_OPTS+=-mminimal-toc -pthread -Wa,--noexecstack
|
||||
%endif
|
||||
EOF
|
||||
|
||||
%ifarch ppc64 s390x
|
||||
autoreconf
|
||||
%endif
|
||||
export CFLAGS="${CFLAGS:-%optflags}"
|
||||
# specify gcc to avoid problems when bootstrapping with ccache
|
||||
./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_shared:--enable-shared}
|
||||
--with-gcc=%{_bindir}/%{gcc}
|
||||
|
||||
# 8 cpus seems to break build
|
||||
#make %{_smp_mflags}
|
||||
make
|
||||
# >4 cpus tends to break build
|
||||
[ -z "$RPM_BUILD_NCPUS" ] && RPM_BUILD_NCPUS=$(%{_bindir}/getconf _NPROCESSORS_ONLN)
|
||||
[ "$RPM_BUILD_NCPUS" -gt 4 ] && RPM_BUILD_NCPUS=4
|
||||
make -j$RPM_BUILD_NCPUS
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
make DESTDIR=${RPM_BUILD_ROOT} install
|
||||
|
||||
SRC_TOP=$PWD
|
||||
( cd $RPM_BUILD_ROOT
|
||||
# library directories
|
||||
find .%{_libdir}/%{name}-%{version} -maxdepth 1 -type d ! -name 'include' ! -name 'package.conf.d' -fprintf $SRC_TOP/rpm-lib-dir.files "%%%%dir %%p\n"
|
||||
# library devel subdirs
|
||||
find .%{_libdir}/%{name}-%{version} -mindepth 1 -type d \( -fprintf $SRC_TOP/rpm-dev-dir.files "%%%%dir %%p\n" \)
|
||||
# split dyn, devel, conf and prof files
|
||||
find .%{_libdir}/%{name}-%{version} -mindepth 1 \( -name 'libHS*-ghc%{version}.so' -fprintf $SRC_TOP/rpm-lib.files "%%%%attr(755,root,root) %%p\n" \) -o \( \( -name '*.p_hi' -o -name '*_p.a' \) -fprint $SRC_TOP/ghc-prof.files \) -o \( \( -name '*.hi' -o -name '*.dyn_hi' -o -name 'libHS*.a' -o -name 'HS*.o' -o -name '*.h' -o -name '*.conf' -o -type f -not -name 'package.cache' \) -fprint $SRC_TOP/rpm-base.files \)
|
||||
# manuals (src dir are subdirs so dont duplicate them)
|
||||
find .%{_docdir}/%{name}/html/* -type d ! -name libraries ! -name src > $SRC_TOP/rpm-doc-dir.files
|
||||
)
|
||||
for i in %{ghc_packages_list}; do
|
||||
name=$(echo $i | sed -e "s/\(.*\)-.*/\1/")
|
||||
ver=$(echo $i | sed -e "s/.*-\(.*\)/\1/")
|
||||
%ghc_gen_filelists $name $ver
|
||||
echo "%doc libraries/$name/LICENSE" >> ghc-$name%{?ghc_without_shared:-devel}.files
|
||||
done
|
||||
|
||||
# make paths absolute (filter "./usr" to "/usr")
|
||||
sed -i -e "s|\.%{_prefix}|%{_prefix}|" *.files
|
||||
%ghc_gen_filelists bin-package-db 0.0.0.0
|
||||
%ghc_gen_filelists ghc %{ghc_version_override}
|
||||
%ghc_gen_filelists ghc-binary 0.5.0.2
|
||||
%ghc_gen_filelists ghc-prim 0.2.0.0
|
||||
%ghc_gen_filelists integer-gmp 0.2.0.3
|
||||
|
||||
cat rpm-lib-dir.files rpm-lib.files > ghc-libs.files
|
||||
cat rpm-dev-dir.files rpm-base.files rpm-doc-dir.files > ghc.files
|
||||
%define merge_filelist()\
|
||||
%if %{undefined ghc_without_shared}\
|
||||
cat ghc-%1.files >> ghc-%2.files\
|
||||
%endif\
|
||||
cat ghc-%1-devel.files >> ghc-%2-devel.files\
|
||||
cp -p libraries/%1/LICENSE libraries/LICENSE.%1\
|
||||
echo "%doc libraries/LICENSE.%1" >> ghc-%2.files
|
||||
|
||||
# subpackage ghc libraries
|
||||
sed -i -e "/ghc-%{version}\/ghc-%{version}/d" ghc.files ghc-libs.files ghc-prof.files
|
||||
sed -i -e "/ghc-%{version}\/package.conf.d\/ghc-%{version}-.*.conf\$/d" ghc.files
|
||||
sed -i -e "/html\/libraries\/ghc-%{version}\$/d" ghc.files
|
||||
%ghc_gen_filelists ghc
|
||||
%merge_filelist integer-gmp base
|
||||
%merge_filelist ghc-prim base
|
||||
%merge_filelist ghc-binary ghc
|
||||
%merge_filelist bin-package-db ghc
|
||||
|
||||
%if %{undefined ghc_without_shared}
|
||||
ls $RPM_BUILD_ROOT%{ghclibdir}/libHS*.so >> ghc-base.files
|
||||
sed -i -e "s|^$RPM_BUILD_ROOT||g" ghc-base.files
|
||||
%endif
|
||||
ls -d $RPM_BUILD_ROOT%{ghclibdir}/libHS*.a $RPM_BUILD_ROOT%{ghclibdir}/package.conf.d/builtin_*.conf $RPM_BUILD_ROOT%{ghclibdir}/include >> ghc-base-devel.files
|
||||
sed -i -e "s|^$RPM_BUILD_ROOT||g" ghc-base-devel.files
|
||||
|
||||
# these are handled as alternatives
|
||||
for i in hsc2hs runhaskell; do
|
||||
|
@ -208,10 +317,16 @@ for i in hsc2hs runhaskell; do
|
|||
else
|
||||
mv ${RPM_BUILD_ROOT}%{_bindir}/$i{,-ghc}
|
||||
fi
|
||||
touch ${RPM_BUILD_ROOT}%{_bindir}/$i
|
||||
done
|
||||
|
||||
%ghc_strip_dynlinked
|
||||
|
||||
%if %{undefined without_haddock}
|
||||
mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/cron.hourly
|
||||
install -p --mode=755 %SOURCE3 ${RPM_BUILD_ROOT}%{_sysconfdir}/cron.hourly/ghc-doc-index
|
||||
mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/lib/ghc
|
||||
%endif
|
||||
|
||||
%check
|
||||
# stolen from ghc6/debian/rules:
|
||||
|
@ -221,25 +336,27 @@ mkdir testghc
|
|||
echo 'main = putStrLn "Foo"' > testghc/foo.hs
|
||||
inplace/bin/ghc-stage2 testghc/foo.hs -o testghc/foo
|
||||
[ "$(testghc/foo)" = "Foo" ]
|
||||
# doesn't seem to work inplace:
|
||||
#[ "$(inplace/bin/runghc testghc/foo.hs)" = "Foo" ]
|
||||
rm testghc/*
|
||||
echo 'main = putStrLn "Foo"' > testghc/foo.hs
|
||||
inplace/bin/ghc-stage2 testghc/foo.hs -o testghc/foo -O2
|
||||
[ "$(testghc/foo)" = "Foo" ]
|
||||
rm testghc/*
|
||||
%if %{with shared}
|
||||
%if %{undefined ghc_without_shared}
|
||||
echo 'main = putStrLn "Foo"' > testghc/foo.hs
|
||||
inplace/bin/ghc-stage2 testghc/foo.hs -o testghc/foo -dynamic
|
||||
[ "$(testghc/foo)" = "Foo" ]
|
||||
rm testghc/*
|
||||
%endif
|
||||
%if %{with testsuite}
|
||||
%if %{undefined without_testsuite}
|
||||
make -C testsuite/tests/ghc-regress fast
|
||||
%endif
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%post
|
||||
%post compiler
|
||||
# Alas, GHC, Hugs, and nhc all come with different set of tools in
|
||||
# addition to a runFOO:
|
||||
#
|
||||
|
@ -257,55 +374,144 @@ update-alternatives --install %{_bindir}/runhaskell runhaskell \
|
|||
update-alternatives --install %{_bindir}/hsc2hs hsc2hs \
|
||||
%{_bindir}/hsc2hs-ghc 500
|
||||
|
||||
%preun
|
||||
%preun compiler
|
||||
if [ "$1" = 0 ]; then
|
||||
update-alternatives --remove runhaskell %{_bindir}/runghc
|
||||
update-alternatives --remove hsc2hs %{_bindir}/hsc2hs-ghc
|
||||
fi
|
||||
|
||||
%posttrans
|
||||
# (posttrans to make sure any old libs and docs have been removed first)
|
||||
%ghc_pkg_recache
|
||||
%ghc_reindex_haddock
|
||||
%files
|
||||
|
||||
%files -f ghc.files
|
||||
%files compiler
|
||||
%defattr(-,root,root,-)
|
||||
%doc ANNOUNCE HACKING LICENSE README
|
||||
%{_bindir}/*
|
||||
%dir %{_libdir}/%{name}-%{version}
|
||||
%ghost %{_libdir}/%{name}-%{version}/package.conf.d/package.cache
|
||||
%if %{with manual}
|
||||
%{_mandir}/man1/ghc.*
|
||||
%{_bindir}/ghc
|
||||
%{_bindir}/ghc-%{version}
|
||||
%{_bindir}/ghc-pkg
|
||||
%{_bindir}/ghc-pkg-%{version}
|
||||
%{_bindir}/ghci
|
||||
%{_bindir}/ghci-%{version}
|
||||
%{_bindir}/hp2ps
|
||||
%{_bindir}/hpc
|
||||
%ghost %{_bindir}/hsc2hs
|
||||
%{_bindir}/hsc2hs-ghc
|
||||
%{_bindir}/runghc
|
||||
%ghost %{_bindir}/runhaskell
|
||||
%{_bindir}/runhaskell-ghc
|
||||
%dir %{ghclibdir}
|
||||
%{ghclibdir}/extra-gcc-opts
|
||||
%{ghclibdir}/ghc
|
||||
%{ghclibdir}/ghc-pkg
|
||||
%ifnarch %{unregisterised_archs}
|
||||
%{ghclibdir}/ghc-asm
|
||||
%{ghclibdir}/ghc-split
|
||||
%endif
|
||||
%{ghclibdir}/ghc-usage.txt
|
||||
%{ghclibdir}/ghci-usage.txt
|
||||
%{ghclibdir}/hsc2hs
|
||||
%dir %{ghclibdir}/package.conf.d
|
||||
%ghost %{ghclibdir}/package.conf.d/package.cache
|
||||
%{ghclibdir}/runghc
|
||||
%{ghclibdir}/template-hsc.h
|
||||
%{ghclibdir}/unlit
|
||||
%dir %{_docdir}/ghc
|
||||
%dir %{ghcdocbasedir}
|
||||
%if %{undefined without_haddock}
|
||||
%{_bindir}/haddock
|
||||
%{_bindir}/haddock-ghc-%{version}
|
||||
%{ghclibdir}/haddock
|
||||
%{ghclibdir}/html
|
||||
%{ghclibdir}/latex
|
||||
%{ghcdocbasedir}/html
|
||||
%if %{undefined without_manual}
|
||||
%{_mandir}/man1/ghc.*
|
||||
%{ghcdocbasedir}/Cabal
|
||||
%{ghcdocbasedir}/haddock
|
||||
%{ghcdocbasedir}/users_guide
|
||||
%endif
|
||||
%if %{with doc}
|
||||
%dir %{ghcdocbasedir}/libraries
|
||||
%{ghcdocbasedir}/libraries/frames.html
|
||||
%{ghcdocbasedir}/libraries/gen_contents_index
|
||||
%{ghcdocbasedir}/libraries/hscolour.css
|
||||
%{ghcdocbasedir}/libraries/ocean.css
|
||||
%{ghcdocbasedir}/libraries/prologue.txt
|
||||
%{ghcdocbasedir}/index.html
|
||||
%ghost %{ghcdocbasedir}/libraries/doc-index*.html
|
||||
%ghost %{ghcdocbasedir}/libraries/haddock.css
|
||||
%ghost %{ghcdocbasedir}/libraries/haddock-util.js
|
||||
%ghost %{ghcdocbasedir}/libraries/haskell_icon.gif
|
||||
%ghost %{ghcdocbasedir}/libraries/index*.html
|
||||
%ghost %{ghcdocbasedir}/libraries/minus.gif
|
||||
%ghost %{ghcdocbasedir}/libraries/plus.gif
|
||||
%{_sysconfdir}/cron.hourly/ghc-doc-index
|
||||
%{_localstatedir}/lib/ghc
|
||||
%endif
|
||||
|
||||
%if %{with shared}
|
||||
%files libs -f ghc-libs.files
|
||||
%defattr(-,root,root,-)
|
||||
%endif
|
||||
|
||||
%if %{with prof}
|
||||
%files prof -f ghc-prof.files
|
||||
%defattr(-,root,root,-)
|
||||
%endif
|
||||
%files libraries
|
||||
|
||||
%changelog
|
||||
* Fri Jul 30 2010 Jens Petersen <petersen@redhat.com> - 6.12.3-5
|
||||
- obsolete old gtk2hs packages for smooth upgrades
|
||||
* Mon Jan 13 2014 Jens Petersen <petersen@redhat.com> - 7.0.4-45.3
|
||||
- build with gcc44 on intel archs to fix dynamic linking
|
||||
- this build re-enables shared libraries
|
||||
|
||||
* Wed Dec 25 2013 Jens Petersen <petersen@redhat.com> - 7.0.4-45.2
|
||||
- final build
|
||||
- without manuals and manpages because of docbook dtd issue in configure
|
||||
|
||||
* Wed Dec 25 2013 Jens Petersen <petersen@redhat.com> - 7.0.4-45.1
|
||||
- rebase to 7.0.4 bootstrap
|
||||
- use ghc_lib_subpackage
|
||||
|
||||
- reinstate ghc-powerpc-pthread.patch needed for linking on ppc
|
||||
- patch ghc wrapper script to add libffi includedir on tier 2 archs
|
||||
- fix build with system libffi on secondary archs by including libffi headers
|
||||
in base/include
|
||||
- do alternatives handling correctly (reported by Giam Teck Choon, #753661)
|
||||
see https://fedoraproject.org/wiki/Packaging:Alternatives
|
||||
- add HaskellReport license also to the base and libraries subpackages
|
||||
- the post and postun scripts are now for the compiler subpackage
|
||||
- rename ghc-devel metapackage to ghc-libraries
|
||||
- require ghc-rpm-macros-0.14
|
||||
- move compiler and tools to ghc-compiler
|
||||
- the ghc base package is now a metapackage that installs all of ghc,
|
||||
ie ghc-compiler and ghc-devel (#750317)
|
||||
- drop ghc-doc provides
|
||||
- add HaskellReport license tag to some of the library subpackages
|
||||
which contain some code from the Haskell Reports
|
||||
- setup ghc-deps.sh after ghc_version_override for bootstrapping
|
||||
- setup dependency generation with ghc-deps.sh since it was moved to
|
||||
ghc_lib_install in ghc-rpm-macros
|
||||
- BR same ghc version unless ghc_bootstrapping defined
|
||||
- put dyn before p in GhcLibWays
|
||||
- update to 7.0.4 bugfix release
|
||||
http://haskell.org/ghc/docs/7.0.4/html/users_guide/release-7-0-4.html
|
||||
- strip static again (upstream #5004 fixed)
|
||||
- finally change from ExclusiveArch to ExcludeArch to target more archs
|
||||
- merge prof subpackages into the devel subpackages with ghc-rpm-macros-0.13
|
||||
- configure with /usr/bin/gcc to help bootstrapping to new archs
|
||||
(otherwise ccache tends to get hardcoded as gcc, which not in koji)
|
||||
- make devel and prof meta packages require libs with release
|
||||
- make ghc-*-devel subpackages require ghc with release
|
||||
- without_shared renamed to ghc_without_shared
|
||||
- include LICENSE files in the shared lib subpackages
|
||||
- add BRs for various subpackaged ghc libraries needed to build ghc
|
||||
- condition rts .so libraries for non-shared builds
|
||||
- subpackage all the libraries with ghc-rpm-macros-0.11.1
|
||||
- put rts, integer-gmp and ghc-prim in base, and ghc-binary in bin-package-db
|
||||
- drop the libs mega-subpackage
|
||||
- prof now a meta-package for backward compatibility
|
||||
- require libffi-devel
|
||||
- turn on system libffi now
|
||||
- add a cronjob for doc indexing
|
||||
- disable gen_contents_index when not run with --batch for cron
|
||||
- use system libffi with ghc-use-system-libffi.patch from debian
|
||||
|
||||
* Sat Jun 2 2012 Jens Petersen <petersen@redhat.com> - 6.12.3-5.1.el5
|
||||
- provide ghc-devel for compatibility with cabal2spec-0.22.5
|
||||
- use ghc_without_shared (ghc-rpm-macros-0.10.52)
|
||||
- drop old extralibs bcond
|
||||
- smp build with max 4 cpus
|
||||
|
||||
* Wed Sep 29 2010 Jens Petersen <petersen@redhat.com> - 6.12.3-5
|
||||
- build without happy and hscolour
|
||||
|
||||
* Thu Jul 15 2010 Jens Petersen <petersen@redhat.com> - 6.12.3-4
|
||||
- merge ghc-doc into base package
|
||||
|
@ -398,7 +604,7 @@ fi
|
|||
- add bcond for manual and extralibs
|
||||
- reenable ppc secondary arch
|
||||
- don't provide ghc-haddock-*
|
||||
- remove obsoltete post requires policycoreutils
|
||||
- remove obsolete post requires policycoreutils
|
||||
- add vanilla v to GhcLibWays when building without prof
|
||||
- handle without hscolour
|
||||
- can't smp make currently
|
||||
|
|
52
pkg-deps.sh
52
pkg-deps.sh
|
@ -1,52 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
# script to generate dependency graph for fedora haskell libraries
|
||||
# requires ghc, ghc-*-devel and graphviz to be installed
|
||||
|
||||
set -e +x
|
||||
|
||||
mkdir -p .pkg-deps
|
||||
|
||||
cd .pkg-deps
|
||||
|
||||
# remove the closing line
|
||||
ghc-pkg dot --global | sed '$d' > pkgs.dot
|
||||
|
||||
# check for binary deps too
|
||||
# (exclude binlib for now since covered by libs): cpphs, darcs, hlint, hscolour, xmonad
|
||||
for i in alex cabal-install ghc happy gtk2hs-buildtools haskell-platform xmobar; do
|
||||
PKG_THERE=yes
|
||||
PKG=`rpm -q --qf "%{name}-%{version}" $i` || { PKG_THERE=no ; echo "missing $i" ; }
|
||||
if [ "$PKG_THERE" = "yes" ]; then
|
||||
echo \"$PKG\" >> pkgs.dot
|
||||
case $i in
|
||||
haskell-platform)
|
||||
rpm -q --requires $i | grep -v rpmlib | grep -v ghc | sed -e "s/^/\"$PKG\" -> \"/g" -e "s/ = \(.*\)/-\1\"/" >> pkgs.dot
|
||||
;;
|
||||
*)
|
||||
rpm -q --requires $i | grep ghc6 | sed -e "s/libHS/\"$PKG\" -> \"/g" -e "s/-ghc6.*/\"/" >> pkgs.dot
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
done
|
||||
|
||||
# make sure all libs there
|
||||
rpm -qa --qf "\"%{name}-%{version}\"\n" ghc-\* | egrep -v -- "(ghc-libs|-prof|-devel|-doc|rpm-macros)-" | sed -e s/^\"ghc-/\"/g >> pkgs.dot
|
||||
|
||||
# and add it back
|
||||
echo "}" >> pkgs.dot
|
||||
|
||||
cp -p pkgs.dot pkgs.dot.orig
|
||||
|
||||
# ignore library packages provided by ghc (except ghc-6.12)
|
||||
GHC_PKGS="array base-4 base-3 bin-package-db bytestring Cabal containers directory dph extensible-exceptions filepath ffi ghc-binary ghc-prim haskell98 hpc integer-gmp old-locale old-time pretty process random rts syb template-haskell time unix Win32"
|
||||
for i in $GHC_PKGS; do sed -i -e /$i/d pkgs.dot; done
|
||||
|
||||
which tred &>/dev/null || { echo Please install graphviz ; exit 1 ; }
|
||||
cat pkgs.dot | tred | dot -Nfontsize=8 -Tsvg >pkgs.svg
|
||||
|
||||
if [ -n "$DISPLAY" ]; then
|
||||
xdg-open pkgs.svg
|
||||
else
|
||||
echo open ".pkg-deps/pkgs.svg" to display pkg graph
|
||||
fi
|
4
sources
4
sources
|
@ -1,2 +1,2 @@
|
|||
4c2663c2eff833d7b9f39ef770eefbd6 ghc-6.12.3-src.tar.bz2
|
||||
5c6143040d043f10e6d014cd5fd8ca36 testsuite-6.12.3.tar.bz2
|
||||
f167b0b4538d1a56788f43fcc662b568 ghc-7.0.4-src.tar.bz2
|
||||
1680925a557821d7e3abab368f37fbdc testsuite-7.0.4.tar.bz2
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
#!/bin/sh
|
||||
|
||||
[ $# -ne 1 ] && echo "Usage: $(basename $0) [package]" && exit 1
|
||||
|
||||
set -e -x
|
||||
|
||||
PKG=$1
|
||||
|
||||
cd ~/fedora/haskell/$PKG/master
|
||||
git pull
|
||||
|
||||
cat ~/fedora/haskell/cabal2spec/master/cabal2spec-0.22.4.diff | sed -e "s/@PKG@/$PKG/" | patch -p1
|
||||
|
||||
rpmdev-bumpspec --comment="update to cabal2spec-0.22.4" $PKG.spec
|
||||
|
||||
fedpkg commit -p -m "update to cabal2spec-0.22.4"
|
Loading…
Reference in New Issue