add some more components to armeb raspi kernel
[AROS.git] / arch / armeb-raspi / boot / mmakefile.src
blob469aeb370aa66d6b045478bcd127bddb58ba0098
1 # $Id $
3 include $(SRCDIR)/config/aros.cfg
5 TARGETDIR       := $(GENDIR)/$(CURDIR)
6 FILES           := boot mmu kprintf support vc_mb serialdebug elf devicetree \
7                    bc/vars bc/font8x14 bc/screen_fb vc_fb
8 USER_CFLAGS     := -DUSE_UBOOT -ffixed-r8 -Wall -fno-builtin -O2 -mcpu=cortex-a7
9 KERNEL_LDFLAGS  =
10 USER_INCLUDES   := -isystem $(SRCDIR)/$(CURDIR)/include -I$(SRCDIR)/rom/openfirmware
12 ARM_BSP := aros-$(AROS_TARGET_CPU)-bsp.rom
14 #MM- distfiles-raspi-armeb : distfiles-raspi-be
16 #MM distfiles-raspi-be : \
17 #MM kernel-raspi-armeb \
18 #MM kernel-package-raspi-armeb \
19 #MM distfiles-raspi-be-fw
21 #MM kernel-package-raspi-armeb: \
22 #MM linklibs-stdc-static \
23 #MM kernel-dos \
24 #MM kernel-bootloader \
25 #MM kernel-dosboot \
26 #MM kernel-oop \
27 #MM kernel-utility \
28 #MM kernel-debug \
29 #MM kernel-expansion \
30 #MM kernel-openfirmware \
31 #MM kernel-graphics \
32 #MM kernel-cgxbootpic \
33 #MM kernel-intuition \
34 #MM kernel-partition \
35 #MM kernel-layers \
36 #MM kernel-timer \
37 #MM kernel-lddemon \
38 #MM kernel-hidd \
39 #MM kernel-aros \
40 #MM kernel-misc \
41 #MM kernel-keymap \
42 #MM kernel-input \
43 #MM kernel-gameport \
44 #MM kernel-keyboard \
45 #MM kernel-console \
46 #MM kernel-shell \
47 #MM kernel-shellcommands \
48 #MM kernel-filesystem \
49 #MM kernel-fs-con \
50 #MM kernel-fs-afs \
51 #MM kernel-fs-cdvdfs \
52 #MM kernel-fs-fat \
53 #MM kernel-fs-sfs \
54 #MM kernel-fs-ram \
55 #MM kernel-processor \
56 #MM kernel-mbox-bcm2708 \
57 #MM hidd-i2c \
58 #MM kernel-hidd-gfx \
59 #MM kernel-hidd-kbd \
60 #MM kernel-hidd-mouse \
61 #MM kernel-usb-nopci \
62 #MM kernel-usb-romstrap-raspi \
63 #MM kernel-econsole
65 # MM kernel-sdcard
66 # MM hidd-i2c-bcm2708
67 # MM hidd-vc4gfx
68 # MM kernel-usb-usb2otg
70 #MM kernel-package-raspi-armeb-missing: \
71 #MM kernel-battclock
73 RASPIFW_BRANCH    := master
74 RASPIFW_URI       := https://github.com/raspberrypi/firmware/blob/$(RASPIFW_BRANCH)/boot
75 RASPIFW_FILES     := LICENCE.broadcom bootcode.bin fixup.dat start.elf
77 PKG_LIBS      := aros partition utility oop graphics layers intuition keymap dos debug poseidon cgxbootpic
78 PKG_LIBS_ARCH := expansion
79 PKG_RSRC      := openfirmware misc bootloader dosboot lddemon usbromstartup FileSystem shell shellcommands mbox
80 PKG_RSRC_ARCH := processor
81 PKG_DEVS      := input gameport keyboard console
82 PKG_DEVS_ARCH := timer
83 PKG_HANDLERS  := con ram cdrom sfs fat afs
84 PKG_HIDDS     := gfx mouse keyboard hiddclass i2c
85 PKG_CLASSES   := USB/hid USB/hub USB/bootmouse USB/bootkeyboard USB/massstorage
87 %make_package mmake=kernel-package-raspi-armeb file=$(AROSDIR)/$(ARM_BSP) \
88     libs=$(PKG_LIBS) arch_libs=$(PKG_LIBS_ARCH) res=$(PKG_RSRC) \
89     arch_res=$(PKG_RSRC_ARCH) devs=$(PKG_DEVS) arch_devs=$(PKG_DEVS_ARCH) \
90     handlers=$(PKG_HANDLERS) hidds=$(PKG_HIDDS) classes=$(PKG_CLASSES)
92 #MM
93 distfiles-raspi-be-fw:
94         $(foreach file, $(RASPIFW_FILES), $(shell wget -t 5 -T 15 -c "$(addprefix $(RASPIFW_URI)/, $(addsuffix ?raw=true, $(file)))" -O "$(addprefix $(AROSDIR)/, $(file))"))
96 #MM
97 distfiles-raspi-be-bootimg: $(AROSDIR)/aros-$(AROS_TARGET_CPU)-raspi.img
99 #MM
100 distfiles-raspi-be-bootimg-quick: $(AROSDIR)/aros-$(AROS_TARGET_CPU)-raspi.img
102 $(AROSDIR)/config.txt: $(AROSDIR)/$(ARM_BSP)
103         @printf "kernel=aros-$(AROS_TARGET_CPU)-raspi.img\ninitramfs $(ARM_BSP) 0x00800000" > $@
105 $(AROSDIR)/aros-armeb-raspi.img: $(TARGETDIR)/core.bin.o $(foreach f, $(FILES), $(TARGETDIR)/$(f).o $(TARGETDIR)/$(f).d)
106         $(KERNEL_LD) --be8 --format elf32-bigarm -s --entry=bootstrap --script=$(SRCDIR)/$(CURDIR)/ldscript.lds $(foreach f, $(FILES), $(TARGETDIR)/$(f).o) $ $(TARGETDIR)/core.bin.o -L$(AROS_LIB) -lstdc.static -laeabi -o $(OSGENDIR)/boot/aros-armeb-raspi.img.elf
107         $(TARGET_OBJCOPY) -O binary $(OSGENDIR)/boot/aros-armeb-raspi.img.elf $@
109 $(TARGETDIR)/core.bin.o: $(OSGENDIR)/boot/core.elf
110         cp $(OSGENDIR)/boot/core.elf $(TARGETDIR)/core.bin
111         cd $(TARGETDIR) && $(KERNEL_LD) $(KERNEL_LDFLAGS) --be8 -r --format binary --oformat elf32-bigarm core.bin -o $@
113 distfiles-raspi-be: $(DISTDIR)/aros$(AROS_TARGET_SUFFIX)-raspi-armeb.tar.bz2
115 $(DISTDIR)/aros$(AROS_TARGET_SUFFIX)-raspi-armeb.tar.bz2: $(AROSDIR)/aros-armeb-raspi.img  $(AROSDIR)/$(ARM_BSP) $(AROSDIR)/config.txt
116         %mkdirs_q $(AROSDIR)/S
117         @$(CP) $(SRCDIR)/workbench/s/Startup-Sequence $(AROSDIR)/S/Startup-Sequence
118         @$(MKDIR) -p "$(DISTDIR)"
119         cd $(AROSDIR) && tar -cjf  $@ ./
122 clean ::
123         -$(RM) $(TESTS)
125 $(TARGETDIR)/%.o : %.c
126         %compile_q
128 $(TARGETDIR)/%.o : %.S
129         %compile_q
131 $(TARGETDIR)/%.d : %.c
132         %mkdepend_q
134 DEPS    := $(foreach f, $(FILES), $(TARGETDIR)/$(f).d)
136 -include $(DEPS)
138 %common