Subject: Building the xsrc docs
To: None <tech-x11@netbsd.org>
From: Frederick Bruckman <fb@enteract.com>
List: tech-x11
Date: 01/22/2000 14:10:02
Has anyone else actually tried to build the docs that come with xsrc?

The following patches allow the docs to actually build with our groff,
and with the latex that comes with our packaged teTeX. Still, only a few
of the docs built will be installed (into /usr/X11R6/lib/X11/doc/Postscript),
and groff still whines in places.

Adding the following to /usr/xsrc/xc/config/cf/host.def is sufficient to
activate the docs build on "make build" in /usr/xsrc:

---8<----cut here------------------------------------
#ifndef BuildMiscDocs
# define BuildMiscDocs  YES
#endif

#ifndef BuildSpecsDocs
# define BuildSpecsDocs YES
#endif
-----------------------------------------------------

Comments?


Index: specs/Xext/buffer.ms
===================================================================
RCS file: /cvsroot/xsrc/xc/doc/specs/Xext/buffer.ms,v
retrieving revision 1.1.1.1
diff -c -r1.1.1.1 buffer.ms
*** buffer.ms	1997/03/15 06:17:23	1.1.1.1
--- buffer.ms	2000/01/22 20:00:02
***************
*** 99,105 ****
  .LP
  Normal windows are created using the standard \fBCreateWindow\fP request:
  .DS
! .ft 8
  CreateWindow
  	parent          : WINDOW
  	w_id            : WINDOW
--- 99,105 ----
  .LP
  Normal windows are created using the standard \fBCreateWindow\fP request:
  .DS
! .ft CR
  CreateWindow
  	parent          : WINDOW
  	w_id            : WINDOW
***************
*** 198,204 ****
  The new request, \fBCreateImageBuffers\fP, creates a group of
  image buffers and associates them with a normal X window:
  .DS
! .ft 8
  CreateImageBuffers
  	w_id           : WINDOW
  	buffers        : LISTofBUFFER
--- 198,204 ----
  The new request, \fBCreateImageBuffers\fP, creates a group of
  image buffers and associates them with a normal X window:
  .DS
! .ft CR
  CreateImageBuffers
  	w_id           : WINDOW
  	buffers        : LISTofBUFFER
***************
*** 309,315 ****
  .LP
  To display an image buffer the following request can be used:
  .DS
! .ft 8
  DisplayImageBuffers
  	buffers         : LISTofBUFFER
  	min_delay       : CARD16
--- 309,315 ----
  .LP
  To display an image buffer the following request can be used:
  .DS
! .ft CR
  DisplayImageBuffers
  	buffers         : LISTofBUFFER
  	min_delay       : CARD16
***************
*** 389,395 ****
  To explicitly clear a rectangular area of an image buffer to
  the window background, the following request can be used:
  .DS
! .ft 8
  ClearImageBufferArea
  	buffer          : BUFFER
  	x, y            : INT16
--- 389,395 ----
  To explicitly clear a rectangular area of an image buffer to
  the window background, the following request can be used:
  .DS
! .ft CR
  ClearImageBufferArea
  	buffer          : BUFFER
  	x, y            : INT16
***************
*** 415,421 ****
  The group of image buffers allocated by a \fBCreateImageBuffers\fP
  request can be destroyed with the following request:
  .DS
! .ft 8
  DestroyImageBuffers
  	w_id		: WINDOW
  
--- 415,421 ----
  The group of image buffers allocated by a \fBCreateImageBuffers\fP
  request can be destroyed with the following request:
  .DS
! .ft CR
  DestroyImageBuffers
  	w_id		: WINDOW
  
***************
*** 433,439 ****
  The following attributes will be associated with each window that
  is multi-buffered:
  .DS
! .ft 8
  	displayed_buffer : CARD16
  	update_action    : {Undefined,Background,Untouched,Copied}
  	update_hint      : {Frequent,Intermittent,Static}
--- 433,439 ----
  The following attributes will be associated with each window that
  is multi-buffered:
  .DS
! .ft CR
  	displayed_buffer : CARD16
  	update_action    : {Undefined,Background,Untouched,Copied}
  	update_hint      : {Frequent,Intermittent,Static}
***************
*** 451,457 ****
  in the \fIbuffers\fP list.
  The above attributes can be queried with the following request:
  .DS
! .ft 8
  GetMultiBufferAttributes
  	w_id             : WINDOW
  	=>
--- 451,457 ----
  in the \fIbuffers\fP list.
  The above attributes can be queried with the following request:
  .DS
! .ft CR
  GetMultiBufferAttributes
  	w_id             : WINDOW
  	=>
***************
*** 471,477 ****
  to set this attribute, a generic set request is provided to
  allow for future expansion:
  .DS
! .ft 8
  SetMultiBufferAttributes
  	w_id            : WINDOW
  	value_mask      : BITMASK
--- 471,477 ----
  to set this attribute, a generic set request is provided to
  allow for future expansion:
  .DS
! .ft CR
  SetMultiBufferAttributes
  	w_id            : WINDOW
  	value_mask      : BITMASK
***************
*** 485,491 ****
  The following attributes are maintained for each buffer of a
  multi-buffered window:
  .DS
! .ft 8
  	window           : WINDOW
  	event_mask       : SETofEVENT
  	index            : CARD16
--- 485,491 ----
  The following attributes are maintained for each buffer of a
  multi-buffered window:
  .DS
! .ft CR
  	window           : WINDOW
  	event_mask       : SETofEVENT
  	index            : CARD16
***************
*** 503,509 ****
  For non-stereo windows, this attribute will be set to \fIMono\fP.
  These attributes can be queried with the following request:
  .DS
! .ft 8
  GetBufferAttributes
  	buffer          : BUFFER
  	=>
--- 503,509 ----
  For non-stereo windows, this attribute will be set to \fIMono\fP.
  These attributes can be queried with the following request:
  .DS
! .ft CR
  GetBufferAttributes
  	buffer          : BUFFER
  	=>
***************
*** 527,533 ****
  to set this attribute, a generic set request is provided to
  allow for future expansion:
  .DS
! .ft 8
  SetBufferAttributes
  	buffer          : BUFFER
  	value_mask      : BITMASK
--- 527,533 ----
  to set this attribute, a generic set request is provided to
  allow for future expansion:
  .DS
! .ft CR
  SetBufferAttributes
  	buffer          : BUFFER
  	value_mask      : BITMASK
***************
*** 543,549 ****
  that would most likely be read once by Xlib for each screen, and used as a data base for
  other Xlib queries:
  .DS
! .ft 8
  GetBufferInfo
  	root            : WINDOW
  	=>
--- 543,549 ----
  that would most likely be read once by Xlib for each screen, and used as a data base for
  other Xlib queries:
  .DS
! .ft CR
  GetBufferInfo
  	root            : WINDOW
  	=>
***************
*** 553,559 ****
  .LP
  Where \fBSCREEN_INFO\fP and \fBBUFFER_INFO\fP are defined as:
  .DS
! .ft 8
  
  	SCREEN_INFO     : [ normal_info : LISTofBUFFER_INFO,
  	                    stereo_info : LISTofBUFFER_INFO ]
--- 553,559 ----
  .LP
  Where \fBSCREEN_INFO\fP and \fBBUFFER_INFO\fP are defined as:
  .DS
! .ft CR
  
  	SCREEN_INFO     : [ normal_info : LISTofBUFFER_INFO,
  	                    stereo_info : LISTofBUFFER_INFO ]
***************
*** 576,582 ****
  The following request returns the major and minor version numbers
  of this extension:
  .DS
! .ft 8
  GetBufferVersion
  	=>
  	major_number    : CARD8
--- 576,582 ----
  The following request returns the major and minor version numbers
  of this extension:
  .DS
! .ft CR
  GetBufferVersion
  	=>
  	major_number    : CARD8
***************
*** 620,626 ****
  to stop drawing until some portion of the buffer is
  writable, the following event is added:
  .DS
! .ft 8
  ClobberNotify
  	buffer         :  BUFFER
  	state          : {Unclobbered,PartiallyClobbered,FullyClobbered}
--- 620,626 ----
  to stop drawing until some portion of the buffer is
  writable, the following event is added:
  .DS
! .ft CR
  ClobberNotify
  	buffer         :  BUFFER
  	state          : {Unclobbered,PartiallyClobbered,FullyClobbered}
***************
*** 653,659 ****
  soon as a buffer becomes available.  To support this,
  the following event is added:
  .DS
! .ft 8
  UpdateNotify
  	buffer         :  BUFFER
  .ft
--- 653,659 ----
  soon as a buffer becomes available.  To support this,
  the following event is added:
  .DS
! .ft CR
  UpdateNotify
  	buffer         :  BUFFER
  .ft
***************
*** 678,684 ****
  The following pseudo-code fragment illustrates how to create and display
  a double-buffered image:
  .DS
! .ft 8
  /*
   * Create a normal window
   */
--- 678,684 ----
  The following pseudo-code fragment illustrates how to create and display
  a double-buffered image:
  .DS
! .ft CR
  /*
   * Create a normal window
   */
***************
*** 727,733 ****
  a multi-buffered image and cycle through the images to
  simulate a movie loop:
  .DS
! .ft 8
  /*
   * Create a normal window
   */
--- 727,733 ----
  a multi-buffered image and cycle through the images to
  simulate a movie loop:
  .DS
! .ft CR
  /*
   * Create a normal window
   */
***************
*** 782,788 ****
  buffer and a right image buffer.  To create a stereo window,
  a client makes the following request:
  .DS
! .ft 8
  CreateStereoWindow
  	parent          : WINDOW
  	w_id            : WINDOW
--- 782,788 ----
  buffer and a right image buffer.  To create a stereo window,
  a client makes the following request:
  .DS
! .ft CR
  CreateStereoWindow
  	parent          : WINDOW
  	w_id            : WINDOW
***************
*** 853,859 ****
  The following shows how to create and display a single-buffered
  stereo image:
  .DS
! .ft 8
  /*
   * Create the stereo window, map it the screen,
   * and draw the left and right images
--- 853,859 ----
  The following shows how to create and display a single-buffered
  stereo image:
  .DS
! .ft CR
  /*
   * Create the stereo window, map it the screen,
   * and draw the left and right images
***************
*** 896,902 ****
  .LP
  To double-buffer a stereo window:
  .DS
! .ft 8
  /*
   * Create stereo window and map it to the screen
   */
--- 896,902 ----
  .LP
  To double-buffer a stereo window:
  .DS
! .ft CR
  /*
   * Create stereo window and map it to the screen
   */
***************
*** 935,941 ****
  .LP
  To cycle through \fIN\fP stereo images:
  .DS
! .ft 8
  /*
   * Create stereo window
   */
--- 935,941 ----
  .LP
  To cycle through \fIN\fP stereo images:
  .DS
! .ft CR
  /*
   * Create stereo window
   */
Index: specs/Xext/sync.tex
===================================================================
RCS file: /cvsroot/xsrc/xc/doc/specs/Xext/sync.tex,v
retrieving revision 1.1.1.2
diff -c -r1.1.1.2 sync.tex
*** sync.tex	1997/06/30 14:14:07	1.1.1.2
--- sync.tex	2000/01/22 20:00:16
***************
*** 1004,1006 ****
--- 1004,1008 ----
  	\> 1	\> ALARMSTATE	\> state \\
  	\> 3	\>		\> unused\\
  \end{tabbing}
+ 
+ \end{document}
Index: specs/Xserver/analysis.tex
===================================================================
RCS file: /cvsroot/xsrc/xc/doc/specs/Xserver/analysis.tex,v
retrieving revision 1.1.1.1
diff -c -r1.1.1.1 analysis.tex
*** analysis.tex	1997/06/30 14:14:24	1.1.1.1
--- analysis.tex	2000/01/22 20:00:33
***************
*** 1,4 ****
! \documentstyle[computer]{article}
  \setlength{\parindent}{0 pt}
  \setlength{\parskip}{6pt}
  
--- 1,5 ----
! \documentclass{article}
! \usepackage{url}
  \setlength{\parindent}{0 pt}
  \setlength{\parskip}{6pt}
  
***************
*** 216,224 ****
  the client is over its limit is to return NULL, indicating allocation
  failure.  Unfortunately, there are many places in the server that will
  react badly if this happens.  Most of these places, but not all, are
! ``protected'' by setting the global variable Must_have_memory to True
  around the delicate code.  We could help the problem by skipping the
! limit check if Must_have_memory is True.  The best solution would be
  to bullet-proof the server against allocation failures, but that is
  beyond the scope of Broadway.  Another consideration is that the
  additional checking may have a measurable performance impact, since
--- 217,225 ----
  the client is over its limit is to return NULL, indicating allocation
  failure.  Unfortunately, there are many places in the server that will
  react badly if this happens.  Most of these places, but not all, are
! ``protected'' by setting the global variable Must\_have\_memory to True
  around the delicate code.  We could help the problem by skipping the
! limit check if Must\_have\_memory is True.  The best solution would be
  to bullet-proof the server against allocation failures, but that is
  beyond the scope of Broadway.  Another consideration is that the
  additional checking may have a measurable performance impact, since
***************
*** 615,623 ****
  polyinstantiated?
  
  ISSUE: Motif drag and drop needs to be able to read the following
! properties: WM_STATE to identify top-level windows, _MOTIF_DRAG_WINDOW
! on the root window, _MOTIF_DRAG_TARGETS on the window given in the
! _MOTIF_DRAG_WINDOW property, and _MOTIF_DRAG_RECEIVER_INFO on windows
  with drop sites.  Additionally, some properties are needed that do not
  have fixed names.
  
--- 616,624 ----
  polyinstantiated?
  
  ISSUE: Motif drag and drop needs to be able to read the following
! properties: WM\_STATE to identify top-level windows, \_MOTIF\_DRAG\_WINDOW
! on the root window, \_MOTIF\_DRAG\_TARGETS on the window given in the
! \_MOTIF\_DRAG\_WINDOW property, and \_MOTIF\_DRAG\_RECEIVER\_INFO on windows
  with drop sites.  Additionally, some properties are needed that do not
  have fixed names.
  
***************
*** 1514,1523 ****
  
  Rosenthal, David and Marks, Stuart W., ``Inter-Client Communication
  Conventions Manual Version 2.0,''
! \file{ftp://ftp.x.org/pub/R6.1/xc/doc/hardcopy/ICCCM/icccm.PS.Z}
  
  Scheifler, Robert W., ``X Window System Protocol,''
! \file{ftp://ftp.x.org/pub/R6.1/xc/doc/hardcopy/XProtocol/proto.PS.Z}
  
  Treese, G. Winfield and Wolman, Alec, ``X Through the Firewall, and
  Other Application Relays,'' Digital Equipment Corporation Cambridge
--- 1515,1524 ----
  
  Rosenthal, David and Marks, Stuart W., ``Inter-Client Communication
  Conventions Manual Version 2.0,''
! \url{ftp://ftp.x.org/pub/R6.1/xc/doc/hardcopy/ICCCM/icccm.PS.Z}
  
  Scheifler, Robert W., ``X Window System Protocol,''
! \url{ftp://ftp.x.org/pub/R6.1/xc/doc/hardcopy/XProtocol/proto.PS.Z}
  
  Treese, G. Winfield and Wolman, Alec, ``X Through the Firewall, and
  Other Application Relays,'' Digital Equipment Corporation Cambridge
Index: specs/Xserver/secint.tex
===================================================================
RCS file: /cvsroot/xsrc/xc/doc/specs/Xserver/secint.tex,v
retrieving revision 1.1.1.1
diff -c -r1.1.1.1 secint.tex
*** secint.tex	1997/06/30 14:14:26	1.1.1.1
--- secint.tex	2000/01/22 20:00:35
***************
*** 1,4 ****
! \documentstyle[computer]{article}
  \setlength{\parindent}{0 pt}
  \setlength{\parskip}{6pt}
  
--- 1,4 ----
! \documentclass{article}
  \setlength{\parindent}{0 pt}
  \setlength{\parskip}{6pt}