
DFLAGS = -O
#DFLAGS = -g -DDEBUG
# ARCH =
CFLAGS = $(DFLAGS) -I$(OPENWINHOME)/include -L$(OPENWINHOME)/lib

SOURCES = README Makefile rpncalc.1 calc.1 info.txt \
	  calc.h keys.h calc.c xcalc.c func.c \
	  *.icon  key.???

.KEEP_STATE:

rpncalc: xcalc.o func.o info.h
	cc $(CFLAGS) -o $@ xcalc.o func.o -lm -lxview -lX11 -lolgx

calc:	calc.o func.o info.h
	cc $(CFLAGS) -o calc calc.o func.o -lm -lsuntool -lsunwindow -lpixrect

# kludge: there's a limit to how long a string constant can be, so we convert
# it to hex and use it to initialize an unsigned long array.

# Make sure we have info.h with the right byte ordering for your machine.

info.h-$(ARCH):	info.txt
	od -vH info.txt | \
	sed -e 's/^[0-7]*  /0x/' -e 's/ /,0x/g' -e 's/$$/,/' > info.h-$(ARCH)

info.h: info.h-$(ARCH)
	cp info.h-$(ARCH) info.h

archive: README Makefile calc.1 info.txt calc.h keys.h calc.c xcalc.c func.c \
		*.icon  key.???
	shar README Makefile calc.1 info.txt calc.h keys.h calc.c xcalc.c \
		func.c *.icon key.???  > archive

rpncalc.tar: $(SOURCES)
	tar cf $@ $(SOURCES)

clean:
	$(RM) *~ *.o info.h info.h-

calc.o:	calc.c calc.h keys.h calc.icon info.h
xcalc.o: calc.h keys.h calc.icon info.h
func.o:	func.c calc.h
