#!make -n
# $Header:Makefile 12.0$ 
# $ACIS:Makefile 12.0$ 
# $Source: /ibm/acis/usr/src/ibm/lib/pmp/RCS/Makefile,v $ 

DESTDIR=
INSDIR=		${DESTDIR}/usr/lib
H_INSDIR=	${DESTDIR}/usr/include/pmp
TOOLSDIR=	../tools
LINTDIR=	/usr/lib/lint
#flags to various programs invoked by make
ASFLAGS=
#CFLAGS defined below
RCSFLAGS = 
LDFLAGS=
LNFLAGS= -s
PRFLAGS= -p
RMFLAGS= -f
#names of various programs invoked by make
AS= as
CC= cc
CO= co
LD= ld
LINT= lint
LN= ln
PR= lpr
RM= /bin/rm
INSTALL= install -c
SHOWCMD=
#name of machine and operating system we're running on
OPSYS=BSD42
#options to C compiler, broken into categories
DEBUG= -DDEBUG_UTILS
DFLAGS= -D$(OPSYS) -DERROR_UTILS -DOPT_UTILS $(DOPTS)
LIBFLAGS= -I. -I.. -I$(TOOLSDIR)
OPT= -O
OCFLAGS=
CFLAGS= $(LIBFLAGS) $(OPT) $(DFLAGS) $(OCFLAGS)
LINTFLAGS= $(LIBFLAGS) $(DFLAGS) $(OCFLAGS)

TOOL_FILES= $(TOOLSDIR)/utils.c $(TOOLSDIR)/utils.h
CFILES= char.c creg.c font.c pmp_utils.c rp.c printer.c text.c \
	vector.c vp.c $(TOOLS_FILES)
OFILES= char.o creg.o font.o hash.o pmp_utils.o rp.o printer.o text.o\
	utils.o vector.o vp.o pmp.o
H_PUBLIC= pmp.h char.h creg.h font.h move.h pmp_utils.h rp.h printer.h text.h\
	vector.h vp.h pmp_commands.h 
INCL_STDTOOLS= $(TOOLSDIR)/utils.h $(TOOLSDIR)/machdep.h

MKFLAGS= $(MFLAGS) AS="$(AS)" CC="$(CC)" CO="$(CO)"\
	 LD="$(LD)" LN="$(LN)" PR="$(PR)" RM="$(RM)" ASFLAGS="$(ASFLAGS)"\
	 RCSFLAGS="$(RCSFLAGS)" LDFLAGS="$(LDFLAGS)" LNFLAGS="$(LNFLAGS)"\
	 PRFLAGS="$(PRFLAGS)" RMFLAGS="$(RMFLAGS)"\
	 DFLAGS="$(DFLAGS)" CFLAGS="$(CFLAGS)"\
	 FILTERDIR="$(FILTERDIR)" TOOLSDIR="$(TOOLSDIR)"\
	 DITROFFDIR="$(DITROFFDIR)" SHOWCMD='$(SHOWCMD)'

.c.o:	; $(SHOWCMD) $(CC) $(CFLAGS) -c $*.c
.s.o:	; $(SHOWCMD) $(AS) $(ASFLAGS) -o $*.o $*.s

# how to build a PMP filter library
libpmp.a all:	$(OFILES)
	$(SHOWCMD) ar ruv libpmp.a $(OFILES) ; \
	ranlib libpmp.a

#dependencies of .o files
pmp.o:		pmp.c $(H_PUBLIC) pmp.h
char.o:		char.c char.h pmp_commands.h $(INCL_STDTOOLS)
creg.o:		creg.c creg.h char.h font.h vp.h $(INCL_STDTOOLS)
font.o:		font.c font.h char.h $(INCL_STDTOOLS)
hash.o:		$(TOOLSDIR)/hash.c $(TOOLSDIR)/hash.h $(INCL_STDTOOLS)
	$(SHOWCMD) $(CC) $(CFLAGS) -c $(TOOLSDIR)/hash.c
pmp_utils.o:	pmp_utils.c pmp_utils.h $(INCL_STDTOOLS)
rp.o:		rp.c rp.h char.h font.h $(INCL_STDTOOLS)
printer.o:	printer.c printer.h char.h font.h $(INCL_STDTOOLS)
text.o:		text.c text.h char.h font.h vp.h rp.h $(INCL_STDTOOLS)
utils.o:	$(TOOLSDIR)/utils.c $(INCL_STDTOOLS)
	$(SHOWCMD) $(CC) $(CFLAGS) -c $(TOOLSDIR)/utils.c
vector.o:	vector.c vector.h char.h font.h $(INCL_STDTOOLS)
vp.o:		vp.c vp.h char.h font.h $(INCL_STDTOOLS)

clean:	;	$(RM) $(RMFLAGS) $(OFILES) libpmp.a

lint:	llib-lpmp.ln

llib-lpmp.ln:	$(CFILES)
	$(LINT) $(LINTFLAGS) $(CFILES) -Cpmp > lint.out

lintinstall:	llib-lpmp.ln
	$(INSTALL) llib-lpmp.ln $(LINTDIR)

$(INSDIR) $(H_INSDIR):	FRC
		-if [ ! -d $@ ] ; then \
		    $(RM) -f $@ ; \
		    mkdir $@ ; \
		fi

FRC:	;

install:	libpmp.a $(INSDIR) $(H_INSDIR)
		$(INSTALL) libpmp.a $(INSDIR)
		ranlib $(INSDIR)/libpmp.a
		$(INSTALL) -m 644 pmp.h $(H_INSDIR)
		$(INSTALL) -m 644 pmp_font.h $(H_INSDIR)/pmp_font.h
		$(INSTALL) -m 644 vector.h $(H_INSDIR)/vector.h
