PKGBUILDs/extra/xulrunner/100-system-hunspell-corrections.patch
2009-10-09 21:23:22 -05:00

116 lines
3.3 KiB
Diff

--- ./extensions/spellcheck/hunspell/src/mozHunspell.cpp.orig 2008-02-15 19:21:21.000000000 +0000
+++ ./extensions/spellcheck/hunspell/src/mozHunspell.cpp 2008-02-15 19:23:20.000000000 +0000
@@ -63,6 +63,9 @@
#include "nsISimpleEnumerator.h"
#include "nsIDirectoryEnumerator.h"
#include "nsIFile.h"
+#ifdef MOZ_NATIVE_HUNSPELL
+#include "nsILocalFile.h"
+#endif
#include "nsDirectoryServiceUtils.h"
#include "nsDirectoryServiceDefs.h"
#include "mozISpellI18NManager.h"
@@ -307,7 +310,16 @@
return;
nsCOMPtr<nsIFile> dictDir;
- rv = dirSvc->Get(DICTIONARY_SEARCH_DIRECTORY,
+ #ifdef MOZ_NATIVE_HUNSPELL
+ nsCOMPtr<nsILocalFile> localFile;
+ rv = NS_NewNativeLocalFile(nsDependentCString("/usr/share/myspell"),PR_TRUE, getter_AddRefs(localFile));
+ if (localFile && NS_SUCCEEDED(rv)) {
+ localFile->QueryInterface(NS_GET_IID(nsIFile), getter_AddRefs(dictDir));
+ LoadDictionariesFromDir(dictDir);
+ }
+ else {
+ #endif
+ rv = dirSvc->Get(DICTIONARY_SEARCH_DIRECTORY,
NS_GET_IID(nsIFile), getter_AddRefs(dictDir));
if (NS_SUCCEEDED(rv)) {
LoadDictionariesFromDir(dictDir);
@@ -332,6 +344,9 @@
LoadDictionariesFromDir(appDir);
}
}
+#ifdef MOZ_NATIVE_HUNSPELL
+ }
+#endif
nsCOMPtr<nsISimpleEnumerator> dictDirs;
rv = dirSvc->Get(DICTIONARY_SEARCH_DIRECTORY_LIST,
--- ./extensions/spellcheck/src/Makefile.in.orig 2008-02-15 19:25:58.000000000 +0000
+++ ./extensions/spellcheck/src/Makefile.in 2008-02-15 19:28:36.000000000 +0000
@@ -63,9 +63,16 @@
txtsvc \
uconv \
unicharutil \
+ xulapp \
$(NULL)
-CPPSRCS = \
+ifdef MOZ_NATIVE_HUNSPELL
+CPPSRCS += mozHunspell.cpp
+ifdef MOZ_XUL_APP
+CPPSRCS += mozHunspellDirProvider.cpp
+endif
+endif
+CPPSRCS += \
mozSpellCheckerFactory.cpp \
mozSpellChecker.cpp \
mozPersonalDictionary.cpp \
@@ -80,8 +87,14 @@
SHARED_LIBRARY_LIBS += ../osxspell/src/$(LIB_PREFIX)osxspell_s.$(LIB_SUFFIX)
LOCAL_INCLUDES += -I$(srcdir)/../osxspell/src
else
+ifndef MOZ_NATIVE_HUNSPELL
SHARED_LIBRARY_LIBS += ../hunspell/src/$(LIB_PREFIX)hunspell_s.$(LIB_SUFFIX)
LOCAL_INCLUDES += -I$(srcdir)/../hunspell/src
+else
+LOCAL_INCLUDES += $(MOZ_HUNSPELL_CFLAGS) \
+ -DMOZ_NATIVE_HUNSPELL \
+ $(NULL)
+endif
endif
EXTRA_DSO_LDOPTS = \
@@ -96,3 +112,18 @@
LOCAL_INCLUDES += \
-I$(topsrcdir)/xpcom/io \
$(NULL)
+
+ifdef MOZ_NATIVE_HUNSPELL
+export:: $(srcdir)/../hunspell/src/mozHunspell.cpp
+ $(INSTALL) $(srcdir)/../hunspell/src/mozHunspell.* .
+GARBAGE += mozHunspell.$(OBJ_SUFFIX) mozHunspell.cpp
+clean::
+ rm -f mozHunspell.*
+ifdef MOZ_XUL_APP
+export:: $(srcdir)/../hunspell/src/mozHunspellDirProvider.cpp
+ $(INSTALL) $(srcdir)/../hunspell/src/mozHunspellDirProvider.* .
+GARBAGE += mozHunspellDirProvider.$(OBJ_SUFFIX) mozHunspellDirProvider.cpp
+clean::
+ rm -f mozHunspellDirProvider.*
+endif
+endif
--- ./extensions/spellcheck/Makefile.in.orig 2008-02-15 19:23:39.000000000 +0000
+++ ./extensions/spellcheck/Makefile.in 2008-02-15 19:24:34.000000000 +0000
@@ -42,13 +42,19 @@
include $(DEPTH)/config/autoconf.mk
MODULE = spellchecker
-DIRS = idl locales
+ifndef MOZ_NATIVE_HUNSPELL
+DIRS = idl locales
+else
+DIRS = idl
+endif
ifeq (camino,$(MOZ_BUILD_APP))
DIRS += osxspell
else
+ifndef MOZ_NATIVE_HUNSPELL
DIRS += hunspell
endif
+endif
DIRS += src