1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 include $(ADK_TOPDIR
)/rules.mk
5 include $(ADK_TOPDIR
)/mk
/kernel.mk
6 include $(ADK_TOPDIR
)/mk
/modules.mk
7 include $(ADK_TOPDIR
)/mk
/kernel-build.mk
8 include $(ADK_TOPDIR
)/mk
/image.mk
10 KERNEL
:=$(LINUX_DIR
)/vmlinux
11 OSTRIP
:=-R .reginfo
-R .notes
-R .note
-R .comment
-R .mdebug
-R .note.gnu.build-id
13 QEMU_ARGS
:=${ADK_QEMU_ARGS}
14 ifeq ($(ADK_TARGET_QEMU_PPC_MACPPC
),y
)
16 QEMU_ARGS
+=-device e1000
,netdev
=adk0
-netdev user
,id
=adk0
18 ifeq ($(ADK_TARGET_QEMU_PPC_VIRTEX_ML507
),y
)
19 QEMU_ARGS
+=-M virtex-ml507
-m
256 -dtb
$(FW_DIR
)/ppc.dtb
21 ifeq ($(ADK_TARGET_QEMU_PPC_BAMBOO
),y
)
23 QEMU_ARGS
+=-device e1000
,netdev
=adk0
-netdev user
,id
=adk0
27 ifeq ($(ADK_TARGET_FS
),archive
)
29 @echo
"The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)"
30 ifeq ($(ADK_TARGET_QEMU
),y
)
31 @echo
'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
32 @echo
"Use following command to create a QEMU Image:"
33 @echo
"./scripts/create.sh qemu-${ADK_TARGET_CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)"
34 @echo
"Start qemu with following options:"
35 @echo
'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${ADK_TARGET_CPU_ARCH}.img'
38 ifeq ($(ADK_TARGET_FS
),initramfs
)
40 @echo
'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
41 @echo
'The initramfs image is: ${FW_DIR}/${INITRAMFS}'
42 ifeq ($(ADK_TARGET_QEMU
),y
)
43 @echo
"Start qemu with following command line:"
44 @echo
'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS}'
47 ifeq ($(ADK_TARGET_FS
),initramfsarchive
)
49 @echo
'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
50 @echo
"The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)"
52 ifeq ($(ADK_TARGET_FS
),initramfspiggyback
)
54 @echo
'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}'
55 ifeq ($(ADK_TARGET_QEMU
),y
)
56 @echo
"Start qemu with following command line:"
57 @echo
'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL)'
60 ifeq ($(ADK_TARGET_FS
),nfsroot
)
62 @echo
'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
63 @echo
"The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)"
66 # image creation and kernel install
68 $(TARGET_CROSS
)objcopy
$(OSTRIP
) -S
$(KERNEL
) $(BUILD_DIR
)/$(TARGET_KERNEL
)
70 kernel-install
: kernel-strip
71 @cp
$(BUILD_DIR
)/$(TARGET_KERNEL
) $(FW_DIR
)/${TARGET_KERNEL}
74 env
$(KERNEL_MAKE_ENV
) $(MAKE
) -C
"${LINUX_DIR}" $(KERNEL_MAKE_OPTS
) \
75 -j
${ADK_MAKE_JOBS} virtex440-ml507.dtb
$(MAKE_TRACE
)
76 $(CP
) $(LINUX_DIR
)/arch
/powerpc
/boot
/virtex440-ml507.dtb \
79 # filesystem specific targets
80 ifeq ($(ADK_TARGET_FS
),archive
)
81 ifeq ($(ADK_TARGET_QEMU_PPC_VIRTEX_ML507
),y
)
82 imageinstall
: dtb-install
$(FW_DIR
)/$(ROOTFSTARBALL
) targethelp
84 imageinstall
: $(FW_DIR
)/$(ROOTFSTARBALL
) targethelp
87 ifeq ($(ADK_TARGET_FS
),initramfs
)
88 ifeq ($(ADK_TARGET_QEMU_PPC_VIRTEX_ML507
),y
)
89 imageinstall
: dtb-install kernel-install
$(FW_DIR
)/$(INITRAMFS
) targethelp
91 imageinstall
: kernel-install
$(FW_DIR
)/$(INITRAMFS
) targethelp
94 ifeq ($(ADK_TARGET_FS
),initramfsarchive
)
95 imageinstall
: kernel-install
$(FW_DIR
)/$(ROOTFSUSERTARBALL
) targethelp
97 ifeq ($(ADK_TARGET_FS
),initramfspiggyback
)
98 ifeq ($(ADK_TARGET_QEMU_PPC_VIRTEX_ML507
),y
)
99 imageinstall
: dtb-install createinitramfs targethelp
101 imageinstall
: createinitramfs targethelp
104 ifeq ($(ADK_TARGET_FS
),nfsroot
)
105 imageinstall
: kernel-install
$(FW_DIR
)/$(ROOTFSUSERTARBALL
) targethelp