Annotation of researchv10dc/cmd/postscript/Opostscript.mk, revision 1.1.1.1

1.1       root        1: #
                      2: # Top level makefile. Instructions are included here and in the README file.
                      3: #
                      4: # First save a copy of this file. Then adjust the following definitions (all
                      5: # come immediatedly after the initial block of comments):
                      6: #
                      7: #     MAKE     where make lives
                      8: #
                      9: #     MAKEFILE name of this file - for recursive make calls. Must change
                     10: #              if you rename this file.
                     11: #
                     12: #     SYSTEM   best match for your version of Unix. Current choices for
                     13: #              SYSTEM are:
                     14: #
                     15: #                      SYSV    - System V
                     16: #                      V9      - Ninth Edition
                     17: #                      BSD4_2  - Berkeley (eg. Sun)
                     18: #
                     19: #              Controls conditional compilation in a few places.
                     20: #
                     21: #     VERSION  refers to the Version of the DWB package
                     22: #
                     23: #     GROUP    group assigned to all installed files
                     24: #
                     25: #     OWNER    owner of everything that's installed
                     26: #
                     27: #     BINDIR   dpost and picpack go here. All other programs go in POSTBIN.
                     28: #              BINDIR must already exist - it will not created during an
                     29: #              install.
                     30: #
                     31: #     HOSTDIR  hostresident font directory for PostScript printers. Only
                     32: #              used in the font download program.
                     33: #
                     34: #     FONTDIR  width table directory - for troff and dpost
                     35: #
                     36: #     MAN1DIR  command manpages. A command and its manpage are installed
                     37: #              together - there's no easy way to avoid it. Setting MAN1DIR
                     38: #              to an existing temporary directory (e.g. /tmp) means an
                     39: #              install will work but manpages won't go anywhere permanent.
                     40: #              MAN1DIR must already exist - it will not be created during
                     41: #              an install.
                     42: #
                     43: #     POSTBIN  where most PostScript support programs go. dpost and picpack
                     44: #              are the exceptions.
                     45: #
                     46: #     POSTLIB  prologues and miscellaneous PostScript files. Primarily for
                     47: #              the programs that live in POSTBIN.
                     48: #
                     49: #     CFLGS    common compiler options - used to build CFLAGS in the low
                     50: #              level makefiles. CFLGS and LDFLGS are best set on the make
                     51: #              command line.
                     52: #
                     53: #     LDFLGS   common link editor options - used to build LDFLAGS in the
                     54: #              low level makefiles. LDFLGS and CFLGS are best set on the
                     55: #              make command line.
                     56: #
                     57: #     DKHOST   set it to TRUE to compile the DKHOST Datakit support code
                     58: #              in postio. Temporarily resets SYSTEM to SYSV if DKHOST is
                     59: #              TRUE and SYSTEM is BSD4_2. Ignored if SYSTEM is not SYSV
                     60: #              or BSD4_2.
                     61: #
                     62: #     DKSTREAMS        set it to TRUE only if you have the streams based DKHOST
                     63: #              package. Ignored if SYSTEM is not SYSV or BSD4_2.
                     64: #
                     65: #     DOROUND  must only be set to TRUE or FALSE. TRUE means translators
                     66: #              include code that maps clipping path dimensions into known
                     67: #              paper sizes.
                     68: #
                     69: #     TARGETS  the default list of what's built by make. Each target must
                     70: #              be the name of a source directory. A target that names a
                     71: #              non-existent source directory is ignored. Setting TARGETS
                     72: #              on the make command line overrides the default list.
                     73: #
                     74: # Source files must be updated whenever this file changes. If you change any
                     75: # definitions type,
                     76: #
                     77: #      make -f postscript.mk changes
                     78: #
                     79: # to update the source files, man pages, and low level makefiles.
                     80: #
                     81: # To build (but not install) the default package (i.e. everything named by
                     82: # TARGETS) type,
                     83: #
                     84: #      make -f postscript.mk all
                     85: #
                     86: # The recommended way to build and install the package is,
                     87: #
                     88: #      make -f postscript.mk all install
                     89: #
                     90: # Although you'll likely have to be root for the install to work.
                     91: #
                     92: # After the package is installed use,
                     93: #
                     94: #      make -f postscript.mk clobber
                     95: #
                     96: # to delete binary files and compiled programs from the source directories.
                     97: #
                     98: # Set TARGETS on the command line to select part of the package. For example,
                     99: #
                    100: #      make -f postscript.mk TARGETS="dpost devpost" all install
                    101: #
                    102: # builds and installs dpsot and the PostScript font tables. Quotes hide white
                    103: # space from the shell.
                    104: #
                    105: 
                    106: MAKE=/bin/make
                    107: MAKEFILE=postscript.mk
                    108: 
                    109: SYSTEM=SYSV
                    110: VERSION=3.2
                    111: 
                    112: GROUP=bin
                    113: OWNER=bin
                    114: 
                    115: BINDIR=/usr/bin
                    116: FONTDIR=/usr/lib/font
                    117: HOSTDIR=/usr/lib/font/postscript
                    118: MAN1DIR=/usr/man/u_man/man1
                    119: POSTBIN=/usr/lbin/postscript
                    120: POSTLIB=/usr/lib/postscript
                    121: 
                    122: COMMONDIR=common
                    123: CURRENTDIR=.
                    124: 
                    125: CFLGS=-O
                    126: LDFLGS=-s
                    127: 
                    128: DKHOST=FALSE
                    129: DKSTREAMS=FALSE
                    130: ROUNDPAGE=FALSE
                    131: 
                    132: #
                    133: # $(TARGETS) is the default list of things built by make.
                    134: #
                    135: 
                    136: TARGETS=buildtables\
                    137:        common\
                    138:        cropmarks\
                    139:        devLatin1\
                    140:        devpost\
                    141:        download\
                    142:        dpost\
                    143:        grabit\
                    144:        hardcopy\
                    145:        picpack\
                    146:         postbgi\
                    147:         postdaisy\
                    148:         postdmd\
                    149:        postgif\
                    150:        postio\
                    151:        postmd\
                    152:        postplot\
                    153:         postprint\
                    154:        postreverse\
                    155:         posttek\
                    156:        printfont\
                    157:        psencoding\
                    158:        psfiles\
                    159:        trofftable
                    160: 
                    161: ACTION=all
                    162: 
                    163: all : $(TARGETS)
                    164: 
                    165: clean clobber :
                    166:        @$(MAKE) -e -f $(MAKEFILE) MAKE=$(MAKE) ACTION=$@ $(TARGETS)
                    167: 
                    168: install :
                    169:        @SYSTEM='$(SYSTEM)'; export SYSTEM; \
                    170:        VERSION='$(VERSION)'; export VERSION; \
                    171:        GROUP='$(GROUP)'; export GROUP; \
                    172:        OWNER='$(OWNER)'; export OWNER; \
                    173:        BINDIR='$(BINDIR)'; export BINDIR; \
                    174:        FONTDIR='$(FONTDIR)'; export FONTDIR; \
                    175:        HOSTDIR='$(HOSTDIR)'; export HOSTDIR; \
                    176:        MAN1DIR='$(MAN1DIR)'; export MAN1DIR; \
                    177:        POSTBIN='$(POSTBIN)'; export POSTBIN; \
                    178:        POSTLIB='$(POSTLIB)'; export POSTLIB; \
                    179:        $(MAKE) -e -f $(MAKEFILE) MAKE=$(MAKE) ACTION=$@ $(TARGETS)
                    180: 
                    181: $(TARGETS) ::
                    182:        @TARGETS=; unset TARGETS; \
                    183:        HFILES=; unset HFILES; \
                    184:        OFILES=; unset OFILES; \
                    185:        CFLAGS=; unset CFLAGS; \
                    186:        LDFLAGS=; unset LDFLAGS; \
                    187:        YFLAGS=; unset YFLAGS; \
                    188:        SYSTEM='$(SYSTEM)'; export SYSTEM; \
                    189:        VERSION='$(VERSION)'; export VERSION; \
                    190:        CFLGS='$(CFLGS)'; export CFLGS; \
                    191:        LDFLGS='$(LDFLGS)'; export LDFLGS; \
                    192:        COMMONDIR='../$(COMMONDIR)'; export COMMONDIR; \
                    193:        if [ $@ = postio ]; then \
                    194:            EXTRA=; unset EXTRA; \
                    195:            DKLIB=" "; export DKLIB; \
                    196:            if [ $(SYSTEM) = SYSV -a $(DKHOST) = TRUE ]; then \
                    197:                DKLIB=-ldk; export DKLIB; \
                    198:                CFLGS="$(CFLGS) -DDKHOST"; export CFLGS; \
                    199:                if [ "$(DKSTREAMS)" = TRUE ]; then \
                    200:                    CFLGS="$$CFLGS -DDKSTREAMS"; export CFLGS; \
                    201:                fi; \
                    202:            fi; \
                    203:            if [ $(SYSTEM) = BSD4_2 -a $(DKHOST) = TRUE ]; then \
                    204:                DKLIB=-ldk; export DKLIB; \
                    205:                CFLGS="$(CFLGS) -DDKHOST -DDKSTREAMS"; export CFLGS; \
                    206:                SYSTEM=SYSV; export SYSTEM; \
                    207:            fi; \
                    208:            if [ $(SYSTEM) = V9 ]; then \
                    209:                DKLIB=-lipc; export DKLIB; \
                    210:            fi; \
                    211:        fi; \
                    212:        if [ -d $@ -a -f $@/[email protected] ]; then  \
                    213:            cd $@; \
                    214:            echo "---- Making $(ACTION) in directory $(CURRENTDIR)/$@ ----"; \
                    215:            $(MAKE) -e -f [email protected] MAKE=$(MAKE) $(ACTION); \
                    216:            echo; \
                    217:        fi
                    218: 
                    219: changes :
                    220:        @SYSTEM='$(SYSTEM)'; export SYSTEM; \
                    221:        VERSION='$(VERSION)'; export VERSION; \
                    222:        GROUP='$(GROUP)'; export GROUP; \
                    223:        OWNER='$(OWNER)'; export OWNER; \
                    224:        BINDIR='$(BINDIR)'; export BINDIR; \
                    225:        FONTDIR='$(FONTDIR)'; export FONTDIR; \
                    226:        HOSTDIR='$(HOSTDIR)'; export HOSTDIR; \
                    227:        MAN1DIR='$(MAN1DIR)'; export MAN1DIR; \
                    228:        POSTBIN='$(POSTBIN)'; export POSTBIN; \
                    229:        POSTLIB='$(POSTLIB)'; export POSTLIB; \
                    230:        DKHOST='$(DKHOST)'; export DKHOST; \
                    231:        DKSTREAMS='$(DKSTREAMS)'; export DKSTREAMS; \
                    232:        ROUNDPAGE='$(ROUNDPAGE)'; export ROUNDPAGE; \
                    233:        $(MAKE) -e -f $(MAKEFILE) MAKE=$(MAKE) ACTION=$@ $(TARGETS)
                    234:        @trap "" 1 2 3 15; \
                    235:        sed \
                    236:            -e "s'^SYSTEM=.*'SYSTEM=$(SYSTEM)'" \
                    237:            -e "s'^VERSION=.*'VERSION=$(VERSION)'" \
                    238:            -e "s'^GROUP=.*'GROUP=$(GROUP)'" \
                    239:            -e "s'^OWNER=.*'OWNER=$(OWNER)'" \
                    240:            -e "s'^BINDIR=.*'BINDIR=$(BINDIR)'" \
                    241:            -e "s'^FONTDIR=.*'FONTDIR=$(FONTDIR)'" \
                    242:            -e "s'^HOSTDIR=.*'HOSTDIR=$(HOSTDIR)'" \
                    243:            -e "s'^MAN1DIR=.*'MAN1DIR=$(MAN1DIR)'" \
                    244:            -e "s'^POSTBIN=.*'POSTBIN=$(POSTBIN)'" \
                    245:            -e "s'^POSTLIB=.*'POSTLIB=$(POSTLIB)'" \
                    246:            -e "s'^DKHOST=.*'DKHOST=$(DKHOST)'" \
                    247:            -e "s'^DKSTREAMS=.*'DKSTREAMS=$(DKSTREAMS)'" \
                    248:            -e "s'^ROUNDPAGE=.*'ROUNDPAGE=$(ROUNDPAGE)'" \
                    249:        $(MAKEFILE) >XXX.mk; \
                    250:        mv XXX.mk $(MAKEFILE)
                    251: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.