|
|
Power 6/32 Unix version 1.21
#
# Makefile 1.11 85/04/18
#
# Makefile for PCC
#
# These symbols are used to configure the compiler:
# ASSTRINGS assembler handles string initializations
# STABDOT assembler understands .stabd
# LCOMM assembler supports .lcomm
# FIXSTRUCT no trickery (just output structure)
#
# Some symbols are specific to certain compilers:
# FORT get f77-style pass 2
#
MAKEPARAM = AS=${AS} CC=${CC} LD=${LD} INCLDIR=${INCLDIR} LIBDIR=${LIBDIR} ULIBDIR=${ULIBDIR} DESTDIR=${DESTDIR}
CC= cc
CONFIG= -DASSTRINGS -DSTABDOT -DLCOMM "-DFIXSTRUCT=outstruct"
O = -O
CFLAGS = $(O) -I${DESTDIR}/usr/include -I. $(CONFIG)
COPTS = -DONEPASS $(CFLAGS)
SCOPTS = -DONEPASS -DSPRECC $(CFLAGS)
FOPTS = -DFORT $(CFLAGS)
LDFLAGS =
RM= /bin/rm -f
SFILES= strees.c slocal.c slocal2.c sallo.c sorder.c stable.c
SOBJS= strees.o slocal.o slocal2.o sallo.o sorder.o stable.o
FFILES= freader.c fallo.c fmatch.c ftable.c forder.c flocal2.c fcomm2.c
FOBJS= freader.o fallo.o fmatch.o ftable.o forder.o flocal2.o fcomm2.o
DEST= $(DESTDIR)/usr/lib/f1
PROGRAM= fort
TESTDIR = .
all: fort
#
# 'fort' is the f77 and pc code generator.
#
fort: fort.o freader.o fallo.o fmatch.o ftable.o forder.o flocal2.o \
fcomm2.o
$(CC) $(LDFLAGS) fort.o freader.o fallo.o fmatch.o ftable.o \
forder.o flocal2.o fcomm2.o -o $(TESTDIR)/fort
fort.o: fort.h manifest.h pass2.h pcclocal.h mac2defs.h macdefs.h fort.c
$(CC) -c $(FOPTS) fort.c
freader.o: manifest.h pass2.h pcclocal.h mac2defs.h macdefs.h reader.c
ln reader.c freader.c
$(CC) -c $(FOPTS) freader.c
$(RM) freader.c
fallo.o: manifest.h pass2.h pcclocal.h mac2defs.h macdefs.h allo.c
ln allo.c fallo.c
$(CC) -c $(FOPTS) fallo.c
$(RM) fallo.c
fmatch.o: manifest.h pass2.h pcclocal.h mac2defs.h macdefs.h match.c
ln match.c fmatch.c
$(CC) -c $(FOPTS) fmatch.c
$(RM) fmatch.c
ftable.o: manifest.h pass2.h pcclocal.h mac2defs.h macdefs.h table.c
ln table.c ftable.c
$(CC) -c -R $(FOPTS) ftable.c
$(RM) ftable.c
forder.o: manifest.h pass2.h pcclocal.h mac2defs.h macdefs.h
ln order.c forder.c
$(CC) -c $(FOPTS) forder.c
$(RM) forder.c
flocal2.o: manifest.h pass2.h pcclocal.h mac2defs.h macdefs.h
ln local2.c flocal2.c
$(CC) -c $(FOPTS) flocal2.c
$(RM) flocal2.c
fcomm2.o: manifest.h pass2.h pcclocal.h common.c mac2defs.h macdefs.h
ln common.c fcomm2.c
$(CC) -c $(FOPTS) -DPASS2COMMON fcomm2.c
$(RM) fcomm2.c
install: all
@echo Installing $(PROGRAM) in $(DEST)
@install -s $(PROGRAM) $(DEST)
GREP= egrep
pcclocal.h: localdefs.h ${DESTDIR}/usr/include/pcc.h
$(RM) pcclocal.h
cat ${DESTDIR}/usr/include/pcc.h localdefs.h | $(GREP) '^#[ ]*(define[ ][ ]*PCC(F|T|TM|OM)?_|ifdef|ifndef|endif)' | sed -e 's/PCC[A-Z]*_//' > pcclocal.h
pcctokens: localdefs.h ${DESTDIR}/usr/include/pcc.h
$(RM) pcctokens
cat ${DESTDIR}/usr/include/pcc.h localdefs.h | $(GREP) '^#[ ]*define[ ][ ]*PCC_' | sed -e 's/^#[ ]*define[ ][ ]*PCC_/%term /' > pcctokens
DUMMIES= $(SFILES) $(FFILES) pcclocal.h
shrink:
$(RM) *.o fort $(DUMMIES)
clean:
@$(RM) *.o fort $(DUMMIES)
clobber: clean
$(RM) pcctokens pcclocal.h $(DUMMIES)
sfix:
$(RM) $(SFILES)
sclean:
$(RM) $(SOBJS) $(SFILES)
ffix:
$(RM) $(FFILES)
fclean:
$(RM) $(FOBJS) $(FFILES)
lintall:
lint -hv -I. code.c local.c reader.c \
local2.c order.c match.c allo.c comm1.c table.c
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.