# Makefile for pbm tools.
#
# Copyright (C) 1988 by Jef Poskanzer.
#
# Permission to use, copy, modify, and distribute this software and its
# documentation for any purpose and without fee is hereby granted, provided
# that the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation.  This software is provided "as is" without express or
# implied warranty.


# Valid options:
#   OS_BSD      Set this if your system is BSD 4.2 or later.
#   OS_SYSV     Set this if your system is System V.
OPTIONS	=	-DOS_SYSV


CC      =	cc
CFLAGS  =	-O $(OPTIONS)

.SUFFIXES:	.man .cat
.man.cat:
		nroff -h -man $< > $@


all:		cbmtopbm cbmtopbm.cat icontopbm icontopbm.cat macptopbm \
		macptopbm.cat rasttopbm rasttopbm.cat xbmtopbm \
		xbmtopbm.cat xwdtopbm xwdtopbm.cat pbmtocbm pbmtocbm.cat \
		pbmtoicon pbmtoicon.cat pbmtops pbmtops.cat pbmtoptx \
		pbmtoptx.cat pbmtorast pbmtorast.cat pbmtoxbm pbmtoxbm.cat \
		pbmtox10bm pbmtox10bm.cat pbmtoascii pbmtoascii.cat pbmcatlr \
		pbmcatlr.cat pbmcattb pbmcattb.cat pbmfliplr pbmfliplr.cat \
		pbmfliptb pbmfliptb.cat pbminvert pbminvert.cat pbmcrop \
		pbmcrop.cat pbmtrnspos pbmtrnspos.cat pbmcut pbmcut.cat \
		pbmpaste pbmpaste.cat xxxtopbm xxxtopbm.cat pbmenlarge \
		pbmenlarge.cat pbmmake pbmmake.cat pbm.cat


cbmtopbm:	cbmtopbm.o libpbm.a
		$(CC) -s -o cbmtopbm cbmtopbm.o libpbm.a

cbmtopbm.o:	cbmtopbm.c pbm.h


icontopbm:	icontopbm.o libpbm.a
		$(CC) -s -o icontopbm icontopbm.o libpbm.a

icontopbm.o:	icontopbm.c pbm.h


macptopbm:	macptopbm.o libpbm.a
		$(CC) -s -o macptopbm macptopbm.o libpbm.a

macptopbm.o:	macptopbm.c pbm.h


rasttopbm:	rasttopbm.o libpbm.a
		$(CC) -s -o rasttopbm rasttopbm.o libpbm.a -lpixrect

rasttopbm.o:	rasttopbm.c pbm.h


xxxtopbm:	xxxtopbm.o libpbm.a
		$(CC) -s -o xxxtopbm xxxtopbm.o libpbm.a

xxxtopbm.o:	xxxtopbm.c pbm.h


pbmcatlr:	pbmcatlr.o libpbm.a
		$(CC) -s -o pbmcatlr pbmcatlr.o libpbm.a

pbmcatlr.o:	pbmcatlr.c pbm.h


pbmcattb:	pbmcattb.o libpbm.a
		$(CC) -s -o pbmcattb pbmcattb.o libpbm.a

pbmcattb.o:	pbmcattb.c pbm.h


pbmfliplr:	pbmfliplr.o libpbm.a
		$(CC) -s -o pbmfliplr pbmfliplr.o libpbm.a

pbmfliplr.o:	pbmfliplr.c pbm.h


pbmfliptb:	pbmfliptb.o libpbm.a
		$(CC) -s -o pbmfliptb pbmfliptb.o libpbm.a

pbmfliptb.o:	pbmfliptb.c pbm.h


pbminvert:	pbminvert.o libpbm.a
		$(CC) -s -o pbminvert pbminvert.o libpbm.a

pbminvert.o:	pbminvert.c pbm.h


pbmcrop:	pbmcrop.o libpbm.a
		$(CC) -s -o pbmcrop pbmcrop.o libpbm.a

pbmcrop.o:	pbmcrop.c pbm.h


pbmtrnspos:	pbmtrnspos.o libpbm.a
		$(CC) -s -o pbmtrnspos pbmtrnspos.o libpbm.a

pbmtrnspos.o:	pbmtrnspos.c pbm.h


pbmcut:		pbmcut.o libpbm.a
		$(CC) -s -o pbmcut pbmcut.o libpbm.a

pbmcut.o:	pbmcut.c pbm.h


pbmpaste:	pbmpaste.o libpbm.a
		$(CC) -s -o pbmpaste pbmpaste.o libpbm.a

pbmpaste.o:	pbmpaste.c pbm.h


pbmenlarge:	pbmenlarge.o libpbm.a
		$(CC) -s -o pbmenlarge pbmenlarge.o libpbm.a

pbmenlarge.o:	pbmenlarge.c pbm.h


pbmmake:	pbmmake.o libpbm.a
		$(CC) -s -o pbmmake pbmmake.o libpbm.a

pbmmake.o:	pbmmake.c pbm.h


pbmtocbm:	pbmtocbm.o libpbm.a
		$(CC) -s -o pbmtocbm pbmtocbm.o libpbm.a

pbmtocbm.o:	pbmtocbm.c pbm.h


pbmtoicon:	pbmtoicon.o libpbm.a
		$(CC) -s -o pbmtoicon pbmtoicon.o libpbm.a

pbmtoicon.o:	pbmtoicon.c pbm.h


pbmtops:	pbmtops.o libpbm.a
		$(CC) -s -o pbmtops pbmtops.o libpbm.a

pbmtops.o:	pbmtops.c pbm.h


pbmtoptx:	pbmtoptx.o libpbm.a
		$(CC) -s -o pbmtoptx pbmtoptx.o libpbm.a

pbmtoptx.o:	pbmtoptx.c pbm.h


pbmtorast:	pbmtorast.o libpbm.a
		$(CC) -s -o pbmtorast pbmtorast.o libpbm.a -lpixrect

pbmtorast.o:	pbmtorast.c pbm.h


pbmtoxbm:	pbmtoxbm.o libpbm.a
		$(CC) -s -o pbmtoxbm pbmtoxbm.o libpbm.a

pbmtoxbm.o:	pbmtoxbm.c pbm.h


pbmtox10bm:	pbmtox10bm.o libpbm.a
		$(CC) -s -o pbmtox10bm pbmtox10bm.o libpbm.a

pbmtox10bm.o:	pbmtox10bm.c pbm.h


pbmtoascii:	pbmtoascii.o libpbm.a
		$(CC) -s -o pbmtoascii pbmtoascii.o libpbm.a

pbmtoascii.o:	pbmtoascii.c pbm.h


xbmtopbm:	xbmtopbm.o libpbm.a
		$(CC) -s -o xbmtopbm xbmtopbm.o libpbm.a

xbmtopbm.o:	xbmtopbm.c pbm.h


xwdtopbm:	xwdtopbm.o libpbm.a
		$(CC) -s -o xwdtopbm xwdtopbm.o libpbm.a

xwdtopbm.o:	xwdtopbm.c pbm.h


libpbm.a:	libpbm.o
		ar r libpbm.a libpbm.o
		-ranlib libpbm.a

libpbm.o:	libpbm.c pbm.h


clean:
		-rm -f *.o libpbm.a *.cat pbm.shar* core icontopbm
		-rm -f macptopbm rasttopbm pbmcatlr pbmcattb pbmcrop
		-rm -f pbmfliplr pbmfliptb pbminvert pbmtoicon pbmtops
		-rm -f pvmtoptx pbmtorast pbmtoxbm pbmtox10bm xbmtopbm
		-rm -f xwdtopbm pbmtoascii pbmtocbm cbmtopbm pbmtrnspos
		-rm -f pbmcut pbmpaste pbmenlarge pbmmake xxxtopbm


shar:		pbm.shar1 pbm.shar2 pbm.shar3 pbm.shar4

pbm.shar1:	README FORMATS Makefile cbmtopbm.c cbmtopbm.man icontopbm.c \
		icontopbm.man macptopbm.c macptopbm.man rasttopbm.c \
		rasttopbm.man
		shar -v -c -p X README FORMATS Makefile cbmtopbm.c cbmtopbm.man icontopbm.c icontopbm.man macptopbm.c macptopbm.man rasttopbm.c rasttopbm.man > pbm.shar1

pbm.shar2:	xbmtopbm.c xbmtopbm.man xwdtopbm.c xwdtopbm.man pbmtocbm.c \
		pbmtocbm.man pbmtoicon.c pbmtoicon.man pbmtops.c pbmtops.man \
		pbmtoptx.c pbmtoptx.man pbmtorast.c pbmtorast.man
		shar -v -c -p X xbmtopbm.c xbmtopbm.man xwdtopbm.c xwdtopbm.man pbmtocbm.c pbmtocbm.man pbmtoicon.c pbmtoicon.man pbmtops.c pbmtops.man pbmtoptx.c pbmtoptx.man pbmtorast.c pbmtorast.man > pbm.shar2

pbm.shar3:	pbmtoxbm.c pbmtoxbm.man pbmtox10bm.c pbmtox10bm.man \
		pbmtoascii.c pbmtoascii.man pbmcatlr.c pbmcatlr.man pbmcattb.c \
		pbmcattb.man pbmfliplr.c pbmfliplr.man pbmfliptb.c \
		pbmfliptb.man pbminvert.c pbminvert.man
		shar -v -c -p X pbmtoxbm.c pbmtoxbm.man pbmtox10bm.c pbmtox10bm.man pbmtoascii.c pbmtoascii.man pbmcatlr.c pbmcatlr.man pbmcattb.c pbmcattb.man pbmfliplr.c pbmfliplr.man pbmfliptb.c pbmfliptb.man pbminvert.c pbminvert.man > pbm.shar3

pbm.shar4:	pbmcrop.c pbmcrop.man pbmtrnspos.c pbmtrnspos.man pbmcut.c \
		pbmcut.man pbmpaste.c pbmpaste.man xxxtopbm.c xxxtopbm.man \
		pbmenlarge.c pbmenlarge.man pbmmake.c pbmmake.man libpbm.c \
		pbm.h pbm.man bmaliases bit_reverse.h
		shar -v -c -p X pbmcrop.c pbmcrop.man pbmtrnspos.c pbmtrnspos.man pbmcut.c pbmcut.man pbmpaste.c pbmpaste.man xxxtopbm.c xxxtopbm.man pbmenlarge.c pbmenlarge.man pbmmake.c pbmmake.man libpbm.c pbm.h pbm.man bmaliases bit_reverse.h > pbm.shar4

tar :
	tar cf manuals.tar cbmtopbm.man icontopbm.man macptopbm.man pbm.man \
		pbmcatlr.man pbmcattb.man pbmcrop.man pbmcut.man \
		pbmenlarge.man pbmfliplr.man pbmfliptb.man pbminvert.man \
		pbmmake.man pbmpaste.man pbmtoascii.man pbmtocbm.man \
		pbmtoicon.man pbmtops.man pbmtoptx.man pbmtorast.man \
		pbmtox10bm.man pbmtoxbm.man pbmtrnspos.man rasttopbm.man \
		xbmtopbm.man xwdtopbm.man xxxtopbm.man
	tar cf sources.tar bit_reverse.h cbmtopbm.c icontopbm.c libpbm.c \
		macptopbm.c pbm.h pbmcatlr.c pbmcattb.c pbmcrop.c pbmcut.c \
		pbmenlarge.c pbmfliplr.c pbmfliptb.c pbminvert.c pbmmake.c \
		pbmpaste.c pbmtoascii.c pbmtocbm.c pbmtoicon.c pbmtops.c \
		pbmtoptx.c pbmtorast.c pbmtox10bm.c pbmtoxbm.c pbmtrnspos.c \
		rasttopbm.c xbmtopbm.c xwdtopbm.c xxxtopbm.c
	tar cf bitmaps.tar manuals.tar sources.tar README FORMATS Makefile
	compress bitmaps.tar
	rm manuals.tar sources.tar
