Update buildroot & docker (#25)
* Update docker & buildroot * Fix * fix versions
This commit is contained in:
@@ -62,7 +62,7 @@ LINUX_PATCHES = $(call qstrip,$(BR2_LINUX_KERNEL_PATCH))
|
||||
LINUX_PATCH = $(filter ftp://% http://% https://%,$(LINUX_PATCHES))
|
||||
|
||||
LINUX_INSTALL_IMAGES = YES
|
||||
LINUX_DEPENDENCIES += host-kmod
|
||||
LINUX_DEPENDENCIES += host-bison host-flex host-kmod
|
||||
|
||||
# host tools needed for kernel compression
|
||||
ifeq ($(BR2_LINUX_KERNEL_LZ4),y)
|
||||
@@ -80,14 +80,14 @@ LINUX_COMPRESSION_OPT_$(BR2_LINUX_KERNEL_LZMA) += CONFIG_KERNEL_LZMA
|
||||
LINUX_COMPRESSION_OPT_$(BR2_LINUX_KERNEL_LZO) += CONFIG_KERNEL_LZO
|
||||
LINUX_COMPRESSION_OPT_$(BR2_LINUX_KERNEL_XZ) += CONFIG_KERNEL_XZ
|
||||
|
||||
ifeq ($(BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF),y)
|
||||
LINUX_DEPENDENCIES += host-elfutils
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL),y)
|
||||
LINUX_DEPENDENCIES += host-openssl
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF),y)
|
||||
LINUX_DEPENDENCIES += host-elfutils
|
||||
endif
|
||||
|
||||
# If host-uboot-tools is selected by the user, assume it is needed to
|
||||
# create a custom image
|
||||
ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS),y)
|
||||
@@ -125,17 +125,15 @@ endif
|
||||
# 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`
|
||||
|
||||
ifeq ($(BR2_LINUX_KERNEL_USE_INTREE_DTS),y)
|
||||
KERNEL_DTS_NAME = $(call qstrip,$(BR2_LINUX_KERNEL_INTREE_DTS_NAME))
|
||||
else ifeq ($(BR2_LINUX_KERNEL_USE_CUSTOM_DTS),y)
|
||||
LINUX_DTS_NAME += $(call qstrip,$(BR2_LINUX_KERNEL_INTREE_DTS_NAME))
|
||||
|
||||
# We keep only the .dts files, so that the user can specify both .dts
|
||||
# and .dtsi files in BR2_LINUX_KERNEL_CUSTOM_DTS_PATH. Both will be
|
||||
# copied to arch/<arch>/boot/dts, but only the .dts files will
|
||||
# actually be generated as .dtb.
|
||||
KERNEL_DTS_NAME = $(basename $(filter %.dts,$(notdir $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH)))))
|
||||
endif
|
||||
LINUX_DTS_NAME += $(basename $(filter %.dts,$(notdir $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH)))))
|
||||
|
||||
KERNEL_DTBS = $(addsuffix .dtb,$(KERNEL_DTS_NAME))
|
||||
LINUX_DTBS = $(addsuffix .dtb,$(LINUX_DTS_NAME))
|
||||
|
||||
ifeq ($(BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM),y)
|
||||
LINUX_IMAGE_NAME = $(call qstrip,$(BR2_LINUX_KERNEL_IMAGE_NAME))
|
||||
@@ -157,9 +155,9 @@ LINUX_IMAGE_NAME = zImage.epapr
|
||||
else ifeq ($(BR2_LINUX_KERNEL_APPENDED_ZIMAGE),y)
|
||||
LINUX_IMAGE_NAME = zImage
|
||||
else ifeq ($(BR2_LINUX_KERNEL_CUIMAGE),y)
|
||||
LINUX_IMAGE_NAME = cuImage.$(KERNEL_DTS_NAME)
|
||||
LINUX_IMAGE_NAME = cuImage.$(firstword $(LINUX_DTS_NAME))
|
||||
else ifeq ($(BR2_LINUX_KERNEL_SIMPLEIMAGE),y)
|
||||
LINUX_IMAGE_NAME = simpleImage.$(KERNEL_DTS_NAME)
|
||||
LINUX_IMAGE_NAME = simpleImage.$(firstword $(LINUX_DTS_NAME))
|
||||
else ifeq ($(BR2_LINUX_KERNEL_IMAGE),y)
|
||||
LINUX_IMAGE_NAME = Image
|
||||
else ifeq ($(BR2_LINUX_KERNEL_LINUX_BIN),y)
|
||||
@@ -189,11 +187,11 @@ endif
|
||||
# for bzImage, arch/i386 and arch/x86_64 do not exist when copying the
|
||||
# defconfig file.
|
||||
ifeq ($(KERNEL_ARCH),i386)
|
||||
KERNEL_ARCH_PATH = $(LINUX_DIR)/arch/x86
|
||||
LINUX_ARCH_PATH = $(LINUX_DIR)/arch/x86
|
||||
else ifeq ($(KERNEL_ARCH),x86_64)
|
||||
KERNEL_ARCH_PATH = $(LINUX_DIR)/arch/x86
|
||||
LINUX_ARCH_PATH = $(LINUX_DIR)/arch/x86
|
||||
else
|
||||
KERNEL_ARCH_PATH = $(LINUX_DIR)/arch/$(KERNEL_ARCH)
|
||||
LINUX_ARCH_PATH = $(LINUX_DIR)/arch/$(KERNEL_ARCH)
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_LINUX_KERNEL_VMLINUX),y)
|
||||
@@ -203,7 +201,7 @@ LINUX_IMAGE_PATH = $(LINUX_DIR)/$(LINUX_IMAGE_NAME)
|
||||
else ifeq ($(BR2_LINUX_KERNEL_VMLINUZ_BIN),y)
|
||||
LINUX_IMAGE_PATH = $(LINUX_DIR)/$(LINUX_IMAGE_NAME)
|
||||
else
|
||||
LINUX_IMAGE_PATH = $(KERNEL_ARCH_PATH)/boot/$(LINUX_IMAGE_NAME)
|
||||
LINUX_IMAGE_PATH = $(LINUX_ARCH_PATH)/boot/$(LINUX_IMAGE_NAME)
|
||||
endif # BR2_LINUX_KERNEL_VMLINUX
|
||||
|
||||
define LINUX_APPLY_LOCAL_PATCHES
|
||||
@@ -237,7 +235,14 @@ LINUX_KCONFIG_FILE = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE))
|
||||
endif
|
||||
LINUX_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES))
|
||||
LINUX_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig
|
||||
LINUX_KCONFIG_OPTS = $(LINUX_MAKE_FLAGS)
|
||||
|
||||
# LINUX_MAKE_FLAGS overrides HOSTCC to allow the kernel build to find our
|
||||
# host-openssl and host-libelf. However, this triggers a bug in the kconfig
|
||||
# build script that causes it to build with /usr/include/ncurses.h (which is
|
||||
# typically wchar) but link with $(HOST_DIR)/lib/libncurses.so (which is not).
|
||||
# We don't actually need any host-package for kconfig, so remove the HOSTCC
|
||||
# override again.
|
||||
LINUX_KCONFIG_OPTS = $(LINUX_MAKE_FLAGS) HOSTCC="$(HOSTCC)"
|
||||
|
||||
# If no package has yet set it, set it from the Kconfig option
|
||||
LINUX_NEEDS_MODULES ?= $(BR2_LINUX_NEEDS_MODULES)
|
||||
@@ -298,6 +303,9 @@ define LINUX_KCONFIG_FIXUP_CMDS
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_SECURITY,$(@D)/.config)
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_SECURITY_SMACK,$(@D)/.config)
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_SECURITY_NETWORK,$(@D)/.config))
|
||||
$(if $(BR2_PACKAGE_SUNXI_MALI_MAINLINE_DRIVER),
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_CMA,$(@D)/.config)
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_DMA_CMA,$(@D)/.config))
|
||||
$(if $(BR2_PACKAGE_IPTABLES),
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_IP_NF_IPTABLES,$(@D)/.config)
|
||||
$(call KCONFIG_ENABLE_OPT,CONFIG_IP_NF_FILTER,$(@D)/.config)
|
||||
@@ -322,14 +330,14 @@ endef
|
||||
ifeq ($(BR2_LINUX_KERNEL_DTS_SUPPORT),y)
|
||||
ifeq ($(BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT),)
|
||||
define LINUX_BUILD_DTB
|
||||
$(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(KERNEL_DTBS)
|
||||
$(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_DTBS)
|
||||
endef
|
||||
ifeq ($(BR2_LINUX_KERNEL_APPENDED_DTB),)
|
||||
define LINUX_INSTALL_DTB
|
||||
# dtbs moved from arch/<ARCH>/boot to arch/<ARCH>/boot/dts since 3.8-rc1
|
||||
cp $(addprefix \
|
||||
$(KERNEL_ARCH_PATH)/boot/$(if $(wildcard \
|
||||
$(addprefix $(KERNEL_ARCH_PATH)/boot/dts/,$(KERNEL_DTBS))),dts/),$(KERNEL_DTBS)) \
|
||||
$(LINUX_ARCH_PATH)/boot/$(if $(wildcard \
|
||||
$(addprefix $(LINUX_ARCH_PATH)/boot/dts/,$(LINUX_DTBS))),dts/),$(LINUX_DTBS)) \
|
||||
$(1)
|
||||
endef
|
||||
endif # BR2_LINUX_KERNEL_APPENDED_DTB
|
||||
@@ -339,8 +347,8 @@ endif # BR2_LINUX_KERNEL_DTS_SUPPORT
|
||||
ifeq ($(BR2_LINUX_KERNEL_APPENDED_DTB),y)
|
||||
# dtbs moved from arch/$ARCH/boot to arch/$ARCH/boot/dts since 3.8-rc1
|
||||
define LINUX_APPEND_DTB
|
||||
(cd $(KERNEL_ARCH_PATH)/boot; \
|
||||
for dtb in $(KERNEL_DTS_NAME); do \
|
||||
(cd $(LINUX_ARCH_PATH)/boot; \
|
||||
for dtb in $(LINUX_DTS_NAME); do \
|
||||
if test -e $${dtb}.dtb ; then \
|
||||
dtbpath=$${dtb}.dtb ; \
|
||||
else \
|
||||
@@ -358,10 +366,10 @@ ifeq ($(BR2_LINUX_KERNEL_APPENDED_UIMAGE),y)
|
||||
LINUX_APPEND_DTB += ; \
|
||||
MKIMAGE_ARGS=`$(MKIMAGE) -l $(LINUX_IMAGE_PATH) |\
|
||||
sed -n -e 's/Image Name:[ ]*\(.*\)/-n \1/p' -e 's/Load Address:/-a/p' -e 's/Entry Point:/-e/p'`; \
|
||||
for dtb in $(KERNEL_DTS_NAME); do \
|
||||
for dtb in $(LINUX_DTS_NAME); do \
|
||||
$(MKIMAGE) -A $(MKIMAGE_ARCH) -O linux \
|
||||
-T kernel -C none $${MKIMAGE_ARGS} \
|
||||
-d $(KERNEL_ARCH_PATH)/boot/zImage.$${dtb} $(LINUX_IMAGE_PATH).$${dtb}; \
|
||||
-d $(LINUX_ARCH_PATH)/boot/zImage.$${dtb} $(LINUX_IMAGE_PATH).$${dtb}; \
|
||||
done
|
||||
endif
|
||||
endif
|
||||
@@ -369,11 +377,12 @@ endif
|
||||
# Compilation. We make sure the kernel gets rebuilt when the
|
||||
# configuration has changed.
|
||||
define LINUX_BUILD_CMDS
|
||||
$(if $(BR2_LINUX_KERNEL_USE_CUSTOM_DTS),
|
||||
cp -f $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH)) $(KERNEL_ARCH_PATH)/boot/dts/)
|
||||
@for dts in $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH)); do \
|
||||
cp -f $${dts} $(LINUX_ARCH_PATH)/boot/dts/ ; \
|
||||
done
|
||||
$(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_TARGET_NAME)
|
||||
@if grep -q "CONFIG_MODULES=y" $(@D)/.config; then \
|
||||
$(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) modules ; \
|
||||
@if grep -q "CONFIG_MODULES=y" $(@D)/.config; then \
|
||||
$(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) modules ; \
|
||||
fi
|
||||
$(LINUX_BUILD_DTB)
|
||||
$(LINUX_APPEND_DTB)
|
||||
@@ -384,7 +393,7 @@ ifeq ($(BR2_LINUX_KERNEL_APPENDED_DTB),y)
|
||||
# appended DTBs.
|
||||
define LINUX_INSTALL_IMAGE
|
||||
mkdir -p $(1)
|
||||
cp $(KERNEL_ARCH_PATH)/boot/$(LINUX_IMAGE_NAME).* $(1)
|
||||
cp $(LINUX_ARCH_PATH)/boot/$(LINUX_IMAGE_NAME).* $(1)
|
||||
endef
|
||||
else
|
||||
# Otherwise, just install the unique image generated by the kernel
|
||||
@@ -403,15 +412,14 @@ endif
|
||||
|
||||
define LINUX_INSTALL_HOST_TOOLS
|
||||
# Installing dtc (device tree compiler) as host tool, if selected
|
||||
if grep -q "CONFIG_DTC=y" $(@D)/.config; then \
|
||||
$(INSTALL) -D -m 0755 $(@D)/scripts/dtc/dtc $(HOST_DIR)/bin/linux-dtc ; \
|
||||
if [ ! -e $(HOST_DIR)/bin/dtc ]; then \
|
||||
ln -sf linux-dtc $(HOST_DIR)/bin/dtc ; \
|
||||
fi \
|
||||
if grep -q "CONFIG_DTC=y" $(@D)/.config; then \
|
||||
$(INSTALL) -D -m 0755 $(@D)/scripts/dtc/dtc $(HOST_DIR)/bin/linux-dtc ; \
|
||||
if [ ! -e $(HOST_DIR)/bin/dtc ]; then \
|
||||
ln -sf linux-dtc $(HOST_DIR)/bin/dtc ; \
|
||||
fi \
|
||||
fi
|
||||
endef
|
||||
|
||||
|
||||
define LINUX_INSTALL_IMAGES_CMDS
|
||||
$(call LINUX_INSTALL_IMAGE,$(BINARIES_DIR))
|
||||
$(call LINUX_INSTALL_DTB,$(BINARIES_DIR))
|
||||
@@ -425,10 +433,10 @@ define LINUX_INSTALL_TARGET_CMDS
|
||||
$(LINUX_INSTALL_KERNEL_IMAGE_TO_TARGET)
|
||||
# Install modules and remove symbolic links pointing to build
|
||||
# directories, not relevant on the target
|
||||
@if grep -q "CONFIG_MODULES=y" $(@D)/.config; then \
|
||||
@if grep -q "CONFIG_MODULES=y" $(@D)/.config; then \
|
||||
$(LINUX_MAKE_ENV) $(MAKE1) $(LINUX_MAKE_FLAGS) -C $(@D) modules_install; \
|
||||
rm -f $(TARGET_DIR)/lib/modules/$(LINUX_VERSION_PROBED)/build ; \
|
||||
rm -f $(TARGET_DIR)/lib/modules/$(LINUX_VERSION_PROBED)/source ; \
|
||||
rm -f $(TARGET_DIR)/lib/modules/$(LINUX_VERSION_PROBED)/build ; \
|
||||
rm -f $(TARGET_DIR)/lib/modules/$(LINUX_VERSION_PROBED)/source ; \
|
||||
fi
|
||||
$(LINUX_INSTALL_HOST_TOOLS)
|
||||
endef
|
||||
@@ -481,9 +489,9 @@ $(error No kernel configuration file specified, check your BR2_LINUX_KERNEL_CUST
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_LINUX_KERNEL_DTS_SUPPORT)$(KERNEL_DTS_NAME),y)
|
||||
ifeq ($(BR2_LINUX_KERNEL_DTS_SUPPORT):$(strip $(LINUX_DTS_NAME)),y:)
|
||||
$(error No kernel device tree source specified, check your \
|
||||
BR2_LINUX_KERNEL_USE_INTREE_DTS / BR2_LINUX_KERNEL_USE_CUSTOM_DTS settings)
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME / BR2_LINUX_KERNEL_CUSTOM_DTS_PATH settings)
|
||||
endif
|
||||
|
||||
endif # BR_BUILDING
|
||||
|
||||
Reference in New Issue
Block a user