]> rtime.felk.cvut.cz Git - arc.git/blob - system/kernel/makefile
Merge with mahi-application
[arc.git] / system / kernel / makefile
1 \r
2 \r
3 #VPATH += $(ROOTDIR)/arch/arm/arm_cm3/kernel\r
4 vpath-y += $(ARCH_PATH-y)/kernel\r
5 #obj-y += asm_sample.o\r
6 #CFLAGS_asm_sample.o += -O3\r
7 obj-y += arch_krn.o\r
8 obj-$(CFG_HC1X) += arch_irq.o\r
9 #obj-y += stm32f10x_it.o\r
10 \r
11 # object files \r
12 obj-y += event.o\r
13 obj-y += init.o\r
14 #obj-y += trusted.o\r
15 obj-y += arch.o\r
16 obj-y += task.o\r
17 #obj-y += task_i.o\r
18 obj-y += resource.o\r
19 #obj-y += swap.o\r
20 obj-y += alarm.o\r
21 obj-y += sched_table.o\r
22 obj-y += counter.o\r
23 #obj-y += com_internal.o\r
24 #obj-y += create.o\r
25 obj-y += sys_tick.o\r
26 #obj-y += stack.o\r
27 obj-y += isr.o\r
28 obj-y += os_arctest.o\r
29 obj-y += application.o\r
30 obj-$(USE_KERNEL_EXTRA) += sleep.o\r
31 obj-$(USE_KERNEL_EXTRA) += semaphore.o\r
32 \r
33 \r
34 # These are VERY cpu dependent.. remove\r
35 #obj-y += int_ctrl.o\r
36 obj-y += irq.o\r
37 \r
38 # We are compiling the kernel\r
39 dep-$(CFG_PPC) += arch_offset.h\r
40 dep-y += asm_offset.h\r
41 #dep-y += kernel_offset.h\r
42 dep-$(CFG_ARM_CM3) += arch_offset.h\r
43 \r
44 \r
45 ifeq ($(COMPILER),gcc)\r
46 # ARM assembler generates "define STACK_APA $12". The extra '$' we want to go.\r
47 # Assembler offsets\r
48 %_offset.h: %_offset.c\r
49         @echo "  >> generating $@ from $<"\r
50         $(Q)$(CC) -S $(CFLAGS) -o $(@:.h=.s) $(addprefix -I,$(inc-y)) $(addprefix -D,$(def-y)) $<\r
51         $(Q)gawk '/.*define/ { print $$1 " " $$2 " " gensub("#","","g",$$3) }' $(@:.h=.s)  > $@\r
52 \r
53 # Assembler offsets\r
54 asm_offset.h: asm_offset.c\r
55         @echo "  >> asm offset gen $<"\r
56         $(Q)$(CC) -S $(CFLAGS) -o $(<:.c=.s) $(addprefix -I,$(inc-y)) $(addprefix -D,$(def-y))  $<\r
57         @$(SED) -e "/#define/!d" -e "s/#//2g" $(<:.c=.s) > $@   \r
58         @rm     $(<:.c=.s)\r
59 endif\r
60 \r
61 ifeq ($(COMPILER),cw)\r
62 # The "\r" in the awk is a little strange...sed and awk if that does not work \r
63 #  sed -e '/.apa/!d' -e '/OBJ/!d' -e 's/\[//' 123.tmp | gawk '{ print "#define " $9 " " $4 }'\r
64 \r
65 %_offset.h: %_offset.c\r
66         @echo "  >> generating $@ from $<"\r
67         $(Q)$(CC) -dis $(CFLAGS) $(addprefix -I,$(inc-y)) $(addprefix -D,$(def-y)) $< > 123.tmp\r
68         $(Q)gawk '$$9 ~/.apa/ && $$0 ~/OBJ/ { gsub(/\r/,""); printf("#define %s %d\n",$$10,$$5-100) }' 123.tmp > $@\r
69 endif\r
70 \r
71 #VPATH += ..\r
72 VPATH += $(ROOTDIR)/system/kernel\r
73 VPATH += $(ROOTDIR)/arch/$(ARCH_FAM)/$(ARCH)/kernel\r
74 VPATH += $(ROOTDIR)/arch/$(ARCH_FAM)/$(ARCH)/drivers\r
75 \r
76 inc-y += .\r
77 inc-y += $(ROOTDIR)/drivers/include\r
78 inc-y += $(ROOTDIR)/arch/$(ARCH_FAM)/$(ARCH)/kernel\r
79 inc-y += $(ROOTDIR)/arch/$(ARCH_FAM)/$(ARCH)/drivers\r
80 inc-y += $(ROOTDIR)/arch/$(ARCH_FAM)/$(ARCH)/config\r
81 inc-y += $(ROOTDIR)/arch/$(ARCH)\r
82 inc-y += $(ROOTDIR)/include/$(ARCH_FAM)\r
83  \r
84 \r
85 \r