comparison Makefile @ 188:b6685a7ec2bd

Add stub for lwcc
author lost@l-w.ca
date Wed, 11 Jan 2012 20:18:10 -0700
parents 5350ce9f446f
children 8a84141ea6dd
comparison
equal deleted inserted replaced
187:4e12d881df85 188:b6685a7ec2bd
31 31
32 subdirs := lwasm lwlink lwar lwlib lwbasic docs 32 subdirs := lwasm lwlink lwar lwlib lwbasic docs
33 33
34 -include $(subdirs:=/rules.make) 34 -include $(subdirs:=/rules.make)
35 35
36 lwcc_srcs := lwcc.c
37
38 lwcc_srcs := $(addprefix lwcc/,$(lwcc_srcs))
39
40
36 lwasm_objs := $(lwasm_srcs:.c=.o) 41 lwasm_objs := $(lwasm_srcs:.c=.o)
37 lwlink_objs := $(lwlink_srcs:.c=.o) 42 lwlink_objs := $(lwlink_srcs:.c=.o)
38 lwar_objs := $(lwar_srcs:.c=.o) 43 lwar_objs := $(lwar_srcs:.c=.o)
39 lwlib_objs := $(lwlib_srcs:.c=.o) 44 lwlib_objs := $(lwlib_srcs:.c=.o)
40 lwobjdump_objs := $(lwobjdump_srcs:.c=.o) 45 lwobjdump_objs := $(lwobjdump_srcs:.c=.o)
46 lwcc_objs := $(lwcc_srcs:.c=.o)
41 47
42 lwasm_deps := $(lwasm_srcs:.c=.d) 48 lwasm_deps := $(lwasm_srcs:.c=.d)
43 lwlink_deps := $(lwlink_srcs:.c=.d) 49 lwlink_deps := $(lwlink_srcs:.c=.d)
44 lwar_deps := $(lwar_srcs:.c=.d) 50 lwar_deps := $(lwar_srcs:.c=.d)
45 lwlib_deps := $(lwlib_srcs:.c=.d) 51 lwlib_deps := $(lwlib_srcs:.c=.d)
46 lwobjdump_deps := $(lwobjdump_srcs:.c=.d) 52 lwobjdump_deps := $(lwobjdump_srcs:.c=.d)
53 lwcc_deps := $(lwcc_srcs:.c=.d)
47 54
48 .PHONY: lwlink lwasm lwar lwobjdump 55 .PHONY: lwlink lwasm lwar lwobjdump lwcc
49 lwlink: lwlink/lwlink$(PROGSUFFIX) 56 lwlink: lwlink/lwlink$(PROGSUFFIX)
50 lwasm: lwasm/lwasm$(PROGSUFFIX) 57 lwasm: lwasm/lwasm$(PROGSUFFIX)
51 lwar: lwar/lwar$(PROGSUFFIX) 58 lwar: lwar/lwar$(PROGSUFFIX)
52 lwobjdump: lwlink/lwobjdump$(PROGSUFFIX) 59 lwobjdump: lwlink/lwobjdump$(PROGSUFFIX)
60 lwcc: lwcc/lwcc$(PROGSUFFIX)
53 61
54 .PHONY: lwbasic 62 .PHONY: lwbasic
55 lwbasic: lwbasic/lwbasic$(PROGSUFFIX) 63 lwbasic: lwbasic/lwbasic$(PROGSUFFIX)
56 64
57 lwasm/lwasm$(PROGSUFFIX): $(lwasm_objs) lwlib lwasm/rules.make 65 lwasm/lwasm$(PROGSUFFIX): $(lwasm_objs) lwlib lwasm/rules.make
68 76
69 lwar/lwar$(PROGSUFFIX): $(lwar_objs) lwlib lwar/rules.make 77 lwar/lwar$(PROGSUFFIX): $(lwar_objs) lwlib lwar/rules.make
70 @echo Linking $@ 78 @echo Linking $@
71 @$(CC) -o $@ $(lwar_objs) $(LDFLAGS) 79 @$(CC) -o $@ $(lwar_objs) $(LDFLAGS)
72 80
81 lwcc/lwcc$(PROGSUFFIX): $(lwcc_objs) lwlib
82 @echo Linking $@
83 @$(CC) -o $@ $(lwcc_objs) $(LDFLAGS)
84
73 #.PHONY: lwlib 85 #.PHONY: lwlib
74 .INTERMEDIATE: lwlib 86 .INTERMEDIATE: lwlib
75 lwlib: lwlib/liblw.a 87 lwlib: lwlib/liblw.a
76 88
77 lwlib/liblw.a: $(lwlib_objs) lwlib/rules.make 89 lwlib/liblw.a: $(lwlib_objs) lwlib/rules.make
78 @echo Linking $@ 90 @echo Linking $@
79 @$(AR) rc $@ $(lwlib_objs) 91 @$(AR) rc $@ $(lwlib_objs)
80 @$(RANLIB) $@ 92 @$(RANLIB) $@
81 93
82 alldeps := $(lwasm_deps) $(lwlink_deps) $(lwar_deps) $(lwlib_deps) ($lwobjdump_deps) 94 alldeps := $(lwasm_deps) $(lwlink_deps) $(lwar_deps) $(lwlib_deps) ($lwobjdump_deps) $(lwcc_deps)
83 95
84 -include $(alldeps) 96 -include $(alldeps)
85 97
86 extra_clean := $(extra_clean) *~ */*~ 98 extra_clean := $(extra_clean) *~ */*~
87 99
97 109
98 110
99 .PHONY: clean 111 .PHONY: clean
100 clean: $(cleantargs) 112 clean: $(cleantargs)
101 @echo "Cleaning up" 113 @echo "Cleaning up"
102 @rm -f lwlib/liblw.a lwasm/lwasm$(PROGSUFFIX) lwlink/lwlink$(PROGSUFFIX) lwlink/lwobjdump$(PROGSUFFIX) lwar/lwar$(PROGSUFFIX) 114 @rm -f lwlib/liblw.a lwasm/lwasm$(PROGSUFFIX) lwlink/lwlink$(PROGSUFFIX) lwlink/lwobjdump$(PROGSUFFIX) lwar/lwar$(PROGSUFFIX) lwcc/lwcc$(PROGSUFFIX)
103 @rm -f $(lwasm_objs) $(lwlink_objs) $(lwar_objs) $(lwlib_objs) $(lwobjdump_objs) 115 @rm -f $(lwasm_objs) $(lwlink_objs) $(lwar_objs) $(lwlib_objs) $(lwobjdump_objs) $(lwcc_objs)
104 @rm -f $(extra_clean) 116 @rm -f $(extra_clean)
105 @rm -f */*.exe 117 @rm -f */*.exe
106 118
107 .PHONY: realclean 119 .PHONY: realclean
108 realclean: clean $(realcleantargs) 120 realclean: clean $(realcleantargs)