changeset 84:ac0620f6398e r20-0b92

Import from CVS: tag r20-0b92
author cvs
date Mon, 13 Aug 2007 09:08:29 +0200
parents ba3ba6e17456
children c661705957e0
files CHANGES-beta ChangeLog configure configure.in etc/sgml/CATALOG etc/sgml/ECAT etc/sgml/HTML32.dtd etc/sgml/cdtd/html-3.2f etc/sgml/html-3.2f.dtd lib-src/update-elc.sh lisp/ChangeLog lisp/modes/tex-mode.el lisp/psgml/psgml-html.el lisp/psgml/psgml.el lisp/version.el lwlib/xlwmenu.c src/ChangeLog src/buffer.h src/getloadavg.c src/glyphs.c src/lisp.h src/puresize.h src/ralloc.c src/scrollbar-x.c
diffstat 24 files changed, 846 insertions(+), 760 deletions(-) [+]
line wrap: on
line diff
--- a/CHANGES-beta	Mon Aug 13 09:07:39 2007 +0200
+++ b/CHANGES-beta	Mon Aug 13 09:08:29 2007 +0200
@@ -1,4 +1,7 @@
 							-*- indented-text -*-
+to 20.0 beta92
+-- Miscellaneous bug fixes
+
 to 20.0 beta91
 -- func-menu.el-2.45
 -- ediff-2.64
--- a/ChangeLog	Mon Aug 13 09:07:39 2007 +0200
+++ b/ChangeLog	Mon Aug 13 09:08:29 2007 +0200
@@ -1,3 +1,16 @@
+Sat Jan 25 15:43:59 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* CHANGES-beta: XEmacs 20.0-b92 is released.
+
+Fri Jan 24 09:54:01 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* lwlib/xlwmenu.c (massage_resource_name): Changed comparison of
+	char and pointer.
+
+Thu Jan 23 10:39:34 1997  Martin Buchholz  <mrb@eng.sun.com>
+
+	* lib-src/update-elc.sh (ignore_dirs): Quoting portability.
+
 Wed Jan 22 21:07:17 1997  Steven L Baur  <steve@altair.xemacs.org>
 	* XEmacs 20.0-b91 (prerelease 2) is released.
 
--- a/configure	Mon Aug 13 09:07:39 2007 +0200
+++ b/configure	Mon Aug 13 09:08:29 2007 +0200
@@ -3899,30 +3899,33 @@
 fi
 rm -f conftest*
  }
-test -z "${with_png}" && { ac_save_LIBS="${LIBS}"
-LIBS="${LIBS} -lpng"
-ac_have_lib=""
-test -n "$silent" || echo "checking for -lpng"
+test -z "${with_png}" && { test -n "$silent" || echo "checking for pow"
 cat > conftest.${ac_ext} <<EOF
 #include "confdefs.h"
-
+#include <ctype.h>
 int main() { return 0; }
-int t() { main();; return 0; }
+int t() { 
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_pow) || defined (__stub___pow)
+choke me
+#else
+/* Override any gcc2 internal prototype to avoid an error.  */
+extern char pow(); pow();
+#endif
+; return 0; }
 EOF
 if eval $ac_compile; then
+  :
+else
   rm -rf conftest*
-  ac_have_lib="1"
-
+  with_png="no"
 fi
 rm -f conftest*
-LIBS="${ac_save_LIBS}"
-if test -n "${ac_have_lib}"; then
-   :; 
-else
-   :; with_png="no"
-fi
  }
-test -z "${with_png}" && { ac_save_LIBS="${LIBS}"
+if test -z "${with_png}" ; then
+  ac_save_LIBS="${LIBS}"
 LIBS="${LIBS} -lz"
 ac_have_lib=""
 test -n "$silent" || echo "checking for -lz"
@@ -3944,8 +3947,8 @@
 else
    :; 
 fi
- }
-test -z "${with_png}" && { ac_save_LIBS="${LIBS}"
+
+  test -z "${with_png}" && { ac_save_LIBS="${LIBS}"
 LIBS="${LIBS} -lgz"
 ac_have_lib=""
 test -n "$silent" || echo "checking for -lgz"
@@ -3968,6 +3971,38 @@
    :; with_png="no"
 fi
  }
+  if test "${with_png}" != "no"; then
+    png_save_libs="${LIBS}"
+    case "${with_png}" in
+      yes  ) LIBS="${LIBS} -lz" ;;
+      gnuz ) LIBS="${LIBS} -lgz" ;;
+    esac
+    ac_save_LIBS="${LIBS}"
+LIBS="${LIBS} -lpng"
+ac_have_lib=""
+test -n "$silent" || echo "checking for -lpng"
+cat > conftest.${ac_ext} <<EOF
+#include "confdefs.h"
+
+int main() { return 0; }
+int t() { main();; return 0; }
+EOF
+if eval $ac_compile; then
+  rm -rf conftest*
+  ac_have_lib="1"
+
+fi
+rm -f conftest*
+LIBS="${ac_save_LIBS}"
+if test -n "${ac_have_lib}"; then
+   :; 
+else
+   :; with_png="no"
+fi
+
+    LIBS="$png_save_libs"
+  fi
+fi
 case "${with_png}" in
   yes  ) 
 {
--- a/configure.in	Mon Aug 13 09:07:39 2007 +0200
+++ b/configure.in	Mon Aug 13 09:08:29 2007 +0200
@@ -2461,9 +2461,20 @@
   fi
 fi
 test -z "${with_png}" && { AC_HEADER_CHECK(png.h, , with_png="no") }
-test -z "${with_png}" && { AC_HAVE_LIBRARY(-lpng, , with_png="no") }
-test -z "${with_png}" && { AC_HAVE_LIBRARY(-lz,  with_png="yes") }
-test -z "${with_png}" && { AC_HAVE_LIBRARY(-lgz, with_png="gnuz", with_png="no") }
+test -z "${with_png}" && { AC_FUNC_CHECK(pow, , with_png="no") }
+if test -z "${with_png}" ; then
+  AC_HAVE_LIBRARY(-lz, with_png="yes")
+  test -z "${with_png}" && { AC_HAVE_LIBRARY(-lgz, with_png="gnuz", with_png="no") }
+  if test "${with_png}" != "no"; then
+    png_save_libs="${LIBS}"
+    case "${with_png}" in
+      yes  ) LIBS="${LIBS} -lz" ;;
+      gnuz ) LIBS="${LIBS} -lgz" ;;
+    esac
+    AC_HAVE_LIBRARY(-lpng, , with_png="no")
+    LIBS="$png_save_libs"
+  fi
+fi
 case "${with_png}" in
   yes  ) AC_DEFINE(HAVE_PNG) ;;
   gnuz ) AC_DEFINE(HAVE_PNG) AC_DEFINE(HAVE_PNG_GNUZ) ;;
--- a/etc/sgml/CATALOG	Mon Aug 13 09:07:39 2007 +0200
+++ b/etc/sgml/CATALOG	Mon Aug 13 09:08:29 2007 +0200
@@ -46,6 +46,7 @@
 PUBLIC "-//Microsoft//DTD Internet Explorer 2.0 HTML Strict//EN" iehtml-s.dtd
 PUBLIC "-//Microsoft//DTD Internet Explorer 2.0 Tables//EN"     ietables.dtd
 PUBLIC "-//W3C//DTD HTML 3.2//EN"                       html-3.2.dtd
+PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"			html-3.2f.dtd
 PUBLIC "-//W3C//DTD HTML Experimental 19960712//EN"	html-cougar.dtd
 DOCTYPE HTML						html.dtd
 DOCTYPE HTML-3						html-3.dtd
--- a/etc/sgml/ECAT	Mon Aug 13 09:07:39 2007 +0200
+++ b/etc/sgml/ECAT	Mon Aug 13 09:08:29 2007 +0200
@@ -6,3 +6,4 @@
 FILE html-3.2.dtd	[ ]			cdtd/html-3.2
 FILE html-hj.dtd	[ ]			cdtd/html-hj
 FILE iehtml.dtd		[ ]			cdtd/iehtml
+FILE html-3.2f.dtd	[]			cdtd/html-3.2f
--- a/etc/sgml/HTML32.dtd	Mon Aug 13 09:07:39 2007 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,598 +0,0 @@
-<!--
-        W3C Document Type Definition for the HyperText Markup Language
-        version 3.2 as ratified by a vote of W3C member companies.
-        For more information on W3C look at  URL http://www.w3.org/
-
-        Date: Tuesday January 14th 1996
-
-        Author: Dave Raggett <dsr@w3.org>
-
-        HTML 3.2 aims to capture recommended practice as of early '96
-        and as such to be used as a replacement for HTML 2.0 (RFC 1866).
-        Widely deployed rendering attributes are included where they
-        have been shown to be interoperable. SCRIPT and STYLE are
-        included to smooth the introduction of client-side scripts
-        and style sheets. Browsers must avoid showing the contents
-        of these element Otherwise support for them is not required.
-        ID, CLASS and STYLE attributes are not included in this version
-        of HTML.
--->
-
-<!ENTITY % HTML.Version
-        "-//W3C//DTD HTML 3.2 Final//EN"
-
-        -- Typical usage:
-
-            <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-            <html>
-            ...
-            </html>
-        --
-        >
-
-<!--================== Deprecated Features Switch =========================-->
-
-<!ENTITY % HTML.Deprecated "INCLUDE">
-
-<!--================== Imported Names =====================================-->
-
-<!ENTITY % Content-Type "CDATA"
-        -- meaning a MIME content type, as per RFC1521
-        -->
-
-<!ENTITY % HTTP-Method "GET | POST"
-        -- as per HTTP specification
-        -->
-
-<!ENTITY % URL "CDATA"
-        -- The term URL means a CDATA attribute
-           whose value is a Uniform Resource Locator,
-           See RFC1808 (June 95) and RFC1738 (Dec 94).
-        -->
-
-<!-- Parameter Entities -->
-
-<!ENTITY % head.misc "SCRIPT|STYLE|META|LINK" -- repeatable head elements -->
-
-<!ENTITY % heading "H1|H2|H3|H4|H5|H6">
-
-<!ENTITY % list "UL | OL |  DIR | MENU">
-
-<![ %HTML.Deprecated [
-    <!ENTITY % preformatted "PRE | XMP | LISTING">
-]]>
-
-<!ENTITY % preformatted "PRE">
-
-<!--================ Character mnemonic entities ==========================-->
-
-<!ENTITY % ISOlat1 PUBLIC
-       "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML">
-%ISOlat1;
-
-<!--================ Entities for special symbols =========================-->
-<!-- &trade and &cbsp are not widely deployed and so not included here -->
-
-<!ENTITY amp    CDATA "&#38;"   -- ampersand          -->
-<!ENTITY gt     CDATA "&#62;"   -- greater than       -->
-<!ENTITY lt     CDATA "&#60;"   -- less than          -->
-
-<!--=================== Text Markup =======================================-->
-
-<!ENTITY % font "TT | I | B  | U | STRIKE | BIG | SMALL | SUB | SUP">
-
-<!ENTITY % phrase "EM | STRONG | DFN | CODE | SAMP | KBD | VAR | CITE">
-
-<!ENTITY % special "A | IMG | APPLET | FONT | BASEFONT | BR | SCRIPT | MAP">
-
-<!ENTITY % form "INPUT | SELECT | TEXTAREA">
-
-<!ENTITY % text "#PCDATA | %font | %phrase | %special | %form">
-
-<!ELEMENT (%font|%phrase) - - (%text)*>
-
-<!-- there are also 16 widely known color names although
-  the resulting colors are implementation dependent:
-
-   aqua, black, blue, fuchsia, gray, green, lime, maroon,
-   navy, olive, purple, red, silver, teal, white, and yellow
-
- These colors were originally picked as being the standard
- 16 colors supported with the Windows VGA palette.
- -->
-
-<!ELEMENT FONT - - (%text)*     -- local change to font -->
-<!ATTLIST FONT
-    size    CDATA   #IMPLIED    -- [+]nn e.g. size="+1", size=4 --
-    color   CDATA   #IMPLIED    -- #RRGGBB in hex, e.g. red: color="#FF0000" --
-    >
-
-<!ELEMENT BASEFONT - O EMPTY    -- base font size (1 to 7)-->
-<!ATTLIST BASEFONT
-    size    CDATA   #IMPLIED    -- e.g. size=3 --
-    >
-
-<!ELEMENT BR    - O EMPTY    -- forced line break -->
-<!ATTLIST BR
-        clear (left|all|right|none) none -- control of text flow --
-        >
-
-<!--================== HTML content models ================================-->
-<!--
-    HTML has three basic content models:
-
-        %text       character level elements and text strings
-        %flow       block-like elements e.g. paragraphs and lists
-        %bodytext   as %flow plus headers H1-H6 and ADDRESS
--->
-
-<!ENTITY % block
-     "P | %list | %preformatted | DL | DIV | CENTER |
-      BLOCKQUOTE | FORM | ISINDEX | HR | TABLE">
-
-<!-- %flow is used for DD and LI -->
-
-<!ENTITY % flow "(%text | %block)*">
-
-<!--=================== Document Body =====================================-->
-
-<!ENTITY % body.content "(%heading | %text | %block | ADDRESS)*">
-
-<!ENTITY % color "CDATA" -- a color specification: #HHHHHH @@ details? -->
-
-<!ENTITY % body-color-attrs "
-        bgcolor %color #IMPLIED
-        text %color #IMPLIED
-        link %color #IMPLIED
-        vlink %color #IMPLIED
-        alink %color #IMPLIED
-        ">
-
-<!ELEMENT BODY O O  %body.content>
-<!ATTLIST BODY
-        background %URL #IMPLIED  -- texture tile for document background --
-        %body-color-attrs;  -- bgcolor, text, link, vlink, alink --
-        >
-
-<!ENTITY % address.content "((%text;) | P)*">
-
-<!ELEMENT ADDRESS - - %address.content>
-
-<!ELEMENT DIV - - %body.content>
-<!ATTLIST DIV
-        align   (left|center|right) #IMPLIED -- alignment of following text --
-        >
-
-<!-- CENTER is a shorthand for DIV with ALIGN=CENTER -->
-<!ELEMENT center - - %body.content>
-
-<!--================== The Anchor Element =================================-->
-
-<!ELEMENT A - - (%text)* -(A)>
-<!ATTLIST A
-        name    CDATA   #IMPLIED    -- named link end --
-        href    %URL    #IMPLIED    -- URL for linked resource --
-        rel     CDATA   #IMPLIED    -- forward link types --
-        rev     CDATA   #IMPLIED    -- reverse link types --
-        title   CDATA   #IMPLIED    -- advisory title string --
-        >
-
-<!--================== Client-side image maps ============================-->
-
-<!-- These can be placed in the same document or grouped in a
-     separate document although this isn't yet widely supported -->
-
-<!ENTITY % SHAPE "(rect|circle|poly)">
-<!ENTITY % COORDS "CDATA" -- comma separated list of numbers -->
-
-<!ELEMENT MAP - - (AREA)*>
-<!ATTLIST MAP
-    name    CDATA   #IMPLIED
-    >
-
-<!ELEMENT AREA - O EMPTY>
-<!ATTLIST AREA
-    shape   %SHAPE  rect
-    coords  %COORDS #IMPLIED  -- defines coordinates for shape --
-    href    %URL    #IMPLIED  -- this region acts as hypertext link --
-    nohref (nohref) #IMPLIED  -- this region has no action --
-    alt     CDATA   #REQUIRED -- needed for non-graphical user agents --
-    >
-
-<!--================== The LINK Element ==================================-->
-
-<!ENTITY % Types "CDATA"
-        -- See Internet Draft: draft-ietf-html-relrev-00.txt
-           LINK has been part of HTML since the early days
-           although few browsers as yet take advantage of it.
-
-           Relationship values can be used in principle:
-
-                a) for document specific toolbars/menus when used
-                   with the LINK element in the document head:
-                b) to link to a separate style sheet
-                c) to make a link to a script
-                d) by stylesheets to control how collections of
-                   html nodes are rendered into printed documents
-                e) to make a link to a printable version of this document
-                   e.g. a postscript or pdf version
--->
-
-<!ELEMENT LINK - O EMPTY>
-<!ATTLIST LINK
-        href    %URL    #IMPLIED    -- URL for linked resource --
-        rel     %Types  #IMPLIED    -- forward link types --
-        rev     %Types  #IMPLIED    -- reverse link types --
-        title   CDATA   #IMPLIED    -- advisory title string --
-        >
-
-<!--=================== Images ============================================-->
-
-<!ENTITY % Length "CDATA"   -- nn for pixels or nn% for percentage length -->
-<!ENTITY % Pixels "CDATA"   -- integer representing length in pixels -->
-
-<!-- Suggested widths are used for negotiating image size
-     with the module responsible for painting the image.
-     align=left or right cause image to float to margin
-     and for subsequent text to wrap around image -->
-
-<!ENTITY % IAlign "(top|middle|bottom|left|right)">
-
-<!ELEMENT IMG    - O EMPTY --  Embedded image -->
-<!ATTLIST IMG
-        src     %URL     #REQUIRED  -- URL of image to embed --
-        alt     CDATA    #IMPLIED   -- for display in place of image --
-        align   %IAlign  #IMPLIED   -- vertical or horizontal alignment --
-        height  %Pixels  #IMPLIED   -- suggested height in pixels --
-        width   %Pixels  #IMPLIED   -- suggested width in pixels --
-        border  %Pixels  #IMPLIED   -- suggested link border width --
-        hspace  %Pixels  #IMPLIED   -- suggested horizontal gutter --
-        vspace  %Pixels  #IMPLIED   -- suggested vertical gutter --
-        usemap  %URL     #IMPLIED   -- use client-side image map --
-        ismap   (ismap)  #IMPLIED   -- use server image map --
-        >
-
-<!-- USEMAP points to a MAP element which may be in this document
-  or an external document, although the latter is not widely supported -->
-
-<!--=================== Java APPLET tag ===================================-->
-<!--
-  This tag is supported by all Java enabled browsers. Applet resources
-  (including their classes) are normally loaded relative to the document
-  URL (or <BASE> element if it is defined). The CODEBASE attribute is used
-  to change this default behavior. If the CODEBASE attribute is defined then
-  it specifies a different location to find applet resources. The value
-  can be an absolute URL or a relative URL. The absolute URL is used as is
-  without modification and is not effected by the documents <BASE> element.
-  When the codebase attribute is relative, then it is relative to the
-  document URL (or <BASE> tag if defined).
--->
-<!ELEMENT APPLET - - (PARAM | %text)*>
-<!ATTLIST APPLET
-        codebase %URL     #IMPLIED   -- code base --
-        code     CDATA    #REQUIRED  -- class file --
-        alt      CDATA    #IMPLIED   -- for display in place of applet --
-        name     CDATA    #IMPLIED   -- applet name --
-        width    %Pixels  #REQUIRED  -- suggested width in pixels --
-        height   %Pixels  #REQUIRED  -- suggested height in pixels --
-        align    %IAlign  #IMPLIED   -- vertical or horizontal alignment --
-        hspace   %Pixels  #IMPLIED   -- suggested horizontal gutter --
-        vspace   %Pixels  #IMPLIED   -- suggested vertical gutter --
-        >
-
-<!ELEMENT PARAM - O EMPTY>
-<!ATTLIST PARAM
-        name    NMTOKEN   #REQUIRED  -- The name of the parameter --
-        value   CDATA     #IMPLIED   -- The value of the parameter --
-        >
-
-<!--
-Here is an example:
-
-    <applet codebase="applets/NervousText"
-        code=NervousText.class
-        width=300
-        height=50>
-    <param name=text value="Java is Cool!">
-    <img src=sorry.gif alt="This looks better with Java support">
-    </applet>
--->
-
-<!--=================== Horizontal Rule ===================================-->
-
-<!ELEMENT HR    - O EMPTY>
-<!ATTLIST HR
-        align (left|right|center) #IMPLIED
-        noshade (noshade) #IMPLIED
-        size  %Pixels #IMPLIED
-        width %Length #IMPLIED
-        >
-<!--=================== Paragraphs=========================================-->
-
-<!ELEMENT P     - O (%text)*>
-<!ATTLIST P
-        align  (left|center|right) #IMPLIED
-        >
-
-<!--=================== Headings ==========================================-->
-
-<!--
-  There are six levels of headers from H1 (the most important)
-  to H6 (the least important).
--->
-
-<!ELEMENT ( %heading )  - -  (%text;)*>
-<!ATTLIST ( %heading )
-        align  (left|center|right) #IMPLIED
-        >
-
-<!--=================== Preformatted Text =================================-->
-
-<!-- excludes images and changes in font size -->
-
-<!ENTITY % pre.exclusion "IMG|BIG|SMALL|SUB|SUP|FONT">
-
-<!ELEMENT PRE - - (%text)* -(%pre.exclusion)>
-<!ATTLIST PRE
-        width NUMBER #implied -- is this widely supported? --
-        >
-
-<![ %HTML.Deprecated [
-
-<!ENTITY % literal "CDATA"
-        -- historical, non-conforming parsing mode where
-           the only markup signal is the end tag
-           in full
-        -->
-
-<!ELEMENT (XMP|LISTING) - -  %literal>
-<!ELEMENT PLAINTEXT - O %literal>
-
-]]>
-
-<!--=================== Block-like Quotes =================================-->
-
-<!ELEMENT BLOCKQUOTE - - %body.content>
-
-<!--=================== Lists =============================================-->
-
-<!--
-    HTML 3.2 allows you to control the sequence number for ordered lists.
-    You can set the sequence number with the START and VALUE attributes.
-    The TYPE attribute may be used to specify the rendering of ordered
-    and unordered lists.
--->
-
-<!-- definition lists - DT for term, DD for its definition -->
-
-<!ELEMENT DL    - -  (DT|DD)+>
-<!ATTLIST DL
-        compact (compact) #IMPLIED -- more compact style --
-        >
-
-<!ELEMENT DT - O  (%text)*>
-<!ELEMENT DD - O  %flow;>
-
-<!-- Ordered lists OL, and unordered lists UL -->
-<!ELEMENT (OL|UL) - -  (LI)+>
-
-<!--
-       Numbering style
-    1   arablic numbers     1, 2, 3, ...
-    a   lower alpha         a, b, c, ...
-    A   upper alpha         A, B, C, ...
-    i   lower roman         i, ii, iii, ...
-    I   upper roman         I, II, III, ...
-
-    The style is applied to the sequence number which by default
-    is reset to 1 for the first list item in an ordered list.
-
-    This can't be expressed directly in SGML due to case folding.
--->
-
-<!ENTITY % OLStyle "CDATA" -- constrained to: [1|a|A|i|I] -->
-
-<!ATTLIST OL -- ordered lists --
-        type      %OLStyle   #IMPLIED   -- numbering style --
-        start     NUMBER     #IMPLIED   -- starting sequence number --
-        compact  (compact)   #IMPLIED   -- reduced interitem spacing --
-        >
-
-<!-- bullet styles -->
-
-<!ENTITY % ULStyle "disc|square|circle">
-
-<!ATTLIST UL -- unordered lists --
-        type    (%ULStyle)   #IMPLIED   -- bullet style --
-        compact (compact)    #IMPLIED   -- reduced interitem spacing --
-        >
-
-<!ELEMENT (DIR|MENU) - -  (LI)+ -(%block)>
-<!ATTLIST DIR
-        compact (compact) #IMPLIED
-        >
-<!ATTLIST MENU
-        compact (compact) #IMPLIED
-        >
-
-<!-- <DIR>              Directory list                  -->
-<!-- <DIR COMPACT>      Compact list style              -->
-<!-- <MENU>             Menu list                       -->
-<!-- <MENU COMPACT>     Compact list style              -->
-
-<!-- The type attribute can be used to change the bullet style
-     in unordered lists and the numbering style in ordered lists -->
-
-<!ENTITY % LIStyle "CDATA" -- constrained to: "(%ULStyle|%OLStyle)" -->
-
-<!ELEMENT LI - O %flow -- list item -->
-<!ATTLIST LI
-        type    %LIStyle     #IMPLIED   -- list item style --
-        value    NUMBER      #IMPLIED   -- reset sequence number --
-        >
-
-<!--================ Forms ===============================================-->
-
-<!ELEMENT FORM - - %body.content -(FORM)>
-<!ATTLIST FORM
-        action %URL #IMPLIED  -- server-side form handler --
-        method (%HTTP-Method) GET -- see HTTP specification --
-        enctype %Content-Type; "application/x-www-form-urlencoded"
-        >
-
-<!ENTITY % InputType
-        "(TEXT | PASSWORD | CHECKBOX | RADIO | SUBMIT
-            | RESET | FILE | HIDDEN | IMAGE)">
-
-<!ELEMENT INPUT - O EMPTY>
-<!ATTLIST INPUT
-        type %InputType TEXT     -- what kind of widget is needed --
-        name  CDATA #IMPLIED     -- required for all but submit and reset --
-        value CDATA #IMPLIED     -- required for radio and checkboxes --
-        checked (checked) #IMPLIED -- for radio buttons and check boxes --
-        size CDATA  #IMPLIED     -- specific to each type of field --
-        maxlength NUMBER #IMPLIED
-        src   %URL  #IMPLIED     -- for fields with background images --
-        align  (top|middle|bottom|left|right) top -- image alignment --
-        >
-
-<!ELEMENT SELECT - - (OPTION+)>
-<!ATTLIST SELECT
-        name CDATA #REQUIRED
-        size NUMBER #IMPLIED
-        multiple (multiple) #IMPLIED
-        >
-
-<!ELEMENT OPTION - O (#PCDATA)*>
-<!ATTLIST OPTION
-        selected (selected) #IMPLIED
-        value  CDATA  #IMPLIED -- defaults to element content --
-        >
-
-<!-- Multi-line text input field. -->
-
-<!ELEMENT TEXTAREA - - (#PCDATA)*>
-<!ATTLIST TEXTAREA
-        name CDATA #REQUIRED
-        rows NUMBER #REQUIRED
-        cols NUMBER #REQUIRED
-        >
-
-<!--======================= Tables ========================================-->
-
-<!-- Widely deployed subset of the full table standard, see RFC 1942
-     e.g. at http://www.ics.uci.edu/pub/ietf/html/rfc1942.txt -->
-
-<!-- horizontal placement of table relative to window -->
-<!ENTITY % Where "(left|center|right)">
-
-<!-- horizontal alignment attributes for cell contents -->
-<!ENTITY % cell.halign
-        "align  (left|center|right) #IMPLIED"
-        >
-
-<!-- vertical alignment attributes for cell contents -->
-<!ENTITY % cell.valign
-        "valign  (top|middle|bottom)  #IMPLIED"
-        >
-
-<!ELEMENT table - - (caption?, tr+)>
-<!ELEMENT tr - O (th|td)*>
-<!ELEMENT (th|td) - O %body.content>
-
-<!ATTLIST table                       -- table element --
-        align     %Where;   #IMPLIED  -- table position relative to window --
-        width     %Length   #IMPLIED  -- table width relative to window --
-        border    %Pixels   #IMPLIED  -- controls frame width around table --
-        cellspacing %Pixels #IMPLIED  -- spacing between cells --
-        cellpadding %Pixels #IMPLIED  -- spacing within cells --
-        >
-
-<!ELEMENT CAPTION - - (%text;)* -- table or figure caption -->
-<!ATTLIST CAPTION
-        align (top|bottom) #IMPLIED
-        >
-
-<!ATTLIST tr                       -- table row --
-        %cell.halign;              -- horizontal alignment in cells --
-        %cell.valign;              -- vertical alignment in cells --
-        >
-
-<!ATTLIST (th|td)                  -- header or data cell --
-        nowrap (nowrap)  #IMPLIED  -- suppress word wrap --
-        rowspan NUMBER   1         -- number of rows spanned by cell --
-        colspan NUMBER   1         -- number of cols spanned by cell --
-        %cell.halign;              -- horizontal alignment in cell --
-        %cell.valign;              -- vertical alignment in cell --
-        width   %Pixels  #IMPLIED  -- suggested width for cell --
-        height  %Pixels  #IMPLIED  -- suggested height for cell --
-        >
-
-<!--================ Document Head ========================================-->
-
-<!-- %head.misc defined earlier on as "SCRIPT|STYLE|META|LINK" -->
-
-<!ENTITY % head.content "TITLE & ISINDEX? & BASE?">
-
-<!ELEMENT HEAD O O  (%head.content) +(%head.misc)>
-
-<!ELEMENT TITLE - -  (#PCDATA)* -(%head.misc)
-          -- The TITLE element is not considered part of the flow of text.
-             It should be displayed, for example as the page header or
-             window title.
-          -->
-
-<!ELEMENT ISINDEX - O EMPTY>
-<!ATTLIST ISINDEX
-        prompt CDATA #IMPLIED -- prompt message -->
-
-<!--
-    The BASE element gives an absolute URL for dereferencing relative
-    URLs, e.g.
-
-         <BASE href="http://foo.com/index.html">
-         ...
-         <IMG SRC="images/bar.gif">
-
-    The image is deferenced to
-
-         http://foo.com/images/bar.gif
-
-   In the absence of a BASE element the document URL should be used.
-   Note that this is not necessarily the same as the URL used to
-   request the document, as the base URL may be overridden by an HTTP
-   header accompanying the document.
--->
-
-<!ELEMENT BASE - O EMPTY>
-<!ATTLIST BASE
-        href %URL  #REQUIRED
-        >
-
-<!ELEMENT META - O EMPTY -- Generic Metainformation -->
-<!ATTLIST META
-        http-equiv  NAME    #IMPLIED  -- HTTP response header name  --
-        name        NAME    #IMPLIED  -- metainformation name       --
-        content     CDATA   #REQUIRED -- associated information     --
-        >
-
-<!-- SCRIPT/STYLE are place holders for transition to next version of HTML -->
-
-<!ELEMENT STYLE  - - (#PCDATA)*  -(%head.misc) -- style info -->
-<!ELEMENT SCRIPT - - (#PCDATA)*  -(%head.misc) -- script statements -->
-
-<!--================ Document Structure ===================================-->
-
-<!ENTITY % version.attr "VERSION CDATA #FIXED '%HTML.Version;'">
-
-<![ %HTML.Deprecated [
-    <!ENTITY % html.content "HEAD, BODY, PLAINTEXT?">
-]]>
-
-<!ENTITY % html.content "HEAD, BODY">
-
-<!ELEMENT HTML O O  (%html.content)>
-<!ATTLIST HTML
-        %version.attr;
-        >
-
Binary file etc/sgml/cdtd/html-3.2f has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/sgml/html-3.2f.dtd	Mon Aug 13 09:08:29 2007 +0200
@@ -0,0 +1,598 @@
+<!--
+        W3C Document Type Definition for the HyperText Markup Language
+        version 3.2 as ratified by a vote of W3C member companies.
+        For more information on W3C look at  URL http://www.w3.org/
+
+        Date: Tuesday January 14th 1996
+
+        Author: Dave Raggett <dsr@w3.org>
+
+        HTML 3.2 aims to capture recommended practice as of early '96
+        and as such to be used as a replacement for HTML 2.0 (RFC 1866).
+        Widely deployed rendering attributes are included where they
+        have been shown to be interoperable. SCRIPT and STYLE are
+        included to smooth the introduction of client-side scripts
+        and style sheets. Browsers must avoid showing the contents
+        of these element Otherwise support for them is not required.
+        ID, CLASS and STYLE attributes are not included in this version
+        of HTML.
+-->
+
+<!ENTITY % HTML.Version
+        "-//W3C//DTD HTML 3.2 Final//EN"
+
+        -- Typical usage:
+
+            <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+            <html>
+            ...
+            </html>
+        --
+        >
+
+<!--================== Deprecated Features Switch =========================-->
+
+<!ENTITY % HTML.Deprecated "INCLUDE">
+
+<!--================== Imported Names =====================================-->
+
+<!ENTITY % Content-Type "CDATA"
+        -- meaning a MIME content type, as per RFC1521
+        -->
+
+<!ENTITY % HTTP-Method "GET | POST"
+        -- as per HTTP specification
+        -->
+
+<!ENTITY % URL "CDATA"
+        -- The term URL means a CDATA attribute
+           whose value is a Uniform Resource Locator,
+           See RFC1808 (June 95) and RFC1738 (Dec 94).
+        -->
+
+<!-- Parameter Entities -->
+
+<!ENTITY % head.misc "SCRIPT|STYLE|META|LINK" -- repeatable head elements -->
+
+<!ENTITY % heading "H1|H2|H3|H4|H5|H6">
+
+<!ENTITY % list "UL | OL |  DIR | MENU">
+
+<![ %HTML.Deprecated [
+    <!ENTITY % preformatted "PRE | XMP | LISTING">
+]]>
+
+<!ENTITY % preformatted "PRE">
+
+<!--================ Character mnemonic entities ==========================-->
+
+<!ENTITY % ISOlat1 PUBLIC
+       "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML">
+%ISOlat1;
+
+<!--================ Entities for special symbols =========================-->
+<!-- &trade and &cbsp are not widely deployed and so not included here -->
+
+<!ENTITY amp    CDATA "&#38;"   -- ampersand          -->
+<!ENTITY gt     CDATA "&#62;"   -- greater than       -->
+<!ENTITY lt     CDATA "&#60;"   -- less than          -->
+
+<!--=================== Text Markup =======================================-->
+
+<!ENTITY % font "TT | I | B  | U | STRIKE | BIG | SMALL | SUB | SUP">
+
+<!ENTITY % phrase "EM | STRONG | DFN | CODE | SAMP | KBD | VAR | CITE">
+
+<!ENTITY % special "A | IMG | APPLET | FONT | BASEFONT | BR | SCRIPT | MAP">
+
+<!ENTITY % form "INPUT | SELECT | TEXTAREA">
+
+<!ENTITY % text "#PCDATA | %font | %phrase | %special | %form">
+
+<!ELEMENT (%font|%phrase) - - (%text)*>
+
+<!-- there are also 16 widely known color names although
+  the resulting colors are implementation dependent:
+
+   aqua, black, blue, fuchsia, gray, green, lime, maroon,
+   navy, olive, purple, red, silver, teal, white, and yellow
+
+ These colors were originally picked as being the standard
+ 16 colors supported with the Windows VGA palette.
+ -->
+
+<!ELEMENT FONT - - (%text)*     -- local change to font -->
+<!ATTLIST FONT
+    size    CDATA   #IMPLIED    -- [+]nn e.g. size="+1", size=4 --
+    color   CDATA   #IMPLIED    -- #RRGGBB in hex, e.g. red: color="#FF0000" --
+    >
+
+<!ELEMENT BASEFONT - O EMPTY    -- base font size (1 to 7)-->
+<!ATTLIST BASEFONT
+    size    CDATA   #IMPLIED    -- e.g. size=3 --
+    >
+
+<!ELEMENT BR    - O EMPTY    -- forced line break -->
+<!ATTLIST BR
+        clear (left|all|right|none) none -- control of text flow --
+        >
+
+<!--================== HTML content models ================================-->
+<!--
+    HTML has three basic content models:
+
+        %text       character level elements and text strings
+        %flow       block-like elements e.g. paragraphs and lists
+        %bodytext   as %flow plus headers H1-H6 and ADDRESS
+-->
+
+<!ENTITY % block
+     "P | %list | %preformatted | DL | DIV | CENTER |
+      BLOCKQUOTE | FORM | ISINDEX | HR | TABLE">
+
+<!-- %flow is used for DD and LI -->
+
+<!ENTITY % flow "(%text | %block)*">
+
+<!--=================== Document Body =====================================-->
+
+<!ENTITY % body.content "(%heading | %text | %block | ADDRESS)*">
+
+<!ENTITY % color "CDATA" -- a color specification: #HHHHHH @@ details? -->
+
+<!ENTITY % body-color-attrs "
+        bgcolor %color #IMPLIED
+        text %color #IMPLIED
+        link %color #IMPLIED
+        vlink %color #IMPLIED
+        alink %color #IMPLIED
+        ">
+
+<!ELEMENT BODY O O  %body.content>
+<!ATTLIST BODY
+        background %URL #IMPLIED  -- texture tile for document background --
+        %body-color-attrs;  -- bgcolor, text, link, vlink, alink --
+        >
+
+<!ENTITY % address.content "((%text;) | P)*">
+
+<!ELEMENT ADDRESS - - %address.content>
+
+<!ELEMENT DIV - - %body.content>
+<!ATTLIST DIV
+        align   (left|center|right) #IMPLIED -- alignment of following text --
+        >
+
+<!-- CENTER is a shorthand for DIV with ALIGN=CENTER -->
+<!ELEMENT center - - %body.content>
+
+<!--================== The Anchor Element =================================-->
+
+<!ELEMENT A - - (%text)* -(A)>
+<!ATTLIST A
+        name    CDATA   #IMPLIED    -- named link end --
+        href    %URL    #IMPLIED    -- URL for linked resource --
+        rel     CDATA   #IMPLIED    -- forward link types --
+        rev     CDATA   #IMPLIED    -- reverse link types --
+        title   CDATA   #IMPLIED    -- advisory title string --
+        >
+
+<!--================== Client-side image maps ============================-->
+
+<!-- These can be placed in the same document or grouped in a
+     separate document although this isn't yet widely supported -->
+
+<!ENTITY % SHAPE "(rect|circle|poly)">
+<!ENTITY % COORDS "CDATA" -- comma separated list of numbers -->
+
+<!ELEMENT MAP - - (AREA)*>
+<!ATTLIST MAP
+    name    CDATA   #IMPLIED
+    >
+
+<!ELEMENT AREA - O EMPTY>
+<!ATTLIST AREA
+    shape   %SHAPE  rect
+    coords  %COORDS #IMPLIED  -- defines coordinates for shape --
+    href    %URL    #IMPLIED  -- this region acts as hypertext link --
+    nohref (nohref) #IMPLIED  -- this region has no action --
+    alt     CDATA   #REQUIRED -- needed for non-graphical user agents --
+    >
+
+<!--================== The LINK Element ==================================-->
+
+<!ENTITY % Types "CDATA"
+        -- See Internet Draft: draft-ietf-html-relrev-00.txt
+           LINK has been part of HTML since the early days
+           although few browsers as yet take advantage of it.
+
+           Relationship values can be used in principle:
+
+                a) for document specific toolbars/menus when used
+                   with the LINK element in the document head:
+                b) to link to a separate style sheet
+                c) to make a link to a script
+                d) by stylesheets to control how collections of
+                   html nodes are rendered into printed documents
+                e) to make a link to a printable version of this document
+                   e.g. a postscript or pdf version
+-->
+
+<!ELEMENT LINK - O EMPTY>
+<!ATTLIST LINK
+        href    %URL    #IMPLIED    -- URL for linked resource --
+        rel     %Types  #IMPLIED    -- forward link types --
+        rev     %Types  #IMPLIED    -- reverse link types --
+        title   CDATA   #IMPLIED    -- advisory title string --
+        >
+
+<!--=================== Images ============================================-->
+
+<!ENTITY % Length "CDATA"   -- nn for pixels or nn% for percentage length -->
+<!ENTITY % Pixels "CDATA"   -- integer representing length in pixels -->
+
+<!-- Suggested widths are used for negotiating image size
+     with the module responsible for painting the image.
+     align=left or right cause image to float to margin
+     and for subsequent text to wrap around image -->
+
+<!ENTITY % IAlign "(top|middle|bottom|left|right)">
+
+<!ELEMENT IMG    - O EMPTY --  Embedded image -->
+<!ATTLIST IMG
+        src     %URL     #REQUIRED  -- URL of image to embed --
+        alt     CDATA    #IMPLIED   -- for display in place of image --
+        align   %IAlign  #IMPLIED   -- vertical or horizontal alignment --
+        height  %Pixels  #IMPLIED   -- suggested height in pixels --
+        width   %Pixels  #IMPLIED   -- suggested width in pixels --
+        border  %Pixels  #IMPLIED   -- suggested link border width --
+        hspace  %Pixels  #IMPLIED   -- suggested horizontal gutter --
+        vspace  %Pixels  #IMPLIED   -- suggested vertical gutter --
+        usemap  %URL     #IMPLIED   -- use client-side image map --
+        ismap   (ismap)  #IMPLIED   -- use server image map --
+        >
+
+<!-- USEMAP points to a MAP element which may be in this document
+  or an external document, although the latter is not widely supported -->
+
+<!--=================== Java APPLET tag ===================================-->
+<!--
+  This tag is supported by all Java enabled browsers. Applet resources
+  (including their classes) are normally loaded relative to the document
+  URL (or <BASE> element if it is defined). The CODEBASE attribute is used
+  to change this default behavior. If the CODEBASE attribute is defined then
+  it specifies a different location to find applet resources. The value
+  can be an absolute URL or a relative URL. The absolute URL is used as is
+  without modification and is not effected by the documents <BASE> element.
+  When the codebase attribute is relative, then it is relative to the
+  document URL (or <BASE> tag if defined).
+-->
+<!ELEMENT APPLET - - (PARAM | %text)*>
+<!ATTLIST APPLET
+        codebase %URL     #IMPLIED   -- code base --
+        code     CDATA    #REQUIRED  -- class file --
+        alt      CDATA    #IMPLIED   -- for display in place of applet --
+        name     CDATA    #IMPLIED   -- applet name --
+        width    %Pixels  #REQUIRED  -- suggested width in pixels --
+        height   %Pixels  #REQUIRED  -- suggested height in pixels --
+        align    %IAlign  #IMPLIED   -- vertical or horizontal alignment --
+        hspace   %Pixels  #IMPLIED   -- suggested horizontal gutter --
+        vspace   %Pixels  #IMPLIED   -- suggested vertical gutter --
+        >
+
+<!ELEMENT PARAM - O EMPTY>
+<!ATTLIST PARAM
+        name    NMTOKEN   #REQUIRED  -- The name of the parameter --
+        value   CDATA     #IMPLIED   -- The value of the parameter --
+        >
+
+<!--
+Here is an example:
+
+    <applet codebase="applets/NervousText"
+        code=NervousText.class
+        width=300
+        height=50>
+    <param name=text value="Java is Cool!">
+    <img src=sorry.gif alt="This looks better with Java support">
+    </applet>
+-->
+
+<!--=================== Horizontal Rule ===================================-->
+
+<!ELEMENT HR    - O EMPTY>
+<!ATTLIST HR
+        align (left|right|center) #IMPLIED
+        noshade (noshade) #IMPLIED
+        size  %Pixels #IMPLIED
+        width %Length #IMPLIED
+        >
+<!--=================== Paragraphs=========================================-->
+
+<!ELEMENT P     - O (%text)*>
+<!ATTLIST P
+        align  (left|center|right) #IMPLIED
+        >
+
+<!--=================== Headings ==========================================-->
+
+<!--
+  There are six levels of headers from H1 (the most important)
+  to H6 (the least important).
+-->
+
+<!ELEMENT ( %heading )  - -  (%text;)*>
+<!ATTLIST ( %heading )
+        align  (left|center|right) #IMPLIED
+        >
+
+<!--=================== Preformatted Text =================================-->
+
+<!-- excludes images and changes in font size -->
+
+<!ENTITY % pre.exclusion "IMG|BIG|SMALL|SUB|SUP|FONT">
+
+<!ELEMENT PRE - - (%text)* -(%pre.exclusion)>
+<!ATTLIST PRE
+        width NUMBER #implied -- is this widely supported? --
+        >
+
+<![ %HTML.Deprecated [
+
+<!ENTITY % literal "CDATA"
+        -- historical, non-conforming parsing mode where
+           the only markup signal is the end tag
+           in full
+        -->
+
+<!ELEMENT (XMP|LISTING) - -  %literal>
+<!ELEMENT PLAINTEXT - O %literal>
+
+]]>
+
+<!--=================== Block-like Quotes =================================-->
+
+<!ELEMENT BLOCKQUOTE - - %body.content>
+
+<!--=================== Lists =============================================-->
+
+<!--
+    HTML 3.2 allows you to control the sequence number for ordered lists.
+    You can set the sequence number with the START and VALUE attributes.
+    The TYPE attribute may be used to specify the rendering of ordered
+    and unordered lists.
+-->
+
+<!-- definition lists - DT for term, DD for its definition -->
+
+<!ELEMENT DL    - -  (DT|DD)+>
+<!ATTLIST DL
+        compact (compact) #IMPLIED -- more compact style --
+        >
+
+<!ELEMENT DT - O  (%text)*>
+<!ELEMENT DD - O  %flow;>
+
+<!-- Ordered lists OL, and unordered lists UL -->
+<!ELEMENT (OL|UL) - -  (LI)+>
+
+<!--
+       Numbering style
+    1   arablic numbers     1, 2, 3, ...
+    a   lower alpha         a, b, c, ...
+    A   upper alpha         A, B, C, ...
+    i   lower roman         i, ii, iii, ...
+    I   upper roman         I, II, III, ...
+
+    The style is applied to the sequence number which by default
+    is reset to 1 for the first list item in an ordered list.
+
+    This can't be expressed directly in SGML due to case folding.
+-->
+
+<!ENTITY % OLStyle "CDATA" -- constrained to: [1|a|A|i|I] -->
+
+<!ATTLIST OL -- ordered lists --
+        type      %OLStyle   #IMPLIED   -- numbering style --
+        start     NUMBER     #IMPLIED   -- starting sequence number --
+        compact  (compact)   #IMPLIED   -- reduced interitem spacing --
+        >
+
+<!-- bullet styles -->
+
+<!ENTITY % ULStyle "disc|square|circle">
+
+<!ATTLIST UL -- unordered lists --
+        type    (%ULStyle)   #IMPLIED   -- bullet style --
+        compact (compact)    #IMPLIED   -- reduced interitem spacing --
+        >
+
+<!ELEMENT (DIR|MENU) - -  (LI)+ -(%block)>
+<!ATTLIST DIR
+        compact (compact) #IMPLIED
+        >
+<!ATTLIST MENU
+        compact (compact) #IMPLIED
+        >
+
+<!-- <DIR>              Directory list                  -->
+<!-- <DIR COMPACT>      Compact list style              -->
+<!-- <MENU>             Menu list                       -->
+<!-- <MENU COMPACT>     Compact list style              -->
+
+<!-- The type attribute can be used to change the bullet style
+     in unordered lists and the numbering style in ordered lists -->
+
+<!ENTITY % LIStyle "CDATA" -- constrained to: "(%ULStyle|%OLStyle)" -->
+
+<!ELEMENT LI - O %flow -- list item -->
+<!ATTLIST LI
+        type    %LIStyle     #IMPLIED   -- list item style --
+        value    NUMBER      #IMPLIED   -- reset sequence number --
+        >
+
+<!--================ Forms ===============================================-->
+
+<!ELEMENT FORM - - %body.content -(FORM)>
+<!ATTLIST FORM
+        action %URL #IMPLIED  -- server-side form handler --
+        method (%HTTP-Method) GET -- see HTTP specification --
+        enctype %Content-Type; "application/x-www-form-urlencoded"
+        >
+
+<!ENTITY % InputType
+        "(TEXT | PASSWORD | CHECKBOX | RADIO | SUBMIT
+            | RESET | FILE | HIDDEN | IMAGE)">
+
+<!ELEMENT INPUT - O EMPTY>
+<!ATTLIST INPUT
+        type %InputType TEXT     -- what kind of widget is needed --
+        name  CDATA #IMPLIED     -- required for all but submit and reset --
+        value CDATA #IMPLIED     -- required for radio and checkboxes --
+        checked (checked) #IMPLIED -- for radio buttons and check boxes --
+        size CDATA  #IMPLIED     -- specific to each type of field --
+        maxlength NUMBER #IMPLIED
+        src   %URL  #IMPLIED     -- for fields with background images --
+        align  (top|middle|bottom|left|right) top -- image alignment --
+        >
+
+<!ELEMENT SELECT - - (OPTION+)>
+<!ATTLIST SELECT
+        name CDATA #REQUIRED
+        size NUMBER #IMPLIED
+        multiple (multiple) #IMPLIED
+        >
+
+<!ELEMENT OPTION - O (#PCDATA)*>
+<!ATTLIST OPTION
+        selected (selected) #IMPLIED
+        value  CDATA  #IMPLIED -- defaults to element content --
+        >
+
+<!-- Multi-line text input field. -->
+
+<!ELEMENT TEXTAREA - - (#PCDATA)*>
+<!ATTLIST TEXTAREA
+        name CDATA #REQUIRED
+        rows NUMBER #REQUIRED
+        cols NUMBER #REQUIRED
+        >
+
+<!--======================= Tables ========================================-->
+
+<!-- Widely deployed subset of the full table standard, see RFC 1942
+     e.g. at http://www.ics.uci.edu/pub/ietf/html/rfc1942.txt -->
+
+<!-- horizontal placement of table relative to window -->
+<!ENTITY % Where "(left|center|right)">
+
+<!-- horizontal alignment attributes for cell contents -->
+<!ENTITY % cell.halign
+        "align  (left|center|right) #IMPLIED"
+        >
+
+<!-- vertical alignment attributes for cell contents -->
+<!ENTITY % cell.valign
+        "valign  (top|middle|bottom)  #IMPLIED"
+        >
+
+<!ELEMENT table - - (caption?, tr+)>
+<!ELEMENT tr - O (th|td)*>
+<!ELEMENT (th|td) - O %body.content>
+
+<!ATTLIST table                       -- table element --
+        align     %Where;   #IMPLIED  -- table position relative to window --
+        width     %Length   #IMPLIED  -- table width relative to window --
+        border    %Pixels   #IMPLIED  -- controls frame width around table --
+        cellspacing %Pixels #IMPLIED  -- spacing between cells --
+        cellpadding %Pixels #IMPLIED  -- spacing within cells --
+        >
+
+<!ELEMENT CAPTION - - (%text;)* -- table or figure caption -->
+<!ATTLIST CAPTION
+        align (top|bottom) #IMPLIED
+        >
+
+<!ATTLIST tr                       -- table row --
+        %cell.halign;              -- horizontal alignment in cells --
+        %cell.valign;              -- vertical alignment in cells --
+        >
+
+<!ATTLIST (th|td)                  -- header or data cell --
+        nowrap (nowrap)  #IMPLIED  -- suppress word wrap --
+        rowspan NUMBER   1         -- number of rows spanned by cell --
+        colspan NUMBER   1         -- number of cols spanned by cell --
+        %cell.halign;              -- horizontal alignment in cell --
+        %cell.valign;              -- vertical alignment in cell --
+        width   %Pixels  #IMPLIED  -- suggested width for cell --
+        height  %Pixels  #IMPLIED  -- suggested height for cell --
+        >
+
+<!--================ Document Head ========================================-->
+
+<!-- %head.misc defined earlier on as "SCRIPT|STYLE|META|LINK" -->
+
+<!ENTITY % head.content "TITLE & ISINDEX? & BASE?">
+
+<!ELEMENT HEAD O O  (%head.content) +(%head.misc)>
+
+<!ELEMENT TITLE - -  (#PCDATA)* -(%head.misc)
+          -- The TITLE element is not considered part of the flow of text.
+             It should be displayed, for example as the page header or
+             window title.
+          -->
+
+<!ELEMENT ISINDEX - O EMPTY>
+<!ATTLIST ISINDEX
+        prompt CDATA #IMPLIED -- prompt message -->
+
+<!--
+    The BASE element gives an absolute URL for dereferencing relative
+    URLs, e.g.
+
+         <BASE href="http://foo.com/index.html">
+         ...
+         <IMG SRC="images/bar.gif">
+
+    The image is deferenced to
+
+         http://foo.com/images/bar.gif
+
+   In the absence of a BASE element the document URL should be used.
+   Note that this is not necessarily the same as the URL used to
+   request the document, as the base URL may be overridden by an HTTP
+   header accompanying the document.
+-->
+
+<!ELEMENT BASE - O EMPTY>
+<!ATTLIST BASE
+        href %URL  #REQUIRED
+        >
+
+<!ELEMENT META - O EMPTY -- Generic Metainformation -->
+<!ATTLIST META
+        http-equiv  NAME    #IMPLIED  -- HTTP response header name  --
+        name        NAME    #IMPLIED  -- metainformation name       --
+        content     CDATA   #REQUIRED -- associated information     --
+        >
+
+<!-- SCRIPT/STYLE are place holders for transition to next version of HTML -->
+
+<!ELEMENT STYLE  - - (#PCDATA)*  -(%head.misc) -- style info -->
+<!ELEMENT SCRIPT - - (#PCDATA)*  -(%head.misc) -- script statements -->
+
+<!--================ Document Structure ===================================-->
+
+<!ENTITY % version.attr "VERSION CDATA #FIXED '%HTML.Version;'">
+
+<![ %HTML.Deprecated [
+    <!ENTITY % html.content "HEAD, BODY, PLAINTEXT?">
+]]>
+
+<!ENTITY % html.content "HEAD, BODY">
+
+<!ELEMENT HTML O O  (%html.content)>
+<!ATTLIST HTML
+        %version.attr;
+        >
+
--- a/lib-src/update-elc.sh	Mon Aug 13 09:07:39 2007 +0200
+++ b/lib-src/update-elc.sh	Mon Aug 13 09:08:29 2007 +0200
@@ -54,9 +54,16 @@
 
 # Only use Mule XEmacs to compile Mule-specific elisp dirs
 echo "Checking for Mule support..."
-lisp_prog='(when (featurep (quote mule)) (message "yes"))'
-if test -z `$REAL -batch -no-site-file -eval "$lisp_prog" 2>&1` ; then
+lisp_prog='(princ (featurep (quote mule)))'
+mule_p="`$REAL -batch -no-site-file -eval \"$lisp_prog\"`"
+if test "$mule_p" = nil ; then
+  echo No
   ignore_dirs="$ignore_dirs mule"
+elif test "$mule_p" = t; then
+  echo Yes
+else
+  echo "Error determining presence of mule support"
+  exit 1;
 fi
 
 # first recompile the byte-compiler, so that the other compiles take place
--- a/lisp/ChangeLog	Mon Aug 13 09:07:39 2007 +0200
+++ b/lisp/ChangeLog	Mon Aug 13 09:08:29 2007 +0200
@@ -1,3 +1,11 @@
+Thu Jan 23 01:40:53 1997  Steven L Baur  <steve@altair.xemacs.org>
+
+	* psgml/psgml-html.el (html-mode): Set up friendlier syntax
+	table.
+
+	* psgml/psgml.el (sgml-running-xemacs): Remove
+	sgml-mode-syntax-table since it has been superseded.
+
 Thu Jan  9 13:32:01 1997  Jacques Duthen Prestataire  <duthen@cegelec-red.fr>
 
 	* ps-print.el: Merge patch from [simon] Oct 8, 1996 Simon Marshall
--- a/lisp/modes/tex-mode.el	Mon Aug 13 09:07:39 2007 +0200
+++ b/lisp/modes/tex-mode.el	Mon Aug 13 09:08:29 2007 +0200
@@ -65,12 +65,18 @@
   "*User defined LaTeX block names.
 Combined with `standard-latex-block-names' for minibuffer completion.")
 
+(defvar tex-latex-document-regex "documentstyle\\|documentclass"
+  "matches the first command of a LaTeX document")
+
 (defvar slitex-run-command "slitex"
   "*Command used to run SliTeX subjob.
 If this string contains an asterisk (*), it will be replaced by the
 filename; if not, the name of the file, preceded by blank, will be added to
 this string.")
 
+(defvar tex-slitex-document-regex "documentstyle{slides}"
+  "Matches the first command of a slitex document")
+  
 (defvar tex-bibtex-command "bibtex"
   "*Command used by `tex-bibtex-file' to gather bibliographic data.
 If this string contains an asterisk (*), it will be replaced by the
@@ -215,8 +221,8 @@
 				    (beginning-of-line)
 				    (search-forward "%" search-end t))))))
       (if (and slash (not comment))
-	  (setq mode (if (looking-at "documentstyle")
-                         (if (looking-at "documentstyle{slides}")
+	  (setq mode (if (looking-at tex-latex-document-regex)
+                         (if (looking-at tex-slitex-document-regex)
                              'slitex-mode
                            'latex-mode)
 		       'plain-tex-mode))))
--- a/lisp/psgml/psgml-html.el	Mon Aug 13 09:07:39 2007 +0200
+++ b/lisp/psgml/psgml-html.el	Mon Aug 13 09:08:29 2007 +0200
@@ -198,6 +198,14 @@
 
   (set (make-local-variable 'sgml-custom-markup)
        '(("<A>" "<A HREF=\"\">\r</a>")))
+
+  ;; Set up the syntax table.
+  (modify-syntax-entry ?< "(>" html-mode-syntax-table)
+  (modify-syntax-entry ?> ")<" html-mode-syntax-table)
+  (modify-syntax-entry ?\" ".   " html-mode-syntax-table)
+  (modify-syntax-entry ?\\ ".   " html-mode-syntax-table)
+  (modify-syntax-entry ?'  "w   " html-mode-syntax-table)
+
   ; sigh ...  need to call this now to get things working.
   (sgml-build-custom-menus)
   (add-submenu nil sgml-html-menu "SGML")
--- a/lisp/psgml/psgml.el	Mon Aug 13 09:07:39 2007 +0200
+++ b/lisp/psgml/psgml.el	Mon Aug 13 09:08:29 2007 +0200
@@ -1,5 +1,5 @@
 ;;; psgml.el --- SGML-editing mode with parsing support
-;; $Id: psgml.el,v 1.3 1997/01/23 05:29:40 steve Exp $
+;; $Id: psgml.el,v 1.4 1997/01/26 00:21:43 steve Exp $
 
 ;; Copyright (C) 1993, 1994, 1995, 1996 Lennart Staflin
 ;; Copyright (C) 1992 Free Software Foundation, Inc.
@@ -72,19 +72,6 @@
   "Abbrev table in use in sgml-mode.")
 (define-abbrev-table 'sgml-mode-abbrev-table ())
 
-;;; Wing addition
-(defvar sgml-mode-syntax-table nil
-  "Syntax table used in sgml mode.")
-
-(if sgml-mode-syntax-table
-    ()
-  (setq sgml-mode-syntax-table (make-syntax-table))
-  (modify-syntax-entry ?< "(>" sgml-mode-syntax-table)
-  (modify-syntax-entry ?> ")<" sgml-mode-syntax-table)
-  (modify-syntax-entry ?\" ".   " sgml-mode-syntax-table)
-  (modify-syntax-entry ?\\ ".   " sgml-mode-syntax-table)
-  (modify-syntax-entry ?'  "w   " sgml-mode-syntax-table))
-
 (defvar sgml-running-xemacs
   (not (not (string-match "Lucid\\|XEmacs" emacs-version))))
 
--- a/lisp/version.el	Mon Aug 13 09:07:39 2007 +0200
+++ b/lisp/version.el	Mon Aug 13 09:08:29 2007 +0200
@@ -25,7 +25,7 @@
 (defconst emacs-version "20.0"
   "Version numbers of this version of Emacs.")
 
-(setq emacs-version (purecopy (concat emacs-version " XEmacs Lucid (beta91)")))
+(setq emacs-version (purecopy (concat emacs-version " XEmacs Lucid (beta92)")))
 
 (defconst emacs-major-version
   (progn (or (string-match "^[0-9]+" emacs-version)
--- a/lwlib/xlwmenu.c	Mon Aug 13 09:07:39 2007 +0200
+++ b/lwlib/xlwmenu.c	Mon Aug 13 09:08:29 2007 +0200
@@ -383,7 +383,7 @@
 	{
 	  *out++ = firstp ? tolower (ch) : toupper (ch);
 	  firstp = False;
-	  while ((ch = massaged_resource_char[(unsigned char) *in++]) != NULL)
+	  while ((ch = massaged_resource_char[(unsigned char) *in++]) != '\0')
 	    *out++ = ch;
 	  if (!*(in-1))		/* Overshot the NULL byte? */
 	    break;
--- a/src/ChangeLog	Mon Aug 13 09:07:39 2007 +0200
+++ b/src/ChangeLog	Mon Aug 13 09:08:29 2007 +0200
@@ -1,3 +1,8 @@
+Thu Jan 23 10:41:19 1997  Steven L. Baur  <steve@altair.xemacs.org>
+
+	* puresize.h: Increase SUNPRO usage to reflect tm & cc-mode.
+	Decrease BASE_PURESIZE and increase MULE_PURESIZE_EXTRA.
+
 Wed Jan 22 21:09:52 1997  Steven L Baur  <steve@altair.xemacs.org>
 	* puresize.h (BASE_PURESIZE): Tighten up.
 
--- a/src/buffer.h	Mon Aug 13 09:07:39 2007 +0200
+++ b/src/buffer.h	Mon Aug 13 09:08:29 2007 +0200
@@ -560,7 +560,6 @@
 
 #endif /* not MULE */
 
-
 #define charptr_emchar_n(ptr, offset) \
   charptr_emchar (charptr_n_addr (ptr, offset))
 
@@ -1387,7 +1386,7 @@
   __gseda_ptr__ = convert_to_external_format (string_data (__gseda_s__),   \
 					      string_length (__gseda_s__), \
 					      &__gseda_len__, fmt);	   \
-  (stick_value_here) = (CONST Extbyte *) alloca (1 + __gseda_len__);			   \
+  (stick_value_here) = (CONST Extbyte *) alloca (1 + __gseda_len__);	   \
   memcpy ((Extbyte *) stick_value_here, __gseda_ptr__, 1 + __gseda_len__); \
   (stick_len_here) = __gseda_len__;					   \
 } while (0)
@@ -1465,7 +1464,6 @@
 #define BYTE_ASCII_P(byte) 1
 
 #endif /* ! MULE */
-
 
 /************************************************************************/
 /*                                                                      */
--- a/src/getloadavg.c	Mon Aug 13 09:07:39 2007 +0200
+++ b/src/getloadavg.c	Mon Aug 13 09:08:29 2007 +0200
@@ -1,21 +1,24 @@
 /* Get the system load averages.
    Copyright (C) 1985, 86, 87, 88, 89, 91, 92, 93, 1994, 1995
-   	Free Software Foundation, Inc.
+	Free Software Foundation, Inc.
+
+This file is part of XEmacs.
 
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2, or (at your option)
-   any later version.
+XEmacs is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2, or (at your option) any
+later version.
 
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
+XEmacs is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+for more details.
 
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
-   USA.  */
+You should have received a copy of the GNU General Public License
+along with XEmacs; see the file COPYING.  If not, write to
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA.  */
+
 
 /* Compile-time symbols that this file uses:
 
@@ -95,7 +98,6 @@
 
 #ifndef HAVE_GETLOADAVG
 
-
 /* The existing Emacs configuration files define a macro called
    LOAD_AVE_CVT, which accepts a value of type LOAD_AVE_TYPE, and
    returns the load average multiplied by 100.  What we actually want
@@ -517,9 +519,7 @@
    or -1 if an error occurred.  */
 
 int
-getloadavg (loadavg, nelem)
-     double loadavg[];
-     int nelem;
+getloadavg (double loadavg[], int nelem)
 {
   int elem = 0;			/* Return value.  */
 
@@ -890,7 +890,7 @@
       nl[0].n_un.n_name = LDAV_SYMBOL;
       nl[1].n_un.n_name = 0;
 #else /* not NLIST_NAME_UNION */
-      nl[0].n_name = LDAV_SYMBOL;
+      nl[0].n_name = (char *) LDAV_SYMBOL;
       nl[1].n_name = 0;
 #endif /* not NLIST_NAME_UNION */
 #endif /* NLIST_STRUCT */
@@ -1002,9 +1002,7 @@
 
 #ifdef TEST
 void
-main (argc, argv)
-     int argc;
-     char **argv;
+main (int argc, char **argv)
 {
   int naptime = 0;
 
--- a/src/glyphs.c	Mon Aug 13 09:07:39 2007 +0200
+++ b/src/glyphs.c	Mon Aug 13 09:08:29 2007 +0200
@@ -1734,7 +1734,7 @@
 	((lisp_fn_t) normalize_image_instantiator,
 	 Qnil, Qimage, ERROR_ME_NOT, 3, instantiator, contype,
 	 make_int (XIMAGE_SPECIFIER_ALLOWED (specifier)));
-      
+
       if (!NILP (newinst))
 	{
 	  Lisp_Object newtag;
--- a/src/lisp.h	Mon Aug 13 09:07:39 2007 +0200
+++ b/src/lisp.h	Mon Aug 13 09:08:29 2007 +0200
@@ -784,9 +784,9 @@
 /* For a list that's known to be in valid list format, where we may
    be deleting the current element out of the list --
    will abort() if the list is not in valid format */
-#define LIST_LOOP_DELETING(consvar, nextconsvar, list)		\
-  for (consvar = list;						\
-       !NILP (consvar) ? (nextconsvar = XCDR (consvar), 1) : 0;	\
+#define LIST_LOOP_DELETING(consvar, nextconsvar, list)			\
+  for (consvar = list;							\
+       !NILP (consvar) ? (nextconsvar = XCDR (consvar), 1) : 0;		\
        consvar = nextconsvar)
 
 /* For a list that may not be in valid list format --
@@ -1060,7 +1060,7 @@
 /*********** subr ***********/
 
 typedef Lisp_Object (*lisp_fn_t) (Lisp_Object, ...);
-     
+
 struct Lisp_Subr
 {
   struct lrecord_header lheader;
@@ -1169,24 +1169,24 @@
 /* These are always continuable because they change their arguments
    even when no error is signalled. */
 
-#define CHECK_INT_OR_FLOAT_COERCE_MARKER(x) do		\
-{ if (INTP (x) || FLOATP (x))				\
-     ;							\
-   else if (MARKERP (x))				\
-     x = make_int (marker_position (x));		\
-    else						\
-     x = wrong_type_argument (Qnumber_or_marker_p, x);	\
+#define CHECK_INT_OR_FLOAT_COERCE_MARKER(x) do				\
+{ if (INTP (x) || FLOATP (x))						\
+    ;									\
+  else if (MARKERP (x))							\
+    x = make_int (marker_position (x));					\
+  else									\
+    x = wrong_type_argument (Qnumber_or_marker_p, x);			\
 } while (0)
 
-#define CHECK_INT_OR_FLOAT_COERCE_CHAR_OR_MARKER(x) do		\
-{ if (INTP (x) || FLOATP (x))					\
-     ;								\
-   else if (CHARP (x))						\
-     x = make_int (XCHAR (x));					\
-   else if (MARKERP (x))					\
-     x = make_int (marker_position (x));			\
-    else							\
-     x = wrong_type_argument (Qnumber_char_or_marker_p, x);	\
+#define CHECK_INT_OR_FLOAT_COERCE_CHAR_OR_MARKER(x) do			\
+{ if (INTP (x) || FLOATP (x))						\
+    ;									\
+  else if (CHARP (x))							\
+    x = make_int (XCHAR (x));						\
+  else if (MARKERP (x))							\
+    x = make_int (marker_position (x));					\
+  else									\
+    x = wrong_type_argument (Qnumber_char_or_marker_p, x);		\
 } while (0)
 
 # define INT_OR_FLOATP(x) (INTP (x) || FLOATP (x))
@@ -1246,33 +1246,33 @@
   do { if (!NATNUMP (x)) x = wrong_type_argument (Qnatnump, x); } while (0)
 
 /* next three always continuable because they coerce their arguments. */
-#define CHECK_INT_COERCE_CHAR(x) do			\
-{ if (INTP (x))						\
-    ;							\
-  else if (CHARP (x))					\
-    x = make_int (XCHAR (x));				\
-  else							\
-    x = wrong_type_argument (Qinteger_or_char_p, x);	\
+#define CHECK_INT_COERCE_CHAR(x) do					\
+{ if (INTP (x))								\
+    ;									\
+  else if (CHARP (x))							\
+    x = make_int (XCHAR (x));						\
+  else									\
+    x = wrong_type_argument (Qinteger_or_char_p, x);			\
 } while (0)
 
-#define CHECK_INT_COERCE_MARKER(x) do			\
-{ if (INTP (x))						\
-    ;							\
-  else if (MARKERP (x))					\
-    x = make_int (marker_position (x));			\
-  else							\
-    x = wrong_type_argument (Qinteger_or_marker_p, x);	\
+#define CHECK_INT_COERCE_MARKER(x) do					\
+{ if (INTP (x))								\
+    ;									\
+  else if (MARKERP (x))							\
+    x = make_int (marker_position (x));					\
+  else									\
+    x = wrong_type_argument (Qinteger_or_marker_p, x);			\
 } while (0)
 
-#define CHECK_INT_COERCE_CHAR_OR_MARKER(x) do			\
-{ if (INTP (x))							\
-    ;								\
-  else if (CHARP (x))						\
-    x = make_int (XCHAR (x));					\
-  else if (MARKERP (x))						\
-    x = make_int (marker_position (x));				\
-  else								\
-    x = wrong_type_argument (Qinteger_char_or_marker_p, x);	\
+#define CHECK_INT_COERCE_CHAR_OR_MARKER(x) do				\
+{ if (INTP (x))								\
+    ;									\
+  else if (CHARP (x))							\
+    x = make_int (XCHAR (x));						\
+  else if (MARKERP (x))							\
+    x = make_int (marker_position (x));					\
+  else									\
+    x = wrong_type_argument (Qinteger_char_or_marker_p, x);		\
 } while (0)
 
 /*********** pure space ***********/
@@ -1444,7 +1444,7 @@
 #define DEFUN_6(a,b,c,d,e,f)	 DEFUN_5(a,b,c,d,e),	 Lisp_Object f
 #define DEFUN_7(a,b,c,d,e,f,g)	 DEFUN_6(a,b,c,d,e,f),	 Lisp_Object g
 #define DEFUN_8(a,b,c,d,e,f,g,h) DEFUN_7(a,b,c,d,e,f,g), Lisp_Object h
-			
+
 /* WARNING: If you add defines here for higher values of maxargs,
    make sure to also fix the clauses in primitive_funcall(),
    and change the define of SUBR_MAX_ARGS above.  */
@@ -1473,23 +1473,23 @@
 void signal_quit (void);
 
 /* Nonzero if ought to quit now.  */
-#define QUITP						\
-  ((quit_check_signal_happened ? check_quit () : 0),	\
-   (!NILP (Vquit_flag) && (NILP (Vinhibit_quit)		\
-       || EQ (Vquit_flag, Qcritical))))
+#define QUITP								\
+  ((quit_check_signal_happened ? check_quit () : 0),			\
+   (!NILP (Vquit_flag) && (NILP (Vinhibit_quit)				\
+			   || EQ (Vquit_flag, Qcritical))))
 
 /* QUIT used to call QUITP, but there are some places where QUITP
    is called directly, and check_what_happened() should only be called
    when Emacs is actually ready to quit because it could do things
    like switch threads. */
-#define INTERNAL_QUITP						\
-  ((something_happened ? check_what_happened () : 0),		\
-   (!NILP (Vquit_flag) &&					\
+#define INTERNAL_QUITP							\
+  ((something_happened ? check_what_happened () : 0),			\
+   (!NILP (Vquit_flag) &&						\
     (NILP (Vinhibit_quit) || EQ (Vquit_flag, Qcritical))))
 
-#define INTERNAL_REALLY_QUITP					\
-  (check_what_happened (),					\
-   (!NILP (Vquit_flag) &&					\
+#define INTERNAL_REALLY_QUITP						\
+  (check_what_happened (),						\
+   (!NILP (Vquit_flag) &&						\
     (NILP (Vinhibit_quit) || EQ (Vquit_flag, Qcritical))))
 
 /* Check quit-flag and quit if it is non-nil.  Also do any other things
@@ -1595,7 +1595,7 @@
 #ifdef DEBUG_GCPRO
 
 void debug_gcpro1 ();
-void debug_gcpro2 (),
+void debug_gcpro2 ();
 void debug_gcpro3 ();
 void debug_gcpro4 ();
 void debug_gcpro5 ();
@@ -1758,39 +1758,39 @@
 #endif
 
 /* Evaluate expr, UNGCPRO, and then return the value of expr.  */
-#define RETURN_UNGCPRO(expr) do	\
-{					\
-  Lisp_Object ret_ungc_val = (expr);	\
-  UNGCPRO;				\
-  RETURN__ ret_ungc_val;		\
+#define RETURN_UNGCPRO(expr) do						\
+{									\
+  Lisp_Object ret_ungc_val = (expr);					\
+  UNGCPRO;								\
+  RETURN__ ret_ungc_val;						\
 } while (0)
 
 /* Evaluate expr, NUNGCPRO, UNGCPRO, and then return the value of expr.  */
-#define RETURN_NUNGCPRO(expr) do	\
-{					\
-  Lisp_Object ret_ungc_val = (expr);	\
-  NUNGCPRO;				\
-  UNGCPRO;				\
-  RETURN__ ret_ungc_val;		\
+#define RETURN_NUNGCPRO(expr) do					\
+{									\
+  Lisp_Object ret_ungc_val = (expr);					\
+  NUNGCPRO;								\
+  UNGCPRO;								\
+  RETURN__ ret_ungc_val;						\
 } while (0)
 
 /* Evaluate expr, NNUNGCPRO, NUNGCPRO, UNGCPRO, and then return the
    value of expr.  */
-#define RETURN_NNUNGCPRO(expr)	do	\
-{					\
-  Lisp_Object ret_ungc_val = (expr);	\
-  NNUNGCPRO;				\
-  NUNGCPRO;				\
-  UNGCPRO;				\
-  RETURN__ ret_ungc_val;		\
+#define RETURN_NNUNGCPRO(expr) do					\
+{									\
+  Lisp_Object ret_ungc_val = (expr);					\
+  NNUNGCPRO;								\
+  NUNGCPRO;								\
+  UNGCPRO;								\
+  RETURN__ ret_ungc_val;						\
 } while (0)
 
 /* Evaluate expr, return it if it's not Qunbound. */
-#define RETURN_IF_NOT_UNBOUND(expr) do	\
-{					\
-  Lisp_Object ret_nunb_val = (expr);	\
-  if (!UNBOUNDP (ret_nunb_val))		\
-    RETURN__ ret_nunb_val;	 	\
+#define RETURN_IF_NOT_UNBOUND(expr) do					\
+{									\
+  Lisp_Object ret_nunb_val = (expr);					\
+  if (!UNBOUNDP (ret_nunb_val))						\
+    RETURN__ ret_nunb_val;	 					\
 } while (0)
 
 /* Call staticpro (&var) to protect static variable `var'. */
--- a/src/puresize.h	Mon Aug 13 09:07:39 2007 +0200
+++ b/src/puresize.h	Mon Aug 13 09:08:29 2007 +0200
@@ -32,9 +32,9 @@
    things configured in. */
 
 #if (LONGBITS == 64)
-# define BASE_PURESIZE 847000
+# define BASE_PURESIZE 893000
 #else
-# define BASE_PURESIZE 467000
+# define BASE_PURESIZE 513000
 #endif
 
 /* If any particular systems need to change the base puresize, they
@@ -79,9 +79,9 @@
 
 #ifdef MULE
 # if (LONGBITS == 64)
-#  define MULE_PURESIZE_EXTRA 144000
+#  define MULE_PURESIZE_EXTRA 99000
 # else
-#  define MULE_PURESIZE_EXTRA 123000
+#  define MULE_PURESIZE_EXTRA 78000
 # endif
 #else
 # define MULE_PURESIZE_EXTRA 0
@@ -110,7 +110,11 @@
 /* Extra amount of purespace needed for Sunpro builds. */
 
 #ifdef SUNPRO
-# define SUNPRO_PURESIZE_EXTRA 40000
+#ifdef MULE /* ~50k extra for tm */
+# define SUNPRO_PURESIZE_EXTRA 135000
+#else
+#define SUNPRO_PURESIZE_EXTRA 85000
+#endif
 #else
 # define SUNPRO_PURESIZE_EXTRA 0
 #endif
--- a/src/ralloc.c	Mon Aug 13 09:07:39 2007 +0200
+++ b/src/ralloc.c	Mon Aug 13 09:08:29 2007 +0200
@@ -1266,18 +1266,18 @@
 syms_of_ralloc (void)
 {
 #ifdef MMAP_METERING
-  defsymbol (&Qmm_times_mapped, "mmap-times-mapped" );
-  defsymbol (&Qmm_pages_mapped, "mmap-pages-mapped" );
-  defsymbol (&Qmm_times_unmapped, "mmap-times-unmapped" );
-  defsymbol (&Qmm_times_remapped, "mmap-times-remapped" );
-  defsymbol (&Qmm_didnt_copy, "mmap-didnt-copy" );
-  defsymbol (&Qmm_pages_copied, "mmap-pages-copied" );
-  defsymbol (&Qmm_average_bumpval, "mmap-average-bumpval" );
-  defsymbol (&Qmm_wastage, "mmap-wastage" );
-  defsymbol (&Qmm_live_pages, "mmap-live-pages" );
-  defsymbol (&Qmm_addr_looked_up, "mmap-had-to-look-up-address" );
-  defsymbol (&Qmm_hash_worked, "mmap-hash-table-worked" );
-  defsymbol (&Qmm_addrlist_size, "mmap-addrlist-size" );
+  defsymbol (&Qmm_times_mapped, "mmap-times-mapped");
+  defsymbol (&Qmm_pages_mapped, "mmap-pages-mapped");
+  defsymbol (&Qmm_times_unmapped, "mmap-times-unmapped");
+  defsymbol (&Qmm_times_remapped, "mmap-times-remapped");
+  defsymbol (&Qmm_didnt_copy, "mmap-didnt-copy");
+  defsymbol (&Qmm_pages_copied, "mmap-pages-copied");
+  defsymbol (&Qmm_average_bumpval, "mmap-average-bumpval");
+  defsymbol (&Qmm_wastage, "mmap-wastage");
+  defsymbol (&Qmm_live_pages, "mmap-live-pages");
+  defsymbol (&Qmm_addr_looked_up, "mmap-had-to-look-up-address");
+  defsymbol (&Qmm_hash_worked, "mmap-hash-table-worked");
+  defsymbol (&Qmm_addrlist_size, "mmap-addrlist-size");
   DEFSUBR (Fmmap_allocator_status);
 #endif /* MMAP_METERING */
 }
--- a/src/scrollbar-x.c	Mon Aug 13 09:07:39 2007 +0200
+++ b/src/scrollbar-x.c	Mon Aug 13 09:08:29 2007 +0200
@@ -58,7 +58,7 @@
 static int
 x_inhibit_scrollbar_thumb_size_change (void)
 {
-  /* Doeesn't work with Athena */
+  /* Doesn't work with Athena */
 #if defined (LWLIB_SCROLLBARS_MOTIF) || defined (LWLIB_SCROLLBARS_LUCID)
   return inhibit_thumb_size_change;
 #else
@@ -597,8 +597,9 @@
       SCROLLBAR_X_VDRAG_ORIG_VALUE (instance) = data->slider_value;
       SCROLLBAR_X_VDRAG_ORIG_WINDOW_START (instance) =
 	XINT (Fwindow_start (win));
+#else
+      stupid_vertical_scrollbar_drag_hack = 0;
 #endif
-      stupid_vertical_scrollbar_drag_hack = 0;
       break;
 
     case SCROLLBAR_DRAG: