summaryrefslogtreecommitdiff
path: root/community/stardict
diff options
context:
space:
mode:
Diffstat (limited to 'community/stardict')
-rw-r--r--community/stardict/PKGBUILD80
-rw-r--r--community/stardict/gcc46.patch11
-rw-r--r--community/stardict/glib2.patch36
-rw-r--r--community/stardict/zlib.patch35
4 files changed, 162 insertions, 0 deletions
diff --git a/community/stardict/PKGBUILD b/community/stardict/PKGBUILD
new file mode 100644
index 000000000..f5815f8e0
--- /dev/null
+++ b/community/stardict/PKGBUILD
@@ -0,0 +1,80 @@
+# $Id: PKGBUILD 87021 2013-03-25 19:17:03Z bpiotrowski $
+# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Contributor: Gaetan Bisson <bisson@archlinux.org>
+# Contributor: Aaron Griffin <aaron@archlinux.org>
+# Contributor: Neil Lin <neil@vip.url.com.tw>
+# Contributor: Cravix < dr dot neemous at gmail dot com >
+
+pkgbase=stardict
+pkgname=(stardict stardict-lite)
+pkgver=3.0.4
+pkgrel=3
+arch=('i686' 'x86_64')
+url='http://www.stardict.org/'
+license=('GPL')
+makedepends=('intltool' 'popt' 'gnome-doc-utils' 'gnome-common' 'libmariadbclient' 'enchant' 'gtk2' 'libsigc++' 'libsm' 'espeak' 'libgnome')
+options=('!libtool' '!emptydirs')
+source=("http://stardict-3.googlecode.com/files/${pkgbase}-${pkgver}.tar.bz2"
+ 'gcc46.patch'
+ 'glib2.patch'
+ 'zlib.patch')
+
+build() {
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+
+ patch -p1 -i ../gcc46.patch
+ patch -p1 -i ../glib2.patch
+ patch -p1 -i ../zlib.patch
+
+ cp -r "${srcdir}/${pkgbase}-${pkgver}" "${srcdir}/${pkgbase}-${pkgver}-lite"
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ ./configure \
+ PKG_CONFIG=/usr/bin/pkg-config \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --disable-schemas-install \
+ --disable-gucharmap \
+ --disable-festival \
+ --disable-updateinfo
+ make
+
+ cd "${srcdir}/${pkgbase}-${pkgver}-lite"
+ LDFLAGS="$LDFLAGS -lgmodule-2.0"
+ ./configure \
+ PKG_CONFIG=/usr/bin/pkg-config \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --disable-gnome-support \
+ --disable-schemas-install \
+ --disable-espeak \
+ --disable-gucharmap \
+ --disable-festival \
+ --disable-updateinfo
+ make
+}
+
+package_stardict() {
+ pkgdesc='International dictionary software'
+ depends=('enchant' 'gtk2' 'libsigc++' 'libsm' 'espeak' 'libgnome')
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
+
+package_stardict-lite() {
+ pkgdesc='International dictionary software - lite version without gnome and espeak support'
+ depends=('enchant' 'gtk2' 'libsigc++' 'libsm')
+ provides=(stardict)
+ conflicts=(stardict)
+
+ cd "${srcdir}/${pkgbase}-${pkgver}-lite"
+ make DESTDIR="${pkgdir}" install
+}
+
+md5sums=('0a9abf1936c43a3ee255802c75267f1a'
+ '52ff47441c503de07add4b7688510bc5'
+ 'b2f216897c9053c7e4666c3d78705cf1'
+ 'ee26dce70fc83b3ce86e5100fede7fad')
diff --git a/community/stardict/gcc46.patch b/community/stardict/gcc46.patch
new file mode 100644
index 000000000..944b9635c
--- /dev/null
+++ b/community/stardict/gcc46.patch
@@ -0,0 +1,11 @@
+diff -aur old/dict/stardict-plugins/stardict-wordnet-plugin/utils.h new/dict/stardict-plugins/stardict-wordnet-plugin/utils.h
+--- old/dict/stardict-plugins/stardict-wordnet-plugin/utils.h 2011-07-18 06:58:58.519404744 -0700
++++ new/dict/stardict-plugins/stardict-wordnet-plugin/utils.h 2011-07-18 07:01:10.739734313 -0700
+@@ -26,6 +26,7 @@
+ #ifndef __TYPES_H__
+ #define __TYPES_H__
+
++#include <cstddef>
+ #include <math.h>
+
+ typedef float single;
diff --git a/community/stardict/glib2.patch b/community/stardict/glib2.patch
new file mode 100644
index 000000000..bd0f6bac8
--- /dev/null
+++ b/community/stardict/glib2.patch
@@ -0,0 +1,36 @@
+diff -Naur old/dict/configure.ac new/dict/configure.ac
+--- old/dict/configure.ac 2011-07-03 16:58:40.000000000 +1000
++++ new/dict/configure.ac 2012-07-12 22:31:52.875176842 +1000
+@@ -266,6 +266,9 @@
+ fi
+ AC_SUBST(WIKI_PARSEDATA_PLUGIN_DIR)
+
++GMODULE2_LIBS=`pkg-config --libs gmodule-2.0`
++AC_SUBST([GMODULE2_LIBS])
++
+ dnl ================================================================
+ dnl main program checks.
+ dnl ================================================================
+diff -Naur old/dict/src/Makefile.am new/dict/src/Makefile.am
+--- old/dict/src/Makefile.am 2011-07-03 16:58:40.000000000 +1000
++++ new/dict/src/Makefile.am 2012-07-12 22:29:53.714870692 +1000
+@@ -33,7 +33,7 @@
+ stardict_DEPENDENCIES = lib/libstardict.la $(LOCAL_SIGCPP_LIBFILE)
+ stardict_LDFLAGS =
+ ## place libstardict.la before any system library, otherwise build with --as-needed linker option may fail
+-stardict_LDADD = lib/libstardict.la $(STARDICT_LIBS) $(LOCAL_SIGCPP_LIBFILE)
++stardict_LDADD = lib/libstardict.la $(STARDICT_LIBS) $(LOCAL_SIGCPP_LIBFILE) $(GMODULE2_LIBS)
+
+ if !GNOME_SUPPORT
+ if MAEMO_SUPPORT
+diff -Naur old/dict/src/tomboykeybinder.h new/dict/src/tomboykeybinder.h
+--- old/dict/src/tomboykeybinder.h 2011-07-03 16:58:40.000000000 +1000
++++ new/dict/src/tomboykeybinder.h 2012-07-12 22:28:04.337920391 +1000
+@@ -21,7 +21,6 @@
+ #ifndef __TOMBOY_KEY_BINDER_H__
+ #define __TOMBOY_KEY_BINDER_H__
+
+-#include <glib.h>
+
+ G_BEGIN_DECLS
+
diff --git a/community/stardict/zlib.patch b/community/stardict/zlib.patch
new file mode 100644
index 000000000..eb5a9a12a
--- /dev/null
+++ b/community/stardict/zlib.patch
@@ -0,0 +1,35 @@
+diff -Naur old/lib/src/libcommon.cpp new/lib/src/libcommon.cpp
+--- old/lib/src/libcommon.cpp 2012-07-12 11:33:30.343333334 +0000
++++ new/lib/src/libcommon.cpp 2012-07-12 11:34:05.006568754 +0000
+@@ -614,7 +614,7 @@
+ return EXIT_FAILURE;
+ }
+ while(true) {
+- len = gzread(get_impl(in), buf, buffer_size);
++ len = gzread((gzFile)get_impl(in), buf, buffer_size);
+ if(len < 0) {
+ g_critical(read_file_err, arch_file_name, "");
+ return EXIT_FAILURE;
+@@ -871,3 +871,8 @@
+ return res;
+ }
+ }
++
++int gzclose_compat(void * file)
++{
++ return gzclose ((gzFile)file);
++}
+diff -Naur old/lib/src/libcommon.h new/lib/src/libcommon.h
+--- old/lib/src/libcommon.h 2012-07-12 11:33:30.343333334 +0000
++++ new/lib/src/libcommon.h 2012-07-12 11:34:05.006568754 +0000
+@@ -187,8 +187,9 @@
+ typedef ResourceWrapper<FILE, FILE*, int, fclose> File;
+ }
+
++extern int gzclose_compat(void * file);
+ namespace zip {
+-typedef ResourceWrapper<void, void*, int, gzclose> gzFile;
++typedef ResourceWrapper<void, void*, int, gzclose_compat> gzFile;
+ }
+
+ /* Create a new temporary file. Return file name in file name encoding.