790edb61c0
This patch implements build infrastructure. Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn> Reviewed-by: Arnd Bergmann <arnd@arndb.de>
95 lines
2.9 KiB
Makefile
95 lines
2.9 KiB
Makefile
#
|
|
# arch/unicore32/Makefile
|
|
#
|
|
# This file is included by the global makefile so that you can add your own
|
|
# architecture-specific flags and dependencies.
|
|
#
|
|
# This file is subject to the terms and conditions of the GNU General Public
|
|
# License. See the file "COPYING" in the main directory of this archive
|
|
# for more details.
|
|
#
|
|
# Copyright (C) 2002~2010 by Guan Xue-tao
|
|
#
|
|
ifneq ($(SUBARCH),$(ARCH))
|
|
ifeq ($(CROSS_COMPILE),)
|
|
CROSS_COMPILE := $(call cc-cross-prefix, unicore32-linux-)
|
|
endif
|
|
endif
|
|
|
|
LDFLAGS_vmlinux := -p --no-undefined -X
|
|
|
|
OBJCOPYFLAGS := -O binary -R .note -R .note.gnu.build-id -R .comment -S
|
|
|
|
# Never generate .eh_frame
|
|
KBUILD_CFLAGS += $(call cc-option,-fno-dwarf2-cfi-asm)
|
|
|
|
# Never use hard float in kernel
|
|
KBUILD_CFLAGS += -msoft-float
|
|
|
|
ifeq ($(CONFIG_FRAME_POINTER),y)
|
|
KBUILD_CFLAGS += -mno-sched-prolog
|
|
endif
|
|
|
|
CHECKFLAGS += -D__unicore32__
|
|
|
|
head-y := arch/unicore32/kernel/head.o
|
|
head-y += arch/unicore32/kernel/init_task.o
|
|
|
|
core-y += arch/unicore32/kernel/
|
|
core-y += arch/unicore32/mm/
|
|
|
|
libs-y += arch/unicore32/lib/
|
|
|
|
ASM_GENERATED_DIR := $(srctree)/arch/unicore32/include/generated
|
|
LINUXINCLUDE += -I$(ASM_GENERATED_DIR)
|
|
|
|
ASM_GENERIC_HEADERS := atomic.h auxvec.h
|
|
ASM_GENERIC_HEADERS += bitsperlong.h bug.h bugs.h
|
|
ASM_GENERIC_HEADERS += cputime.h current.h
|
|
ASM_GENERIC_HEADERS += device.h div64.h
|
|
ASM_GENERIC_HEADERS += emergency-restart.h errno.h
|
|
ASM_GENERIC_HEADERS += fb.h fcntl.h ftrace.h
|
|
ASM_GENERIC_HEADERS += hardirq.h hw_irq.h
|
|
ASM_GENERIC_HEADERS += ioctl.h ioctls.h ipcbuf.h irq_regs.h
|
|
ASM_GENERIC_HEADERS += kdebug.h kmap_types.h
|
|
ASM_GENERIC_HEADERS += local.h
|
|
ASM_GENERIC_HEADERS += mman.h module.h msgbuf.h
|
|
ASM_GENERIC_HEADERS += param.h parport.h percpu.h poll.h posix_types.h
|
|
ASM_GENERIC_HEADERS += resource.h
|
|
ASM_GENERIC_HEADERS += scatterlist.h sections.h segment.h sembuf.h serial.h
|
|
ASM_GENERIC_HEADERS += setup.h shmbuf.h shmparam.h
|
|
ASM_GENERIC_HEADERS += siginfo.h signal.h sizes.h
|
|
ASM_GENERIC_HEADERS += socket.h sockios.h stat.h statfs.h swab.h syscalls.h
|
|
ASM_GENERIC_HEADERS += termbits.h termios.h topology.h types.h
|
|
ASM_GENERIC_HEADERS += ucontext.h unaligned.h user.h
|
|
ASM_GENERIC_HEADERS += vga.h
|
|
ASM_GENERIC_HEADERS += xor.h
|
|
|
|
archprepare:
|
|
ifneq ($(ASM_GENERATED_DIR), $(wildcard $(ASM_GENERATED_DIR)))
|
|
$(Q)mkdir -p $(ASM_GENERATED_DIR)/asm
|
|
$(Q)$(foreach a, $(ASM_GENERIC_HEADERS), \
|
|
echo '#include <asm-generic/$a>' \
|
|
> $(ASM_GENERATED_DIR)/asm/$a; )
|
|
endif
|
|
|
|
boot := arch/unicore32/boot
|
|
|
|
# Default target when executing plain make
|
|
KBUILD_IMAGE := zImage
|
|
|
|
all: $(KBUILD_IMAGE)
|
|
|
|
zImage Image uImage: vmlinux
|
|
$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
|
|
|
|
MRPROPER_DIRS += $(ASM_GENERATED_DIR)
|
|
|
|
archclean:
|
|
$(Q)$(MAKE) $(clean)=$(boot)
|
|
|
|
define archhelp
|
|
echo '* zImage - Compressed kernel image (arch/$(ARCH)/boot/zImage)'
|
|
echo ' Image - Uncompressed kernel image (arch/$(ARCH)/boot/Image)'
|
|
echo ' uImage - U-Boot wrapped zImage'
|
|
endef
|