aboutsummaryrefslogtreecommitdiffstats
path: root/test/ccured_olden/perimeter/Makefile
blob: 2e0ad6965fcecb14fdaa8655c355c432c71059a3 (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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
# /* For copyright information, see olden_v1.01/COPYRIGHT */
.KEEP_STATE:
SRCS     = main.c maketree.c

OLDEN_DIR=/u/ac/carlisle/olden_v1.01
RCC = $(OLDEN_DIR)/mcc/sparc/backend/mcc
CPP = gcc -E -U__GNUC__ -D_NO_LONGLONG
#CPPFLAGS = -DVERIFY_AFFINITIES 
CPPFLAGS = 
#LIBFLAGS = "CPPFLAGS=-DPROF"
#LIBFLAGS = "CPPFLAGS=-DVISUALIZE" "VFLAG=-v"
LIBFLAGS =
#PFLAG = -p
PFLAG =
PLIBOBJS    = plain.o plain2.o
LIBOBJS     = libolden.a
OBJS     = $(SRCS:%.c=%.o)  args.o
ROBJS    = $(SRCS:%.c=%.r.o) args.o
LIBLINK     = $(LIBOBJS:%=$(OLDEN_DIR)/runtime/%)
RLIBLINK    = $(PLIBOBJS:%=$(OLDEN_DIR)/runtime/%)
INCDIRS     = /usr/include $(OLDEN_DIR)/runtime
NODELIBS =
LIBDIRS     =

CC    = cc
#sm: CFLAGS      =
CFLAGS      = -O2


# sm:
PLAIN=1
all: defaulttarget

ifdef PLAIN
ifdef _MSVC
EXTOBJ = .obj
OBJOUT = /Fo
EXEOUT = /Fe
CFLAGS = /DPLAIN
CONLY  = /c
CC     = cl
else
EXTOBJ = .o
OBJOUT = -o
EXEOUT = -o
CFLAGS += -DPLAIN
CONLY  = -c
CC     = gcc -arch ppc
CCOMP=../../../ccomp
CCOMPFLAGS=-dump-c

endif

OBJS = maketree$(EXTOBJ) main$(EXTOBJ)

%.obj : %.c
	$(CC) $(CONLY) $(CFLAGS) $< $(OBJOUT)$@


defaulttarget: $(OBJS)
	$(CC) $(CFLAGS) $(OBJS) $(EXEOUT)perimeter.exe
endif

perm: $(OBJS) target
	/usr/bin/cmmd-ld \
	-comp $(CC) $(OBJS) $(LIBLINK) -v -o /scratch1/carlisle/perm   \
	$(LIBDIRS:%=-L%) $(NODELIBS:%=-l%)

plain: $(ROBJS) target
	/usr/bin/cmmd-ld \
	-comp $(CC) $(ROBJS) $(RLIBLINK) -v -o /scratch1/carlisle/plainperm   \
	$(LIBDIRS:%=-L%) $(NODELIBS:%=-l%)

ifndef PLAIN
args.s: args.c
	/lib/cpp $(CPPFLAGS) $(INCDIRS:%=-I%) args.c | $(RCC) > args.s
endif

%.s:    %.c
	$(CPP) -DFUTURES  $(CPPFLAGS) $(INCDIRS:%=-I%) $< | $(RCC) $(PFLAG) -n -m -k > $*.s


%.p.s:    %.c
	/lib/cpp -DPLAIN $(CPPFLAGS) $(INCDIRS:%=-I%) $< | $(RCC) -f > $*.p.s

%.o:	%.s
	$(CC) $(CFLAGS) -c $<


%.r.o:	%.p.s
	$(CC) $(CFLAGS) -c $< -o $*.r.o

target: 
	cd $(OLDEN_DIR)/runtime; make $(LIBFLAGS)

clean:
	rm -f $(TARGET) $(OBJS) *.exe *.o *.obj *~ .make.state .nse_depinfo *.s *.light.c