CRIS/SIS: ACEware System
Making the level1 Package

Last Modified Tuesday, 20-Oct-1998 10:46:33 PDT.

These are the guidelines for the creation of the ACEware level1 libraries. This procedure has been simplified These are the guidelines for the creation of the ACEware level1 libraries. These libraries are libCrisGetData.a, libCrisPutData.a, libSisGetData.a, libSisPutData.a, and libUtilities.a. Each library has its own make file.
New: A single make file has been created which automatically makes all of the individual level1 libraries. Furthermore, a single composite level1 library (libLevel1.a) is now created as well, containing all level1 routines. An associated header file (level1.h) is also available. See the programing examples in the level1 routines documentation for details on usage.

Step 1: Define the environment variables ACE_WARE and CC.

VERY IMPORTANT DISTINCTION!: If you are installing this package for the first time into your ACEware system, the environment variable ACE_WARE needs to be defined as the base directory of your ACEware installation. If, on the other hand, you are updating a package into an ACEware system which is already in use, then ACE_WARE needs to be defined as the base of your shadow installation. In either case, after defining ACE_WARE, you should see the following:
% cd $ACE_WARE
% ls
RCSfiles/       idl/            lib/            pkgs/
exe/            include/        man/
%

As a concrete example, if I were installing the initial version of the ACEware system at SRL, I would define

setenv ACE_WARE /home/idunn1/ACEware
which, in fact, is where the official installation of ACEware is at SRL. On the other hand, if I were instead updating the level1 package, I might chose to place the shadow directory tree in my home directory to work on making the new release without interfering with the use of the ACEware system by others. In that case, while working on the make of the new level1 package, I would define
setenv ACE_WARE /home/darkalf/bruce/shadow
(See the shadow installation notes for more details on creating this shadow workspace.)

CC should be defined as your favorite POSIX/ANSI C compiler, e.g.,

setenv CC gcc

Step 2: Go to the level1 source directory.

cd to ${ACE_WARE}/pkgs/level1/src/. Amongst other things, you should see the makefile for level1, "Makefile.level1".

Step 3: Make the level1 libraries.

Check the Makefile. Most likely you will not need to change much if anything.

Type "make".

This should generate all of the level1 libraries, including the composite level1 library.

If you have problems with the building of a particular library in the level1 package, you should cd to the source directory of that particular library and use the makefile there for makes. For example, if the level1 utilities library needed work for porting, you would cd to ${ACE_WARE}/pkgs/level1/src/lib/utilities/ and make changes to the code therein, and run the makefile there which creates only the utilities library. Once that library is being generated correctly, go back to the ${ACE_WARE}/pkgs/level1/src/ directory again and redo the full level1 make.

Step 4: Check the level1 libraries.

Check that all level1 libraries have been created and are in place in the level1 lib access directory.

cd to ${ACE_WARE}/pkgs/level1/lib

% ls
libCrisGetData.a   libLevel1.a        libSisPutData.a
libCrisPutData.a   libSisGetData.a    libUtilities.a
%

If these libraries are in place the level1 make is complete.


Back to Initial Installation Notes / Package Update Notes

Return to Table of Contents

bruce