summaryrefslogtreecommitdiff
path: root/academic/sword
diff options
context:
space:
mode:
Diffstat (limited to 'academic/sword')
-rw-r--r--academic/sword/sword-1.6.2-clucene2.patch125
-rw-r--r--academic/sword/sword-curl-7.20.0-fix.patch10
-rw-r--r--academic/sword/sword-gcc47-fix.patch22
-rw-r--r--academic/sword/sword-no-curl-types.patch22
-rw-r--r--academic/sword/sword.SlackBuild7
5 files changed, 185 insertions, 1 deletions
diff --git a/academic/sword/sword-1.6.2-clucene2.patch b/academic/sword/sword-1.6.2-clucene2.patch
new file mode 100644
index 0000000000..f887f22147
--- /dev/null
+++ b/academic/sword/sword-1.6.2-clucene2.patch
@@ -0,0 +1,125 @@
+diff -up sword-1.6.2/configure.clucene2 sword-1.6.2/configure
+--- sword-1.6.2/configure.clucene2 2010-10-22 23:14:28.000000000 +0200
++++ sword-1.6.2/configure 2011-10-02 21:27:35.420704861 +0200
+@@ -16348,9 +16348,9 @@ for flag in $with_clucene; do
+ if test -z "$clucene_set_failed"; then
+ if test -e "$flag/include/CLucene.h"; then
+ # 64-bit checks first
+- if test -e "$flag/lib64/libclucene.la" || test -e "$flag/lib64/libclucene.so"; then
++ if test -e "$flag/lib64/libclucene-core.la" || test -e "$flag/lib64/libclucene-core.so"; then
+ clucene_set_failed=$flag
+- CLUCENE_LIBS="-L$flag/lib64 -lclucene"
++ CLUCENE_LIBS="-L$flag/lib64 -lclucene-core"
+ if test -e "$flag/include/CLucene/clucene-config.h"; then
+ CLUCENE_CXXFLAGS="-I$flag/include"
+ else
+@@ -16358,9 +16358,9 @@ for flag in $with_clucene; do
+ fi
+ else
+ # 32-bit checks
+- if test -e "$flag/lib/libclucene.la" || test -e "$flag/lib/libclucene.so"; then
++ if test -e "$flag/lib/libclucene-core.la" || test -e "$flag/lib/libclucene-core.so"; then
+ clucene_set_failed=$flag
+- CLUCENE_LIBS="-L$flag/lib -lclucene"
++ CLUCENE_LIBS="-L$flag/lib -lclucene-core"
+ if test -e "$flag/include/CLucene/clucene-config.h"; then
+ CLUCENE_CXXFLAGS="-I$flag/include"
+ else
+diff -up sword-1.6.2/m4/acx_clucene.m4.clucene2 sword-1.6.2/m4/acx_clucene.m4
+--- sword-1.6.2/m4/acx_clucene.m4.clucene2 2007-05-19 23:28:23.000000000 +0200
++++ sword-1.6.2/m4/acx_clucene.m4 2011-10-02 21:27:35.420704861 +0200
+@@ -29,9 +29,9 @@ for flag in $with_clucene; do
+ if test -z "$clucene_set_failed"; then
+ if test -e "$flag/include/CLucene.h"; then
+ # 64-bit checks first
+- if test -e "$flag/lib64/libclucene.la" || test -e "$flag/lib64/libclucene.so"; then
++ if test -e "$flag/lib64/libclucene-core.la" || test -e "$flag/lib64/libclucene-core.so"; then
+ clucene_set_failed=$flag
+- CLUCENE_LIBS="-L$flag/lib64 -lclucene"
++ CLUCENE_LIBS="-L$flag/lib64 -lclucene-core"
+ if test -e "$flag/include/CLucene/clucene-config.h"; then
+ CLUCENE_CXXFLAGS="-I$flag/include"
+ else
+@@ -39,9 +39,9 @@ for flag in $with_clucene; do
+ fi
+ else
+ # 32-bit checks
+- if test -e "$flag/lib/libclucene.la" || test -e "$flag/lib/libclucene.so"; then
++ if test -e "$flag/lib/libclucene-core.la" || test -e "$flag/lib/libclucene-core.so"; then
+ clucene_set_failed=$flag
+- CLUCENE_LIBS="-L$flag/lib -lclucene"
++ CLUCENE_LIBS="-L$flag/lib -lclucene-core"
+ if test -e "$flag/include/CLucene/clucene-config.h"; then
+ CLUCENE_CXXFLAGS="-I$flag/include"
+ else
+diff -up sword-1.6.2/src/modules/swmodule.cpp.clucene2 sword-1.6.2/src/modules/swmodule.cpp
+--- sword-1.6.2/src/modules/swmodule.cpp.clucene2 2011-10-02 21:32:40.825795281 +0200
++++ sword-1.6.2/src/modules/swmodule.cpp 2011-10-02 22:02:42.441506634 +0200
+@@ -40,7 +40,7 @@
+
+ #ifdef USELUCENE
+ #include <CLucene.h>
+-#include <CLucene/CLBackwards.h>
++//#include <CLucene/CLBackwards.h>
+
+ //Lucence includes
+ //#include "CLucene.h"
+@@ -59,6 +59,9 @@ using namespace lucene::search;
+
+ using std::vector;
+
++extern size_t lucene_utf8towcs(wchar_t *, const char *, size_t maxslen);
++extern size_t lucene_wcstoutf8 (char *, const wchar_t *, size_t maxslen);
++
+ SWORD_NAMESPACE_START
+
+ SWDisplay SWModule::rawdisp;
+@@ -1144,7 +1147,7 @@ signed char SWModule::createSearchFramew
+
+ lucene_utf8towcs(wcharBuffer, keyText, MAX_CONV_SIZE); //keyText must be utf8
+ // doc->add( *(new Field("key", wcharBuffer, Field::STORE_YES | Field::INDEX_TOKENIZED)));
+- doc->add( *Field::Text(_T("key"), wcharBuffer ) );
++ doc->add(*_CLNEW Field(_T("key"), wcharBuffer, Field::STORE_YES | Field::INDEX_TOKENIZED) );
+
+
+ if (includeKeyInSearch) {
+@@ -1155,11 +1158,11 @@ signed char SWModule::createSearchFramew
+ }
+
+ lucene_utf8towcs(wcharBuffer, content, MAX_CONV_SIZE); //content must be utf8
+- doc->add( *Field::UnStored(_T("content"), wcharBuffer) );
++ doc->add(*_CLNEW Field(_T("content"), wcharBuffer, Field::STORE_NO | Field::INDEX_TOKENIZED));
+
+ if (strong.length() > 0) {
+ lucene_utf8towcs(wcharBuffer, strong, MAX_CONV_SIZE);
+- doc->add( *Field::UnStored(_T("lemma"), wcharBuffer) );
++ doc->add(*_CLNEW Field(_T("lemma"), wcharBuffer, Field::STORE_NO | Field::INDEX_TOKENIZED) );
+ //printf("setting fields (%s).\ncontent: %s\nlemma: %s\n", (const char *)*key, content, strong.c_str());
+ }
+
+@@ -1280,12 +1283,12 @@ signed char SWModule::createSearchFramew
+
+ //printf("proxBuf after (%s).\nprox: %s\nproxLem: %s\n", (const char *)*key, proxBuf.c_str(), proxLem.c_str());
+
+- doc->add( *Field::UnStored(_T("prox"), wcharBuffer) );
++ doc->add(*_CLNEW Field(_T("prox"), wcharBuffer, Field::STORE_NO | Field::INDEX_TOKENIZED) );
+ good = true;
+ }
+ if (proxLem.length() > 0) {
+ lucene_utf8towcs(wcharBuffer, proxLem, MAX_CONV_SIZE); //keyText must be utf8
+- doc->add( *Field::UnStored(_T("proxlem"), wcharBuffer) );
++ doc->add(*_CLNEW Field(_T("proxlem"), wcharBuffer, Field::STORE_NO | Field::INDEX_TOKENIZED) );
+ good = true;
+ }
+ if (good) {
+@@ -1315,7 +1318,9 @@ signed char SWModule::createSearchFramew
+ fsWriter = new IndexWriter(d, an, true);
+ }
+
+- Directory *dirs[] = { ramDir, 0 };
++ ValueArray<Directory*> dirs(2);
++ dirs[0] = ramDir;
++ dirs[1] = 0;
+ fsWriter->addIndexes(dirs);
+ fsWriter->close();
+
diff --git a/academic/sword/sword-curl-7.20.0-fix.patch b/academic/sword/sword-curl-7.20.0-fix.patch
new file mode 100644
index 0000000000..c3b7ddc092
--- /dev/null
+++ b/academic/sword/sword-curl-7.20.0-fix.patch
@@ -0,0 +1,10 @@
+--- src/mgr/curlftpt.cpp 2009-12-04 03:54:06.000000000 -0500
++++ src/mgr/curlftpt.cpp.new 2010-03-20 12:41:50.449544991 -0400
+@@ -124,6 +124,7 @@
+
+
+ CURLFTPTransport::~CURLFTPTransport() {
++ curl_easy_setopt(session, CURLOPT_PROGRESSDATA, (void*)NULL);
+ curl_easy_cleanup(session);
+ }
+
diff --git a/academic/sword/sword-gcc47-fix.patch b/academic/sword/sword-gcc47-fix.patch
new file mode 100644
index 0000000000..2509c66983
--- /dev/null
+++ b/academic/sword/sword-gcc47-fix.patch
@@ -0,0 +1,22 @@
+--- include/multimapwdef.h 2004-05-04 17:01:39.000000000 -0400
++++ include/multimapwdef.h.new 2012-02-22 22:05:38.034034838 -0500
+@@ -19,14 +19,14 @@
+ }
+
+ 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;
diff --git a/academic/sword/sword-no-curl-types.patch b/academic/sword/sword-no-curl-types.patch
new file mode 100644
index 0000000000..6cdb6b193b
--- /dev/null
+++ b/academic/sword/sword-no-curl-types.patch
@@ -0,0 +1,22 @@
+diff -ru sword-1.6.2/src/mgr/curlftpt.cpp sword-1.6.2/src/mgr/curlftpt.cpp
+--- sword-1.6.2/src/mgr/curlftpt.cpp 2011-09-09 11:49:31.069556262 +0100
++++ sword-1.6.2/src/mgr/curlftpt.cpp 2011-09-09 11:49:48.127734191 +0100
+@@ -26,7 +26,6 @@
+ #include <fcntl.h>
+
+ #include <curl/curl.h>
+-#include <curl/types.h>
+ #include <curl/easy.h>
+
+ #include <swlog.h>
+diff -ru sword-1.6.2/src/mgr/curlhttpt.cpp sword-1.6.2/src/mgr/curlhttpt.cpp
+--- sword-1.6.2/src/mgr/curlhttpt.cpp 2011-09-09 11:49:31.069556262 +0100
++++ sword-1.6.2/src/mgr/curlhttpt.cpp 2011-09-09 11:49:46.399716165 +0100
+@@ -25,7 +25,6 @@
+ #include <cctype>
+
+ #include <curl/curl.h>
+-#include <curl/types.h>
+ #include <curl/easy.h>
+
+ #include <swlog.h>
diff --git a/academic/sword/sword.SlackBuild b/academic/sword/sword.SlackBuild
index 150c9a5e76..133c912062 100644
--- a/academic/sword/sword.SlackBuild
+++ b/academic/sword/sword.SlackBuild
@@ -24,7 +24,7 @@
PRGNAM=sword
VERSION=1.6.2
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -69,6 +69,11 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+patch -p1 -i $CWD/sword-no-curl-types.patch
+patch -p1 -i $CWD/sword-1.6.2-clucene2.patch
+patch -p0 -i $CWD/sword-gcc47-fix.patch
+patch -p0 -i $CWD/sword-curl-7.20.0-fix.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \