####BEGIN_OS_CONF
#cat .simplemake//Makefile.os/Linux.flex
LEXFLAGS=$(LEXFLAG)
LEX=flex $(LEXFLAGS)
LEXLIB=-lfl
#cat .simplemake//Makefile.os/Linux.gcc
OS=Linux
OSTEXT="Using OS $(OS)"
NETFLAGS=$(NETFLAG)
GENNET=GenNet $(NETFLAGS)
YACCFLAGS=$(YACCFLAG) -y -d -v
YACC=bison $(YACCFLAGS) 
CC=gcc
CFLAGS=-D$(OS) -DLINUX -DGCC $(CFLAG)
CXX=g++
SHL_LIBS=$(LEXLIB) $(SHL_LIB)
LIBS=$(LEXLIB) $(LIB)
INCLUDE=-I. $(INCL)
AR=ar -r
SL=ld -x -shared -o
####END_OS_CONF
#######################################################
include .simplemake/Makefile.ver
include Makefile.def
#######################################################

#######################################################

all: 
	@DIRS=`ls */Makefile 2>/dev/null | sed -e s%/.*%%`;for d in $$DIRS; do cd $$d; make all; cd ..; done
	make allthis
	@echo $(OSTEXT)
	@echo DONE

allthis: targets

nodebug: strip

production: strip

strip: all
	@DIRS=`ls */Makefile 2>/dev/null | sed -e s%/.*%%`;for d in $$DIRS; do cd $$d; make strip;cd ..; done
	@.simplemake/striptargets $(TARGETS)
	@echo DONE

install: strip debug_install

debug_install: all
	@DIRS=`ls */Makefile 2>/dev/null | sed -e s%/.*%%`;for d in $$DIRS; do cd $$d; make install; cd ..; done
	make install_all



clean: 
	@DIRS=`ls */Makefile 2>/dev/null | sed -e s%/.*%%`;for d in $$DIRS; do cd $$d; make clean; cd ..; done
	make CLEANALL=0 clean_all

cleanall:
	@DIRS=`ls */Makefile 2>/dev/null | sed -e s%/.*%%`;for d in $$DIRS; do cd $$d; make clean; cd ..; done
	make CLEANALL=1 clean_all
	

makefile: bootstrap depend

makefiles:
	@DIRS=`ls */Makefile 2>/dev/null | sed -e s%/.*%%`;for d in $$DIRS; do cd $$d;make makefiles;cd ..; done
	@make makefile

newMakefiles:
	@DIRS=`ls */Makefile 2>/dev/null | sed -e s%/.*%%`;for d in $$DIRS; do cd $$d;newMakefile;make newMakefiles;cd ..; done
	

depend:
	@TARGETS="$(TARGETS)";export TARGETS; \
	NOCLEANT="$(NOCLEANTARGETS)";export NOCLEANT; \
	.simplemake/maketargets

dep:
	@SRC="$(SRC)";export SRC;\
	TARGET="$(TARGET)";export TARGET;\
	CPP="$(CPP)";export CPP; \
	CLEANFILE="$(CLEANFILE)";export CLEANFILE; \
	.simplemake/makedep $(DEPFILE)

bootstrap:
	@.simplemake/makebootstrap

srcdistZ:
	@make srcdist GZ="Z"

doc: $(DOCS)
	@doc $(DOCS)

####ADDBYMAKEDEP

targets: 

clean_all:
	@echo "cleaning up..."
	@echo "done."

install_all: targets
	@echo "installing binaries to INSTALLDIR=$(INSTALLDIR)" 
	@INSTALLDIR=$(INSTALLDIR);export INSTALLDIR;\
	CHMOD=555;export CHMOD; \
	INSTALLTYPE="BIN";export INSTALLTYPE;\
	INSTALLEXE=$(INSTALLEXE);export INSTALLEXE;\
	.simplemake/makeinstall  $(INSTALLEXTRA)
	@echo "installing libraries to INSTALLLIB=$(INSTALLLIB)" 
	@INSTALLDIR=$(INSTALLLIB);export INSTALLDIR;\
	INSTALLTYPE="LIB";export INSTALLTYPE;\
	CHMOD=555;export CHMOD; \
	INSTALLEXE=$(INSTALLEXE);export INSTALLEXE;\
	.simplemake/makeinstall 
	@echo "installing headers to INSTALLHDR=$(INSTALLHDR)" 
	@INSTALLDIR=$(INSTALLHDR);export INSTALLDIR;\
	INSTALLTYPE="HDR";export INSTALLTYPE;\
	CHMOD=444;export CHMOD; \
	INSTALLEXE=$(INSTALLEXE);export INSTALLEXE;\
	.simplemake/makeinstall 

gzip: clean
	@echo "gzip -r..."
	@gzip -r .
	@echo "gunzip Makefile.gz Makefile.def.gz"; \
	gunzip Makefile.gz Makefile.def.gz
	@echo "done."

gunzip:
	@echo "gunzip -r..."
	@gunzip -r .
	@echo "done."

srcdist: clean
	@echo "Making source distribution for $(TAR) $(TAR_ALIASES)"
	@.simplemake/makesrcdist $(TAR) $(TAR_ALIASES)

newversion: clean
	@.simplemake/makever $(TAR)
