aspell-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[aspell-devel] MSYS patch


From: Kevin Tew
Subject: [aspell-devel] MSYS patch
Date: Wed, 02 Feb 2005 14:25:26 -0700
User-agent: Debian Thunderbird 1.0 (X11/20050116)

The Makefile.am diff you may have issue with, MSYS's automake doesn't seem to preserve the \ at the end of lines when appended to libaspell_la_SOURCES inside a AM conditional note that modules/filter/genconv.cpp gets appended twice so I removed it from my long single line append
I don't think these changes would hurt.

get_module_handle assumes static lib and returns 0
GetModuleHandle will return the handle to a dll if it is loaded ( dynameic link ) or NULL if the dll is not found ( static link )
NULL = reinterpret_cast<HMODULE>0
This is actually cleaner in my opinion.
I also include settings.h before #IF WIN32PORT
because the configure.ac change I made adds WIN32PORT to settings.h for msys

I couple of things I'm not sure how to do:
1) -lole32 needs to be added to the ASPELL_SOURCE_ROOT/libtool file on the postdeps line ( grep shell32 libtool find this line )
libtool is a generated file and I'm not sure how to modify it
I guess I could add $(OLE32) to aspell_LDADD and have configure setup the OLE32 var 2) -Wl,--enable-runtime-pseudo-reloc needs to be appended to the CXXLINK for msys

I curious to get some feedback

Kevin



diff -ur aspell/Makefile.am aspell-work/Makefile.am
--- aspell/Makefile.am Thu Jan 27 11:17:53 2005
+++ aspell-work/Makefile.am Wed Feb  2 13:40:58 2005
@@ -150,7 +150,8 @@
#   since it is used by other filters.  The actual genconv filter
#   is just a small wrapper.

-libaspell_la_SOURCES += modules/filter/url.cpp  \
+libaspell_la_SOURCES += \
+                        modules/filter/url.cpp  \
                        modules/filter/genconv.cpp
static_optfiles = modules/filter/url-filter.info\
                  modules/filter/genconv-filter.info
@@ -204,14 +205,7 @@
### Add your filter sources here,
### starting with file containing filter class definition followed by
### file containing filter member implementation.
-libaspell_la_SOURCES +=\
-  modules/filter/email.cpp\
-  modules/filter/tex.cpp\
-  modules/filter/sgml.cpp\
-  modules/filter/context.cpp\
-  modules/filter/nroff.cpp\
-  modules/filter/texinfo.cpp\
-  modules/filter/genconv.cpp
+libaspell_la_SOURCES += modules/filter/email.cpp modules/filter/tex.cpp modules/filter/sgml.cpp modules/filter/context.cpp modules/filter/nroff.cpp Modules/filter/texinfo.cpp

else # not COMPILE_IN_FILTERS

diff -ur aspell/common/config.cpp aspell-work/common/config.cpp
--- aspell/common/config.cpp Mon Dec 27 20:42:23 2004
+++ aspell-work/common/config.cpp Wed Feb  2 13:51:38 2005
@@ -9,12 +9,12 @@
#include <string.h>
#include <stdlib.h>
#include <assert.h>
+#include "settings.h"
#ifdef WIN32PORT
#include <windows.h>// GetModuleFilename
#include <shlobj.h> // SHGetSpecialFolderLocation
extern void * get_module_handle();
#endif
-#include "settings.h"
#include "dirs.h"

#ifdef USE_LOCALE
@@ -618,7 +618,7 @@
      else if (strcmp(i, "prefix") == 0) {

        char * buff = new char [MAX_PATH];
-        HMODULE hand = reinterpret_cast<HMODULE> (get_module_handle());
+        HMODULE hand = GetModuleHandle("libaspell-15.dll");
        if (GetModuleFileName(hand, buff, MAX_PATH)) {
          //convert all \ chars to /
          for (char *ptr = buff; *ptr; ++ptr)
diff -ur aspell/configure.ac aspell-work/configure.ac
--- aspell/configure.ac Sat Jan  1 18:12:26 2005
+++ aspell-work/configure.ac Wed Feb  2 13:48:15 2005
@@ -146,6 +146,12 @@
AC_DEFINE(ENABLE_WIN32_RELOCATABLE, 1, [Defined if win32 relocation should be used])
fi

+case $host in
+  *-*-mingw32* | *-*-windows*)
+    AC_DEFINE(WIN32PORT, 1, [Defined if host platform is WIN32])
+  ;;
+esac
+
# DL stuff
AC_CHECK_HEADERS(dlfcn.h)
AC_CHECK_LIB(dl, dlopen)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]