changeset 4512:66411359ce4e

Merge in ac-fix-2008-10-25. Fix up ChangeLogs.
author Stephen J. Turnbull <stephen@xemacs.org>
date Sat, 25 Oct 2008 21:40:46 +0900
parents dd12adb12b8f (current diff) 71bf2c5667ba (diff)
children e8a9d6a10efa
files ChangeLog configure.ac src/ChangeLog src/lisp.h
diffstat 4 files changed, 35 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Sat Oct 04 13:57:55 2008 +0900
+++ b/ChangeLog	Sat Oct 25 21:40:46 2008 +0900
@@ -1,3 +1,7 @@
+2008-10-25  Stephen J. Turnbull  <stephen@xemacs.org>
+
+	* configure.ac (xemacs_cc_cc_mismatch): Improve g++ detection.
+
 2008-08-03  Mats Lidell  <matsl@xemacs.org>
 
 	* configure.ac: Fix typo xft_gauge to xft_gauges
--- a/configure.ac	Sat Oct 04 13:57:55 2008 +0900
+++ b/configure.ac	Sat Oct 25 21:40:46 2008 +0900
@@ -2239,18 +2239,25 @@
 
 dnl If we're specifying XEMACS_CC, it'd better be in the same family
 dnl as CC or the following flag calculations are bogus.
-dnl #### We may want to actually error and abort here, but I am not sure.
+dnl No error/abort; detection is too fragile.
+
+xemacs_cc_cc_mismatch=no
 if test "$CC" != "$XEMACS_CC"; then
-  if test "$XEMACS_CC" = "g++" -a "$GCC" != "yes"; then
-    AC_MSG_WARN([CC and g++ are mismatched; XE_CFLAGS may be wrong])
-    xemacs_cc_cc_mismatch=yes
-  elif test -n "$GCC" -a "$XEMACS_CC" != "g++"; then
-    AC_MSG_WARN([gcc and XEMACS_CC are mismatched; XE_CFLAGS may be wrong])
-    xemacs_cc_cc_mismatch=yes
+  case "$XEMACS_CC" in
+  *g++* )
+    if test "$GCC" != "yes"; then
+      AC_MSG_WARN([CC and g++ are mismatched; XE_CFLAGS may be wrong])
+      xemacs_cc_cc_mismatch=yes ;;
+  esac
+  if test -n "$GCC"; then
+    case $XEMACS_CC in
+    *g++* )
+      ;;
+    * )
+      AC_MSG_WARN([gcc and XEMACS_CC are mismatched; XE_CFLAGS may be wrong])
+      xemacs_cc_cc_mismatch=yes ;;
+    esac
   dnl #### Add other detectable mismatches here.
-  else
-    xemacs_cc_cc_mismatch=no
-  fi
 fi
 
 dnl Calculate optimization flags.  These will be off by default in beta
--- a/src/ChangeLog	Sat Oct 04 13:57:55 2008 +0900
+++ b/src/ChangeLog	Sat Oct 25 21:40:46 2008 +0900
@@ -1,3 +1,10 @@
+2008-10-25  Stephen J. Turnbull  <stephen@xemacs.org>
+
+	* lisp.h (static_pro): Cast out a warning.
+	g++ 4.3 complains about the conversion of const char to char.
+	These end up in a dynarray, so we would need to define a whole new
+	class of dynarray just to handle the const char stuff.
+
 2008-08-27  Aidan Kehoe  <kehoea@parhasard.net>
 
 	* symbols.c (Fuser_variable_p): 
--- a/src/lisp.h	Sat Oct 04 13:57:55 2008 +0900
+++ b/src/lisp.h	Sat Oct 25 21:40:46 2008 +0900
@@ -3815,12 +3815,16 @@
 
 MODULE_API void staticpro_1 (Lisp_Object *, Ascbyte *);
 MODULE_API void staticpro_nodump_1 (Lisp_Object *, Ascbyte *);
-#define staticpro(ptr) staticpro_1 (ptr, #ptr)
-#define staticpro_nodump(ptr) staticpro_nodump_1 (ptr, #ptr)
+/* g++ 4.3 complains about the conversion of const char to char.
+   These end up in a dynarray, so we would need to define a whole new class
+   of dynarray just to handle the const char stuff.
+   ####Check to see how hard this might be. */
+#define staticpro(ptr) staticpro_1 (ptr, (Ascbyte *) #ptr)
+#define staticpro_nodump(ptr) staticpro_nodump_1 (ptr, (Ascbyte *) #ptr)
 
 #ifdef HAVE_SHLIB
 MODULE_API void unstaticpro_nodump_1 (Lisp_Object *, Ascbyte *);
-#define unstaticpro_nodump(ptr) unstaticpro_nodump_1 (ptr, #ptr)
+#define unstaticpro_nodump(ptr) unstaticpro_nodump_1 (ptr, (Ascbyte *) #ptr)
 #endif
 
 #else