]> xenbits.xensource.com Git - unikraft/unikraft.git/commitdiff
plat/kvm: Update linker.uk to link image for Arm64
authorWei Chen <Wei.Chen@arm.com>
Fri, 14 Sep 2018 07:57:05 +0000 (07:57 +0000)
committerSimon Kuenzer <simon.kuenzer@neclab.eu>
Fri, 14 Sep 2018 19:30:04 +0000 (21:30 +0200)
Update linker.uk to support link Arm64 image to aarch64elf
format.

Signed-off-by: Wei Chen <Wei.Chen@arm.com>
Reviewed-by: Simon Kuenzer <simon.kuenzer@neclab.eu>
plat/kvm/Linker.uk

index 20fe1d2e42624c025140d5b8439d369ead6669f3..daf2efe6eeb908e92504ec7a7ed6a8bd7cdd3ac4 100644 (file)
@@ -1,6 +1,11 @@
 ifeq (x86_64,$(CONFIG_UK_ARCH))
 KVM_LDSCRIPT  := $(CONFIG_UK_BASE)/plat/kvm/x86/link64.lds
 KVM_LDFLAGS-y += -Wl,-m,elf_x86_64
+else ifeq (arm64,$(CONFIG_UK_ARCH))
+KVM_LDSCRIPT_SRC := $(CONFIG_UK_BASE)/plat/kvm/arm/link64.lds.S
+KVM_LDSCRIPT     := $(call src2lds,libkvmplat,$(KVM_LDSCRIPT_SRC))
+KVM_LDFLAGS-y   += -Wl,-m,aarch64elf
+$(eval $(call buildrule,libkvmplat,$(KVM_LDSCRIPT_SRC),$(KVM_LDSCRIPT)))
 endif
 
 ##
@@ -16,7 +21,7 @@ $(KVM_IMAGE): $(KVM_LINK) $(KVM_LINK-y) $(UK_LINK) $(UK_LINK-y) $(KVM_LDSCRIPT)
                        $(UK_LINK) $(UK_LINK-y) -o $@.ld.o)
        $(call build_cmd,OBJCOPY,,$@.o,\
               $(OBJCOPY) -w -G kvmos_* -G _libkvmplat_entry $@.ld.o $@.o)
-ifeq (x86_64,$(CONFIG_UK_ARCH))
+ifneq ($(filter x86_64 arm64,$(CONFIG_UK_ARCH)),)
        $(call build_cmd,LD,,$@,\
               $(LD) $(LDFLAGS) $(LDFLAGS-y) \
                     $(KVM_LDFLAGS) $(KVM_LDFLAGS-y) \