summaryrefslogtreecommitdiff
path: root/target/arm/Makefile
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2010-12-30 22:45:29 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2010-12-30 22:45:29 +0100
commit220a96f9926788ed531717f78e44fdf1e7ab3b34 (patch)
tree406f65eea71fabd8cf66c2bd1108ec63f8c349ee /target/arm/Makefile
parent38af8185ea05a1c5d1abb32a68a025e3b4afa4d6 (diff)
rework architecture / embedded systems concept
Make configuration of new targets cheap. Just add a new file in target/arch/sys-enabled/foo. See other files for syntax. While doing runtime tests with the new infrastructure I've updated a lot of other stuff: - gcc 4.5.2 - uClibc 0.9.32-rc1 (NPTL) - strongswan, php, miredo, parted, util-linux-ng, e2fsprogs I promise, this is the last big fat commit this year ;)
Diffstat (limited to 'target/arm/Makefile')
-rw-r--r--target/arm/Makefile57
1 files changed, 43 insertions, 14 deletions
diff --git a/target/arm/Makefile b/target/arm/Makefile
index d671ee338..17ed6b4b5 100644
--- a/target/arm/Makefile
+++ b/target/arm/Makefile
@@ -7,30 +7,59 @@ include $(TOPDIR)/mk/modules.mk
include $(TOPDIR)/mk/kernel-build.mk
include $(TOPDIR)/mk/image.mk
-KERNEL:=$(LINUX_DIR)/vmlinux
+KERNEL:=$(LINUX_DIR)/kernel-adk
+LOADADDR:=0x20008000
-ifeq ($(FS),archive)
+$(TOOLS_BUILD_DIR):
+ @mkdir -p $(TOOLS_BUILD_DIR)
+
+tools-compile: $(TOOLS_BUILD_DIR)
+ $(MAKE) -C ../tools/uboot-mkimage
+
+kernel-install: tools-compile
+ gzip -9 < $(LINUX_DIR)/arch/arm/boot/Image > ${BUILD_DIR}/Image.gz
+ PATH='${TARGET_PATH}' mkimage -A arm -O linux -T kernel -C gzip \
+ -a ${LOADADDR} -e ${LOADADDR} -d ${BUILD_DIR}/Image.gz \
+ -n foxg20 $(KERNEL) $(MAKE_TRACE)
+
+ifeq ($(ADK_TARGET_FS),nfsroot)
+imageinstall: kernel-install ${BIN_DIR}/${ROOTFSUSERTARBALL}
+ @cp $(KERNEL) $(TARGET_KERNEL)
+ @echo 'Type dhcp via u-boot prompt to load kernel'
+ @echo 'After that type bootm to load the kernel'
+endif
+ifeq ($(ADK_TARGET_FS),mmc)
+imageinstall: kernel-install $(BIN_DIR)/$(ROOTFSTARBALL)
+ @echo "The RootFS tarball is:"
+ @echo "$(BIN_DIR)/$(ROOTFSTARBALL)"
+ @echo 'Before booting from MicroSD card you need to set following u-boot environment variable:'
+ @echo "setenv bootcmd 'mmc init; sleep 1; fatload mmc 0 0x22000000 kernel; bootm 0x22000000'"
+ @echo "saveenv"
+ @echo
+ @echo "Boot the board via network and use adkinstall."
+ @echo "If you just want to update, use adkupdate."
+endif
+ifeq ($(ADK_TARGET_FS),archive)
imageinstall: $(BIN_DIR)/$(ROOTFSTARBALL)
- @cp $(KERNEL) $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel
- @echo 'The kernel file is: ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel'
+ @cp $(KERNEL) $(TARGET_KERNEL)
+ @echo 'The kernel file is: ${TARGET_KERNEL}'
@echo "The RootFS tarball is: $(BIN_DIR)/$(ROOTFSTARBALL)"
@echo "Use following command to create a QEMU Image:"
@echo "sudo ./scripts/create-image.sh -f $(ADK_TARGET_ROOTFS) qemu-${CPU_ARCH}.img $(BIN_DIR)/$(ROOTFSTARBALL)"
@echo "Start qemu with following options:"
- @echo 'qemu-system-arm -nographic -kernel $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel -hda qemu-${CPU_ARCH}.img -append "root=/dev/hda1"'
+ @echo 'qemu-system-arm -nographic -kernel $(TARGET_KERNEL) -hda qemu-${CPU_ARCH}.img -append "root=/dev/hda1"'
endif
-
-ifeq ($(FS),initramfs)
+ifeq ($(ADK_TARGET_FS),initramfs)
imageinstall: $(BIN_DIR)/$(INITRAMFS)
- @cp $(KERNEL) $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel
- @echo 'The kernel file is: ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel'
+ @cp $(KERNEL) $(TARGET_KERNEL)
+ @echo 'The kernel file is: ${TARGET_KERNEL}'
@echo 'The initramfs image is: ${BIN_DIR}/${INITRAMFS}'
- @echo 'qemu-system-mips -nographic -M malta -kernel $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel -initrd ${BIN_DIR}/${INITRAMFS}'
+ @echo 'qemu-system-arm -nographic -kernel $(TARGET_KERNEL) -initrd ${BIN_DIR}/${INITRAMFS}'
endif
-ifeq ($(FS),initramfs-piggyback)
+ifeq ($(ADK_TARGET_FS),initramfs-piggyback)
imageinstall: ${BUILD_DIR}/${INITRAMFS_PIGGYBACK} createinitramfs
- @cp $(KERNEL) $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel
- @echo 'The kernel+initramfs file is: ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel'
+ @cp $(KERNEL) $(TARGET_KERNEL)
+ @echo 'The kernel+initramfs file is: ${TARGET_KERNEL}'
@echo "Start qemu with following command line:"
- @echo 'qemu-system-arm -nographic -kernel $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel'
+ @echo 'qemu-system-arm -nographic -kernel $(TARGET_KERNEL)'
endif