#
# mpage: A program to reduce pages of print so that several pages
# of output appear on one sheet of paper.
#
# Copyright (c) 1994-2004 Marcel J.E. Mol, The Netherlands
# Copyright (c) 1988 Mark P. Hahn, Herndon, Virginia
#
# Permission is granted to anyone to make or distribute verbatim
# copies of this document as received, in any medium, provided
# that this copyright notice is preserved, and that the
# distributor grants the recipient permission for further
# redistribution as permitted by this notice.
#
# Marcel Mol MESA Consulting
# P.o. box 112
# 2630 AC Nootdorp
# The Netherlands
# phone: +31-6-54724868
# [email protected] [email protected]
# http://www.mesa.nl/pub/mpage
# ftp://ftp.mesa.nl/pub/mpage
#
# Set this to an ANSI compatible C compiler (preferably gcc)
# See also system specific settings below
#CC=cc
############################################################################
#
# MPAGE Configuration
#
############################################################################
#
# Define your favorite page size:
# Letter for US letter
# Legal for legal
# A4 for European A4
# See glob.c for all possibilities
#
#
# PAGESIZE=A4
PAGESIZE=Letter
#
# Define your spooler type
# ATT_SPOOLER for 'lp ...' type printing
# BSD_SPOOLER for 'lpr ..' tpye printing
#
SPOOL_TYPE=ATT_SPOOLER
# PREFIX=e:/usr # OS/2 type
PREFIX=/sys/lib
BINDIR=/tmp/bin/aux
LIBDIR=/sys/lib
MANDIR=/tmp/man
#
# A default encoding is given in encoding.h. Setting ENCODING=1 will
# activate this encoding by default. 0 switches default off.
# The -C option (without subargument) can be used to switch.
#
ENCODING=1
#
# Set the default sheet margin in 1/72 inches.
#
SHEETMARGIN=18
#
# Set intial duplex mode
#
DEFAULT_DUPLEX=0
DEFS = -DPAGE_DEF=\"${PAGESIZE}\" -DLIBDIR=\"${LIBDIR}/mpage\" -DDEFAULT_ENCODING=${ENCODING} -DDEFAULT_DUPLEX=${DEFAULT_DUPLEX} -DDEFAULTSMARGIN=${SHEETMARGIN} -DSPOOLER=${SPOOL_TYPE} # -DKANJI
############################################################################
#
# OPERATING SYSTEM SETUP
#
############################################################################
# Unix extensions
E =
O = .o
############################################################################
#
# UNIXEN SPECIFICS
#
############################################################################
CFLAGS = -s $(DEFS) -D_BSD_EXTENSION -DPLAN9
############################################################################
#
# END OF CONFIGURATION OPTIONS
#
# pattern rules. Should we define these?
%$(O): %.c
$(CC) $(CFLAGS) -c -o $@ $<
HEAD = mpage.h
DENC = encoding.h
SRCS = mpage.c glob.c text.c post.c file.c page.c args.c util.c
MOBJ = mpage$(O) glob$(O) text$(O) post$(O) file$(O) page$(O) args$(O) util$(O)
SMPL = sample.c page.c glob.c args.c
SOBJ = sample$(O) page$(O) glob$(O) args$(O)
default: mpage$(E) msample$(E) mpage.1
@echo Done!
mpage$(E): $(MOBJ)
$(CC) $(CFLAGS) -o mpage$(E) $(MOBJ) $(LIBS)
msample$(E): $(SOBJ)
$(CC) $(CFLAGS) -o msample$(E) $(SOBJ) $(LIBS)
mpage.1: mpage.1.in
sed 's:PREFIX:${PREFIX}:' < mpage.1.in > mpage.1
clean:
rm -rf $(MOBJ) mpage$(E) mpage.ps $(SOBJ) msample$(E) mpage.1 make.log core
mpage$(O): $(HEAD) $(DENC) mpage.c
glob$(O): $(HEAD) glob.c
text$(O): $(HEAD) text.c
post$(O): $(HEAD) post.c
file$(O): $(HEAD) file.c
page$(O): $(HEAD) page.c
args$(O): $(HEAD) args.c
util$(O): $(HEAD) util.c
sample$(O): $(HEAD) sample.c
mpage.ps: mpage.1
psroff -t -man mpage.1 > mpage.ps
#
# add your proper install stuff
#
install:
if [ ! -d $(LIBDIR)/mpage ] ; then mkdir -p $(LIBDIR)/mpage ; fi
if [ ! -d $(BINDIR) ] ; then mkdir -p $(BINDIR) ; fi
if [ ! -d $(MANDIR) ] ; then mkdir -p $(MANDIR) ; fi
cp mpage$(E) $(BINDIR)
cp mpage.1 $(MANDIR)
-cp Encodings/* $(LIBDIR)/mpage
-chmod 664 $(LIBDIR)/mpage/*
|