summaryrefslogtreecommitdiff
path: root/pcr/sword
diff options
context:
space:
mode:
Diffstat (limited to 'pcr/sword')
-rw-r--r--pcr/sword/PKGBUILD68
-rw-r--r--pcr/sword/curl.patch22
-rw-r--r--pcr/sword/multimap.patch39
3 files changed, 129 insertions, 0 deletions
diff --git a/pcr/sword/PKGBUILD b/pcr/sword/PKGBUILD
new file mode 100644
index 000000000..78ab4e646
--- /dev/null
+++ b/pcr/sword/PKGBUILD
@@ -0,0 +1,68 @@
+# Maintainer:
+# Contributor: Alexander Rødseth
+# Contributor: Andrea Scarpino
+# Contributor: Stefan Husmann <stefan-husmann@t-online.de>
+# Contributor: TripleE <eric1548@yahoo.com>
+# Contributor: Dominic Tubach
+
+pkgname=sword
+pkgver=1.6.2
+pkgrel=9
+pkgdesc="Library for Bible study programs"
+arch=('x86_64' 'i686')
+url="http://www.crosswire.org/sword/"
+license=('GPL')
+depends=('curl' 'clucene' 'swig')
+makedepends=('cmake')
+backup=('etc/sword.conf')
+source=("http://www.crosswire.org/ftpmirror/pub/$pkgname/source/v1.6/$pkgname-$pkgver.tar.gz"
+ "curl.patch"
+ "multimap.patch")
+sha256sums=('af76c7d54135c444b09eeaafb49229ef5201a4e1d44539d9341dceaeb60a87b9'
+ '3c2676b6dc1d56b08b2532f46af32c54e91ea71ed92a5d7a30ee29ed7ff09124'
+ 'ddcde54fbd9b29585c03565bff7891622cb2cc0a6381047d5f566987a7cb1b8c')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ patch -p1 -i ../curl.patch
+ patch -p1 -i ../multimap.patch
+
+ [[ -d ../build ]] || mkdir ../build
+ cd ../build
+
+ CXXFLAGS=-fpermissive cmake "../$pkgname-$pkgver" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DSWORD_GLOBAL_CONF_DIR=/etc
+ make
+}
+
+package() {
+ cd "$srcdir/build"
+
+ make DESTDIR="$pkgdir" install
+
+ install -d "$pkgdir/usr/lib/sword"
+ mv "$pkgdir"/usr/lib/${pkgver}_icu_* \
+ "$pkgdir/usr/lib/sword/"
+
+ cd "$srcdir/$pkgname-$pkgver/locales.d/"
+ for file in *.conf; do
+ install -Dm644 "$file" \
+ "$pkgdir/usr/share/sword/locales.d/$file"
+ done
+
+ cd ../include
+ install -d "$pkgdir/usr/include/sword"
+ install -Dm644 canon_{catholic{,2},synodalp}.h \
+ "$pkgdir/usr/include/sword"
+
+ cd ../samples
+ install -Dm644 mods.d/globals.conf \
+ "$pkgdir/usr/share/sword/mods.d/globals.conf"
+ install -Dm644 recommended/sword.conf \
+ "$pkgdir/etc/sword.conf"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/pcr/sword/curl.patch b/pcr/sword/curl.patch
new file mode 100644
index 000000000..63fd4433c
--- /dev/null
+++ b/pcr/sword/curl.patch
@@ -0,0 +1,22 @@
+diff -Naur sword-1.6.2.orig/src/mgr/curlftpt.cpp sword-1.6.2.new/src/mgr/curlftpt.cpp
+--- sword-1.6.2.orig/src/mgr/curlftpt.cpp 2011-07-27 00:41:40.000000000 +0200
++++ sword-1.6.2.new/src/mgr/curlftpt.cpp 2011-07-27 00:42:05.000000000 +0200
+@@ -26,7 +26,6 @@
+ #include <fcntl.h>
+
+ #include <curl/curl.h>
+-#include <curl/types.h>
+ #include <curl/easy.h>
+
+ #include <swlog.h>
+diff -Naur sword-1.6.2.orig/src/mgr/curlhttpt.cpp sword-1.6.2.new/src/mgr/curlhttpt.cpp
+--- sword-1.6.2.orig/src/mgr/curlhttpt.cpp 2011-07-27 00:41:40.000000000 +0200
++++ sword-1.6.2.new/src/mgr/curlhttpt.cpp 2011-07-27 00:42:45.000000000 +0200
+@@ -25,7 +25,6 @@
+ #include <cctype>
+
+ #include <curl/curl.h>
+-#include <curl/types.h>
+ #include <curl/easy.h>
+
+ #include <swlog.h>
diff --git a/pcr/sword/multimap.patch b/pcr/sword/multimap.patch
new file mode 100644
index 000000000..7957ab2d8
--- /dev/null
+++ b/pcr/sword/multimap.patch
@@ -0,0 +1,39 @@
+--- sword-1.6.2/include/multimapwdef.h 2004-05-04 23:01:39.000000000 +0200
++++ /usr/include/sword/multimapwdef.h 2012-06-02 13:37:47.816457345 +0200
+@@ -7,26 +7,26 @@
+
+ // multmap that still lets you use [] to reference FIRST
+ // entry of a key if multiples exist
+-template <class Key, class T, class Compare>
+-class multimapwithdefault : public std::multimap<Key, T, Compare> {
++template < class Key, class T, class Compare >
++class multimapwithdefault : public std::multimap< Key, T, Compare > {
+ public:
+- typedef std::pair<const Key, T> value_type;
++ typedef std::pair< const Key, T > value_type;
+ T& getWithDefault(const Key& k, const T& defaultValue) {
+- if (find(k) == this->end()) {
+- insert(value_type(k, defaultValue));
++ if (this->find(k) == this->end()) {
++ this->insert(value_type(k, defaultValue));
+ }
+ return (*(find(k))).second;
+ }
+
+ T& operator[](const Key& k) {
+- if (find(k) == this->end()) {
+- insert(value_type(k, T()));
++ if (this->find(k) == this->end()) {
++ this->insert(value_type(k, T()));
+ }
+- return (*(find(k))).second;
++ return (*(this->find(k))).second;
+ }
+ bool has(const Key& k, const T &val) const {
+- typename std::multimap<Key, T, Compare>::const_iterator start = lower_bound(k);
+- typename std::multimap<Key, T, Compare>::const_iterator end = upper_bound(k);
++ typename std::multimap< Key, T, Compare >::const_iterator start = this->lower_bound(k);
++ typename std::multimap< Key, T, Compare >::const_iterator end = this->upper_bound(k);
+ for (; start!=end; start++) {
+ if (start->second == val)
+ return true;