Bump buildroot to 2020.11-rc1 (#985)
* Update buildroot-patches for 2020.11-rc1 buildroot * Update buildroot to 2020.11-rc1 Signed-off-by: Stefan Agner <stefan@agner.ch> * Don't rely on sfdisk --list-free output The --list-free (-F) argument does not allow machine readable mode. And it seems that the output format changes over time (different spacing, using size postfixes instead of raw blocks). Use sfdisk json output and calculate free partition space ourselfs. This works for 2.35 and 2.36 and is more robust since we rely on output which is meant for scripts to parse. * Migrate defconfigs for Buildroot 2020.11-rc1 In particular, rename BR2_TARGET_UBOOT_BOOT_SCRIPT(_SOURCE) to BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT(_SOURCE). * Rebase/remove systemd patches for systemd 246 * Drop apparmor/libapparmor from buildroot-external * hassos-persists: use /run as directory for lockfiles The U-Boot tools use /var/lock by default which is not created any more by systemd by default (it is under tmpfiles legacy.conf, which we no longer install). * Disable systemd-update-done.service The service is not suited for pure read-only systems. In particular the service needs to be able to write a file in /etc and /var. Remove the service. Note: This is a static service and cannot be removed using systemd-preset. * Disable apparmor.service for now The service loads all default profiles. Some might actually cause problems. E.g. the profile for ping seems not to match our setup for /etc/resolv.conf: [85503.634653] audit: type=1400 audit(1605286002.684:236): apparmor="DENIED" operation="open" profile="ping" name="/run/resolv.conf" pid=27585 comm="ping" requested_mask="r" denied_mask="r" fsuid=0 ouid=0
This commit is contained in:
@@ -1,148 +0,0 @@
|
||||
From 7a8213503e25998e2610d5a8c0b19eefb5e41596 Mon Sep 17 00:00:00 2001
|
||||
From: Romain Naour <romain.naour@gmail.com>
|
||||
Date: Sat, 30 Nov 2019 03:12:37 +0100
|
||||
Subject: [PATCH] Revert "PR24311, FAIL: S-records with constructors"
|
||||
|
||||
This reverts commit ebd2263ba9a9124d93bbc0ece63d7e0fae89b40e.
|
||||
|
||||
Revert this patch since it prevent booting a sh4 system under
|
||||
Qemu as reported on the Binutils mailing list [1].
|
||||
This commit is not related to sh4, it's weird that it is the
|
||||
only affected architecture.
|
||||
|
||||
[1] https://sourceware.org/ml/binutils/2019-10/msg00105.html
|
||||
[2] https://sourceware.org/ml/binutils/2019-11/msg00407.html
|
||||
|
||||
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||
---
|
||||
bfd/merge.c | 52 ++++++++++++++++++++++------------------------------
|
||||
1 file changed, 22 insertions(+), 30 deletions(-)
|
||||
|
||||
diff --git a/bfd/merge.c b/bfd/merge.c
|
||||
index 632c8523903..fb7c0858beb 100644
|
||||
--- a/bfd/merge.c
|
||||
+++ b/bfd/merge.c
|
||||
@@ -621,7 +621,7 @@ is_suffix (const struct sec_merge_hash_entry *A,
|
||||
|
||||
/* This is a helper function for _bfd_merge_sections. It attempts to
|
||||
merge strings matching suffixes of longer strings. */
|
||||
-static struct sec_merge_sec_info *
|
||||
+static bfd_boolean
|
||||
merge_strings (struct sec_merge_info *sinfo)
|
||||
{
|
||||
struct sec_merge_hash_entry **array, **a, *e;
|
||||
@@ -633,7 +633,7 @@ merge_strings (struct sec_merge_info *sinfo)
|
||||
amt = sinfo->htab->size * sizeof (struct sec_merge_hash_entry *);
|
||||
array = (struct sec_merge_hash_entry **) bfd_malloc (amt);
|
||||
if (array == NULL)
|
||||
- return NULL;
|
||||
+ return FALSE;
|
||||
|
||||
for (e = sinfo->htab->first, a = array; e; e = e->next)
|
||||
if (e->alignment)
|
||||
@@ -703,6 +703,11 @@ merge_strings (struct sec_merge_info *sinfo)
|
||||
}
|
||||
}
|
||||
secinfo->sec->size = size;
|
||||
+ if (secinfo->sec->alignment_power != 0)
|
||||
+ {
|
||||
+ bfd_size_type align = (bfd_size_type) 1 << secinfo->sec->alignment_power;
|
||||
+ secinfo->sec->size = (secinfo->sec->size + align - 1) & -align;
|
||||
+ }
|
||||
|
||||
/* And now adjust the rest, removing them from the chain (but not hashtable)
|
||||
at the same time. */
|
||||
@@ -719,7 +724,7 @@ merge_strings (struct sec_merge_info *sinfo)
|
||||
e->u.index = e->u.suffix->u.index + (e->u.suffix->len - e->len);
|
||||
}
|
||||
}
|
||||
- return secinfo;
|
||||
+ return TRUE;
|
||||
}
|
||||
|
||||
/* This function is called once after all SEC_MERGE sections are registered
|
||||
@@ -735,8 +740,7 @@ _bfd_merge_sections (bfd *abfd,
|
||||
|
||||
for (sinfo = (struct sec_merge_info *) xsinfo; sinfo; sinfo = sinfo->next)
|
||||
{
|
||||
- struct sec_merge_sec_info *secinfo;
|
||||
- bfd_size_type align;
|
||||
+ struct sec_merge_sec_info * secinfo;
|
||||
|
||||
if (! sinfo->chain)
|
||||
continue;
|
||||
@@ -747,7 +751,6 @@ _bfd_merge_sections (bfd *abfd,
|
||||
secinfo->next = NULL;
|
||||
|
||||
/* Record the sections into the hash table. */
|
||||
- align = 1;
|
||||
for (secinfo = sinfo->chain; secinfo; secinfo = secinfo->next)
|
||||
if (secinfo->sec->flags & SEC_EXCLUDE)
|
||||
{
|
||||
@@ -755,25 +758,18 @@ _bfd_merge_sections (bfd *abfd,
|
||||
if (remove_hook)
|
||||
(*remove_hook) (abfd, secinfo->sec);
|
||||
}
|
||||
- else
|
||||
- {
|
||||
- if (!record_section (sinfo, secinfo))
|
||||
- return FALSE;
|
||||
- if (align)
|
||||
- {
|
||||
- align = (bfd_size_type) 1 << secinfo->sec->alignment_power;
|
||||
- if ((secinfo->sec->size & (align - 1)) != 0)
|
||||
- align = 0;
|
||||
- }
|
||||
- }
|
||||
+ else if (! record_section (sinfo, secinfo))
|
||||
+ return FALSE;
|
||||
+
|
||||
+ if (secinfo)
|
||||
+ continue;
|
||||
|
||||
if (sinfo->htab->first == NULL)
|
||||
continue;
|
||||
|
||||
if (sinfo->htab->strings)
|
||||
{
|
||||
- secinfo = merge_strings (sinfo);
|
||||
- if (!secinfo)
|
||||
+ if (!merge_strings (sinfo))
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
@@ -793,7 +789,8 @@ _bfd_merge_sections (bfd *abfd,
|
||||
e->secinfo->first_str = e;
|
||||
size = 0;
|
||||
}
|
||||
- size = (size + e->alignment - 1) & ~((bfd_vma) e->alignment - 1);
|
||||
+ size = (size + e->alignment - 1)
|
||||
+ & ~((bfd_vma) e->alignment - 1);
|
||||
e->u.index = size;
|
||||
size += e->len;
|
||||
secinfo = e->secinfo;
|
||||
@@ -801,16 +798,11 @@ _bfd_merge_sections (bfd *abfd,
|
||||
secinfo->sec->size = size;
|
||||
}
|
||||
|
||||
- /* If the input sections were padded according to their alignments,
|
||||
- then pad the output too. */
|
||||
- if (align)
|
||||
- secinfo->sec->size = (secinfo->sec->size + align - 1) & -align;
|
||||
-
|
||||
- /* Finally remove all input sections which have not made it into
|
||||
- the hash table at all. */
|
||||
- for (secinfo = sinfo->chain; secinfo; secinfo = secinfo->next)
|
||||
- if (secinfo->first_str == NULL)
|
||||
- secinfo->sec->flags |= SEC_EXCLUDE | SEC_KEEP;
|
||||
+ /* Finally remove all input sections which have not made it into
|
||||
+ the hash table at all. */
|
||||
+ for (secinfo = sinfo->chain; secinfo; secinfo = secinfo->next)
|
||||
+ if (secinfo->first_str == NULL)
|
||||
+ secinfo->sec->flags |= SEC_EXCLUDE | SEC_KEEP;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
--
|
||||
2.23.0
|
||||
|
||||
Reference in New Issue
Block a user