mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-12-24 02:42:18 +01:00
Our last sync with the kernel was 5.1. Even that was a partial one as some patches from 4.x kernels were already missing making the transition to a modern kbuild infeasible. We are so out of sync now, that tracking the patches and backporting them one by one makes little sense and it's going to take ages. This is an attempt to sync up Makefile[.lib/.kbuild]. Unfortunately due to sheer amount of patches this is not easy to review, but that's what we decided during a community call. One of the biggest changes is get rid of partial linking entirely and build .a archives isntead of .o. We diaviate from the kernel on that. Instead of calling a custom script to create the archive symbol table, we call ar with rcTP (isntead of rcSTP) since we want a resulting archive that's sauble with the linker. The only affected platforms are PPC ones. Unfortunately I don't have any of them around to test, but the objdump of the resulting files -- arch/powerpc/lib/built-in.[oa] looks identical. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
96 lines
1.7 KiB
Plaintext
96 lines
1.7 KiB
Plaintext
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* Copyright (C) 2010-2017 CS Systemes d'Information
|
|
* Christophe Leroy <christophe.leroy@c-s.fr>
|
|
*
|
|
* (C) Copyright 2001-2003
|
|
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
|
*
|
|
* Modified by Yuli Barcohen <yuli@arabellasw.com>
|
|
*/
|
|
|
|
OUTPUT_ARCH(powerpc)
|
|
SECTIONS
|
|
{
|
|
/* Read-only sections, merged into text segment: */
|
|
. = + SIZEOF_HEADERS;
|
|
.text :
|
|
{
|
|
arch/powerpc/cpu/mpc8xx/start.o (.text)
|
|
arch/powerpc/cpu/mpc8xx/traps.o (.text*)
|
|
arch/powerpc/lib/built-in.a (.text*)
|
|
drivers/net/built-in.a (.text*)
|
|
|
|
. = DEFINED(env_offset) ? env_offset : .;
|
|
env/embedded.o (.text.environment)
|
|
|
|
*(.text)
|
|
}
|
|
_etext = .;
|
|
PROVIDE (etext = .);
|
|
.rodata :
|
|
{
|
|
*(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
|
|
}
|
|
|
|
/* Read-write section, merged into data segment: */
|
|
. = (. + 0x0FFF) & 0xFFFFF000;
|
|
_erotext = .;
|
|
PROVIDE (erotext = .);
|
|
.reloc :
|
|
{
|
|
_GOT2_TABLE_ = .;
|
|
KEEP(*(.got2))
|
|
KEEP(*(.got))
|
|
_FIXUP_TABLE_ = .;
|
|
KEEP(*(.fixup))
|
|
}
|
|
__got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1;
|
|
__fixup_entries = (. - _FIXUP_TABLE_) >> 2;
|
|
|
|
.data :
|
|
{
|
|
*(.data*)
|
|
*(.sdata*)
|
|
}
|
|
_edata = .;
|
|
PROVIDE (edata = .);
|
|
|
|
. = .;
|
|
|
|
. = ALIGN(4);
|
|
__u_boot_list : {
|
|
KEEP(*(SORT(__u_boot_list*)));
|
|
}
|
|
|
|
. = .;
|
|
__start___ex_table = .;
|
|
__ex_table : { *(__ex_table) }
|
|
__stop___ex_table = .;
|
|
|
|
/*
|
|
* _end - This is end of u-boot.bin image.
|
|
* dtb will be appended here to make u-boot-dtb.bin
|
|
*/
|
|
_end = .;
|
|
|
|
. = ALIGN(4096);
|
|
__init_begin = .;
|
|
.text.init : { *(.text.init) }
|
|
.data.init : { *(.data.init) }
|
|
. = ALIGN(4096);
|
|
__init_end = .;
|
|
|
|
__bss_start = .;
|
|
.bss (NOLOAD) :
|
|
{
|
|
*(.bss*)
|
|
*(.sbss*)
|
|
*(COMMON)
|
|
. = ALIGN(4);
|
|
}
|
|
__bss_end = . ;
|
|
PROVIDE (end = .);
|
|
}
|
|
ENTRY(_start)
|