summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/docs/historical/INSTALL
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/TAO_IDL/docs/historical/INSTALL')
-rw-r--r--TAO/TAO_IDL/docs/historical/INSTALL229
1 files changed, 229 insertions, 0 deletions
diff --git a/TAO/TAO_IDL/docs/historical/INSTALL b/TAO/TAO_IDL/docs/historical/INSTALL
new file mode 100644
index 00000000000..6fcaa710042
--- /dev/null
+++ b/TAO/TAO_IDL/docs/historical/INSTALL
@@ -0,0 +1,229 @@
+INTERFACE DEFINITION LANGUAGE INSTALLATION GUIDE
+-==============================================-
+
+INTRODUCTION
+
+This file describes the installation process for OMG_IDL_CFE version 1.3.
+This file explains how to:
+
+- install the source code
+- modify the sources to customize them for different configurations
+- modify the sources to implement your own back end
+
+TESTED CONFIGURATIONS
+
+This release has been tested and is believed to operate correctly on:
+- SunPro Sparcworks 2.x and 3.0 on SunOS 4.1.x
+- SunPro Sparcworks 2.x and 3.0 on Solaris 2.3
+- g++ 2.5.8 on SunOS 4.1.x
+- g++ 2.5.8 on Solaris 2.3
+
+This is the first release of OMG IDL CFE which is preconfigured to compile
+correctly for Solaris 2.x and with SunPro SparcWorks compilers.
+
+CUSTOMIZATION
+
+The release contains a file idl_make_vars in the current directory, which
+is included in each Makefile. This file defines all the customizable
+variables for the CFE.
+
+OSV should be set to a string denoting the operating system upon which you
+wish to build the CFE. The CFE as shipped is preconfigured to compile
+correctly on Solaris 2.x (OSV=SOLARIS2), and has also been tested on SunOS
+4.1.x (OSV=SUNOS4). It contains code donated by HP which enables it to be
+compiled on Apollo Domain systems (OSV=apollo) and HPUX systems (OSV=hpux),
+but these two configurations have not been tested.
+
+C++ and CCC should be set to identify the C++ compiler you will use to
+compile this release. Their values should be identical. Both are set to
+address differences between various make programs - some predefine CCC,
+others use C++ to denote the C++ compiler. The possible values are CC
+(which uses the Sparcworks compilers on SunOS 4.1 and Solaris 2.3) and g++,
+which uses the installed version of GNU C++.
+
+CCFLAGS should be set to a list of flags to pass to the C++ compiler. As
+shipped, this list is -g. NOTE: We have not extensively tested the release
+with optimization turned on.
+
+CPP_FLAGS should be set to a list of flags to pass to the C++ preprocessor.
+Use this variable to enable or disable specific customizations you make to
+the BE or CFE sources.
+
+YFLAGS should be set to a list of flags to pass to the Yacc program. As
+shipped, the list is -d -t, which causes Yacc to generate y.tab.h and
+y.tab.c files.
+
+LEXFLAGS should be set to a list of flags to pass to the Lex program. As
+shipped, the list -t.
+
+RANLIB should be set to the location of the ranlib program on your system.
+As shipped this is ranlib. If your system has no ranlib you can set this
+variable to ':' or /bin/true. As shipped the variable is preset to
+/bin/true since Solaris 2.x does not use ranlib.
+
+AR should be set to the location of the ar program on your system. As
+shipped this is ar. If your system has a different mechanism for creating
+libraries, you should modify the value of this variable accordingly.
+
+ARFLAGS should be set to the flags to be passed to the ar program. As
+shipped this is 'crv'.
+
+INSTALLATION
+
+a. Disk space requirements
+
+This distribution requires approximately 350 KBytes when compressed. When
+uncompressed, untarred and compiled, approximately 10 MBytes of disk space
+are consumed on a Sun 4.
+
+b. Getting the software
+
+Use anonymous FTP to omg.org and supply your e-mail address as password.
+Change directories to pub/OMG_IDL_CFE_1.3, set bin and get the compressed
+tar file OMG_IDL_CFE_1.3.tar.Z.
+
+The distribution may, in the future, be made available from other archives
+on the Internet. However, omg.org will always have the most up-to-date
+version of this software.
+
+After transferring this file, uncompress it and untar it in a directory of
+your choice.
+
+c. Compiling it
+
+If you are using a Sparcstation running Solaris 2.x and have the SunPro
+Sparcworks compilers installed, you may directly install the software. If
+your hardware or operating system configurations are different, read and
+follow the instructions in the previous section first.
+
+At the root directory of the release, issue
+
+ % make
+
+or
+
+ % make all
+
+This will compile the provided sources and the sources found in the be
+directory. Executing this make target causes 'make all' to be invoked in
+each subdirectory, resulting in building the libraries for each component
+and finally a link step producing an executable IDL compiler.
+
+In order to make only the compiler front end components, without compiling
+the sources found in the be directory and without building an executable,
+issue
+
+ % make libs
+
+This will build the libraries in the ast, fe, util, driver and narrow
+directories. To build only the be, issue
+
+ % make be
+
+To build all libraries without creating an executable, issue
+
+ % make all_libs
+
+To remove all files created by the build process, issue
+
+ % make clean
+
+This will not remove any files created by Yacc and Lex, because you may be
+using the ones provided in the distribution (see below).
+
+d. Yacc and Lex
+
+Some installations may not have a C++ aware Yacc and Lex processor. For
+these installations, we have included the output of yacc and lex in the
+release. If you need to use these files to build the release because you
+don't have access to a C++ capable Yacc or Lex, go to the "fe" directory,
+issue the command:
+
+ % touch lex.yy.cc y.tab.cc y.tab.hh
+
+This will ensure that the processed files appear to be newer than the
+source files they were produced from and will cause "make" to skip their
+production.
+
+NOTE: The files provided in the distribution have been produced on Solaris
+2.3 and may contain OS-specific #include directives. If you intend to use
+these files, you may have to edit them to make them work in your
+environment. The provided files are known to compile cleanly without
+modification with both SunPro Sparcworks compilers and GNU C++ on both
+SunOS 4.1 and Solaris 2.3. We have not tested the grammar and lexer input
+files with bison or flex.
+
+IMPLEMENTING A BACK END
+
+To implement your own back end, you can start with the provided sources in
+the be directory and modify them. The Makefile understands the 'make all'
+target and will generate libbe.a in the demo_be directory. As set up, the
+variable CPP_FLAGS allows you to place include files either in the current
+directory or in the include directory. Alternatively, you can place your
+include files in a new directory and modify CPP_FLAGS to cause the C++
+preprocessor to search this new directory for referenced include files, by
+adding a new -I directive.
+
+Additional detail on the structure and function of back ends, and on the
+protocol which a back end must implement, are found in the document
+entitled WRITING_A_BE.
+
+COPYRIGHT
+
+Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United
+States of America. All Rights Reserved.
+
+This product is protected by copyright and distributed under the following
+license restricting its use.
+
+The Interface Definition Language Compiler Front End (CFE) is made
+available for your use provided that you include this license and copyright
+notice on all media and documentation and the software program in which
+this product is incorporated in whole or part. You may copy and extend
+functionality (but may not remove functionality) of the Interface
+Definition Language CFE without charge, but you are not authorized to
+license or distribute it to anyone else except as part of a product or
+program developed by you or with the express written consent of Sun
+Microsystems, Inc. ("Sun").
+
+The names of Sun Microsystems, Inc. and any of its subsidiaries or
+affiliates may not be used in advertising or publicity pertaining to
+distribution of Interface Definition Language CFE as permitted herein.
+
+This license is effective until terminated by Sun for failure to comply
+with this license. Upon termination, you shall destroy or return all code
+and documentation for the Interface Definition Language CFE.
+
+INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF
+ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS
+FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF
+DEALING, USAGE OR TRADE PRACTICE.
+
+INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT
+ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES
+TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT.
+
+SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH
+RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY
+INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF.
+
+IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR
+ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL
+DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+Use, duplication, or disclosure by the government is subject to
+restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in
+Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR
+52.227-19.
+
+Sun, Sun Microsystems and the Sun logo are trademarks or registered
+trademarks of Sun Microsystems, Inc.
+
+SunSoft, Inc.
+2550 Garcia Avenue
+Mountain View, California 94043
+
+NOTE:
+
+SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are
+trademarks or registered trademarks of Sun Microsystems, Inc.