#!/bin/sh
#
#   Boom builder for ASL 1.2c0
#   Generated by iMatix Boom from standard.pwl
#   
#   Copyright (c) 1996-2009 iMatix Corporation
#   All rights reserved.
#   
#   This file is licensed under the BSD license as follows:
#   
#   Redistribution and use in source and binary forms, with or without
#   modification, are permitted provided that the following conditions
#   are met:
#   
#   * Redistributions of source code must retain the above copyright
#     notice, this list of conditions and the following disclaimer.
#   * Redistributions in binary form must reproduce the above copyright
#     notice, this list of conditions and the following disclaimer in
#     the documentation and/or other materials provided with the
#     distribution.
#   * Neither the name of iMatix Corporation nor the names of its
#     contributors may be used to endorse or promote products derived
#     from this software without specific prior written permission.
#   
#   THIS SOFTWARE IS PROVIDED BY IMATIX CORPORATION "AS IS" AND ANY
#   EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
#   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
#   PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL IMATIX CORPORATION BE
#   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
#   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
#   SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
#   BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
#   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
#   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
#   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
#   Force environment variables to point to install location
#   Start by using final IBASE, then handle local -install path
#
boom_model_list () {
    set |
        awk 'BEGIN                      { FS="[=_]" }
             /^BOOM_MODEL_[A-Z0-9]*=1$/ { print $3  }'
}
boom_model_expand () {
    for MODEL in `boom_model_list`; do
        eval unset BOOM_MODEL_$MODEL
    done
    OLD_IFS=$IFS
    IFS=,
    for MODEL in $BOOM_MODEL; do
        MODEL=`echo $MODEL | tr \[a-z\] \[A-Z\]`
        eval BOOM_MODEL_$MODEL=1
        eval export BOOM_MODEL_$MODEL
    done
    IFS=$OLD_IFS
}
croak() {
    if [ -n "$*" ]; then
        echo "boom E: [ASL]: $* - stop" 1>&2
    else
        echo "boom E: [ASL]: stop" 1>&2
    fi
    exit 1
}
carp() {
    echo "boom I: [ASL]: $*" 1>&2
}
trap 'croak "Interrupted"' INT
trap 'croak "Terminated"' TERM
trap 'croak "Quit"' QUIT
self=$0
MY_VERSION="1.2c0"
#
#   Set default values for BOOM_MODEL
#
#   Default is release,mt on all platforms.
#
if [ -z "$BOOM_MODEL" ]; then
    BOOM_MODEL=release,mt
fi
boom_model_expand
if [ "$BOOM_MODEL_RELEASE" != "1" ]; then
    if [ "$BOOM_MODEL_DEBUG" != "1" ]; then
        BOOM_MODEL_RELEASE=1
        BOOM_MODEL="$BOOM_MODEL,release"
    fi
fi
if [ "$BOOM_MODEL_ST" != "1" ]; then
    if [ "$BOOM_MODEL_MT" != "1" ]; then
            BOOM_MODEL="$BOOM_MODEL,mt"
    fi
fi
if [ -z "$IBASE" ]; then
    carp "The IBASE variable is not set.  Please set it to the location where ASL should be installed."
    exit 1
fi
if [ "$1" = "-v" ]; then
    BOOM_TRACE=1
    export BOOM_TRACE
    shift
fi
if [ "$1" != "-install" ]; then
    #   Normal use, use IBASE
    PATH=.:$IBASE/bin:$PATH; export PATH
    PERLLIB=.:$IBASE/bin:$PERLLIB; export PERLLIB
    INCDIR_ALT=$IBASE/include; export INCDIR_ALT
    _LOCAL_BASE=
    _INSTALL_ROOT=$IBASE
else
    #   Building product, we use -install directory first, then IBASE
    CURDIR=`pwd`
    cd $2
    _LOCAL_BASE=`pwd`
    cd $CURDIR
    PATH=.:$_LOCAL_BASE/bin:$IBASE/bin:$PATH; export PATH
    PERLLIB=.:$_LOCAL_BASE/bin:$IBASE/bin:$PERLLIB; export PERLLIB
    INCDIR_ALT=$_LOCAL_BASE/include:$IBASE/include; export INCDIR_ALT
    shift
    shift
    _INSTALL_ROOT=$_LOCAL_BASE
fi

# --------------------------   BUILD BINARY FILES   ---------------------------

a_build_binary_files() {
:
    carp "Building ASL..."
    #   To prevent compatibility warnings...
    INCDIR=
    LIBDIR=
    export LIBDIR INCDIR
    if [ "$BOOM_TRACE" ]; then
        MY_COPTS=-v
    else
        MY_COPTS=-q
    fi
    if [ ! -z "$_LOCAL_BASE" ]; then
        MY_COPTS="$MY_COPTS -li $_LOCAL_BASE/include -ll $_LOCAL_BASE/lib"
    fi
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_cli"
    c $MY_COPTS demo_cli || croak "\"c $MY_COPTS demo_cli\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_srv"
    c $MY_COPTS demo_srv || croak "\"c $MY_COPTS demo_srv\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS asl_field_test"
    c $MY_COPTS asl_field_test || croak "\"c $MY_COPTS asl_field_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS asl_field"
    c $MY_COPTS asl_field || croak "\"c $MY_COPTS asl_field\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS asl_field_list_test"
    c $MY_COPTS asl_field_list_test || croak "\"c $MY_COPTS asl_field_list_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS asl_field_list"
    c $MY_COPTS asl_field_list || croak "\"c $MY_COPTS asl_field_list\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_method_test"
    c $MY_COPTS demo_client_method_test || croak "\"c $MY_COPTS demo_client_method_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_method"
    c $MY_COPTS demo_client_method || croak "\"c $MY_COPTS demo_client_method\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_agent"
    c $MY_COPTS demo_client_agent || croak "\"c $MY_COPTS demo_client_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_config_test"
    c $MY_COPTS demo_client_config_test || croak "\"c $MY_COPTS demo_client_config_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_config"
    c $MY_COPTS demo_client_config || croak "\"c $MY_COPTS demo_client_config\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_classes"
    c $MY_COPTS demo_client_classes || croak "\"c $MY_COPTS demo_client_classes\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_connection_test"
    c $MY_COPTS demo_client_connection_test || croak "\"c $MY_COPTS demo_client_connection_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_connection"
    c $MY_COPTS demo_client_connection || croak "\"c $MY_COPTS demo_client_connection\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_session_test"
    c $MY_COPTS demo_client_session_test || croak "\"c $MY_COPTS demo_client_session_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_session"
    c $MY_COPTS demo_client_session || croak "\"c $MY_COPTS demo_client_session\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_channel_test"
    c $MY_COPTS demo_client_channel_test || croak "\"c $MY_COPTS demo_client_channel_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_channel"
    c $MY_COPTS demo_client_channel || croak "\"c $MY_COPTS demo_client_channel\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_channel_table_test"
    c $MY_COPTS demo_client_channel_table_test || croak "\"c $MY_COPTS demo_client_channel_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_client_channel_table"
    c $MY_COPTS demo_client_channel_table || croak "\"c $MY_COPTS demo_client_channel_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_config_test"
    c $MY_COPTS demo_server_config_test || croak "\"c $MY_COPTS demo_server_config_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_config"
    c $MY_COPTS demo_server_config || croak "\"c $MY_COPTS demo_server_config\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_method_test"
    c $MY_COPTS demo_server_method_test || croak "\"c $MY_COPTS demo_server_method_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_method"
    c $MY_COPTS demo_server_method || croak "\"c $MY_COPTS demo_server_method\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_agent"
    c $MY_COPTS demo_server_agent || croak "\"c $MY_COPTS demo_server_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_classes"
    c $MY_COPTS demo_server_classes || croak "\"c $MY_COPTS demo_server_classes\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_connection_test"
    c $MY_COPTS demo_server_connection_test || croak "\"c $MY_COPTS demo_server_connection_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_connection"
    c $MY_COPTS demo_server_connection || croak "\"c $MY_COPTS demo_server_connection\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_connection_table_test"
    c $MY_COPTS demo_server_connection_table_test || croak "\"c $MY_COPTS demo_server_connection_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_connection_table"
    c $MY_COPTS demo_server_connection_table || croak "\"c $MY_COPTS demo_server_connection_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_connection_list_test"
    c $MY_COPTS demo_server_connection_list_test || croak "\"c $MY_COPTS demo_server_connection_list_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_connection_list"
    c $MY_COPTS demo_server_connection_list || croak "\"c $MY_COPTS demo_server_connection_list\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_channel_test"
    c $MY_COPTS demo_server_channel_test || croak "\"c $MY_COPTS demo_server_channel_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_channel"
    c $MY_COPTS demo_server_channel || croak "\"c $MY_COPTS demo_server_channel\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_channel_agent"
    c $MY_COPTS demo_server_channel_agent || croak "\"c $MY_COPTS demo_server_channel_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_channel_table_test"
    c $MY_COPTS demo_server_channel_table_test || croak "\"c $MY_COPTS demo_server_channel_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_server_channel_table"
    c $MY_COPTS demo_server_channel_table || croak "\"c $MY_COPTS demo_server_channel_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_broker_test"
    c $MY_COPTS demo_broker_test || croak "\"c $MY_COPTS demo_broker_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_broker"
    c $MY_COPTS demo_broker || croak "\"c $MY_COPTS demo_broker\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_broker_agent"
    c $MY_COPTS demo_broker_agent || croak "\"c $MY_COPTS demo_broker_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_exchange_test"
    c $MY_COPTS demo_exchange_test || croak "\"c $MY_COPTS demo_exchange_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_exchange"
    c $MY_COPTS demo_exchange || croak "\"c $MY_COPTS demo_exchange\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_exchange_table_test"
    c $MY_COPTS demo_exchange_table_test || croak "\"c $MY_COPTS demo_exchange_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_exchange_table"
    c $MY_COPTS demo_exchange_table || croak "\"c $MY_COPTS demo_exchange_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_exchange_agent"
    c $MY_COPTS demo_exchange_agent || croak "\"c $MY_COPTS demo_exchange_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_queue_test"
    c $MY_COPTS demo_queue_test || croak "\"c $MY_COPTS demo_queue_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_queue"
    c $MY_COPTS demo_queue || croak "\"c $MY_COPTS demo_queue\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_queue_table_test"
    c $MY_COPTS demo_queue_table_test || croak "\"c $MY_COPTS demo_queue_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_queue_table"
    c $MY_COPTS demo_queue_table || croak "\"c $MY_COPTS demo_queue_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_queue_list_test"
    c $MY_COPTS demo_queue_list_test || croak "\"c $MY_COPTS demo_queue_list_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_queue_list"
    c $MY_COPTS demo_queue_list || croak "\"c $MY_COPTS demo_queue_list\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_queue_agent"
    c $MY_COPTS demo_queue_agent || croak "\"c $MY_COPTS demo_queue_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_lease_test"
    c $MY_COPTS demo_lease_test || croak "\"c $MY_COPTS demo_lease_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_lease"
    c $MY_COPTS demo_lease || croak "\"c $MY_COPTS demo_lease\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_lease_table_test"
    c $MY_COPTS demo_lease_table_test || croak "\"c $MY_COPTS demo_lease_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_lease_table"
    c $MY_COPTS demo_lease_table || croak "\"c $MY_COPTS demo_lease_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_content_basic_test"
    c $MY_COPTS demo_content_basic_test || croak "\"c $MY_COPTS demo_content_basic_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_content_basic"
    c $MY_COPTS demo_content_basic || croak "\"c $MY_COPTS demo_content_basic\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_content_basic_list_test"
    c $MY_COPTS demo_content_basic_list_test || croak "\"c $MY_COPTS demo_content_basic_list_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_content_basic_list"
    c $MY_COPTS demo_content_basic_list || croak "\"c $MY_COPTS demo_content_basic_list\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_constants"
    c $MY_COPTS demo_constants || croak "\"c $MY_COPTS demo_constants\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_srv_resource_test"
    c $MY_COPTS demo_srv_resource_test || croak "\"c $MY_COPTS demo_srv_resource_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS demo_srv_resource"
    c $MY_COPTS demo_srv_resource || croak "\"c $MY_COPTS demo_srv_resource\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl asl_field"
    c $MY_COPTS -r libasl asl_field || croak "\"c $MY_COPTS -r libasl asl_field\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl asl_field_list"
    c $MY_COPTS -r libasl asl_field_list || croak "\"c $MY_COPTS -r libasl asl_field_list\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_client_method"
    c $MY_COPTS -r libasl demo_client_method || croak "\"c $MY_COPTS -r libasl demo_client_method\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_client_agent"
    c $MY_COPTS -r libasl demo_client_agent || croak "\"c $MY_COPTS -r libasl demo_client_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_client_config"
    c $MY_COPTS -r libasl demo_client_config || croak "\"c $MY_COPTS -r libasl demo_client_config\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_client_classes"
    c $MY_COPTS -r libasl demo_client_classes || croak "\"c $MY_COPTS -r libasl demo_client_classes\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_client_connection"
    c $MY_COPTS -r libasl demo_client_connection || croak "\"c $MY_COPTS -r libasl demo_client_connection\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_client_session"
    c $MY_COPTS -r libasl demo_client_session || croak "\"c $MY_COPTS -r libasl demo_client_session\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_client_channel"
    c $MY_COPTS -r libasl demo_client_channel || croak "\"c $MY_COPTS -r libasl demo_client_channel\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_client_channel_table"
    c $MY_COPTS -r libasl demo_client_channel_table || croak "\"c $MY_COPTS -r libasl demo_client_channel_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_server_config"
    c $MY_COPTS -r libasl demo_server_config || croak "\"c $MY_COPTS -r libasl demo_server_config\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_server_method"
    c $MY_COPTS -r libasl demo_server_method || croak "\"c $MY_COPTS -r libasl demo_server_method\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_server_agent"
    c $MY_COPTS -r libasl demo_server_agent || croak "\"c $MY_COPTS -r libasl demo_server_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_server_classes"
    c $MY_COPTS -r libasl demo_server_classes || croak "\"c $MY_COPTS -r libasl demo_server_classes\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_server_connection"
    c $MY_COPTS -r libasl demo_server_connection || croak "\"c $MY_COPTS -r libasl demo_server_connection\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_server_connection_table"
    c $MY_COPTS -r libasl demo_server_connection_table || croak "\"c $MY_COPTS -r libasl demo_server_connection_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_server_connection_list"
    c $MY_COPTS -r libasl demo_server_connection_list || croak "\"c $MY_COPTS -r libasl demo_server_connection_list\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_server_channel"
    c $MY_COPTS -r libasl demo_server_channel || croak "\"c $MY_COPTS -r libasl demo_server_channel\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_server_channel_agent"
    c $MY_COPTS -r libasl demo_server_channel_agent || croak "\"c $MY_COPTS -r libasl demo_server_channel_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_server_channel_table"
    c $MY_COPTS -r libasl demo_server_channel_table || croak "\"c $MY_COPTS -r libasl demo_server_channel_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_broker"
    c $MY_COPTS -r libasl demo_broker || croak "\"c $MY_COPTS -r libasl demo_broker\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_broker_agent"
    c $MY_COPTS -r libasl demo_broker_agent || croak "\"c $MY_COPTS -r libasl demo_broker_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_exchange"
    c $MY_COPTS -r libasl demo_exchange || croak "\"c $MY_COPTS -r libasl demo_exchange\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_exchange_table"
    c $MY_COPTS -r libasl demo_exchange_table || croak "\"c $MY_COPTS -r libasl demo_exchange_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_exchange_agent"
    c $MY_COPTS -r libasl demo_exchange_agent || croak "\"c $MY_COPTS -r libasl demo_exchange_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_queue"
    c $MY_COPTS -r libasl demo_queue || croak "\"c $MY_COPTS -r libasl demo_queue\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_queue_table"
    c $MY_COPTS -r libasl demo_queue_table || croak "\"c $MY_COPTS -r libasl demo_queue_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_queue_list"
    c $MY_COPTS -r libasl demo_queue_list || croak "\"c $MY_COPTS -r libasl demo_queue_list\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_queue_agent"
    c $MY_COPTS -r libasl demo_queue_agent || croak "\"c $MY_COPTS -r libasl demo_queue_agent\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_lease"
    c $MY_COPTS -r libasl demo_lease || croak "\"c $MY_COPTS -r libasl demo_lease\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_lease_table"
    c $MY_COPTS -r libasl demo_lease_table || croak "\"c $MY_COPTS -r libasl demo_lease_table\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_content_basic"
    c $MY_COPTS -r libasl demo_content_basic || croak "\"c $MY_COPTS -r libasl demo_content_basic\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_content_basic_list"
    c $MY_COPTS -r libasl demo_content_basic_list || croak "\"c $MY_COPTS -r libasl demo_content_basic_list\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_constants"
    c $MY_COPTS -r libasl demo_constants || croak "\"c $MY_COPTS -r libasl demo_constants\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -r libasl demo_srv_resource"
    c $MY_COPTS -r libasl demo_srv_resource || croak "\"c $MY_COPTS -r libasl demo_srv_resource\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_cli"
    c $MY_COPTS -L demo_cli || croak "\"c $MY_COPTS -L demo_cli\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_srv"
    c $MY_COPTS -L demo_srv || croak "\"c $MY_COPTS -L demo_srv\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L asl_field_test"
    c $MY_COPTS -L asl_field_test || croak "\"c $MY_COPTS -L asl_field_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L asl_field_list_test"
    c $MY_COPTS -L asl_field_list_test || croak "\"c $MY_COPTS -L asl_field_list_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_client_method_test"
    c $MY_COPTS -L demo_client_method_test || croak "\"c $MY_COPTS -L demo_client_method_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_client_config_test"
    c $MY_COPTS -L demo_client_config_test || croak "\"c $MY_COPTS -L demo_client_config_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_client_connection_test"
    c $MY_COPTS -L demo_client_connection_test || croak "\"c $MY_COPTS -L demo_client_connection_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_client_session_test"
    c $MY_COPTS -L demo_client_session_test || croak "\"c $MY_COPTS -L demo_client_session_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_client_channel_test"
    c $MY_COPTS -L demo_client_channel_test || croak "\"c $MY_COPTS -L demo_client_channel_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_client_channel_table_test"
    c $MY_COPTS -L demo_client_channel_table_test || croak "\"c $MY_COPTS -L demo_client_channel_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_server_config_test"
    c $MY_COPTS -L demo_server_config_test || croak "\"c $MY_COPTS -L demo_server_config_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_server_method_test"
    c $MY_COPTS -L demo_server_method_test || croak "\"c $MY_COPTS -L demo_server_method_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_server_connection_test"
    c $MY_COPTS -L demo_server_connection_test || croak "\"c $MY_COPTS -L demo_server_connection_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_server_connection_table_test"
    c $MY_COPTS -L demo_server_connection_table_test || croak "\"c $MY_COPTS -L demo_server_connection_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_server_connection_list_test"
    c $MY_COPTS -L demo_server_connection_list_test || croak "\"c $MY_COPTS -L demo_server_connection_list_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_server_channel_test"
    c $MY_COPTS -L demo_server_channel_test || croak "\"c $MY_COPTS -L demo_server_channel_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_server_channel_table_test"
    c $MY_COPTS -L demo_server_channel_table_test || croak "\"c $MY_COPTS -L demo_server_channel_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_broker_test"
    c $MY_COPTS -L demo_broker_test || croak "\"c $MY_COPTS -L demo_broker_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_exchange_test"
    c $MY_COPTS -L demo_exchange_test || croak "\"c $MY_COPTS -L demo_exchange_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_exchange_table_test"
    c $MY_COPTS -L demo_exchange_table_test || croak "\"c $MY_COPTS -L demo_exchange_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_queue_test"
    c $MY_COPTS -L demo_queue_test || croak "\"c $MY_COPTS -L demo_queue_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_queue_table_test"
    c $MY_COPTS -L demo_queue_table_test || croak "\"c $MY_COPTS -L demo_queue_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_queue_list_test"
    c $MY_COPTS -L demo_queue_list_test || croak "\"c $MY_COPTS -L demo_queue_list_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_lease_test"
    c $MY_COPTS -L demo_lease_test || croak "\"c $MY_COPTS -L demo_lease_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_lease_table_test"
    c $MY_COPTS -L demo_lease_table_test || croak "\"c $MY_COPTS -L demo_lease_table_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_content_basic_test"
    c $MY_COPTS -L demo_content_basic_test || croak "\"c $MY_COPTS -L demo_content_basic_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_content_basic_list_test"
    c $MY_COPTS -L demo_content_basic_list_test || croak "\"c $MY_COPTS -L demo_content_basic_list_test\" failed"
    [ "$BOOM_TRACE" ] && echo "c $MY_COPTS -L demo_srv_resource_test"
    c $MY_COPTS -L demo_srv_resource_test || croak "\"c $MY_COPTS -L demo_srv_resource_test\" failed"
    PUSHDIR=`pwd`
    cd pal/
    cd $PUSHDIR
}

# -------------------------   BUILD SOURCE PACKAGES   -------------------------

a_build_source_packages() {
:
    rm -f _package.lst
    if [ -f "asl/version.h" ]; then
        echo asl/version.h>>_package.lst
    fi
    if [ -f "asl/asl.h" ]; then
        echo asl/asl.h>>_package.lst
    fi
    if [ -f "asl/asl.xnf" ]; then
        echo asl/asl.xnf>>_package.lst
    fi
    if [ -f "asl/asl_gen.gsl" ]; then
        echo asl/asl_gen.gsl>>_package.lst
    fi
    if [ -f "asl/asl_preproc.gsl" ]; then
        echo asl/asl_preproc.gsl>>_package.lst
    fi
    if [ -f "asl/asl_inherit.gsl" ]; then
        echo asl/asl_inherit.gsl>>_package.lst
    fi
    if [ -f "asl/asl_parse.gsl" ]; then
        echo asl/asl_parse.gsl>>_package.lst
    fi
    if [ -f "asl/asl_doc.txt" ]; then
        echo asl/asl_doc.txt>>_package.lst
    fi
    if [ -f "asl/asl_stdc.gsl" ]; then
        echo asl/asl_stdc.gsl>>_package.lst
    fi
    if [ -f "asl/asl_java.gsl" ]; then
        echo asl/asl_java.gsl>>_package.lst
    fi
    if [ -f "asl/asl_csharp.gsl" ]; then
        echo asl/asl_csharp.gsl>>_package.lst
    fi
    if [ -f "asl/asl_doc.gsl" ]; then
        echo asl/asl_doc.gsl>>_package.lst
    fi
    if [ -f "asl/asl_constants.gsl" ]; then
        echo asl/asl_constants.gsl>>_package.lst
    fi
    if [ -f "asl/asl_method_class.gsl" ]; then
        echo asl/asl_method_class.gsl>>_package.lst
    fi
    if [ -f "asl/asl_content_class.gsl" ]; then
        echo asl/asl_content_class.gsl>>_package.lst
    fi
    if [ -f "asl/asl_client_connection.gsl" ]; then
        echo asl/asl_client_connection.gsl>>_package.lst
    fi
    if [ -f "asl/asl_client_session.gsl" ]; then
        echo asl/asl_client_session.gsl>>_package.lst
    fi
    if [ -f "asl/asl_client_agent.gsl" ]; then
        echo asl/asl_client_agent.gsl>>_package.lst
    fi
    if [ -f "asl/asl_server_agent.gsl" ]; then
        echo asl/asl_server_agent.gsl>>_package.lst
    fi
    if [ -f "asl/asl_agent_common.gsl" ]; then
        echo asl/asl_agent_common.gsl>>_package.lst
    fi
    if [ -f "asl/asl_channel.icl" ]; then
        echo asl/asl_channel.icl>>_package.lst
    fi
    if [ -f "asl/asl_server_connection.icl" ]; then
        echo asl/asl_server_connection.icl>>_package.lst
    fi
    if [ -f "asl/asl_server_channel.icl" ]; then
        echo asl/asl_server_channel.icl>>_package.lst
    fi
    if [ -f "asl/asl_client_channel.icl" ]; then
        echo asl/asl_client_channel.icl>>_package.lst
    fi
    if [ -f "asl/asl_broker.icl" ]; then
        echo asl/asl_broker.icl>>_package.lst
    fi
    if [ -f "asl/asl_field.icl" ]; then
        echo asl/asl_field.icl>>_package.lst
    fi
    if [ -f "asl/asl_field_list.icl" ]; then
        echo asl/asl_field_list.icl>>_package.lst
    fi
    if [ -f "asl/asl_base.asl" ]; then
        echo asl/asl_base.asl>>_package.lst
    fi
    if [ -f "asl/asl_constants.asl" ]; then
        echo asl/asl_constants.asl>>_package.lst
    fi
    if [ -f "asl/asl_connection.asl" ]; then
        echo asl/asl_connection.asl>>_package.lst
    fi
    if [ -f "asl/asl_channel.asl" ]; then
        echo asl/asl_channel.asl>>_package.lst
    fi
    if [ -f "asl/asl_client.asl" ]; then
        echo asl/asl_client.asl>>_package.lst
    fi
    if [ -f "asl/asl_server.asl" ]; then
        echo asl/asl_server.asl>>_package.lst
    fi
    if [ -f "asl/asl_direct.asl" ]; then
        echo asl/asl_direct.asl>>_package.lst
    fi
    if [ -f "asl/demo.asl" ]; then
        echo asl/demo.asl>>_package.lst
    fi
    if [ -f "asl/demo_exchange.asl" ]; then
        echo asl/demo_exchange.asl>>_package.lst
    fi
    if [ -f "asl/demo_queue.asl" ]; then
        echo asl/demo_queue.asl>>_package.lst
    fi
    if [ -f "asl/demo_basic.asl" ]; then
        echo asl/demo_basic.asl>>_package.lst
    fi
    if [ -f "asl/demo_cli.c" ]; then
        echo asl/demo_cli.c>>_package.lst
    fi
    if [ -f "asl/demo_client_proto.asl" ]; then
        echo asl/demo_client_proto.asl>>_package.lst
    fi
    if [ -f "asl/demo_client_method.icl" ]; then
        echo asl/demo_client_method.icl>>_package.lst
    fi
    if [ -f "asl/demo_client_agent.smt" ]; then
        echo asl/demo_client_agent.smt>>_package.lst
    fi
    if [ -f "asl/demo_client_config.opf" ]; then
        echo asl/demo_client_config.opf>>_package.lst
    fi
    if [ -f "asl/demo_client_classes.icl" ]; then
        echo asl/demo_client_classes.icl>>_package.lst
    fi
    if [ -f "asl/demo_client_connection.icl" ]; then
        echo asl/demo_client_connection.icl>>_package.lst
    fi
    if [ -f "asl/demo_client_session.icl" ]; then
        echo asl/demo_client_session.icl>>_package.lst
    fi
    if [ -f "asl/demo_client_channel.icl" ]; then
        echo asl/demo_client_channel.icl>>_package.lst
    fi
    if [ -f "asl/demo_client_channel_table.icl" ]; then
        echo asl/demo_client_channel_table.icl>>_package.lst
    fi
    if [ -f "asl/demo_srv.c" ]; then
        echo asl/demo_srv.c>>_package.lst
    fi
    if [ -f "asl/demo_server_proto.asl" ]; then
        echo asl/demo_server_proto.asl>>_package.lst
    fi
    if [ -f "asl/demo_server_main.inc" ]; then
        echo asl/demo_server_main.inc>>_package.lst
    fi
    if [ -f "asl/demo_server_config.opf" ]; then
        echo asl/demo_server_config.opf>>_package.lst
    fi
    if [ -f "asl/demo_server_method.icl" ]; then
        echo asl/demo_server_method.icl>>_package.lst
    fi
    if [ -f "asl/demo_server_agent.smt" ]; then
        echo asl/demo_server_agent.smt>>_package.lst
    fi
    if [ -f "asl/demo_server_classes.icl" ]; then
        echo asl/demo_server_classes.icl>>_package.lst
    fi
    if [ -f "asl/demo_server_connection.icl" ]; then
        echo asl/demo_server_connection.icl>>_package.lst
    fi
    if [ -f "asl/demo_server_connection_table.icl" ]; then
        echo asl/demo_server_connection_table.icl>>_package.lst
    fi
    if [ -f "asl/demo_server_connection_list.icl" ]; then
        echo asl/demo_server_connection_list.icl>>_package.lst
    fi
    if [ -f "asl/demo_server_channel.icl" ]; then
        echo asl/demo_server_channel.icl>>_package.lst
    fi
    if [ -f "asl/demo_server_channel_agent.smt" ]; then
        echo asl/demo_server_channel_agent.smt>>_package.lst
    fi
    if [ -f "asl/demo_server_channel_table.icl" ]; then
        echo asl/demo_server_channel_table.icl>>_package.lst
    fi
    if [ -f "asl/demo_broker.icl" ]; then
        echo asl/demo_broker.icl>>_package.lst
    fi
    if [ -f "asl/demo_broker_agent.smt" ]; then
        echo asl/demo_broker_agent.smt>>_package.lst
    fi
    if [ -f "asl/demo_exchange.icl" ]; then
        echo asl/demo_exchange.icl>>_package.lst
    fi
    if [ -f "asl/demo_exchange_table.icl" ]; then
        echo asl/demo_exchange_table.icl>>_package.lst
    fi
    if [ -f "asl/demo_exchange_agent.smt" ]; then
        echo asl/demo_exchange_agent.smt>>_package.lst
    fi
    if [ -f "asl/demo_queue.icl" ]; then
        echo asl/demo_queue.icl>>_package.lst
    fi
    if [ -f "asl/demo_queue_table.icl" ]; then
        echo asl/demo_queue_table.icl>>_package.lst
    fi
    if [ -f "asl/demo_queue_list.icl" ]; then
        echo asl/demo_queue_list.icl>>_package.lst
    fi
    if [ -f "asl/demo_queue_agent.smt" ]; then
        echo asl/demo_queue_agent.smt>>_package.lst
    fi
    if [ -f "asl/demo_lease.icl" ]; then
        echo asl/demo_lease.icl>>_package.lst
    fi
    if [ -f "asl/demo_lease_table.icl" ]; then
        echo asl/demo_lease_table.icl>>_package.lst
    fi
    if [ -f "asl/demo_content_basic.icl" ]; then
        echo asl/demo_content_basic.icl>>_package.lst
    fi
    if [ -f "asl/demo_content_basic_list.icl" ]; then
        echo asl/demo_content_basic_list.icl>>_package.lst
    fi
    if [ -f "asl/demo_constants.icl" ]; then
        echo asl/demo_constants.icl>>_package.lst
    fi
    if [ -f "asl/demo_srv_resource.rc" ]; then
        echo asl/demo_srv_resource.rc>>_package.lst
    fi
    if [ -f "asl/demo_srv_base.cfg" ]; then
        echo asl/demo_srv_base.cfg>>_package.lst
    fi
    if [ -f "asl/icl_make_doc.ignore" ]; then
        echo asl/icl_make_doc.ignore>>_package.lst
    fi
    if [ -f "asl/prelude.pdl" ]; then
        echo asl/prelude.pdl>>_package.lst
    fi
    if [ -f "asl/license.gpl" ]; then
        echo asl/license.gpl>>_package.lst
    fi
    if [ -f "asl/project.pdl" ]; then
        echo asl/project.pdl>>_package.lst
    fi
    if [ -f "asl/readme.txt" ]; then
        echo asl/readme.txt>>_package.lst
    fi
    if [ -f "asl/asl_field_test.c" ]; then
        echo asl/asl_field_test.c>>_package.lst
    fi
    if [ -f "asl/asl_field.h" ]; then
        echo asl/asl_field.h>>_package.lst
    fi
    if [ -f "asl/asl_field.c" ]; then
        echo asl/asl_field.c>>_package.lst
    fi
    if [ -f "asl/asl_field_list_test.c" ]; then
        echo asl/asl_field_list_test.c>>_package.lst
    fi
    if [ -f "asl/asl_field_list.h" ]; then
        echo asl/asl_field_list.h>>_package.lst
    fi
    if [ -f "asl/asl_field_list.c" ]; then
        echo asl/asl_field_list.c>>_package.lst
    fi
    if [ -f "asl/demo_client_method_test.c" ]; then
        echo asl/demo_client_method_test.c>>_package.lst
    fi
    if [ -f "asl/demo_client_method.h" ]; then
        echo asl/demo_client_method.h>>_package.lst
    fi
    if [ -f "asl/demo_client_method.c" ]; then
        echo asl/demo_client_method.c>>_package.lst
    fi
    if [ -f "asl/demo_client_agent.h" ]; then
        echo asl/demo_client_agent.h>>_package.lst
    fi
    if [ -f "asl/demo_client_agent.c" ]; then
        echo asl/demo_client_agent.c>>_package.lst
    fi
    if [ -f "asl/demo_client_config.icl" ]; then
        echo asl/demo_client_config.icl>>_package.lst
    fi
    if [ -f "asl/demo_client_config_test.c" ]; then
        echo asl/demo_client_config_test.c>>_package.lst
    fi
    if [ -f "asl/demo_client_config.h" ]; then
        echo asl/demo_client_config.h>>_package.lst
    fi
    if [ -f "asl/demo_client_config.c" ]; then
        echo asl/demo_client_config.c>>_package.lst
    fi
    if [ -f "asl/demo_client_config.txt" ]; then
        echo asl/demo_client_config.txt>>_package.lst
    fi
    if [ -f "asl/demo_client_classes.h" ]; then
        echo asl/demo_client_classes.h>>_package.lst
    fi
    if [ -f "asl/demo_client_classes.c" ]; then
        echo asl/demo_client_classes.c>>_package.lst
    fi
    if [ -f "asl/demo_client_connection_test.c" ]; then
        echo asl/demo_client_connection_test.c>>_package.lst
    fi
    if [ -f "asl/demo_client_connection.h" ]; then
        echo asl/demo_client_connection.h>>_package.lst
    fi
    if [ -f "asl/demo_client_connection.c" ]; then
        echo asl/demo_client_connection.c>>_package.lst
    fi
    if [ -f "asl/demo_client_session_test.c" ]; then
        echo asl/demo_client_session_test.c>>_package.lst
    fi
    if [ -f "asl/demo_client_session.h" ]; then
        echo asl/demo_client_session.h>>_package.lst
    fi
    if [ -f "asl/demo_client_session.c" ]; then
        echo asl/demo_client_session.c>>_package.lst
    fi
    if [ -f "asl/demo_client_channel_test.c" ]; then
        echo asl/demo_client_channel_test.c>>_package.lst
    fi
    if [ -f "asl/demo_client_channel.h" ]; then
        echo asl/demo_client_channel.h>>_package.lst
    fi
    if [ -f "asl/demo_client_channel.c" ]; then
        echo asl/demo_client_channel.c>>_package.lst
    fi
    if [ -f "asl/demo_client_channel_table_test.c" ]; then
        echo asl/demo_client_channel_table_test.c>>_package.lst
    fi
    if [ -f "asl/demo_client_channel_table.h" ]; then
        echo asl/demo_client_channel_table.h>>_package.lst
    fi
    if [ -f "asl/demo_client_channel_table.c" ]; then
        echo asl/demo_client_channel_table.c>>_package.lst
    fi
    if [ -f "asl/demo_server_config.icl" ]; then
        echo asl/demo_server_config.icl>>_package.lst
    fi
    if [ -f "asl/demo_server_config_test.c" ]; then
        echo asl/demo_server_config_test.c>>_package.lst
    fi
    if [ -f "asl/demo_server_config.h" ]; then
        echo asl/demo_server_config.h>>_package.lst
    fi
    if [ -f "asl/demo_server_config.c" ]; then
        echo asl/demo_server_config.c>>_package.lst
    fi
    if [ -f "asl/demo_server_config.txt" ]; then
        echo asl/demo_server_config.txt>>_package.lst
    fi
    if [ -f "asl/demo_server_method_test.c" ]; then
        echo asl/demo_server_method_test.c>>_package.lst
    fi
    if [ -f "asl/demo_server_method.h" ]; then
        echo asl/demo_server_method.h>>_package.lst
    fi
    if [ -f "asl/demo_server_method.c" ]; then
        echo asl/demo_server_method.c>>_package.lst
    fi
    if [ -f "asl/demo_server_agent.h" ]; then
        echo asl/demo_server_agent.h>>_package.lst
    fi
    if [ -f "asl/demo_server_agent.c" ]; then
        echo asl/demo_server_agent.c>>_package.lst
    fi
    if [ -f "asl/demo_server_classes.h" ]; then
        echo asl/demo_server_classes.h>>_package.lst
    fi
    if [ -f "asl/demo_server_classes.c" ]; then
        echo asl/demo_server_classes.c>>_package.lst
    fi
    if [ -f "asl/demo_server_connection_test.c" ]; then
        echo asl/demo_server_connection_test.c>>_package.lst
    fi
    if [ -f "asl/demo_server_connection.h" ]; then
        echo asl/demo_server_connection.h>>_package.lst
    fi
    if [ -f "asl/demo_server_connection.c" ]; then
        echo asl/demo_server_connection.c>>_package.lst
    fi
    if [ -f "asl/demo_server_connection_table_test.c" ]; then
        echo asl/demo_server_connection_table_test.c>>_package.lst
    fi
    if [ -f "asl/demo_server_connection_table.h" ]; then
        echo asl/demo_server_connection_table.h>>_package.lst
    fi
    if [ -f "asl/demo_server_connection_table.c" ]; then
        echo asl/demo_server_connection_table.c>>_package.lst
    fi
    if [ -f "asl/demo_server_connection_list_test.c" ]; then
        echo asl/demo_server_connection_list_test.c>>_package.lst
    fi
    if [ -f "asl/demo_server_connection_list.h" ]; then
        echo asl/demo_server_connection_list.h>>_package.lst
    fi
    if [ -f "asl/demo_server_connection_list.c" ]; then
        echo asl/demo_server_connection_list.c>>_package.lst
    fi
    if [ -f "asl/demo_server_channel_test.c" ]; then
        echo asl/demo_server_channel_test.c>>_package.lst
    fi
    if [ -f "asl/demo_server_channel.h" ]; then
        echo asl/demo_server_channel.h>>_package.lst
    fi
    if [ -f "asl/demo_server_channel.c" ]; then
        echo asl/demo_server_channel.c>>_package.lst
    fi
    if [ -f "asl/demo_server_channel_agent.h" ]; then
        echo asl/demo_server_channel_agent.h>>_package.lst
    fi
    if [ -f "asl/demo_server_channel_agent.c" ]; then
        echo asl/demo_server_channel_agent.c>>_package.lst
    fi
    if [ -f "asl/demo_server_channel_table_test.c" ]; then
        echo asl/demo_server_channel_table_test.c>>_package.lst
    fi
    if [ -f "asl/demo_server_channel_table.h" ]; then
        echo asl/demo_server_channel_table.h>>_package.lst
    fi
    if [ -f "asl/demo_server_channel_table.c" ]; then
        echo asl/demo_server_channel_table.c>>_package.lst
    fi
    if [ -f "asl/demo_broker_test.c" ]; then
        echo asl/demo_broker_test.c>>_package.lst
    fi
    if [ -f "asl/demo_broker.h" ]; then
        echo asl/demo_broker.h>>_package.lst
    fi
    if [ -f "asl/demo_broker.c" ]; then
        echo asl/demo_broker.c>>_package.lst
    fi
    if [ -f "asl/demo_broker_agent.h" ]; then
        echo asl/demo_broker_agent.h>>_package.lst
    fi
    if [ -f "asl/demo_broker_agent.c" ]; then
        echo asl/demo_broker_agent.c>>_package.lst
    fi
    if [ -f "asl/demo_exchange_test.c" ]; then
        echo asl/demo_exchange_test.c>>_package.lst
    fi
    if [ -f "asl/demo_exchange.h" ]; then
        echo asl/demo_exchange.h>>_package.lst
    fi
    if [ -f "asl/demo_exchange.c" ]; then
        echo asl/demo_exchange.c>>_package.lst
    fi
    if [ -f "asl/demo_exchange_table_test.c" ]; then
        echo asl/demo_exchange_table_test.c>>_package.lst
    fi
    if [ -f "asl/demo_exchange_table.h" ]; then
        echo asl/demo_exchange_table.h>>_package.lst
    fi
    if [ -f "asl/demo_exchange_table.c" ]; then
        echo asl/demo_exchange_table.c>>_package.lst
    fi
    if [ -f "asl/demo_exchange_agent.h" ]; then
        echo asl/demo_exchange_agent.h>>_package.lst
    fi
    if [ -f "asl/demo_exchange_agent.c" ]; then
        echo asl/demo_exchange_agent.c>>_package.lst
    fi
    if [ -f "asl/demo_queue_test.c" ]; then
        echo asl/demo_queue_test.c>>_package.lst
    fi
    if [ -f "asl/demo_queue.h" ]; then
        echo asl/demo_queue.h>>_package.lst
    fi
    if [ -f "asl/demo_queue.c" ]; then
        echo asl/demo_queue.c>>_package.lst
    fi
    if [ -f "asl/demo_queue_table_test.c" ]; then
        echo asl/demo_queue_table_test.c>>_package.lst
    fi
    if [ -f "asl/demo_queue_table.h" ]; then
        echo asl/demo_queue_table.h>>_package.lst
    fi
    if [ -f "asl/demo_queue_table.c" ]; then
        echo asl/demo_queue_table.c>>_package.lst
    fi
    if [ -f "asl/demo_queue_list_test.c" ]; then
        echo asl/demo_queue_list_test.c>>_package.lst
    fi
    if [ -f "asl/demo_queue_list.h" ]; then
        echo asl/demo_queue_list.h>>_package.lst
    fi
    if [ -f "asl/demo_queue_list.c" ]; then
        echo asl/demo_queue_list.c>>_package.lst
    fi
    if [ -f "asl/demo_queue_agent.h" ]; then
        echo asl/demo_queue_agent.h>>_package.lst
    fi
    if [ -f "asl/demo_queue_agent.c" ]; then
        echo asl/demo_queue_agent.c>>_package.lst
    fi
    if [ -f "asl/demo_lease_test.c" ]; then
        echo asl/demo_lease_test.c>>_package.lst
    fi
    if [ -f "asl/demo_lease.h" ]; then
        echo asl/demo_lease.h>>_package.lst
    fi
    if [ -f "asl/demo_lease.c" ]; then
        echo asl/demo_lease.c>>_package.lst
    fi
    if [ -f "asl/demo_lease_table_test.c" ]; then
        echo asl/demo_lease_table_test.c>>_package.lst
    fi
    if [ -f "asl/demo_lease_table.h" ]; then
        echo asl/demo_lease_table.h>>_package.lst
    fi
    if [ -f "asl/demo_lease_table.c" ]; then
        echo asl/demo_lease_table.c>>_package.lst
    fi
    if [ -f "asl/demo_content_basic_test.c" ]; then
        echo asl/demo_content_basic_test.c>>_package.lst
    fi
    if [ -f "asl/demo_content_basic.h" ]; then
        echo asl/demo_content_basic.h>>_package.lst
    fi
    if [ -f "asl/demo_content_basic.c" ]; then
        echo asl/demo_content_basic.c>>_package.lst
    fi
    if [ -f "asl/demo_content_basic_list_test.c" ]; then
        echo asl/demo_content_basic_list_test.c>>_package.lst
    fi
    if [ -f "asl/demo_content_basic_list.h" ]; then
        echo asl/demo_content_basic_list.h>>_package.lst
    fi
    if [ -f "asl/demo_content_basic_list.c" ]; then
        echo asl/demo_content_basic_list.c>>_package.lst
    fi
    if [ -f "asl/demo_constants.h" ]; then
        echo asl/demo_constants.h>>_package.lst
    fi
    if [ -f "asl/demo_constants.c" ]; then
        echo asl/demo_constants.c>>_package.lst
    fi
    if [ -f "asl/demo_srv_resource.icl" ]; then
        echo asl/demo_srv_resource.icl>>_package.lst
    fi
    if [ -f "asl/demo_srv_resource_test.c" ]; then
        echo asl/demo_srv_resource_test.c>>_package.lst
    fi
    if [ -f "asl/demo_srv_resource.h" ]; then
        echo asl/demo_srv_resource.h>>_package.lst
    fi
    if [ -f "asl/demo_srv_resource.c" ]; then
        echo asl/demo_srv_resource.c>>_package.lst
    fi
    if [ -f "asl/stamp_generate" ]; then
        echo asl/stamp_generate>>_package.lst
    fi
    if [ -f "asl/configure" ]; then
        echo asl/configure>>_package.lst
    fi
    if [ -f "asl/Makefile.unix" ]; then
        echo asl/Makefile.unix>>_package.lst
    fi
    if [ -f "asl/boomake" ]; then
        echo asl/boomake>>_package.lst
    fi
    if [ -f "asl/configure.bat" ]; then
        echo asl/configure.bat>>_package.lst
    fi
    if [ -f "asl/Makefile.win32" ]; then
        echo asl/Makefile.win32>>_package.lst
    fi
    if [ -f "asl/boomake.bat" ]; then
        echo asl/boomake.bat>>_package.lst
    fi
    if [ -f "asl/boomakew.bat" ]; then
        echo asl/boomakew.bat>>_package.lst
    fi
    if [ -f "asl/pal/asl_pal.gsl" ]; then
        echo asl/pal/asl_pal.gsl>>_package.lst
    fi
    if [ -f "asl/pal/asl_pal_stdc.gsl" ]; then
        echo asl/pal/asl_pal_stdc.gsl>>_package.lst
    fi
    if [ -f "asl/pal/asl_pal_xnf.gsl" ]; then
        echo asl/pal/asl_pal_xnf.gsl>>_package.lst
    fi
    if [ -f "asl/pal/asl_pal_txt.gsl" ]; then
        echo asl/pal/asl_pal_txt.gsl>>_package.lst
    fi
    if [ -f "asl/pal/palguide.txt" ]; then
        echo asl/pal/palguide.txt>>_package.lst
    fi
    if [ -f "asl/pal/pal" ]; then
        echo asl/pal/pal>>_package.lst
    fi
    if [ -f "asl/pal/pal.bat" ]; then
        echo asl/pal/pal.bat>>_package.lst
    fi
    if [ -f "asl/pal/demo_pal.xnf" ]; then
        echo asl/pal/demo_pal.xnf>>_package.lst
    fi
    if [ -f "asl/pal/demo_pal_stdc.gsl" ]; then
        echo asl/pal/demo_pal_stdc.gsl>>_package.lst
    fi
    if [ -f "asl/pal/demo_pal_codegen.gsl" ]; then
        echo asl/pal/demo_pal_codegen.gsl>>_package.lst
    fi
    if [ -f "asl/pal/demo_pal_gen.gsl" ]; then
        echo asl/pal/demo_pal_gen.gsl>>_package.lst
    fi
    if [ -f "asl/pal/demo_pal_inherit.gsl" ]; then
        echo asl/pal/demo_pal_inherit.gsl>>_package.lst
    fi
    if [ -f "asl/pal/demo_pal_parse.gsl" ]; then
        echo asl/pal/demo_pal_parse.gsl>>_package.lst
    fi
    if [ -f "asl/pal/demo_pal_preproc.gsl" ]; then
        echo asl/pal/demo_pal_preproc.gsl>>_package.lst
    fi
    if [ -f "asl/pal/hello.pal" ]; then
        echo asl/pal/hello.pal>>_package.lst
    fi
    if [ -f "asl/pal/loop1.pal" ]; then
        echo asl/pal/loop1.pal>>_package.lst
    fi
    if [ -f "asl/pal/loop2.pal" ]; then
        echo asl/pal/loop2.pal>>_package.lst
    fi
    if [ -f "asl/pal/content.pal" ]; then
        echo asl/pal/content.pal>>_package.lst
    fi
    if [ -f "asl/pal/macros.pal" ]; then
        echo asl/pal/macros.pal>>_package.lst
    fi
    if [ -f "asl/pal/session.pal" ]; then
        echo asl/pal/session.pal>>_package.lst
    fi
    if [ -f "asl/pal/single.pal" ]; then
        echo asl/pal/single.pal>>_package.lst
    fi
    if [ -f "asl/pal/single2.pal" ]; then
        echo asl/pal/single2.pal>>_package.lst
    fi
    if [ -f "asl/pal/symbols.pal" ]; then
        echo asl/pal/symbols.pal>>_package.lst
    fi
    if [ -f "asl/pal/waiting.pal" ]; then
        echo asl/pal/waiting.pal>>_package.lst
    fi
    if [ -f "asl/pal/content_file.pal" ]; then
        echo asl/pal/content_file.pal>>_package.lst
    fi
    if [ -f "asl/pal/content_exec.pal" ]; then
        echo asl/pal/content_exec.pal>>_package.lst
    fi
    if [ -f "asl/pal/content_body.pal" ]; then
        echo asl/pal/content_body.pal>>_package.lst
    fi
    if [ -f "asl/pal/cmdline.pal" ]; then
        echo asl/pal/cmdline.pal>>_package.lst
    fi
    if [ -f "asl/pal/webserver.pal" ]; then
        echo asl/pal/webserver.pal>>_package.lst
    fi
    if [ -f "asl/pal/stress.pal" ]; then
        echo asl/pal/stress.pal>>_package.lst
    fi
    if [ -f "asl/pal/im_read.pal" ]; then
        echo asl/pal/im_read.pal>>_package.lst
    fi
    if [ -f "asl/pal/im_send.pal" ]; then
        echo asl/pal/im_send.pal>>_package.lst
    fi
    if [ "`echo asl/pal/palguide*.html`" != "asl/pal/palguide*.html" ]; then
        for file in `echo asl/pal/palguide*.html`; do
            echo $file>>_package.lst
        done
    fi
    echo "Source package successfully generated">stamp_source
    echo "stamp_source">>_package.lst
    carp "Building ASL-$MY_VERSION-src.tar.gz..."
    zip  -rq _package.zip -@<_package.lst
    unzip -q _package.zip -d ASL-$MY_VERSION
    rm -f ASL-$MY_VERSION-src.tar.gz
    tar -cf  ASL-$MY_VERSION-src.tar ASL-$MY_VERSION
    gzip ASL-$MY_VERSION-src.tar
    rm -f ASL-$MY_VERSION-src.zip
    carp "Building ASL-$MY_VERSION-src.zip..."
    zip -lrmq ASL-$MY_VERSION-src.zip ASL-$MY_VERSION
    rm _package.zip
    rm _package.lst
    rm stamp_source
}

# ---------------------   CHECK ALL SOURCE FILES EXIST   ----------------------

a_check_all_source_files_exist() {
:
    if [ ! -f "version.h" ]; then
        croak "version.h is missing"
    fi
    if [ ! -f "asl.h" ]; then
        croak "asl.h is missing"
    fi
    if [ ! -f "asl.xnf" ]; then
        croak "asl.xnf is missing"
    fi
    if [ ! -f "asl_gen.gsl" ]; then
        croak "asl_gen.gsl is missing"
    fi
    if [ ! -f "asl_preproc.gsl" ]; then
        croak "asl_preproc.gsl is missing"
    fi
    if [ ! -f "asl_inherit.gsl" ]; then
        croak "asl_inherit.gsl is missing"
    fi
    if [ ! -f "asl_parse.gsl" ]; then
        croak "asl_parse.gsl is missing"
    fi
    if [ ! -f "asl_doc.txt" ]; then
        croak "asl_doc.txt is missing"
    fi
    if [ ! -f "asl_stdc.gsl" ]; then
        croak "asl_stdc.gsl is missing"
    fi
    if [ ! -f "asl_java.gsl" ]; then
        croak "asl_java.gsl is missing"
    fi
    if [ ! -f "asl_csharp.gsl" ]; then
        croak "asl_csharp.gsl is missing"
    fi
    if [ ! -f "asl_doc.gsl" ]; then
        croak "asl_doc.gsl is missing"
    fi
    if [ ! -f "asl_constants.gsl" ]; then
        croak "asl_constants.gsl is missing"
    fi
    if [ ! -f "asl_method_class.gsl" ]; then
        croak "asl_method_class.gsl is missing"
    fi
    if [ ! -f "asl_content_class.gsl" ]; then
        croak "asl_content_class.gsl is missing"
    fi
    if [ ! -f "asl_client_connection.gsl" ]; then
        croak "asl_client_connection.gsl is missing"
    fi
    if [ ! -f "asl_client_session.gsl" ]; then
        croak "asl_client_session.gsl is missing"
    fi
    if [ ! -f "asl_client_agent.gsl" ]; then
        croak "asl_client_agent.gsl is missing"
    fi
    if [ ! -f "asl_server_agent.gsl" ]; then
        croak "asl_server_agent.gsl is missing"
    fi
    if [ ! -f "asl_agent_common.gsl" ]; then
        croak "asl_agent_common.gsl is missing"
    fi
    if [ ! -f "asl_channel.icl" ]; then
        croak "asl_channel.icl is missing"
    fi
    if [ ! -f "asl_server_connection.icl" ]; then
        croak "asl_server_connection.icl is missing"
    fi
    if [ ! -f "asl_server_channel.icl" ]; then
        croak "asl_server_channel.icl is missing"
    fi
    if [ ! -f "asl_client_channel.icl" ]; then
        croak "asl_client_channel.icl is missing"
    fi
    if [ ! -f "asl_broker.icl" ]; then
        croak "asl_broker.icl is missing"
    fi
    if [ ! -f "asl_field.icl" ]; then
        croak "asl_field.icl is missing"
    fi
    if [ ! -f "asl_field_list.icl" ]; then
        croak "asl_field_list.icl is missing"
    fi
    if [ ! -f "asl_base.asl" ]; then
        croak "asl_base.asl is missing"
    fi
    if [ ! -f "asl_constants.asl" ]; then
        croak "asl_constants.asl is missing"
    fi
    if [ ! -f "asl_connection.asl" ]; then
        croak "asl_connection.asl is missing"
    fi
    if [ ! -f "asl_channel.asl" ]; then
        croak "asl_channel.asl is missing"
    fi
    if [ ! -f "asl_client.asl" ]; then
        croak "asl_client.asl is missing"
    fi
    if [ ! -f "asl_server.asl" ]; then
        croak "asl_server.asl is missing"
    fi
    if [ ! -f "asl_direct.asl" ]; then
        croak "asl_direct.asl is missing"
    fi
    if [ ! -f "demo.asl" ]; then
        croak "demo.asl is missing"
    fi
    if [ ! -f "demo_exchange.asl" ]; then
        croak "demo_exchange.asl is missing"
    fi
    if [ ! -f "demo_queue.asl" ]; then
        croak "demo_queue.asl is missing"
    fi
    if [ ! -f "demo_basic.asl" ]; then
        croak "demo_basic.asl is missing"
    fi
    if [ ! -f "demo_cli.c" ]; then
        croak "demo_cli.c is missing"
    fi
    if [ ! -f "demo_client_proto.asl" ]; then
        croak "demo_client_proto.asl is missing"
    fi
    if [ ! -f "demo_client_method.icl" ]; then
        croak "demo_client_method.icl is missing"
    fi
    if [ ! -f "demo_client_agent.smt" ]; then
        croak "demo_client_agent.smt is missing"
    fi
    if [ ! -f "demo_client_config.opf" ]; then
        croak "demo_client_config.opf is missing"
    fi
    if [ ! -f "demo_client_classes.icl" ]; then
        croak "demo_client_classes.icl is missing"
    fi
    if [ ! -f "demo_client_connection.icl" ]; then
        croak "demo_client_connection.icl is missing"
    fi
    if [ ! -f "demo_client_session.icl" ]; then
        croak "demo_client_session.icl is missing"
    fi
    if [ ! -f "demo_client_channel.icl" ]; then
        croak "demo_client_channel.icl is missing"
    fi
    if [ ! -f "demo_client_channel_table.icl" ]; then
        croak "demo_client_channel_table.icl is missing"
    fi
    if [ ! -f "demo_srv.c" ]; then
        croak "demo_srv.c is missing"
    fi
    if [ ! -f "demo_server_proto.asl" ]; then
        croak "demo_server_proto.asl is missing"
    fi
    if [ ! -f "demo_server_main.inc" ]; then
        croak "demo_server_main.inc is missing"
    fi
    if [ ! -f "demo_server_config.opf" ]; then
        croak "demo_server_config.opf is missing"
    fi
    if [ ! -f "demo_server_method.icl" ]; then
        croak "demo_server_method.icl is missing"
    fi
    if [ ! -f "demo_server_agent.smt" ]; then
        croak "demo_server_agent.smt is missing"
    fi
    if [ ! -f "demo_server_classes.icl" ]; then
        croak "demo_server_classes.icl is missing"
    fi
    if [ ! -f "demo_server_connection.icl" ]; then
        croak "demo_server_connection.icl is missing"
    fi
    if [ ! -f "demo_server_connection_table.icl" ]; then
        croak "demo_server_connection_table.icl is missing"
    fi
    if [ ! -f "demo_server_connection_list.icl" ]; then
        croak "demo_server_connection_list.icl is missing"
    fi
    if [ ! -f "demo_server_channel.icl" ]; then
        croak "demo_server_channel.icl is missing"
    fi
    if [ ! -f "demo_server_channel_agent.smt" ]; then
        croak "demo_server_channel_agent.smt is missing"
    fi
    if [ ! -f "demo_server_channel_table.icl" ]; then
        croak "demo_server_channel_table.icl is missing"
    fi
    if [ ! -f "demo_broker.icl" ]; then
        croak "demo_broker.icl is missing"
    fi
    if [ ! -f "demo_broker_agent.smt" ]; then
        croak "demo_broker_agent.smt is missing"
    fi
    if [ ! -f "demo_exchange.icl" ]; then
        croak "demo_exchange.icl is missing"
    fi
    if [ ! -f "demo_exchange_table.icl" ]; then
        croak "demo_exchange_table.icl is missing"
    fi
    if [ ! -f "demo_exchange_agent.smt" ]; then
        croak "demo_exchange_agent.smt is missing"
    fi
    if [ ! -f "demo_queue.icl" ]; then
        croak "demo_queue.icl is missing"
    fi
    if [ ! -f "demo_queue_table.icl" ]; then
        croak "demo_queue_table.icl is missing"
    fi
    if [ ! -f "demo_queue_list.icl" ]; then
        croak "demo_queue_list.icl is missing"
    fi
    if [ ! -f "demo_queue_agent.smt" ]; then
        croak "demo_queue_agent.smt is missing"
    fi
    if [ ! -f "demo_lease.icl" ]; then
        croak "demo_lease.icl is missing"
    fi
    if [ ! -f "demo_lease_table.icl" ]; then
        croak "demo_lease_table.icl is missing"
    fi
    if [ ! -f "demo_content_basic.icl" ]; then
        croak "demo_content_basic.icl is missing"
    fi
    if [ ! -f "demo_content_basic_list.icl" ]; then
        croak "demo_content_basic_list.icl is missing"
    fi
    if [ ! -f "demo_constants.icl" ]; then
        croak "demo_constants.icl is missing"
    fi
    if [ ! -f "demo_srv_resource.rc" ]; then
        croak "demo_srv_resource.rc is missing"
    fi
    if [ ! -f "demo_srv_base.cfg" ]; then
        croak "demo_srv_base.cfg is missing"
    fi
    if [ ! -f "icl_make_doc.ignore" ]; then
        croak "icl_make_doc.ignore is missing"
    fi
    if [ ! -f "project.pdl" ]; then
        croak "project.pdl is missing"
    fi
    if [ ! -f "readme.txt" ]; then
        croak "readme.txt is missing"
    fi
    if [ ! -f "asl_field_test.c" ]; then
        croak "asl_field_test.c is missing"
    fi
    if [ ! -f "asl_field.h" ]; then
        croak "asl_field.h is missing"
    fi
    if [ ! -f "asl_field.c" ]; then
        croak "asl_field.c is missing"
    fi
    if [ ! -f "asl_field_list_test.c" ]; then
        croak "asl_field_list_test.c is missing"
    fi
    if [ ! -f "asl_field_list.h" ]; then
        croak "asl_field_list.h is missing"
    fi
    if [ ! -f "asl_field_list.c" ]; then
        croak "asl_field_list.c is missing"
    fi
    if [ ! -f "demo_client_method_test.c" ]; then
        croak "demo_client_method_test.c is missing"
    fi
    if [ ! -f "demo_client_method.h" ]; then
        croak "demo_client_method.h is missing"
    fi
    if [ ! -f "demo_client_method.c" ]; then
        croak "demo_client_method.c is missing"
    fi
    if [ ! -f "demo_client_agent.h" ]; then
        croak "demo_client_agent.h is missing"
    fi
    if [ ! -f "demo_client_agent.c" ]; then
        croak "demo_client_agent.c is missing"
    fi
    if [ ! -f "demo_client_config.icl" ]; then
        croak "demo_client_config.icl is missing"
    fi
    if [ ! -f "demo_client_config_test.c" ]; then
        croak "demo_client_config_test.c is missing"
    fi
    if [ ! -f "demo_client_config.h" ]; then
        croak "demo_client_config.h is missing"
    fi
    if [ ! -f "demo_client_config.c" ]; then
        croak "demo_client_config.c is missing"
    fi
    if [ ! -f "demo_client_config.txt" ]; then
        croak "demo_client_config.txt is missing"
    fi
    if [ ! -f "demo_client_classes.h" ]; then
        croak "demo_client_classes.h is missing"
    fi
    if [ ! -f "demo_client_classes.c" ]; then
        croak "demo_client_classes.c is missing"
    fi
    if [ ! -f "demo_client_connection_test.c" ]; then
        croak "demo_client_connection_test.c is missing"
    fi
    if [ ! -f "demo_client_connection.h" ]; then
        croak "demo_client_connection.h is missing"
    fi
    if [ ! -f "demo_client_connection.c" ]; then
        croak "demo_client_connection.c is missing"
    fi
    if [ ! -f "demo_client_session_test.c" ]; then
        croak "demo_client_session_test.c is missing"
    fi
    if [ ! -f "demo_client_session.h" ]; then
        croak "demo_client_session.h is missing"
    fi
    if [ ! -f "demo_client_session.c" ]; then
        croak "demo_client_session.c is missing"
    fi
    if [ ! -f "demo_client_channel_test.c" ]; then
        croak "demo_client_channel_test.c is missing"
    fi
    if [ ! -f "demo_client_channel.h" ]; then
        croak "demo_client_channel.h is missing"
    fi
    if [ ! -f "demo_client_channel.c" ]; then
        croak "demo_client_channel.c is missing"
    fi
    if [ ! -f "demo_client_channel_table_test.c" ]; then
        croak "demo_client_channel_table_test.c is missing"
    fi
    if [ ! -f "demo_client_channel_table.h" ]; then
        croak "demo_client_channel_table.h is missing"
    fi
    if [ ! -f "demo_client_channel_table.c" ]; then
        croak "demo_client_channel_table.c is missing"
    fi
    if [ ! -f "demo_server_config.icl" ]; then
        croak "demo_server_config.icl is missing"
    fi
    if [ ! -f "demo_server_config_test.c" ]; then
        croak "demo_server_config_test.c is missing"
    fi
    if [ ! -f "demo_server_config.h" ]; then
        croak "demo_server_config.h is missing"
    fi
    if [ ! -f "demo_server_config.c" ]; then
        croak "demo_server_config.c is missing"
    fi
    if [ ! -f "demo_server_config.txt" ]; then
        croak "demo_server_config.txt is missing"
    fi
    if [ ! -f "demo_server_method_test.c" ]; then
        croak "demo_server_method_test.c is missing"
    fi
    if [ ! -f "demo_server_method.h" ]; then
        croak "demo_server_method.h is missing"
    fi
    if [ ! -f "demo_server_method.c" ]; then
        croak "demo_server_method.c is missing"
    fi
    if [ ! -f "demo_server_agent.h" ]; then
        croak "demo_server_agent.h is missing"
    fi
    if [ ! -f "demo_server_agent.c" ]; then
        croak "demo_server_agent.c is missing"
    fi
    if [ ! -f "demo_server_classes.h" ]; then
        croak "demo_server_classes.h is missing"
    fi
    if [ ! -f "demo_server_classes.c" ]; then
        croak "demo_server_classes.c is missing"
    fi
    if [ ! -f "demo_server_connection_test.c" ]; then
        croak "demo_server_connection_test.c is missing"
    fi
    if [ ! -f "demo_server_connection.h" ]; then
        croak "demo_server_connection.h is missing"
    fi
    if [ ! -f "demo_server_connection.c" ]; then
        croak "demo_server_connection.c is missing"
    fi
    if [ ! -f "demo_server_connection_table_test.c" ]; then
        croak "demo_server_connection_table_test.c is missing"
    fi
    if [ ! -f "demo_server_connection_table.h" ]; then
        croak "demo_server_connection_table.h is missing"
    fi
    if [ ! -f "demo_server_connection_table.c" ]; then
        croak "demo_server_connection_table.c is missing"
    fi
    if [ ! -f "demo_server_connection_list_test.c" ]; then
        croak "demo_server_connection_list_test.c is missing"
    fi
    if [ ! -f "demo_server_connection_list.h" ]; then
        croak "demo_server_connection_list.h is missing"
    fi
    if [ ! -f "demo_server_connection_list.c" ]; then
        croak "demo_server_connection_list.c is missing"
    fi
    if [ ! -f "demo_server_channel_test.c" ]; then
        croak "demo_server_channel_test.c is missing"
    fi
    if [ ! -f "demo_server_channel.h" ]; then
        croak "demo_server_channel.h is missing"
    fi
    if [ ! -f "demo_server_channel.c" ]; then
        croak "demo_server_channel.c is missing"
    fi
    if [ ! -f "demo_server_channel_agent.h" ]; then
        croak "demo_server_channel_agent.h is missing"
    fi
    if [ ! -f "demo_server_channel_agent.c" ]; then
        croak "demo_server_channel_agent.c is missing"
    fi
    if [ ! -f "demo_server_channel_table_test.c" ]; then
        croak "demo_server_channel_table_test.c is missing"
    fi
    if [ ! -f "demo_server_channel_table.h" ]; then
        croak "demo_server_channel_table.h is missing"
    fi
    if [ ! -f "demo_server_channel_table.c" ]; then
        croak "demo_server_channel_table.c is missing"
    fi
    if [ ! -f "demo_broker_test.c" ]; then
        croak "demo_broker_test.c is missing"
    fi
    if [ ! -f "demo_broker.h" ]; then
        croak "demo_broker.h is missing"
    fi
    if [ ! -f "demo_broker.c" ]; then
        croak "demo_broker.c is missing"
    fi
    if [ ! -f "demo_broker_agent.h" ]; then
        croak "demo_broker_agent.h is missing"
    fi
    if [ ! -f "demo_broker_agent.c" ]; then
        croak "demo_broker_agent.c is missing"
    fi
    if [ ! -f "demo_exchange_test.c" ]; then
        croak "demo_exchange_test.c is missing"
    fi
    if [ ! -f "demo_exchange.h" ]; then
        croak "demo_exchange.h is missing"
    fi
    if [ ! -f "demo_exchange.c" ]; then
        croak "demo_exchange.c is missing"
    fi
    if [ ! -f "demo_exchange_table_test.c" ]; then
        croak "demo_exchange_table_test.c is missing"
    fi
    if [ ! -f "demo_exchange_table.h" ]; then
        croak "demo_exchange_table.h is missing"
    fi
    if [ ! -f "demo_exchange_table.c" ]; then
        croak "demo_exchange_table.c is missing"
    fi
    if [ ! -f "demo_exchange_agent.h" ]; then
        croak "demo_exchange_agent.h is missing"
    fi
    if [ ! -f "demo_exchange_agent.c" ]; then
        croak "demo_exchange_agent.c is missing"
    fi
    if [ ! -f "demo_queue_test.c" ]; then
        croak "demo_queue_test.c is missing"
    fi
    if [ ! -f "demo_queue.h" ]; then
        croak "demo_queue.h is missing"
    fi
    if [ ! -f "demo_queue.c" ]; then
        croak "demo_queue.c is missing"
    fi
    if [ ! -f "demo_queue_table_test.c" ]; then
        croak "demo_queue_table_test.c is missing"
    fi
    if [ ! -f "demo_queue_table.h" ]; then
        croak "demo_queue_table.h is missing"
    fi
    if [ ! -f "demo_queue_table.c" ]; then
        croak "demo_queue_table.c is missing"
    fi
    if [ ! -f "demo_queue_list_test.c" ]; then
        croak "demo_queue_list_test.c is missing"
    fi
    if [ ! -f "demo_queue_list.h" ]; then
        croak "demo_queue_list.h is missing"
    fi
    if [ ! -f "demo_queue_list.c" ]; then
        croak "demo_queue_list.c is missing"
    fi
    if [ ! -f "demo_queue_agent.h" ]; then
        croak "demo_queue_agent.h is missing"
    fi
    if [ ! -f "demo_queue_agent.c" ]; then
        croak "demo_queue_agent.c is missing"
    fi
    if [ ! -f "demo_lease_test.c" ]; then
        croak "demo_lease_test.c is missing"
    fi
    if [ ! -f "demo_lease.h" ]; then
        croak "demo_lease.h is missing"
    fi
    if [ ! -f "demo_lease.c" ]; then
        croak "demo_lease.c is missing"
    fi
    if [ ! -f "demo_lease_table_test.c" ]; then
        croak "demo_lease_table_test.c is missing"
    fi
    if [ ! -f "demo_lease_table.h" ]; then
        croak "demo_lease_table.h is missing"
    fi
    if [ ! -f "demo_lease_table.c" ]; then
        croak "demo_lease_table.c is missing"
    fi
    if [ ! -f "demo_content_basic_test.c" ]; then
        croak "demo_content_basic_test.c is missing"
    fi
    if [ ! -f "demo_content_basic.h" ]; then
        croak "demo_content_basic.h is missing"
    fi
    if [ ! -f "demo_content_basic.c" ]; then
        croak "demo_content_basic.c is missing"
    fi
    if [ ! -f "demo_content_basic_list_test.c" ]; then
        croak "demo_content_basic_list_test.c is missing"
    fi
    if [ ! -f "demo_content_basic_list.h" ]; then
        croak "demo_content_basic_list.h is missing"
    fi
    if [ ! -f "demo_content_basic_list.c" ]; then
        croak "demo_content_basic_list.c is missing"
    fi
    if [ ! -f "demo_constants.h" ]; then
        croak "demo_constants.h is missing"
    fi
    if [ ! -f "demo_constants.c" ]; then
        croak "demo_constants.c is missing"
    fi
    if [ ! -f "demo_srv_resource.icl" ]; then
        croak "demo_srv_resource.icl is missing"
    fi
    if [ ! -f "demo_srv_resource_test.c" ]; then
        croak "demo_srv_resource_test.c is missing"
    fi
    if [ ! -f "demo_srv_resource.h" ]; then
        croak "demo_srv_resource.h is missing"
    fi
    if [ ! -f "demo_srv_resource.c" ]; then
        croak "demo_srv_resource.c is missing"
    fi
    if [ ! -f "stamp_generate" ]; then
        croak "stamp_generate is missing"
    fi
    if [ ! -f "configure" ]; then
        croak "configure is missing"
    fi
    if [ ! -f "Makefile.unix" ]; then
        croak "Makefile.unix is missing"
    fi
    if [ ! -f "boomake" ]; then
        croak "boomake is missing"
    fi
    if [ ! -f "configure.bat" ]; then
        croak "configure.bat is missing"
    fi
    if [ ! -f "Makefile.win32" ]; then
        croak "Makefile.win32 is missing"
    fi
    if [ ! -f "boomake.bat" ]; then
        croak "boomake.bat is missing"
    fi
    if [ ! -f "boomakew.bat" ]; then
        croak "boomakew.bat is missing"
    fi
    PUSHDIR=`pwd`
    cd pal
    if [ ! -f "asl_pal.gsl" ]; then
        croak "asl_pal.gsl is missing"
    fi
    if [ ! -f "asl_pal_stdc.gsl" ]; then
        croak "asl_pal_stdc.gsl is missing"
    fi
    if [ ! -f "asl_pal_xnf.gsl" ]; then
        croak "asl_pal_xnf.gsl is missing"
    fi
    if [ ! -f "asl_pal_txt.gsl" ]; then
        croak "asl_pal_txt.gsl is missing"
    fi
    if [ ! -f "palguide.txt" ]; then
        croak "palguide.txt is missing"
    fi
    if [ ! -f "pal" ]; then
        croak "pal is missing"
    fi
    if [ ! -f "demo_pal.xnf" ]; then
        croak "demo_pal.xnf is missing"
    fi
    if [ ! -f "demo_pal_stdc.gsl" ]; then
        croak "demo_pal_stdc.gsl is missing"
    fi
    if [ ! -f "demo_pal_codegen.gsl" ]; then
        croak "demo_pal_codegen.gsl is missing"
    fi
    if [ ! -f "demo_pal_gen.gsl" ]; then
        croak "demo_pal_gen.gsl is missing"
    fi
    if [ ! -f "demo_pal_inherit.gsl" ]; then
        croak "demo_pal_inherit.gsl is missing"
    fi
    if [ ! -f "demo_pal_parse.gsl" ]; then
        croak "demo_pal_parse.gsl is missing"
    fi
    if [ ! -f "demo_pal_preproc.gsl" ]; then
        croak "demo_pal_preproc.gsl is missing"
    fi
    if [ ! -f "hello.pal" ]; then
        croak "hello.pal is missing"
    fi
    if [ ! -f "loop1.pal" ]; then
        croak "loop1.pal is missing"
    fi
    if [ ! -f "loop2.pal" ]; then
        croak "loop2.pal is missing"
    fi
    if [ ! -f "content.pal" ]; then
        croak "content.pal is missing"
    fi
    if [ ! -f "macros.pal" ]; then
        croak "macros.pal is missing"
    fi
    if [ ! -f "session.pal" ]; then
        croak "session.pal is missing"
    fi
    if [ ! -f "single.pal" ]; then
        croak "single.pal is missing"
    fi
    if [ ! -f "single2.pal" ]; then
        croak "single2.pal is missing"
    fi
    if [ ! -f "symbols.pal" ]; then
        croak "symbols.pal is missing"
    fi
    if [ ! -f "waiting.pal" ]; then
        croak "waiting.pal is missing"
    fi
    if [ ! -f "content_file.pal" ]; then
        croak "content_file.pal is missing"
    fi
    if [ ! -f "content_exec.pal" ]; then
        croak "content_exec.pal is missing"
    fi
    if [ ! -f "content_body.pal" ]; then
        croak "content_body.pal is missing"
    fi
    if [ ! -f "cmdline.pal" ]; then
        croak "cmdline.pal is missing"
    fi
    if [ ! -f "webserver.pal" ]; then
        croak "webserver.pal is missing"
    fi
    if [ ! -f "stress.pal" ]; then
        croak "stress.pal is missing"
    fi
    if [ ! -f "im_read.pal" ]; then
        croak "im_read.pal is missing"
    fi
    if [ ! -f "im_send.pal" ]; then
        croak "im_send.pal is missing"
    fi
    if [ "`echo palguide*.html`" = "palguide*.html" ]; then
        croak "palguide*.html is missing"
    fi
    cd $PUSHDIR
}

# -----------------------   CHECK BINARY FILES EXIST   ------------------------

a_check_binary_files_exist() {
:
    if [ ! -f "libasl.a" ]; then
        croak "libasl.a is missing"
    fi
    if [ ! -f "asl.h" ]; then
        croak "asl.h is missing"
    fi
    if [ ! -f "asl_gen.gsl" ]; then
        croak "asl_gen.gsl is missing"
    fi
    if [ ! -f "asl_preproc.gsl" ]; then
        croak "asl_preproc.gsl is missing"
    fi
    if [ ! -f "asl_inherit.gsl" ]; then
        croak "asl_inherit.gsl is missing"
    fi
    if [ ! -f "asl_parse.gsl" ]; then
        croak "asl_parse.gsl is missing"
    fi
    if [ ! -f "asl_stdc.gsl" ]; then
        croak "asl_stdc.gsl is missing"
    fi
    if [ ! -f "asl_java.gsl" ]; then
        croak "asl_java.gsl is missing"
    fi
    if [ ! -f "asl_csharp.gsl" ]; then
        croak "asl_csharp.gsl is missing"
    fi
    if [ ! -f "asl_doc.gsl" ]; then
        croak "asl_doc.gsl is missing"
    fi
    if [ ! -f "asl_constants.gsl" ]; then
        croak "asl_constants.gsl is missing"
    fi
    if [ ! -f "asl_method_class.gsl" ]; then
        croak "asl_method_class.gsl is missing"
    fi
    if [ ! -f "asl_content_class.gsl" ]; then
        croak "asl_content_class.gsl is missing"
    fi
    if [ ! -f "asl_client_connection.gsl" ]; then
        croak "asl_client_connection.gsl is missing"
    fi
    if [ ! -f "asl_client_session.gsl" ]; then
        croak "asl_client_session.gsl is missing"
    fi
    if [ ! -f "asl_client_agent.gsl" ]; then
        croak "asl_client_agent.gsl is missing"
    fi
    if [ ! -f "asl_server_agent.gsl" ]; then
        croak "asl_server_agent.gsl is missing"
    fi
    if [ ! -f "asl_agent_common.gsl" ]; then
        croak "asl_agent_common.gsl is missing"
    fi
    if [ ! -f "asl_channel.icl" ]; then
        croak "asl_channel.icl is missing"
    fi
    if [ ! -f "asl_server_connection.icl" ]; then
        croak "asl_server_connection.icl is missing"
    fi
    if [ ! -f "asl_server_channel.icl" ]; then
        croak "asl_server_channel.icl is missing"
    fi
    if [ ! -f "asl_client_channel.icl" ]; then
        croak "asl_client_channel.icl is missing"
    fi
    if [ ! -f "asl_broker.icl" ]; then
        croak "asl_broker.icl is missing"
    fi
    if [ ! -f "asl_base.asl" ]; then
        croak "asl_base.asl is missing"
    fi
    if [ ! -f "asl_constants.asl" ]; then
        croak "asl_constants.asl is missing"
    fi
    if [ ! -f "asl_connection.asl" ]; then
        croak "asl_connection.asl is missing"
    fi
    if [ ! -f "asl_channel.asl" ]; then
        croak "asl_channel.asl is missing"
    fi
    if [ ! -f "asl_client.asl" ]; then
        croak "asl_client.asl is missing"
    fi
    if [ ! -f "asl_server.asl" ]; then
        croak "asl_server.asl is missing"
    fi
    if [ ! -f "asl_direct.asl" ]; then
        croak "asl_direct.asl is missing"
    fi
    if [ ! -f "demo.asl" ]; then
        croak "demo.asl is missing"
    fi
    if [ ! -f "demo_exchange.asl" ]; then
        croak "demo_exchange.asl is missing"
    fi
    if [ ! -f "demo_queue.asl" ]; then
        croak "demo_queue.asl is missing"
    fi
    if [ ! -f "demo_basic.asl" ]; then
        croak "demo_basic.asl is missing"
    fi
    if [ ! -f "demo_client_agent.smt" ]; then
        croak "demo_client_agent.smt is missing"
    fi
    if [ ! -f "demo_server_agent.smt" ]; then
        croak "demo_server_agent.smt is missing"
    fi
    if [ ! -f "demo_server_channel_agent.smt" ]; then
        croak "demo_server_channel_agent.smt is missing"
    fi
    if [ ! -f "demo_broker_agent.smt" ]; then
        croak "demo_broker_agent.smt is missing"
    fi
    if [ ! -f "demo_exchange_agent.smt" ]; then
        croak "demo_exchange_agent.smt is missing"
    fi
    if [ ! -f "demo_queue_agent.smt" ]; then
        croak "demo_queue_agent.smt is missing"
    fi
    if [ ! -f "readme.txt" ]; then
        croak "readme.txt is missing"
    fi
    if [ ! -f "asl_field.h" ]; then
        croak "asl_field.h is missing"
    fi
    if [ ! -f "asl_field_list.h" ]; then
        croak "asl_field_list.h is missing"
    fi
    if [ ! -f "demo_client_method.h" ]; then
        croak "demo_client_method.h is missing"
    fi
    if [ ! -f "demo_client_agent.h" ]; then
        croak "demo_client_agent.h is missing"
    fi
    if [ ! -f "demo_client_config.h" ]; then
        croak "demo_client_config.h is missing"
    fi
    if [ ! -f "demo_client_config.txt" ]; then
        croak "demo_client_config.txt is missing"
    fi
    if [ ! -f "demo_client_classes.h" ]; then
        croak "demo_client_classes.h is missing"
    fi
    if [ ! -f "demo_client_connection.h" ]; then
        croak "demo_client_connection.h is missing"
    fi
    if [ ! -f "demo_client_session.h" ]; then
        croak "demo_client_session.h is missing"
    fi
    if [ ! -f "demo_client_channel.h" ]; then
        croak "demo_client_channel.h is missing"
    fi
    if [ ! -f "demo_client_channel_table.h" ]; then
        croak "demo_client_channel_table.h is missing"
    fi
    if [ ! -f "demo_server_config.h" ]; then
        croak "demo_server_config.h is missing"
    fi
    if [ ! -f "demo_server_config.txt" ]; then
        croak "demo_server_config.txt is missing"
    fi
    if [ ! -f "demo_server_method.h" ]; then
        croak "demo_server_method.h is missing"
    fi
    if [ ! -f "demo_server_agent.h" ]; then
        croak "demo_server_agent.h is missing"
    fi
    if [ ! -f "demo_server_classes.h" ]; then
        croak "demo_server_classes.h is missing"
    fi
    if [ ! -f "demo_server_connection.h" ]; then
        croak "demo_server_connection.h is missing"
    fi
    if [ ! -f "demo_server_connection_table.h" ]; then
        croak "demo_server_connection_table.h is missing"
    fi
    if [ ! -f "demo_server_connection_list.h" ]; then
        croak "demo_server_connection_list.h is missing"
    fi
    if [ ! -f "demo_server_channel.h" ]; then
        croak "demo_server_channel.h is missing"
    fi
    if [ ! -f "demo_server_channel_agent.h" ]; then
        croak "demo_server_channel_agent.h is missing"
    fi
    if [ ! -f "demo_server_channel_table.h" ]; then
        croak "demo_server_channel_table.h is missing"
    fi
    if [ ! -f "demo_broker.h" ]; then
        croak "demo_broker.h is missing"
    fi
    if [ ! -f "demo_broker_agent.h" ]; then
        croak "demo_broker_agent.h is missing"
    fi
    if [ ! -f "demo_exchange.h" ]; then
        croak "demo_exchange.h is missing"
    fi
    if [ ! -f "demo_exchange_table.h" ]; then
        croak "demo_exchange_table.h is missing"
    fi
    if [ ! -f "demo_exchange_agent.h" ]; then
        croak "demo_exchange_agent.h is missing"
    fi
    if [ ! -f "demo_queue.h" ]; then
        croak "demo_queue.h is missing"
    fi
    if [ ! -f "demo_queue_table.h" ]; then
        croak "demo_queue_table.h is missing"
    fi
    if [ ! -f "demo_queue_list.h" ]; then
        croak "demo_queue_list.h is missing"
    fi
    if [ ! -f "demo_queue_agent.h" ]; then
        croak "demo_queue_agent.h is missing"
    fi
    if [ ! -f "demo_lease.h" ]; then
        croak "demo_lease.h is missing"
    fi
    if [ ! -f "demo_lease_table.h" ]; then
        croak "demo_lease_table.h is missing"
    fi
    if [ ! -f "demo_content_basic.h" ]; then
        croak "demo_content_basic.h is missing"
    fi
    if [ ! -f "demo_content_basic_list.h" ]; then
        croak "demo_content_basic_list.h is missing"
    fi
    if [ ! -f "demo_constants.h" ]; then
        croak "demo_constants.h is missing"
    fi
    if [ ! -f "demo_srv_resource.h" ]; then
        croak "demo_srv_resource.h is missing"
    fi
    PUSHDIR=`pwd`
    cd pal
    if [ ! -f "asl_pal.gsl" ]; then
        croak "asl_pal.gsl is missing"
    fi
    if [ ! -f "asl_pal_stdc.gsl" ]; then
        croak "asl_pal_stdc.gsl is missing"
    fi
    if [ ! -f "asl_pal_xnf.gsl" ]; then
        croak "asl_pal_xnf.gsl is missing"
    fi
    if [ ! -f "asl_pal_txt.gsl" ]; then
        croak "asl_pal_txt.gsl is missing"
    fi
    if [ ! -f "palguide.txt" ]; then
        croak "palguide.txt is missing"
    fi
    if [ ! -f "pal" ]; then
        croak "pal is missing"
    fi
    if [ ! -f "demo_pal_stdc.gsl" ]; then
        croak "demo_pal_stdc.gsl is missing"
    fi
    if [ ! -f "demo_pal_codegen.gsl" ]; then
        croak "demo_pal_codegen.gsl is missing"
    fi
    if [ ! -f "demo_pal_gen.gsl" ]; then
        croak "demo_pal_gen.gsl is missing"
    fi
    if [ ! -f "demo_pal_inherit.gsl" ]; then
        croak "demo_pal_inherit.gsl is missing"
    fi
    if [ ! -f "demo_pal_parse.gsl" ]; then
        croak "demo_pal_parse.gsl is missing"
    fi
    if [ ! -f "demo_pal_preproc.gsl" ]; then
        croak "demo_pal_preproc.gsl is missing"
    fi
    if [ "`echo palguide*.html`" = "palguide*.html" ]; then
        croak "palguide*.html is missing"
    fi
    cd $PUSHDIR
}

# ------------------------   CHECK OPERATING CONTEXT   ------------------------

a_check_operating_context() {
:
    if [ -f ./stamp_stripped ]; then
        event=stripped
    elif [ -f ./stamp_source ]; then
        event=source
    else
        event=repository
    fi
}

# -----------------------   CHECK PROJECT FILES EXIST   -----------------------

a_check_project_files_exist() {
:
    if [ ! -f "version.h" ]; then
        croak "version.h is missing"
    fi
    if [ ! -f "asl.h" ]; then
        croak "asl.h is missing"
    fi
    if [ ! -f "asl.xnf" ]; then
        croak "asl.xnf is missing"
    fi
    if [ ! -f "asl_stdc.gsl" ]; then
        croak "asl_stdc.gsl is missing"
    fi
    if [ ! -f "asl_java.gsl" ]; then
        croak "asl_java.gsl is missing"
    fi
    if [ ! -f "asl_csharp.gsl" ]; then
        croak "asl_csharp.gsl is missing"
    fi
    if [ ! -f "asl_doc.gsl" ]; then
        croak "asl_doc.gsl is missing"
    fi
    if [ ! -f "asl_constants.gsl" ]; then
        croak "asl_constants.gsl is missing"
    fi
    if [ ! -f "asl_method_class.gsl" ]; then
        croak "asl_method_class.gsl is missing"
    fi
    if [ ! -f "asl_content_class.gsl" ]; then
        croak "asl_content_class.gsl is missing"
    fi
    if [ ! -f "asl_client_connection.gsl" ]; then
        croak "asl_client_connection.gsl is missing"
    fi
    if [ ! -f "asl_client_session.gsl" ]; then
        croak "asl_client_session.gsl is missing"
    fi
    if [ ! -f "asl_client_agent.gsl" ]; then
        croak "asl_client_agent.gsl is missing"
    fi
    if [ ! -f "asl_server_agent.gsl" ]; then
        croak "asl_server_agent.gsl is missing"
    fi
    if [ ! -f "asl_agent_common.gsl" ]; then
        croak "asl_agent_common.gsl is missing"
    fi
    if [ ! -f "asl_channel.icl" ]; then
        croak "asl_channel.icl is missing"
    fi
    if [ ! -f "asl_server_connection.icl" ]; then
        croak "asl_server_connection.icl is missing"
    fi
    if [ ! -f "asl_server_channel.icl" ]; then
        croak "asl_server_channel.icl is missing"
    fi
    if [ ! -f "asl_client_channel.icl" ]; then
        croak "asl_client_channel.icl is missing"
    fi
    if [ ! -f "asl_broker.icl" ]; then
        croak "asl_broker.icl is missing"
    fi
    if [ ! -f "asl_field.icl" ]; then
        croak "asl_field.icl is missing"
    fi
    if [ ! -f "asl_field_list.icl" ]; then
        croak "asl_field_list.icl is missing"
    fi
    if [ ! -f "asl_base.asl" ]; then
        croak "asl_base.asl is missing"
    fi
    if [ ! -f "asl_constants.asl" ]; then
        croak "asl_constants.asl is missing"
    fi
    if [ ! -f "asl_connection.asl" ]; then
        croak "asl_connection.asl is missing"
    fi
    if [ ! -f "asl_channel.asl" ]; then
        croak "asl_channel.asl is missing"
    fi
    if [ ! -f "asl_client.asl" ]; then
        croak "asl_client.asl is missing"
    fi
    if [ ! -f "asl_server.asl" ]; then
        croak "asl_server.asl is missing"
    fi
    if [ ! -f "asl_direct.asl" ]; then
        croak "asl_direct.asl is missing"
    fi
    if [ ! -f "demo.asl" ]; then
        croak "demo.asl is missing"
    fi
    if [ ! -f "demo_exchange.asl" ]; then
        croak "demo_exchange.asl is missing"
    fi
    if [ ! -f "demo_queue.asl" ]; then
        croak "demo_queue.asl is missing"
    fi
    if [ ! -f "demo_basic.asl" ]; then
        croak "demo_basic.asl is missing"
    fi
    if [ ! -f "demo_cli.c" ]; then
        croak "demo_cli.c is missing"
    fi
    if [ ! -f "demo_client_proto.asl" ]; then
        croak "demo_client_proto.asl is missing"
    fi
    if [ ! -f "demo_client_config.opf" ]; then
        croak "demo_client_config.opf is missing"
    fi
    if [ ! -f "demo_client_classes.icl" ]; then
        croak "demo_client_classes.icl is missing"
    fi
    if [ ! -f "demo_client_channel.icl" ]; then
        croak "demo_client_channel.icl is missing"
    fi
    if [ ! -f "demo_srv.c" ]; then
        croak "demo_srv.c is missing"
    fi
    if [ ! -f "demo_server_proto.asl" ]; then
        croak "demo_server_proto.asl is missing"
    fi
    if [ ! -f "demo_server_main.inc" ]; then
        croak "demo_server_main.inc is missing"
    fi
    if [ ! -f "demo_server_config.opf" ]; then
        croak "demo_server_config.opf is missing"
    fi
    if [ ! -f "demo_server_classes.icl" ]; then
        croak "demo_server_classes.icl is missing"
    fi
    if [ ! -f "demo_server_connection.icl" ]; then
        croak "demo_server_connection.icl is missing"
    fi
    if [ ! -f "demo_server_channel.icl" ]; then
        croak "demo_server_channel.icl is missing"
    fi
    if [ ! -f "demo_broker.icl" ]; then
        croak "demo_broker.icl is missing"
    fi
    if [ ! -f "demo_exchange.icl" ]; then
        croak "demo_exchange.icl is missing"
    fi
    if [ ! -f "demo_queue.icl" ]; then
        croak "demo_queue.icl is missing"
    fi
    if [ ! -f "demo_queue_list.icl" ]; then
        croak "demo_queue_list.icl is missing"
    fi
    if [ ! -f "demo_lease.icl" ]; then
        croak "demo_lease.icl is missing"
    fi
    if [ ! -f "demo_srv_resource.rc" ]; then
        croak "demo_srv_resource.rc is missing"
    fi
    if [ ! -f "demo_srv_base.cfg" ]; then
        croak "demo_srv_base.cfg is missing"
    fi
    if [ ! -f "icl_make_doc.ignore" ]; then
        croak "icl_make_doc.ignore is missing"
    fi
    if [ ! -f "project.pdl" ]; then
        croak "project.pdl is missing"
    fi
    if [ ! -f "readme.txt" ]; then
        croak "readme.txt is missing"
    fi
    if [ ! -f "boomake" ]; then
        croak "boomake is missing"
    fi
    if [ ! -f "boomake.bat" ]; then
        croak "boomake.bat is missing"
    fi
    if [ ! -f "boomakew.bat" ]; then
        croak "boomakew.bat is missing"
    fi
    if [ ! -d "pal" ]; then
        croak "Directory pal is missing"
    fi
    PUSHDIR=`pwd`
    cd pal
    if [ ! -f "asl_pal.gsl" ]; then
        croak "asl_pal.gsl is missing"
    fi
    if [ ! -f "asl_pal_stdc.gsl" ]; then
        croak "asl_pal_stdc.gsl is missing"
    fi
    if [ ! -f "asl_pal_xnf.gsl" ]; then
        croak "asl_pal_xnf.gsl is missing"
    fi
    if [ ! -f "asl_pal_txt.gsl" ]; then
        croak "asl_pal_txt.gsl is missing"
    fi
    if [ ! -f "palguide.txt" ]; then
        croak "palguide.txt is missing"
    fi
    if [ ! -f "pal" ]; then
        croak "pal is missing"
    fi
    if [ ! -f "hello.pal" ]; then
        croak "hello.pal is missing"
    fi
    if [ ! -f "loop1.pal" ]; then
        croak "loop1.pal is missing"
    fi
    if [ ! -f "loop2.pal" ]; then
        croak "loop2.pal is missing"
    fi
    if [ ! -f "content.pal" ]; then
        croak "content.pal is missing"
    fi
    if [ ! -f "macros.pal" ]; then
        croak "macros.pal is missing"
    fi
    if [ ! -f "session.pal" ]; then
        croak "session.pal is missing"
    fi
    if [ ! -f "single.pal" ]; then
        croak "single.pal is missing"
    fi
    if [ ! -f "single2.pal" ]; then
        croak "single2.pal is missing"
    fi
    if [ ! -f "symbols.pal" ]; then
        croak "symbols.pal is missing"
    fi
    if [ ! -f "waiting.pal" ]; then
        croak "waiting.pal is missing"
    fi
    if [ ! -f "content_file.pal" ]; then
        croak "content_file.pal is missing"
    fi
    if [ ! -f "content_exec.pal" ]; then
        croak "content_exec.pal is missing"
    fi
    if [ ! -f "content_body.pal" ]; then
        croak "content_body.pal is missing"
    fi
    if [ ! -f "cmdline.pal" ]; then
        croak "cmdline.pal is missing"
    fi
    if [ ! -f "webserver.pal" ]; then
        croak "webserver.pal is missing"
    fi
    if [ ! -f "stress.pal" ]; then
        croak "stress.pal is missing"
    fi
    if [ ! -f "im_read.pal" ]; then
        croak "im_read.pal is missing"
    fi
    if [ ! -f "im_send.pal" ]; then
        croak "im_send.pal is missing"
    fi
    cd $PUSHDIR
}

# -----------------------   CHECK SOURCE FILES EXIST   ------------------------

a_check_source_files_exist() {
:
    if [ ! -f "version.h" ]; then
        croak "version.h is missing"
    fi
    if [ ! -f "asl.h" ]; then
        croak "asl.h is missing"
    fi
    if [ ! -f "asl.xnf" ]; then
        croak "asl.xnf is missing"
    fi
    if [ ! -f "asl_gen.gsl" ]; then
        croak "asl_gen.gsl is missing"
    fi
    if [ ! -f "asl_preproc.gsl" ]; then
        croak "asl_preproc.gsl is missing"
    fi
    if [ ! -f "asl_inherit.gsl" ]; then
        croak "asl_inherit.gsl is missing"
    fi
    if [ ! -f "asl_parse.gsl" ]; then
        croak "asl_parse.gsl is missing"
    fi
    if [ ! -f "asl_doc.txt" ]; then
        croak "asl_doc.txt is missing"
    fi
    if [ ! -f "asl_stdc.gsl" ]; then
        croak "asl_stdc.gsl is missing"
    fi
    if [ ! -f "asl_java.gsl" ]; then
        croak "asl_java.gsl is missing"
    fi
    if [ ! -f "asl_csharp.gsl" ]; then
        croak "asl_csharp.gsl is missing"
    fi
    if [ ! -f "asl_doc.gsl" ]; then
        croak "asl_doc.gsl is missing"
    fi
    if [ ! -f "asl_constants.gsl" ]; then
        croak "asl_constants.gsl is missing"
    fi
    if [ ! -f "asl_method_class.gsl" ]; then
        croak "asl_method_class.gsl is missing"
    fi
    if [ ! -f "asl_content_class.gsl" ]; then
        croak "asl_content_class.gsl is missing"
    fi
    if [ ! -f "asl_client_connection.gsl" ]; then
        croak "asl_client_connection.gsl is missing"
    fi
    if [ ! -f "asl_client_session.gsl" ]; then
        croak "asl_client_session.gsl is missing"
    fi
    if [ ! -f "asl_client_agent.gsl" ]; then
        croak "asl_client_agent.gsl is missing"
    fi
    if [ ! -f "asl_server_agent.gsl" ]; then
        croak "asl_server_agent.gsl is missing"
    fi
    if [ ! -f "asl_agent_common.gsl" ]; then
        croak "asl_agent_common.gsl is missing"
    fi
    if [ ! -f "asl_channel.icl" ]; then
        croak "asl_channel.icl is missing"
    fi
    if [ ! -f "asl_server_connection.icl" ]; then
        croak "asl_server_connection.icl is missing"
    fi
    if [ ! -f "asl_server_channel.icl" ]; then
        croak "asl_server_channel.icl is missing"
    fi
    if [ ! -f "asl_client_channel.icl" ]; then
        croak "asl_client_channel.icl is missing"
    fi
    if [ ! -f "asl_broker.icl" ]; then
        croak "asl_broker.icl is missing"
    fi
    if [ ! -f "asl_field.icl" ]; then
        croak "asl_field.icl is missing"
    fi
    if [ ! -f "asl_field_list.icl" ]; then
        croak "asl_field_list.icl is missing"
    fi
    if [ ! -f "asl_base.asl" ]; then
        croak "asl_base.asl is missing"
    fi
    if [ ! -f "asl_constants.asl" ]; then
        croak "asl_constants.asl is missing"
    fi
    if [ ! -f "asl_connection.asl" ]; then
        croak "asl_connection.asl is missing"
    fi
    if [ ! -f "asl_channel.asl" ]; then
        croak "asl_channel.asl is missing"
    fi
    if [ ! -f "asl_client.asl" ]; then
        croak "asl_client.asl is missing"
    fi
    if [ ! -f "asl_server.asl" ]; then
        croak "asl_server.asl is missing"
    fi
    if [ ! -f "asl_direct.asl" ]; then
        croak "asl_direct.asl is missing"
    fi
    if [ ! -f "demo.asl" ]; then
        croak "demo.asl is missing"
    fi
    if [ ! -f "demo_exchange.asl" ]; then
        croak "demo_exchange.asl is missing"
    fi
    if [ ! -f "demo_queue.asl" ]; then
        croak "demo_queue.asl is missing"
    fi
    if [ ! -f "demo_basic.asl" ]; then
        croak "demo_basic.asl is missing"
    fi
    if [ ! -f "demo_cli.c" ]; then
        croak "demo_cli.c is missing"
    fi
    if [ ! -f "demo_client_proto.asl" ]; then
        croak "demo_client_proto.asl is missing"
    fi
    if [ ! -f "demo_client_method.icl" ]; then
        croak "demo_client_method.icl is missing"
    fi
    if [ ! -f "demo_client_agent.smt" ]; then
        croak "demo_client_agent.smt is missing"
    fi
    if [ ! -f "demo_client_config.opf" ]; then
        croak "demo_client_config.opf is missing"
    fi
    if [ ! -f "demo_client_classes.icl" ]; then
        croak "demo_client_classes.icl is missing"
    fi
    if [ ! -f "demo_client_connection.icl" ]; then
        croak "demo_client_connection.icl is missing"
    fi
    if [ ! -f "demo_client_session.icl" ]; then
        croak "demo_client_session.icl is missing"
    fi
    if [ ! -f "demo_client_channel.icl" ]; then
        croak "demo_client_channel.icl is missing"
    fi
    if [ ! -f "demo_client_channel_table.icl" ]; then
        croak "demo_client_channel_table.icl is missing"
    fi
    if [ ! -f "demo_srv.c" ]; then
        croak "demo_srv.c is missing"
    fi
    if [ ! -f "demo_server_proto.asl" ]; then
        croak "demo_server_proto.asl is missing"
    fi
    if [ ! -f "demo_server_main.inc" ]; then
        croak "demo_server_main.inc is missing"
    fi
    if [ ! -f "demo_server_config.opf" ]; then
        croak "demo_server_config.opf is missing"
    fi
    if [ ! -f "demo_server_method.icl" ]; then
        croak "demo_server_method.icl is missing"
    fi
    if [ ! -f "demo_server_agent.smt" ]; then
        croak "demo_server_agent.smt is missing"
    fi
    if [ ! -f "demo_server_classes.icl" ]; then
        croak "demo_server_classes.icl is missing"
    fi
    if [ ! -f "demo_server_connection.icl" ]; then
        croak "demo_server_connection.icl is missing"
    fi
    if [ ! -f "demo_server_connection_table.icl" ]; then
        croak "demo_server_connection_table.icl is missing"
    fi
    if [ ! -f "demo_server_connection_list.icl" ]; then
        croak "demo_server_connection_list.icl is missing"
    fi
    if [ ! -f "demo_server_channel.icl" ]; then
        croak "demo_server_channel.icl is missing"
    fi
    if [ ! -f "demo_server_channel_agent.smt" ]; then
        croak "demo_server_channel_agent.smt is missing"
    fi
    if [ ! -f "demo_server_channel_table.icl" ]; then
        croak "demo_server_channel_table.icl is missing"
    fi
    if [ ! -f "demo_broker.icl" ]; then
        croak "demo_broker.icl is missing"
    fi
    if [ ! -f "demo_broker_agent.smt" ]; then
        croak "demo_broker_agent.smt is missing"
    fi
    if [ ! -f "demo_exchange.icl" ]; then
        croak "demo_exchange.icl is missing"
    fi
    if [ ! -f "demo_exchange_table.icl" ]; then
        croak "demo_exchange_table.icl is missing"
    fi
    if [ ! -f "demo_exchange_agent.smt" ]; then
        croak "demo_exchange_agent.smt is missing"
    fi
    if [ ! -f "demo_queue.icl" ]; then
        croak "demo_queue.icl is missing"
    fi
    if [ ! -f "demo_queue_table.icl" ]; then
        croak "demo_queue_table.icl is missing"
    fi
    if [ ! -f "demo_queue_list.icl" ]; then
        croak "demo_queue_list.icl is missing"
    fi
    if [ ! -f "demo_queue_agent.smt" ]; then
        croak "demo_queue_agent.smt is missing"
    fi
    if [ ! -f "demo_lease.icl" ]; then
        croak "demo_lease.icl is missing"
    fi
    if [ ! -f "demo_lease_table.icl" ]; then
        croak "demo_lease_table.icl is missing"
    fi
    if [ ! -f "demo_content_basic.icl" ]; then
        croak "demo_content_basic.icl is missing"
    fi
    if [ ! -f "demo_content_basic_list.icl" ]; then
        croak "demo_content_basic_list.icl is missing"
    fi
    if [ ! -f "demo_constants.icl" ]; then
        croak "demo_constants.icl is missing"
    fi
    if [ ! -f "demo_srv_resource.rc" ]; then
        croak "demo_srv_resource.rc is missing"
    fi
    if [ ! -f "demo_srv_base.cfg" ]; then
        croak "demo_srv_base.cfg is missing"
    fi
    if [ ! -f "icl_make_doc.ignore" ]; then
        croak "icl_make_doc.ignore is missing"
    fi
    if [ ! -f "project.pdl" ]; then
        croak "project.pdl is missing"
    fi
    if [ ! -f "readme.txt" ]; then
        croak "readme.txt is missing"
    fi
    if [ ! -f "asl_field_test.c" ]; then
        croak "asl_field_test.c is missing"
    fi
    if [ ! -f "asl_field.h" ]; then
        croak "asl_field.h is missing"
    fi
    if [ ! -f "asl_field.c" ]; then
        croak "asl_field.c is missing"
    fi
    if [ ! -f "asl_field_list_test.c" ]; then
        croak "asl_field_list_test.c is missing"
    fi
    if [ ! -f "asl_field_list.h" ]; then
        croak "asl_field_list.h is missing"
    fi
    if [ ! -f "asl_field_list.c" ]; then
        croak "asl_field_list.c is missing"
    fi
    if [ ! -f "demo_client_method_test.c" ]; then
        croak "demo_client_method_test.c is missing"
    fi
    if [ ! -f "demo_client_method.h" ]; then
        croak "demo_client_method.h is missing"
    fi
    if [ ! -f "demo_client_method.c" ]; then
        croak "demo_client_method.c is missing"
    fi
    if [ ! -f "demo_client_agent.h" ]; then
        croak "demo_client_agent.h is missing"
    fi
    if [ ! -f "demo_client_agent.c" ]; then
        croak "demo_client_agent.c is missing"
    fi
    if [ ! -f "demo_client_config.icl" ]; then
        croak "demo_client_config.icl is missing"
    fi
    if [ ! -f "demo_client_config_test.c" ]; then
        croak "demo_client_config_test.c is missing"
    fi
    if [ ! -f "demo_client_config.h" ]; then
        croak "demo_client_config.h is missing"
    fi
    if [ ! -f "demo_client_config.c" ]; then
        croak "demo_client_config.c is missing"
    fi
    if [ ! -f "demo_client_config.txt" ]; then
        croak "demo_client_config.txt is missing"
    fi
    if [ ! -f "demo_client_classes.h" ]; then
        croak "demo_client_classes.h is missing"
    fi
    if [ ! -f "demo_client_classes.c" ]; then
        croak "demo_client_classes.c is missing"
    fi
    if [ ! -f "demo_client_connection_test.c" ]; then
        croak "demo_client_connection_test.c is missing"
    fi
    if [ ! -f "demo_client_connection.h" ]; then
        croak "demo_client_connection.h is missing"
    fi
    if [ ! -f "demo_client_connection.c" ]; then
        croak "demo_client_connection.c is missing"
    fi
    if [ ! -f "demo_client_session_test.c" ]; then
        croak "demo_client_session_test.c is missing"
    fi
    if [ ! -f "demo_client_session.h" ]; then
        croak "demo_client_session.h is missing"
    fi
    if [ ! -f "demo_client_session.c" ]; then
        croak "demo_client_session.c is missing"
    fi
    if [ ! -f "demo_client_channel_test.c" ]; then
        croak "demo_client_channel_test.c is missing"
    fi
    if [ ! -f "demo_client_channel.h" ]; then
        croak "demo_client_channel.h is missing"
    fi
    if [ ! -f "demo_client_channel.c" ]; then
        croak "demo_client_channel.c is missing"
    fi
    if [ ! -f "demo_client_channel_table_test.c" ]; then
        croak "demo_client_channel_table_test.c is missing"
    fi
    if [ ! -f "demo_client_channel_table.h" ]; then
        croak "demo_client_channel_table.h is missing"
    fi
    if [ ! -f "demo_client_channel_table.c" ]; then
        croak "demo_client_channel_table.c is missing"
    fi
    if [ ! -f "demo_server_config.icl" ]; then
        croak "demo_server_config.icl is missing"
    fi
    if [ ! -f "demo_server_config_test.c" ]; then
        croak "demo_server_config_test.c is missing"
    fi
    if [ ! -f "demo_server_config.h" ]; then
        croak "demo_server_config.h is missing"
    fi
    if [ ! -f "demo_server_config.c" ]; then
        croak "demo_server_config.c is missing"
    fi
    if [ ! -f "demo_server_config.txt" ]; then
        croak "demo_server_config.txt is missing"
    fi
    if [ ! -f "demo_server_method_test.c" ]; then
        croak "demo_server_method_test.c is missing"
    fi
    if [ ! -f "demo_server_method.h" ]; then
        croak "demo_server_method.h is missing"
    fi
    if [ ! -f "demo_server_method.c" ]; then
        croak "demo_server_method.c is missing"
    fi
    if [ ! -f "demo_server_agent.h" ]; then
        croak "demo_server_agent.h is missing"
    fi
    if [ ! -f "demo_server_agent.c" ]; then
        croak "demo_server_agent.c is missing"
    fi
    if [ ! -f "demo_server_classes.h" ]; then
        croak "demo_server_classes.h is missing"
    fi
    if [ ! -f "demo_server_classes.c" ]; then
        croak "demo_server_classes.c is missing"
    fi
    if [ ! -f "demo_server_connection_test.c" ]; then
        croak "demo_server_connection_test.c is missing"
    fi
    if [ ! -f "demo_server_connection.h" ]; then
        croak "demo_server_connection.h is missing"
    fi
    if [ ! -f "demo_server_connection.c" ]; then
        croak "demo_server_connection.c is missing"
    fi
    if [ ! -f "demo_server_connection_table_test.c" ]; then
        croak "demo_server_connection_table_test.c is missing"
    fi
    if [ ! -f "demo_server_connection_table.h" ]; then
        croak "demo_server_connection_table.h is missing"
    fi
    if [ ! -f "demo_server_connection_table.c" ]; then
        croak "demo_server_connection_table.c is missing"
    fi
    if [ ! -f "demo_server_connection_list_test.c" ]; then
        croak "demo_server_connection_list_test.c is missing"
    fi
    if [ ! -f "demo_server_connection_list.h" ]; then
        croak "demo_server_connection_list.h is missing"
    fi
    if [ ! -f "demo_server_connection_list.c" ]; then
        croak "demo_server_connection_list.c is missing"
    fi
    if [ ! -f "demo_server_channel_test.c" ]; then
        croak "demo_server_channel_test.c is missing"
    fi
    if [ ! -f "demo_server_channel.h" ]; then
        croak "demo_server_channel.h is missing"
    fi
    if [ ! -f "demo_server_channel.c" ]; then
        croak "demo_server_channel.c is missing"
    fi
    if [ ! -f "demo_server_channel_agent.h" ]; then
        croak "demo_server_channel_agent.h is missing"
    fi
    if [ ! -f "demo_server_channel_agent.c" ]; then
        croak "demo_server_channel_agent.c is missing"
    fi
    if [ ! -f "demo_server_channel_table_test.c" ]; then
        croak "demo_server_channel_table_test.c is missing"
    fi
    if [ ! -f "demo_server_channel_table.h" ]; then
        croak "demo_server_channel_table.h is missing"
    fi
    if [ ! -f "demo_server_channel_table.c" ]; then
        croak "demo_server_channel_table.c is missing"
    fi
    if [ ! -f "demo_broker_test.c" ]; then
        croak "demo_broker_test.c is missing"
    fi
    if [ ! -f "demo_broker.h" ]; then
        croak "demo_broker.h is missing"
    fi
    if [ ! -f "demo_broker.c" ]; then
        croak "demo_broker.c is missing"
    fi
    if [ ! -f "demo_broker_agent.h" ]; then
        croak "demo_broker_agent.h is missing"
    fi
    if [ ! -f "demo_broker_agent.c" ]; then
        croak "demo_broker_agent.c is missing"
    fi
    if [ ! -f "demo_exchange_test.c" ]; then
        croak "demo_exchange_test.c is missing"
    fi
    if [ ! -f "demo_exchange.h" ]; then
        croak "demo_exchange.h is missing"
    fi
    if [ ! -f "demo_exchange.c" ]; then
        croak "demo_exchange.c is missing"
    fi
    if [ ! -f "demo_exchange_table_test.c" ]; then
        croak "demo_exchange_table_test.c is missing"
    fi
    if [ ! -f "demo_exchange_table.h" ]; then
        croak "demo_exchange_table.h is missing"
    fi
    if [ ! -f "demo_exchange_table.c" ]; then
        croak "demo_exchange_table.c is missing"
    fi
    if [ ! -f "demo_exchange_agent.h" ]; then
        croak "demo_exchange_agent.h is missing"
    fi
    if [ ! -f "demo_exchange_agent.c" ]; then
        croak "demo_exchange_agent.c is missing"
    fi
    if [ ! -f "demo_queue_test.c" ]; then
        croak "demo_queue_test.c is missing"
    fi
    if [ ! -f "demo_queue.h" ]; then
        croak "demo_queue.h is missing"
    fi
    if [ ! -f "demo_queue.c" ]; then
        croak "demo_queue.c is missing"
    fi
    if [ ! -f "demo_queue_table_test.c" ]; then
        croak "demo_queue_table_test.c is missing"
    fi
    if [ ! -f "demo_queue_table.h" ]; then
        croak "demo_queue_table.h is missing"
    fi
    if [ ! -f "demo_queue_table.c" ]; then
        croak "demo_queue_table.c is missing"
    fi
    if [ ! -f "demo_queue_list_test.c" ]; then
        croak "demo_queue_list_test.c is missing"
    fi
    if [ ! -f "demo_queue_list.h" ]; then
        croak "demo_queue_list.h is missing"
    fi
    if [ ! -f "demo_queue_list.c" ]; then
        croak "demo_queue_list.c is missing"
    fi
    if [ ! -f "demo_queue_agent.h" ]; then
        croak "demo_queue_agent.h is missing"
    fi
    if [ ! -f "demo_queue_agent.c" ]; then
        croak "demo_queue_agent.c is missing"
    fi
    if [ ! -f "demo_lease_test.c" ]; then
        croak "demo_lease_test.c is missing"
    fi
    if [ ! -f "demo_lease.h" ]; then
        croak "demo_lease.h is missing"
    fi
    if [ ! -f "demo_lease.c" ]; then
        croak "demo_lease.c is missing"
    fi
    if [ ! -f "demo_lease_table_test.c" ]; then
        croak "demo_lease_table_test.c is missing"
    fi
    if [ ! -f "demo_lease_table.h" ]; then
        croak "demo_lease_table.h is missing"
    fi
    if [ ! -f "demo_lease_table.c" ]; then
        croak "demo_lease_table.c is missing"
    fi
    if [ ! -f "demo_content_basic_test.c" ]; then
        croak "demo_content_basic_test.c is missing"
    fi
    if [ ! -f "demo_content_basic.h" ]; then
        croak "demo_content_basic.h is missing"
    fi
    if [ ! -f "demo_content_basic.c" ]; then
        croak "demo_content_basic.c is missing"
    fi
    if [ ! -f "demo_content_basic_list_test.c" ]; then
        croak "demo_content_basic_list_test.c is missing"
    fi
    if [ ! -f "demo_content_basic_list.h" ]; then
        croak "demo_content_basic_list.h is missing"
    fi
    if [ ! -f "demo_content_basic_list.c" ]; then
        croak "demo_content_basic_list.c is missing"
    fi
    if [ ! -f "demo_constants.h" ]; then
        croak "demo_constants.h is missing"
    fi
    if [ ! -f "demo_constants.c" ]; then
        croak "demo_constants.c is missing"
    fi
    if [ ! -f "demo_srv_resource.icl" ]; then
        croak "demo_srv_resource.icl is missing"
    fi
    if [ ! -f "demo_srv_resource_test.c" ]; then
        croak "demo_srv_resource_test.c is missing"
    fi
    if [ ! -f "demo_srv_resource.h" ]; then
        croak "demo_srv_resource.h is missing"
    fi
    if [ ! -f "demo_srv_resource.c" ]; then
        croak "demo_srv_resource.c is missing"
    fi
    if [ ! -f "stamp_generate" ]; then
        croak "stamp_generate is missing"
    fi
    if [ ! -f "configure" ]; then
        croak "configure is missing"
    fi
    if [ ! -f "Makefile.unix" ]; then
        croak "Makefile.unix is missing"
    fi
    if [ ! -f "boomake" ]; then
        croak "boomake is missing"
    fi
    if [ ! -f "configure.bat" ]; then
        croak "configure.bat is missing"
    fi
    if [ ! -f "Makefile.win32" ]; then
        croak "Makefile.win32 is missing"
    fi
    if [ ! -f "boomake.bat" ]; then
        croak "boomake.bat is missing"
    fi
    if [ ! -f "boomakew.bat" ]; then
        croak "boomakew.bat is missing"
    fi
    PUSHDIR=`pwd`
    cd pal
    if [ ! -f "asl_pal.gsl" ]; then
        croak "asl_pal.gsl is missing"
    fi
    if [ ! -f "asl_pal_stdc.gsl" ]; then
        croak "asl_pal_stdc.gsl is missing"
    fi
    if [ ! -f "asl_pal_xnf.gsl" ]; then
        croak "asl_pal_xnf.gsl is missing"
    fi
    if [ ! -f "asl_pal_txt.gsl" ]; then
        croak "asl_pal_txt.gsl is missing"
    fi
    if [ ! -f "palguide.txt" ]; then
        croak "palguide.txt is missing"
    fi
    if [ ! -f "pal" ]; then
        croak "pal is missing"
    fi
    if [ ! -f "demo_pal.xnf" ]; then
        croak "demo_pal.xnf is missing"
    fi
    if [ ! -f "demo_pal_stdc.gsl" ]; then
        croak "demo_pal_stdc.gsl is missing"
    fi
    if [ ! -f "demo_pal_codegen.gsl" ]; then
        croak "demo_pal_codegen.gsl is missing"
    fi
    if [ ! -f "demo_pal_gen.gsl" ]; then
        croak "demo_pal_gen.gsl is missing"
    fi
    if [ ! -f "demo_pal_inherit.gsl" ]; then
        croak "demo_pal_inherit.gsl is missing"
    fi
    if [ ! -f "demo_pal_parse.gsl" ]; then
        croak "demo_pal_parse.gsl is missing"
    fi
    if [ ! -f "demo_pal_preproc.gsl" ]; then
        croak "demo_pal_preproc.gsl is missing"
    fi
    if [ ! -f "hello.pal" ]; then
        croak "hello.pal is missing"
    fi
    if [ ! -f "loop1.pal" ]; then
        croak "loop1.pal is missing"
    fi
    if [ ! -f "loop2.pal" ]; then
        croak "loop2.pal is missing"
    fi
    if [ ! -f "content.pal" ]; then
        croak "content.pal is missing"
    fi
    if [ ! -f "macros.pal" ]; then
        croak "macros.pal is missing"
    fi
    if [ ! -f "session.pal" ]; then
        croak "session.pal is missing"
    fi
    if [ ! -f "single.pal" ]; then
        croak "single.pal is missing"
    fi
    if [ ! -f "single2.pal" ]; then
        croak "single2.pal is missing"
    fi
    if [ ! -f "symbols.pal" ]; then
        croak "symbols.pal is missing"
    fi
    if [ ! -f "waiting.pal" ]; then
        croak "waiting.pal is missing"
    fi
    if [ ! -f "content_file.pal" ]; then
        croak "content_file.pal is missing"
    fi
    if [ ! -f "content_exec.pal" ]; then
        croak "content_exec.pal is missing"
    fi
    if [ ! -f "content_body.pal" ]; then
        croak "content_body.pal is missing"
    fi
    if [ ! -f "cmdline.pal" ]; then
        croak "cmdline.pal is missing"
    fi
    if [ ! -f "webserver.pal" ]; then
        croak "webserver.pal is missing"
    fi
    if [ ! -f "stress.pal" ]; then
        croak "stress.pal is missing"
    fi
    if [ ! -f "im_read.pal" ]; then
        croak "im_read.pal is missing"
    fi
    if [ ! -f "im_send.pal" ]; then
        croak "im_send.pal is missing"
    fi
    if [ "`echo palguide*.html`" = "palguide*.html" ]; then
        croak "palguide*.html is missing"
    fi
    cd $PUSHDIR
}

# -------------------------   INSTALL DELIVERABLES   --------------------------

a_install_deliverables() {
:
    carp "Installing ASL into $_INSTALL_ROOT..."
    if [ ! -d "$_INSTALL_ROOT" ]; then
        if mkdir -p $_INSTALL_ROOT; then
            :
        else
            croak "Could not create directory \"$_INSTALL_ROOT\""
        fi
    fi
    mkdir -p $_INSTALL_ROOT/lib/
    [ "$BOOM_TRACE" ] && echo "cp libasl.a $_INSTALL_ROOT/lib/"
    cp libasl.a $_INSTALL_ROOT/lib/ || croak "\"cp libasl.a $_INSTALL_ROOT/lib/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/lib/libasl.a"
    chmod 0644 $_INSTALL_ROOT/lib/libasl.a || croak "\"chmod 0644 $_INSTALL_ROOT/lib/libasl.a\" failed"
    mkdir -p $_INSTALL_ROOT/include/
    [ "$BOOM_TRACE" ] && echo "cp asl.h $_INSTALL_ROOT/include/"
    cp asl.h $_INSTALL_ROOT/include/ || croak "\"cp asl.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/asl.h"
    chmod 0644 $_INSTALL_ROOT/include/asl.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/asl.h\" failed"
    mkdir -p $_INSTALL_ROOT/bin/
    [ "$BOOM_TRACE" ] && echo "cp asl_gen.gsl $_INSTALL_ROOT/bin/"
    cp asl_gen.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_gen.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_gen.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_gen.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_gen.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_preproc.gsl $_INSTALL_ROOT/bin/"
    cp asl_preproc.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_preproc.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_preproc.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_preproc.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_preproc.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_inherit.gsl $_INSTALL_ROOT/bin/"
    cp asl_inherit.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_inherit.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_inherit.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_inherit.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_inherit.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_parse.gsl $_INSTALL_ROOT/bin/"
    cp asl_parse.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_parse.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_parse.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_parse.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_parse.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_stdc.gsl $_INSTALL_ROOT/bin/"
    cp asl_stdc.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_stdc.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_stdc.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_stdc.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_stdc.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_java.gsl $_INSTALL_ROOT/bin/"
    cp asl_java.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_java.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_java.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_java.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_java.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_csharp.gsl $_INSTALL_ROOT/bin/"
    cp asl_csharp.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_csharp.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_csharp.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_csharp.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_csharp.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_doc.gsl $_INSTALL_ROOT/bin/"
    cp asl_doc.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_doc.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_doc.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_doc.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_doc.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_constants.gsl $_INSTALL_ROOT/bin/"
    cp asl_constants.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_constants.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_constants.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_constants.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_constants.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_method_class.gsl $_INSTALL_ROOT/bin/"
    cp asl_method_class.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_method_class.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_method_class.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_method_class.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_method_class.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_content_class.gsl $_INSTALL_ROOT/bin/"
    cp asl_content_class.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_content_class.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_content_class.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_content_class.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_content_class.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_client_connection.gsl $_INSTALL_ROOT/bin/"
    cp asl_client_connection.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_client_connection.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_client_connection.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_client_connection.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_client_connection.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_client_session.gsl $_INSTALL_ROOT/bin/"
    cp asl_client_session.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_client_session.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_client_session.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_client_session.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_client_session.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_client_agent.gsl $_INSTALL_ROOT/bin/"
    cp asl_client_agent.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_client_agent.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_client_agent.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_client_agent.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_client_agent.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_server_agent.gsl $_INSTALL_ROOT/bin/"
    cp asl_server_agent.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_server_agent.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_server_agent.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_server_agent.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_server_agent.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_agent_common.gsl $_INSTALL_ROOT/bin/"
    cp asl_agent_common.gsl $_INSTALL_ROOT/bin/ || croak "\"cp asl_agent_common.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_agent_common.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_agent_common.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_agent_common.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_channel.icl $_INSTALL_ROOT/bin/"
    cp asl_channel.icl $_INSTALL_ROOT/bin/ || croak "\"cp asl_channel.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_channel.icl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_channel.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_channel.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_server_connection.icl $_INSTALL_ROOT/bin/"
    cp asl_server_connection.icl $_INSTALL_ROOT/bin/ || croak "\"cp asl_server_connection.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_server_connection.icl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_server_connection.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_server_connection.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_server_channel.icl $_INSTALL_ROOT/bin/"
    cp asl_server_channel.icl $_INSTALL_ROOT/bin/ || croak "\"cp asl_server_channel.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_server_channel.icl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_server_channel.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_server_channel.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_client_channel.icl $_INSTALL_ROOT/bin/"
    cp asl_client_channel.icl $_INSTALL_ROOT/bin/ || croak "\"cp asl_client_channel.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_client_channel.icl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_client_channel.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_client_channel.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_broker.icl $_INSTALL_ROOT/bin/"
    cp asl_broker.icl $_INSTALL_ROOT/bin/ || croak "\"cp asl_broker.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_broker.icl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_broker.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_broker.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_field.icl $_INSTALL_ROOT/bin/"
    cp asl_field.icl $_INSTALL_ROOT/bin/ || croak "\"cp asl_field.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_field.icl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_field.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_field.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_field_list.icl $_INSTALL_ROOT/bin/"
    cp asl_field_list.icl $_INSTALL_ROOT/bin/ || croak "\"cp asl_field_list.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_field_list.icl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_field_list.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_field_list.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_base.asl $_INSTALL_ROOT/bin/"
    cp asl_base.asl $_INSTALL_ROOT/bin/ || croak "\"cp asl_base.asl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_base.asl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_base.asl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_base.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_constants.asl $_INSTALL_ROOT/bin/"
    cp asl_constants.asl $_INSTALL_ROOT/bin/ || croak "\"cp asl_constants.asl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_constants.asl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_constants.asl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_constants.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_connection.asl $_INSTALL_ROOT/bin/"
    cp asl_connection.asl $_INSTALL_ROOT/bin/ || croak "\"cp asl_connection.asl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_connection.asl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_connection.asl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_connection.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_channel.asl $_INSTALL_ROOT/bin/"
    cp asl_channel.asl $_INSTALL_ROOT/bin/ || croak "\"cp asl_channel.asl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_channel.asl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_channel.asl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_channel.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_client.asl $_INSTALL_ROOT/bin/"
    cp asl_client.asl $_INSTALL_ROOT/bin/ || croak "\"cp asl_client.asl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_client.asl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_client.asl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_client.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_server.asl $_INSTALL_ROOT/bin/"
    cp asl_server.asl $_INSTALL_ROOT/bin/ || croak "\"cp asl_server.asl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_server.asl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_server.asl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_server.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_direct.asl $_INSTALL_ROOT/bin/"
    cp asl_direct.asl $_INSTALL_ROOT/bin/ || croak "\"cp asl_direct.asl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_direct.asl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_direct.asl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_direct.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo.asl $_INSTALL_ROOT/bin/"
    cp demo.asl $_INSTALL_ROOT/bin/ || croak "\"cp demo.asl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo.asl"
    chmod 0644 $_INSTALL_ROOT/bin/demo.asl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_exchange.asl $_INSTALL_ROOT/bin/"
    cp demo_exchange.asl $_INSTALL_ROOT/bin/ || croak "\"cp demo_exchange.asl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_exchange.asl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_exchange.asl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_exchange.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_queue.asl $_INSTALL_ROOT/bin/"
    cp demo_queue.asl $_INSTALL_ROOT/bin/ || croak "\"cp demo_queue.asl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_queue.asl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_queue.asl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_queue.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_basic.asl $_INSTALL_ROOT/bin/"
    cp demo_basic.asl $_INSTALL_ROOT/bin/ || croak "\"cp demo_basic.asl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_basic.asl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_basic.asl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_basic.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_method.icl $_INSTALL_ROOT/bin/"
    cp demo_client_method.icl $_INSTALL_ROOT/bin/ || croak "\"cp demo_client_method.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_client_method.icl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_client_method.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_client_method.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_agent.smt $_INSTALL_ROOT/bin/"
    cp demo_client_agent.smt $_INSTALL_ROOT/bin/ || croak "\"cp demo_client_agent.smt $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_client_agent.smt"
    chmod 0644 $_INSTALL_ROOT/bin/demo_client_agent.smt || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_client_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_config.opf $_INSTALL_ROOT/bin/"
    cp demo_client_config.opf $_INSTALL_ROOT/bin/ || croak "\"cp demo_client_config.opf $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_client_config.opf"
    chmod 0644 $_INSTALL_ROOT/bin/demo_client_config.opf || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_client_config.opf\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_classes.icl $_INSTALL_ROOT/bin/"
    cp demo_client_classes.icl $_INSTALL_ROOT/bin/ || croak "\"cp demo_client_classes.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_client_classes.icl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_client_classes.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_client_classes.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_connection.icl $_INSTALL_ROOT/bin/"
    cp demo_client_connection.icl $_INSTALL_ROOT/bin/ || croak "\"cp demo_client_connection.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_client_connection.icl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_client_connection.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_client_connection.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_session.icl $_INSTALL_ROOT/bin/"
    cp demo_client_session.icl $_INSTALL_ROOT/bin/ || croak "\"cp demo_client_session.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_client_session.icl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_client_session.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_client_session.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_config.opf $_INSTALL_ROOT/bin/"
    cp demo_server_config.opf $_INSTALL_ROOT/bin/ || croak "\"cp demo_server_config.opf $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_server_config.opf"
    chmod 0644 $_INSTALL_ROOT/bin/demo_server_config.opf || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_server_config.opf\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_agent.smt $_INSTALL_ROOT/bin/"
    cp demo_server_agent.smt $_INSTALL_ROOT/bin/ || croak "\"cp demo_server_agent.smt $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_server_agent.smt"
    chmod 0644 $_INSTALL_ROOT/bin/demo_server_agent.smt || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_server_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_channel_agent.smt $_INSTALL_ROOT/bin/"
    cp demo_server_channel_agent.smt $_INSTALL_ROOT/bin/ || croak "\"cp demo_server_channel_agent.smt $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_server_channel_agent.smt"
    chmod 0644 $_INSTALL_ROOT/bin/demo_server_channel_agent.smt || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_server_channel_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_broker_agent.smt $_INSTALL_ROOT/bin/"
    cp demo_broker_agent.smt $_INSTALL_ROOT/bin/ || croak "\"cp demo_broker_agent.smt $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_broker_agent.smt"
    chmod 0644 $_INSTALL_ROOT/bin/demo_broker_agent.smt || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_broker_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_exchange_agent.smt $_INSTALL_ROOT/bin/"
    cp demo_exchange_agent.smt $_INSTALL_ROOT/bin/ || croak "\"cp demo_exchange_agent.smt $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_exchange_agent.smt"
    chmod 0644 $_INSTALL_ROOT/bin/demo_exchange_agent.smt || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_exchange_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_queue_agent.smt $_INSTALL_ROOT/bin/"
    cp demo_queue_agent.smt $_INSTALL_ROOT/bin/ || croak "\"cp demo_queue_agent.smt $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_queue_agent.smt"
    chmod 0644 $_INSTALL_ROOT/bin/demo_queue_agent.smt || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_queue_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_content_basic.icl $_INSTALL_ROOT/bin/"
    cp demo_content_basic.icl $_INSTALL_ROOT/bin/ || croak "\"cp demo_content_basic.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_content_basic.icl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_content_basic.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_content_basic.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_content_basic_list.icl $_INSTALL_ROOT/bin/"
    cp demo_content_basic_list.icl $_INSTALL_ROOT/bin/ || croak "\"cp demo_content_basic_list.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_content_basic_list.icl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_content_basic_list.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_content_basic_list.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_constants.icl $_INSTALL_ROOT/bin/"
    cp demo_constants.icl $_INSTALL_ROOT/bin/ || croak "\"cp demo_constants.icl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_constants.icl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_constants.icl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_constants.icl\" failed"
    mkdir -p $_INSTALL_ROOT/doc/ASL/
    [ "$BOOM_TRACE" ] && echo "cp readme.txt $_INSTALL_ROOT/doc/ASL/"
    cp readme.txt $_INSTALL_ROOT/doc/ASL/ || croak "\"cp readme.txt $_INSTALL_ROOT/doc/ASL/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/doc/ASL/readme.txt"
    chmod 0644 $_INSTALL_ROOT/doc/ASL/readme.txt || croak "\"chmod 0644 $_INSTALL_ROOT/doc/ASL/readme.txt\" failed"
    mkdir -p $_INSTALL_ROOT/include/
    [ "$BOOM_TRACE" ] && echo "cp asl_field.h $_INSTALL_ROOT/include/"
    cp asl_field.h $_INSTALL_ROOT/include/ || croak "\"cp asl_field.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/asl_field.h"
    chmod 0644 $_INSTALL_ROOT/include/asl_field.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/asl_field.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp asl_field_list.h $_INSTALL_ROOT/include/"
    cp asl_field_list.h $_INSTALL_ROOT/include/ || croak "\"cp asl_field_list.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/asl_field_list.h"
    chmod 0644 $_INSTALL_ROOT/include/asl_field_list.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/asl_field_list.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_method.h $_INSTALL_ROOT/include/"
    cp demo_client_method.h $_INSTALL_ROOT/include/ || croak "\"cp demo_client_method.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_client_method.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_client_method.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_client_method.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_agent.h $_INSTALL_ROOT/include/"
    cp demo_client_agent.h $_INSTALL_ROOT/include/ || croak "\"cp demo_client_agent.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_client_agent.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_client_agent.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_client_agent.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_config.h $_INSTALL_ROOT/include/"
    cp demo_client_config.h $_INSTALL_ROOT/include/ || croak "\"cp demo_client_config.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_client_config.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_client_config.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_client_config.h\" failed"
    mkdir -p $_INSTALL_ROOT/bin/
    [ "$BOOM_TRACE" ] && echo "cp demo_client_config.txt $_INSTALL_ROOT/bin/"
    cp demo_client_config.txt $_INSTALL_ROOT/bin/ || croak "\"cp demo_client_config.txt $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_client_config.txt"
    chmod 0644 $_INSTALL_ROOT/bin/demo_client_config.txt || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_client_config.txt\" failed"
    mkdir -p $_INSTALL_ROOT/include/
    [ "$BOOM_TRACE" ] && echo "cp demo_client_classes.h $_INSTALL_ROOT/include/"
    cp demo_client_classes.h $_INSTALL_ROOT/include/ || croak "\"cp demo_client_classes.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_client_classes.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_client_classes.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_client_classes.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_connection.h $_INSTALL_ROOT/include/"
    cp demo_client_connection.h $_INSTALL_ROOT/include/ || croak "\"cp demo_client_connection.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_client_connection.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_client_connection.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_client_connection.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_session.h $_INSTALL_ROOT/include/"
    cp demo_client_session.h $_INSTALL_ROOT/include/ || croak "\"cp demo_client_session.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_client_session.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_client_session.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_client_session.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_channel.h $_INSTALL_ROOT/include/"
    cp demo_client_channel.h $_INSTALL_ROOT/include/ || croak "\"cp demo_client_channel.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_client_channel.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_client_channel.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_client_channel.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_client_channel_table.h $_INSTALL_ROOT/include/"
    cp demo_client_channel_table.h $_INSTALL_ROOT/include/ || croak "\"cp demo_client_channel_table.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_client_channel_table.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_client_channel_table.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_client_channel_table.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_config.h $_INSTALL_ROOT/include/"
    cp demo_server_config.h $_INSTALL_ROOT/include/ || croak "\"cp demo_server_config.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_server_config.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_server_config.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_server_config.h\" failed"
    mkdir -p $_INSTALL_ROOT/bin/
    [ "$BOOM_TRACE" ] && echo "cp demo_server_config.txt $_INSTALL_ROOT/bin/"
    cp demo_server_config.txt $_INSTALL_ROOT/bin/ || croak "\"cp demo_server_config.txt $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_server_config.txt"
    chmod 0644 $_INSTALL_ROOT/bin/demo_server_config.txt || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_server_config.txt\" failed"
    mkdir -p $_INSTALL_ROOT/include/
    [ "$BOOM_TRACE" ] && echo "cp demo_server_method.h $_INSTALL_ROOT/include/"
    cp demo_server_method.h $_INSTALL_ROOT/include/ || croak "\"cp demo_server_method.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_server_method.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_server_method.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_server_method.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_agent.h $_INSTALL_ROOT/include/"
    cp demo_server_agent.h $_INSTALL_ROOT/include/ || croak "\"cp demo_server_agent.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_server_agent.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_server_agent.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_server_agent.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_classes.h $_INSTALL_ROOT/include/"
    cp demo_server_classes.h $_INSTALL_ROOT/include/ || croak "\"cp demo_server_classes.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_server_classes.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_server_classes.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_server_classes.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_connection.h $_INSTALL_ROOT/include/"
    cp demo_server_connection.h $_INSTALL_ROOT/include/ || croak "\"cp demo_server_connection.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_server_connection.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_server_connection.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_server_connection.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_connection_table.h $_INSTALL_ROOT/include/"
    cp demo_server_connection_table.h $_INSTALL_ROOT/include/ || croak "\"cp demo_server_connection_table.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_server_connection_table.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_server_connection_table.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_server_connection_table.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_connection_list.h $_INSTALL_ROOT/include/"
    cp demo_server_connection_list.h $_INSTALL_ROOT/include/ || croak "\"cp demo_server_connection_list.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_server_connection_list.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_server_connection_list.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_server_connection_list.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_channel.h $_INSTALL_ROOT/include/"
    cp demo_server_channel.h $_INSTALL_ROOT/include/ || croak "\"cp demo_server_channel.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_server_channel.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_server_channel.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_server_channel.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_channel_agent.h $_INSTALL_ROOT/include/"
    cp demo_server_channel_agent.h $_INSTALL_ROOT/include/ || croak "\"cp demo_server_channel_agent.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_server_channel_agent.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_server_channel_agent.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_server_channel_agent.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_server_channel_table.h $_INSTALL_ROOT/include/"
    cp demo_server_channel_table.h $_INSTALL_ROOT/include/ || croak "\"cp demo_server_channel_table.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_server_channel_table.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_server_channel_table.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_server_channel_table.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_broker.h $_INSTALL_ROOT/include/"
    cp demo_broker.h $_INSTALL_ROOT/include/ || croak "\"cp demo_broker.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_broker.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_broker.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_broker.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_broker_agent.h $_INSTALL_ROOT/include/"
    cp demo_broker_agent.h $_INSTALL_ROOT/include/ || croak "\"cp demo_broker_agent.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_broker_agent.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_broker_agent.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_broker_agent.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_exchange.h $_INSTALL_ROOT/include/"
    cp demo_exchange.h $_INSTALL_ROOT/include/ || croak "\"cp demo_exchange.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_exchange.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_exchange.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_exchange.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_exchange_table.h $_INSTALL_ROOT/include/"
    cp demo_exchange_table.h $_INSTALL_ROOT/include/ || croak "\"cp demo_exchange_table.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_exchange_table.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_exchange_table.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_exchange_table.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_exchange_agent.h $_INSTALL_ROOT/include/"
    cp demo_exchange_agent.h $_INSTALL_ROOT/include/ || croak "\"cp demo_exchange_agent.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_exchange_agent.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_exchange_agent.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_exchange_agent.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_queue.h $_INSTALL_ROOT/include/"
    cp demo_queue.h $_INSTALL_ROOT/include/ || croak "\"cp demo_queue.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_queue.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_queue.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_queue.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_queue_table.h $_INSTALL_ROOT/include/"
    cp demo_queue_table.h $_INSTALL_ROOT/include/ || croak "\"cp demo_queue_table.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_queue_table.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_queue_table.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_queue_table.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_queue_list.h $_INSTALL_ROOT/include/"
    cp demo_queue_list.h $_INSTALL_ROOT/include/ || croak "\"cp demo_queue_list.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_queue_list.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_queue_list.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_queue_list.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_queue_agent.h $_INSTALL_ROOT/include/"
    cp demo_queue_agent.h $_INSTALL_ROOT/include/ || croak "\"cp demo_queue_agent.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_queue_agent.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_queue_agent.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_queue_agent.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_lease.h $_INSTALL_ROOT/include/"
    cp demo_lease.h $_INSTALL_ROOT/include/ || croak "\"cp demo_lease.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_lease.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_lease.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_lease.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_lease_table.h $_INSTALL_ROOT/include/"
    cp demo_lease_table.h $_INSTALL_ROOT/include/ || croak "\"cp demo_lease_table.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_lease_table.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_lease_table.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_lease_table.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_content_basic.h $_INSTALL_ROOT/include/"
    cp demo_content_basic.h $_INSTALL_ROOT/include/ || croak "\"cp demo_content_basic.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_content_basic.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_content_basic.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_content_basic.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_content_basic_list.h $_INSTALL_ROOT/include/"
    cp demo_content_basic_list.h $_INSTALL_ROOT/include/ || croak "\"cp demo_content_basic_list.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_content_basic_list.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_content_basic_list.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_content_basic_list.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_constants.h $_INSTALL_ROOT/include/"
    cp demo_constants.h $_INSTALL_ROOT/include/ || croak "\"cp demo_constants.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_constants.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_constants.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_constants.h\" failed"
    [ "$BOOM_TRACE" ] && echo "cp demo_srv_resource.h $_INSTALL_ROOT/include/"
    cp demo_srv_resource.h $_INSTALL_ROOT/include/ || croak "\"cp demo_srv_resource.h $_INSTALL_ROOT/include/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/include/demo_srv_resource.h"
    chmod 0644 $_INSTALL_ROOT/include/demo_srv_resource.h || croak "\"chmod 0644 $_INSTALL_ROOT/include/demo_srv_resource.h\" failed"
    mkdir -p $_INSTALL_ROOT/bin/
    [ "$BOOM_TRACE" ] && echo "cp pal/asl_pal.gsl $_INSTALL_ROOT/bin/"
    cp pal/asl_pal.gsl $_INSTALL_ROOT/bin/ || croak "\"cp pal/asl_pal.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_pal.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_pal.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_pal.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp pal/asl_pal_stdc.gsl $_INSTALL_ROOT/bin/"
    cp pal/asl_pal_stdc.gsl $_INSTALL_ROOT/bin/ || croak "\"cp pal/asl_pal_stdc.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_pal_stdc.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_pal_stdc.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_pal_stdc.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp pal/asl_pal_xnf.gsl $_INSTALL_ROOT/bin/"
    cp pal/asl_pal_xnf.gsl $_INSTALL_ROOT/bin/ || croak "\"cp pal/asl_pal_xnf.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_pal_xnf.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_pal_xnf.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_pal_xnf.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp pal/asl_pal_txt.gsl $_INSTALL_ROOT/bin/"
    cp pal/asl_pal_txt.gsl $_INSTALL_ROOT/bin/ || croak "\"cp pal/asl_pal_txt.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/asl_pal_txt.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/asl_pal_txt.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/asl_pal_txt.gsl\" failed"
    mkdir -p $_INSTALL_ROOT/doc/ASL/
    [ "$BOOM_TRACE" ] && echo "cp pal/palguide.txt $_INSTALL_ROOT/doc/ASL/"
    cp pal/palguide.txt $_INSTALL_ROOT/doc/ASL/ || croak "\"cp pal/palguide.txt $_INSTALL_ROOT/doc/ASL/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/doc/ASL/palguide.txt"
    chmod 0644 $_INSTALL_ROOT/doc/ASL/palguide.txt || croak "\"chmod 0644 $_INSTALL_ROOT/doc/ASL/palguide.txt\" failed"
    mkdir -p $_INSTALL_ROOT/bin/
    [ "$BOOM_TRACE" ] && echo "cp pal/pal $_INSTALL_ROOT/bin/"
    cp pal/pal $_INSTALL_ROOT/bin/ || croak "\"cp pal/pal $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0755 $_INSTALL_ROOT/bin/pal"
    chmod 0755 $_INSTALL_ROOT/bin/pal || croak "\"chmod 0755 $_INSTALL_ROOT/bin/pal\" failed"
    [ "$BOOM_TRACE" ] && echo "cp pal/demo_pal_stdc.gsl $_INSTALL_ROOT/bin/"
    cp pal/demo_pal_stdc.gsl $_INSTALL_ROOT/bin/ || croak "\"cp pal/demo_pal_stdc.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_pal_stdc.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_pal_stdc.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_pal_stdc.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp pal/demo_pal_codegen.gsl $_INSTALL_ROOT/bin/"
    cp pal/demo_pal_codegen.gsl $_INSTALL_ROOT/bin/ || croak "\"cp pal/demo_pal_codegen.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_pal_codegen.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_pal_codegen.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_pal_codegen.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp pal/demo_pal_gen.gsl $_INSTALL_ROOT/bin/"
    cp pal/demo_pal_gen.gsl $_INSTALL_ROOT/bin/ || croak "\"cp pal/demo_pal_gen.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_pal_gen.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_pal_gen.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_pal_gen.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp pal/demo_pal_inherit.gsl $_INSTALL_ROOT/bin/"
    cp pal/demo_pal_inherit.gsl $_INSTALL_ROOT/bin/ || croak "\"cp pal/demo_pal_inherit.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_pal_inherit.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_pal_inherit.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_pal_inherit.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp pal/demo_pal_parse.gsl $_INSTALL_ROOT/bin/"
    cp pal/demo_pal_parse.gsl $_INSTALL_ROOT/bin/ || croak "\"cp pal/demo_pal_parse.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_pal_parse.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_pal_parse.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_pal_parse.gsl\" failed"
    [ "$BOOM_TRACE" ] && echo "cp pal/demo_pal_preproc.gsl $_INSTALL_ROOT/bin/"
    cp pal/demo_pal_preproc.gsl $_INSTALL_ROOT/bin/ || croak "\"cp pal/demo_pal_preproc.gsl $_INSTALL_ROOT/bin/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/bin/demo_pal_preproc.gsl"
    chmod 0644 $_INSTALL_ROOT/bin/demo_pal_preproc.gsl || croak "\"chmod 0644 $_INSTALL_ROOT/bin/demo_pal_preproc.gsl\" failed"
    mkdir -p $_INSTALL_ROOT/doc/ASL/
    [ "$BOOM_TRACE" ] && echo "cp pal/palguide*.html $_INSTALL_ROOT/doc/ASL/"
    cp pal/palguide*.html $_INSTALL_ROOT/doc/ASL/ || croak "\"cp pal/palguide*.html $_INSTALL_ROOT/doc/ASL/\" failed"
    [ "$BOOM_TRACE" ] && echo "chmod 0644 $_INSTALL_ROOT/doc/ASL/palguide*.html"
    chmod 0644 $_INSTALL_ROOT/doc/ASL/palguide*.html || croak "\"chmod 0644 $_INSTALL_ROOT/doc/ASL/palguide*.html\" failed"
    if [ -f ./installer ]; then
    [ "$BOOM_TRACE" ] && echo "sh ./installer"
    sh ./installer || croak "\"sh ./installer\" failed"
    fi
}

# ----------------------   PRODUCE ALL GENERATED FILES   ----------------------

a_produce_all_generated_files() {
:
    carp "Generating files..."
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 asl.xnf"
    gsl -q -quiet:1 asl.xnf || croak "\"gsl -q -quiet:1 asl.xnf\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 asl_field.icl"
    gsl -q -quiet:1 asl_field.icl || croak "\"gsl -q -quiet:1 asl_field.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 asl_field_list.icl"
    gsl -q -quiet:1 asl_field_list.icl || croak "\"gsl -q -quiet:1 asl_field_list.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo.asl"
    gsl -q -quiet:1 demo.asl || croak "\"gsl -q -quiet:1 demo.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_proto.asl"
    gsl -q -quiet:1 demo_client_proto.asl || croak "\"gsl -q -quiet:1 demo_client_proto.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_method.icl"
    gsl -q -quiet:1 demo_client_method.icl || croak "\"gsl -q -quiet:1 demo_client_method.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_agent.smt"
    gsl -q -quiet:1 demo_client_agent.smt || croak "\"gsl -q -quiet:1 demo_client_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_config.opf"
    gsl -q -quiet:1 demo_client_config.opf || croak "\"gsl -q -quiet:1 demo_client_config.opf\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_classes.icl"
    gsl -q -quiet:1 demo_client_classes.icl || croak "\"gsl -q -quiet:1 demo_client_classes.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_connection.icl"
    gsl -q -quiet:1 demo_client_connection.icl || croak "\"gsl -q -quiet:1 demo_client_connection.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_session.icl"
    gsl -q -quiet:1 demo_client_session.icl || croak "\"gsl -q -quiet:1 demo_client_session.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_channel.icl"
    gsl -q -quiet:1 demo_client_channel.icl || croak "\"gsl -q -quiet:1 demo_client_channel.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_channel_table.icl"
    gsl -q -quiet:1 demo_client_channel_table.icl || croak "\"gsl -q -quiet:1 demo_client_channel_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_proto.asl"
    gsl -q -quiet:1 demo_server_proto.asl || croak "\"gsl -q -quiet:1 demo_server_proto.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_config.opf"
    gsl -q -quiet:1 demo_server_config.opf || croak "\"gsl -q -quiet:1 demo_server_config.opf\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_method.icl"
    gsl -q -quiet:1 demo_server_method.icl || croak "\"gsl -q -quiet:1 demo_server_method.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_agent.smt"
    gsl -q -quiet:1 demo_server_agent.smt || croak "\"gsl -q -quiet:1 demo_server_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_classes.icl"
    gsl -q -quiet:1 demo_server_classes.icl || croak "\"gsl -q -quiet:1 demo_server_classes.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_connection.icl"
    gsl -q -quiet:1 demo_server_connection.icl || croak "\"gsl -q -quiet:1 demo_server_connection.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_connection_table.icl"
    gsl -q -quiet:1 demo_server_connection_table.icl || croak "\"gsl -q -quiet:1 demo_server_connection_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_connection_list.icl"
    gsl -q -quiet:1 demo_server_connection_list.icl || croak "\"gsl -q -quiet:1 demo_server_connection_list.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_channel.icl"
    gsl -q -quiet:1 demo_server_channel.icl || croak "\"gsl -q -quiet:1 demo_server_channel.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_channel_agent.smt"
    gsl -q -quiet:1 demo_server_channel_agent.smt || croak "\"gsl -q -quiet:1 demo_server_channel_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_channel_table.icl"
    gsl -q -quiet:1 demo_server_channel_table.icl || croak "\"gsl -q -quiet:1 demo_server_channel_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_broker.icl"
    gsl -q -quiet:1 demo_broker.icl || croak "\"gsl -q -quiet:1 demo_broker.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_broker_agent.smt"
    gsl -q -quiet:1 demo_broker_agent.smt || croak "\"gsl -q -quiet:1 demo_broker_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_exchange.icl"
    gsl -q -quiet:1 demo_exchange.icl || croak "\"gsl -q -quiet:1 demo_exchange.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_exchange_table.icl"
    gsl -q -quiet:1 demo_exchange_table.icl || croak "\"gsl -q -quiet:1 demo_exchange_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_exchange_agent.smt"
    gsl -q -quiet:1 demo_exchange_agent.smt || croak "\"gsl -q -quiet:1 demo_exchange_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_queue.icl"
    gsl -q -quiet:1 demo_queue.icl || croak "\"gsl -q -quiet:1 demo_queue.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_queue_table.icl"
    gsl -q -quiet:1 demo_queue_table.icl || croak "\"gsl -q -quiet:1 demo_queue_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_queue_list.icl"
    gsl -q -quiet:1 demo_queue_list.icl || croak "\"gsl -q -quiet:1 demo_queue_list.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_queue_agent.smt"
    gsl -q -quiet:1 demo_queue_agent.smt || croak "\"gsl -q -quiet:1 demo_queue_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_lease.icl"
    gsl -q -quiet:1 demo_lease.icl || croak "\"gsl -q -quiet:1 demo_lease.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_lease_table.icl"
    gsl -q -quiet:1 demo_lease_table.icl || croak "\"gsl -q -quiet:1 demo_lease_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_content_basic.icl"
    gsl -q -quiet:1 demo_content_basic.icl || croak "\"gsl -q -quiet:1 demo_content_basic.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_content_basic_list.icl"
    gsl -q -quiet:1 demo_content_basic_list.icl || croak "\"gsl -q -quiet:1 demo_content_basic_list.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_constants.icl"
    gsl -q -quiet:1 demo_constants.icl || croak "\"gsl -q -quiet:1 demo_constants.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "perl -S ipr_resource.pl -@ demo_srv_resource.rc"
    perl -S ipr_resource.pl -@ demo_srv_resource.rc || croak "\"perl -S ipr_resource.pl -@ demo_srv_resource.rc\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_config.icl"
    gsl -q -quiet:1 demo_client_config.icl || croak "\"gsl -q -quiet:1 demo_client_config.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_config.icl"
    gsl -q -quiet:1 demo_server_config.icl || croak "\"gsl -q -quiet:1 demo_server_config.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_srv_resource.icl"
    gsl -q -quiet:1 demo_srv_resource.icl || croak "\"gsl -q -quiet:1 demo_srv_resource.icl\" failed"
    PUSHDIR=`pwd`
    cd pal

        PATH=..:$PATH; export PATH
        gsl -q -quiet:1 -target:pal demo.asl
        gsl -q -quiet:1 demo_pal.xnf
      
    [ "$BOOM_TRACE" ] && echo "gurudoc palguide.txt"
    gurudoc palguide.txt || croak "\"gurudoc palguide.txt\" failed"
    cd $PUSHDIR
    echo "Source files successfully generated">stamp_generate
}

# ------------------------   PRODUCE GENERATED FILES   ------------------------

a_produce_generated_files() {
:
    carp "Generating files..."
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 asl.xnf"
    gsl -q -quiet:1 asl.xnf || croak "\"gsl -q -quiet:1 asl.xnf\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 asl_field.icl"
    gsl -q -quiet:1 asl_field.icl || croak "\"gsl -q -quiet:1 asl_field.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 asl_field_list.icl"
    gsl -q -quiet:1 asl_field_list.icl || croak "\"gsl -q -quiet:1 asl_field_list.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo.asl"
    gsl -q -quiet:1 demo.asl || croak "\"gsl -q -quiet:1 demo.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_proto.asl"
    gsl -q -quiet:1 demo_client_proto.asl || croak "\"gsl -q -quiet:1 demo_client_proto.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_method.icl"
    gsl -q -quiet:1 demo_client_method.icl || croak "\"gsl -q -quiet:1 demo_client_method.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_agent.smt"
    gsl -q -quiet:1 demo_client_agent.smt || croak "\"gsl -q -quiet:1 demo_client_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_config.opf"
    gsl -q -quiet:1 demo_client_config.opf || croak "\"gsl -q -quiet:1 demo_client_config.opf\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_classes.icl"
    gsl -q -quiet:1 demo_client_classes.icl || croak "\"gsl -q -quiet:1 demo_client_classes.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_connection.icl"
    gsl -q -quiet:1 demo_client_connection.icl || croak "\"gsl -q -quiet:1 demo_client_connection.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_session.icl"
    gsl -q -quiet:1 demo_client_session.icl || croak "\"gsl -q -quiet:1 demo_client_session.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_channel.icl"
    gsl -q -quiet:1 demo_client_channel.icl || croak "\"gsl -q -quiet:1 demo_client_channel.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_channel_table.icl"
    gsl -q -quiet:1 demo_client_channel_table.icl || croak "\"gsl -q -quiet:1 demo_client_channel_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_proto.asl"
    gsl -q -quiet:1 demo_server_proto.asl || croak "\"gsl -q -quiet:1 demo_server_proto.asl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_config.opf"
    gsl -q -quiet:1 demo_server_config.opf || croak "\"gsl -q -quiet:1 demo_server_config.opf\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_method.icl"
    gsl -q -quiet:1 demo_server_method.icl || croak "\"gsl -q -quiet:1 demo_server_method.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_agent.smt"
    gsl -q -quiet:1 demo_server_agent.smt || croak "\"gsl -q -quiet:1 demo_server_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_classes.icl"
    gsl -q -quiet:1 demo_server_classes.icl || croak "\"gsl -q -quiet:1 demo_server_classes.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_connection.icl"
    gsl -q -quiet:1 demo_server_connection.icl || croak "\"gsl -q -quiet:1 demo_server_connection.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_connection_table.icl"
    gsl -q -quiet:1 demo_server_connection_table.icl || croak "\"gsl -q -quiet:1 demo_server_connection_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_connection_list.icl"
    gsl -q -quiet:1 demo_server_connection_list.icl || croak "\"gsl -q -quiet:1 demo_server_connection_list.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_channel.icl"
    gsl -q -quiet:1 demo_server_channel.icl || croak "\"gsl -q -quiet:1 demo_server_channel.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_channel_agent.smt"
    gsl -q -quiet:1 demo_server_channel_agent.smt || croak "\"gsl -q -quiet:1 demo_server_channel_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_channel_table.icl"
    gsl -q -quiet:1 demo_server_channel_table.icl || croak "\"gsl -q -quiet:1 demo_server_channel_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_broker.icl"
    gsl -q -quiet:1 demo_broker.icl || croak "\"gsl -q -quiet:1 demo_broker.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_broker_agent.smt"
    gsl -q -quiet:1 demo_broker_agent.smt || croak "\"gsl -q -quiet:1 demo_broker_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_exchange.icl"
    gsl -q -quiet:1 demo_exchange.icl || croak "\"gsl -q -quiet:1 demo_exchange.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_exchange_table.icl"
    gsl -q -quiet:1 demo_exchange_table.icl || croak "\"gsl -q -quiet:1 demo_exchange_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_exchange_agent.smt"
    gsl -q -quiet:1 demo_exchange_agent.smt || croak "\"gsl -q -quiet:1 demo_exchange_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_queue.icl"
    gsl -q -quiet:1 demo_queue.icl || croak "\"gsl -q -quiet:1 demo_queue.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_queue_table.icl"
    gsl -q -quiet:1 demo_queue_table.icl || croak "\"gsl -q -quiet:1 demo_queue_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_queue_list.icl"
    gsl -q -quiet:1 demo_queue_list.icl || croak "\"gsl -q -quiet:1 demo_queue_list.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_queue_agent.smt"
    gsl -q -quiet:1 demo_queue_agent.smt || croak "\"gsl -q -quiet:1 demo_queue_agent.smt\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_lease.icl"
    gsl -q -quiet:1 demo_lease.icl || croak "\"gsl -q -quiet:1 demo_lease.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_lease_table.icl"
    gsl -q -quiet:1 demo_lease_table.icl || croak "\"gsl -q -quiet:1 demo_lease_table.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_content_basic.icl"
    gsl -q -quiet:1 demo_content_basic.icl || croak "\"gsl -q -quiet:1 demo_content_basic.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_content_basic_list.icl"
    gsl -q -quiet:1 demo_content_basic_list.icl || croak "\"gsl -q -quiet:1 demo_content_basic_list.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_constants.icl"
    gsl -q -quiet:1 demo_constants.icl || croak "\"gsl -q -quiet:1 demo_constants.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "perl -S ipr_resource.pl -@ demo_srv_resource.rc"
    perl -S ipr_resource.pl -@ demo_srv_resource.rc || croak "\"perl -S ipr_resource.pl -@ demo_srv_resource.rc\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_client_config.icl"
    gsl -q -quiet:1 demo_client_config.icl || croak "\"gsl -q -quiet:1 demo_client_config.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_server_config.icl"
    gsl -q -quiet:1 demo_server_config.icl || croak "\"gsl -q -quiet:1 demo_server_config.icl\" failed"
    [ "$BOOM_TRACE" ] && echo "gsl -q -quiet:1 demo_srv_resource.icl"
    gsl -q -quiet:1 demo_srv_resource.icl || croak "\"gsl -q -quiet:1 demo_srv_resource.icl\" failed"
    PUSHDIR=`pwd`
    cd pal

        PATH=..:$PATH; export PATH
        gsl -q -quiet:1 -target:pal demo.asl
        gsl -q -quiet:1 demo_pal.xnf
      
    [ "$BOOM_TRACE" ] && echo "gurudoc palguide.txt"
    gurudoc palguide.txt || croak "\"gurudoc palguide.txt\" failed"
    cd $PUSHDIR
    echo "Source files successfully generated">stamp_generate
}

# -----------------------   REMOVE GENERATED BINARIES   -----------------------

a_remove_generated_binaries() {
:
    rm -f libasl.a
    rm -f demo_srv
    rm -f demo_cli
    rm -f asl_field_test_test.o
    rm -f asl_field_test_test
    rm -f asl_field.o
    rm -f asl_field_list_test_test.o
    rm -f asl_field_list_test_test
    rm -f asl_field_list.o
    rm -f demo_cli.o
    rm -f demo_cli
    rm -f demo_client_method_test_test.o
    rm -f demo_client_method_test_test
    rm -f demo_client_method.o
    rm -f demo_client_agent.o
    rm -f demo_client_config_test_test.o
    rm -f demo_client_config_test_test
    rm -f demo_client_config.o
    rm -f demo_client_classes.o
    rm -f demo_client_connection_test_test.o
    rm -f demo_client_connection_test_test
    rm -f demo_client_connection.o
    rm -f demo_client_session_test_test.o
    rm -f demo_client_session_test_test
    rm -f demo_client_session.o
    rm -f demo_client_channel_test_test.o
    rm -f demo_client_channel_test_test
    rm -f demo_client_channel.o
    rm -f demo_client_channel_table_test_test.o
    rm -f demo_client_channel_table_test_test
    rm -f demo_client_channel_table.o
    rm -f demo_srv.o
    rm -f demo_srv
    rm -f demo_server_config_test_test.o
    rm -f demo_server_config_test_test
    rm -f demo_server_config.o
    rm -f demo_server_method_test_test.o
    rm -f demo_server_method_test_test
    rm -f demo_server_method.o
    rm -f demo_server_agent.o
    rm -f demo_server_classes.o
    rm -f demo_server_connection_test_test.o
    rm -f demo_server_connection_test_test
    rm -f demo_server_connection.o
    rm -f demo_server_connection_table_test_test.o
    rm -f demo_server_connection_table_test_test
    rm -f demo_server_connection_table.o
    rm -f demo_server_connection_list_test_test.o
    rm -f demo_server_connection_list_test_test
    rm -f demo_server_connection_list.o
    rm -f demo_server_channel_test_test.o
    rm -f demo_server_channel_test_test
    rm -f demo_server_channel.o
    rm -f demo_server_channel_agent.o
    rm -f demo_server_channel_table_test_test.o
    rm -f demo_server_channel_table_test_test
    rm -f demo_server_channel_table.o
    rm -f demo_broker_test_test.o
    rm -f demo_broker_test_test
    rm -f demo_broker.o
    rm -f demo_broker_agent.o
    rm -f demo_exchange_test_test.o
    rm -f demo_exchange_test_test
    rm -f demo_exchange.o
    rm -f demo_exchange_table_test_test.o
    rm -f demo_exchange_table_test_test
    rm -f demo_exchange_table.o
    rm -f demo_exchange_agent.o
    rm -f demo_queue_test_test.o
    rm -f demo_queue_test_test
    rm -f demo_queue.o
    rm -f demo_queue_table_test_test.o
    rm -f demo_queue_table_test_test
    rm -f demo_queue_table.o
    rm -f demo_queue_list_test_test.o
    rm -f demo_queue_list_test_test
    rm -f demo_queue_list.o
    rm -f demo_queue_agent.o
    rm -f demo_lease_test_test.o
    rm -f demo_lease_test_test
    rm -f demo_lease.o
    rm -f demo_lease_table_test_test.o
    rm -f demo_lease_table_test_test
    rm -f demo_lease_table.o
    rm -f demo_content_basic_test_test.o
    rm -f demo_content_basic_test_test
    rm -f demo_content_basic.o
    rm -f demo_content_basic_list_test_test.o
    rm -f demo_content_basic_list_test_test
    rm -f demo_content_basic_list.o
    rm -f demo_constants.o
    rm -f demo_srv_resource_test_test.o
    rm -f demo_srv_resource_test_test
    rm -f demo_srv_resource.o
    rm -f asl_field_test.o
    rm -f asl_field_test
    rm -f asl_field.o
    rm -f asl_field_list_test.o
    rm -f asl_field_list_test
    rm -f asl_field_list.o
    rm -f demo_client_method_test.o
    rm -f demo_client_method_test
    rm -f demo_client_method.o
    rm -f demo_client_agent.o
    rm -f demo_client_config_test.o
    rm -f demo_client_config_test
    rm -f demo_client_config.o
    rm -f demo_client_classes.o
    rm -f demo_client_connection_test.o
    rm -f demo_client_connection_test
    rm -f demo_client_connection.o
    rm -f demo_client_session_test.o
    rm -f demo_client_session_test
    rm -f demo_client_session.o
    rm -f demo_client_channel_test.o
    rm -f demo_client_channel_test
    rm -f demo_client_channel.o
    rm -f demo_client_channel_table_test.o
    rm -f demo_client_channel_table_test
    rm -f demo_client_channel_table.o
    rm -f demo_server_config_test.o
    rm -f demo_server_config_test
    rm -f demo_server_config.o
    rm -f demo_server_method_test.o
    rm -f demo_server_method_test
    rm -f demo_server_method.o
    rm -f demo_server_agent.o
    rm -f demo_server_classes.o
    rm -f demo_server_connection_test.o
    rm -f demo_server_connection_test
    rm -f demo_server_connection.o
    rm -f demo_server_connection_table_test.o
    rm -f demo_server_connection_table_test
    rm -f demo_server_connection_table.o
    rm -f demo_server_connection_list_test.o
    rm -f demo_server_connection_list_test
    rm -f demo_server_connection_list.o
    rm -f demo_server_channel_test.o
    rm -f demo_server_channel_test
    rm -f demo_server_channel.o
    rm -f demo_server_channel_agent.o
    rm -f demo_server_channel_table_test.o
    rm -f demo_server_channel_table_test
    rm -f demo_server_channel_table.o
    rm -f demo_broker_test.o
    rm -f demo_broker_test
    rm -f demo_broker.o
    rm -f demo_broker_agent.o
    rm -f demo_exchange_test.o
    rm -f demo_exchange_test
    rm -f demo_exchange.o
    rm -f demo_exchange_table_test.o
    rm -f demo_exchange_table_test
    rm -f demo_exchange_table.o
    rm -f demo_exchange_agent.o
    rm -f demo_queue_test.o
    rm -f demo_queue_test
    rm -f demo_queue.o
    rm -f demo_queue_table_test.o
    rm -f demo_queue_table_test
    rm -f demo_queue_table.o
    rm -f demo_queue_list_test.o
    rm -f demo_queue_list_test
    rm -f demo_queue_list.o
    rm -f demo_queue_agent.o
    rm -f demo_lease_test.o
    rm -f demo_lease_test
    rm -f demo_lease.o
    rm -f demo_lease_table_test.o
    rm -f demo_lease_table_test
    rm -f demo_lease_table.o
    rm -f demo_content_basic_test.o
    rm -f demo_content_basic_test
    rm -f demo_content_basic.o
    rm -f demo_content_basic_list_test.o
    rm -f demo_content_basic_list_test
    rm -f demo_content_basic_list.o
    rm -f demo_constants.o
    rm -f demo_srv_resource_test.o
    rm -f demo_srv_resource_test
    rm -f demo_srv_resource.o
    rm -f pal/libasl.a
    PUSHDIR=`pwd`
    cd pal
    cd $PUSHDIR
}

# -----------------------   REMOVE GENERATED SOURCES   ------------------------

a_remove_generated_sources() {
:
    rm -f asl_gen.gsl
    rm -f asl_preproc.gsl
    rm -f asl_inherit.gsl
    rm -f asl_parse.gsl
    rm -f asl_doc.txt
    rm -f demo_client_method.icl
    rm -f demo_client_agent.smt
    rm -f demo_client_connection.icl
    rm -f demo_client_session.icl
    rm -f demo_client_channel_table.icl
    rm -f demo_server_method.icl
    rm -f demo_server_agent.smt
    rm -f demo_server_connection_table.icl
    rm -f demo_server_connection_list.icl
    rm -f demo_server_channel_agent.smt
    rm -f demo_server_channel_table.icl
    rm -f demo_broker_agent.smt
    rm -f demo_exchange_table.icl
    rm -f demo_exchange_agent.smt
    rm -f demo_queue_table.icl
    rm -f demo_queue_agent.smt
    rm -f demo_lease_table.icl
    rm -f demo_content_basic.icl
    rm -f demo_content_basic_list.icl
    rm -f demo_constants.icl
    rm -f asl_field_test.c
    rm -f asl_field.h
    rm -f asl_field.c
    rm -f asl_field_list_test.c
    rm -f asl_field_list.h
    rm -f asl_field_list.c
    rm -f demo_client_method_test.c
    rm -f demo_client_method.h
    rm -f demo_client_method.c
    rm -f demo_client_agent.h
    rm -f demo_client_agent.c
    rm -f demo_client_config.icl
    rm -f demo_client_config_test.c
    rm -f demo_client_config.h
    rm -f demo_client_config.c
    rm -f demo_client_config.txt
    rm -f demo_client_classes.h
    rm -f demo_client_classes.c
    rm -f demo_client_connection_test.c
    rm -f demo_client_connection.h
    rm -f demo_client_connection.c
    rm -f demo_client_session_test.c
    rm -f demo_client_session.h
    rm -f demo_client_session.c
    rm -f demo_client_channel_test.c
    rm -f demo_client_channel.h
    rm -f demo_client_channel.c
    rm -f demo_client_channel_table_test.c
    rm -f demo_client_channel_table.h
    rm -f demo_client_channel_table.c
    rm -f demo_server_config.icl
    rm -f demo_server_config_test.c
    rm -f demo_server_config.h
    rm -f demo_server_config.c
    rm -f demo_server_config.txt
    rm -f demo_server_method_test.c
    rm -f demo_server_method.h
    rm -f demo_server_method.c
    rm -f demo_server_agent.h
    rm -f demo_server_agent.c
    rm -f demo_server_classes.h
    rm -f demo_server_classes.c
    rm -f demo_server_connection_test.c
    rm -f demo_server_connection.h
    rm -f demo_server_connection.c
    rm -f demo_server_connection_table_test.c
    rm -f demo_server_connection_table.h
    rm -f demo_server_connection_table.c
    rm -f demo_server_connection_list_test.c
    rm -f demo_server_connection_list.h
    rm -f demo_server_connection_list.c
    rm -f demo_server_channel_test.c
    rm -f demo_server_channel.h
    rm -f demo_server_channel.c
    rm -f demo_server_channel_agent.h
    rm -f demo_server_channel_agent.c
    rm -f demo_server_channel_table_test.c
    rm -f demo_server_channel_table.h
    rm -f demo_server_channel_table.c
    rm -f demo_broker_test.c
    rm -f demo_broker.h
    rm -f demo_broker.c
    rm -f demo_broker_agent.h
    rm -f demo_broker_agent.c
    rm -f demo_exchange_test.c
    rm -f demo_exchange.h
    rm -f demo_exchange.c
    rm -f demo_exchange_table_test.c
    rm -f demo_exchange_table.h
    rm -f demo_exchange_table.c
    rm -f demo_exchange_agent.h
    rm -f demo_exchange_agent.c
    rm -f demo_queue_test.c
    rm -f demo_queue.h
    rm -f demo_queue.c
    rm -f demo_queue_table_test.c
    rm -f demo_queue_table.h
    rm -f demo_queue_table.c
    rm -f demo_queue_list_test.c
    rm -f demo_queue_list.h
    rm -f demo_queue_list.c
    rm -f demo_queue_agent.h
    rm -f demo_queue_agent.c
    rm -f demo_lease_test.c
    rm -f demo_lease.h
    rm -f demo_lease.c
    rm -f demo_lease_table_test.c
    rm -f demo_lease_table.h
    rm -f demo_lease_table.c
    rm -f demo_content_basic_test.c
    rm -f demo_content_basic.h
    rm -f demo_content_basic.c
    rm -f demo_content_basic_list_test.c
    rm -f demo_content_basic_list.h
    rm -f demo_content_basic_list.c
    rm -f demo_constants.h
    rm -f demo_constants.c
    rm -f demo_srv_resource.icl
    rm -f demo_srv_resource_test.c
    rm -f demo_srv_resource.h
    rm -f demo_srv_resource.c
    rm -f stamp_generate
    rm -f configure
    rm -f Makefile.unix
    rm -f configure.bat
    rm -f Makefile.win32
    rm -f pal/demo_pal.xnf
    rm -f pal/demo_pal_stdc.gsl
    rm -f pal/demo_pal_codegen.gsl
    rm -f pal/demo_pal_gen.gsl
    rm -f pal/demo_pal_inherit.gsl
    rm -f pal/demo_pal_parse.gsl
    rm -f pal/demo_pal_preproc.gsl
    rm -f pal/palguide.gdl
    rm -f pal/palguide*.html
    PUSHDIR=`pwd`
    cd pal
    cd $PUSHDIR
    rm -f ASL_*.zip
    rm -f ASL_*.tar.gz
}

# ------------------------   REPORT HELP INFORMATION   ------------------------

a_report_help_information() {
:
    echo "The commands you can currently use on this project are:"
    echo ""
    eval "actions_$state"
}

# ------------------------   REPORT PROJECT VERSION   -------------------------

a_report_project_version() {
:
    echo "ASL-1.2c0"
}

# -------------------------   RUN REGRESSION TESTS   --------------------------

a_run_regression_tests() {
:
    carp "Running regression tests..."
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./asl_field_test"
    else
        RUN_COMMAND="./asl_field_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./asl_field_list_test"
    else
        RUN_COMMAND="./asl_field_list_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_client_method_test"
    else
        RUN_COMMAND="./demo_client_method_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_client_config_test"
    else
        RUN_COMMAND="./demo_client_config_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_client_connection_test"
    else
        RUN_COMMAND="./demo_client_connection_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_client_session_test"
    else
        RUN_COMMAND="./demo_client_session_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_client_channel_test"
    else
        RUN_COMMAND="./demo_client_channel_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_client_channel_table_test"
    else
        RUN_COMMAND="./demo_client_channel_table_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_server_config_test"
    else
        RUN_COMMAND="./demo_server_config_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_server_method_test"
    else
        RUN_COMMAND="./demo_server_method_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_server_connection_test"
    else
        RUN_COMMAND="./demo_server_connection_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_server_connection_table_test"
    else
        RUN_COMMAND="./demo_server_connection_table_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_server_connection_list_test"
    else
        RUN_COMMAND="./demo_server_connection_list_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_server_channel_test"
    else
        RUN_COMMAND="./demo_server_channel_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_server_channel_table_test"
    else
        RUN_COMMAND="./demo_server_channel_table_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_broker_test"
    else
        RUN_COMMAND="./demo_broker_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_exchange_test"
    else
        RUN_COMMAND="./demo_exchange_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_exchange_table_test"
    else
        RUN_COMMAND="./demo_exchange_table_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_queue_test"
    else
        RUN_COMMAND="./demo_queue_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_queue_table_test"
    else
        RUN_COMMAND="./demo_queue_table_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_queue_list_test"
    else
        RUN_COMMAND="./demo_queue_list_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_lease_test"
    else
        RUN_COMMAND="./demo_lease_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_lease_table_test"
    else
        RUN_COMMAND="./demo_lease_table_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_content_basic_test"
    else
        RUN_COMMAND="./demo_content_basic_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_content_basic_list_test"
    else
        RUN_COMMAND="./demo_content_basic_list_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    if [ "$BOOM_TRACE" ]; then
        RUN_COMMAND="./demo_srv_resource_test"
    else
        RUN_COMMAND="./demo_srv_resource_test -q"
    fi
    [ "$BOOM_TRACE" ] && echo "$RUN_COMMAND"
    $RUN_COMMAND || croak "\"$RUN_COMMAND\" failed"
    PUSHDIR=`pwd`
    cd pal
    cd $PUSHDIR
    #   Run local selftest script if present
    if [ -f ./selftest ]; then
    [ "$BOOM_TRACE" ] && echo "sh ./selftest"
    sh ./selftest || croak "\"sh ./selftest\" failed"
    fi
}

# ----------------------   USE SOURCE CONTROL REVISION   ----------------------

a_use_source_control_revision() {
:
    if [ -d .svn ]; then
        SVN_REVISION="`svn info | awk '/^Revision:/ { print $2 }'`"
    else
        SVN_REVISION="svn"
    fi
    MY_VERSION=${MY_VERSION}-${SVN_REVISION}
}

actions_initial() {
    return
}

actions_initial_check() {
    return
}

actions_repository() {
echo "build:"
    echo "  From the raw project sources, produces all generated files, and"
    echo "    compiles all source files."
echo "compile:"
    echo "  From the raw project sources, compiles all source files without any"
    echo "    code generation."
echo "clean:"
    echo "  When working with the raw project sources, removes all generated"
    echo "    source and binary files from the project directory."
echo "regen:"
    echo "  Produces generated files required for building using the"
    echo "    current model."
echo "allgen:"
    echo "  Produces all generated files."
echo "distrib:"
    echo "  Creates a source distribution for the project.  Note that binary"
    echo "    distributions can only be created at the product level."
echo "distsrc:"
    echo "  Equivalent to distrib, provided for compatibility."
echo "distrev:"
    echo "  Creates a source distribution for the project.  Builds distribution"
    echo "    packages based on source control version number. Note that binary"
    echo "    distributions can only be created at the product level."
actions_default
    return
}

actions_source() {
echo "build:"
    echo "  From the packaged sources, compiles all source files without any"
    echo "    code generation."
echo "clean:"
    echo "  When working with the packaged sources, removes all generated"
    echo "    binary files from the project directory."
echo "regen:"
    echo "  Produces generated files required for building using the"
    echo "    current model."
echo "allgen:"
    echo "  Produces all generated files."
actions_default
    return
}

actions_stripped() {
echo "build:"
    echo "  From the stripped-down packaged sources, compiles all source files"
    echo "    without any code generation."
echo "clean:"
    echo "  When working with the packaged sources, removes all generated"
    echo "    binary files from the project directory."
actions_default
    return
}

actions_default() {
echo "install:"
    echo "  Installs deliverables into the final or temporary install tree."
    echo "    This action is only valid after a successful build."
echo "test:"
    echo "  Runs regression tests for the project."
echo "help:"
    echo "  Shows a list of the commands allowed on the project."
echo "version:"
    echo "  Show project version."
    return
}

#   State machine starts here
#
firsttime=true
while [ "$1" -o "$firsttime" ]; do
  firsttime=
  state=initial
  event=ok
  debug=
  export state event debug
  while [ -n "$state" ]; do
    if [ "$inherit_state" ]; then
        check_state=$inherit_state
        inherit_state=
    else
        check_state=$state
    fi
    case "$check_state" in
    initial)
        if [ -n "$debug" ]; then
            echo "State: initial"
        fi
        case "$event" in
        "")
            if [ -n "$debug" ]; then
                echo "Get event from user"
            fi
            if [ "$1" ]; then
                event=$1
                shift
            else
                event=empty
            fi
            continue
        ;;
        ok)
            if [ -n "$debug" ]; then
                echo "Event: ok"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: check operating context"
            fi
            if [ -z "$exception" ]; then
                a_check_operating_context
            fi
            state=initial_check
            if [ -n "$exception" ]; then
                continue
            fi
        ;;
        *)
            echo "Unknown command - use one of:"
            echo ""
            eval "actions_$state"
            exit 1
        ;;
        esac
    ;;
    initial_check)
        if [ -n "$debug" ]; then
            echo "State: initial check"
        fi
        case "$event" in
        "")
            if [ -n "$debug" ]; then
                echo "Get event from user"
            fi
            if [ "$1" ]; then
                event=$1
                shift
            else
                event=empty
            fi
            continue
        ;;
        repository)
            if [ -n "$debug" ]; then
                echo "Event: repository"
            fi
            event=
            exception=
            state=repository
            if [ -n "$exception" ]; then
                continue
            fi
        ;;
        source)
            if [ -n "$debug" ]; then
                echo "Event: source"
            fi
            event=
            exception=
            state=source
            if [ -n "$exception" ]; then
                continue
            fi
        ;;
        stripped)
            if [ -n "$debug" ]; then
                echo "Event: stripped"
            fi
            event=
            exception=
            state=stripped
            if [ -n "$exception" ]; then
                continue
            fi
        ;;
        *)
            echo "Unknown command - use one of:"
            echo ""
            eval "actions_$state"
            exit 1
        ;;
        esac
    ;;
    repository)
        if [ -n "$debug" ]; then
            echo "State: repository"
        fi
        case "$event" in
        "")
            if [ -n "$debug" ]; then
                echo "Get event from user"
            fi
            if [ "$1" ]; then
                event=$1
                shift
            else
                event=empty
            fi
            continue
        ;;
        build)
            if [ -n "$debug" ]; then
                echo "Event: build"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: check project files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_project_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: produce generated files"
            fi
            if [ -z "$exception" ]; then
                a_produce_generated_files
            fi
            if [ -n "$debug" ]; then
                echo "Action: check source files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_source_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: build binary files"
            fi
            if [ -z "$exception" ]; then
                a_build_binary_files
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        compile)
            if [ -n "$debug" ]; then
                echo "Event: compile"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: check source files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_source_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: build binary files"
            fi
            if [ -z "$exception" ]; then
                a_build_binary_files
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        clean)
            if [ -n "$debug" ]; then
                echo "Event: clean"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: remove generated sources"
            fi
            if [ -z "$exception" ]; then
                a_remove_generated_sources
            fi
            if [ -n "$debug" ]; then
                echo "Action: remove generated binaries"
            fi
            if [ -z "$exception" ]; then
                a_remove_generated_binaries
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        regen)
            if [ -n "$debug" ]; then
                echo "Event: regen"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: check project files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_project_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: produce generated files"
            fi
            if [ -z "$exception" ]; then
                a_produce_generated_files
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        allgen)
            if [ -n "$debug" ]; then
                echo "Event: allgen"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: check project files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_project_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: produce all generated files"
            fi
            if [ -z "$exception" ]; then
                a_produce_all_generated_files
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        distrib)
            if [ -n "$debug" ]; then
                echo "Event: distrib"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: produce all generated files"
            fi
            if [ -z "$exception" ]; then
                a_produce_all_generated_files
            fi
            if [ -n "$debug" ]; then
                echo "Action: check all source files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_all_source_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: build source packages"
            fi
            if [ -z "$exception" ]; then
                a_build_source_packages
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        distsrc)
            if [ -n "$debug" ]; then
                echo "Event: distsrc"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: produce all generated files"
            fi
            if [ -z "$exception" ]; then
                a_produce_all_generated_files
            fi
            if [ -n "$debug" ]; then
                echo "Action: check all source files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_all_source_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: build source packages"
            fi
            if [ -z "$exception" ]; then
                a_build_source_packages
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        distrev)
            if [ -n "$debug" ]; then
                echo "Event: distrev"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: produce all generated files"
            fi
            if [ -z "$exception" ]; then
                a_produce_all_generated_files
            fi
            if [ -n "$debug" ]; then
                echo "Action: check all source files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_all_source_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: use source control revision"
            fi
            if [ -z "$exception" ]; then
                a_use_source_control_revision
            fi
            if [ -n "$debug" ]; then
                echo "Action: build source packages"
            fi
            if [ -z "$exception" ]; then
                a_build_source_packages
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        *)
            inherit_state=default
        ;;
        esac
    ;;
    source)
        if [ -n "$debug" ]; then
            echo "State: source"
        fi
        case "$event" in
        "")
            if [ -n "$debug" ]; then
                echo "Get event from user"
            fi
            if [ "$1" ]; then
                event=$1
                shift
            else
                event=empty
            fi
            continue
        ;;
        build)
            if [ -n "$debug" ]; then
                echo "Event: build"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: check source files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_source_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: build binary files"
            fi
            if [ -z "$exception" ]; then
                a_build_binary_files
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        clean)
            if [ -n "$debug" ]; then
                echo "Event: clean"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: remove generated binaries"
            fi
            if [ -z "$exception" ]; then
                a_remove_generated_binaries
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        regen)
            if [ -n "$debug" ]; then
                echo "Event: regen"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: check project files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_project_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: produce generated files"
            fi
            if [ -z "$exception" ]; then
                a_produce_generated_files
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        allgen)
            if [ -n "$debug" ]; then
                echo "Event: allgen"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: check project files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_project_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: produce all generated files"
            fi
            if [ -z "$exception" ]; then
                a_produce_all_generated_files
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        *)
            inherit_state=default
        ;;
        esac
    ;;
    stripped)
        if [ -n "$debug" ]; then
            echo "State: stripped"
        fi
        case "$event" in
        "")
            if [ -n "$debug" ]; then
                echo "Get event from user"
            fi
            if [ "$1" ]; then
                event=$1
                shift
            else
                event=empty
            fi
            continue
        ;;
        build)
            if [ -n "$debug" ]; then
                echo "Event: build"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: build binary files"
            fi
            if [ -z "$exception" ]; then
                a_build_binary_files
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        clean)
            if [ -n "$debug" ]; then
                echo "Event: clean"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: remove generated binaries"
            fi
            if [ -z "$exception" ]; then
                a_remove_generated_binaries
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        *)
            inherit_state=default
        ;;
        esac
    ;;
    default)
        if [ -n "$debug" ]; then
            echo "State: default"
        fi
        case "$event" in
        "")
            if [ -n "$debug" ]; then
                echo "Get event from user"
            fi
            if [ "$1" ]; then
                event=$1
                shift
            else
                event=empty
            fi
            continue
        ;;
        install)
            if [ -n "$debug" ]; then
                echo "Event: install"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: check binary files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_binary_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: install deliverables"
            fi
            if [ -z "$exception" ]; then
                a_install_deliverables
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        test)
            if [ -n "$debug" ]; then
                echo "Event: test"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: check binary files exist"
            fi
            if [ -z "$exception" ]; then
                a_check_binary_files_exist
            fi
            if [ -n "$debug" ]; then
                echo "Action: run regression tests"
            fi
            if [ -z "$exception" ]; then
                a_run_regression_tests
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        help)
            if [ -n "$debug" ]; then
                echo "Event: help"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: report help information"
            fi
            if [ -z "$exception" ]; then
                a_report_help_information
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        version)
            if [ -n "$debug" ]; then
                echo "Event: version"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: report project version"
            fi
            if [ -z "$exception" ]; then
                a_report_project_version
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        empty)
            if [ -n "$debug" ]; then
                echo "Event: empty"
            fi
            event=
            exception=
            if [ -n "$debug" ]; then
                echo "Action: report help information"
            fi
            if [ -z "$exception" ]; then
                a_report_help_information
            fi
            if [ -n "$1" -a -z "$exception" ]; then
                continue 2
            fi
            state=
        ;;
        *)
            echo "Unknown command - use one of:"
            echo ""
            eval "actions_$state"
            exit 1
        ;;
        esac
    ;;
    esac
  done
done
