XView Toolkit Source Update to R4

Tom Jacobs tomj at eng.sun.com
Wed Jan 31 12:14:37 AEST 1990


Sun Microsystems is proud to announce the availability of the first patch
update to XView toolkit source that ships with release 4 of the X Window
System.  This patch is intended to support building shared libraries,
provide files that were accidently left out the release (some include
files & dbxtool source) and fixes problems when building on a DECstation
3100.  Additionally, we've included fixes for some bugs that have been
reported in the last few weeks.  Details of the update are towards the end
of this message.

The XView source donation, for those who may not already know, includes
the complete source for the XView toolkit, the OLWM window manager, a
number sample XView applications, and a collection of commercial-quality
Lucida bitmap fonts from Bigelow & Holmes.

XView is an X toolkit based on the OPEN LOOK (tm) Graphical User
Interface.  XView's application programmer's interface (API) is very
similar to the API of the SunView toolkit; in practice, most SunView
applications can be converted to XView in a few days, although some will
take longer.  Since there are more than 2000 SunView applications, we
expect that releasing XView will immediately create a large base of X11
applications.  To futher assist in converting SunView applications, the R4
donation includes improved automated conversion tools and documentation.

OLWM is an ICCCM-compliant window manager, also based on the OPEN LOOK
GUI.  OLWM is a "stand-alone" window manager, not dependent on any toolkit
code.  We hope that OLWM will become the standard example of an
ICCCM-compliant window manager in X11 R4.  Additionally, OLWM provides
both 2D and 3D-look OPEN LOOK graphical interfaces through the usage of a
new OPEN LOOK graphics library (OLGX).  OLGX is written to the Xlib
interface and does not use any toolkit.

Also available in the R4 donation is the source to four useful
applications and many (~70) new simple example programs.  The four XView
applications are clock, textedit, dbxtool, and cmdtool/shelltool (a
terminal emulator).  In addition, we are including a script that helps
convert SunView programs to XView by flagging the application code that
needs to be changed and another tool which helps convert SunView
".defaults" files into ".Xdefaults" resource files.

The Bigelow & Holmes Lucida bitmap fonts are a collection of different
type styles and point sizes in the Lucida typeface.  In addition, XView
uses "glyph fonts" to accelerate the painting of some OPEN LOOK GUI
graphical elements, and these fonts are also being made available.  These
glyph fonts are used extensively by OLGX to provide high performance when
rendering 2D and 3D-look OPEN LOOK graphics.  However, only OLWM will be
able to provide the 3D-look in this update.  Note that these glyph fonts
*MUST* be added to your X11 R3 server in order to run XView applications.
These fonts are standard with all R4 servers.

With licensed source products from Sun, source is usually not released
until several months after a binary version of the product has shipped.
The extra time is used to "clean up" the source for external consumption.
In contrast, we are releasing XView and OLWM now, before the binary
version of XView (XView 1.0.1) has shipped.  We will continue to fix bugs
and portability problems as we find them, and these changes will be made
available periodically (this is just the first).  This version of XView
source lints more cleanly than the ALPHA version, but still does not lint
perfectly.  This problem is mostly due to XView's extensive use of
varargs.  

We are releasing this FCS version of the source at this time in order to
promote OPEN LOOK, to further accellerate the number of ports of XView
ready when X11 R4 ships, and to encourage the notion that X toolkit source
should be free.  We will update this free source to track changes that Sun
makes in XView, including bug fixes, performance improvements, and new
features.  Sun has selected the MIT X11 distribution as our XView source
distribution channel.  We currently have plans to update again in the
spring with more bug fixes, extensive performance enhansements and a
completed 3D-look OPEN LOOK GUI (currently only OLWM provides 3D).  The
update following that we'll be donating the completed Kanji version of
XView.

Sun has implemented XView on four architectures: Sun4, Sun3, Sun386i, and
DECstation 3100.  Additionally, XView has already been successfully ported
by others to MIPS M2000, IBM-PC/RT (AIX and BSD), IBM-PS/2 (AIX) and HP
(HP-UX).  Additionly, there are about a dozen ports under way by other
hardware vendors or third-party software vendors.  In some cases, Sun is
paying for the port and will own the rights to any code changes; we will
give these changes away.  In other cases, vendors will sell XView on a
particular hardware or OS base; obviously, their changes are their added
value.  We encourage both uses of this source donation.

If you discover bugs in XView or OLWM, or if you port them and discover
portability problems that you are willing to fix for the X community,
please send your bug reports to xviewbugs at sun.com (...!sun!xviewbugs).  We
should have an automated archive server on-line pretty quickly to provide
fast responses and easy access to other questions asked.  Bug reports with
suggested fixes are obviously the best sort.  

Open discussion about XView or OLWM ("Anybody figure out how to... ?")
should occur on xpert at expo.lcs.mit.edu (comp.windows.x).  

Documentation on XView, in PostScript source format, is included in the
XView tar file.  The two documents that are supplied are called

	"XView 1.0.1 Reference Manual: Converting SunView Applications"
	"Converting Your SunView Application's Pixwin/Pixrect Graphics
                     to XView and Xlib Graphics"

A pre-printed version of XView 1.0.1 Reference Manual may also be ordered
(at the cost of media and shipping) from Sun Microsystems by ordering Part
Number 800-2482-10.  The Pixwin/Pixrect conversion document is a simiple
ASCII text document and can be formatted and printed easily.  In addition,
a comprehensive programmer's reference manual for XView is now available
from O'Reilly & Associates, Inc. as Volume Seven of their series of X
Window System documentation.  Contact O'Reilly & Associates, Inc. directly
to order the

	"XView Programming Manual"

	O'Reilly & Associates, Inc.
	632 Petaluma Avenue
	Sebastopol, CA  95472
	(800)338-6887  [from within the USA]
	(707)829-0515
	FAX: (707)829-0104
	EMAIL: uunet!ora!xview

XView requires the use of an ICCCM-compliant window manager, such as OLWM.
Further, XView requires full ICCCM support in Xlib. This will be standard
in X11 R4.  In order to run with an X11 R3 version of Xlib, you must
define the PRE_R4_ICCCM compile-time flag when you compile XView.  If you
are running a pre-R4 (not up-to-date) ICCCM-type window manager (R3 twm
for example), you should specify the following resource entry
"XView.ICCCMCompliant: False" in your environment (default is True).

To build XView, you will also want to have the X Window System source
available, though you can build with without the complete source.  XView
requires standard utilities from the X Window System source tree, such as
imake, bdftosnf, and mkfontdir.

Please direct comments or questions about this source donation to
xpert at expo.lcs.mit.edu (or comp.windows.x).

And thank you for your support.

	--Tom Jacobs       (tomj at sun.com    -OR-   ..!sun!tomj)

==============BEGIN PATCH1 INFORMATION================================
XView patch1 is now on expo.lcs.mit.edu in contrib/XView/XV_patch1.tar

README file for patch1 follows...

------------
README file for patch1 of the XView toolkit version 1.0.1

The distributed patch consists of one 584 KB tar file, XV_patch1.tar
	% ls -l XV_patch1.tar
	-rw-r--r--  1 hvr        589824 Jan 22 16:44 XV_patch1.tar
	% sum XV_patch1.tar
	18495   576

This one tar file includes three compressed tar files:

olgx_patch1.tar.Z approximately 18 KB in size
	% ls -l olgx_patch1.tar
	-rw-r--r--  1 hvr         40960 Jan 22 15:32 olgx_patch1.tar
	% sum olgx_patch1.tar
	60763    40
	% ls -l olgx_patch1.tar.Z
	-rw-r--r--  1 hvr         17610 Jan 22 15:32 olgx_patch1.tar.Z
	% sum olgx_patch1.tar.Z
	21718    18

olwm_patch1.tar.Z approximately 24 KB in size
	% ls -l olwm_patch1.tar
	-rw-r--r--  1 hvr         57344 Jan 22 15:41 olwm_patch1.tar
	% sum olwm_patch1.tar
	18606    56
	% ls -l olwm_patch1.tar.Z
	-rw-r--r--  1 hvr         24508 Jan 22 15:41 olwm_patch1.tar.Z
	% sum olwm_patch1.tar.Z
	01620    24

xview_patch1.tar.Z approximately 544 KB in size
	% ls -l xview_patch1.tar
	-rw-r--r--  1 hvr       1900544 Jan 22 16:18 xview_patch1.tar
	% sum xview_patch1.tar
	47790  1856
	% ls -l xview_patch1.tar.Z
	-rw-r--r--  1 hvr        541793 Jan 22 16:18 xview_patch1.tar.Z
	% sum xview_patch1.tar.Z
	34079   530

Installing XView Patch1:
-----------------------
After transferring the patch tar file XV_patch1.tar to your
system, extract the three compressed tar files above.  For example,

	tar xvf XV_patch1.tar

To install the patch, move each tar file to the same level as the directory
it should be applied to.  For example, 

	mv xview_patch1.tar.Z /home/X11R4/contrib/toolkits

Uncompress and install the tar file.  For example,

	cd /home/X11R4/contrib/toolkits
	zcat xview_patch1.tar.Z | tar xvf -

This will overwrite the old files with the new ones.  If you wish to save
the old files, the names of the included files are at the bottom of this
message.  You can use some kind of shellscript to either move them to a new
name or archive them in a tar file.  For example,

	cd /home/X11R4/contrib/toolkits
	uncompress xview_patch1.tar.Z
	tar tf xview_patch1.tar | xargs -i $HOME/bin/save_script save_file {}

where $HOME/bin/save_script might look like:

#!/bin/sh
# run with:
#    cat <list of files> | xargs -i <script> <name of tar file> {}
#
# where
#    $1 == name of tar file
#    $2 == file to add to it

if [ -f $2 ]; then
	echo "archiving file $2"
	if [ -f $1 ]; then
		tar rf $1 $2
	else
		tar cf $1 $2
	fi
fi

List of Changes in XView Patch1:
-------------------------------
olgx_patch1.tar includes a new build environment.  No code changes 
have been made.

The files included are the following:

olgx/README
olgx/Makefile
olgx/Makefile.arch
olgx/Makefile.master
olgx/Makefile.sunpro
olgx/Imakefile

olwm_patch1.tar includes two bug fixes and a new build environment.

The files included are the following:

olwm/CheckMap.c
olwm/AdTitleBar.c
olwm/README
olwm/Makefile
olwm/Makefile.sunpro
olwm/Imakefile

xview_patch1.tar includes several bug fixes, several enhancements for
better portability, rules to compile with SunOS shared libraries, a 
few missing files including those for dbxtool, and a new and improved 
build environment.  

The files that are new with this patch are the following:

XView/lib/libxvin/install_libxvin.sh
XView/lib/libxvin/objsort.sh
XView/lib/libxvin/version
XView/lib/libxvin/lorder-sparc
XView/lib/libxvol/misc/xv_icccm.c
XView/lib/libxvol/lorder-sparc
XView/lib/libxvol/objsort.sh
XView/lib/libxvol/version
XView/lib/libxvol/install_libxvol.sh
XView/lib/pixrect/pr_dblbuf.h
XView/lib/pixrect/pr_io.h
XView/lib/lorder-sparc
XView/lib/objsort.sh
XView/clients/examples/README
XView/clients/dbxtool/disp.c
XView/clients/dbxtool/README
XView/clients/dbxtool/dbxtool.c
XView/clients/dbxtool/decorations.c
XView/clients/dbxtool/menu.c
XView/clients/dbxtool/pipe.c
XView/clients/dbxtool/selection.c
XView/clients/dbxtool/dbxlib.c
XView/clients/dbxtool/dbxenv.c
XView/clients/dbxtool/confirm.c
XView/clients/dbxtool/cmd.c
XView/clients/dbxtool/typedefs.h
XView/clients/dbxtool/src.c
XView/clients/dbxtool/bp.c
XView/clients/dbxtool/status.c
XView/clients/dbxtool/buttons.c
XView/fonts/TextFonts/fonts.alias
XView/fonts/OpenLook/Copyright.ps
XView/fonts/OpenLook/fonts.alias

The files that have been changed for this patch are the following:

XView/lib/libxvin/base/xv.c
XView/lib/libxvin/cursor/curs_pri.c
XView/lib/libxvin/fullscreen/fs.c
XView/lib/libxvin/notify/ndisdispch.c
XView/lib/libxvin/pw/xv_color.h
XView/lib/libxvin/screen/scrn_get.c
XView/lib/libxvin/server/svr_get.c
XView/lib/libxvin/win/win_input.c
XView/lib/libxvin/win/win_global.c
XView/lib/libxvin/window/window.h
XView/lib/libxvin/window/window_get.c
XView/lib/libxvin/window/window_set.c
XView/lib/libxvol/canvas/cnvs_data.c
XView/lib/libxvol/frame/fm_cmdline.c
XView/lib/libxvol/icon/icon_data.c
XView/lib/libxvol/menu/om_data.c
XView/lib/libxvol/scrollbar/sb_data.c
XView/lib/libxvol/text/txt_data.c
XView/lib/libxvol/ttysw/tty_data.c
XView/lib/libxvol/ttysw/term_data.c
XView/lib/libxvol/wmgr/wmgr_decor.h
XView/lib/pixrect/pixrect_hs.h
XView/clients/clock/clock.c
XView/clients/examples/color/color_logo.c
XView/clients/examples/fonts/fonts.c
XView/clients/dbxtool/dbx/defs.h
XView/doc/pixwin_to_xlib
XView/README
XView/XView.config

XView/lib/libxvin/attr/Makefile
XView/lib/libxvin/attr/Makefile.sunpro
XView/lib/libxvin/attr/Imakefile
XView/lib/libxvin/base/Makefile
XView/lib/libxvin/base/Imakefile
XView/lib/libxvin/base/Makefile.sunpro
XView/lib/libxvin/cursor/Makefile
XView/lib/libxvin/cursor/Makefile.sunpro
XView/lib/libxvin/cursor/Imakefile
XView/lib/libxvin/defaults/Makefile
XView/lib/libxvin/defaults/Makefile.sunpro
XView/lib/libxvin/defaults/Imakefile
XView/lib/libxvin/filter/Makefile
XView/lib/libxvin/filter/Makefile.sunpro
XView/lib/libxvin/filter/Imakefile
XView/lib/libxvin/font/Makefile
XView/lib/libxvin/font/Makefile.sunpro
XView/lib/libxvin/font/Imakefile
XView/lib/libxvin/fullscreen/Makefile
XView/lib/libxvin/fullscreen/Makefile.sunpro
XView/lib/libxvin/fullscreen/Imakefile
XView/lib/libxvin/io_stream/Makefile
XView/lib/libxvin/io_stream/Makefile.sunpro
XView/lib/libxvin/io_stream/Imakefile
XView/lib/libxvin/misc/Makefile
XView/lib/libxvin/misc/Makefile.sunpro
XView/lib/libxvin/misc/Imakefile
XView/lib/libxvin/notify/Makefile
XView/lib/libxvin/notify/Makefile.sunpro
XView/lib/libxvin/notify/Imakefile-
XView/lib/libxvin/notify/Imakefile
XView/lib/libxvin/pw/Makefile.sunpro
XView/lib/libxvin/pw/Makefile
XView/lib/libxvin/pw/Imakefile
XView/lib/libxvin/rect/Makefile
XView/lib/libxvin/rect/Makefile.sunpro
XView/lib/libxvin/rect/Imakefile
XView/lib/libxvin/screen/Makefile
XView/lib/libxvin/screen/Makefile.sunpro
XView/lib/libxvin/screen/Imakefile
XView/lib/libxvin/sel/Makefile
XView/lib/libxvin/sel/Makefile.sunpro
XView/lib/libxvin/sel/Imakefile
XView/lib/libxvin/server/Makefile
XView/lib/libxvin/server/Makefile.sunpro
XView/lib/libxvin/server/Imakefile
XView/lib/libxvin/server_image/Makefile
XView/lib/libxvin/server_image/Imakefile
XView/lib/libxvin/server_image/Makefile.sunpro
XView/lib/libxvin/string_utils/Makefile
XView/lib/libxvin/string_utils/Imakefile
XView/lib/libxvin/string_utils/Makefile.sunpro
XView/lib/libxvin/win/Makefile
XView/lib/libxvin/win/Imakefile
XView/lib/libxvin/win/Makefile.sunpro
XView/lib/libxvin/window/Makefile
XView/lib/libxvin/window/Imakefile
XView/lib/libxvin/window/Makefile.sunpro
XView/lib/libxvin/Makefile
XView/lib/libxvin/makefile.master
XView/lib/libxvin/makefile.test
XView/lib/libxvin/Makefile.arch
XView/lib/libxvin/Makefile.master
XView/lib/libxvin/Makefile.sunpro
XView/lib/libxvin/Imakefile
XView/lib/libxvin/Imakefile.master
XView/lib/libxvol/canvas/Makefile
XView/lib/libxvol/canvas/Makefile.sunpro
XView/lib/libxvol/canvas/Imakefile
XView/lib/libxvol/frame/Makefile
XView/lib/libxvol/frame/Makefile.sunpro
XView/lib/libxvol/frame/Imakefile
XView/lib/libxvol/help/Makefile
XView/lib/libxvol/help/Makefile.sunpro
XView/lib/libxvol/help/Imakefile
XView/lib/libxvol/icon/Makefile
XView/lib/libxvol/icon/Makefile.sunpro
XView/lib/libxvol/icon/Imakefile
XView/lib/libxvol/menu/Makefile
XView/lib/libxvol/menu/Makefile.sunpro
XView/lib/libxvol/menu/Imakefile
XView/lib/libxvol/misc/Makefile
XView/lib/libxvol/misc/Makefile.sunpro
XView/lib/libxvol/misc/Imakefile
XView/lib/libxvol/notice/Makefile
XView/lib/libxvol/notice/Makefile.sunpro
XView/lib/libxvol/notice/Imakefile
XView/lib/libxvol/openwin/Makefile
XView/lib/libxvol/openwin/Imakefile
XView/lib/libxvol/openwin/Makefile.sunpro
XView/lib/libxvol/panel/Makefile
XView/lib/libxvol/panel/Imakefile
XView/lib/libxvol/panel/Makefile.sunpro
XView/lib/libxvol/scrollbar/Makefile
XView/lib/libxvol/scrollbar/Imakefile
XView/lib/libxvol/scrollbar/Makefile.sunpro
XView/lib/libxvol/text/Makefile
XView/lib/libxvol/text/Imakefile
XView/lib/libxvol/text/Makefile.sunpro
XView/lib/libxvol/ttysw/Makefile
XView/lib/libxvol/ttysw/Imakefile
XView/lib/libxvol/ttysw/Makefile.sunpro
XView/lib/libxvol/wmgr/Makefile
XView/lib/libxvol/wmgr/Imakefile
XView/lib/libxvol/wmgr/Makefile.sunpro
XView/lib/libxvol/Makefile
XView/lib/libxvol/Makefile.arch
XView/lib/libxvol/makefile.test
XView/lib/libxvol/makefile.master
XView/lib/libxvol/Makefile.master
XView/lib/libxvol/Makefile.sunpro
XView/lib/libxvol/Imakefile
XView/lib/libxvol/Imakefile.master
XView/lib/pixrect/Imakefile
XView/lib/Makefile
XView/lib/Imakefile
XView/images/Makefile
XView/images/Imakefile
XView/clients/clock/Imakefile
XView/clients/clock/Makefile
XView/clients/clock/Makefile.sunpro
XView/clients/examples/canvas/Makefile
XView/clients/examples/canvas/Imakefile
XView/clients/examples/canvas/Makefile.sunpro
XView/clients/examples/color/Makefile
XView/clients/examples/color/Imakefile
XView/clients/examples/cursor/Makefile
XView/clients/examples/cursor/Imakefile
XView/clients/examples/defaults/Makefile
XView/clients/examples/defaults/Imakefile
XView/clients/examples/fonts/Makefile
XView/clients/examples/fonts/Imakefile
XView/clients/examples/frames/Makefile
XView/clients/examples/frames/Imakefile
XView/clients/examples/icons/Makefile
XView/clients/examples/icons/Imakefile
XView/clients/examples/menus/Makefile
XView/clients/examples/menus/Imakefile
XView/clients/examples/misc/Makefile
XView/clients/examples/misc/Imakefile
XView/clients/examples/notice/Makefile
XView/clients/examples/notice/Imakefile
XView/clients/examples/notifier/Makefile
XView/clients/examples/notifier/Imakefile
XView/clients/examples/panels/Makefile
XView/clients/examples/panels/Imakefile
XView/clients/examples/scrollbar/Makefile
XView/clients/examples/scrollbar/Imakefile
XView/clients/examples/seln_svc/Makefile
XView/clients/examples/seln_svc/Imakefile
XView/clients/examples/sv_compat/Makefile
XView/clients/examples/sv_compat/Imakefile
XView/clients/examples/textsw/Makefile
XView/clients/examples/textsw/Imakefile
XView/clients/examples/ttysw/Makefile
XView/clients/examples/ttysw/Imakefile
XView/clients/examples/Imakefile
XView/clients/examples/Makefile
XView/clients/demos/Makefile
XView/clients/demos/Imakefile
XView/clients/textedit/Imakefile
XView/clients/textedit/Makefile
XView/clients/textedit/Makefile.sunpro
XView/clients/dbxtool/Makefile
XView/clients/dbxtool/dbx/Imakefile
XView/clients/dbxtool/dbx/Makefile.customer
XView/clients/dbxtool/dbx/Makefile
XView/clients/dbxtool/dbx/Makefile.sunpro
XView/clients/dbxtool/icons/Makefile
XView/clients/dbxtool/icons/Imakefile
XView/clients/dbxtool/icons/Makefile.sunpro
XView/clients/dbxtool/Imakefile
XView/clients/dbxtool/Makefile.customer
XView/clients/dbxtool/Makefile.sunpro
XView/clients/cmdtool/Imakefile
XView/clients/cmdtool/Makefile
XView/clients/cmdtool/Makefile.sunpro
XView/clients/conversion/Imakefile
XView/clients/conversion/Makefile.sunpro
XView/clients/Makefile
XView/clients/Imakefile
XView/fonts/TextFonts/Imakefile
XView/fonts/TextFonts/Makefile
XView/fonts/OpenLook/Imakefile
XView/fonts/OpenLook/Makefile
XView/fonts/OpenLook/Makefile.sunpro
XView/fonts/Imakefile
XView/fonts/Makefile
XView/doc/conversion/Makefile.sunpro
XView/doc/man/Imakefile
XView/doc/man/Makefile
XView/doc/man/Makefile.sunpro
XView/doc/Imakefile
XView/doc/Makefile
XView/help/Makefile.sunpro
XView/help/Makefile
XView/help/Imakefile
XView/Makefile
XView/Imakefile
XView/Makefile.master

==============END PATCH1 INFORMATION================================



More information about the Comp.sys.sun mailing list