1fea25720SGraeme Russ# 2fea25720SGraeme Russ# (C) Copyright 2002-2006 3fea25720SGraeme Russ# Wolfgang Denk, DENX Software Engineering, wd@denx.de. 4fea25720SGraeme Russ# 51a459660SWolfgang Denk# SPDX-License-Identifier: GPL-2.0+ 6fea25720SGraeme Russ# 7fea25720SGraeme Russ 805cbd985SSimon Glassifndef CONFIG_X86_64 90ca2426bSSimon Glassobj-y += bios.o 100ca2426bSSimon Glassobj-y += bios_asm.o 110ca2426bSSimon Glassobj-y += bios_interrupts.o 1205cbd985SSimon Glassendif 13ca5114f9SSimon Glassifndef CONFIG_SPL_BUILD 143954b739SMasahiro Yamadaobj-$(CONFIG_CMD_BOOTM) += bootm.o 15ca5114f9SSimon Glassendif 163954b739SMasahiro Yamadaobj-y += cmd_boot.o 1754834491SBin Mengobj-$(CONFIG_SEABIOS) += coreboot_table.o 18*9f1fad1eSBin Mengobj-y += early_cmos.o 198e366508SSimon Glassobj-$(CONFIG_EFI) += efi/ 2059ec719dSBin Mengobj-y += e820.o 213954b739SMasahiro Yamadaobj-y += gcc.o 223954b739SMasahiro Yamadaobj-y += init_helpers.o 233954b739SMasahiro Yamadaobj-y += interrupts.o 24a274e9caSSimon Glassobj-y += lpc-uclass.o 257f5df8d4SBin Mengobj-y += mpspec.o 26f6220f1aSBin Mengobj-$(CONFIG_ENABLE_MRC_CACHE) += mrccache.o 27cb3b2e62SSimon Glassobj-y += cmd_mtrr.o 285544757cSSimon Glassobj-y += northbridge-uclass.o 29da3fe247SBin Mengobj-$(CONFIG_I8259_PIC) += i8259.o 30da3fe247SBin Mengobj-$(CONFIG_I8254_TIMER) += i8254.o 317ac99be6SSimon Glassobj-y += pinctrl_ich6.o 32b5b6b019SBin Mengobj-y += pirq_routing.o 333954b739SMasahiro Yamadaobj-y += relocate.o 343954b739SMasahiro Yamadaobj-y += physmem.o 35ca0d29e4SAndy Shevchenkoobj-$(CONFIG_INTEL_MID) += pmu.o 3665dd74a6SSimon Glassobj-$(CONFIG_X86_RAMTEST) += ramtest.o 37bb416465SFelipe Balbiobj-$(CONFIG_INTEL_MID) += scu.o 3865e4c0b1SSimon Glassobj-y += sections.o 396388e357SSimon Glassobj-y += sfi.o 403954b739SMasahiro Yamadaobj-y += string.o 413a34cae0SBin Mengobj-$(CONFIG_HAVE_ACPI_RESUME) += acpi_s3.o 4234865a65SMiao Yanifndef CONFIG_QEMU 43867bcb63SSaket Sinhaobj-$(CONFIG_GENERATE_ACPI_TABLE) += acpi_table.o 44fa287b15SMiao Yanendif 455e2400e8SBin Mengobj-y += tables.o 46ca5114f9SSimon Glassifndef CONFIG_SPL_BUILD 473954b739SMasahiro Yamadaobj-$(CONFIG_CMD_ZBOOT) += zimage.o 48ca5114f9SSimon Glassendif 491021af4dSSimon Glassobj-$(CONFIG_HAVE_FSP) += fsp/ 504bbc0245SSimon Glassobj-$(CONFIG_SPL_BUILD) += spl.o 51fea25720SGraeme Russ 52b997abd3SSimon Glassextra-$(CONFIG_USE_PRIVATE_LIBGCC) += lib.a 53fea25720SGraeme Russ 54dd43fa22SMasahiro YamadaNORMAL_LIBGCC = $(shell $(CC) $(PLATFORM_CPPFLAGS) -print-libgcc-file-name) 55b6e53eb3SMasahiro YamadaOBJCOPYFLAGS := --prefix-symbols=__normal_ 56dd43fa22SMasahiro Yamada$(obj)/lib.a: $(NORMAL_LIBGCC) FORCE 57b6e53eb3SMasahiro Yamada $(call if_changed,objcopy) 582dcd4e9eSSimon Glass 59e1b610b0SSimon Glassifeq ($(CONFIG_$(SPL_)X86_64),) 602dcd4e9eSSimon Glassobj-$(CONFIG_EFI_APP) += crt0_ia32_efi.o reloc_ia32_efi.o 61e1b610b0SSimon Glassendif 622dcd4e9eSSimon Glass 632dcd4e9eSSimon Glassifneq ($(CONFIG_EFI_STUB),) 642dcd4e9eSSimon Glass 652dcd4e9eSSimon GlassCFLAGS_REMOVE_reloc_ia32_efi.o += -mregparm=3 662dcd4e9eSSimon GlassCFLAGS_reloc_ia32_efi.o += -fpic -fshort-wchar 672dcd4e9eSSimon Glass 682dcd4e9eSSimon Glass# When building for 64-bit we must remove the i386-specific flags 692dcd4e9eSSimon GlassCFLAGS_REMOVE_reloc_x86_64_efi.o += -mregparm=3 -march=i386 -m32 702dcd4e9eSSimon GlassCFLAGS_reloc_x86_64_efi.o += -fpic -fshort-wchar 712dcd4e9eSSimon Glass 722dcd4e9eSSimon GlassAFLAGS_REMOVE_crt0_x86_64_efi.o += -mregparm=3 -march=i386 -m32 732dcd4e9eSSimon GlassAFLAGS_crt0_x86_64_efi.o += -fpic -fshort-wchar 742dcd4e9eSSimon Glass 752dcd4e9eSSimon Glassextra-$(CONFIG_EFI_STUB_32BIT) += crt0_ia32_efi.o reloc_ia32_efi.o 762dcd4e9eSSimon Glassextra-$(CONFIG_EFI_STUB_64BIT) += crt0_x86_64_efi.o reloc_x86_64_efi.o 775bd828b5SSimon Glass 785bd828b5SSimon Glassendif 795bd828b5SSimon Glass 8095b62b2eSAlexander Grafifneq ($(CONFIG_EFI_STUB)$(CONFIG_CMD_BOOTEFI_HELLO_COMPILE),) 81e1b610b0SSimon Glassifeq ($(CONFIG_$(SPL_)X86_64),) 825bd828b5SSimon Glassextra-y += $(EFI_CRT0) $(EFI_RELOC) 832dcd4e9eSSimon Glassendif 84e1b610b0SSimon Glassendif 85