Rev 2089 | Rev 2126 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2089 | Rev 2125 | ||
---|---|---|---|
Line 126... | Line 126... | ||
126 | CC = gcc |
126 | CC = gcc |
127 | AS = as |
127 | AS = as |
128 | LD = ld |
128 | LD = ld |
129 | OBJCOPY = objcopy |
129 | OBJCOPY = objcopy |
130 | OBJDUMP = objdump |
130 | OBJDUMP = objdump |
- | 131 | LIBDIR = /usr/lib |
|
131 | else |
132 | else |
132 | CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc |
133 | CC = $(TOOLCHAIN_DIR)/bin/$(TARGET)-gcc |
133 | AS = $(TOOLCHAIN_DIR)/$(TARGET)-as |
134 | AS = $(TOOLCHAIN_DIR)/bin/$(TARGET)-as |
134 | LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld |
135 | LD = $(TOOLCHAIN_DIR)/bin/$(TARGET)-ld |
135 | OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy |
136 | OBJCOPY = $(TOOLCHAIN_DIR)/bin/$(TARGET)-objcopy |
136 | OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump |
137 | OBJDUMP = $(TOOLCHAIN_DIR)/bin/$(TARGET)-objdump |
- | 138 | LIBDIR = $(TOOLCHAIN_DIR)/lib |
|
137 | endif |
139 | endif |
138 | 140 | ||
139 | ## Generic kernel sources |
141 | ## Generic kernel sources |
140 | # |
142 | # |
141 | 143 | ||
Line 237... | Line 239... | ||
237 | test/print/print1.c \ |
239 | test/print/print1.c \ |
238 | test/thread/thread1.c \ |
240 | test/thread/thread1.c \ |
239 | test/sysinfo/sysinfo1.c |
241 | test/sysinfo/sysinfo1.c |
240 | endif |
242 | endif |
241 | 243 | ||
- | 244 | ## Experimental features |
|
- | 245 | # |
|
- | 246 | ||
- | 247 | ifeq ($(CONFIG_EXPERIMENTAL),y) |
|
- | 248 | GENERIC_SOURCES += generic/src/lib/objc.c |
|
- | 249 | EXTRA_OBJECTS = $(LIBDIR)/libobjc.a |
|
- | 250 | EXTRA_FLAGS += -x objective-c |
|
- | 251 | endif |
|
- | 252 | ||
242 | GENERIC_OBJECTS := $(addsuffix .o,$(basename $(GENERIC_SOURCES))) |
253 | GENERIC_OBJECTS := $(addsuffix .o,$(basename $(GENERIC_SOURCES))) |
243 | ARCH_OBJECTS := $(addsuffix .o,$(basename $(ARCH_SOURCES))) |
254 | ARCH_OBJECTS := $(addsuffix .o,$(basename $(ARCH_SOURCES))) |
244 | GENARCH_OBJECTS := $(addsuffix .o,$(basename $(GENARCH_SOURCES))) |
255 | GENARCH_OBJECTS := $(addsuffix .o,$(basename $(GENARCH_SOURCES))) |
245 | 256 | ||
246 | .PHONY: all build config distclean clean archlinks depend disasm |
257 | .PHONY: all build config distclean clean archlinks depend disasm |
Line 277... | Line 288... | ||
277 | arch/$(ARCH)/_link.ld: arch/$(ARCH)/_link.ld.in |
288 | arch/$(ARCH)/_link.ld: arch/$(ARCH)/_link.ld.in |
278 | $(CC) $(DEFS) $(CFLAGS) -D__ASM__ -D__LINKER__ -E -x c $< | grep -v "^\#" > $@ |
289 | $(CC) $(DEFS) $(CFLAGS) -D__ASM__ -D__LINKER__ -E -x c $< | grep -v "^\#" > $@ |
279 | 290 | ||
280 | generic/src/debug/real_map.bin: depend arch/$(ARCH)/_link.ld $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) |
291 | generic/src/debug/real_map.bin: depend arch/$(ARCH)/_link.ld $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) |
281 | $(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab Makefile generic/src/debug/empty_map.o |
292 | $(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab Makefile generic/src/debug/empty_map.o |
282 | $(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/empty_map.o -o $@ -Map kernel.map.pre |
293 | $(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) generic/src/debug/empty_map.o -o $@ -Map kernel.map.pre |
283 | $(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > kernel.objdump |
294 | $(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > kernel.objdump |
284 | tools/genmap.py kernel.map.pre kernel.objdump generic/src/debug/real_map.bin |
295 | tools/genmap.py kernel.map.pre kernel.objdump generic/src/debug/real_map.bin |
285 | # Do it once again, this time to get correct even the symbols |
296 | # Do it once again, this time to get correct even the symbols |
286 | # on architectures, that have bss after symtab |
297 | # on architectures, that have bss after symtab |
287 | $(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab generic/src/debug/real_map.bin generic/src/debug/sizeok_map.o |
298 | $(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab generic/src/debug/real_map.bin generic/src/debug/sizeok_map.o |
288 | $(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/sizeok_map.o -o $@ -Map kernel.map.pre |
299 | $(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) generic/src/debug/sizeok_map.o -o $@ -Map kernel.map.pre |
289 | $(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > kernel.objdump |
300 | $(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > kernel.objdump |
290 | tools/genmap.py kernel.map.pre kernel.objdump generic/src/debug/real_map.bin |
301 | tools/genmap.py kernel.map.pre kernel.objdump generic/src/debug/real_map.bin |
291 | 302 | ||
292 | generic/src/debug/real_map.o: generic/src/debug/real_map.bin |
303 | generic/src/debug/real_map.o: generic/src/debug/real_map.bin |
293 | $(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab $< $@ |
304 | $(OBJCOPY) -I binary -O $(BFD_NAME) -B $(BFD_ARCH) --prefix-sections=symtab $< $@ |
294 | 305 | ||
295 | kernel.raw: depend arch/$(ARCH)/_link.ld $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/real_map.o |
306 | kernel.raw: depend arch/$(ARCH)/_link.ld $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/real_map.o |
296 | $(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) generic/src/debug/real_map.o -o $@ -Map kernel.map |
307 | $(LD) -T arch/$(ARCH)/_link.ld $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) generic/src/debug/real_map.o -o $@ -Map kernel.map |
297 | 308 | ||
298 | kernel.bin: kernel.raw |
309 | kernel.bin: kernel.raw |
299 | $(OBJCOPY) -O $(BFD) kernel.raw kernel.bin |
310 | $(OBJCOPY) -O $(BFD) kernel.raw kernel.bin |
300 | 311 | ||
301 | disasm: kernel.raw |
312 | disasm: kernel.raw |
Line 306... | Line 317... | ||
306 | 317 | ||
307 | %.o: %.s |
318 | %.o: %.s |
308 | $(AS) $(AFLAGS) $< -o $@ |
319 | $(AS) $(AFLAGS) $< -o $@ |
309 | 320 | ||
310 | %.o: %.c |
321 | %.o: %.c |
311 | $(CC) $(DEFS) $(CFLAGS) -c $< -o $@ |
322 | $(CC) $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) -c $< -o $@ |