Bump buildroot to version 2017-02
TG-3 #closed
This commit is contained in:
@@ -1,11 +1,12 @@
|
||||
menu "Linux Kernel Extensions"
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# Xenomai
|
||||
config BR2_LINUX_KERNEL_EXT_XENOMAI
|
||||
bool "Adeos/Xenomai Real-time patch"
|
||||
depends on BR2_PACKAGE_XENOMAI_ARCH_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on BR2_i386 || BR2_x86_64 || BR2_arm || \
|
||||
BR2_bfin || BR2_powerpc || BR2_sh4
|
||||
depends on !BR2_TOOLCHAIN_USES_MUSL
|
||||
select BR2_PACKAGE_XENOMAI
|
||||
help
|
||||
Xenomai is split in two parts: a kernel part and a userspace
|
||||
@@ -24,19 +25,19 @@ config BR2_LINUX_KERNEL_EXT_XENOMAI
|
||||
Xenomai is know to support Blackfin, SH4, x86, ARM, NIOS2
|
||||
and PowerPC architectures.
|
||||
|
||||
comment "xenomai needs a toolchain w/ threads"
|
||||
depends on BR2_i386 || BR2_x86_64 || BR2_arm || \
|
||||
BR2_bfin || BR2_powerpc || BR2_sh4
|
||||
depends on !BR2_TOOLCHAIN_HAS_THREADS
|
||||
|
||||
config BR2_LINUX_KERNEL_EXT_XENOMAI_ADEOS_PATCH
|
||||
depends on BR2_LINUX_KERNEL_EXT_XENOMAI
|
||||
string "Path for Adeos patch file"
|
||||
depends on BR2_LINUX_KERNEL_EXT_XENOMAI
|
||||
help
|
||||
Optionally, explicitly specify the Adeos patch to use.
|
||||
Download it at http://download.gna.org/adeos/patches
|
||||
and verify that your kernel version in buildroot matches.
|
||||
|
||||
comment "xenomai needs a uClibc or glibc toolchain w/ threads"
|
||||
depends on BR2_PACKAGE_XENOMAI_ARCH_SUPPORTS
|
||||
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# RTAI
|
||||
config BR2_LINUX_KERNEL_EXT_RTAI
|
||||
bool "RTAI Real-time patch"
|
||||
@@ -44,6 +45,17 @@ config BR2_LINUX_KERNEL_EXT_RTAI
|
||||
help
|
||||
RTAI Kernel part.
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# ev3dev Linux drivers
|
||||
config BR2_LINUX_KERNEL_EXT_EV3DEV_LINUX_DRIVERS
|
||||
bool "ev3dev Linux drivers"
|
||||
select BR2_PACKAGE_EV3DEV_LINUX_DRIVERS
|
||||
help
|
||||
Linux drivers for LEGO MINDSTORMS EV3 from the ev3dev project.
|
||||
|
||||
https://github.com/ev3dev/lego-linux-drivers
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# fbtft
|
||||
config BR2_LINUX_KERNEL_EXT_FBTFT
|
||||
bool "FB TFT drivers"
|
||||
@@ -64,4 +76,56 @@ config BR2_LINUX_KERNEL_EXT_FBTFT
|
||||
|
||||
https://github.com/notro/fbtft
|
||||
|
||||
# aufs-standalone
|
||||
config BR2_LINUX_KERNEL_EXT_AUFS
|
||||
bool "Aufs Filesystem Module patch"
|
||||
select BR2_PACKAGE_AUFS
|
||||
help
|
||||
Aufs is split in two parts: a kernel part and a userspace
|
||||
part. Enabling this option automatically selects the aufs
|
||||
standalone (module) package and patches the Linux kernel
|
||||
built by Buildroot with the aufs kernel part (ie fs/aufs).
|
||||
|
||||
It is important to use the correct branch of aufs-standalone.
|
||||
|
||||
if BR2_LINUX_KERNEL_EXT_AUFS
|
||||
|
||||
choice
|
||||
bool "aufs-standalone series"
|
||||
help
|
||||
Select the major series of this version. This must match the
|
||||
major version of your kernel (e.g. for kernels 3.x, select
|
||||
aufs3.x; for kernels 4.x, select aufs4.x).
|
||||
|
||||
Note: neither aufs1.x nor aufs2.x (both for kernels older than
|
||||
3.x) are supported.
|
||||
|
||||
config BR2_LINUX_KERNEL_EXT_AUFS_SERIES_3
|
||||
bool "aufs3.x"
|
||||
|
||||
config BR2_LINUX_KERNEL_EXT_AUFS_SERIES_4
|
||||
bool "aufs4.x"
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_LINUX_KERNEL_EXT_AUFS_SERIES
|
||||
int
|
||||
default 3 if BR2_LINUX_KERNEL_EXT_AUFS_SERIES_3
|
||||
default 4 if BR2_LINUX_KERNEL_EXT_AUFS_SERIES_4
|
||||
|
||||
config BR2_LINUX_KERNEL_EXT_AUFS_VERSION
|
||||
string "aufs-standalone version"
|
||||
default ""
|
||||
help
|
||||
The version you choose must match that of your kernel. Usually,
|
||||
the sha1 of the cset you want to use; avoid using a branch name
|
||||
as this yields non-reproducible builds.
|
||||
|
||||
See the following resources to see what versions are available:
|
||||
|
||||
For aufs3.x: https://sourceforge.net/p/aufs/aufs3-standalone/ref/master/branches/
|
||||
For aufs4.x: https://github.com/sfjro/aufs4-standalone/branches/all
|
||||
|
||||
endif # aufs
|
||||
|
||||
endmenu
|
||||
|
||||
@@ -26,7 +26,7 @@ choice
|
||||
prompt "Kernel version"
|
||||
|
||||
config BR2_LINUX_KERNEL_LATEST_VERSION
|
||||
bool "Latest version (4.7.2)"
|
||||
bool "Latest version (4.9.13)"
|
||||
|
||||
config BR2_LINUX_KERNEL_CUSTOM_VERSION
|
||||
bool "Custom version"
|
||||
@@ -68,12 +68,6 @@ config BR2_LINUX_KERNEL_CUSTOM_SVN
|
||||
This option allows Buildroot to get the Linux kernel source
|
||||
code from a Subversion repository.
|
||||
|
||||
config BR2_LINUX_KERNEL_CUSTOM_LOCAL
|
||||
bool "Local directory"
|
||||
help
|
||||
This option allows Buildroot to get the Linux kernel source
|
||||
code from a local directory.
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE
|
||||
@@ -101,21 +95,14 @@ config BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION
|
||||
|
||||
endif
|
||||
|
||||
config BR2_LINUX_KERNEL_CUSTOM_LOCAL_PATH
|
||||
string "Path to the local directory"
|
||||
depends on BR2_LINUX_KERNEL_CUSTOM_LOCAL
|
||||
help
|
||||
Path to the local directory with the Linux kernel source code.
|
||||
|
||||
config BR2_LINUX_KERNEL_VERSION
|
||||
string
|
||||
default "4.7.2" if BR2_LINUX_KERNEL_LATEST_VERSION
|
||||
default "4.9.13" if BR2_LINUX_KERNEL_LATEST_VERSION
|
||||
default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \
|
||||
if BR2_LINUX_KERNEL_CUSTOM_VERSION
|
||||
default "custom" if BR2_LINUX_KERNEL_CUSTOM_TARBALL
|
||||
default BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION \
|
||||
if BR2_LINUX_KERNEL_CUSTOM_GIT || BR2_LINUX_KERNEL_CUSTOM_HG || BR2_LINUX_KERNEL_CUSTOM_SVN
|
||||
default "custom" if BR2_LINUX_KERNEL_CUSTOM_LOCAL
|
||||
|
||||
#
|
||||
# Patch selection
|
||||
@@ -123,7 +110,6 @@ config BR2_LINUX_KERNEL_VERSION
|
||||
|
||||
config BR2_LINUX_KERNEL_PATCH
|
||||
string "Custom kernel patches"
|
||||
depends on !BR2_LINUX_KERNEL_CUSTOM_LOCAL
|
||||
help
|
||||
A space-separated list of patches to apply to the
|
||||
kernel. Each patch can be described as an URL, a local file
|
||||
@@ -192,7 +178,7 @@ config BR2_LINUX_KERNEL_UIMAGE
|
||||
bool "uImage"
|
||||
depends on BR2_arc || BR2_arm || BR2_armeb || BR2_bfin || \
|
||||
BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || \
|
||||
BR2_sh || BR2_sh64 || BR2_mips || BR2_mipsel || \
|
||||
BR2_sh || BR2_mips || BR2_mipsel || \
|
||||
BR2_mips64 || BR2_mips64el
|
||||
select BR2_LINUX_KERNEL_UBOOT_IMAGE
|
||||
|
||||
@@ -211,7 +197,7 @@ config BR2_LINUX_KERNEL_ZIMAGE
|
||||
bool "zImage"
|
||||
depends on BR2_arm || BR2_armeb || BR2_powerpc || \
|
||||
BR2_powerpc64 || BR2_powerpc64le || BR2_sparc || \
|
||||
BR2_sh || BR2_sh64 || BR2_xtensa
|
||||
BR2_sh || BR2_xtensa
|
||||
|
||||
config BR2_LINUX_KERNEL_ZIMAGE_EPAPR
|
||||
bool "zImage.epapr"
|
||||
@@ -248,7 +234,7 @@ config BR2_LINUX_KERNEL_LINUX_BIN
|
||||
|
||||
config BR2_LINUX_KERNEL_VMLINUX_BIN
|
||||
bool "vmlinux.bin"
|
||||
depends on BR2_mips || BR2_mipsel || BR2_sh || BR2_sh64
|
||||
depends on BR2_mips || BR2_mipsel || BR2_sh
|
||||
|
||||
config BR2_LINUX_KERNEL_VMLINUX
|
||||
bool "vmlinux"
|
||||
@@ -413,7 +399,7 @@ config BR2_LINUX_KERNEL_INSTALL_TARGET
|
||||
source "linux/Config.ext.in"
|
||||
|
||||
# Linux tools
|
||||
source "linux/Config.tools.in"
|
||||
source "package/linux-tools/Config.in"
|
||||
|
||||
endif # BR2_LINUX_KERNEL
|
||||
|
||||
|
||||
@@ -1,57 +0,0 @@
|
||||
menu "Linux Kernel Tools"
|
||||
|
||||
config BR2_LINUX_KERNEL_TOOL_CPUPOWER
|
||||
bool "cpupower"
|
||||
depends on !BR2_bfin # pciutils
|
||||
depends on BR2_USE_WCHAR || !BR2_NEEDS_GETTEXT # gettext
|
||||
select BR2_PACKAGE_PCIUTILS
|
||||
select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT
|
||||
help
|
||||
cpupower is a collection of tools to examine and tune power
|
||||
saving related features of your processor.
|
||||
|
||||
comment "cpupower needs a toolchain w/ wchar"
|
||||
depends on !BR2_bfin
|
||||
depends on !BR2_USE_WCHAR && BR2_NEEDS_GETTEXT
|
||||
|
||||
config BR2_LINUX_KERNEL_TOOL_PERF
|
||||
bool "perf"
|
||||
help
|
||||
perf (sometimes "Perf Events" or perf tools, originally
|
||||
"Performance Counters for Linux") - is a performance
|
||||
analyzing tool in Linux, available from kernel version
|
||||
2.6.31. User-space controlling utility, called 'perf' has
|
||||
git-like interface with subcommands. It is capable of
|
||||
statistical profiling of entire system (both kernel and user
|
||||
code), single CPU or severals threads.
|
||||
|
||||
This will build and install the userspace 'perf'
|
||||
command. It is up to the user to ensure that the kernel
|
||||
configuration has all the suitable options enabled to allow a
|
||||
proper operation of 'perf'.
|
||||
|
||||
https://perf.wiki.kernel.org/
|
||||
|
||||
config BR2_LINUX_KERNEL_TOOL_SELFTESTS
|
||||
bool"selftests"
|
||||
depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # bash
|
||||
depends on BR2_USE_MMU # bash
|
||||
select BR2_PACKAGE_BASH # runtime
|
||||
select BR2_PACKAGE_POPT
|
||||
select BR2_PACKAGE_LIBCAP_NG
|
||||
help
|
||||
Build and install (to /usr/lib/kselftests) kernel selftests.
|
||||
|
||||
Use of this option implies you know the process of using and
|
||||
compiling the kernel selftests. The Makefile to build and
|
||||
install these is very noisy and may appear to cause your
|
||||
build to fail for strange reasons.
|
||||
|
||||
This is very much a use at your risk option and may not work
|
||||
for every setup or every architecture.
|
||||
|
||||
comment "selftests needs BR2_PACKAGE_BUSYBOX_SHOW_OTHERS"
|
||||
depends on BR2_USE_MMU
|
||||
depends on !BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
|
||||
|
||||
endmenu
|
||||
21
bsp/buildroot/linux/linux-ext-aufs.mk
Normal file
21
bsp/buildroot/linux/linux-ext-aufs.mk
Normal file
@@ -0,0 +1,21 @@
|
||||
################################################################################
|
||||
# Linux Aufs extensions
|
||||
#
|
||||
# Patch the linux kernel with aufs extension
|
||||
################################################################################
|
||||
|
||||
LINUX_EXTENSIONS += aufs
|
||||
|
||||
define AUFS_PREPARE_KERNEL
|
||||
if test -d $(@D)/fs/aufs/; then \
|
||||
echo "Your kernel already supports AUFS."; \
|
||||
exit 1; \
|
||||
fi
|
||||
$(APPLY_PATCHES) $(@D) $(AUFS_DIR) \
|
||||
aufs$(BR2_PACKAGE_AUFS_SERIES)-kbuild.patch \
|
||||
aufs$(BR2_PACKAGE_AUFS_SERIES)-base.patch \
|
||||
aufs$(BR2_PACKAGE_AUFS_SERIES)-mmap.patch \
|
||||
aufs$(BR2_PACKAGE_AUFS_SERIES)-standalone.patch
|
||||
cp -r $(AUFS_DIR)/fs/aufs/ $(@D)/fs/
|
||||
cp $(AUFS_DIR)/include/uapi/linux/aufs_type.h $(@D)/include/uapi/linux/
|
||||
endef
|
||||
12
bsp/buildroot/linux/linux-ext-ev3dev-linux-drivers.mk
Normal file
12
bsp/buildroot/linux/linux-ext-ev3dev-linux-drivers.mk
Normal file
@@ -0,0 +1,12 @@
|
||||
################################################################################
|
||||
# Linux ev3dev extensions
|
||||
#
|
||||
# Patch the linux kernel with ev3dev extension
|
||||
################################################################################
|
||||
|
||||
LINUX_EXTENSIONS += ev3dev-linux-drivers
|
||||
|
||||
define EV3DEV_LINUX_DRIVERS_PREPARE_KERNEL
|
||||
mkdir -p $(LINUX_DIR)/drivers/lego
|
||||
cp -dpfr $(EV3DEV_LINUX_DRIVERS_DIR)/* $(LINUX_DIR)/drivers/lego/
|
||||
endef
|
||||
@@ -1,41 +0,0 @@
|
||||
################################################################################
|
||||
#
|
||||
# cpupower
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LINUX_TOOLS += cpupower
|
||||
|
||||
CPUPOWER_DEPENDENCIES = pciutils $(if $(BR2_NEEDS_GETTEXT),gettext)
|
||||
|
||||
CPUPOWER_MAKE_OPTS = CROSS=$(TARGET_CROSS) \
|
||||
CPUFREQ_BENCH=false \
|
||||
NLS=false \
|
||||
$(if $(BR2_NEEDS_GETTEXT),LDFLAGS=-lintl) \
|
||||
DEBUG=false
|
||||
|
||||
define CPUPOWER_BUILD_CMDS
|
||||
$(Q)if test ! -f $(@D)/tools/power/cpupower/Makefile ; then \
|
||||
echo "Your kernel version is too old and does not have the cpupower tool." ; \
|
||||
echo "At least kernel 3.4 must be used." ; \
|
||||
exit 1 ; \
|
||||
fi
|
||||
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/tools \
|
||||
$(CPUPOWER_MAKE_OPTS) \
|
||||
cpupower
|
||||
endef
|
||||
|
||||
define CPUPOWER_INSTALL_STAGING_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/tools \
|
||||
$(CPUPOWER_MAKE_OPTS) \
|
||||
DESTDIR=$(STAGING_DIR) \
|
||||
cpupower_install
|
||||
endef
|
||||
|
||||
define CPUPOWER_INSTALL_TARGET_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/tools \
|
||||
$(CPUPOWER_MAKE_OPTS) \
|
||||
DESTDIR=$(TARGET_DIR) \
|
||||
cpupower_install
|
||||
endef
|
||||
@@ -1,134 +0,0 @@
|
||||
################################################################################
|
||||
#
|
||||
# perf
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LINUX_TOOLS += perf
|
||||
|
||||
PERF_DEPENDENCIES = host-flex host-bison
|
||||
|
||||
ifeq ($(KERNEL_ARCH),x86_64)
|
||||
PERF_ARCH=x86
|
||||
else
|
||||
PERF_ARCH=$(KERNEL_ARCH)
|
||||
endif
|
||||
|
||||
PERF_MAKE_FLAGS = \
|
||||
$(LINUX_MAKE_FLAGS) \
|
||||
JOBS=$(PARALLEL_JOBS) \
|
||||
ARCH=$(PERF_ARCH) \
|
||||
DESTDIR=$(TARGET_DIR) \
|
||||
prefix=/usr \
|
||||
WERROR=0 \
|
||||
NO_LIBAUDIT=1 \
|
||||
NO_NEWT=1 \
|
||||
NO_GTK2=1 \
|
||||
NO_LIBPERL=1 \
|
||||
NO_LIBPYTHON=1 \
|
||||
NO_LIBBIONIC=1
|
||||
|
||||
# We need to pass an argument to ld for setting the endianness when
|
||||
# building it for MIPS architecture, otherwise the default one will
|
||||
# always be used (which is big endian) and the compilation for little
|
||||
# endian will always fail showing an error like this one:
|
||||
# LD foo.o
|
||||
# mips-linux-gnu-ld: foo.o: compiled for a little endian system and
|
||||
# target is big endian
|
||||
ifeq ($(BR2_mips)$(BR2_mips64),y)
|
||||
PERF_MAKE_FLAGS += LD="$(TARGET_LD) -EB"
|
||||
else ifeq ($(BR2_mipsel)$(BR2_mips64el),y)
|
||||
PERF_MAKE_FLAGS += LD="$(TARGET_LD) -EL"
|
||||
endif
|
||||
|
||||
# The call to backtrace() function fails for ARC, because for some
|
||||
# reason the unwinder from libgcc returns early. Thus the usage of
|
||||
# backtrace() should be disabled in perf explicitly: at build time
|
||||
# backtrace() appears to be available, but it fails at runtime: the
|
||||
# backtrace will contain only several functions from the top of stack,
|
||||
# instead of the complete backtrace.
|
||||
ifeq ($(BR2_arc),y)
|
||||
PERF_MAKE_FLAGS += NO_BACKTRACE=1
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_SLANG),y)
|
||||
PERF_DEPENDENCIES += slang
|
||||
else
|
||||
PERF_MAKE_FLAGS += NO_SLANG=1
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBUNWIND),y)
|
||||
PERF_DEPENDENCIES += libunwind
|
||||
else
|
||||
PERF_MAKE_FLAGS += NO_LIBUNWIND=1
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_NUMACTL),y)
|
||||
PERF_DEPENDENCIES += numactl
|
||||
else
|
||||
PERF_MAKE_FLAGS += NO_LIBNUMA=1
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_ELFUTILS),y)
|
||||
PERF_DEPENDENCIES += elfutils
|
||||
else
|
||||
PERF_MAKE_FLAGS += NO_LIBELF=1 NO_DWARF=1
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_ZLIB),y)
|
||||
PERF_DEPENDENCIES += zlib
|
||||
else
|
||||
PERF_MAKE_FLAGS += NO_ZLIB=1
|
||||
endif
|
||||
|
||||
# lzma is provided by xz
|
||||
ifeq ($(BR2_PACKAGE_XZ),y)
|
||||
PERF_DEPENDENCIES += xz
|
||||
else
|
||||
PERF_MAKE_FLAGS += NO_LZMA=1
|
||||
endif
|
||||
|
||||
# We really do not want to build the perf documentation, because it
|
||||
# has stringent requirement on the documentation generation tools,
|
||||
# like xmlto and asciidoc), which may be lagging behind on some
|
||||
# distributions.
|
||||
# We name it 'GNUmakefile' so that GNU make will use it instead of
|
||||
# the existing 'Makefile'.
|
||||
define PERF_DISABLE_DOCUMENTATION
|
||||
if [ -f $(@D)/tools/perf/Documentation/Makefile ]; then \
|
||||
printf "%%:\n\t@:\n" >$(@D)/tools/perf/Documentation/GNUmakefile; \
|
||||
fi
|
||||
endef
|
||||
LINUX_POST_PATCH_HOOKS += PERF_DISABLE_DOCUMENTATION
|
||||
|
||||
# O must be redefined here to overwrite the one used by Buildroot for
|
||||
# out of tree build. We build perf in $(@D)/tools/perf/ and not just
|
||||
# $(@D) so that it isn't built in the root directory of the kernel
|
||||
# sources.
|
||||
define PERF_BUILD_CMDS
|
||||
$(Q)if test ! -f $(@D)/tools/perf/Makefile ; then \
|
||||
echo "Your kernel version is too old and does not have the perf tool." ; \
|
||||
echo "At least kernel 2.6.31 must be used." ; \
|
||||
exit 1 ; \
|
||||
fi
|
||||
$(Q)if test "$(BR2_PACKAGE_ELFUTILS)" = "" ; then \
|
||||
if ! grep -q NO_LIBELF $(@D)/tools/perf/Makefile* ; then \
|
||||
if ! test -r $(@D)/tools/perf/config/Makefile ; then \
|
||||
echo "The perf tool in your kernel cannot be built without libelf." ; \
|
||||
echo "Either upgrade your kernel to >= 3.7, or enable the elfutils package." ; \
|
||||
exit 1 ; \
|
||||
fi \
|
||||
fi \
|
||||
fi
|
||||
$(TARGET_MAKE_ENV) $(MAKE1) $(PERF_MAKE_FLAGS) \
|
||||
-C $(@D)/tools/perf O=$(@D)/tools/perf/
|
||||
endef
|
||||
|
||||
# After installation, we remove the Perl and Python scripts from the
|
||||
# target.
|
||||
define PERF_INSTALL_TARGET_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE1) $(PERF_MAKE_FLAGS) \
|
||||
-C $(@D)/tools/perf O=$(@D)/tools/perf/ install
|
||||
$(RM) -rf $(TARGET_DIR)/usr/libexec/perf-core/scripts/
|
||||
$(RM) -rf $(TARGET_DIR)/usr/libexec/perf-core/tests/
|
||||
endef
|
||||
@@ -1,46 +0,0 @@
|
||||
################################################################################
|
||||
#
|
||||
# selftests
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LINUX_TOOLS += selftests
|
||||
|
||||
ifeq ($(KERNEL_ARCH),x86_64)
|
||||
SELFTESTS_ARCH=x86
|
||||
else
|
||||
ifeq ($(KERNEL_ARCH),i386)
|
||||
SELFTESTS_ARCH=x86
|
||||
else
|
||||
SELFTESTS_ARCH=$(KERNEL_ARCH)
|
||||
endif
|
||||
endif
|
||||
|
||||
SELFTESTS_DEPENDENCIES = libcap-ng popt
|
||||
|
||||
SELFTESTS_MAKE_FLAGS = \
|
||||
$(LINUX_MAKE_FLAGS) \
|
||||
ARCH=$(SELFTESTS_ARCH)
|
||||
|
||||
# O must be redefined here to overwrite the one used by Buildroot for
|
||||
# out of tree build. We build the selftests in $(@D)/tools/selftests and
|
||||
# not just $(@D) so that it isn't built in the root directory of the kernel
|
||||
# sources.
|
||||
#
|
||||
# The headers_install step here is important as some kernel selftests use a
|
||||
# hardcoded CFLAGS to find kernel headers e.g:
|
||||
# CFLAGS += -I../../../../usr/include/
|
||||
# The headers_install target will install the kernel headers locally inside
|
||||
# the Linux build dir
|
||||
define SELFTESTS_BUILD_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) $(SELFTESTS_MAKE_FLAGS) \
|
||||
headers_install
|
||||
$(TARGET_MAKE_ENV) $(MAKE1) -C $(@D)/tools/testing/selftests \
|
||||
$(SELFTESTS_MAKE_FLAGS) O=$(@D)/tools/testing/selftests
|
||||
endef
|
||||
|
||||
define SELFTESTS_INSTALL_TARGET_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE1) -C $(@D)/tools/testing/selftests \
|
||||
$(SELFTESTS_MAKE_FLAGS) O=$(@D)/tools/testing/selftests \
|
||||
INSTALL_PATH=$(TARGET_DIR)/usr/lib/kselftests install
|
||||
endef
|
||||
@@ -21,9 +21,6 @@ LINUX_TARBALL = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION))
|
||||
LINUX_SITE = $(patsubst %/,%,$(dir $(LINUX_TARBALL)))
|
||||
LINUX_SOURCE = $(notdir $(LINUX_TARBALL))
|
||||
BR_NO_CHECK_HASH_FOR += $(LINUX_SOURCE)
|
||||
else ifeq ($(BR2_LINUX_KERNEL_CUSTOM_LOCAL),y)
|
||||
LINUX_SITE = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_LOCAL_PATH))
|
||||
LINUX_SITE_METHOD = local
|
||||
else ifeq ($(BR2_LINUX_KERNEL_CUSTOM_GIT),y)
|
||||
LINUX_SITE = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_REPO_URL))
|
||||
LINUX_SITE_METHOD = git
|
||||
@@ -97,6 +94,14 @@ LINUX_MAKE_ENV = \
|
||||
$(TARGET_MAKE_ENV) \
|
||||
BR_BINARIES_DIR=$(BINARIES_DIR)
|
||||
|
||||
ifeq ($(BR2_REPRODUCIBLE),y)
|
||||
LINUX_MAKE_ENV += \
|
||||
KBUILD_BUILD_VERSION=1 \
|
||||
KBUILD_BUILD_USER=buildroot \
|
||||
KBUILD_BUILD_HOST=buildroot \
|
||||
KBUILD_BUILD_TIMESTAMP="$(shell LC_ALL=C date -d @$(SOURCE_DATE_EPOCH))"
|
||||
endif
|
||||
|
||||
# Get the real Linux version, which tells us where kernel modules are
|
||||
# going to be installed in the target filesystem.
|
||||
LINUX_VERSION_PROBED = `$(MAKE) $(LINUX_MAKE_FLAGS) -C $(LINUX_DIR) --no-print-directory -s kernelrelease 2>/dev/null`
|
||||
@@ -387,6 +392,10 @@ define LINUX_INSTALL_IMAGES_CMDS
|
||||
$(call LINUX_INSTALL_DTB,$(BINARIES_DIR))
|
||||
endef
|
||||
|
||||
ifeq ($(BR2_STRIP_strip),y)
|
||||
LINUX_MAKE_FLAGS += INSTALL_MOD_STRIP=1
|
||||
endif
|
||||
|
||||
define LINUX_INSTALL_TARGET_CMDS
|
||||
$(LINUX_INSTALL_KERNEL_IMAGE_TO_TARGET)
|
||||
# Install modules and remove symbolic links pointing to build
|
||||
@@ -399,7 +408,7 @@ define LINUX_INSTALL_TARGET_CMDS
|
||||
$(LINUX_INSTALL_HOST_TOOLS)
|
||||
endef
|
||||
|
||||
# Include all our extensions and tools definitions.
|
||||
# Include all our extensions.
|
||||
#
|
||||
# Note: our package infrastructure uses the full-path of the last-scanned
|
||||
# Makefile to determine what package we're currently defining, using the
|
||||
@@ -410,7 +419,6 @@ endef
|
||||
# the current Makefile, we are OK. But this is a hard requirement: files
|
||||
# included here *must* be in the same directory!
|
||||
include $(sort $(wildcard linux/linux-ext-*.mk))
|
||||
include $(sort $(wildcard linux/linux-tool-*.mk))
|
||||
|
||||
LINUX_PATCH_DEPENDENCIES += $(foreach ext,$(LINUX_EXTENSIONS),\
|
||||
$(if $(BR2_LINUX_KERNEL_EXT_$(call UPPERCASE,$(ext))),$(ext)))
|
||||
@@ -419,28 +427,18 @@ LINUX_PRE_PATCH_HOOKS += $(foreach ext,$(LINUX_EXTENSIONS),\
|
||||
$(if $(BR2_LINUX_KERNEL_EXT_$(call UPPERCASE,$(ext))),\
|
||||
$(call UPPERCASE,$(ext))_PREPARE_KERNEL))
|
||||
|
||||
# Install Linux kernel tools in the staging directory since some tools
|
||||
# may install shared libraries and headers (e.g. cpupower). The kernel
|
||||
# image is NOT installed in the staging directory.
|
||||
LINUX_INSTALL_STAGING = YES
|
||||
|
||||
LINUX_DEPENDENCIES += $(foreach tool,$(LINUX_TOOLS),\
|
||||
$(if $(BR2_LINUX_KERNEL_TOOL_$(call UPPERCASE,$(tool))),\
|
||||
$($(call UPPERCASE,$(tool))_DEPENDENCIES)))
|
||||
|
||||
LINUX_POST_BUILD_HOOKS += $(foreach tool,$(LINUX_TOOLS),\
|
||||
$(if $(BR2_LINUX_KERNEL_TOOL_$(call UPPERCASE,$(tool))),\
|
||||
$(call UPPERCASE,$(tool))_BUILD_CMDS))
|
||||
|
||||
LINUX_POST_INSTALL_STAGING_HOOKS += $(foreach tool,$(LINUX_TOOLS),\
|
||||
$(if $(BR2_LINUX_KERNEL_TOOL_$(call UPPERCASE,$(tool))),\
|
||||
$(call UPPERCASE,$(tool))_INSTALL_STAGING_CMDS))
|
||||
|
||||
LINUX_POST_INSTALL_TARGET_HOOKS += $(foreach tool,$(LINUX_TOOLS),\
|
||||
$(if $(BR2_LINUX_KERNEL_TOOL_$(call UPPERCASE,$(tool))),\
|
||||
$(call UPPERCASE,$(tool))_INSTALL_TARGET_CMDS))
|
||||
|
||||
# Checks to give errors that the user can understand
|
||||
|
||||
# When a custom repository has been set, check for the repository version
|
||||
ifeq ($(BR2_LINUX_KERNEL_CUSTOM_SVN)$(BR2_LINUX_KERNEL_CUSTOM_GIT)$(BR2_LINUX_KERNEL_CUSTOM_HG),y)
|
||||
ifeq ($(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION)),)
|
||||
$(error No custom repository version set. Check your BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION setting)
|
||||
endif
|
||||
ifeq ($(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_REPO_URL)),)
|
||||
$(error No custom repo URL set. Check your BR2_LINUX_KERNEL_CUSTOM_REPO_URL setting)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(BR_BUILDING),y)
|
||||
|
||||
ifeq ($(BR2_LINUX_KERNEL_USE_DEFCONFIG),y)
|
||||
|
||||
Reference in New Issue
Block a user