initial buildroot for linux 5.15

This commit is contained in:
Huan.Feng
2021-12-06 14:12:13 +08:00
parent d7767d594e
commit 7b6fc358fa
12736 changed files with 508822 additions and 0 deletions
@@ -0,0 +1,76 @@
From 73e4da5ca780196d23db8029dcd28f87a0402711 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Mon, 29 May 2017 23:03:48 +0300
Subject: [PATCH] Add a --{enable,disable}-progs configure option
Add a --{enable,disable}-progs configuration option to elfutils. This
allows to selectively disable the compilation of the elfutils programs
(in which case only the libraries are built and installed). This is
useful because the programs are often not needed, and also because
building the programs against uClibc causes several issues (lack of
obstack_printf() in uClibc for example).
Based on the former patch by Thomas Petazzoni.
[Vincent: tweak patch for 0.166]
[Bernd: rebased patch for 0.177]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Rebased on 0.183]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[Fabrice: don't error out if obstack is not found]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
Makefile.am | 6 +++++-
configure.ac | 6 ++++++
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/Makefile.am b/Makefile.am
index 9c47afa..edf8dfc 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -26,8 +26,12 @@ AM_MAKEFLAGS = --no-print-directory
pkginclude_HEADERS = version.h
+if ENABLE_PROGS
+PROGS_SUBDIR = src
+endif
+
SUBDIRS = config lib libelf libcpu backends libebl libdwelf libdwfl libdw \
- libasm debuginfod src po doc tests
+ libasm debuginfod $(PROGS_SUBDIR) po doc tests
EXTRA_DIST = elfutils.spec GPG-KEY NOTES CONTRIBUTING \
COPYING COPYING-GPLV2 COPYING-LGPLV3
diff --git a/configure.ac b/configure.ac
index d345495..0dd4b1e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -393,6 +393,12 @@ AS_HELP_STRING([--enable-tests-rpath],[build $ORIGIN-using rpath into tests]),
[tests_use_rpath=$enableval], [tests_use_rpath=no])
AM_CONDITIONAL(TESTS_RPATH, test "$tests_use_rpath" = yes)
+AC_ARG_ENABLE([progs],
+ AS_HELP_STRING([--enable-progs], [enable progs]),
+ enable_progs=$enableval,
+ enable_progs=yes)
+AM_CONDITIONAL(ENABLE_PROGS, test "$enable_progs" = yes)
+
dnl zlib is mandatory.
save_LIBS="$LIBS"
LIBS=
@@ -579,7 +585,7 @@ saved_LIBS="$LIBS"
AC_SEARCH_LIBS([_obstack_free], [obstack])
LIBS="$saved_LIBS"
case "$ac_cv_search__obstack_free" in
- no) AC_MSG_FAILURE([failed to find _obstack_free]) ;;
+ no) obstack_LIBS= ;;
-l*) obstack_LIBS="$ac_cv_search__obstack_free" ;;
*) obstack_LIBS= ;;
esac
--
2.30.1
@@ -0,0 +1,38 @@
From 2688a0238eaf825d6659c16c012db0c16f07e197 Mon Sep 17 00:00:00 2001
From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Date: Mon, 29 May 2017 23:24:42 +0300
Subject: [PATCH] Really make -Werror conditional to BUILD_WERROR
Otherwise it will fail with an error message like this one:
elf_getarsym.c:290:9: error: 'n' may be used uninitialized in this
function [-Werror=maybe-uninitialized]
arsym[n].as_name = NULL;
^
cc1: all warnings being treated as errors
[Vincent: tweak patch for 0.166]
[Bernd: rebased patch for 0.177]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
config/eu.am | 1 -
1 file changed, 1 deletion(-)
diff --git a/config/eu.am b/config/eu.am
index c2cc349ce876..99b368e09060 100644
--- a/config/eu.am
+++ b/config/eu.am
@@ -73,7 +73,6 @@ AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
-Wold-style-definition -Wstrict-prototypes -Wtrampolines \
$(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \
$(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \
- $(if $($(*F)_no_Werror),,-Werror) \
$(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
$(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
$(if $($(*F)_no_Wpacked_not_aligned),-Wno-packed-not-aligned,) \
--
2.17.1
+34
View File
@@ -0,0 +1,34 @@
comment "elfutils needs a uClibc or glibc toolchain w/ wchar, dynamic library, threads"
depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \
|| !BR2_TOOLCHAIN_HAS_THREADS \
|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
config BR2_PACKAGE_ELFUTILS
bool "elfutils"
depends on BR2_USE_WCHAR
depends on !BR2_STATIC_LIBS
depends on BR2_TOOLCHAIN_HAS_THREADS
# Only glibc and uClibc implement the myriad of required GNUisms
depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC
select BR2_PACKAGE_ZLIB
select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC
select BR2_PACKAGE_MUSL_FTS if !BR2_TOOLCHAIN_USES_GLIBC
help
Libraries/utilities to handle ELF objects (drop in
replacement for libelf).
Note that this option only installs the libraries, and not
the programs.
https://sourceware.org/elfutils/
if BR2_PACKAGE_ELFUTILS
config BR2_PACKAGE_ELFUTILS_PROGS
bool "Install programs"
depends on BR2_TOOLCHAIN_USES_GLIBC
help
This option tells elfutils to not only install the libelf
libraries, but also the elfutils programs.
endif
+6
View File
@@ -0,0 +1,6 @@
# From https://sourceware.org/elfutils/ftp/0.184/sha512.sum
sha512 5920c354edd6b28bb7e713d674bf6f2221e8ee91b90d582de39b1f45446aea1e7e3d4b6671024c391675b5e7530fe952c1320d730bb625c02d4c647ceb938bc8 elfutils-0.184.tar.bz2
# Locally calculated
sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING-GPLV2
sha256 da7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768 COPYING-LGPLV3
+99
View File
@@ -0,0 +1,99 @@
################################################################################
#
# elfutils
#
################################################################################
ELFUTILS_VERSION = 0.184
ELFUTILS_SOURCE = elfutils-$(ELFUTILS_VERSION).tar.bz2
ELFUTILS_SITE = https://sourceware.org/elfutils/ftp/$(ELFUTILS_VERSION)
ELFUTILS_INSTALL_STAGING = YES
ELFUTILS_LICENSE = GPL-2.0+ or LGPL-3.0+ (library)
ELFUTILS_LICENSE_FILES = COPYING COPYING-GPLV2 COPYING-LGPLV3
ELFUTILS_CPE_ID_VENDOR = elfutils_project
ELFUTILS_DEPENDENCIES = host-pkgconf zlib $(TARGET_NLS_DEPENDENCIES)
HOST_ELFUTILS_DEPENDENCIES = host-pkgconf host-zlib host-bzip2 host-xz
# We patch configure.ac
ELFUTILS_AUTORECONF = YES
HOST_ELFUTILS_AUTORECONF = YES
# Pass a custom program prefix to avoid a naming conflict between
# elfutils binaries and binutils binaries.
ELFUTILS_CONF_OPTS += \
--program-prefix="eu-"
HOST_ELFUTILS_CONF_OPTS = \
--with-bzlib \
--with-lzma \
--without-zstd \
--disable-progs
# elfutils gets confused when lfs mode is forced, so don't
ELFUTILS_CFLAGS = $(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CFLAGS))
ELFUTILS_CPPFLAGS = $(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CPPFLAGS))
# sparc64 needs -fPIC instead of -fpic
ifeq ($(BR2_sparc64),y)
ELFUTILS_CFLAGS += -fPIC
endif
ELFUTILS_CONF_ENV += \
CFLAGS="$(ELFUTILS_CFLAGS)" \
CPPFLAGS="$(ELFUTILS_CPPFLAGS)"
ELFUTILS_LDFLAGS = $(TARGET_LDFLAGS) \
$(TARGET_NLS_LIBS)
ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
ELFUTILS_LDFLAGS += -latomic
endif
ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),)
ELFUTILS_DEPENDENCIES += musl-fts
ELFUTILS_LDFLAGS += -lfts
endif
# disable for now, needs "distro" support
ELFUTILS_CONF_OPTS += --disable-libdebuginfod --disable-debuginfod
HOST_ELFUTILS_CONF_OPTS += --disable-libdebuginfod --disable-debuginfod
ELFUTILS_CONF_ENV += \
LDFLAGS="$(ELFUTILS_LDFLAGS)"
ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
ELFUTILS_DEPENDENCIES += argp-standalone
ELFUTILS_CONF_OPTS += --disable-symbol-versioning
endif
ifeq ($(BR2_PACKAGE_BZIP2),y)
ELFUTILS_DEPENDENCIES += bzip2
ELFUTILS_CONF_OPTS += --with-bzlib
else
ELFUTILS_CONF_OPTS += --without-bzlib
endif
ifeq ($(BR2_PACKAGE_XZ),y)
ELFUTILS_DEPENDENCIES += xz
ELFUTILS_CONF_OPTS += --with-lzma
else
ELFUTILS_CONF_OPTS += --without-lzma
endif
ifeq ($(BR2_PACKAGE_ZSTD),y)
ELFUTILS_DEPENDENCIES += zstd
ELFUTILS_CONF_OPTS += --with-zstd
else
ELFUTILS_CONF_OPTS += --without-zstd
endif
ifeq ($(BR2_PACKAGE_ELFUTILS_PROGS),y)
ELFUTILS_CONF_OPTS += --enable-progs
ELFUTILS_LICENSE += , GPL-3.0+ (programs)
ELFUTILS_LICENSE_FILES += COPYING
else
ELFUTILS_CONF_OPTS += --disable-progs
endif
$(eval $(autotools-package))
$(eval $(host-autotools-package))