# system Algorithms
SYSTEM = Algorithms
SYS_LDFLAGS = $(VAR_LDFLAGS) 
SYS_LDLIBS =  -lMapLike -lSetLike -lSeqLike -lUnionLike -lProductLike -lGeneral -lBasicTypes -lStrange -lCompiler $(VAR_LDLIBS)
SYS_LDLIBPATH =  -L../../AggregateTypes/MapLike/OCS -L../../AggregateTypes/SetLike/OCS -L../../AggregateTypes/SeqLike/OCS -L../../AggregateTypes/UnionLike/OCS -L../../AggregateTypes/ProductLike/OCS -L../../Functions/General/OCS -L../../BasicTypes/OCS -L../../Internal/Strange/OCS -L../../Internal/Compiler/OCS $(VAR_LDLIBPATH)
SYS_LDLIBDEPS =  ../../AggregateTypes/MapLike/OCS/libMapLike.a ../../AggregateTypes/SetLike/OCS/libSetLike.a ../../AggregateTypes/SeqLike/OCS/libSeqLike.a ../../AggregateTypes/UnionLike/OCS/libUnionLike.a ../../AggregateTypes/ProductLike/OCS/libProductLike.a ../../Functions/General/OCS/libGeneral.a ../../BasicTypes/OCS/libBasicTypes.a ../../Internal/Strange/OCS/libStrange.a ../../Internal/Compiler/OCS/libCompiler.a $(VAR_LDLIBDEPS)
SYS_OC1FLAGS = $(VAR_OC1FLAGS)  -v1
SYS_OC2FLAGS = $(VAR_OC2FLAGS)  -v1
SYS_CCFLAGS = $(VAR_CCFLAGS)  $(VERB_CC)
GENSTRUCTS =  SetTopSort MaxStrongComp
SIGNS =  SetTopSort.sign MaxStrongComp.sign
IMPLS =  SetTopSort.impl MaxStrongComp.impl
EXPS =  OCS/SetTopSort.sign.inter OCS/MaxStrongComp.sign.inter
ANAS =  OCS/SetTopSort.impl.inter OCS/MaxStrongComp.impl.inter
OPTS =  OCS/SetTopSort.opt OCS/MaxStrongComp.opt
CS =  OCS/SetTopSort.c OCS/MaxStrongComp.c
OS =  OCS/SetTopSort.o OCS/MaxStrongComp.o
ESYSTEMS =  ../../Internal/Compiler ../../Internal/Strange ../../BasicTypes ../../Functions/General ../../AggregateTypes/ProductLike ../../AggregateTypes/UnionLike ../../AggregateTypes/SeqLike ../../AggregateTypes/SetLike ../../AggregateTypes/MapLike
FSYSTEMS = 
SIGNDEPS =  OCS/SetTopSort.sign.deps OCS/MaxStrongComp.sign.deps
IMPLDEPS =  OCS/SetTopSort.impl.deps OCS/MaxStrongComp.impl.deps
OCS/SetTopSort.sign.inter: SetTopSort.sign ../../AggregateTypes/SeqLike/OCS/Seq.sign.inter ../../AggregateTypes/SetLike/OCS/Set.sign.inter
	@$(ECHO) "Checking Signature of SetTopSort ..." && $(OC1) $(OC1FLAGS) $(SYS_OC1FLAGS) -s  -h. SetTopSort  -h../../AggregateTypes/SeqLike -r  Seq -h../../AggregateTypes/SetLike -r  Set $(OCSYSPARAM)
	@if [ -n "$(PROJECTROOT)" ] ; then $(ECHO) "Marking SetTopSort for documentation ..." &&  $(ECHO) SetTopSort >> $(PROJECTROOT)/DOSFOP/only ; fi
OCS/SetTopSort.impl.inter : SetTopSort.impl OCS/SetTopSort.sign.inter ../../BasicTypes/OCS/Nat.sign.inter ../../BasicTypes/OCS/Int.sign.inter ../../AggregateTypes/MapLike/OCS/ArrayReduce.sign.inter ../../AggregateTypes/MapLike/OCS/Array.sign.inter ../../AggregateTypes/MapLike/OCS/MapByBSTReduce.sign.inter ../../AggregateTypes/MapLike/OCS/MapByBST.sign.inter ../../AggregateTypes/ProductLike/OCS/Pair.sign.inter ../../AggregateTypes/SeqLike/OCS/SeqReduce.sign.inter ../../AggregateTypes/SeqLike/OCS/Seq.sign.inter ../../AggregateTypes/SetLike/OCS/SetConv.sign.inter ../../AggregateTypes/SetLike/OCS/SetReduce.sign.inter ../../AggregateTypes/SetLike/OCS/Set.sign.inter
	@$(ECHO) "Checking Implementation of SetTopSort ..." && $(OC1) $(OC1FLAGS) $(SYS_OC1FLAGS) -i  -h. SetTopSort  -h../../BasicTypes -r  Nat Int -h../../AggregateTypes/MapLike -r  ArrayReduce Array MapByBSTReduce MapByBST -h../../AggregateTypes/ProductLike -r  Pair -h../../AggregateTypes/SeqLike -r  SeqReduce Seq -h../../AggregateTypes/SetLike -r  SetConv SetReduce Set $(OCSYSPARAM)
	@if [ $(PROJECTROOT) ] ; then $(ECHO) "Marking SetTopSort for documentation ..." &&  $(ECHO) SetTopSort >> $(PROJECTROOT)/DOSFOP/only ; fi
OCS/SetTopSort.c OCS/SetTopSort.opt: OCS/SetTopSort.impl.inter
	@if [ "$@" = "OCS/SetTopSort.c" ] ; then $(ECHO) "Generating C Code for SetTopSort ..." && $(OC2) $(OC2FLAGS) $(SYS_OC2FLAGS) -zgForeignInterface  -h. SetTopSort  -h../../BasicTypes -r  Nat Int -h../../AggregateTypes/MapLike -r  ArrayReduce Array MapByBSTReduce MapByBST -h../../AggregateTypes/ProductLike -r  Pair -h../../AggregateTypes/SeqLike -r  SeqReduce Seq -h../../AggregateTypes/SetLike -r  SetConv SetReduce Set $(OCSYSPARAM); fi
	@if [ -n "$(PROJECTROOT)" ] ; then $(ECHO) "Marking SetTopSort for documentation ..." &&  $(ECHO) SetTopSort >> $(PROJECTROOT)/DOSFOP/only ; fi
OCS/SetTopSort.o: OCS/SetTopSort.c 
	@$(ECHO) "Generating $(ARCH) object code for SetTopSort ..." && $(CC) $(CCFLAGS) $(SYS_CCFLAGS) -c OCS/SetTopSort.c -o OCS/SetTopSort.o
OCS/MaxStrongComp.sign.inter: MaxStrongComp.sign ../../AggregateTypes/MapLike/OCS/Map.sign.inter ../../AggregateTypes/SeqLike/OCS/Seq.sign.inter ../../AggregateTypes/SeqLike/OCS/Seq.sign.inter ../../AggregateTypes/SetLike/OCS/Set.sign.inter
	@$(ECHO) "Checking Signature of MaxStrongComp ..." && $(OC1) $(OC1FLAGS) $(SYS_OC1FLAGS) -s  -h. MaxStrongComp  -h../../AggregateTypes/MapLike -r  Map -h../../AggregateTypes/SeqLike -r  Seq Seq -h../../AggregateTypes/SetLike -r  Set $(OCSYSPARAM)
	@if [ -n "$(PROJECTROOT)" ] ; then $(ECHO) "Marking MaxStrongComp for documentation ..." &&  $(ECHO) MaxStrongComp >> $(PROJECTROOT)/DOSFOP/only ; fi
OCS/MaxStrongComp.impl.inter : MaxStrongComp.impl OCS/MaxStrongComp.sign.inter ../../AggregateTypes/MapLike/OCS/Map.sign.inter ../../AggregateTypes/SeqLike/OCS/SeqReduce.sign.inter ../../AggregateTypes/SeqLike/OCS/SeqOfSeq.sign.inter ../../AggregateTypes/SeqLike/OCS/Seq.sign.inter ../../AggregateTypes/SetLike/OCS/SetReduce.sign.inter ../../AggregateTypes/SetLike/OCS/Set.sign.inter ../../AggregateTypes/UnionLike/OCS/Option.sign.inter
	@$(ECHO) "Checking Implementation of MaxStrongComp ..." && $(OC1) $(OC1FLAGS) $(SYS_OC1FLAGS) -i  -h. MaxStrongComp  -h../../AggregateTypes/MapLike -r  Map -h../../AggregateTypes/SeqLike -r  SeqReduce SeqOfSeq Seq -h../../AggregateTypes/SetLike -r  SetReduce Set -h../../AggregateTypes/UnionLike -r  Option $(OCSYSPARAM)
	@if [ $(PROJECTROOT) ] ; then $(ECHO) "Marking MaxStrongComp for documentation ..." &&  $(ECHO) MaxStrongComp >> $(PROJECTROOT)/DOSFOP/only ; fi
OCS/MaxStrongComp.c OCS/MaxStrongComp.opt: OCS/MaxStrongComp.impl.inter
	@if [ "$@" = "OCS/MaxStrongComp.c" ] ; then $(ECHO) "Generating C Code for MaxStrongComp ..." && $(OC2) $(OC2FLAGS) $(SYS_OC2FLAGS) -zgForeignInterface  -h. MaxStrongComp  -h../../AggregateTypes/MapLike -r  Map -h../../AggregateTypes/SeqLike -r  SeqReduce SeqOfSeq Seq -h../../AggregateTypes/SetLike -r  SetReduce Set -h../../AggregateTypes/UnionLike -r  Option $(OCSYSPARAM); fi
	@if [ -n "$(PROJECTROOT)" ] ; then $(ECHO) "Marking MaxStrongComp for documentation ..." &&  $(ECHO) MaxStrongComp >> $(PROJECTROOT)/DOSFOP/only ; fi
OCS/MaxStrongComp.o: OCS/MaxStrongComp.c 
	@$(ECHO) "Generating $(ARCH) object code for MaxStrongComp ..." && $(CC) $(CCFLAGS) $(SYS_CCFLAGS) -c OCS/MaxStrongComp.c -o OCS/MaxStrongComp.o
