[Pkg-haskell-commits] darcs: ghc: armel, armhf: Force use of llvm-3.4, rather than unversioned lvm, which can have abi changes that break ghc. Closes: #763078
joeyh at debian.org
joeyh at debian.org
Sun Sep 28 18:20:21 UTC 2014
Sun Sep 28 18:19:55 UTC 2014 joeyh at debian.org
* armel,armhf: Force use of llvm-3.4, rather than unversioned lvm, which can have abi changes that break ghc. Closes: #763078
M ./changelog +7
M ./control -2 +2
M ./rules +14
Sun Sep 28 18:19:55 UTC 2014 joeyh at debian.org
* armel,armhf: Force use of llvm-3.4, rather than unversioned lvm, which can have abi changes that break ghc. Closes: #763078
diff -rN -u old-ghc/changelog new-ghc/changelog
--- old-ghc/changelog 2014-09-28 18:20:20.895462245 +0000
+++ new-ghc/changelog 2014-09-28 18:20:20.899462245 +0000
@@ -1,3 +1,10 @@
+ghc (7.6.3-17) unstable; urgency=medium
+
+ * armel,armhf: Force use of llvm-3.4, rather than unversioned lvm,
+ which can have abi changes that break ghc. Closes: #763078
+
+ -- Joey Hess <joeyh at debian.org> Sun, 28 Sep 2014 19:16:16 +0100
+
ghc (7.6.3-16) unstable; urgency=medium
* Also do not conflict with libghc-binary-doc
diff -rN -u old-ghc/control new-ghc/control
--- old-ghc/control 2014-09-28 18:20:20.895462245 +0000
+++ new-ghc/control 2014-09-28 18:20:20.899462245 +0000
@@ -13,7 +13,7 @@
grep-dctrl,
dh-autoreconf,
autotools-dev,
- llvm [armel armhf],
+ llvm-3.4 [armel armhf],
libffi-dev,
pkg-config,
xsltproc,
@@ -33,7 +33,7 @@
Package: ghc
Architecture: any
-Depends: llvm [armel armhf], gcc, libgmp-dev, libffi-dev, libbsd-dev, libc6-dev, ${shlibs:Depends}, ${misc:Depends}
+Depends: llvm-3.4 [armel armhf], gcc, libgmp-dev, libffi-dev, libbsd-dev, libc6-dev, ${shlibs:Depends}, ${misc:Depends}
Provides: haskell-compiler, ${provided-devs}, ${haskell:Provides}, ${ghci}
Replaces: ghc6 (<< 7)
Conflicts: ghc6 (<< 7), ${conflicting-devs}
diff -rN -u old-ghc/rules new-ghc/rules
--- old-ghc/rules 2014-09-28 18:20:20.895462245 +0000
+++ new-ghc/rules 2014-09-28 18:20:20.915462243 +0000
@@ -30,6 +30,13 @@
# confflags += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
#endif
+ifneq (,$(findstring $(DEB_HOST_ARCH), armel armhf))
+# Force use of a specific llvm package, the same version that ghc
+# depends (and build-depends) on.
+LLVM_PATH=/usr/lib/llvm-3.4/bin
+export PATH:=$(LLVM_PATH):$(PATH)
+endif
+
ProjectVersion=$(shell cat VERSION)
GHC=$(firstword $(shell bash -c "type -p ghc"))
@@ -232,6 +239,13 @@
sed -i "s/exec /unset LC_ALL\nexport LC_CTYPE=en_US\nexec /" debian/tmp/usr/lib/ghc/bin/ghc-$(ProjectVersion)
endif
+ifneq (,$(findstring $(DEB_HOST_ARCH), armel armhf))
+ # Ensure that the same llvm used to build ghc is used at runtime.
+ sed -i "s,exec ,PATH=\"$(LLVM_PATH):\$$PATH\"\nexport PATH\nexec ," debian/tmp/usr/lib/ghc/bin/ghc-$(ProjectVersion) debian/tmp/usr/lib/ghc/bin
+/ghc-pkg-$(ProjectVersion) debian/tmp/usr/lib/ghc/bin/ghci-$(ProjectVersion) debian/tmp/usr/lib/ghc/bin/runghc-$(ProjectVersion)
+debian/tmp/usr/lib/ghc/bin/hsc2hs debian/tmp/usr/lib/ghc/bin/haddock-ghc-$(ProjectVersion)
+endif
+
# manpages
rm -f debian/*.1
echo ".so man1/ghc.1" > debian/ghc-$(ProjectVersion).1
More information about the Pkg-haskell-commits
mailing list