changeset 4520:279cadceaa13

Merge in doc and test changes from September 2008.
author Stephen J. Turnbull <stephen@xemacs.org>
date Mon, 27 Oct 2008 09:51:51 +0900
parents bbce7f6de2d6 (diff) 41c84a94258b (current diff)
children 383ab474a241
files
diffstat 8 files changed, 95 insertions(+), 50 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue Sep 30 12:35:05 2008 +0900
+++ b/ChangeLog	Mon Oct 27 09:51:51 2008 +0900
@@ -1,3 +1,11 @@
+2008-10-25  Stephen J. Turnbull  <stephen@xemacs.org>
+
+	* INSTALL: Give better pointers to package documentation.
+
+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/INSTALL	Tue Sep 30 12:35:05 2008 +0900
+++ b/INSTALL	Mon Oct 27 09:51:51 2008 +0900
@@ -1,7 +1,7 @@
 XEmacs Installation Guide
 
 Copyright (c) 1994, 1995, 1996 Board of Trustees, University of Illinois
-Copyright (c) 1994-1999, 2003 Free Software Foundation, Inc.
+Copyright (c) 1994-1999, 2003, 2008 Free Software Foundation, Inc.
 
    Permission is granted to anyone to make or distribute verbatim copies
    of this document as received, in any medium, provided that the
@@ -61,11 +61,13 @@
 PACKAGE SYSTEM
 ==============
 
-The file README.packages contain information vital to have a fully
+The FAQ sections 1.7 and 2.1 contain information vital to have a fully
 working XEmacs.  It includes a description of available packages, and
 how to bootstrap XEmacs from a minimal or a complete set of packages.
 This information was not included in this file only because it is too
-large for this terse INSTALL.  Please read README.packages now!
+large for this terse INSTALL.  The FAQ is available in Texinfo format
+in man/xemacs-faq.texi, as an Info file once you build XEmacs, and
+online at http://www.xemacs.org/Documentation/21.5/html/xemacs-faq_1.html.
 
 ADD-ON LIBRARIES
 ================
@@ -794,8 +796,8 @@
 remove the files that `configure' created (so you can compile XEmacs
 for a different configuration), type `make distclean'.
 
-READ README.packages
-====================
+READ THE FAQ
+============
 
 Do it!
 
@@ -803,8 +805,8 @@
 ========
 
 The most common problem is that you forgot to read and follow the
-directions in README.packages.  You can not have a normal XEmacs
-without downloading some additional packages.
+directions for installing bootstrap packages in the FAQ.  You can not
+have a normal XEmacs without downloading some additional packages.
 
 See the file PROBLEMS in this directory for a list of various problems
 sometimes encountered, and what to do about them.  PROBLEMS is also
--- a/configure.ac	Tue Sep 30 12:35:05 2008 +0900
+++ b/configure.ac	Mon Oct 27 09:51:51 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/lwlib/lwlib-Xm.c	Tue Sep 30 12:35:05 2008 +0900
+++ b/lwlib/lwlib-Xm.c	Mon Oct 27 09:51:51 2008 +0900
@@ -377,7 +377,7 @@
       XtSetArg (al [ac], XmNscaleWidth, width); ac++;
     }
 
-  XtSetValues (scale, al, 1);
+  XtSetValues (scale, al, ac);
 }
 #endif /* LWLIB_WIDGETS_MOTIF */
 
--- a/man/ChangeLog	Tue Sep 30 12:35:05 2008 +0900
+++ b/man/ChangeLog	Mon Oct 27 09:51:51 2008 +0900
@@ -1,3 +1,8 @@
+2008-10-04  Stephen J. Turnbull  <stephen@xemacs.org>
+
+	* xemacs-faq.texi (Q5.0.7): Fix broken instructions on use of
+	antialiased fonts.
+
 2008-08-31  Aidan Kehoe  <kehoea@parhasard.net>
 
 	* xemacs-faq.texi (Q5.0.7): Add a section on how one can use
--- a/man/xemacs-faq.texi	Tue Sep 30 12:35:05 2008 +0900
+++ b/man/xemacs-faq.texi	Mon Oct 27 09:51:51 2008 +0900
@@ -6284,41 +6284,53 @@
 @node Q5.0.7, Q5.1.1, Q5.0.6, External Subsystems
 @unnumberedsubsec Q5.0.7: How can I use antialiased fonts under X11?
 
-For this you need a recent beta version, and please consider the caveats
-that apply when using beta software from any source.  Rebuild xemacs
-using at least the following options to configure:
-
-@samp{./configure --enable-mule --with-xft=emacs,menubars}
-
-For further details on the XEmacs widgets that support XFT, see the
-output of @code{./configure --help}.  You may find that you have to
-install some lib[something]-dev packages to provide header files; see
-your packaging system's documentation.  Depending on your platform, your
-packaging system will normally be something like RPM, @code{apt} or
-DarwinPorts.
+The X11 version of XEmacs can use antialiased fonts via the Xft,
+fontconfig, and freetype libraries.  To configure this you need a recent
+beta version (at least 21.5.24); the more recent, the better.  This is
+beta software, the usual caveats apply.  Rebuild xemacs using the
+following configure options, plus any others you normally use:
+
+@samp{--enable-mule --with-xft=emacs,menubars}
+
+Xft @emph{may} work without Mule but the developers working on the Xft
+code invariably build with Mule.  The tab control also supports Xft, and
+at some date the progress gauge will as well.  If they are configured in
+to XEmacs, you may add @samp{tabs} and @samp{gauges} to the value of the
+@samp{--with-xft} option (with a comma separating each value from the
+previous ones).  For further details on the XEmacs widgets that support
+XFT, see the output of @code{./configure --help}.  If you use a package
+manager from your OS distribution, you may need to install development
+packages for @file{fontconfig} and @file{Xft}, and possibly for their
+prequisites.
 
 To specify a particular antialiased font, put something like the
-following lines in your @file{~/.Xdefaults} or @file{~.Xresources}
-(using @code{#define} in @file{.Xresources} avoids boring hand
-substitution):
+following lines in your @file{~/.Xdefaults} or @file{~/.Xresources}:
 
 @example
-#define MONO    Mono
-#define SANS    Sans
-#define PTSIZEM 12
-#define PTSIZES 11
-    XEmacs.default.attributeFont: MONO:size=PTSIZEM
-       XEmacs.bold.attributeFont: MONO:size=PTSIZEM:style=Bold
-     XEmacs.italic.attributeFont: MONO:size=PTSIZEM:style=Oblique
-XEmacs.bold-italic.attributeFont: MONO:size=PTSIZEM:style=Bold Oblique
-   XEmacs.modeline.attributeFont: SANS:size=PTSIZES
-             XEmacs.menubar.font: SANS:size=PTSIZES
-                  XEmacs*xftFont: SANS:size=PTSIZES
+    XEmacs.default.attributeFont: monospace-12
+       XEmacs.bold.attributeFont: monospace-12:style=Bold
+     XEmacs.italic.attributeFont: monospace-12:style=Oblique
+XEmacs.bold-italic.attributeFont: monospace-12:style=Bold Oblique
+   XEmacs.modeline.attributeFont: sans-serif-11
+          XEmacs.menubar.xftFont: sans-serif-11
+                  XEmacs*XftFont: sans-serif-11
 @end example
 
-And run @code{xrdb -merge} before starting the new, XFT-enabled xemacs.
-You can choose the available fonts from the list given by
-@code{fc-list}; try @code{xfd -fa FONTNAME-SIZE} to preview a given font.
+@strong{Warning}: These resource naming conventions are just hacks to
+get the code running; you should expect them to change.  (Sorry about
+that, but this @emph{is} beta software!)
+
+Then run @code{xrdb -merge} before starting the new, XFT-enabled
+xemacs.  You can choose the available fonts from the list given by
+@code{fc-list}; try @code{xfd -fa FONTNAME-SIZE} to preview a given
+font.  Note that ``monospace'' and ``sans-serif'' are generic aliases
+defined by fontconfig which may correspond to any of many real fonts
+based on local configuration and availability of the aliased fonts,
+and so are likely to give good results in a well-set-up system.
+
+Although Customize does not yet handle fontconfig fontspecs, you can
+pass them as strings directly to @samp{set-face-font} to set fonts from
+Lisp.
 
 @unnumberedsec 5.1: Microsoft Windows
 
--- a/src/ChangeLog	Tue Sep 30 12:35:05 2008 +0900
+++ b/src/ChangeLog	Mon Oct 27 09:51:51 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	Tue Sep 30 12:35:05 2008 +0900
+++ b/src/lisp.h	Mon Oct 27 09:51:51 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