Complete.Org: Mailing Lists: Archives: freeciv-dev: January 2003:
[Freeciv-Dev] (PR#2873) 1.14.0 Xaw client crash
Home

[Freeciv-Dev] (PR#2873) 1.14.0 Xaw client crash

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: stepan@xxxxxxxx
Cc: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] (PR#2873) 1.14.0 Xaw client crash
From: "Jason Short via RT" <rt@xxxxxxxxxxxxxx>
Date: Wed, 22 Jan 2003 19:48:02 -0800
Reply-to: rt@xxxxxxxxxxxxxx

[stepan@xxxxxxxx - Wed Jan 22 00:42:23 2003]:

> OK, I found the problem:
> 
> HAVE_LIBXAW3D is not defined which causes client/gui-xaw/pixcommp.h to
> not
> include Xaw3D class parts which confuses Xaw3D at runtime and crashes
> client. The reason why it was not included lies somewhere around
> acconfig.h/old and autogen.sh. acconfig.h mentions HAVE_LIBXAW3D while
> config.h does not. But using autoconf suite newer than 2.13 acconfig.h
> is
> renamed to acconfig.old by autogen.sh and config.h.in generated by
> autoheader does not have HAVE_LIBXAW3D in (because FC_CHECK_X_LIB is
> not
> recognized by autoheader - which is by the way mentioned in
> acconfig.h)
> and that's probably the reason why it is not set (it must be mentioned
> in
> config.h else it will be silently discarded). The reason why it worked
> in
> 1.13.0 is that configure files were generated with autoconf 2.13, but
> in
> 1.14.0 they are generated by autoconf 2.57.
> 
> I have no fix for it, because I'm not an auto* guru, but someone
> should
> fix it as soon as possible.
> 
> I hope it is understandable (I'm very tired).

I understand why it doesn't work: as you say, HAVE_LIBXAW3D is never
defined.  Fixing this is easy enough: we just have to define it (see
attached patch).

I don't understand why it ever worked before, though.  acconfig.h has
'#undef HAVE_LIBXAW3D' but nowhere else in our autoconf code is this
touched.

jason

Index: configure.ac
===================================================================
RCS file: /home/freeciv/CVS/freeciv/configure.ac,v
retrieving revision 1.35
diff -u -r1.35 configure.ac
--- configure.ac        2003/01/16 22:14:13     1.35
+++ configure.ac        2003/01/23 03:37:16
@@ -387,6 +387,7 @@
        dnl Xaw or Xaw3d:
        if test -n "$WITH_XAW3D"; then
          FC_CHECK_X_LIB(Xaw3d, main, , AC_MSG_ERROR(did not find Xaw3d 
library))
+         AC_DEFINE(HAVE_LIBXAW3D, 1, [Define if the Xaw client uses Xaw3d])
        elif test "$client" = "xaw"; then
          FC_CHECK_X_LIB(Xaw, main, , AC_MSG_ERROR(did not find Xaw library))
        else

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