# Copyright (c) 1993 Xerox Corporation. All rights reserved.
#
include ../config/config.mk
#
# locations of object files
#
INSTALL←LIB = ../lib
INSTALL←BIN = ../bin
#
# compilation flags, etc.
#
CPPFLAGS = $(INCLUDE) $(CONFIG←CPPFLAGS) \
-DPCR←NO←RENAME -DPCR←NO←HOSTDEP←ERR
CFLAGS =-c $(CONFIG←CFLAGS)
ASPPFLAGS = $(INCLUDE) $(CONFIG←ASPPFLAGS) \
-DPCR←NO←RENAME -DPCR←NO←HOSTDEP←ERR -DASM
ASFLAGS = $(CONFIG←ASFLAGS)
LDRFLAGS = $(CONFIG←LDRFLAGS)
LDFLAGS = $(CONFIG←LDFLAGS)
#
# standard commands and default rules
#
INSTALL = cp -p
.s.o:
$(ASPP) $(ASPPFLAGS) $< > tmp.s ; $(AS) $(ASFLAGS) tmp.s -o $@ ; \
rm -f tmp.s
.c.o:
$(CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $@
#
#
#
#
# BEGIN PACKAGE-SPECIFIC PART
#
#
#
#
#
# Default target
#
# Fix to point to local pcr installation directory.
# PCRDIR= /project/ppcr/dev
PCRDIR= ..
CFLAGS= -DPCR $(CONFIG←CFLAGS)
# We assume that mach←dep.o has already been built by top level makefile. It doesn't
# care about pcr vs UNIX, and we don't want to repeat that cruft.
# all: gc.o test.o gcpcr
all: gc.o
OBJS= alloc.o reclaim.o allochblk.o misc.o mach←dep.o os←dep.o mark←roots.o headers.o mark.o obj←map.o pcr←interface.o black←list.o finalize.o new←hblk.o real←malloc.o dynamic←load.o debug←malloc.o malloc.o stubborn.o
CSRCS= reclaim.c allochblk.c misc.c alloc.c mach←dep.c os←dep.c mark←roots.c headers.c mark.c obj←map.c pcr←interface.c black←list.c finalize.c new←hblk.c real←malloc.c dynamic←load.c debug←malloc.c malloc.c stubborn.c
SHELL= /bin/sh
gcpcr: gc.o test.o $(PCRDIR)/base/pcr.o $(PCRDIR)/base/PCR←BaseMain.o
$(CC) -o gcpcr $(PCRDIR)/base/pcr.o $(PCRDIR)/base/PCR←BaseMain.o gc.o test.o -ldl
gc.o: $(OBJS)
-ld -r -o gc.o $(OBJS)
#
# Dependency construction
#
# NOTE: the makefile must include "# DO NOT DELETE THIS LINE" after the
# last target. "make depend" will replace everything following that line
# by a newly-constructed list of dependencies.
#
old-depend: $(CSRCS)
rm -f makedep eddep ; \
gcc -M $(CFLAGS) $(CSRCS) \
| sed -e '/:$$/d' > makedep ; \
echo '/↑# DO NOT DELETE THIS LINE/+1,$$d' >eddep ; \
echo '$$r makedep' >>eddep ; \
echo 'w' >>eddep ; \
cp PCR-Makefile PCR-Makefile.bak ; \
ex - PCR-Makefile < eddep ; \
rm -f eddep makedep
touch depend
makedep: $(CSRCS)
rm -f makedep
-for x in $(CSRCS) END ; \
do if [ $$x != END ]; then \
$(CPP) -M $(CPPFLAGS) $$x \
| sed -e '/:$$/d' >> makedep ; \
fi ; \
done
depend: makedep
echo '/↑# DO NOT DELETE THIS LINE/,$$c' > eddep
echo '# DO NOT DELETE THIS LINE' >> eddep
echo '# Make depend depends on it' >> eddep
echo '.' >> eddep
echo '$$r makedep' >> eddep
echo 'w' >> eddep
rm -f PCR-Makefile.bak
mv PCR-Makefile PCR-Makefile.bak
cp PCR-Makefile.bak PCR-Makefile
chmod u+w PCR-Makefile
ex - PCR-Makefile < eddep
-if [ ! -w PCR-Makefile.bak ] ; then chmod u-w PCR-Makefile ; fi
rm -f eddep makedep
# DO NOT DELETE THIS LINE
# Make depend depends on it
reclaim.o : reclaim.c ../ansi/stdio.h ../config/PCR←StdTypes.h \
/import/gnu/lib/gcc-include/stdarg.h ../posix/stddef.h \
../posix/host/stddef.h gc←private.h gc.h config.h ../posix/errno.h \
../host/errno.h /usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
allochblk.o : allochblk.c ../ansi/stdio.h ../config/PCR←StdTypes.h \
/import/gnu/lib/gcc-include/stdarg.h ../posix/stddef.h \
../posix/host/stddef.h gc←private.h gc.h config.h ../posix/errno.h \
../host/errno.h /usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
misc.o : misc.c ../ansi/stdio.h ../config/PCR←StdTypes.h \
/import/gnu/lib/gcc-include/stdarg.h ../posix/stddef.h \
../posix/host/stddef.h ../posix/signal.h ../sig/PCR←Sig.h \
../config/PCR←OS.h ../sig/PCR←SigTypes.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h gc←private.h gc.h config.h ../posix/errno.h \
../host/errno.h /usr/include/sys/errno.h gc←headers.h ../posix/time.h \
../host/time.h
alloc.o : alloc.c ../ansi/stdio.h ../config/PCR←StdTypes.h \
/import/gnu/lib/gcc-include/stdarg.h ../posix/stddef.h \
../posix/host/stddef.h ../posix/signal.h ../sig/PCR←Sig.h \
../config/PCR←OS.h ../sig/PCR←SigTypes.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h gc←private.h gc.h config.h ../posix/errno.h \
../host/errno.h /usr/include/sys/errno.h gc←headers.h ../posix/time.h \
../host/time.h
mach←dep.o : mach←dep.c gc←private.h gc.h ../posix/stddef.h \
../posix/host/stddef.h config.h ../posix/errno.h ../host/errno.h \
/usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h ../ansi/stdio.h \
../config/PCR←StdTypes.h /import/gnu/lib/gcc-include/stdarg.h \
../posix/setjmp.h ../config/PCR←Arch.h
os←dep.o : os←dep.c gc←private.h gc.h ../posix/stddef.h \
../posix/host/stddef.h config.h ../posix/errno.h ../host/errno.h \
/usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h ../ansi/stdio.h \
../config/PCR←StdTypes.h /import/gnu/lib/gcc-include/stdarg.h \
../posix/signal.h ../sig/PCR←Sig.h ../config/PCR←OS.h ../sig/PCR←SigTypes.h \
/usr/include/sys/mman.h /usr/include/sys/syscall.h
mark←roots.o : mark←roots.c ../ansi/stdio.h ../config/PCR←StdTypes.h \
/import/gnu/lib/gcc-include/stdarg.h ../posix/stddef.h \
../posix/host/stddef.h gc←private.h gc.h config.h ../posix/errno.h \
../host/errno.h /usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
headers.o : headers.c gc←private.h gc.h ../posix/stddef.h \
../posix/host/stddef.h config.h ../posix/errno.h ../host/errno.h \
/usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
mark.o : mark.c ../ansi/stdio.h ../config/PCR←StdTypes.h \
/import/gnu/lib/gcc-include/stdarg.h ../posix/stddef.h \
../posix/host/stddef.h gc←private.h gc.h config.h ../posix/errno.h \
../host/errno.h /usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
obj←map.o : obj←map.c gc←private.h gc.h ../posix/stddef.h \
../posix/host/stddef.h config.h ../posix/errno.h ../host/errno.h \
/usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
pcr←interface.o : pcr←interface.c gc←private.h gc.h ../posix/stddef.h \
../posix/host/stddef.h config.h ../posix/errno.h ../host/errno.h \
/usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
black←list.o : black←list.c gc←private.h gc.h ../posix/stddef.h \
../posix/host/stddef.h config.h ../posix/errno.h ../host/errno.h \
/usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
finalize.o : finalize.c gc.h ../posix/stddef.h ../posix/host/stddef.h \
gc←private.h config.h ../posix/errno.h ../host/errno.h \
/usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
new←hblk.o : new←hblk.c ../ansi/stdio.h ../config/PCR←StdTypes.h \
/import/gnu/lib/gcc-include/stdarg.h ../posix/stddef.h \
../posix/host/stddef.h gc←private.h gc.h config.h ../posix/errno.h \
../host/errno.h /usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
real←malloc.o : real←malloc.c
dynamic←load.o : dynamic←load.c gc←private.h gc.h ../posix/stddef.h \
../posix/host/stddef.h config.h ../posix/errno.h ../host/errno.h \
/usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h ../ansi/stdio.h \
../config/PCR←StdTypes.h /import/gnu/lib/gcc-include/stdarg.h \
/usr/include/dlfcn.h /usr/include/link.h /usr/include/a.out.h \
/usr/include/machine/a.out.h /usr/include/sys/exec.h
debug←malloc.o : debug←malloc.c gc←private.h gc.h ../posix/stddef.h \
../posix/host/stddef.h config.h ../posix/errno.h ../host/errno.h \
/usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
malloc.o : malloc.c ../ansi/stdio.h ../config/PCR←StdTypes.h \
/import/gnu/lib/gcc-include/stdarg.h ../posix/stddef.h \
../posix/host/stddef.h gc←private.h gc.h config.h ../posix/errno.h \
../host/errno.h /usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h
stubborn.o : stubborn.c gc←private.h gc.h ../posix/stddef.h \
../posix/host/stddef.h config.h ../posix/errno.h ../host/errno.h \
/usr/include/sys/errno.h gc←headers.h ../posix/sys/types.h \
../posix/host/sys/types.h /usr/include/sys/stdtypes.h \
/usr/include/sys/sysmacros.h ../posix/time.h ../host/time.h