summaryrefslogtreecommitdiff
path: root/community-testing/haskell-gtk
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-06-13 00:01:51 +0000
committerroot <root@rshg054.dnsready.net>2012-06-13 00:01:51 +0000
commitf46e734fbcd0b4cbae2cff1a017b95e4e8e02d53 (patch)
tree155102fee24f637e46976eb759175c3c2fbc1f40 /community-testing/haskell-gtk
parentfd4cd23b679e620a51c42e87a0655d55704fdba8 (diff)
Wed Jun 13 00:01:51 UTC 2012
Diffstat (limited to 'community-testing/haskell-gtk')
-rw-r--r--community-testing/haskell-gtk/PKGBUILD51
-rw-r--r--community-testing/haskell-gtk/gtk-gthread.h-include.patch15
-rw-r--r--community-testing/haskell-gtk/gtk2hs-gtk.install18
3 files changed, 84 insertions, 0 deletions
diff --git a/community-testing/haskell-gtk/PKGBUILD b/community-testing/haskell-gtk/PKGBUILD
new file mode 100644
index 000000000..ae7296f86
--- /dev/null
+++ b/community-testing/haskell-gtk/PKGBUILD
@@ -0,0 +1,51 @@
+# $Id: PKGBUILD 72302 2012-06-11 17:25:22Z tdziedzic $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+
+pkgname=haskell-gtk
+pkgver=0.12.3
+pkgrel=2
+pkgdesc="Binding to the gtk library for Gtk2Hs."
+url="http://hackage.haskell.org/package/gtk"
+license=('LGPL2.1')
+arch=('i686' 'x86_64')
+depends=('ghc' 'gtk2' "haskell-pango=0.12.3-2" 'haskell-mtl=2.1.1-1')
+makedepends=("gtk2hs-buildtools")
+provides=('gtk2hs-gtk')
+replaces=('gtk2hs-gtk')
+conflicts=('gtk2hs-gtk')
+options=('strip')
+install=gtk2hs-gtk.install
+source=(http://hackage.haskell.org/packages/archive/gtk/$pkgver/gtk-$pkgver.tar.gz
+ 'gtk-gthread.h-include.patch')
+md5sums=('65a65b5cc1e1db0fbf722779a7044ded'
+ '5277990f8ca28d2b12e77dac97c10354')
+
+build() {
+ cd ${srcdir}/gtk-${pkgver}
+
+ # fix compile error with latest glib2 >= 2.32
+ # http://hackage.haskell.org/trac/gtk2hs/ticket/1253
+ # got the patch from fedora
+ patch -Np1 -i ${srcdir}/gtk-gthread.h-include.patch
+
+ runhaskell Setup configure -O -p --enable-split-objs --enable-shared \
+ --prefix=/usr --docdir=/usr/share/doc/haskell-gtk \
+ --libsubdir=\$compiler/site-local/\$pkgid
+ runhaskell Setup build
+ runhaskell Setup haddock
+ runhaskell Setup register --gen-script
+ runhaskell Setup unregister --gen-script
+ sed -i -r -e "s|ghc-pkg.*unregister[^ ]* |&'--force' |" unregister.sh
+}
+
+package() {
+ #_ghcver=`pacman -Q ghc | cut -f2 -d\ | cut -f1 -d-`
+ #depends=("ghc=${_ghcver}" 'gtk2' "haskell-pango=$pkgver" 'haskell-mtl=2.0.1.0')
+
+ cd ${srcdir}/gtk-${pkgver}
+ install -D -m744 register.sh ${pkgdir}/usr/share/haskell/gtk2hs-gtk/register.sh
+ install -m744 unregister.sh ${pkgdir}/usr/share/haskell/gtk2hs-gtk/unregister.sh
+ install -d -m755 ${pkgdir}/usr/share/doc/ghc/html/libraries
+ ln -s /usr/share/doc/haskell-gtk/html ${pkgdir}/usr/share/doc/ghc/html/libraries/gtk2hs-gtk
+ runhaskell Setup copy --destdir=${pkgdir}
+}
diff --git a/community-testing/haskell-gtk/gtk-gthread.h-include.patch b/community-testing/haskell-gtk/gtk-gthread.h-include.patch
new file mode 100644
index 000000000..fc600d6be
--- /dev/null
+++ b/community-testing/haskell-gtk/gtk-gthread.h-include.patch
@@ -0,0 +1,15 @@
+diff -u gtk-0.12.2/Graphics/UI/Gtk/General/hsgthread.c\~ gtk-0.12.2/Graphics/UI/Gtk/General/hsgthread.c
+--- gtk-0.12.2/Graphics/UI/Gtk/General/hsgthread.c~ 2011-11-14 07:15:41.000000000 +0900
++++ gtk-0.12.2/Graphics/UI/Gtk/General/hsgthread.c 2012-01-08 14:58:45.849209318 +0900
+@@ -26,7 +26,8 @@
+ */
+
+ #include <glib.h>
+-#include <glib/gthread.h>
++/* f17 gives Error "Only <glib.h> can be included directly."
++ #include <glib/gthread.h> */
+ #include <gdk/gdk.h>
+ #include "hsgthread.h"
+
+
+Diff finished. Sun Jan 8 14:58:54 2012
diff --git a/community-testing/haskell-gtk/gtk2hs-gtk.install b/community-testing/haskell-gtk/gtk2hs-gtk.install
new file mode 100644
index 000000000..7ed674b78
--- /dev/null
+++ b/community-testing/haskell-gtk/gtk2hs-gtk.install
@@ -0,0 +1,18 @@
+HS_DIR=usr/share/haskell/gtk2hs-gtk
+post_install() {
+ ${HS_DIR}/register.sh
+ (cd usr/share/doc/ghc/html/libraries; ./gen_contents_index)
+}
+pre_upgrade() {
+ ${HS_DIR}/unregister.sh
+}
+post_upgrade() {
+ ${HS_DIR}/register.sh
+ (cd usr/share/doc/ghc/html/libraries; ./gen_contents_index)
+}
+pre_remove() {
+ ${HS_DIR}/unregister.sh
+}
+post_remove() {
+ (cd usr/share/doc/ghc/html/libraries; ./gen_contents_index)
+}