This directory contains C and C++ code for the CIPRES communication library, which allows different CIPRES modules to interact with each other. Fundamentally the library is an attempt to hide much of the CORBA-related details from application programmers. August 19, 2005 Configuration scripts now reside in this directory (framework/C++) and generate the Makefiles that we use. This build system hasn't been tested much so the old Makefile has been retained but moved to OriginalMakefile. The procedure is: % cd $CIPRES_LIB_ROOT/C++ % sh createCommlibMakefileAM.sh % autoreconf % ./configure % make The reconf script only needs to be rerun if the Makefile.am or congfigure.ac files are altered (you may have to run it twice if it balks about not having all of the required documentation files) reconf require you to have the gnu developers tools: aclocal, autoconf, autoheader, automake If this poses a problem, we can put the configure script under CVS control, or you can get it from a web site that has a CIPRES snapshot. If you are using OMNIORB you need use % ./configure --enable-omni-orb Environment Requirements: CIPRES_LIB_ROOT = the parent of this (CIPRES_CVS_ROOT)/framework BOOST_ROOT (parent of boost dir) if using ACE: ACE_ROOT TAO_ROOT tao_idl (found in $ACE_ROOT/bin must be on your path) if using OMNI: OMNIORB_INCLUDE_DIR = place where omniORB headers where installed (/usr/local/include, for example) should contain COS and omniORB4 subdirectories OMNIORB_TOP where omniORB was unpacked and built (should contain and "idl" dir) ############################################################################################ Old (pre-August 19, 2005) configuration notes (only retained because the new system is poorly tested ############################################################################################ The parent directory contails a "reconf" script that must be run to produce a configure script. Currently we are using the produced "config.h" file (which configure will write as "framework/C++/CipresCommlib") but the Makefile (in C++ is still created by hand). The Makefile created in "framework" will also work, but it merely calls the Makefile in the C++ directory. The configuration step is necessary for including the correct headers for some integer types (e.g. uint8_t). Thus, developers need to: 1 "cd framework" 2 "./reconf" 3 If this is the first time, you've run it, you may have to run "./reconf" a second time because some the obnoxious gnu files will not be present the first time you run the script. 4 "./configure" 5 "make"