####### Compiler, tools and options

include ./config.choice

install = ./install-sh -c
INSTALL = $(install) -m 0755
INSTALL_DATA = $(install) -m 0644
INSTALL_DIR = $(install) -d -m 0755
INSTALL_DIR_PRIVATE = $(install) -d -m 0700



####### Files

HEADERS =	
SOURCES =	main.cpp \
		dbwork.pc \
		kstring.cpp

OBJECTS =	main.o \
		dbwork.o \
		kstring.o
SRCMOC	=	
OBJMOC	=	
TARGET	=	koras

####### Implicit rules

.SUFFIXES: .cpp .cxx .cc .C .c .pc

.pc.o:
	$(PROC) CODE=CPP CPP_SUFFIX=cpp ERRORS=YES PARSE=none FIPS=NO LINES=YES SQLCHECK=SYNTAX INAME=$< ONAME=tmp_$*.cpp
	$(CC) -c $(CFLAGS) $(INCPATH) -o $@ tmp_$*.cpp
	@echo ------------------------------------------------------------------------
	@echo DON\'T WORRY ABOUT THE POTENTIAL ORACLE COMPILE WARNINGS. THE PRECOMPILER
	@echo ISN\'T ABLE TO PRODUCE CLEAN CODE
	@echo ------------------------------------------------------------------------

.cpp.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cxx.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cc.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.C.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.c.o:
	$(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<


####### Build rules

all: $(TARGET)

$(TARGET): $(OBJECTS) $(OBJMOC) 
	$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJMOC) $(LIBPATH) $(LIBS)

moc: $(SRCMOC)

install:
	$(INSTALL_DIR) $(INSTALLDIR)/bin
	$(INSTALL) $(TARGET) $(INSTALLDIR)/bin
	$(INSTALL_DATA) etc.koras /etc/koras
	

	

clean:
	-rm -f $(OBJECTS) $(OBJMOC) $(SRCMOC) $(TARGET) tmp_dbwork.cpp
	-rm -f *~ core

####### Compile

main.o: main.cpp \
		dbwork.h

dbwork.o: dbwork.pc \
		dbwork.h \
		kstring.h \
		kstrlist.h \
		klist.h

kstring.o: kstring.cpp \
		kstring.h
