summaryrefslogtreecommitdiff
path: root/PCR-Makefile
blob: 637ceb7e58a9b3dc14f38d828f17ba52424b9b9f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
OBJS= alloc.o reclaim.o allchblk.o misc.o mach_dep.o os_dep.o mark_rts.o headers.o mark.o obj_map.o pcr_interface.o blacklst.o finalize.o new_hblk.o real_malloc.o dynamic_load.o dbg_mlc.o malloc.o stubborn.o

CSRCS= reclaim.c allchblk.c misc.c alloc.c mach_dep.c os_dep.c mark_rts.c headers.c mark.c obj_map.c pcr_interface.c blacklst.c finalize.c new_hblk.c real_malloc.c dynamic_load.c debug_mlc.c malloc.c stubborn.c

SHELL= /bin/sh

# Fix to point to local pcr installation directory.
PCRDIR= /project/ppcr/dev
CC= gcc
CFLAGS= -g -DPCR -I$(PCRDIR) -I$(PCRDIR)/ansi -I$(PCRDIR)/posix

# 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.

default: gc.o

all: gc.o test.o gcpcr

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.
#
depend: $(CSRCS)
	rm -f makedep eddep ; \
    $(CC) -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
	
# DO NOT DELETE THIS LINE