# # SCCS: @(#)tetconfig 1.9 (98/08/28) # # UniSoft Ltd., London, England # # (C) Copyright 1993 X/Open Company Limited # (C) Copyright 1994 UniSoft Ltd. # # All rights reserved. No part of this source code may be reproduced, # stored in a retrieval system, or transmitted, in any form or by any # means, electronic, mechanical, photocopying, recording or otherwise, # except as stated in the end-user licence agreement, without the prior # permission of the copyright owners. # # X/Open and the 'X' symbol are trademarks of X/Open Company Limited in # the UK and other countries. # # # ************************************************************************ # # SCCS: @(#)tetconfig 1.9 98/08/28 TETware release 3.3 # NAME: tetconfig # PRODUCT: TETware # AUTHOR: Denis McConalogue, UniSoft Ltd. # DATE CREATED: September 1993 # # DESCRIPTION: # TETware configuration script # # MODIFICATIONS: # # Denis McConalogue, UniSoft Limited, December 1993 # added support for fifolib # # Geoff Clare, UniSoft Ltd., July 1996 # Changes for TETWare. # # Geoff Clare, UniSoft Ltd., Sept 1996 # Changes for TETWare-Lite and Windows NT. # Moved from src/tet3/dtetcfg to src/tetconfig. # Added check for defines.mk file. # # Andrew Dingwall, UniSoft Ltd., August 1998 # Added support for shared libraries. # Removed fixup of tet3/common.mk. # # ************************************************************************ USAGE="Usage:${0} [-t transport]" FIX=" To fix: specify \"-t xti\", \"-t inet\", or \"-t lite\"" PROMPT="Enter one of xti, inet, lite, or type 'q' to exit" alldirs=". apithr apishlib apithrshlib tcc tcm" distdirs="syncd tccd xresd" # doconfig - configure tet3/*/ts.mk for selected transport doconfig() { cd tet3 || exit 1 tplib=${1:?} for i in $alldirs do do1config $tplib $i done if test $tplib != lite then for i in $distdirs do do1config $tplib $i done fi cd .. return 0 } # do1config - extend the doconfig processing for a single subdirectory do1config() { name=${1:?} dir=${2:?} rm -f $dir/ts.mk cp $dir/${name}lib.mk $dir/ts.mk } # index - return 0 if $1 is in the set $2 ... # otherwise return 1 index(){ X=${1:?} shift for Y in $* do if test "$X" = "$Y" then return 0 fi done return 1 } while : do case "$1" in -t) shift TPLIB=${1:?"-t parameter not set"} shift ;; "") break ;; *) echo "$USAGE" 1>&2 echo "$FIX" 1>&2 exit 2 esac done if test "$TPLIB" != "" && index ${TPLIB} inet xti lite then doconfig ${TPLIB} else echo "$PROMPT" while read TPLIB do case $TPLIB in inet|xti|lite) doconfig $TPLIB break ;; q|Q) exit 1 ;; *) echo "$PROMPT" ;; esac done fi case $TPLIB in lite) echo "TETware-Lite configuration completed" ;; *) echo "TETware configuration for $TPLIB transport completed" ;; esac if test ! -f defines.mk then echo " You need to create a defines.mk file before running make" fi exit 0