CC = gcc

TARGETS = obj2bin bd bsplit bincmp
INSTDIR = /usr/local/bin

BCDDUMP = bd.o 
OBJ2CBN = obj2cbn.o 
OBJ2BIN = obj2bin.o parity.o
BCDSPLIT = bsplit.o 
BINCMP = bincmp.o 

all: 
	@if [ "`uname -s`" = "Linux" ] ; then \
		echo "Making Linux on a `uname -m`" ;\
		make $(TARGETS) "CFLAGS=-DLINUX $(DEBUG)" ;\
	elif [ "`uname -s`" = "AIX" ] ; then \
		echo "Making AIX" ;\
		make $(TARGETS) "CFLAGS=-DAIX $(DEBUG)" ;\
	elif [ "`uname -s`" = "HP-UX" ] ; then \
		echo "Making HP-UX" ;\
		make $(TARGETS) "CFLAGS=-DHPUX $(DEBUG)" ;\
	elif [ "`uname -s`" = "OS/390" ] ; then \
		echo "Making OS/390 USS" ;\
		make $(TARGETS) "CC=cc" "CFLAGS=-DUSS $(DEBUG)" ;\
	elif [ "`uname -s`" = "SunOS" ] ; then \
		echo "Making Solaris" ;\
		make $(TARGETS) "CFLAGS=-DSOLARIS $(DEBUG)" ;\
	else \
		echo "OS type `uname -s` is unknown" ;\
		echo "You must enter an OS type. OS types are:" ;\
		echo "   aix | decunix | hpux | linux | nt | openmvs | solaris" ;\
		echo " " ;\
	fi

aix:
	@make $(TARGETS) "CFLAGS = -DAIX $(DEBUG)"

hpux:
	@make $(TARGETS) "CFLAGS = -DHPUX $(DEBUG)"

linux:
	@make $(TARGETS) "CFLAGS = -DLINUX $(DEBUG)"

nt:
	@nmake/nologo -f makefile.nt

openmvs:
	@make $(TARGETS) "CFLAGS = -DUSS $(DEBUG)"

solaris:
	@make $(TARGETS) "CFLAGS = -DSOLARIS $(DEBUG)"


obj2bin: $(OBJ2BIN)
	$(CC) -o $@ $(OBJ2BIN)

obj2cbn: $(OBJ2CBN)
	$(CC) -o $@ $(OBJ2CBN)

bd: $(BCDDUMP)
	$(CC) -o $@ $(BCDDUMP)

bsplit: $(BCDSPLIT)
	$(CC) -o $@ $(BCDSPLIT)

bincmp: $(BINCMP)
	$(CC) -o $@ $(BINCMP)

clean:
	rm -f $(OBJ2CBN) obj2cbn
	rm -f $(OBJ2BIN) obj2bin
	rm -f $(BCDDUMP) bd
	rm -f $(BCDSPLIT) bsplit
	rm -f $(BINCMP) bincmp

obj2cbn.o: obj2cbn.c sysdef.h objdef.h
obj2bin.o: obj2bin.c sysdef.h objdef.h parity.h
parity.o: parity.c 
bd.o: bd.c nativebcd.h
bsplit.o: bsplit.c 
bincmp.o: bincmp.c sysdef.h
