# HG changeset patch # User dietmar.hahn@xxxxxxxxxxxxxxxxxxx # Node ID 70e46673cbb9816b9917d74de916b8e8fa141ad0 # Parent 9fbaf07d3f670b96d6a1653a002f5ca3db895fc8 Fixed "multiple common of `ia64_boot_paramP'" and added ARCH_LDFLAGS to recognize such things during make. Signed-off-by: Dietmar Hahn diff -r 9fbaf07d3f67 -r 70e46673cbb9 extras/mini-os/arch/ia64/arch.mk --- a/extras/mini-os/arch/ia64/arch.mk Thu Mar 8 09:50:25 2007 -0700 +++ b/extras/mini-os/arch/ia64/arch.mk Fri Mar 9 09:18:51 2007 +0100 @@ -3,3 +3,5 @@ ARCH_ASFLAGS := -x assembler-with-cpp ARCH_ASFLAGS := -x assembler-with-cpp ARCH_ASFLAGS += -mfixed-range=f2-f5,f12-f15,f32-f127 -fomit-frame-pointer ARCH_ASFLAGS += -fno-builtin -fno-common -fno-strict-aliasing -mconstant-gp + +ARCH_LDFLAGS = -warn-common diff -r 9fbaf07d3f67 -r 70e46673cbb9 extras/mini-os/arch/ia64/common.c --- a/extras/mini-os/arch/ia64/common.c Thu Mar 8 09:50:25 2007 -0700 +++ b/extras/mini-os/arch/ia64/common.c Fri Mar 9 09:18:51 2007 +0100 @@ -59,6 +59,9 @@ shared_info_t *HYPERVISOR_shared_info = struct machine_fw machineFwG; +/* This pointer is initialized in ia64.S with the address of the boot param + * area passed by the bootloader. */ +struct xen_ia64_boot_param* ia64_boot_paramP; struct xen_ia64_boot_param ia64BootParamG; char boot_cmd_line[COMMAND_LINE_SIZE+1]; @@ -104,6 +107,7 @@ map_pal_code(void) xen_set_virtual_psr_ic(1); } +/* In ivt.S */ extern char hypervisor_callback; static void @@ -139,7 +143,6 @@ static void static void init_boot_params(void) { - /* ia64_boot_paramP is initialised in ia64.S! */ ia64BootParamG.command_line = SWAP(ia64_boot_paramP->command_line); ia64BootParamG.efi_systab = SWAP(ia64_boot_paramP->efi_systab); ia64BootParamG.efi_memmap = SWAP(ia64_boot_paramP->efi_memmap); diff -r 9fbaf07d3f67 -r 70e46673cbb9 extras/mini-os/include/ia64/os.h --- a/extras/mini-os/include/ia64/os.h Thu Mar 8 09:50:25 2007 -0700 +++ b/extras/mini-os/include/ia64/os.h Fri Mar 9 09:18:51 2007 +0100 @@ -52,7 +52,7 @@ void arch_print_info(void); /* in commo /* Size of xen_ia64_boot_param.command_line */ #define COMMAND_LINE_SIZE 512 -struct xen_ia64_boot_param* ia64_boot_paramP; +extern struct xen_ia64_boot_param* ia64_boot_paramP; extern struct xen_ia64_boot_param ia64BootParamG; extern char boot_cmd_line[]; extern efi_system_table_t* efiSysTableP;