####BEGIN_OS_CONF
#cat .simplemake//Makefile.os/HPUX.flex
LEXFLAGS=$(LEXFLAG)
LEX=flex $(LEXFLAGS)
LEXLIB=-lfl
#cat .simplemake//Makefile.os/HPUX.gcc
OS=HPUX
OSTEXT="Using OS $(OS)"
NETFLAGS=$(NETFLAG)
GENNET=GenNet $(NETFLAGS)
YACCFLAGS=$(YACCFLAG) -v -d
YACC=yacc $(YACCFLAGS)
CFLAGS=-D$(OS) -DGCC $(CFLAG)
SHL_LIBS=$(LEXLIB) $(SHL_LIB)
LIBS=$(LEXLIB) $(LIB)
INCLUDE=-I. $(INCL)
CC=gcc
CXX=g++
AR=ar -r
SL=ld -b -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

hstring.o: hstring.cxx  harray.hxx hdate.hxx herror.hxx hini.hxx hlog.hxx hmmap.hxx hregex.hxx hstring.hxx strext.hxx vc6.hxx y2k.hxx
	$(CXX) -c $(INCLUDE) $(CFLAGS) hstring.cxx

strext.o: strext.cxx  harray.hxx hdate.hxx herror.hxx hini.hxx hlog.hxx hmmap.hxx hregex.hxx hstring.hxx strext.hxx vc6.hxx y2k.hxx
	$(CXX) -c $(INCLUDE) $(CFLAGS) strext.cxx

herror.o: herror.cxx  harray.hxx hdate.hxx herror.hxx hini.hxx hlog.hxx hmmap.hxx hregex.hxx hstring.hxx strext.hxx vc6.hxx y2k.hxx
	$(CXX) -c $(INCLUDE) $(CFLAGS) herror.cxx

hini.o: hini.cxx  harray.hxx hdate.hxx herror.hxx hini.hxx hlog.hxx hmmap.hxx hregex.hxx hstring.hxx strext.hxx vc6.hxx y2k.hxx
	$(CXX) -c $(INCLUDE) $(CFLAGS) hini.cxx

hregex.o: hregex.cxx  harray.hxx hdate.hxx herror.hxx hini.hxx hlog.hxx hmmap.hxx hregex.hxx hstring.hxx strext.hxx vc6.hxx y2k.hxx
	$(CXX) -c $(INCLUDE) $(CFLAGS) hregex.cxx


hlog.o: hlog.cxx  harray.hxx hdate.hxx herror.hxx hini.hxx hlog.hxx hmmap.hxx hregex.hxx hstring.hxx strext.hxx vc6.hxx y2k.hxx
	$(CXX) -c $(INCLUDE) $(CFLAGS) hlog.cxx

y2k.o: y2k.cxx  harray.hxx hdate.hxx herror.hxx hini.hxx hlog.hxx hmmap.hxx hregex.hxx hstring.hxx strext.hxx vc6.hxx y2k.hxx
	$(CXX) -c $(INCLUDE) $(CFLAGS) y2k.cxx

hdate.o: hdate.cxx  harray.hxx hdate.hxx herror.hxx hini.hxx hlog.hxx hmmap.hxx hregex.hxx hstring.hxx strext.hxx vc6.hxx y2k.hxx
	$(CXX) -c $(INCLUDE) $(CFLAGS) hdate.cxx

hmmap.o: hmmap.cxx  harray.hxx hdate.hxx herror.hxx hini.hxx hlog.hxx hmmap.hxx hregex.hxx hstring.hxx strext.hxx vc6.hxx y2k.hxx
	$(CXX) -c $(INCLUDE) $(CFLAGS) hmmap.cxx

libeasy.a:  hstring.o strext.o herror.o hini.o hregex.o regex-0.12/regex.o hlog.o y2k.o hdate.o hmmap.o
	$(AR) libeasy.a  hstring.o strext.o herror.o hini.o hregex.o regex-0.12/regex.o hlog.o y2k.o hdate.o hmmap.o

tst_hstring.o: tst_hstring.cxx  harray.hxx herror.hxx hmmap.hxx hregex.hxx hstring.hxx strext.hxx vc6.hxx
	$(CXX) -c $(INCLUDE) $(CFLAGS) tst_hstring.cxx


tsthstring:  tst_hstring.o hstring.o herror.o hmmap.o strext.o hregex.o regex-0.12/regex.o
	$(CXX) -o tsthstring $(LDFLAGS)  tst_hstring.o hstring.o herror.o hmmap.o strext.o hregex.o regex-0.12/regex.o $(LIBS)

hini2sh.o: hini2sh.cxx  harray.hxx herror.hxx hini.hxx hmmap.hxx hregex.hxx hstring.hxx strext.hxx vc6.hxx
	$(CXX) -c $(INCLUDE) $(CFLAGS) hini2sh.cxx


hini2sh:  hini2sh.o hini.o strext.o hregex.o regex-0.12/regex.o herror.o hstring.o hmmap.o
	$(CXX) -o hini2sh $(LDFLAGS)  hini2sh.o hini.o strext.o hregex.o regex-0.12/regex.o herror.o hstring.o hmmap.o $(LIBS)

targets:  libeasy.a tsthstring hini2sh

clean_all:
	@echo "cleaning up..."
	@rm -f libeasy.a
	@rm -f hstring.o
	@rm -f strext.o
	@rm -f herror.o
	@rm -f hini.o
	@rm -f hregex.o
	@rm -f regex-0.12/regex.o
	@rm -f hlog.o
	@rm -f y2k.o
	@rm -f hdate.o
	@rm -f hmmap.o
	@rm -f tsthstring
	@rm -f tst_hstring.o
	@rm -f hstring.o
	@rm -f herror.o
	@rm -f hmmap.o
	@rm -f strext.o
	@rm -f hregex.o
	@rm -f regex-0.12/regex.o
	@rm -f hini2sh
	@rm -f hini2sh.o
	@rm -f hini.o
	@rm -f strext.o
	@rm -f hregex.o
	@rm -f regex-0.12/regex.o
	@rm -f herror.o
	@rm -f hstring.o
	@rm -f hmmap.o
	@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  tsthstring hini2sh $(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  libeasy.a
	@echo "installing headers to INSTALLHDR=$(INSTALLHDR)" 
	@INSTALLDIR=$(INSTALLHDR);export INSTALLDIR;\
	INSTALLTYPE="HDR";export INSTALLTYPE;\
	CHMOD=444;export CHMOD; \
	INSTALLEXE=$(INSTALLEXE);export INSTALLEXE;\
	.simplemake/makeinstall  hini.hxx strext.hxx hregex.hxx herror.hxx hstring.hxx hmmap.hxx hstring.hxx herror.hxx hmmap.hxx strext.hxx hregex.hxx hstring.hxx strext.hxx harray.hxx herror.hxx hini.hxx hregex.hxx hlog.hxx y2k.hxx hdate.hxx vc6.hxx hmmap.hxx

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)
