mirror of
https://github.com/mangosfour/server.git
synced 2025-12-15 01:37:00 +00:00
(based on cipherCOM's repo commit d3d8934) Signed-off-by: VladimirMangos <vladimir@getmangos.com>
111 lines
2.5 KiB
Bash
Executable file
111 lines
2.5 KiB
Bash
Executable file
#! /bin/sh
|
|
# $Id: ace_components 80826 2008-03-04 14:51:23Z wotte $
|
|
#
|
|
# Encapsulates set/access of a components file, which records set of
|
|
# components that were built in a library. Intended to be used by
|
|
# GNUmakefiles and scripts. See ACE_wrappers/ace/GNUmakefile for an
|
|
# example.
|
|
#
|
|
usage="usage: $0 --ace | --orbsvcs | --tao | --pace \
|
|
[--remove | --set \" <components list> \"]"
|
|
|
|
####
|
|
#### Make sure that PACE_ROOT, ACE_ROOT, and TAO_ROOT are set.
|
|
####
|
|
if [ ! "$ACE_ROOT" ]; then
|
|
echo $0': your ACE_ROOT environment variable is not set!' 1>&2
|
|
exit -1
|
|
fi
|
|
if [ ! "$TAO_ROOT" ]; then
|
|
TAO_ROOT=$ACE_ROOT/TAO
|
|
export TAO_ROOT
|
|
fi
|
|
if [ ! "$PACE_ROOT" ]; then
|
|
PACE_ROOT=$ACE_ROOT/PACE
|
|
export PACE_ROOT
|
|
fi
|
|
|
|
####
|
|
#### Process command line arguments.
|
|
####
|
|
if [ $# -ge 1 ]; then
|
|
case $1 in
|
|
--ace) components_file=$ACE_ROOT/ace/ACE_COMPONENTS.list ;;
|
|
--orbsvcs)
|
|
components_file=$TAO_ROOT/orbsvcs/orbsvcs/ORBSVCS_COMPONENTS.list ;;
|
|
--tao) components_file=$TAO_ROOT/tao/TAO_COMPONENTS.list ;;
|
|
--pace) components_file=$PACE_ROOT/PACE_COMPONENTS.list ;;
|
|
*) echo $usage; exit -1 ;;
|
|
esac
|
|
shift
|
|
else
|
|
echo $usage
|
|
exit -1
|
|
fi
|
|
|
|
set_components=0
|
|
append_components=0
|
|
if [ $# -ge 1 ]; then
|
|
if [ $1 = '--set' ]; then
|
|
set_components=1
|
|
shift
|
|
if [ $# -eq 1 ]; then
|
|
components=$1
|
|
shift
|
|
else
|
|
echo $usage
|
|
exit -1
|
|
fi
|
|
elif [ $1 = '--append' ]; then
|
|
append_components=1
|
|
shift
|
|
if [ $# -eq 1 ]; then
|
|
components=$1
|
|
shift
|
|
else
|
|
echo $usage
|
|
exit -1
|
|
fi
|
|
elif [ $1 = '--remove' ]; then
|
|
rm -f $components_file
|
|
else
|
|
echo $usage
|
|
exit -1
|
|
fi
|
|
fi
|
|
|
|
if [ $set_components -eq 1 ]; then
|
|
####
|
|
#### Update the components file, if it has changed since last set.
|
|
####
|
|
if [ -f $components_file ]; then
|
|
if echo "$components" | diff - $components_file > /dev/null; then
|
|
:
|
|
else
|
|
echo "$components" > $components_file
|
|
fi
|
|
else
|
|
echo "$components" > $components_file
|
|
fi
|
|
elif [ $append_components -eq 1 ]; then
|
|
####
|
|
#### Update the components file, if it has changed since last set.
|
|
####
|
|
if [ -f $components_file ]; then
|
|
if cat $components_file | grep "$components" > /dev/null; then
|
|
:
|
|
else
|
|
(cat $components_file; echo "$components") | tr ' ' '\012' | sort -u > $components_file.$$
|
|
mv -f $components_file.$$ $components_file
|
|
fi
|
|
else
|
|
echo "$components" > $components_file
|
|
fi
|
|
else
|
|
####
|
|
#### Access the contents of the components file, if it exists.
|
|
####
|
|
if [ -f $components_file ]; then
|
|
cat $components_file
|
|
fi
|
|
fi
|