Improved GNU/aspell checking and fixed bug #614490
authorMelvin Hadasht <melvin.hadasht@free.fr>
Fri, 27 Sep 2002 10:59:56 +0000 (10:59 +0000)
committerMelvin Hadasht <melvin.hadasht@free.fr>
Fri, 27 Sep 2002 10:59:56 +0000 (10:59 +0000)
ChangeLog.claws
ac/aspell.m4
configure.in

index 86d2675..8a0c50f 100644 (file)
@@ -1,3 +1,9 @@
+2002-09-27 [melvin]    0.8.3claws29
+
+       * ac/aspell.m4
+               Improved GNU/aspell checking. 
+               Fixed bug #614490
+
 2002-09-27 [paul]      0.8.3claws28
 
        * sync with 0.8.3cvs8
index 68dd85f..d0435b9 100644 (file)
@@ -7,24 +7,24 @@ dnl $Id$
 
 dnl AM_PATH_ASPELL([MINIMUM-VERSION,
 dnl               [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
-dnl Test for aspell, and define ASPELL_CFLAGS and ASPELL_LIBS
+dnl Test for aspell, and define ASPELL_CFLAGS, ASPELL_LIBS and ASPELL_PATH
 dnl
 AC_DEFUN(AM_PATH_ASPELL,
 [dnl
 dnl Get the cflags and libraries from the aspell-config script
 dnl
-  AC_ARG_WITH(aspell-prefix,
-   [  --with-aspell-prefix=PFX           Prefix where aspell is installed (optional)],
-          aspell_prefix="$withval", aspell_prefix="")
-  AC_ARG_ENABLE(aspell-test,
-   [  --disable-aspell-test   Do not try to compile and run a test GNU/aspell program],
-          , enable_aspelltest=yes)
-  AC_ARG_WITH(aspell-libs,
-   [  --with-aspell-libs=LIBS            Where GNU/aspell library reside (/usr/local/lib)],
-          aspell_libs="$withval", aspell_libs="")
-  AC_ARG_WITH(aspell-includes,
-   [  --with-aspell-includes=INCLUDES    Where GNU/aspell headers reside (/usr/local/include)],
-          aspell_includes="$withval", aspell_includes="")
+   AC_ARG_WITH(aspell-prefix,
+      [  --with-aspell-prefix=PFX           Prefix where aspell is installed (optional)],
+      aspell_prefix="$withval", aspell_prefix="")
+   AC_ARG_ENABLE(aspell-test,
+      [  --disable-aspell-test   Do not try to compile and run a test GNU/aspell program],
+      , enable_aspelltest=yes)
+   AC_ARG_WITH(aspell-libs,
+      [  --with-aspell-libs=LIBS            Where GNU/aspell library reside (/usr/local/lib)],
+      aspell_libs="$withval", aspell_libs="")
+   AC_ARG_WITH(aspell-includes,
+      [  --with-aspell-includes=INCLUDES    Where GNU/aspell headers reside (/usr/local/include)],
+      aspell_includes="$withval", aspell_includes="")
 
   if test x$aspell_prefix != x ; then
      if test x${ASPELL+set} != xset ; then
@@ -43,30 +43,31 @@ dnl
   if test x$aspell_libs = x ; then
      aspell_libs=/usr/local/lib
   fi
+
   AC_PATH_PROG(ASPELL, aspell, no)
   min_aspell_version=ifelse([$1], ,.50,$1)
   AC_MSG_CHECKING(for GNU/aspell - version >= $min_aspell_version)
   no_aspell=""
   if test "$ASPELL" = "no" ; then
-    no_aspell=yes
+     echo "*** The aspell executable could not be found"
+     echo "*** If aspell was installed in PREFIX, make sure PREFIX/bin is in"
+     echo "*** your path, or set the ASPELL environment variable to the"
+     echo "*** full path to aspell or configure with --with-aspell-prefix=PREFIX."
+     ASPELL_CFLAGS=""
+     ASPELL_LIBS=""
+     ASPELL_PATH=""
+     no_aspell=yes
+     ifelse([$3], , :, [$3])
   else
-    ASPELL_CFLAGS="-I$aspell_includes"
-    ASPELL_LIBS="-L$aspell_libs -laspell"
-    aspell_version=`$ASPELL version|sed -e "s/\(@(#) International Ispell Version 3.1.20 (but really Aspell \)\(.*\))/\2/"`
-    if test "x$enable_aspelltest" = "xyes" ; then
-      ac_save_CFLAGS="$CFLAGS"
-      ac_save_LIBS="$LIBS"
-      CFLAGS="$CFLAGS $ASPELL_CFLAGS"
-      LIBS="$LIBS $ASPELL_LIBS"
-dnl
-dnl 
-dnl
-      rm -f conf.aspelltest
-      AC_TRY_RUN([
+     ASPELL_CFLAGS="-I$aspell_includes"
+     ASPELL_LIBS="-L$aspell_libs -laspell"
+     aspell_version=`$ASPELL version|sed -e "s/\(@(#) International Ispell Version 3.1.20 (but really Aspell \)\(.*\))/\2/"`
+     if test "x$enable_aspelltest" = "xyes" ; then
+        rm -f conf.aspelltest
+        AC_TRY_RUN([
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <aspell.h>
 
 int
 main ()
@@ -78,67 +79,63 @@ main ()
    }
  return 0;
 }
-],, no_aspell=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
-       CFLAGS="$ac_save_CFLAGS"
-       LIBS="$ac_save_LIBS"
-     fi
-  fi
-  if test "x$no_aspell" = x ; then
-     AC_MSG_RESULT(yes)
-     ifelse([$2], , :, [$2])
-  else
-     if test -f conf.aspelltest ; then
-        :
-     else
-        AC_MSG_RESULT(no)
-     fi
-     if test "$ASPELL" = "no" ; then
-       echo "*** The aspell executable could not be found"
-       echo "*** If aspell was installed in PREFIX, make sure PREFIX/bin is in"
-       echo "*** your path, or set the ASPELL environment variable to the"
-       echo "*** full path to aspell."
-     else
-       if test -f conf.aspelltest ; then
-        :
-       else
-          echo "*** Could not run aspell test program, checking why..."
-          CFLAGS="$CFLAGS $ASPELL_CFLAGS"
-          LIBS="$LIBS $ASPELL_LIBS"
-          AC_TRY_LINK([
+        ],, no_aspell=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
+       if test "x$no_aspell" = x ; then
+           AC_MSG_RESULT(yes)
+           AC_MSG_CHECKING(for GNU/aspell dictionaries location)
+           aspell_path="`$ASPELL config dict-dir`"
+           AC_DEFINE_UNQUOTED(ASPELL_PATH, "${aspell_path}/")
+           AC_MSG_RESULT($aspell_path)
+           AC_MSG_CHECKING(if GNU/aspell is correctly installed)
+           ac_save_CFLAGS="$CFLAGS"
+           ac_save_LIBS="$LIBS"
+           CFLAGS="$CFLAGS $ASPELL_CFLAGS"
+           LIBS="$LIBS $ASPELL_LIBS"
+           rm -f conf.aspelltest
+           AC_TRY_RUN([
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 #include <aspell.h>
-],      [ AspellConfig * aspellconfig= new_aspell_config(); return 0 ],
-        [ 
-echo "*** The test program compiled, but did not run. This usually means"
-echo "*** that the run-time linker is not finding GNU/aspell or finding the wrong"
-echo "*** version of GNU/aspell. If it is not finding GNU/aspell, you'll need to set"
-echo "*** your LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
-echo "*** to the installed location  Also, make sure you have run ldconfig if"
-echo "*** that is required on your system"
-echo "***"
-echo "*** If you have an old version installed, it is best to remove it,"
-echo "*** although you may also be able to get things to work by"
-echo "*** modifying LD_LIBRARY_PATH"
-echo "***"
-        ],
-        [
-echo "*** The test program failed to compile or link. See the file config.log"
-echo "*** for the exact error that occured. This usually means GNU/aspell was"
-echo "*** incorrectly installed or that you have moved GNU/aspell since it was"
-echo "*** installed. "
-        ])
-          CFLAGS="$ac_save_CFLAGS"
-          LIBS="$ac_save_LIBS"
-       fi
-     fi
-     ASPELL_CFLAGS=""
-     ASPELL_LIBS=""
-     ifelse([$3], , :, [$3])
+
+int
+main()
+{
+ AspellConfig * aspellconfig = new_aspell_config();
+ system("touch conf.aspelltest");
+ return 0;
+}
+           ],, aspell_failure=yes,)
+           if test "x$aspell_failure" = x ; then     
+              AC_MSG_RESULT(yes)
+              ifelse([$2], , :, [$2])
+           else
+             AC_MSG_RESULT(no)
+             echo "*** The GNU/aspell test program did not succeed. This usually means that "
+             echo "*** the headers and the libraries could not be found. Check config.log"
+             echo "*** for detailed error message and add the relevant options"
+             echo "*** --with-aspell-prefix, --with-aspell-includes or --with-aspell-libs"
+             echo "*** to the configure command."
+             echo "*** This can also mean that the library was not found at runtime. In that case"
+             echo "*** add its path to LD_LIBRARY_PATH environment variable or in /etc/ld.so.conf"
+             ASPELL_CFLAGS=""
+             ASPELL_LIBS=""
+             ASPELL_PATH=""
+             ifelse([$3], , :, [$3])
+          fi
+          CFLAGS="$ac_save_CFLAGS"
+           LIBS="$ac_save_CFLAGS"
+       else
+           ASPELL_CFLAGS=""
+           ASPELL_LIBS=""
+           ASPELL_PATH=""
+           ifelse([$3], , :, [$3])
+       fi   
+     fi        
   fi
   AC_SUBST(ASPELL_CFLAGS)
   AC_SUBST(ASPELL_LIBS)
+  AC_SUBST(ASPELL_PATH)
   rm -f conf.aspelltest
 ])
 
index 069382a..8a18dc0 100644 (file)
@@ -10,7 +10,7 @@ MINOR_VERSION=8
 MICRO_VERSION=3
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=claws28
+EXTRA_VERSION=claws29
 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
 
 dnl set $target
@@ -297,8 +297,6 @@ if test $ac_cv_enable_aspell = yes; then
        AC_MSG_RESULT(yes)
        AM_PATH_ASPELL(0.50, AC_DEFINE(USE_ASPELL), [use_aspell=no
                                                    ac_cv_enable_aspell=no])
-       aspell_path="`$ASPELL config dict-dir`"
-       AC_DEFINE_UNQUOTED(ASPELL_PATH, "${aspell_path}/")
 else
        AC_MSG_RESULT(no)
 fi