OpenC++ version 2.5.3

Copyright (c) 1997,1998 Shigeru Chiba.  All Rights Reserved.
Copyright (c) 1995, 1996 Xerox Corporation. All Rights Reserved.

THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
OR IMPLIED.  ANY USE IS AT YOUR OWN RISK.

This is a distribution package of OpenC++ version 2.5.


** Compilation

To compile the OpenC++ compiler, move to src/Bin/ and run make with the
makefile for your target.  We made sure that the OpenC++ compiler can
be compiled with gcc on Solaris, Linux, FreeBSD, and SunOS (some
sample programs do not run on SunOS.)

Since the OpenC++ compiler uses Boehm's conservative garbage collector
(Note: the object code produced by OpenC++ does not use it,) the
library gc.a needs to be installed on your target in advance.  For
your convenience, this package includes the 4.11 distribution of that
garbage collector and you should move to src/gc/ and run "make c++"
(Don't forget "c++"!) there before running make under src/Bin/.  For more
details, see src/gc/README.


** Tips

- If you have a trouble to run the OpenC++ compiler, first make sure of
  LD_LIBRARY_PATH.  It has to include the current directory.

- Some g++ installations uses GNU ld, but this configuration may break
  dlopen().  ld supplied by the operating system should be used.

- If the operating system is Solaris 2.x, you may need -DSOLARIS_THREADS 
  to build the garbage collector.  If this option is specified, you also
  need to edit src/Bin/Makefile.Solaris-Linux so that CXXFLAGS includes
  that option and LIB includes -lthread.

- If your operating system is Solaris 2.6, you should insert:

	typedef unsigned long uint32_t;

  before the line:

	#include <sys/procfs.h>

  in src/gc/os_dep.c.

- If the platform is Win32, Visual C++'s BIN directory has to be
  in the search path.


** Files

reference.ps		Reference Manual (Postscript)

html/			Reference Manual (HTML)

src/			Compiler source
src/Bin/Makefile.*	Makefiles for several platforms

src/gc			Boehm's GC source

winsrc/			Compiler source for Win32 with VisualC++
winsrc/Win32/Bin/occ.dsw
			VisualC++ workspace

sample/			Sample programs
sample/Makefile		Makefile using a dynamic loader
sample/Makefile.static	Makefile to build sample programs without
			a dynamic loader.  All metaclasses are
			compiled and statically linked to the OpenC++
			compiler.
sample/Makefile.Win	Makefile for Win32


** Bug reports etc.

Bug reports:
chiba@is.tsukuba.ac.jp
or  chiba@acm.org

Web page of OpenC++:
http://www.softlab.is.tsukuba.ac.jp/~chiba
or  http://www-masuda.is.s.u-tokyo.ac.jp/~chiba

The OpenC++ mailing list:
opencxx@ftp.s.u-tokyo.ac.jp

Web page of Boehm's GC:
http://reality.sgi.com/employees/boehm_mti


** Acknowledgments

OpenC++ version 2 was originally developed as part of Chiba's
PhD work under the supervision of Gregor Kiczales at Xerox
PARC.  For this reason, the copyright of the original soruce code
is held by Xerox although they kindly allow me to freely distribute
the source code (See the copyright notice for more details.)

For the derivative work from the Xerox version, I'd like to thank
Blake McBride <blake@edge.net>, Eric Totel <totel@laas.fr>, Toru
Takimoto <takimoto@is.s.u-tokyo.ac.jp> Jean Louis
<jlfc@club-internet.fr> for Win32 support, Marc-Olivier Killijian
<killijia@laas.fr>, Uttam M. Narsu <narsu@hks.com>, Victor Zhukov
<vic@paragraph.com>, Renaud Pawlak <pawlak@ecoledoc.lip6.fr>,
and all other contributors.


*** Copyright Notice

  Copyright (C) 1997,1998 Shigeru Chiba, University of Tsukuba.

  Permission to use, copy, distribute and modify this software and   
  its documentation for any purpose is hereby granted without fee,        
  provided that the above copyright notice appear in all copies and that 
  both that copyright notice and this permission notice appear in 
  supporting documentation.

  Shigeru Chiba makes no representations about the suitability of this 
  software for any purpose.  It is provided "as is" without express or
  implied warranty.

  Copyright (c) 1995, 1996 Xerox Corporation.
  All Rights Reserved.

  Use and copying of this software and preparation of derivative works
  based upon this software are permitted. Any copy of this software or
  of any derivative work must include the above copyright notice of
  Xerox Corporation, this paragraph and the one after it.  Any
  distribution of this software or derivative works must comply with all
  applicable United States export control laws.

  This software is made available AS IS, and XEROX CORPORATION DISCLAIMS
  ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE
  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  PURPOSE, AND NOTWITHSTANDING ANY OTHER PROVISION CONTAINED HEREIN, ANY
  LIABILITY FOR DAMAGES RESULTING FROM THE SOFTWARE OR ITS USE IS
  EXPRESSLY DISCLAIMED, WHETHER ARISING IN CONTRACT, TORT (INCLUDING
  NEGLIGENCE) OR STRICT LIABILITY, EVEN IF XEROX CORPORATION IS ADVISED
  OF THE POSSIBILITY OF SUCH DAMAGES.

----
Shigeru CHIBA			E-mail: chiba@is.tsukuba.ac.jp
Institute of Information Science and Electronics, University of Tsukuba.
