
CC       = gcc
CXX      = g++
CFLAGS   =  -g
CXXFLAGS =  -g
COB2C    = /usr/local/kobol/bin/cob2c  -g
COBMAKE  = /usr/local/kobol/bin/cobmake
INCPATH  =  -I/usr/local/kobol/include -I.tmp
LINK     = g++
LFLAGS   = 
LIBS     = -lcompsupp -lncurses -ldl -L/usr/local/kobol/plugins -lkoboldebug -ldl
AR       = ar cqs
MAKE     = make
MAKEFILE = Makefile
MKDIR    = mkdir -p
RM       = rm -rf

####### Output directory

OBJECTS_DIR = .tmp

####### Files

SOURCES = example.cob
HEADERS = .tmp/example.h
COB2CPP = .tmp/example.cc
OBJECTS = .tmp/example.o
STALIBS = 
SHALIBS = 
EXTLIBS = 
TARGET  = example

first: all

####### Implicit rules

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

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

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

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

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

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

####### Build rules

all: $(MAKEFILE) $(TARGET) $(EXTLIBS)

Makefile: /usr/local/kobol/example/debugger/debugger.kob
	$(COBMAKE) /usr/local/kobol/example/debugger/debugger.kob

$(TARGET): $(OBJECTS) $(COB2CPP) $(SHALIBS) $(STALIBS)
	$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS)  $(LIBS)

.tmp/example.cc: example.cob 
	$(MKDIR) .tmp
	$(COB2C) -M example.cob -D .tmp/


clean:
	$(RM) .tmp
	$(RM) *~ core *.core

distclean: clean
	$(RM) $(TARGET)

