Rev 1012 | Rev 1027 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 1012 | Rev 1017 | ||
|---|---|---|---|
| Line 147... | Line 147... | ||
| 147 | 147 | ||
| 148 | GENERIC_OBJECTS := $(addsuffix .o,$(basename $(GENERIC_SOURCES))) |
148 | GENERIC_OBJECTS := $(addsuffix .o,$(basename $(GENERIC_SOURCES))) |
| 149 | ARCH_OBJECTS := $(addsuffix .o,$(basename $(ARCH_SOURCES))) |
149 | ARCH_OBJECTS := $(addsuffix .o,$(basename $(ARCH_SOURCES))) |
| 150 | GENARCH_OBJECTS := $(addsuffix .o,$(basename $(GENARCH_SOURCES))) |
150 | GENARCH_OBJECTS := $(addsuffix .o,$(basename $(GENARCH_SOURCES))) |
| 151 | 151 | ||
| 152 | .PHONY: all build config distclean clean archlinks depend boot disasm |
152 | .PHONY: all build config distclean clean archlinks depend disasm |
| 153 | 153 | ||
| 154 | all: |
154 | all: |
| 155 | tools/config.py default $(NARCH) |
155 | tools/config.py default $(NARCH) |
| 156 | ifdef NARCH |
156 | ifdef NARCH |
| 157 | ifneq ($(ARCH), $(NARCH)) |
157 | ifneq ($(ARCH), $(NARCH)) |
| 158 | $(MAKE) -C . clean |
158 | $(MAKE) -C . clean |
| 159 | endif |
159 | endif |
| 160 | endif |
160 | endif |
| 161 | $(MAKE) -C . build |
161 | $(MAKE) -C . build |
| 162 | 162 | ||
| 163 | build: kernel.bin boot disasm |
163 | build: kernel.bin disasm |
| 164 | 164 | ||
| 165 | config: |
165 | config: |
| 166 | -rm Makefile.depend |
166 | -rm Makefile.depend |
| 167 | tools/config.py |
167 | tools/config.py |
| 168 | 168 | ||
| Line 174... | Line 174... | ||
| 174 | clean: |
174 | clean: |
| 175 | -rm -f kernel.bin kernel.raw kernel.map kernel.map.pre kernel.objdump kernel.disasm generic/src/debug/real_map.bin Makefile.depend* generic/include/arch generic/include/genarch arch/$(ARCH)/_link.ld |
175 | -rm -f kernel.bin kernel.raw kernel.map kernel.map.pre kernel.objdump kernel.disasm generic/src/debug/real_map.bin Makefile.depend* generic/include/arch generic/include/genarch arch/$(ARCH)/_link.ld |
| 176 | find generic/src/ arch/*/src/ genarch/src/ test/ -name '*.o' -follow -exec rm \{\} \; |
176 | find generic/src/ arch/*/src/ genarch/src/ test/ -name '*.o' -follow -exec rm \{\} \; |
| 177 | for arch in arch/*; do \ |
177 | for arch in arch/*; do \ |
| 178 | [ -e $$arch/_link.ld ] && rm $$arch/_link.ld 2>/dev/null;\ |
178 | [ -e $$arch/_link.ld ] && rm $$arch/_link.ld 2>/dev/null;\ |
| 179 | $(MAKE) -C $$arch/boot clean; \ |
- | |
| 180 | done;exit 0 |
179 | done;exit 0 |
| 181 | 180 | ||
| 182 | archlinks: |
181 | archlinks: |
| 183 | ln -sfn ../../arch/$(ARCH)/include/ generic/include/arch |
182 | ln -sfn ../../arch/$(ARCH)/include/ generic/include/arch |
| 184 | ln -sfn ../../genarch/include/ generic/include/genarch |
183 | ln -sfn ../../genarch/include/ generic/include/genarch |
| Line 208... | Line 207... | ||
| 208 | $(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/real_map.o -o $@ -Map kernel.map |
207 | $(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/real_map.o -o $@ -Map kernel.map |
| 209 | 208 | ||
| 210 | kernel.bin: kernel.raw |
209 | kernel.bin: kernel.raw |
| 211 | $(OBJCOPY) -O $(BFD) kernel.raw kernel.bin |
210 | $(OBJCOPY) -O $(BFD) kernel.raw kernel.bin |
| 212 | 211 | ||
| 213 | boot: kernel.bin |
- | |
| 214 | if [ -d arch/$(ARCH)/boot ] ; then $(MAKE) -C arch/$(ARCH)/boot build KERNEL_SIZE="`cat kernel.bin | wc -c`" CC=$(CC) AS=$(AS) LD=$(LD) ; fi |
- | |
| 215 | - | ||
| 216 | disasm: kernel.raw |
212 | disasm: kernel.raw |
| 217 | $(OBJDUMP) -d kernel.raw > kernel.disasm |
213 | $(OBJDUMP) -d kernel.raw > kernel.disasm |
| 218 | 214 | ||
| 219 | %.o: %.S |
215 | %.o: %.S |
| 220 | $(CC) $(DEFS) $(AFLAGS) $(CFLAGS) -D__ASM__ -c $< -o $@ |
216 | $(CC) $(DEFS) $(AFLAGS) $(CFLAGS) -D__ASM__ -c $< -o $@ |