#
# Imakefile for xpaint 2.4.2
#
# $Id: Imakefile,v 1.28 1996/06/07 05:46:20 torsten Exp $

#include "./.version"

#include "./Local.config"

DEFINES = $(ARCH_DEFINES) $(EXTRA_DEFINES) "-DXPAINT_VERSION=\"$(VERSION)\""

#########################
# Nothing to change below here

XPSRC = chroma.c color.c colorEdit.c cutCopyPaste.c dialog.c fatBitsEdit.c \
	fileName.c fontSelect.c grab.c graphic.c hash.c help.c \
	image.c imageComp.c iprocess.c main.c menu.c misc.c \
	operation.c palette.c pattern.c protocol.c readRC.c size.c \
	text.c texture.c typeConvert.c 

XPOBJ = chroma.o color.o colorEdit.o cutCopyPaste.o dialog.o fatBitsEdit.o \
	fileName.o fontSelect.o grab.o graphic.o hash.o help.o \
	image.o imageComp.o iprocess.o main.o menu.o misc.o \
	operation.o palette.o pattern.o protocol.o readRC.o size.o \
	text.o texture.o typeConvert.o

OPSRC = arcOp.c blobOp.c boxOp.c brushOp.c circleOp.c fillOp.c \
	fontOp.c lineOp.c pencilOp.c polyOp.c selectOp.c sprayOp.c
OPOBJ = arcOp.o blobOp.o boxOp.o brushOp.o circleOp.o fillOp.o \
	fontOp.o lineOp.o pencilOp.o polyOp.o selectOp.o sprayOp.o

XPWIDSRC = Colormap.c Paint.c PaintEvent.c PaintRegion.c PaintUndo.c
XPWIDOBJ = Colormap.o Paint.o PaintEvent.o PaintRegion.o PaintUndo.o

RWSRC =	rw/libpnmrw.c rw/readGIF.c rw/readJPEG.c rw/readTIFF.c \
	rw/readWritePNM.c rw/readWriteSGI.c rw/readWriteXBM.c \
	rw/readWriteXPM.c rw/readWriteXWD.c rw/rwTable.c \
	rw/writeGIF.c rw/writeJPEG.c rw/writePS.c rw/writeTIFF.c \
	rw/libpnmrw.h rw/rwTable.h 
RWOBJ =	rw/libpnmrw.o rw/readGIF.o rw/readJPEG.o rw/readTIFF.o \
	rw/readWritePNM.o rw/readWriteSGI.o rw/readWriteXBM.o \
	rw/readWriteXPM.o rw/readWriteXWD.o rw/rwTable.o \
	rw/writeGIF.o rw/writePS.o rw/writeTIFF.o 

SRCS = $(XPSRC) $(OPSRC) $(XPWIDSRC)
OBJS = $(XPOBJ) $(OPOBJ) $(XPWIDOBJ)

HDRS =	Colormap.h ColormapP.h hash.h Paint.h \
	PaintP.h palette.h xpaint.h menu.h \
	text.h cutCopyPaste.h image.h patchlevel.h \
	misc.h rc.h ops.h color.h graphic.h operation.h protocol.h 

OPBITMAPS = bitmaps/clineOp.xpm bitmaps/lassoOp.xpm bitmaps/rayOp.xpm \
	bitmaps/selpolyOp.xpm bitmaps/selectOp.xpm bitmaps/arcOp.xpm \
	bitmaps/boxOp.xpm bitmaps/brushOp.xpm \
	bitmaps/dotPenOp.xpm bitmaps/eraseOp.xpm bitmaps/fboxOp.xpm \
	bitmaps/ffreehandOp.xpm bitmaps/fillOp.xpm bitmaps/fovalOp.xpm \
	bitmaps/fpolyOp.xpm bitmaps/freehandOp.xpm bitmaps/lineOp.xpm \
	bitmaps/ovalOp.xpm bitmaps/pencilOp.xpm bitmaps/polyOp.xpm \
	bitmaps/smearOp.xpm bitmaps/sprayOp.xpm bitmaps/textOp.xpm \
	bitmaps/tfillOp.xpm
BRUSHBITMAPS = bitmaps/paintA.xpm \
	bitmaps/paintB.xpm bitmaps/paintC.xpm bitmaps/paintD.xpm \
	bitmaps/paintE.xpm bitmaps/paintF.xpm bitmaps/paintG.xpm \
	bitmaps/paintH.xpm bitmaps/paintI.xpm bitmaps/paintJ.xpm \
	bitmaps/paintK.xpm bitmaps/paintL.xpm bitmaps/paintM.xpm \
	bitmaps/paintN.xpm bitmaps/paintO.xpm bitmaps/paintP.xpm \
	bitmaps/paintQ.xpm bitmaps/paintR.xpm bitmaps/paintS.xpm \
	bitmaps/paintT.xpm

SYS_LIBRARIES = XawClientLibs -lm

#ifdef SGIArchitecture
SGI_LIB = -limage
#endif

DEPLIBS = always xpaint.man XPaint.ad
LOCAL_LIBRARIES = rw/librw.a $(XPM_LIB) $(TIFF_LIB) $(SGI_LIB) $(JPEG_LIB) $(PNG_LIB)

SUBDIRS = rw

ComplexProgramTarget(xpaint)
InstallAppDefaults(XPaint)

NamedMakeSubdirs(always, $(SUBDIRS))
MakefileSubdirs($(SUBDIRS) bitmaps Doc)
CleanSubdirs($(SUBDIRS))

# Other targets...

clean::
	rm -f XPaint.ad.h DefaultRC.txt.h Help.txt.h PGP.*

includes:: XPaint.ad.h DefaultRC.txt.h Help.txt.h

XPaint.ad:	XPaint.ad.in
	sed -e 's/XPAINT_VERSION/$(VERSION)/' < $? > $@
XPaint.ad.h:	XPaint.ad
	./ad2c.script $? > $@
DefaultRC.txt.h: DefaultRC
	./ad2c.script $? > $@
Help.txt.h: Help.txt
	sed -e 's/  *$$//' -e 's/^$$/ /' < $? | ./ad2c.script > $@
xpaint.man:	xpaint.man.in
	sed -e 's/XPAINT_VERSION/$(VERSION)/' < $? > $@

Colormap.o: ColormapP.h Colormap.h
Paint.o: PaintP.h Paint.h xpaint.h misc.h
PaintEvent.o: PaintP.h Paint.h xpaint.h
PaintRegion.o: PaintP.h Paint.h protocol.h
PaintUndo.o: xpaint.h misc.h PaintP.h Paint.h
blobOp.o: xpaint.h misc.h Paint.h ops.h
boxOp.o: xpaint.h misc.h Paint.h ops.h
brushOp.o: xpaint.h misc.h Paint.h palette.h \
	graphic.h protocol.h ops.h $(BRUSHBITMAPS)
circleOp.o: xpaint.h misc.h Paint.h ops.h
color.o: palette.h protocol.h color.h xpaint.h misc.h image.h
colorEdit.o: misc.h palette.h color.h protocol.h
cutCopyPaste.o: Paint.h xpaint.h misc.h menu.h palette.h image.h operation.h \
	graphic.h protocol.h cutCopyPaste.h
dialog.o: misc.h xpaint.h protocol.h
fatBitsEdit.o: Paint.h xpaint.h palette.h menu.h misc.h cutCopyPaste.h \
	protocol.h graphic.h
fileName.o: Paint.h misc.h image.h rw/rwTable.h graphic.h protocol.h 
fontSelect.o: xpaint.h misc.h operation.h ops.h graphic.h protocol.h
grab.o: image.h
graphic.o: xpaint.h palette.h misc.h menu.h text.h graphic.h image.h \
	cutCopyPaste.h operation.h rc.h protocol.h color.h rw/rwTable.h
hash.o: misc.h hash.h
help.o: Paint.h misc.h protocol.h Help.txt.h
image.o: image.h hash.h palette.h misc.h protocol.h
imageComp.o: image.h hash.h protocol.h misc.h
iprocess.o: xpaint.h image.h misc.h protocol.h
lineOp.o: xpaint.h misc.h Paint.h ops.h
main.o: XPaint.ad.h misc.h graphic.h protocol.h \
	rw/rwTable.h XPaintIcon.xpm
menu.o: menu.h bitmaps/checkmark.xbm bitmaps/pullright.xbm
misc.o: bitmaps/background.xbm xpaint.h misc.h
operation.o:	$(OPBITMAPS) operation.c ops.h xpaint.h misc.h menu.h Paint.h \
	text.h graphic.h image.h operation.h protocol.h \
	cutCopyPaste.h
	$(CC) -c -I./bitmaps $(CFLAGS) $*.c
palette.o: palette.h hash.h misc.h image.h xpaint.h
pattern.o: Colormap.h Paint.h palette.h xpaint.h menu.h misc.h image.h \
	cutCopyPaste.h text.h graphic.h operation.h color.h protocol.h
pencilOp.o: xpaint.h Paint.h misc.h ops.h
protocol.o: xpaint.h misc.h protocol.h bitmaps/wait1.xbm bitmaps/wait2.xbm \
	bitmaps/wait3.xbm bitmaps/wait4.xbm
readRC.o: image.h rc.h misc.h DefaultRC.txt.h
size.o: Paint.h misc.h text.h
text.o: misc.h protocol.h text.h
typeConvert.o: palette.h misc.h
fontOp.o: xpaint.h Paint.h graphic.h misc.h ops.h
arcOp.o: xpaint.h Paint.h misc.h ops.h
polyOp.o: xpaint.h misc.h Paint.h ops.h
fillOp.o: Paint.h protocol.h xpaint.h ops.h image.h misc.h palette.h
selectOp.o: xpaint.h Paint.h protocol.h palette.h color.h misc.h \
	operation.h ops.h
sprayOp.o: xpaint.h Paint.h misc.h ops.h 


TEXT =	README README.old README.PNG INSTALL DefaultRC Help.txt \
	ChangeLog xpaint.man.in TODO .version Imakefile XPaint.ad.in \
	Local.config 
CERTIFICATION = PGP.certification.asc PGP.public-key.asc PGP.public-key.pgp
MISC = XPaintIcon.xpm filelist cert ad2c.script

makelist:: 
	-$(RM) filelist
	@touch filelist

makelist:: 
	sh -c 'for i in '"$(TEXT) $(SRCS) $(MISC) $(HDRS)"' ; \
	do echo $(CURRENT_DIR)/$$i >> $(TOP)/filelist ; done '

NamedTargetSubdirs(makelist, $(SUBDIRS) bitmaps Doc, , , makelist)


kit: makelist
	sh -c 'sum="`cat filelist`" ; makekit -oMANIFEST MANIFEST $$sum'

tar: makelist
	sh -c 'cd .. ; rm -f xpaint-$(VERSION).tar.gz; \
	tar czf xpaint-$(VERSION).tar.gz \
	`sed -e "s:^\./::" -e "s:^:xpaint/:" xpaint/filelist` xpaint/PGP.*'

TAGS:	$(SRCS) $(HDRS) $(RWSRC)
	etags -t -o ./TAGS $(XPSRC) $(OPSRC) $(XPWIDSRC) $(RWSRC) $(HDRS)

certification:	makelist
	-$(RM) $(CERTIFICATION)	
	certify `cat filelist`