#
# Makefile para compilar programas.

COB       := htcobol 
CCX       := gcc
RM        := rm -f
INSTALL   := install -m 755

COBFLAGS  := -c -F -T 8
CCXFLAGS  := -g -o 

COPYBOOKS := -I.
LIBS      := -lhtcobol 
BINDIR    := /usr/local/bin

SRC1      := cbl2cob.cob 
SRC2      := mfparser.cob
SRC3      := mbparser.cob

OBJ1      := $(SRC1:.cob=.o)
OBJ2      := $(SRC2:.cob=.o)
OBJ3      := $(SRC3:.cob=.o)

PROG1     := $(SRC1:.cob= )

OBJS1     := $(OBJ1) $(OBJ2) $(OBJ3)
OBJS      := $(OBJ1) $(OBJ2) $(OBJ3)
#OBJS1     := $(OBJ1) $(OBJ2) 
#OBJS      := $(OBJ1) $(OBJ2) 
PROGS     := $(PROG1) 

all: $(OBJS) $(PROGS)

$(PROG1): $(OBJS1)
	$(CCX) $(CCXFLAGS) $(PROG1) $(OBJS1) $(LIBS)

# Rules to compile COBOL programs to assembly object code.
%.o: %.cob
	$(COB) $(COBFLAGS) $<

# Rules to generate binary programs from object code.
%: %.o
	$(CCX) $(CCXFLAGS) $@ $< $(LIBS)

clean:
	$(RM) $(OBJS) $(PROGS) *.i *.s 

install:
	$(INSTALL) $(PROG1) $(BINDIR)
