# Makefile for chart

# Uncomment your operating system

OS	= Linux
# OS	= MSDOS

CC	= gcc
OPTS	= -s -O3
OBJS	= chart.o uxcrt.o pcxutil.o
SRCS	= chart.c uxcrt.c pcxutil.c

ifeq ($(OS),Linux)
  CHART		= chart
  XCHART	= xchart
  PCX2PS	= pcx2ps
  LIBS		= -lbcc2 -lgrx20 -lvga -lm
  XLIBS		= -L/usr/X11/lib -lX11 -lbcc2 -lgrx20X -lm
  DESTDIR	= /usr/local/bin
  MANDIR	= /usr/local/man/man1
  MAN1		= chart.1.gz
  MAN2		= pcx2ps.1.gz
  MAN3		= xchart.1.gz
else
  CHART		= chart.exe
  XCHART	=
  PCX2PS	= pcx2ps.exe
  LIBS		= -lbcc2 -lgrx20 -lm
  DESTDIR	= .
  MANDIR	= .
  MAN1		= chart.txt
  MAN2		= pcx2ps.txt
  MAN3		= chart.txt
endif

all: $(CHART) $(XCHART) $(PCX2PS)

$(CHART): $(OBJS)
	$(CC) $(OPTS) -o $(CHART) $(OBJS) $(LIBS)

$(XCHART): $(OBJS)
	$(CC) $(OPTS) -o $(XCHART) $(OBJS) $(XLIBS)

#$(OBJS): chart.c uxcrt.c pcxutil.c
#	$(CC) $(OPTS) -c chart.c uxcrt.c pcxutil.c

chart.o: chart.c
	$(CC) -c chart.c

uxcrt.o: uxcrt.c
	$(CC) -c uxcrt.c

pcxutil.o: pcxutil.c
	$(CC) -c pcxutil.c

$(PCX2PS): pcx2ps.o vpcxutil.o vscrn.o
	$(CC) $(OPTS) -o $(PCX2PS) pcx2ps.o vpcxutil.o vscrn.o -lm

pcx2ps.o: pcx2ps.c
	$(CC) -c pcx2ps.c

vscrn.o: vscrn.c
	$(CC) -c vscrn.c

vpcxutil.o: vpcxutil.c
	$(CC) -c vpcxutil.c


ifeq ($(OS),Linux)
install:
	chown root.root $(CHART) ; chmod +s $(CHART) ; \
	mv $(CHART) $(XCHART) $(PCX2PS) $(DESTDIR) ; \
	cp $(MAN1) $(MAN2) $(MANDIR) ; \
	ln -sf $(MANDIR)/$(MAN1) $(MANDIR)/$(MAN3)
else
	echo "Copy all *.exe and *.fnt files to a directory in your path."
endif

clean:
ifeq ($(OS),Linux)
	/bin/rm -f *.o core
else
	del *.o
endif
