diff --git a/Documentation/boards/nuc.md b/Documentation/boards/nuc.md new file mode 100644 index 000000000..07628822a --- /dev/null +++ b/Documentation/boards/nuc.md @@ -0,0 +1,50 @@ +# Intel NUC + +This board configuration supports the Intel NUC mini PCs and compatibles. +Probably most recent computers will work. + +Requirements: +- x86-64 support +- UEFI boot +- SATA/AHCI storage +- Supported NIC: + - Intel Gigabit NIC (e1000, e1000e, igb) + - Realtek Gigabit NIC (r8169) + - Intel Wireless Wifi 802.11ac (iwlwifi, see below) + +## Tested Hardware + +| Device | Quirks | +|--------|-----------| +| Intel NUC5CPYH | | +| Gigabyte GB-BPCE-3455 | needs 'nomodeset' in cmdline.txt if you want a console | + + +## Wifi + +The following cards are supported: + +- Intel Wireless 3160 +- Intel Wireless 7260 +- Intel Wireless 7265 +- Intel Wireless-AC 3165 +- Intel Wireless-AC 3168 +- Intel Wireless-AC 8260 +- Intel Wireless-AC 8265 +- Intel Wireless-AC 9260 +- Intel Wireless-AC 9461 +- Intel Wireless-AC 9462 +- Intel Wireless-AC 9560 + +## Bluetooth + +Bluetooth is untested. + +## Installation + +Currently there is no shiny installation method. Checklist: +- Boot PC to live-environment using PXE or USB +- Copy or download the hassos image into your live environment +- zcat the image to local harddisk +- Reboot + diff --git a/Documentation/boards/orangepi.md b/Documentation/boards/orangepi.md new file mode 100644 index 000000000..a5f2e82f0 --- /dev/null +++ b/Documentation/boards/orangepi.md @@ -0,0 +1,20 @@ +# Raspberry PI + +Supported Hardware: + +| Device | Board | +|--------|-----------| +| Orange Pi Prime | opi-prime | + +## Serial console + +The serial port on the Orange Pi Prime is a 3 pin header located between the +power and reset buttons. The pins are labelled away from the board edge. Flow +control must be disabled in order to send data. The serial specs are 3.3V TTL, +115200,8,n,1 + +## I2C + +Add `dtparam=i2c0=on` to `cmdline.txt` + +[config]: ../configuration.md#automatic diff --git a/Documentation/getting_started_development.md b/Documentation/getting_started_development.md index 053aa807d..f7407bab6 100644 --- a/Documentation/getting_started_development.md +++ b/Documentation/getting_started_development.md @@ -47,18 +47,18 @@ Note that the current iteration of `enter.sh` will try to load the **overlayfs** ``` root@somehashinhex:/build# -root@somehashinhex:/build# cat scripts/build-all.sh +root@somehashinhex:/build# make help [...] ``` -The _hassos_ developers provides another convenience script that will build hassos images for a (rather long!) list of targets - if you're not interested in building artifacts for all supported platforms, make sure to take a peek inside and monkeypatch away... After you're done making changes, start it, and go make a cup of tea. Or fifteen. +The _hassos_ developers provide a Makefile that will build hassos images for a (rather long!) list of targets. For example run the command below to start building the _ova_ variant, and go make a cup of tea. Or fifteen. ``` -root@0db6f7079872:/build# scripts/build-all.sh +root@0db6f7079872:/build# make ova [...] ``` -Personally, I removed all advertised build targets from the `all_platforms` array variable, expect for the _ova_ variant. That will result in a single VMDK image file at the very end of the build process. This image file is a compressed block device dump with a proper GPT partition table, prepared to ship into any OVA-compatible hypervisor's innards. For me, the end of the **ova** build steps looks like this: +That will result in a single VMDK image file at the very end of the build process. This image file is a compressed block device dump with a proper GPT partition table, prepared to ship into any OVA-compatible hypervisor's innards. For me, the end of the **ova** build steps looks like this: ``` [...] diff --git a/Documentation/kernel.md b/Documentation/kernel.md index 3b31d1815..079fd5608 100644 --- a/Documentation/kernel.md +++ b/Documentation/kernel.md @@ -7,3 +7,5 @@ | Raspberry Pi | 4.14.81 | | Tinker Board | 4.14.82 | | Odroid-C2 | 4.18.20 | +| Orangepi-Prime | 4.19.13 | +| Intel NUC | 4.14.82 | diff --git a/Makefile b/Makefile new file mode 100644 index 000000000..32a691a47 --- /dev/null +++ b/Makefile @@ -0,0 +1,43 @@ +RELEASE_DIR = /build/release + +BUILDROOT=/build/buildroot +BUILDROOT_EXTERNAL=/build/buildroot-external +DEFCONFIG_DIR = $(BUILDROOT_EXTERNAL)/configs + +TARGETS := $(notdir $(patsubst %_defconfig,%,$(wildcard $(DEFCONFIG_DIR)/*_defconfig))) +TARGETS_CONFIG := $(notdir $(patsubst %_defconfig,%-config,$(wildcard $(DEFCONFIG_DIR)/*_defconfig))) + +.NOTPARALLEL: $(TARGETS) $(TARGETS_CONFIG) all + +.PHONY: $(TARGETS) $(TARGETS_CONFIG) all clean help + +all: $(TARGETS) + +$(RELEASE_DIR): + mkdir -p $(RELEASE_DIR) + +$(TARGETS_CONFIG): %-config: + @echo "config $*" + $(MAKE) -C $(BUILDROOT) BR2_EXTERNAL=$(BUILDROOT_EXTERNAL) "$*_defconfig" + +$(TARGETS): %: $(RELEASE_DIR) %-config + @echo "build $@" + $(MAKE) -C $(BUILDROOT) BR2_EXTERNAL=$(BUILDROOT_EXTERNAL) + cp -f $(BUILDROOT)/output/images/hassos_* $(RELEASE_DIR)/ + + # Do not clean when building for one target +ifneq ($(words $(filter $(TARGETS),$(MAKECMDGOALS))), 1) + @echo "clean $@" + $(MAKE) -C $(BUILDROOT) BR2_EXTERNAL=$(BUILDROOT_EXTERNAL) clean +endif + @echo "finished $@" + +clean: + $(MAKE) -C $(BUILDROOT) BR2_EXTERNAL=$(BUILDROOT_EXTERNAL) clean + +help: + @echo "Supported targets: $(TARGETS)" + @echo "Run 'make ' to build a target image." + @echo "Run 'make all' to build all target images." + @echo "Run 'make clean' to clean the build output." + @echo "Run 'make -config' to configure buildroot for a target." diff --git a/README.md b/README.md index cecc7115a..9015c8f5c 100644 --- a/README.md +++ b/README.md @@ -3,12 +3,11 @@ Hass.io OS based on [buildroot](https://buildroot.org/). It's a hypervisor for D ## Focus -- Linux kernel 4.14 (LT) - Barebox as bootloader on EFI - U-Boot as bootloader on IoT - RAUC for OTA updates - SquashFS LZ4 as filesystem -- Docker 18.03.1 +- Docker 18.09.0 - AppArmor protected - ZRAM LZ4 for /tmp, /var, swap - Run every supervisor diff --git a/buildroot-external/board/ova/barebox.config b/buildroot-external/board/intel/barebox.config similarity index 100% rename from buildroot-external/board/ova/barebox.config rename to buildroot-external/board/intel/barebox.config diff --git a/buildroot-external/board/intel/nuc/hassos-hook.sh b/buildroot-external/board/intel/nuc/hassos-hook.sh new file mode 100755 index 000000000..e1a22cdbe --- /dev/null +++ b/buildroot-external/board/intel/nuc/hassos-hook.sh @@ -0,0 +1,20 @@ +#!/bin/bash +# shellcheck disable=SC2155 + +function hassos_pre_image() { + local BOOT_DATA="$(path_boot_dir)" + + mkdir -p "${BOOT_DATA}/EFI/BOOT" + mkdir -p "${BOOT_DATA}/EFI/barebox" + + cp "${BINARIES_DIR}/barebox.bin" "${BOOT_DATA}/EFI/BOOT/BOOTx64.EFI" + cp "${BR2_EXTERNAL_HASSOS_PATH}/misc/barebox-state-efi.dtb" "${BOOT_DATA}/EFI/barebox/state.dtb" + + echo "console=tty1" > "${BOOT_DATA}/cmdline.txt" +} + + +function hassos_post_image() { + convert_disk_image_gz +} + diff --git a/buildroot-external/board/intel/nuc/kernel.config b/buildroot-external/board/intel/nuc/kernel.config new file mode 100644 index 000000000..9883a4ec8 --- /dev/null +++ b/buildroot-external/board/intel/nuc/kernel.config @@ -0,0 +1,21 @@ +CONFIG_EFI_STUB=y + +CONFIG_SCSI_LOWLEVEL=y +CONFIG_USB_XHCI_HCD=y + +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y + +CONFIG_IGB=y + +CONFIG_IWLWIFI=m +CONFIG_IWLMVM=m + +CONFIG_DRM_I915=m +CONFIG_DRM_I915_CAPTURE_ERROR=y +CONFIG_DRM_I915_COMPRESS_ERROR=y +CONFIG_DRM_I915_USERPTR=y + +CONFIG_SND_HDA=m +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_I915=y +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1 diff --git a/buildroot-external/board/intel/nuc/meta b/buildroot-external/board/intel/nuc/meta new file mode 100644 index 000000000..25be9438b --- /dev/null +++ b/buildroot-external/board/intel/nuc/meta @@ -0,0 +1,7 @@ +BOARD_ID=intel-nuc +BOARD_NAME="Intel NUC" +CHASSIS=embedded +BOOTLOADER=barebox +KERNEL_FILE=bzImage +BOOT_SYS=efi +DISK_SIZE=6 diff --git a/buildroot-external/board/ova/hassos-hook.sh b/buildroot-external/board/intel/ova/hassos-hook.sh similarity index 100% rename from buildroot-external/board/ova/hassos-hook.sh rename to buildroot-external/board/intel/ova/hassos-hook.sh diff --git a/buildroot-external/board/ova/kernel.config b/buildroot-external/board/intel/ova/kernel.config similarity index 89% rename from buildroot-external/board/ova/kernel.config rename to buildroot-external/board/intel/ova/kernel.config index 9fe015d94..c8e118917 100644 --- a/buildroot-external/board/ova/kernel.config +++ b/buildroot-external/board/intel/ova/kernel.config @@ -5,7 +5,8 @@ CONFIG_VIRTIO_PCI=y CONFIG_VIRTIO_NET=y CONFIG_VIRTIO_BALLOON=m CONFIG_VIRTIO_INPUT=m -CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_BLK=y +CONFIG_HW_RANDOM_VIRTIO=y CONFIG_SCSI_LOWLEVEL=y CONFIG_USB_XHCI_HCD=y diff --git a/buildroot-external/board/ova/meta b/buildroot-external/board/intel/ova/meta similarity index 100% rename from buildroot-external/board/ova/meta rename to buildroot-external/board/intel/ova/meta diff --git a/buildroot-external/board/ova/patches/dt-utils/0001-get-devicetree-from-file.patch b/buildroot-external/board/intel/patches/dt-utils/0001-get-devicetree-from-file.patch similarity index 100% rename from buildroot-external/board/ova/patches/dt-utils/0001-get-devicetree-from-file.patch rename to buildroot-external/board/intel/patches/dt-utils/0001-get-devicetree-from-file.patch diff --git a/buildroot-external/board/ova/patches/dt-utils/0002-support-finding-devices-by-partuuid.patch b/buildroot-external/board/intel/patches/dt-utils/0002-support-finding-devices-by-partuuid.patch similarity index 100% rename from buildroot-external/board/ova/patches/dt-utils/0002-support-finding-devices-by-partuuid.patch rename to buildroot-external/board/intel/patches/dt-utils/0002-support-finding-devices-by-partuuid.patch diff --git a/buildroot-external/board/ova/patches/rauc/0001-add-i-argument-to.patch b/buildroot-external/board/intel/patches/rauc/0001-add-i-argument-to.patch similarity index 100% rename from buildroot-external/board/ova/patches/rauc/0001-add-i-argument-to.patch rename to buildroot-external/board/intel/patches/rauc/0001-add-i-argument-to.patch diff --git a/buildroot-external/board/orangepi/hassos-hook.sh b/buildroot-external/board/orangepi/hassos-hook.sh new file mode 100755 index 000000000..9636f0d25 --- /dev/null +++ b/buildroot-external/board/orangepi/hassos-hook.sh @@ -0,0 +1,25 @@ +#!/bin/bash +# shellcheck disable=SC2155 + +function hassos_pre_image() { + local BOOT_DATA="$(path_boot_dir)" + local SPL="${BINARIES_DIR}/sunxi-spl.bin" + local UBOOT="${BINARIES_DIR}/u-boot.itb" + local spl_img="$(path_spl_img)" + + cp "${BINARIES_DIR}/boot.scr" "${BOOT_DATA}/boot.scr" + cp "${BINARIES_DIR}/sun50i-h5-orangepi-prime.dtb" "${BOOT_DATA}/sun50i-h5-orangepi-prime.dtb" + cp "${BOARD_DIR}/config.txt" "${BOOT_DATA}/config.txt" + touch "${BOOT_DATA}/cmdline.txt" + + # SPL + create_spl_image + + dd if="${SPL}" of="${spl_img}" conv=notrunc bs=512 seek=16 + dd if="${UBOOT}" of="${spl_img}" conv=notrunc bs=512 seek=80 +} + + +function hassos_post_image() { + convert_disk_image_gz +} diff --git a/buildroot-external/board/orangepi/kernel.config b/buildroot-external/board/orangepi/kernel.config new file mode 100644 index 000000000..570e83546 --- /dev/null +++ b/buildroot-external/board/orangepi/kernel.config @@ -0,0 +1,3 @@ +CONFIG_GPIOLIB=y +CONFIG_GPIO_SYSFS=y + diff --git a/buildroot-external/board/orangepi/patches/README.md b/buildroot-external/board/orangepi/patches/README.md new file mode 100644 index 000000000..7b1911b5f --- /dev/null +++ b/buildroot-external/board/orangepi/patches/README.md @@ -0,0 +1,5 @@ +## Kernel +https://github.com/armbian/build/tree/master/patch/kernel/sunxi-next + +## u-boot +https://github.com/armbian/build/tree/master/patch/u-boot/u-boot-sunxi diff --git a/buildroot-external/board/orangepi/patches/uboot/0020-sunxi-call-fdt_fixup_ethernet-again-to-set-macaddr-f.patch b/buildroot-external/board/orangepi/patches/uboot/0020-sunxi-call-fdt_fixup_ethernet-again-to-set-macaddr-f.patch new file mode 100644 index 000000000..45dc3ae32 --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/0020-sunxi-call-fdt_fixup_ethernet-again-to-set-macaddr-f.patch @@ -0,0 +1,41 @@ +From 55d3cc28b37000d1a3d7224c0ba4a808274e0b33 Mon Sep 17 00:00:00 2001 +From: Icenowy Zheng +Date: Fri, 27 Oct 2017 17:25:00 +0800 +Subject: [PATCH 20/20] sunxi: call fdt_fixup_ethernet again to set macaddr for + more aliases + +Sometimes some ethernet aliases do not exist in U-Boot FDT but they +exist in the FDT used to boot the system. In this situation +setup_environment is called again in ft_board_setup to generate macaddr +environment variable for them. However now the call to +fdt_fixup_ethernet is moved before the call of ft_board_setup. + +Call fdt_fixup_ethernet again to add MAC addresses for the extra +ethernet aliases. + +Signed-off-by: Icenowy Zheng +--- + board/sunxi/board.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/board/sunxi/board.c b/board/sunxi/board.c +index 192cf8ca45..0fe70f47cb 100644 +--- a/board/sunxi/board.c ++++ b/board/sunxi/board.c +@@ -751,10 +751,12 @@ int ft_board_setup(void *blob, bd_t *bd) + int __maybe_unused r; + + /* +- * Call setup_environment again in case the boot fdt has +- * ethernet aliases the u-boot copy does not have. ++ * Call setup_environment and fdt_fixup_ethernet again ++ * in case the boot fdt has ethernet aliases the u-boot ++ * copy does not have. + */ + setup_environment(blob); ++ fdt_fixup_ethernet(blob); + + #ifdef CONFIG_VIDEO_DT_SIMPLEFB + r = sunxi_simplefb_setup(blob); +-- +2.13.6 diff --git a/buildroot-external/board/orangepi/patches/uboot/4kfix-limit-screen-to-full-hd.patch b/buildroot-external/board/orangepi/patches/uboot/4kfix-limit-screen-to-full-hd.patch new file mode 100644 index 000000000..7abe749fc --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/4kfix-limit-screen-to-full-hd.patch @@ -0,0 +1,19 @@ +diff --git a/drivers/video/sunxi/sunxi_display.c b/drivers/video/sunxi/sunxi_display.c +index 92c9d06054..cd16d69e30 100644 +--- a/drivers/video/sunxi/sunxi_display.c ++++ b/drivers/video/sunxi/sunxi_display.c +@@ -1274,8 +1274,12 @@ void *video_hw_init(void) + ret = sunxi_hdmi_hpd_detect(hpd_delay); + if (ret) { + printf("HDMI connected: "); +- if (edid && sunxi_hdmi_edid_get_mode(&custom) == 0) +- mode = &custom; ++ if (edid && sunxi_hdmi_edid_get_mode(&custom) == 0) { ++ if ((custom.xres <= 1920) && (custom.yres <= 1080)) ++ mode = &custom; ++ else ++ mode = &res_mode_init[RES_MODE_1920x1080]; ++ } + } else if (hpd) { + sunxi_hdmi_shutdown(); + sunxi_display.monitor = sunxi_get_default_mon(false); diff --git a/buildroot-external/board/orangepi/patches/uboot/adjust-default-dram-clockspeeds.patch b/buildroot-external/board/orangepi/patches/uboot/adjust-default-dram-clockspeeds.patch new file mode 100644 index 000000000..5156fd2d6 --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/adjust-default-dram-clockspeeds.patch @@ -0,0 +1,13 @@ +diff --git a/configs/orangepi_prime_defconfig b/configs/orangepi_prime_defconfig +index 103936d772..990cf2a8c0 100644 +--- a/configs/orangepi_prime_defconfig ++++ b/configs/orangepi_prime_defconfig +@@ -1,7 +1,7 @@ + CONFIG_ARM=y + CONFIG_ARCH_SUNXI=y + CONFIG_MACH_SUN50I_H5=y +-CONFIG_DRAM_CLK=672 ++CONFIG_DRAM_CLK=624 + CONFIG_DRAM_ZQ=3881977 + CONFIG_DEFAULT_DEVICE_TREE="sun50i-h5-orangepi-prime" + # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set diff --git a/buildroot-external/board/orangepi/patches/uboot/do-not-relocate-initrd.patch b/buildroot-external/board/orangepi/patches/uboot/do-not-relocate-initrd.patch new file mode 100644 index 000000000..f5020ded0 --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/do-not-relocate-initrd.patch @@ -0,0 +1,27 @@ +diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h +index 64a190059a..bbec551cac 100644 +--- a/include/configs/sunxi-common.h ++++ b/include/configs/sunxi-common.h +@@ -503,6 +503,12 @@ extern int soft_i2c_gpio_scl; + #define FDTFILE CONFIG_DEFAULT_DEVICE_TREE ".dtb" + #endif + ++#ifdef CONFIG_MACH_SUN8I_H3 ++#define INITRD_HIGH_ENV "initrd_high=0xFFFFFFFF\0" ++#else ++#define INITRD_HIGH_ENV ++#endif ++ + #define CONFIG_EXTRA_ENV_SETTINGS \ + CONSOLE_ENV_SETTINGS \ + MEM_LAYOUT_ENV_SETTINGS \ +@@ -512,7 +518,8 @@ extern int soft_i2c_gpio_scl; + SUNXI_MTDIDS_DEFAULT \ + SUNXI_MTDPARTS_DEFAULT \ + BOOTCMD_SUNXI_COMPAT \ +- BOOTENV ++ BOOTENV \ ++ INITRD_HIGH_ENV + + #else /* ifndef CONFIG_SPL_BUILD */ + #define CONFIG_EXTRA_ENV_SETTINGS diff --git a/buildroot-external/board/orangepi/patches/uboot/enable-DT-overlays-support.patch b/buildroot-external/board/orangepi/patches/uboot/enable-DT-overlays-support.patch new file mode 100644 index 000000000..fd5ed2039 --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/enable-DT-overlays-support.patch @@ -0,0 +1,13 @@ +diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig +index 0ed36cded..822ebb812 100644 +--- a/arch/arm/Kconfig ++++ b/arch/arm/Kconfig +@@ -578,6 +578,8 @@ config ARCH_SUNXI + select CMD_GPIO + select CMD_MMC if MMC + select CMD_USB if DISTRO_DEFAULTS ++ select OF_LIBFDT ++ select OF_LIBFDT_OVERLAY + select DM + select DM_ETH + select DM_GPIO diff --git a/buildroot-external/board/orangepi/patches/uboot/enable-r_pio-gpio-access-h3-h5.patch b/buildroot-external/board/orangepi/patches/uboot/enable-r_pio-gpio-access-h3-h5.patch new file mode 100644 index 000000000..1ff273de7 --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/enable-r_pio-gpio-access-h3-h5.patch @@ -0,0 +1,24 @@ +diff --git a/arch/arm/mach-sunxi/board.c b/arch/arm/mach-sunxi/board.c +index 7ac8360..0484e7a 100644 +--- a/arch/arm/mach-sunxi/board.c ++++ b/arch/arm/mach-sunxi/board.c +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + #include + +@@ -65,6 +66,11 @@ struct mm_region *mem_map = sunxi_mem_map; + + static int gpio_init(void) + { ++#if defined(CONFIG_MACH_SUNXI_H3_H5) ++ /* enable R_PIO GPIO access */ ++ prcm_apb0_enable(PRCM_APB0_GATE_PIO); ++#endif ++ + #if CONFIG_CONS_INDEX == 1 && defined(CONFIG_UART0_PORT_F) + #if defined(CONFIG_MACH_SUN4I) || \ + defined(CONFIG_MACH_SUN7I) || \ diff --git a/buildroot-external/board/orangepi/patches/uboot/fdt-setprop-fix-unaligned-access.patch b/buildroot-external/board/orangepi/patches/uboot/fdt-setprop-fix-unaligned-access.patch new file mode 100644 index 000000000..882ceaa08 --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/fdt-setprop-fix-unaligned-access.patch @@ -0,0 +1,23 @@ +diff --git a/cmd/fdt.c b/cmd/fdt.c +index d7654b2c4f..a71b7713a8 100644 +--- a/cmd/fdt.c ++++ b/cmd/fdt.c +@@ -17,6 +17,7 @@ + #include + #include + #include ++#include + + #define MAX_LEVEL 32 /* how deeply nested we will go */ + #define SCRATCHPAD 1024 /* bytes of scratchpad memory */ +@@ -781,7 +782,10 @@ static int fdt_parse_prop(char * const *newval, int count, char *data, int *len) + cp = newp; + tmp = simple_strtoul(cp, &newp, 0); + if (*cp != '?') +- *(fdt32_t *)data = cpu_to_fdt32(tmp); ++ { ++ tmp = cpu_to_fdt32(tmp); ++ put_unaligned(tmp, (fdt32_t *)data); ++ } + else + newp++; diff --git a/buildroot-external/board/orangepi/patches/uboot/h3-Fix-PLL1-setup-to-never-use-dividers.patch b/buildroot-external/board/orangepi/patches/uboot/h3-Fix-PLL1-setup-to-never-use-dividers.patch new file mode 100644 index 000000000..f8163ffd3 --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/h3-Fix-PLL1-setup-to-never-use-dividers.patch @@ -0,0 +1,32 @@ +From 7f5071f906f79bdc99d6b4b0ccf0cb280abe740b Mon Sep 17 00:00:00 2001 +From: Ondrej Jirman +Date: Tue, 20 Dec 2016 11:25:12 +0100 +Subject: [PATCH] sunxi: h3: Fix PLL1 setup to never use dividers + +Kernel would lower the divider on first CLK change and cause the +lock up. +--- + arch/arm/mach-sunxi/clock_sun6i.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/arch/arm/mach-sunxi/clock_sun6i.c b/arch/arm/mach-sunxi/clock_sun6i.c +index 50fb302a19..91aa2a0478 100644 +--- a/arch/arm/mach-sunxi/clock_sun6i.c ++++ b/arch/arm/mach-sunxi/clock_sun6i.c +@@ -94,11 +94,10 @@ void clock_set_pll1(unsigned int clk) + int k = 1; + int m = 1; + +- if (clk > 1152000000) { +- k = 2; +- } else if (clk > 768000000) { ++ if (clk >= 1368000000) { + k = 3; +- m = 2; ++ } else if (clk >= 768000000) { ++ k = 2; + } + + /* Switch to 24MHz clock while changing PLL1 */ +-- +2.11.0 diff --git a/buildroot-external/board/orangepi/patches/uboot/h3-enable-power-led.patch b/buildroot-external/board/orangepi/patches/uboot/h3-enable-power-led.patch new file mode 100644 index 000000000..1082db0ba --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/h3-enable-power-led.patch @@ -0,0 +1,16 @@ +diff --git a/board/sunxi/board.c b/board/sunxi/board.c +index 3cf3614..89cf7f5 100644 +--- a/board/sunxi/board.c ++++ b/board/sunxi/board.c +@@ -478,6 +478,11 @@ void sunxi_board_init(void) + int power_failed = 0; + unsigned long ramsize; + ++#ifdef CONFIG_MACH_SUN8I_H3 ++ /* turn on power LED (PL10) on H3 boards */ ++ gpio_direction_output(SUNXI_GPL(10), 1); ++#endif ++ + #ifdef CONFIG_SY8106A_POWER + power_failed = sy8106a_set_vout1(CONFIG_SY8106A_VOUT1_VOLT); + #endif diff --git a/buildroot-external/board/orangepi/patches/uboot/h3-set-safe-axi_apb-clock-dividers.patch b/buildroot-external/board/orangepi/patches/uboot/h3-set-safe-axi_apb-clock-dividers.patch new file mode 100644 index 000000000..a59c4b178 --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/h3-set-safe-axi_apb-clock-dividers.patch @@ -0,0 +1,42 @@ +diff --git a/arch/arm/mach-sunxi/clock_sun6i.c b/arch/arm/mach-sunxi/clock_sun6i.c +index 15272c9..cedddc2 100644 +--- a/arch/arm/mach-sunxi/clock_sun6i.c ++++ b/arch/arm/mach-sunxi/clock_sun6i.c +@@ -117,8 +117,8 @@ void clock_set_pll1(unsigned int clk) + sdelay(200); + + /* Switch CPU to PLL1 */ +- writel(AXI_DIV_3 << AXI_DIV_SHIFT | +- ATB_DIV_2 << ATB_DIV_SHIFT | ++ writel(AXI_DIV_4 << AXI_DIV_SHIFT | ++ ATB_DIV_4 << ATB_DIV_SHIFT | + CPU_CLK_SRC_PLL1 << CPU_CLK_SRC_SHIFT, + &ccm->cpu_axi_cfg); + } +diff --git a/arch/arm/include/asm/arch-sunxi/clock_sun6i.h b/arch/arm/include/asm/arch-sunxi/clock_sun6i.h +index f2990db..b3a8575 100644 +--- a/arch/arm/include/asm/arch-sunxi/clock_sun6i.h ++++ b/arch/arm/include/asm/arch-sunxi/clock_sun6i.h +@@ -180,6 +180,7 @@ struct sunxi_ccm_reg { + #define CCM_PLL1_CTRL_N(n) ((((n) - 1) & 0x1f) << 8) + #define CCM_PLL1_CTRL_P(n) (((n) & 0x3) << 16) + #define CCM_PLL1_CTRL_EN (0x1 << 31) ++#define CCM_PLL1_CTRL_LOCK (0x1 << 28) + + #define CCM_PLL3_CTRL_M_SHIFT 0 + #define CCM_PLL3_CTRL_M_MASK (0xf << CCM_PLL3_CTRL_M_SHIFT) +diff --git a/arch/arm/mach-sunxi/clock_sun6i.c b/arch/arm/mach-sunxi/clock_sun6i.c +index cedddc2..3fe9305 100644 +--- a/arch/arm/mach-sunxi/clock_sun6i.c ++++ b/arch/arm/mach-sunxi/clock_sun6i.c +@@ -114,7 +114,9 @@ void clock_set_pll1(unsigned int clk) + writel(CCM_PLL1_CTRL_EN | CCM_PLL1_CTRL_P(p) | + CCM_PLL1_CTRL_N(clk / (24000000 * k / m)) | + CCM_PLL1_CTRL_K(k) | CCM_PLL1_CTRL_M(m), &ccm->pll1_cfg); +- sdelay(200); ++ ++ while (!(readl(&ccm->pll1_cfg) & CCM_PLL1_CTRL_LOCK)) ++ ; + + /* Switch CPU to PLL1 */ + writel(AXI_DIV_4 << AXI_DIV_SHIFT | diff --git a/buildroot-external/board/orangepi/patches/uboot/lower-default-DRAM-freq-A64-H5.patch.disabled b/buildroot-external/board/orangepi/patches/uboot/lower-default-DRAM-freq-A64-H5.patch.disabled new file mode 100644 index 000000000..d94120f20 --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/lower-default-DRAM-freq-A64-H5.patch.disabled @@ -0,0 +1,13 @@ +diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig +index 2309f59999..716e9c5e26 100644 +--- a/arch/arm/mach-sunxi/Kconfig ++++ b/arch/arm/mach-sunxi/Kconfig +@@ -278,7 +278,7 @@ config DRAM_CLK + default 312 if MACH_SUN6I || MACH_SUN8I + default 360 if MACH_SUN4I || MACH_SUN5I || MACH_SUN7I || \ + MACH_SUN8I_V3S +- default 672 if MACH_SUN50I ++ default 648 if MACH_SUN50I || MACH_SUN50I_H5 + ---help--- + Set the dram clock speed, valid range 240 - 480 (prior to sun9i), + must be a multiple of 24. For the sun9i (A80), the tested values diff --git a/buildroot-external/board/orangepi/patches/uboot/sun8i-set-machid.patch b/buildroot-external/board/orangepi/patches/uboot/sun8i-set-machid.patch new file mode 100644 index 000000000..e11f4f600 --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/sun8i-set-machid.patch @@ -0,0 +1,11 @@ +diff --git a/include/configs/sun8i.h b/include/configs/sun8i.h +index a4c3fb69e..47ce2e9e6 100644 +--- a/include/configs/sun8i.h ++++ b/include/configs/sun8i.h +@@ -30,4 +30,6 @@ + */ + #include + ++#define CONFIG_MACH_TYPE (0x1029) ++ + #endif /* __CONFIG_H */ diff --git a/buildroot-external/board/orangepi/patches/uboot/sunxi-boot-splash.patch b/buildroot-external/board/orangepi/patches/uboot/sunxi-boot-splash.patch new file mode 100644 index 000000000..8577d1912 --- /dev/null +++ b/buildroot-external/board/orangepi/patches/uboot/sunxi-boot-splash.patch @@ -0,0 +1,62 @@ +diff --git a/cmd/Kconfig b/cmd/Kconfig +index d6d130edfa..92795119ea 100644 +--- a/cmd/Kconfig ++++ b/cmd/Kconfig +@@ -1029,6 +1029,7 @@ menu "Misc commands" + config CMD_BMP + bool "Enable 'bmp' command" + depends on LCD || DM_VIDEO || VIDEO ++ default y + help + This provides a way to obtain information about a BMP-format iamge + and to display it. BMP (which presumably stands for BitMaP) is a +diff --git a/include/config_distro_bootcmd.h b/include/config_distro_bootcmd.h +index 9ed6b9892c..75d5176edf 100644 +--- a/include/config_distro_bootcmd.h ++++ b/include/config_distro_bootcmd.h +@@ -323,6 +323,15 @@ + BOOTENV_SHARED_UBIFS \ + BOOTENV_SHARED_EFI \ + "boot_prefixes=/ /boot/\0" \ ++ "splashpos=m,m\0" \ ++ "splashimage=66000000\0" \ ++ "loadsplash= " \ ++ "for prefix in ${boot_prefixes}; do " \ ++ "if test -e mmc 0 ${prefix}boot.bmp; then " \ ++ "load mmc 0 ${splashimage} ${prefix}boot.bmp; " \ ++ "bmp d ${splashimage}; " \ ++ "fi; " \ ++ "done\0" \ + "boot_scripts=boot.scr.uimg boot.scr\0" \ + "boot_script_dhcp=boot.scr.uimg\0" \ + BOOTENV_BOOT_TARGETS \ +diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h +index 02d7be0849..cbdea20d08 100644 +--- a/include/configs/sunxi-common.h ++++ b/include/configs/sunxi-common.h +@@ -284,6 +284,16 @@ extern int soft_i2c_gpio_scl; + + #endif /* CONFIG_VIDEO */ + ++#if defined CONFIG_VIDEO || defined CONFIG_DM_VIDEO ++#define CONFIG_VIDEO_LOGO ++#define CONFIG_SPLASH_SCREEN ++#define CONFIG_SPLASH_SCREEN_ALIGN ++#define CONFIG_BMP_16BPP ++#define CONFIG_BMP_24BPP ++#define CONFIG_BMP_32BPP ++#define CONFIG_VIDEO_BMP_RLE8 ++#endif ++ + /* Ethernet support */ + #ifdef CONFIG_SUNXI_EMAC + #define CONFIG_PHY_ADDR 1 +@@ -444,7 +454,7 @@ extern int soft_i2c_gpio_scl; + + #ifdef CONFIG_USB_KEYBOARD + #define CONSOLE_STDIN_SETTINGS \ +- "preboot=usb start\0" \ ++ "preboot=run loadsplash; usb start\0" \ + "stdin=serial,usbkbd\0" + #else + #define CONSOLE_STDIN_SETTINGS \ diff --git a/buildroot-external/board/orangepi/prime/config.txt b/buildroot-external/board/orangepi/prime/config.txt new file mode 100644 index 000000000..982ca9256 --- /dev/null +++ b/buildroot-external/board/orangepi/prime/config.txt @@ -0,0 +1,3 @@ +i2c0_enable=true +i2c1_enable=false +i2c2_enable=false diff --git a/buildroot-external/board/orangepi/prime/meta b/buildroot-external/board/orangepi/prime/meta new file mode 100644 index 000000000..14ad302e9 --- /dev/null +++ b/buildroot-external/board/orangepi/prime/meta @@ -0,0 +1,7 @@ +BOARD_ID=opi-prime +BOARD_NAME="Orange Pi Prime" +CHASSIS=embedded +BOOTLOADER=uboot +KERNEL_FILE=Image +BOOT_SYS=spl +BOOT_ENV_SIZE=0x8000 diff --git a/buildroot-external/board/orangepi/prime/uboot-boot.ush b/buildroot-external/board/orangepi/prime/uboot-boot.ush new file mode 100644 index 000000000..920a2d090 --- /dev/null +++ b/buildroot-external/board/orangepi/prime/uboot-boot.ush @@ -0,0 +1,88 @@ + +part start mmc ${devnum} 6 mmc_env +mmc dev ${devnum} +setenv loadbootstate " \ + echo 'loading env...'; \ + mmc read ${ramdisk_addr_r} ${mmc_env} 0x40; \ + env import -c ${ramdisk_addr_r} 0x8000;" + +setenv storebootstate " \ + echo 'storing env...'; \ + env export -c -s 0x8000 ${ramdisk_addr_r} BOOT_ORDER BOOT_A_LEFT BOOT_B_LEFT; \ + mmc write ${ramdisk_addr_r} ${mmc_env} 0x40;" + +run loadbootstate +test -n "${BOOT_ORDER}" || setenv BOOT_ORDER "A B" +test -n "${BOOT_A_LEFT}" || setenv BOOT_A_LEFT 3 +test -n "${BOOT_B_LEFT}" || setenv BOOT_B_LEFT 3 + +# HassOS bootargs +setenv bootargs_hassos "zram.enabled=1 zram.num_devices=3 apparmor=1 security=apparmor cgroup_enable=memory rootwait" + +# HassOS system A/B +setenv bootargs_a "root=PARTUUID=8d3d53e3-6d49-4c38-8349-aff6859e82fd rootfstype=squashfs ro" +setenv bootargs_b "root=PARTUUID=a3ec664e-32ce-4665-95ea-7ae90ce9aa20 rootfstype=squashfs ro" + +# Load extraargs +fileenv mmc ${devnum}:1 ${ramdisk_addr_r} cmdline.txt cmdline + +# Load device tree +fatload mmc ${devnum}:1 ${fdt_addr_r} sun50i-h5-orangepi-prime.dtb +fdt addr ${fdt_addr_r} + +if load mmc ${devnum}:1 ${ramdisk_addr_r} config.txt; then + env import -t ${ramdisk_addr_r} ${filesize}; +fi + +if test "${i2c0_enable}" != "false"; then + fdt set /soc/i2c@1c2ac00 status "okay" +fi + +if test "${i2c1_enable}" != "false"; then + fdt set /soc/i2c@1c2b000 status "okay" +fi + +if test "${i2c2_enable}" != "false"; then + fdt set /soc/i2c@1c2b400 status "okay" +fi + +setenv bootargs +for BOOT_SLOT in "${BOOT_ORDER}"; do + if test "x${bootargs}" != "x"; then + # skip remaining slots + elif test "x${BOOT_SLOT}" = "xA"; then + if test ${BOOT_A_LEFT} -gt 0; then + setexpr BOOT_A_LEFT ${BOOT_A_LEFT} - 1 + echo "Found valid slot A, ${BOOT_A_LEFT} attempts remaining" + setenv load_kernel "ext4load mmc ${devnum}:2 ${kernel_addr_r} Image" + setenv bootargs "${bootargs_hassos} ${bootargs_a} rauc.slot=A ${cmdline}" + fi + elif test "x${BOOT_SLOT}" = "xB"; then + if test ${BOOT_B_LEFT} -gt 0; then + setexpr BOOT_B_LEFT ${BOOT_B_LEFT} - 1 + echo "Found valid slot B, ${BOOT_B_LEFT} attempts remaining" + setenv load_kernel "ext4load mmc ${devnum}:4 ${kernel_addr_r} Image" + setenv bootargs "${bootargs_hassos} ${bootargs_b} rauc.slot=B ${cmdline}" + fi + fi +done + +if test -n "${bootargs}"; then + run storebootstate +else + echo "No valid slot found, resetting tries to 3" + setenv BOOT_A_LEFT 3 + setenv BOOT_B_LEFT 3 + run storebootstate + reset +fi + +echo "Loading kernel" +run load_kernel +echo " Starting kernel" +printenv load_kernel +printenv bootargs +booti ${kernel_addr_r} - ${fdt_addr_r} + +echo "Fails on boot" +reset diff --git a/buildroot-external/board/orangepi/prime/uboot.config b/buildroot-external/board/orangepi/prime/uboot.config new file mode 100644 index 000000000..8afa0b76a --- /dev/null +++ b/buildroot-external/board/orangepi/prime/uboot.config @@ -0,0 +1,8 @@ +# CONFIG_USB_STORAGE is not set +# CONFIG_DOS_PARTITIONcs not set +CONFIG_EFI_PARTITION is not set +CONFIG_USB=y +CONFIG_CMD_USB=y +CONFIG_DM_USB=y +CONFIG_CMD_FILEENV=y +CONFIG_ENV_IS_NOWHERE=Y diff --git a/buildroot-external/configs/intel_nuc_defconfig b/buildroot-external/configs/intel_nuc_defconfig new file mode 100644 index 000000000..1d1267e29 --- /dev/null +++ b/buildroot-external/configs/intel_nuc_defconfig @@ -0,0 +1,103 @@ +BR2_x86_64=y +BR2_DL_DIR="/cache/dl" +BR2_CCACHE=y +BR2_CCACHE_DIR="/cache/cc" +BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/intel/patches" +BR2_TOOLCHAIN_BUILDROOT_GLIBC=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y +BR2_GCC_VERSION_7_X=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_BINUTILS_ENABLE_LTO=y +BR2_GCC_ENABLE_LTO=y +BR2_TARGET_GENERIC_HOSTNAME="hassio" +BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS" +BR2_INIT_SYSTEMD=y +BR2_TARGET_GENERIC_GETTY_PORT="tty1" +# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set +BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay" +BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/intel/nuc $(BR2_EXTERNAL_HASSOS_PATH)/board/intel/nuc/hassos-hook.sh" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.14.82" +BR2_LINUX_KERNEL_DEFCONFIG="x86_64" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/intel/nuc/kernel.config" +BR2_LINUX_KERNEL_LZ4=y +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y +BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSOS_PATH)/busybox.config" +BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y +BR2_PACKAGE_JQ=y +BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y +BR2_PACKAGE_SQUASHFS=y +BR2_PACKAGE_LINUX_FIRMWARE=y +BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_3160=y +BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_3168=y +BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_7260=y +BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_7265=y +BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_7265D=y +BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_8000=y +BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_8265=y +BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_9XXX=y +BR2_PACKAGE_LINUX_FIRMWARE_I915=y +BR2_PACKAGE_DT_UTILS=y +BR2_PACKAGE_GPTFDISK=y +BR2_PACKAGE_GPTFDISK_SGDISK=y +BR2_PACKAGE_CA_CERTIFICATES=y +BR2_PACKAGE_LIBCGROUP=y +BR2_PACKAGE_LIBCGROUP_TOOLS=y +BR2_PACKAGE_AVAHI=y +# BR2_PACKAGE_AVAHI_AUTOIPD is not set +BR2_PACKAGE_AVAHI_DAEMON=y +BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y +BR2_PACKAGE_BLUEZ5_UTILS=y +BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y +BR2_PACKAGE_DHCP=y +BR2_PACKAGE_DHCP_CLIENT=y +BR2_PACKAGE_DROPBEAR=y +# BR2_PACKAGE_DROPBEAR_CLIENT is not set +# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set +BR2_PACKAGE_NETWORK_MANAGER=y +BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y +BR2_PACKAGE_TINI=y +BR2_PACKAGE_DOCKER_ENGINE=y +BR2_PACKAGE_DOCKER_CLI=y +BR2_PACKAGE_OPENVMTOOLS=y +BR2_PACKAGE_RAUC=y +BR2_PACKAGE_RAUC_NETWORK=y +BR2_PACKAGE_RNG_TOOLS=y +# BR2_PACKAGE_SYSTEMD_HWDB is not set +# BR2_PACKAGE_SYSTEMD_NETWORKD is not set +BR2_PACKAGE_SYSTEMD_RANDOMSEED=y +# BR2_PACKAGE_SYSTEMD_RESOLVED is not set +BR2_PACKAGE_UTIL_LINUX_PARTX=y +BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y +BR2_TARGET_ROOTFS_SQUASHFS=y +BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y +# BR2_TARGET_ROOTFS_TAR is not set +BR2_TARGET_BAREBOX=y +BR2_TARGET_BAREBOX_CUSTOM_VERSION=y +BR2_TARGET_BAREBOX_CUSTOM_VERSION_VALUE="2018.05.0" +BR2_TARGET_BAREBOX_USE_CUSTOM_CONFIG=y +BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/intel/barebox.config" +BR2_TARGET_BAREBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/barebox.config" +BR2_TARGET_BAREBOX_CUSTOM_EMBEDDED_ENV_PATH="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/barebox" +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_E2FSPROGS=y +BR2_PACKAGE_HOST_GPTFDISK=y +BR2_PACKAGE_HOST_MTOOLS=y +BR2_PACKAGE_HOST_RAUC=y +BR2_PACKAGE_HASSOS=y +BR2_PACKAGE_HASSOS_SUPERVISOR="homeassistant/amd64-hassio-supervisor" +BR2_PACKAGE_HASSOS_SUPERVISOR_VERSION="140" +BR2_PACKAGE_HASSOS_SUPERVISOR_ARGS="-e HOMEASSISTANT_REPOSITORY=homeassistant/intel-nuc-homeassistant" +BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE="hassio-supervisor" +BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE_URL="http://s3.amazonaws.com/hassio-version/apparmor.txt" +BR2_PACKAGE_HASSOS_CLI="homeassistant/amd64-hassio-cli" +BR2_PACKAGE_HASSOS_CLI_VERSION="7" +BR2_PACKAGE_HASSOS_CLI_ARGS="--network=hassio --add-host hassio:172.30.32.2" +BR2_PACKAGE_HASSOS_CLI_PROFILE="docker-default" +BR2_PACKAGE_HASSOS_APPARMOR_DIR="supervisor/apparmor" +BR2_PACKAGE_APPARMOR=y diff --git a/buildroot-external/configs/odroid_c2_defconfig b/buildroot-external/configs/odroid_c2_defconfig index 8622dde17..4805a6790 100644 --- a/buildroot-external/configs/odroid_c2_defconfig +++ b/buildroot-external/configs/odroid_c2_defconfig @@ -7,6 +7,8 @@ BR2_TOOLCHAIN_BUILDROOT_GLIBC=y BR2_KERNEL_HEADERS_4_18=y BR2_GCC_VERSION_7_X=y BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_BINUTILS_ENABLE_LTO=y +BR2_GCC_ENABLE_LTO=y BR2_TARGET_GENERIC_HOSTNAME="hassio" BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS" BR2_INIT_SYSTEMD=y @@ -21,7 +23,7 @@ BR2_LINUX_KERNEL_CUSTOM_VERSION=y BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.18.20" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-c2/kernel.config" -BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos-4_14.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config" BR2_LINUX_KERNEL_LZ4=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="amlogic/meson-gxbb-odroidc2" @@ -56,8 +58,10 @@ BR2_PACKAGE_NETWORK_MANAGER=y BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y BR2_PACKAGE_TINI=y BR2_PACKAGE_DOCKER_ENGINE=y +BR2_PACKAGE_DOCKER_CLI=y BR2_PACKAGE_RAUC=y BR2_PACKAGE_RAUC_NETWORK=y +BR2_PACKAGE_RNG_TOOLS=y # BR2_PACKAGE_SYSTEMD_HWDB is not set # BR2_PACKAGE_SYSTEMD_NETWORKD is not set BR2_PACKAGE_SYSTEMD_RANDOMSEED=y diff --git a/buildroot-external/configs/opi_prime_defconfig b/buildroot-external/configs/opi_prime_defconfig new file mode 100644 index 000000000..2b577e699 --- /dev/null +++ b/buildroot-external/configs/opi_prime_defconfig @@ -0,0 +1,112 @@ +BR2_aarch64=y +BR2_cortex_a53=y +BR2_ARM_FPU_VFPV4=y +BR2_DL_DIR="/cache/dl" +BR2_CCACHE=y +BR2_CCACHE_DIR="/cache/cc" +BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/orangepi/patches" +BR2_TOOLCHAIN_BUILDROOT_GLIBC=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y +BR2_GCC_VERSION_7_X=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_BINUTILS_ENABLE_LTO=y +BR2_GCC_ENABLE_LTO=y +BR2_TARGET_GENERIC_HOSTNAME="hassio" +BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS" +BR2_INIT_SYSTEMD=y +BR2_TARGET_GENERIC_GETTY_PORT="tty0" +# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://github.com/apritzel/arm-trusted-firmware.git" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="sun50iw1p1" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="aa75c8da415158a94b82a430b2b40000778e851f" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2018.11" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_prime" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.itb" +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="spl/sunxi-spl.bin" +BR2_TARGET_UBOOT_BOOT_SCRIPT=y +BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/orangepi/prime/uboot-boot.ush" +BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/orangepi/prime/uboot.config" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.13" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="allwinner/sun50i-h5-orangepi-prime" +BR2_LINUX_KERNEL_LZ4=y +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/orangepi/kernel.config" +BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay" +BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/orangepi/prime $(BR2_EXTERNAL_HASSOS_PATH)/board/orangepi/hassos-hook.sh" +BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSOS_PATH)/busybox.config" +BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y +BR2_PACKAGE_JQ=y +BR2_PACKAGE_E2FSPROGS=y +BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y +BR2_PACKAGE_SQUASHFS=y +BR2_PACKAGE_LINUX_FIRMWARE=y +BR2_PACKAGE_LINUX_FIRMWARE_RTL_87XX=y +BR2_PACKAGE_GPTFDISK=y +BR2_PACKAGE_GPTFDISK_SGDISK=y +BR2_PACKAGE_UBOOT_TOOLS=y +BR2_PACKAGE_CA_CERTIFICATES=y +BR2_PACKAGE_LIBDNET=y +BR2_PACKAGE_LIBCGROUP=y +BR2_PACKAGE_LIBCGROUP_TOOLS=y +BR2_PACKAGE_AVAHI=y +# BR2_PACKAGE_AVAHI_AUTOIPD is not set +BR2_PACKAGE_AVAHI_DAEMON=y +BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y +BR2_PACKAGE_BLUEZ5_UTILS=y +BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y +BR2_PACKAGE_DHCP=y +BR2_PACKAGE_DHCP_CLIENT=y +BR2_PACKAGE_DROPBEAR=y +# BR2_PACKAGE_DROPBEAR_CLIENT is not set +# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set +BR2_PACKAGE_NETWORK_MANAGER=y +BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y +BR2_PACKAGE_TINI=y +BR2_PACKAGE_DOCKER_ENGINE=y +BR2_PACKAGE_DOCKER_CLI=y +BR2_PACKAGE_RAUC=y +BR2_PACKAGE_RAUC_NETWORK=y +# BR2_PACKAGE_SYSTEMD_HWDB is not set +# BR2_PACKAGE_SYSTEMD_NETWORKD is not set +BR2_PACKAGE_SYSTEMD_RANDOMSEED=y +# BR2_PACKAGE_SYSTEMD_RESOLVED is not set +BR2_PACKAGE_UTIL_LINUX_PARTX=y +BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y +BR2_TARGET_ROOTFS_SQUASHFS=y +BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y +# BR2_TARGET_ROOTFS_TAR is not set +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_E2FSPROGS=y +BR2_PACKAGE_HOST_GPTFDISK=y +BR2_PACKAGE_HOST_MTOOLS=y +BR2_PACKAGE_HOST_RAUC=y +BR2_PACKAGE_HOST_SWIG=y +BR2_PACKAGE_HASSOS=y +BR2_PACKAGE_HASSOS_SUPERVISOR="homeassistant/aarch64-hassio-supervisor" +BR2_PACKAGE_HASSOS_SUPERVISOR_VERSION="141" +BR2_PACKAGE_HASSOS_SUPERVISOR_ARGS="-e HOMEASSISTANT_REPOSITORY=homeassistant/orangepi-prime-homeassistant" +BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE="hassio-supervisor" +BR2_PACKAGE_HASSOS_SUPERVISOR_PROFILE_URL="http://s3.amazonaws.com/hassio-version/apparmor.txt" +BR2_PACKAGE_HASSOS_CLI="homeassistant/aarch64-hassio-cli" +BR2_PACKAGE_HASSOS_CLI_VERSION="7" +BR2_PACKAGE_HASSOS_CLI_ARGS="--network=hassio --add-host hassio:172.30.32.2" +BR2_PACKAGE_HASSOS_CLI_PROFILE="docker-default" +BR2_PACKAGE_HASSOS_APPARMOR_DIR="supervisor/apparmor" +BR2_PACKAGE_APPARMOR=y diff --git a/buildroot-external/configs/ova_defconfig b/buildroot-external/configs/ova_defconfig index 27b956ef7..2d090339f 100644 --- a/buildroot-external/configs/ova_defconfig +++ b/buildroot-external/configs/ova_defconfig @@ -2,11 +2,13 @@ BR2_x86_64=y BR2_DL_DIR="/cache/dl" BR2_CCACHE=y BR2_CCACHE_DIR="/cache/cc" -BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/ova/patches" +BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/intel/patches" BR2_TOOLCHAIN_BUILDROOT_GLIBC=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y BR2_GCC_VERSION_7_X=y BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_BINUTILS_ENABLE_LTO=y +BR2_GCC_ENABLE_LTO=y BR2_TARGET_GENERIC_HOSTNAME="hassio" BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS" BR2_INIT_SYSTEMD=y @@ -15,12 +17,12 @@ BR2_TARGET_GENERIC_GETTY_PORT="tty1" BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay" BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" -BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/ova $(BR2_EXTERNAL_HASSOS_PATH)/board/ova/hassos-hook.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/intel/ova $(BR2_EXTERNAL_HASSOS_PATH)/board/intel/ova/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.14.82" BR2_LINUX_KERNEL_DEFCONFIG="x86_64" -BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos-4_14.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/ova/kernel.config" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/intel/ova/kernel.config" BR2_LINUX_KERNEL_LZ4=y BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y @@ -51,9 +53,11 @@ BR2_PACKAGE_NETWORK_MANAGER=y BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y BR2_PACKAGE_TINI=y BR2_PACKAGE_DOCKER_ENGINE=y +BR2_PACKAGE_DOCKER_CLI=y BR2_PACKAGE_OPENVMTOOLS=y BR2_PACKAGE_RAUC=y BR2_PACKAGE_RAUC_NETWORK=y +BR2_PACKAGE_RNG_TOOLS=y # BR2_PACKAGE_SYSTEMD_HWDB is not set # BR2_PACKAGE_SYSTEMD_NETWORKD is not set BR2_PACKAGE_SYSTEMD_RANDOMSEED=y @@ -67,7 +71,7 @@ BR2_TARGET_BAREBOX=y BR2_TARGET_BAREBOX_CUSTOM_VERSION=y BR2_TARGET_BAREBOX_CUSTOM_VERSION_VALUE="2018.05.0" BR2_TARGET_BAREBOX_USE_CUSTOM_CONFIG=y -BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/ova/barebox.config" +BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/intel/barebox.config" BR2_TARGET_BAREBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/barebox.config" BR2_TARGET_BAREBOX_CUSTOM_EMBEDDED_ENV_PATH="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/barebox" BR2_PACKAGE_HOST_DOSFSTOOLS=y diff --git a/buildroot-external/configs/rpi0_w_defconfig b/buildroot-external/configs/rpi0_w_defconfig index 04f884ef6..21a011ce3 100644 --- a/buildroot-external/configs/rpi0_w_defconfig +++ b/buildroot-external/configs/rpi0_w_defconfig @@ -9,6 +9,8 @@ BR2_TOOLCHAIN_BUILDROOT_GLIBC=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y BR2_GCC_VERSION_7_X=y BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_BINUTILS_ENABLE_LTO=y +BR2_GCC_ENABLE_LTO=y BR2_TARGET_GENERIC_HOSTNAME="hassio" BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS" BR2_INIT_SYSTEMD=y @@ -23,7 +25,7 @@ BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux" BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="f6878de4d2818c2256b2a340eaeeabfb0b24c71b" BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi" -BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos-4_14.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config" BR2_LINUX_KERNEL_LZ4=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2708-rpi-0-w" @@ -59,8 +61,10 @@ BR2_PACKAGE_NETWORK_MANAGER=y BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y BR2_PACKAGE_TINI=y BR2_PACKAGE_DOCKER_ENGINE=y +BR2_PACKAGE_DOCKER_CLI=y BR2_PACKAGE_RAUC=y BR2_PACKAGE_RAUC_NETWORK=y +BR2_PACKAGE_RNG_TOOLS=y # BR2_PACKAGE_SYSTEMD_HWDB is not set # BR2_PACKAGE_SYSTEMD_NETWORKD is not set BR2_PACKAGE_SYSTEMD_RANDOMSEED=y diff --git a/buildroot-external/configs/rpi2_defconfig b/buildroot-external/configs/rpi2_defconfig index 24c5833c2..1da4c54b0 100644 --- a/buildroot-external/configs/rpi2_defconfig +++ b/buildroot-external/configs/rpi2_defconfig @@ -9,6 +9,8 @@ BR2_TOOLCHAIN_BUILDROOT_GLIBC=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y BR2_GCC_VERSION_7_X=y BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_BINUTILS_ENABLE_LTO=y +BR2_GCC_ENABLE_LTO=y BR2_TARGET_GENERIC_HOSTNAME="hassio" BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS" BR2_INIT_SYSTEMD=y @@ -23,7 +25,7 @@ BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux" BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="f6878de4d2818c2256b2a340eaeeabfb0b24c71b" BR2_LINUX_KERNEL_DEFCONFIG="bcm2709" -BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos-4_14.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config" BR2_LINUX_KERNEL_LZ4=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2709-rpi-2-b" @@ -58,8 +60,10 @@ BR2_PACKAGE_NETWORK_MANAGER=y BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y BR2_PACKAGE_TINI=y BR2_PACKAGE_DOCKER_ENGINE=y +BR2_PACKAGE_DOCKER_CLI=y BR2_PACKAGE_RAUC=y BR2_PACKAGE_RAUC_NETWORK=y +BR2_PACKAGE_RNG_TOOLS=y # BR2_PACKAGE_SYSTEMD_HWDB is not set # BR2_PACKAGE_SYSTEMD_NETWORKD is not set BR2_PACKAGE_SYSTEMD_RANDOMSEED=y diff --git a/buildroot-external/configs/rpi3_64_defconfig b/buildroot-external/configs/rpi3_64_defconfig index 7069b04db..97d5ee70c 100644 --- a/buildroot-external/configs/rpi3_64_defconfig +++ b/buildroot-external/configs/rpi3_64_defconfig @@ -9,6 +9,8 @@ BR2_TOOLCHAIN_BUILDROOT_GLIBC=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y BR2_GCC_VERSION_7_X=y BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_BINUTILS_ENABLE_LTO=y +BR2_GCC_ENABLE_LTO=y BR2_TARGET_GENERIC_HOSTNAME="hassio" BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS" BR2_INIT_SYSTEMD=y @@ -23,7 +25,7 @@ BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux" BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="f6878de4d2818c2256b2a340eaeeabfb0b24c71b" BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi3" -BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos-4_14.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config" BR2_LINUX_KERNEL_LZ4=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="broadcom/bcm2710-rpi-3-b broadcom/bcm2837-rpi-3-b broadcom/bcm2710-rpi-3-b-plus" @@ -59,8 +61,10 @@ BR2_PACKAGE_NETWORK_MANAGER=y BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y BR2_PACKAGE_TINI=y BR2_PACKAGE_DOCKER_ENGINE=y +BR2_PACKAGE_DOCKER_CLI=y BR2_PACKAGE_RAUC=y BR2_PACKAGE_RAUC_NETWORK=y +BR2_PACKAGE_RNG_TOOLS=y # BR2_PACKAGE_SYSTEMD_HWDB is not set # BR2_PACKAGE_SYSTEMD_NETWORKD is not set BR2_PACKAGE_SYSTEMD_RANDOMSEED=y diff --git a/buildroot-external/configs/rpi3_defconfig b/buildroot-external/configs/rpi3_defconfig index 3343a3a5d..888911011 100644 --- a/buildroot-external/configs/rpi3_defconfig +++ b/buildroot-external/configs/rpi3_defconfig @@ -9,6 +9,8 @@ BR2_TOOLCHAIN_BUILDROOT_GLIBC=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y BR2_GCC_VERSION_7_X=y BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_BINUTILS_ENABLE_LTO=y +BR2_GCC_ENABLE_LTO=y BR2_TARGET_GENERIC_HOSTNAME="hassio" BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS" BR2_INIT_SYSTEMD=y @@ -23,7 +25,7 @@ BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux" BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="f6878de4d2818c2256b2a340eaeeabfb0b24c71b" BR2_LINUX_KERNEL_DEFCONFIG="bcm2709" -BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos-4_14.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config" BR2_LINUX_KERNEL_LZ4=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2710-rpi-3-b bcm2710-rpi-3-b-plus bcm2710-rpi-cm3" @@ -59,8 +61,10 @@ BR2_PACKAGE_NETWORK_MANAGER=y BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y BR2_PACKAGE_TINI=y BR2_PACKAGE_DOCKER_ENGINE=y +BR2_PACKAGE_DOCKER_CLI=y BR2_PACKAGE_RAUC=y BR2_PACKAGE_RAUC_NETWORK=y +BR2_PACKAGE_RNG_TOOLS=y # BR2_PACKAGE_SYSTEMD_HWDB is not set # BR2_PACKAGE_SYSTEMD_NETWORKD is not set BR2_PACKAGE_SYSTEMD_RANDOMSEED=y diff --git a/buildroot-external/configs/rpi_defconfig b/buildroot-external/configs/rpi_defconfig index 3bd4a16f0..106dbcb55 100644 --- a/buildroot-external/configs/rpi_defconfig +++ b/buildroot-external/configs/rpi_defconfig @@ -9,6 +9,8 @@ BR2_TOOLCHAIN_BUILDROOT_GLIBC=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y BR2_GCC_VERSION_7_X=y BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_BINUTILS_ENABLE_LTO=y +BR2_GCC_ENABLE_LTO=y BR2_TARGET_GENERIC_HOSTNAME="hassio" BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS" BR2_INIT_SYSTEMD=y @@ -23,7 +25,7 @@ BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux" BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="f6878de4d2818c2256b2a340eaeeabfb0b24c71b" BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi" -BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos-4_14.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config" BR2_LINUX_KERNEL_LZ4=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2708-rpi-b bcm2708-rpi-b-plus bcm2708-rpi-cm" @@ -58,8 +60,10 @@ BR2_PACKAGE_NETWORK_MANAGER=y BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y BR2_PACKAGE_TINI=y BR2_PACKAGE_DOCKER_ENGINE=y +BR2_PACKAGE_DOCKER_CLI=y BR2_PACKAGE_RAUC=y BR2_PACKAGE_RAUC_NETWORK=y +BR2_PACKAGE_RNG_TOOLS=y # BR2_PACKAGE_SYSTEMD_HWDB is not set # BR2_PACKAGE_SYSTEMD_NETWORKD is not set BR2_PACKAGE_SYSTEMD_RANDOMSEED=y diff --git a/buildroot-external/configs/tinker_defconfig b/buildroot-external/configs/tinker_defconfig index 8b661ff7d..08237062b 100644 --- a/buildroot-external/configs/tinker_defconfig +++ b/buildroot-external/configs/tinker_defconfig @@ -9,6 +9,8 @@ BR2_TOOLCHAIN_BUILDROOT_GLIBC=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y BR2_GCC_VERSION_7_X=y BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_BINUTILS_ENABLE_LTO=y +BR2_GCC_ENABLE_LTO=y BR2_TARGET_GENERIC_HOSTNAME="hassio" BR2_TARGET_GENERIC_ISSUE="Welcome to HassOS" BR2_INIT_SYSTEMD=y @@ -23,7 +25,7 @@ BR2_LINUX_KERNEL_CUSTOM_VERSION=y BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.14.82" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/asus/tinker/kernel.config" -BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos-4_14.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config" BR2_LINUX_KERNEL_LZ4=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="rk3288-tinker" @@ -59,8 +61,10 @@ BR2_PACKAGE_NETWORK_MANAGER=y BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y BR2_PACKAGE_TINI=y BR2_PACKAGE_DOCKER_ENGINE=y +BR2_PACKAGE_DOCKER_CLI=y BR2_PACKAGE_RAUC=y BR2_PACKAGE_RAUC_NETWORK=y +BR2_PACKAGE_RNG_TOOLS=y # BR2_PACKAGE_SYSTEMD_HWDB is not set # BR2_PACKAGE_SYSTEMD_NETWORKD is not set BR2_PACKAGE_SYSTEMD_RANDOMSEED=y diff --git a/buildroot-external/kernel/device-support.config b/buildroot-external/kernel/device-support.config index cde03141f..31edda16f 100644 --- a/buildroot-external/kernel/device-support.config +++ b/buildroot-external/kernel/device-support.config @@ -4,5 +4,6 @@ CONFIG_USB_SERIAL_SIMPLE=m CONFIG_USB_SERIAL_CP210X=m CONFIG_USB_SERIAL_FTDI_SIO=m CONFIG_USB_SERIAL_PL2303=m +CONFIG_USB_SERIAL_CH341=m CONFIG_USB_ACM=m diff --git a/buildroot-external/kernel/hassos-4_14.config b/buildroot-external/kernel/docker.config similarity index 57% rename from buildroot-external/kernel/hassos-4_14.config rename to buildroot-external/kernel/docker.config index 36f330a9d..8c8e92647 100644 --- a/buildroot-external/kernel/hassos-4_14.config +++ b/buildroot-external/kernel/docker.config @@ -1,9 +1,3 @@ -CONFIG_KERNEL_LZ4=y -CONFIG_CMDLINE="" - -CONFIG_ZRAM=y -CONFIG_ZSMALLOC=y - CONFIG_POSIX_MQUEUE=y CONFIG_CFQ_GROUP_IOSCHED=y CONFIG_CFS_BANDWIDTH=y @@ -12,6 +6,7 @@ CONFIG_RT_GROUP_SCHED=y CONFIG_NET_SCHED=y CONFIG_CGROUPS=y +CONFIG_HUGETLB_PAGE=y CONFIG_BLK_CGROUP=y CONFIG_BLK_DEV_THROTTLING=y CONFIG_CGROUP_SCHED=y @@ -21,6 +16,7 @@ CONFIG_CGROUP_HUGETLB=y CONFIG_CGROUP_DEVICE=y CONFIG_CGROUP_CPUACCT=y CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_HUGETLB=y CONFIG_NET_CLS_CGROUP=y CONFIG_CGROUP_NET_PRIO=y CONFIG_CGROUP_BPF=y @@ -36,19 +32,15 @@ CONFIG_IPC_NS=y CONFIG_UTS_NS=y CONFIG_NETDEVICES=y -CONFIG_DUMMY=y -CONFIG_MACVLAN=y -CONFIG_IPVLAN=y -CONFIG_VXLAN=y - -CONFIG_VLAN_8021Q=m -CONFIG_VLAN_8021Q_GVRP=y -CONFIG_VLAN_8021Q_MVRP=y +CONFIG_DUMMY=m +CONFIG_MACVLAN=m +CONFIG_IPVLAN=m +CONFIG_VXLAN=m CONFIG_INET=y CONFIG_IPV6=y -CONFIG_INET_ESP=y -CONFIG_INET_XFRM_MODE_TRANSPORT=y +CONFIG_INET_ESP=m +CONFIG_INET_XFRM_MODE_TRANSPORT=m CONFIG_NETCONSOLE=y CONFIG_VETH=y CONFIG_NETFILTER=y @@ -56,8 +48,6 @@ CONFIG_NF_CONNTRACK=y CONFIG_NF_NAT=y CONFIG_NF_NAT_NEEDED=y CONFIG_NF_CONNTRACK_IPV4=y -CONFIG_NF_CONNTRACK_FTP=y -CONFIG_NF_CONNTRACK_TFTP=y CONFIG_NETFILTER_ADVANCED=y CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y @@ -69,40 +59,21 @@ CONFIG_IP_NF_IPTABLES=y CONFIG_IP_NF_FILTER=y CONFIG_IP_NF_NAT=y CONFIG_IP_NF_TARGET_MASQUERADE=y +CONFIG_IP_NF_TARGET_REDIRECT=y CONFIG_BRIDGE=y CONFIG_BRIDGE_NETFILTER=y -CONFIG_XFRM=y -CONFIG_XFRM_USER=y -CONFIG_XFRM_ALGO=y +CONFIG_XFRM=m +CONFIG_XFRM_USER=m +CONFIG_XFRM_ALGO=m CONFIG_NET_L3_MASTER_DEV=y -CONFIG_MISC_FILESYSTEMS=y -CONFIG_BLOCK=y CONFIG_EXT4_FS=y CONFIG_EXT4_FS_POSIX_ACL=y CONFIG_EXT4_FS_SECURITY=y CONFIG_OVERLAY_FS=y -CONFIG_MSDOS_FS=y -CONFIG_VFAT_FS=y -CONFIG_SQUASHFS=y -CONFIG_SQUASHFS_XATTR=y -CONFIG_SQUASHFS_LZ4=y -# CONFIG_SECCOMP is not set -CONFIG_SECURITY=y -CONFIG_SECURITY_APPARMOR=y -CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1 -CONFIG_KEYS=y +CONFIG_CRYPTO_CCM=m +CONFIG_CRYPTO_GCM=m +CONFIG_CRYPTO_CMAC=m +CONFIG_CRYPTO_ARC4=m -CONFIG_CRYPTO_CCM=y -CONFIG_CRYPTO_GCM=y -CONFIG_CRYPTO_CMAC=y -CONFIG_CRYPTO_ARC4=y -CONFIG_CRYPTO_LZ4=y - -CONFIG_PARTITION_ADVANCED=y -CONFIG_EFI_PARTITION=y - -# CONFIG_LOGO is not set -# CONFIG_VIRTUALIZATION is not set -# CONFIG_DEBUG_STACK_USAGE is not set diff --git a/buildroot-external/kernel/hassos.config b/buildroot-external/kernel/hassos.config new file mode 100644 index 000000000..e90a004dc --- /dev/null +++ b/buildroot-external/kernel/hassos.config @@ -0,0 +1,35 @@ +CONFIG_KERNEL_LZ4=y +CONFIG_CMDLINE="" + +CONFIG_ZRAM=y +CONFIG_ZSMALLOC=y + +CONFIG_MISC_FILESYSTEMS=y +CONFIG_BLOCK=y +CONFIG_EXT4_FS=y +CONFIG_MSDOS_FS=y +CONFIG_VFAT_FS=y +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_LZ4=y + +# CONFIG_SECCOMP is not set +CONFIG_AUDIT=y +CONFIG_SECURITY=y +CONFIG_SECURITY_APPARMOR=y + +CONFIG_CRYPTO=y +CONFIG_CRYPTO_LZ4=y + +CONFIG_PARTITION_ADVANCED=y +CONFIG_EFI_PARTITION=y +CONFIG_MSDOS_PARTITION=y + +# CONFIG_LOGO is not set +# CONFIG_VIRTUALIZATION is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_BTRFS_FS is not set + +CONFIG_VLAN_8021Q=m +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y diff --git a/buildroot-external/meta b/buildroot-external/meta index 8d53c27e6..78a5675e3 100644 --- a/buildroot-external/meta +++ b/buildroot-external/meta @@ -1,5 +1,5 @@ VERSION_MAJOR=2 -VERSION_BUILD=4 +VERSION_BUILD=5 HASSOS_NAME="HassOS" HASSOS_ID="hassos" diff --git a/buildroot-external/rootfs-overlay/usr/sbin/hassos-cli b/buildroot-external/rootfs-overlay/usr/sbin/hassos-cli index 4bce3695a..83bc00a0f 100755 --- a/buildroot-external/rootfs-overlay/usr/sbin/hassos-cli +++ b/buildroot-external/rootfs-overlay/usr/sbin/hassos-cli @@ -20,9 +20,9 @@ docker container run \ $DOCKER_ARGS \ "${CLI}" -# Jump to root shell +# Jump to root login shell if [ $? -eq 10 ]; then - /bin/ash + /bin/ash -l fi exit diff --git a/buildroot-patches/0003-docker-engine-add-AppArmor-support.patch b/buildroot-patches/0003-docker-engine-add-AppArmor-support.patch new file mode 100644 index 000000000..98334cdce --- /dev/null +++ b/buildroot-patches/0003-docker-engine-add-AppArmor-support.patch @@ -0,0 +1,37 @@ +From 93c43e8572d374edbea8521f63c071a0a5cb1098 Mon Sep 17 00:00:00 2001 +From: Pascal Vizeli +Date: Thu, 3 Jan 2019 19:54:57 +0000 +Subject: [PATCH 1/1] docker-engine: add AppArmor support + +Signed-off-by: Pascal Vizeli +--- + package/docker-engine/docker-engine.mk | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/package/docker-engine/docker-engine.mk b/package/docker-engine/docker-engine.mk +index f19c1d9..9ecfd10 100644 +--- a/package/docker-engine/docker-engine.mk ++++ b/package/docker-engine/docker-engine.mk +@@ -17,7 +17,7 @@ DOCKER_ENGINE_LDFLAGS = \ + -X main.GitCommit=$(DOCKER_ENGINE_VERSION) \ + -X main.Version=$(DOCKER_ENGINE_VERSION) + +-DOCKER_ENGINE_TAGS = cgo exclude_graphdriver_zfs autogen ++DOCKER_ENGINE_TAGS = cgo exclude_graphdriver_zfs autogen apparmor + DOCKER_ENGINE_BUILD_TARGETS = cmd/dockerd + + ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) +@@ -77,4 +77,10 @@ define DOCKER_ENGINE_USERS + - - docker -1 * - - - Docker Application Container Framework + endef + ++define DOCKER_ENGINE_INSTALL_SYMLINKS ++ ln -fs tini $(TARGET_DIR)/usr/bin/docker-init ++endef ++ ++DOCKER_ENGINE_POST_INSTALL_TARGET_HOOKS += DOCKER_ENGINE_INSTALL_SYMLINKS ++ + $(eval $(golang-package)) +-- +2.17.1 + diff --git a/buildroot-patches/0003-docker-engine-bump-to-v18.09.0-ce.patch b/buildroot-patches/0003-docker-engine-bump-to-v18.09.0-ce.patch deleted file mode 100644 index f1cbc72cf..000000000 --- a/buildroot-patches/0003-docker-engine-bump-to-v18.09.0-ce.patch +++ /dev/null @@ -1,123 +0,0 @@ -From 0ae02b1feb46e005a7addd6b5addd43ce6c34d2d Mon Sep 17 00:00:00 2001 -From: Pascal Vizeli -Date: Sun, 25 Nov 2018 16:18:33 +0000 -Subject: [PATCH 1/1] docker-engine: bump to v18.09.0-ce - -Signed-off-by: Pascal Vizeli ---- - package/docker-engine/docker-engine.hash | 2 +- - package/docker-engine/docker-engine.mk | 46 +++++++++++++++++------- - 2 files changed, 34 insertions(+), 14 deletions(-) - -diff --git a/package/docker-engine/docker-engine.hash b/package/docker-engine/docker-engine.hash -index 6c0ed33..5ef89cc 100644 ---- a/package/docker-engine/docker-engine.hash -+++ b/package/docker-engine/docker-engine.hash -@@ -1,2 +1,2 @@ - # Locally calculated --sha256 4716df117d867b82ddab2e82395cd40aa3d0925a689eedcec8919729e4c9f121 docker-engine-v17.05.0-ce.tar.gz -+sha256 0f251f04b1973956f070c1d7ee2751a9663da2d9d701fbab7e957f0f5f310478 docker-engine-v18.09.0.tar.gz -diff --git a/package/docker-engine/docker-engine.mk b/package/docker-engine/docker-engine.mk -index ba84b4c..0c3ab5b 100644 ---- a/package/docker-engine/docker-engine.mk -+++ b/package/docker-engine/docker-engine.mk -@@ -4,9 +4,8 @@ - # - ################################################################################ - --DOCKER_ENGINE_VERSION = v17.05.0-ce --DOCKER_ENGINE_COMMIT = 89658bed64c2a8fe05a978e5b87dbec409d57a0f --DOCKER_ENGINE_SITE = $(call github,docker,docker,$(DOCKER_ENGINE_VERSION)) -+DOCKER_ENGINE_VERSION = v18.09.0 -+DOCKER_ENGINE_SITE = $(call github,docker,docker-ce,$(DOCKER_ENGINE_VERSION)) - - DOCKER_ENGINE_LICENSE = Apache-2.0 - DOCKER_ENGINE_LICENSE_FILES = LICENSE -@@ -15,14 +14,16 @@ DOCKER_ENGINE_DEPENDENCIES = host-go host-pkgconf - - DOCKER_ENGINE_LDFLAGS = \ - -X main.GitCommit=$(DOCKER_ENGINE_VERSION) \ -- -X main.Version=$(DOCKER_ENGINE_VERSION) -+ -X main.Version=$(DOCKER_ENGINE_VERSION) \ -+ -X github.com/docker/cli/cli.GitCommit=$(DOCKER_ENGINE_VERSION) \ -+ -X github.com/docker/cli/cli.Version=$(DOCKER_ENGINE_VERSION) - - ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_STATIC_CLIENT),y) - DOCKER_ENGINE_LDFLAGS += -extldflags '-static' - endif - --DOCKER_ENGINE_TAGS = cgo exclude_graphdriver_zfs autogen --DOCKER_ENGINE_BUILD_TARGETS = cmd/docker -+DOCKER_ENGINE_TAGS = cgo exclude_graphdriver_zfs autogen apparmor -+DOCKER_ENGINE_BUILD_TARGETS = docker - - ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) - DOCKER_ENGINE_TAGS += seccomp -@@ -36,7 +37,7 @@ endif - - ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DAEMON),y) - DOCKER_ENGINE_TAGS += daemon --DOCKER_ENGINE_BUILD_TARGETS += cmd/dockerd -+DOCKER_ENGINE_BUILD_TARGETS += dockerd - endif - - ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_EXPERIMENTAL),y) -@@ -61,25 +62,26 @@ else - DOCKER_ENGINE_TAGS += exclude_graphdriver_vfs - endif - --DOCKER_ENGINE_INSTALL_BINS = $(notdir $(DOCKER_ENGINE_BUILD_TARGETS)) -- - define DOCKER_ENGINE_RUN_AUTOGEN -- cd $(@D) && \ -- GITCOMMIT="$$(echo $(DOCKER_ENGINE_COMMIT) | head -c7)" \ -+ ln -fs $(@D)/components/engine $(@D)/_gopath/src/github.com/docker/docker -+ ln -fs $(@D)/components/cli $(@D)/_gopath/src/github.com/docker/cli -+ cd $(@D)/components/engine && \ - BUILDTIME="$$(date)" \ -+ IAMSTATIC="true" \ - VERSION="$(patsubst v%,%,$(DOCKER_ENGINE_VERSION))" \ - PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" $(TARGET_MAKE_ENV) \ - bash ./hack/make/.go-autogen - endef - - DOCKER_ENGINE_POST_CONFIGURE_HOOKS += DOCKER_ENGINE_RUN_AUTOGEN -+DOCKER_ENGINE_INSTALL_BINS = $(notdir $(DOCKER_ENGINE_BUILD_TARGETS)) - - ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DAEMON),y) - - define DOCKER_ENGINE_INSTALL_INIT_SYSTEMD -- $(INSTALL) -D -m 0644 $(@D)/contrib/init/systemd/docker.service \ -+ $(INSTALL) -D -m 0644 $(@D)/components/engine/contrib/init/systemd/docker.service \ - $(TARGET_DIR)/usr/lib/systemd/system/docker.service -- $(INSTALL) -D -m 0644 $(@D)/contrib/init/systemd/docker.socket \ -+ $(INSTALL) -D -m 0644 $(@D)/components/engine/contrib/init/systemd/docker.socket \ - $(TARGET_DIR)/usr/lib/systemd/system/docker.socket - mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/ - ln -fs ../../../../usr/lib/systemd/system/docker.service \ -@@ -92,4 +94,22 @@ endef - - endif - -+define DOCKER_ENGINE_BUILD_CMDS -+ $(foreach target,$(DOCKER_ENGINE_BUILD_TARGETS), \ -+ cd $(@D)/$(DOCKER_ENGINE_WORKSPACE)/src/github.com/docker/$(if $(filter $(target),dockerd),docker,cli); \ -+ $(GO_TARGET_ENV) \ -+ GOPATH="$(@D)/$(DOCKER_ENGINE_WORKSPACE)" \ -+ $(DOCKER_ENGINE_GO_ENV) \ -+ $(GO_BIN) build -v $(DOCKER_ENGINE_BUILD_OPTS) \ -+ -o $(@D)/bin/$(target) \ -+ ./cmd/$(target) -+ ) -+endef -+ -+define DOCKER_ENGINE_INSTALL_SYMLINKS -+ ln -fs tini $(TARGET_DIR)/usr/bin/docker-init -+endef -+ -+DOCKER_ENGINE_POST_INSTALL_TARGET_HOOKS += DOCKER_ENGINE_INSTALL_SYMLINKS -+ - $(eval $(golang-package)) --- -2.17.1 - diff --git a/buildroot-patches/0010-dt-utils-fix-glibc.patch b/buildroot-patches/0010-dt-utils-fix-glibc.patch deleted file mode 100644 index f4613edd0..000000000 --- a/buildroot-patches/0010-dt-utils-fix-glibc.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 7e5094033df2efc88928071c6e7a2867c396ca68 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Mon, 3 Dec 2018 13:38:00 +0100 -Subject: package/dt-utils: fix build with glibc 2.28 - -This commit backports an upstream patch that fixes the build of -dt-utils with glibc 2.28+. - -Fixes bug #11536. - -Signed-off-by: Thomas Petazzoni ---- - ...pilation-for-glibc-version-2.27.9000-36.f.patch | 75 ++++++++++++++++++++++ - 1 file changed, 75 insertions(+) - create mode 100644 package/dt-utils/0001-src-fix-compilation-for-glibc-version-2.27.9000-36.f.patch - -diff --git a/package/dt-utils/0001-src-fix-compilation-for-glibc-version-2.27.9000-36.f.patch b/package/dt-utils/0001-src-fix-compilation-for-glibc-version-2.27.9000-36.f.patch -new file mode 100644 -index 0000000..8c2f585 ---- /dev/null -+++ b/package/dt-utils/0001-src-fix-compilation-for-glibc-version-2.27.9000-36.f.patch -@@ -0,0 +1,75 @@ -+From 1c80e31872aec9f2ef7eca6a52aa89c0ea759d8f Mon Sep 17 00:00:00 2001 -+From: Enrico Joerns -+Date: Wed, 5 Sep 2018 12:28:28 +0200 -+Subject: [PATCH] src: fix compilation for glibc version 2.27.9000-36.fc29 and -+ newer -+ -+As recent glibc versions (>= 2.27.9000-36.fc29) also define 'struct -+statx' which is also defined in linux/stat.h, compilation fails with -+error: -+ -+| In file included from ../dt-utils-2018.05.0/src/crypto/digest.c:24: -+| [..]/usr/include/linux/stat.h:56:8: error: redefinition of 'struct statx_timestamp' -+| struct statx_timestamp { -+| ^~~~~~~~~~~~~~~ -+| In file included from [..]/usr/include/sys/stat.h:446, -+| from ../dt-utils-2018.05.0/src/dt/common.h:15, -+| from ../dt-utils-2018.05.0/src/crypto/digest.c:19: -+| [..]/usr/include/bits/statx.h:25:8: note: originally defined here -+| struct statx_timestamp -+| ^~~~~~~~~~~~~~~ -+| In file included from ../dt-utils-2018.05.0/src/crypto/digest.c:24: -+| [..]/usr/include/linux/stat.h:99:8: error: redefinition of 'struct statx' -+| struct statx { -+| ^~~~~ -+| In file included from [..]/usr/include/sys/stat.h:446, -+| from ../dt-utils-2018.05.0/src/dt/common.h:15, -+| from ../dt-utils-2018.05.0/src/crypto/digest.c:19: -+| [..]/usr/include/bits/statx.h:36:8: note: originally defined here -+| struct statx -+| ^~~~~ -+ -+The linux/stat.h originates from the code that was copied from barebox -+but is not explicitly required to be linux/stat.h instead of sys/stat.h -+and we do not actually use struct statx. -+ -+Thus it is safe to simply replace occurrences of linux/stat.h by -+sys/stat.h to fix compilation. -+ -+Signed-off-by: Enrico Joerns -+[Thomas: backport from upstream.] -+Signed-off-by: Thomas Petazzoni -+--- -+ src/barebox-state/backend_storage.c | 2 +- -+ src/crypto/digest.c | 2 +- -+ 2 files changed, 2 insertions(+), 2 deletions(-) -+ -+diff --git a/src/barebox-state/backend_storage.c b/src/barebox-state/backend_storage.c -+index 53fe829..1052656 100644 -+--- a/src/barebox-state/backend_storage.c -++++ b/src/barebox-state/backend_storage.c -+@@ -19,7 +19,7 @@ -+ #include -+ #include -+ #include -+-#include -++#include -+ #include -+ #include -+ #include -+diff --git a/src/crypto/digest.c b/src/crypto/digest.c -+index 7a8c3c0..8353412 100644 -+--- a/src/crypto/digest.c -++++ b/src/crypto/digest.c -+@@ -21,7 +21,7 @@ -+ #include -+ #include -+ #include -+-#include -++#include -+ #include -+ #include -+ #include -+-- -+2.19.2 -+ --- -cgit v0.12 - diff --git a/buildroot-patches/0011-tini-make-static-for-docker.patch b/buildroot-patches/0010-tini-make-static-for-docker.patch similarity index 100% rename from buildroot-patches/0011-tini-make-static-for-docker.patch rename to buildroot-patches/0010-tini-make-static-for-docker.patch diff --git a/buildroot-patches/0012-openvmtools-bump-version-to-10.3.5.patch b/buildroot-patches/0011-openvmtools-bump-version-to-10.3.5.patch similarity index 100% rename from buildroot-patches/0012-openvmtools-bump-version-to-10.3.5.patch rename to buildroot-patches/0011-openvmtools-bump-version-to-10.3.5.patch diff --git a/buildroot-patches/0013-linux-bump-default-to-4.19.2.patch b/buildroot-patches/0013-linux-bump-default-to-4.19.2.patch new file mode 100644 index 000000000..9a2244cd5 --- /dev/null +++ b/buildroot-patches/0013-linux-bump-default-to-4.19.2.patch @@ -0,0 +1,27 @@ +From 377944f65a74670075c1878a0b6b61ad84856ed5 Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Tue, 20 Nov 2018 15:30:08 +0200 +Subject: [PATCH] linux: bump default to 4.19.2 + +Signed-off-by: Baruch Siach +Signed-off-by: Peter Korsgaard +--- + linux/Config.in | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/linux/Config.in b/linux/Config.in +index ecb12d0b16..c75e149a37 100644 +--- a/linux/Config.in ++++ b/linux/Config.in +@@ -30,7 +30,7 @@ choice + prompt "Kernel version" + + config BR2_LINUX_KERNEL_LATEST_VERSION +- bool "Latest version (4.18)" ++ bool "Latest version (4.19)" + + config BR2_LINUX_KERNEL_LATEST_CIP_VERSION + bool "Latest CIP SLTS version (v4.4.138-cip25)" +-- +2.17.1 + diff --git a/buildroot-patches/0015-toolchain-add-4.19.x-choice-for-headers.patch b/buildroot-patches/0015-toolchain-add-4.19.x-choice-for-headers.patch new file mode 100644 index 000000000..9f02a1ee4 --- /dev/null +++ b/buildroot-patches/0015-toolchain-add-4.19.x-choice-for-headers.patch @@ -0,0 +1,50 @@ +From 561770fd032744b4daac186c1ede9bce1d4b4c45 Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Tue, 20 Nov 2018 15:30:06 +0200 +Subject: [PATCH] toolchain: add 4.19.x choice for headers + +Signed-off-by: Baruch Siach +Signed-off-by: Peter Korsgaard +--- + toolchain/Config.in | 5 +++++ + .../toolchain-external-custom/Config.in.options | 4 ++++ + 2 files changed, 9 insertions(+) + +diff --git a/toolchain/Config.in b/toolchain/Config.in +index c2192a52b1..474e3c8bba 100644 +--- a/toolchain/Config.in ++++ b/toolchain/Config.in +@@ -361,10 +361,15 @@ config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17 + ++config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 ++ bool ++ select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 ++ + # This order guarantees that the highest version is set, as kconfig + # stops affecting a value on the first matching default. + config BR2_TOOLCHAIN_HEADERS_AT_LEAST + string ++ default "4.19" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 + default "4.18" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 + default "4.17" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17 + default "4.16" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_16 +diff --git a/toolchain/toolchain-external/toolchain-external-custom/Config.in.options b/toolchain/toolchain-external/toolchain-external-custom/Config.in.options +index 8665d2e2a7..288fc3f3e0 100644 +--- a/toolchain/toolchain-external/toolchain-external-custom/Config.in.options ++++ b/toolchain/toolchain-external/toolchain-external-custom/Config.in.options +@@ -123,6 +123,10 @@ choice + m = ( LINUX_VERSION_CODE >> 8 ) & 0xFF + p = ( LINUX_VERSION_CODE >> 0 ) & 0xFF + ++config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_19 ++ bool "4.19.x" ++ select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 ++ + config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_18 + bool "4.18.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 +-- +2.17.1 + diff --git a/buildroot/CHANGES b/buildroot/CHANGES index edefd4bab..c4ccda92e 100644 --- a/buildroot/CHANGES +++ b/buildroot/CHANGES @@ -1,3 +1,26 @@ +2018.11.1, Released December 20th, 2018 + + Important / security related fixes. + + defconfigs: Fixes for bananapi m2 ultra, ci20 + + Download wrapper: Fix for urlencode handling + + Updated/fixed packages: asterisk, docker-compose, + docker-engine, dt-utils, gnutls, go, grub, libbsd, libcurl, + libpgpme, libiscsi, liblo, libmpd, libopenssl, liboping, + libpam-tacplus, libpjsip, linux-firmware, liquid-dsp, + lua-cqueue, luvi, lxc, lynx, nginx, nodejs, openzwave, php, + pps-tools, proftpd, prosody, sdl2_net, squashfs, swupdate, + uclibc, vtu, webkitgtk, wine, xen + + New packages: docker-cli + + Issues resolved (http://bugs.uclibc.org): + + #11426: pps-tools bash dependency + #11536: dt-utils building fails with glibc 2.28 + 2018.11, Released December 1st, 2018 Minor fixes. diff --git a/buildroot/Config.in.legacy b/buildroot/Config.in.legacy index a5e0c9fe4..02321c88a 100644 --- a/buildroot/Config.in.legacy +++ b/buildroot/Config.in.legacy @@ -241,6 +241,15 @@ config BR2_PACKAGE_LIBNFTNL_XML ############################################################################### comment "Legacy options removed in 2018.08" +config BR2_PACKAGE_DOCKER_ENGINE_STATIC_CLIENT + bool "docker-engine static client option renamed" + select BR2_LEGACY + select BR2_PACKAGE_DOCKER_CLI_STATIC + help + BR2_PACKAGE_DOCKER_ENGINE_STATIC_CLIENT has been renamed to + BR2_PACKAGE_DOCKER_CLI_STATIC, following the package split of + docker-engine and docker-cli. + config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_19 bool "Modular X.org server was updated to version 1.20.0" select BR2_LEGACY diff --git a/buildroot/Makefile b/buildroot/Makefile index c4c34b0ff..dd8cc7a9a 100644 --- a/buildroot/Makefile +++ b/buildroot/Makefile @@ -92,9 +92,9 @@ all: .PHONY: all # Set and export the version string -export BR2_VERSION := 2018.11 +export BR2_VERSION := 2018.11.1 # Actual time the release is cut (for reproducible builds) -BR2_VERSION_EPOCH = 1543701000 +BR2_VERSION_EPOCH = 1545257000 # Save running make version since it's clobbered by the make package RUNNING_MAKE_VERSION := $(MAKE_VERSION) diff --git a/buildroot/board/ci20/patches/uboot/0001-mips-Remove-default-endiannes.patch b/buildroot/board/ci20/patches/uboot/0001-mips-Remove-default-endiannes.patch new file mode 100644 index 000000000..a6191804f --- /dev/null +++ b/buildroot/board/ci20/patches/uboot/0001-mips-Remove-default-endiannes.patch @@ -0,0 +1,66 @@ +From b3a1e97498e7987073775d49a703932c20f2df1d Mon Sep 17 00:00:00 2001 +From: Ezequiel Garcia +Date: Mon, 12 Nov 2018 14:04:46 -0300 +Subject: [PATCH] mips: Remove default endiannes + +Currently, trying to build ci20_mmc fails on little-endian +toolchains. The problem seems to be that some targets don't +have CONFIG_SYS_LITTLE_ENDIAN properly set, and therefore +the default -EB switch is selected. + +Let's get rid of the default switch entirely, and fix this problem. +While this may be a hack, it is a quick solution until +U-Boot gets CI20 proper support. + +make ARCH=mips CROSS_COMPILE=mips-linux-gnu- ci20_mmc +Configuring for ci20_mmc - Board: ci20, Options: SPL_MMC_SUPPORT,ENV_IS_IN_MMC +make +make[1]: Entering directory '/home/zeta/repos/u-boot-ci20' +Generating include/autoconf.mk +Generating include/autoconf.mk.dep +mips-linux-gnu-gcc: error: may not use both -EB and -EL +mips-linux-gnu-gcc: error: may not use both -EB and -EL +Generating include/spl-autoconf.mk +mips-linux-gnu-gcc: error: may not use both -EB and -EL +Generating include/tpl-autoconf.mk +mips-linux-gnu-gcc: error: may not use both -EB and -EL +mips-linux-gnu-gcc -DDO_DEPS_ONLY \ + -g -Os -ffunction-sections -fdata-sections -D__KERNEL__ -I/home/zeta/repos/u-boot-ci20/include -fno-builtin -ffreestanding -nostdinc -isystem /home/zeta/repos/buildroot/mips/output/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/include -pipe -DCONFIG_MIPS -D__MIPS__ -G 0 -EB -msoft-float -fpic -mabicalls -march=mips32 -mabi=32 -DCONFIG_32BIT -mno-branch-likely -Wall -Wstrict-prototypes \ + -o lib/asm-offsets.s lib/asm-offsets.c -c -S +if [ -f arch/mips/cpu/xburst/jz4780/asm-offsets.c ];then \ + mips-linux-gnu-gcc -DDO_DEPS_ONLY \ + -g -Os -ffunction-sections -fdata-sections -D__KERNEL__ -I/home/zeta/repos/u-boot-ci20/include -fno-builtin -ffreestanding -nostdinc -isystem /home/zeta/repos/buildroot/mips/output/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/include -pipe -DCONFIG_MIPS -D__MIPS__ -G 0 -EB -msoft-float -fpic -mabicalls -march=mips32 -mabi=32 -DCONFIG_32BIT -mno-branch-likely -Wall -Wstrict-prototypes \ + -o arch/mips/cpu/xburst/jz4780/asm-offsets.s arch/mips/cpu/xburst/jz4780/asm-offsets.c -c -S; \ +else \ + touch arch/mips/cpu/xburst/jz4780/asm-offsets.s; \ +fi +mips-linux-gnu-gcc: error: may not use both -EB and -EL +make[1]: *** [Makefile:747: lib/asm-offsets.s] Error 1 +make[1]: *** Waiting for unfinished jobs.... +make[1]: Leaving directory '/home/zeta/repos/u-boot-ci20' +make: *** [.boards.depend:463: ci20_mmc] Error 2 + +Signed-off-by: Ezequiel Garcia +--- +https://github.com/MIPS/CI20_u-boot/pull/19 + + arch/mips/config.mk | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/arch/mips/config.mk b/arch/mips/config.mk +index c89279025507..43560abbc0e1 100644 +--- a/arch/mips/config.mk ++++ b/arch/mips/config.mk +@@ -20,9 +20,6 @@ ifdef CONFIG_SYS_BIG_ENDIAN + ENDIANNESS := -EB + endif + +-# Default to EB if no endianess is configured +-ENDIANNESS ?= -EB +- + PLATFORM_CPPFLAGS += -DCONFIG_MIPS -D__MIPS__ + + # +-- +2.19.1 + diff --git a/buildroot/boot/grub2/0001-x86-64-Treat-R_X86_64_PLT32-as-R_X86_64_PC32.patch b/buildroot/boot/grub2/0001-x86-64-Treat-R_X86_64_PLT32-as-R_X86_64_PC32.patch new file mode 100644 index 000000000..cd8b5e73c --- /dev/null +++ b/buildroot/boot/grub2/0001-x86-64-Treat-R_X86_64_PLT32-as-R_X86_64_PC32.patch @@ -0,0 +1,74 @@ +From 842c390469e2c2e10b5aa36700324cd3bde25875 Mon Sep 17 00:00:00 2001 +From: "H.J. Lu" +Date: Sat, 17 Feb 2018 06:47:28 -0800 +Subject: [PATCH] x86-64: Treat R_X86_64_PLT32 as R_X86_64_PC32 + +Starting from binutils commit bd7ab16b4537788ad53521c45469a1bdae84ad4a: + +https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=bd7ab16b4537788ad53521c45469a1bdae84ad4a + +x86-64 assembler generates R_X86_64_PLT32, instead of R_X86_64_PC32, for +32-bit PC-relative branches. Grub2 should treat R_X86_64_PLT32 as +R_X86_64_PC32. + +Signed-off-by: H.J. Lu +Reviewed-by: Daniel Kiper +Signed-off-by: Romain Naour +--- + grub-core/efiemu/i386/loadcore64.c | 1 + + grub-core/kern/x86_64/dl.c | 1 + + util/grub-mkimagexx.c | 1 + + util/grub-module-verifier.c | 1 + + 4 files changed, 4 insertions(+) + +diff --git a/grub-core/efiemu/i386/loadcore64.c b/grub-core/efiemu/i386/loadcore64.c +index e49d0b6..18facf4 100644 +--- a/grub-core/efiemu/i386/loadcore64.c ++++ b/grub-core/efiemu/i386/loadcore64.c +@@ -98,6 +98,7 @@ grub_arch_efiemu_relocate_symbols64 (grub_efiemu_segment_t segs, + break; + + case R_X86_64_PC32: ++ case R_X86_64_PLT32: + err = grub_efiemu_write_value (addr, + *addr32 + rel->r_addend + + sym.off +diff --git a/grub-core/kern/x86_64/dl.c b/grub-core/kern/x86_64/dl.c +index 4406906..3a73e6e 100644 +--- a/grub-core/kern/x86_64/dl.c ++++ b/grub-core/kern/x86_64/dl.c +@@ -70,6 +70,7 @@ grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr, + break; + + case R_X86_64_PC32: ++ case R_X86_64_PLT32: + { + grub_int64_t value; + value = ((grub_int32_t) *addr32) + rel->r_addend + sym->st_value - +diff --git a/util/grub-mkimagexx.c b/util/grub-mkimagexx.c +index a2bb054..39d7efb 100644 +--- a/util/grub-mkimagexx.c ++++ b/util/grub-mkimagexx.c +@@ -841,6 +841,7 @@ SUFFIX (relocate_addresses) (Elf_Ehdr *e, Elf_Shdr *sections, + break; + + case R_X86_64_PC32: ++ case R_X86_64_PLT32: + { + grub_uint32_t *t32 = (grub_uint32_t *) target; + *t32 = grub_host_to_target64 (grub_target_to_host32 (*t32) +diff --git a/util/grub-module-verifier.c b/util/grub-module-verifier.c +index 9179285..a79271f 100644 +--- a/util/grub-module-verifier.c ++++ b/util/grub-module-verifier.c +@@ -19,6 +19,7 @@ struct grub_module_verifier_arch archs[] = { + -1 + }, (int[]){ + R_X86_64_PC32, ++ R_X86_64_PLT32, + -1 + } + }, +-- +2.7.4 + diff --git a/buildroot/configs/bananapi_m2_ultra_defconfig b/buildroot/configs/bananapi_m2_ultra_defconfig index 5dd3edd66..bc1d31a60 100644 --- a/buildroot/configs/bananapi_m2_ultra_defconfig +++ b/buildroot/configs/bananapi_m2_ultra_defconfig @@ -1,5 +1,6 @@ BR2_arm=y BR2_cortex_a7=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18=y BR2_TARGET_GENERIC_ISSUE="Welcome to Bananapi M2 Ultra" BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/bananapi/bananapi-m2-ultra/genimage.cfg" diff --git a/buildroot/configs/ci20_defconfig b/buildroot/configs/ci20_defconfig index 6e860b1e7..8f2604b07 100644 --- a/buildroot/configs/ci20_defconfig +++ b/buildroot/configs/ci20_defconfig @@ -27,6 +27,7 @@ BR2_TARGET_UBOOT_BOARDNAME="ci20_mmc" BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/MIPS/CI20_u-boot" BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="dd3c1b95dac7d10b2ca5806f65e5c1050d7dd0fa" +BR2_TARGET_UBOOT_PATCH="board/ci20/patches/uboot" BR2_TARGET_UBOOT_FORMAT_IMG=y BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="spl/u-boot-spl.bin" diff --git a/buildroot/docs/manual/manual.html b/buildroot/docs/manual/manual.html index f41b4c429..75b70d60a 100644 --- a/buildroot/docs/manual/manual.html +++ b/buildroot/docs/manual/manual.html @@ -1,8 +1,8 @@ -The Buildroot user manual

The Buildroot user manual


Table of Contents

I. Getting started
1. About Buildroot
2. System requirements
2.1. Mandatory packages
2.2. Optional packages
3. Getting Buildroot
4. Buildroot quick start
5. Community resources
II. User guide
6. Buildroot configuration
6.1. Cross-compilation toolchain
6.2. /dev management
6.3. init system
7. Configuration of other components
8. General Buildroot usage
8.1. make tips
8.2. Understanding when a full rebuild is necessary
8.3. Understanding how to rebuild packages
8.4. Offline builds
8.5. Building out-of-tree
8.6. Environment variables
8.7. Dealing efficiently with filesystem images
8.8. Graphing the dependencies between packages
8.9. Graphing the build duration
8.10. Graphing the filesystem size contribution of packages
8.11. Integration with Eclipse
8.12. Advanced usage
9. Project-specific customization
9.1. Recommended directory structure
9.2. Keeping customizations outside of Buildroot
9.3. Storing the Buildroot configuration
9.4. Storing the configuration of other components
9.5. Customizing the generated target filesystem
9.6. Adding custom user accounts
9.7. Customization after the images have been created
9.8. Adding project-specific patches
9.9. Adding project-specific packages
9.10. Quick guide to storing your project-specific customizations
10. Frequently Asked Questions & Troubleshooting
10.1. The boot hangs after Starting network…
10.2. Why is there no compiler on the target?
10.3. Why are there no development files on the target?
10.4. Why is there no documentation on the target?
10.5. Why are some packages not visible in the Buildroot config menu?
10.6. Why not use the target directory as a chroot directory?
10.7. Why doesn’t Buildroot generate binary packages (.deb, .ipkg…)?
10.8. How to speed-up the build process?
11. Known issues
12. Legal notice and licensing
12.1. Complying with open source licenses
12.2. Complying with the Buildroot license
13. Beyond Buildroot
13.1. Boot the generated images
13.2. Chroot
III. Developer guide
14. How Buildroot works
15. Coding style
15.1. Config.in file
15.2. The .mk file
15.3. The documentation
15.4. Support scripts
16. Adding support for a particular board
17. Adding new packages to Buildroot
17.1. Package directory
17.2. Config files
17.3. The .mk file
17.4. The .hash file
17.5. Infrastructure for packages with specific build systems
17.6. Infrastructure for autotools-based packages
17.7. Infrastructure for CMake-based packages
17.8. Infrastructure for Python packages
17.9. Infrastructure for LuaRocks-based packages
17.10. Infrastructure for Perl/CPAN packages
17.11. Infrastructure for virtual packages
17.12. Infrastructure for packages using kconfig for configuration files
17.13. Infrastructure for rebar-based packages
17.14. Infrastructure for Waf-based packages
17.15. Infrastructure for Meson-based packages
17.16. Integration of Cargo-based packages
17.17. Infrastructure for Go packages
17.18. Infrastructure for packages building kernel modules
17.19. Infrastructure for asciidoc documents
17.20. Infrastructure specific to the Linux kernel package
17.21. Hooks available in the various build steps
17.22. Gettext integration and interaction with packages
17.23. Tips and tricks
17.24. Conclusion
18. Patching a package
18.1. Providing patches
18.2. How patches are applied
18.3. Format and licensing of the package patches
18.4. Integrating patches found on the Web
19. Download infrastructure
20. Debugging Buildroot
21. Contributing to Buildroot
21.1. Reproducing, analyzing and fixing bugs
21.2. Analyzing and fixing autobuild failures
21.3. Reviewing and testing patches
21.4. Work on items from the TODO list
21.5. Submitting patches
21.6. Reporting issues/bugs or getting help
22. DEVELOPERS file and get-developers
IV. Appendix
23. Makedev syntax documentation
24. Makeusers syntax documentation
25. Migrating from older Buildroot versions
25.1. Migrating to 2016.11
25.2. Migrating to 2017.08

Buildroot 2018.11 manual generated on 2018-12-01 -22:08:55 UTC from git revision 9089a9ff30

The Buildroot manual is written by the Buildroot developers. +The Buildroot user manual

The Buildroot user manual


Table of Contents

I. Getting started
1. About Buildroot
2. System requirements
2.1. Mandatory packages
2.2. Optional packages
3. Getting Buildroot
4. Buildroot quick start
5. Community resources
II. User guide
6. Buildroot configuration
6.1. Cross-compilation toolchain
6.2. /dev management
6.3. init system
7. Configuration of other components
8. General Buildroot usage
8.1. make tips
8.2. Understanding when a full rebuild is necessary
8.3. Understanding how to rebuild packages
8.4. Offline builds
8.5. Building out-of-tree
8.6. Environment variables
8.7. Dealing efficiently with filesystem images
8.8. Graphing the dependencies between packages
8.9. Graphing the build duration
8.10. Graphing the filesystem size contribution of packages
8.11. Integration with Eclipse
8.12. Advanced usage
9. Project-specific customization
9.1. Recommended directory structure
9.2. Keeping customizations outside of Buildroot
9.3. Storing the Buildroot configuration
9.4. Storing the configuration of other components
9.5. Customizing the generated target filesystem
9.6. Adding custom user accounts
9.7. Customization after the images have been created
9.8. Adding project-specific patches
9.9. Adding project-specific packages
9.10. Quick guide to storing your project-specific customizations
10. Frequently Asked Questions & Troubleshooting
10.1. The boot hangs after Starting network…
10.2. Why is there no compiler on the target?
10.3. Why are there no development files on the target?
10.4. Why is there no documentation on the target?
10.5. Why are some packages not visible in the Buildroot config menu?
10.6. Why not use the target directory as a chroot directory?
10.7. Why doesn’t Buildroot generate binary packages (.deb, .ipkg…)?
10.8. How to speed-up the build process?
11. Known issues
12. Legal notice and licensing
12.1. Complying with open source licenses
12.2. Complying with the Buildroot license
13. Beyond Buildroot
13.1. Boot the generated images
13.2. Chroot
III. Developer guide
14. How Buildroot works
15. Coding style
15.1. Config.in file
15.2. The .mk file
15.3. The documentation
15.4. Support scripts
16. Adding support for a particular board
17. Adding new packages to Buildroot
17.1. Package directory
17.2. Config files
17.3. The .mk file
17.4. The .hash file
17.5. Infrastructure for packages with specific build systems
17.6. Infrastructure for autotools-based packages
17.7. Infrastructure for CMake-based packages
17.8. Infrastructure for Python packages
17.9. Infrastructure for LuaRocks-based packages
17.10. Infrastructure for Perl/CPAN packages
17.11. Infrastructure for virtual packages
17.12. Infrastructure for packages using kconfig for configuration files
17.13. Infrastructure for rebar-based packages
17.14. Infrastructure for Waf-based packages
17.15. Infrastructure for Meson-based packages
17.16. Integration of Cargo-based packages
17.17. Infrastructure for Go packages
17.18. Infrastructure for packages building kernel modules
17.19. Infrastructure for asciidoc documents
17.20. Infrastructure specific to the Linux kernel package
17.21. Hooks available in the various build steps
17.22. Gettext integration and interaction with packages
17.23. Tips and tricks
17.24. Conclusion
18. Patching a package
18.1. Providing patches
18.2. How patches are applied
18.3. Format and licensing of the package patches
18.4. Integrating patches found on the Web
19. Download infrastructure
20. Debugging Buildroot
21. Contributing to Buildroot
21.1. Reproducing, analyzing and fixing bugs
21.2. Analyzing and fixing autobuild failures
21.3. Reviewing and testing patches
21.4. Work on items from the TODO list
21.5. Submitting patches
21.6. Reporting issues/bugs or getting help
22. DEVELOPERS file and get-developers
IV. Appendix
23. Makedev syntax documentation
24. Makeusers syntax documentation
25. Migrating from older Buildroot versions
25.1. Migrating to 2016.11
25.2. Migrating to 2017.08

Buildroot 2018.11.1 manual generated on 2018-12-19 +22:05:45 UTC from git revision 29675f8e54

The Buildroot manual is written by the Buildroot developers. It is licensed under the GNU General Public License, version 2. Refer to the -COPYING +COPYING file in the Buildroot sources for the full text of this license.

Copyright © 2004-2018 The Buildroot developers

logo.png

Part I. Getting started

Chapter 1. About Buildroot

Buildroot is a tool that simplifies and automates the process of building a complete Linux system for an embedded system, using cross-compilation.

In order to achieve this, Buildroot is able to generate a @@ -16,8 +16,8 @@ processors everyone is used to having in his PC. They can be PowerPC processors, MIPS processors, ARM processors, etc.

Buildroot supports numerous processors and their variants; it also comes with default configurations for several boards available off-the-shelf. Besides this, a number of third-party projects are based on, -or develop their BSP [1] or -SDK [2] on top of Buildroot.



[1] BSP: Board Support Package

[2] SDK: Software Development Kit

Chapter 2. System requirements

Buildroot is designed to run on Linux systems.

While Buildroot itself will build most host packages it needs for the +or develop their BSP [1] or +SDK [2] on top of Buildroot.



[1] BSP: Board Support Package

[2] SDK: Software Development Kit

Chapter 2. System requirements

Buildroot is designed to run on Linux systems.

While Buildroot itself will build most host packages it needs for the compilation, certain standard Linux utilities are expected to be already installed on the host system. Below you will find an overview of the mandatory and optional packages (note that package names may vary @@ -272,7 +272,7 @@ processor. Under most Linux systems, the compilation toolchain uses the GNU libc (glibc) as the C standard library. This compilation toolchain is called the "host compilation toolchain". The machine on which it is running, and on which you’re working, is called the "host -system" [3].

The compilation toolchain is provided by your distribution, and +system" [3].

The compilation toolchain is provided by your distribution, and Buildroot has nothing to do with it (other than using it to build a cross-compilation toolchain and other tools that are run on the development host).

As said above, the compilation toolchain that comes with your system @@ -547,7 +547,7 @@ The third solution is systemd. http://www.freedesktop.org/wiki/Software/systemd.

The solution recommended by Buildroot developers is to use the BusyBox init as it is sufficient for most embedded -systems. systemd can be used for more complex situations.



[3] This terminology differs from what is used by GNU +systems. systemd can be used for more complex situations.



[3] This terminology differs from what is used by GNU configure, where the host is the machine on which the application will run (which is usually the same as target)

Chapter 7. Configuration of other components

Before attempting to modify any of the components below, make sure you have already configured Buildroot itself, and have enabled the @@ -2653,7 +2653,7 @@ flags. The argument to be given to LIBFOO_CONFIG_SCRIPTS is the file name(s) of the shell script(s) needing fixing. All these names are relative to $(STAGING_DIR)/usr/bin and if needed multiple names can be given.

In addition, the scripts listed in LIBFOO_CONFIG_SCRIPTS are removed -from $(TARGET_DIR)/usr/bin, since they are not needed on the target.

Example 17.1. Config script: divine package

Package divine installs shell script $(STAGING_DIR)/usr/bin/divine-config.

So its fixup would be:

DIVINE_CONFIG_SCRIPTS = divine-config

Example 17.2. Config script: imagemagick package:

Package imagemagick installs the following scripts: +from $(TARGET_DIR)/usr/bin, since they are not needed on the target.

Example 17.1. Config script: divine package

Package divine installs shell script $(STAGING_DIR)/usr/bin/divine-config.

So its fixup would be:

DIVINE_CONFIG_SCRIPTS = divine-config

Example 17.2. Config script: imagemagick package:

Package imagemagick installs the following scripts: $(STAGING_DIR)/usr/bin/{Magick,Magick++,MagickCore,MagickWand,Wand}-config

So it’s fixup would be:

IMAGEMAGICK_CONFIG_SCRIPTS = \
    Magick-config Magick++-config \
    MagickCore-config MagickWand-config Wand-config

On line 14, we specify the list of dependencies this package relies @@ -4916,7 +4916,7 @@ large number of commits in the series;

  • deep impact of the changes in the rest of the project;
  • -RFC [4]; +RFC [4];
  • whenever you feel it will help presenting your work, your choices, the review process, etc. @@ -4998,7 +4998,7 @@ pastebin service. Note that not all available pastebin services will preserve Unix-style line terminators when downloading raw pastes. Following pastebin services are known to work correctly: - https://gist.github.com/ -- http://code.bulix.org/



  • [4] RFC: (Request for comments) change proposal

    Chapter 22. DEVELOPERS file and get-developers

    The main Buildroot directory contains a file named DEVELOPERS that +- http://code.bulix.org/



    [4] RFC: (Request for comments) change proposal

    Chapter 22. DEVELOPERS file and get-developers

    The main Buildroot directory contains a file named DEVELOPERS that lists the developers involved with various areas of Buildroot. Thanks to this file, the get-developer tool allows to:

    • Calculate the list of developers to whom patches should be sent, by diff --git a/buildroot/docs/manual/manual.pdf b/buildroot/docs/manual/manual.pdf index d0755c6e1..cf3fcec04 100644 Binary files a/buildroot/docs/manual/manual.pdf and b/buildroot/docs/manual/manual.pdf differ diff --git a/buildroot/docs/manual/manual.text b/buildroot/docs/manual/manual.text index f15bb7c95..d89d34508 100644 --- a/buildroot/docs/manual/manual.text +++ b/buildroot/docs/manual/manual.text @@ -161,13 +161,13 @@ List of Examples --------------------------------------------------------------------- -Buildroot 2018.11 manual generated on 2018-12-01 22:09:01 UTC from -git revision 9089a9ff30 +Buildroot 2018.11.1 manual generated on 2018-12-19 22:05:51 UTC from +git revision 29675f8e54 The Buildroot manual is written by the Buildroot developers. It is licensed under the GNU General Public License, version 2. Refer to the COPYING [http://git.buildroot.org/buildroot/tree/COPYING?id= -9089a9ff307045bb5fd42ab76ad0a739b5221416] file in the Buildroot +29675f8e54d36660a7c0a0c3b54b9cc612395e9a] file in the Buildroot sources for the full text of this license. Copyright © 2004-2018 The Buildroot developers diff --git a/buildroot/linux/Config.in b/buildroot/linux/Config.in index efce31c7e..6b216140a 100644 --- a/buildroot/linux/Config.in +++ b/buildroot/linux/Config.in @@ -30,7 +30,7 @@ choice prompt "Kernel version" config BR2_LINUX_KERNEL_LATEST_VERSION - bool "Latest version (4.18)" + bool "Latest version (4.19)" config BR2_LINUX_KERNEL_LATEST_CIP_VERSION bool "Latest CIP SLTS version (v4.4.154-cip28)" diff --git a/buildroot/linux/linux.hash b/buildroot/linux/linux.hash index 12da19e04..2932aeba1 100644 --- a/buildroot/linux/linux.hash +++ b/buildroot/linux/linux.hash @@ -1,9 +1,9 @@ # From https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc sha256 68ac319e0fb7edd6b6051541d9cf112cd4f77a29e16a69ae1e133ff51117f653 linux-4.18.20.tar.xz sha256 41026d713ba4f7a5e9d514b876ce4ed28a1d993c0c58b42b2a2597d6a0e83021 linux-4.16.18.tar.xz -sha256 701728de924e0ec4a6b7cf59252011f8268a1b70aaf02b8487c1b2190feb3f20 linux-4.14.83.tar.xz -sha256 f888aef58c2c4d82c81511ad6a4528ee9a8241bb96c05c65e71224988782f943 linux-4.9.140.tar.xz -sha256 9bb4a1757e67dbd0923dbdf7e7e0baa9baa53ac942471d8fbb8d35dd5b313c10 linux-4.4.164.tar.xz +sha256 da9260a9022b917733201b89b5314847cb3332c31e70acb5e9b547956c266e28 linux-4.14.86.tar.xz +sha256 0eb76464a696675fd4f8762e390328a377e973bfa263b00544ca1b5b10ac2cbf linux-4.9.143.tar.xz +sha256 bf10effd995aa183b553cedd764c577137a9f97dc8709e2e1c04b1e0f4e6415a linux-4.4.166.tar.xz sha256 6ad9389e55e0ea57768eae173747058a4487fa3630e10a7999cfec9f945e559c linux-4.1.52.tar.xz # From https://www.kernel.org/pub/linux/kernel/v3.x/sha256sums.asc sha256 ad96d797571496c969aa71bf5d08e9d2a8c84458090d29a120f1b2981185a99e linux-3.2.102.tar.xz diff --git a/buildroot/linux/linux.mk b/buildroot/linux/linux.mk index 864fa772b..7f6100cf3 100644 --- a/buildroot/linux/linux.mk +++ b/buildroot/linux/linux.mk @@ -311,6 +311,7 @@ define LINUX_KCONFIG_FIXUP_CMDS # replaced later by the real cpio archive, and the kernel will be # rebuilt using the linux-rebuild-with-initramfs target. $(if $(BR2_TARGET_ROOTFS_INITRAMFS), + mkdir -p $(BINARIES_DIR) touch $(BINARIES_DIR)/rootfs.cpio $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_SOURCE,"$${BR_BINARIES_DIR}/rootfs.cpio",$(@D)/.config) $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_ROOT_UID,0,$(@D)/.config) diff --git a/buildroot/package/Config.in b/buildroot/package/Config.in index b60e7700a..28d3ef82a 100644 --- a/buildroot/package/Config.in +++ b/buildroot/package/Config.in @@ -2106,6 +2106,7 @@ menu "System tools" source "package/dcron/Config.in" source "package/ddrescue/Config.in" source "package/debianutils/Config.in" + source "package/docker-cli/Config.in" source "package/docker-compose/Config.in" source "package/docker-containerd/Config.in" source "package/docker-engine/Config.in" diff --git a/buildroot/package/asterisk/asterisk.mk b/buildroot/package/asterisk/asterisk.mk index 4ed85743b..6de498ed0 100644 --- a/buildroot/package/asterisk/asterisk.mk +++ b/buildroot/package/asterisk/asterisk.mk @@ -242,7 +242,8 @@ else ASTERISK_CONF_OPTS += --without-speex --without-speexdsp endif -ifeq ($(BR2_PACKAGE_LIBSRTP),y) +# asterisk needs an openssl-enabled libsrtp +ifeq ($(BR2_PACKAGE_LIBSRTP)$(BR2_PACKAGE_OPENSSL)x$(BR2_STATIC_LIBS),yyx) ASTERISK_DEPENDENCIES += libsrtp ASTERISK_CONF_OPTS += --with-srtp else diff --git a/buildroot/package/docker-cli/Config.in b/buildroot/package/docker-cli/Config.in new file mode 100644 index 000000000..82c35c453 --- /dev/null +++ b/buildroot/package/docker-cli/Config.in @@ -0,0 +1,25 @@ +config BR2_PACKAGE_DOCKER_CLI + bool "docker-cli" + depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_THREADS + help + Docker is a platform to build, ship, + and run applications as lightweight containers. + + https://github.com/docker/cli + +if BR2_PACKAGE_DOCKER_CLI + +config BR2_PACKAGE_DOCKER_CLI_STATIC + bool "build static client" + depends on !BR2_STATIC_LIBS + help + Build a static docker client. + +endif + +comment "docker-cli needs a toolchain w/ threads" + depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/buildroot/package/docker-cli/docker-cli.hash b/buildroot/package/docker-cli/docker-cli.hash new file mode 100644 index 000000000..03322a4f6 --- /dev/null +++ b/buildroot/package/docker-cli/docker-cli.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 3e578406dead2fc72c4b52f77db39dc779fa8b460352116c06f1ae29219bd8c2 docker-cli-v18.09.0.tar.gz +sha256 2d81ea060825006fc8f3fe28aa5dc0ffeb80faf325b612c955229157b8c10dc0 LICENSE diff --git a/buildroot/package/docker-cli/docker-cli.mk b/buildroot/package/docker-cli/docker-cli.mk new file mode 100644 index 000000000..c73caa265 --- /dev/null +++ b/buildroot/package/docker-cli/docker-cli.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# docker-cli +# +################################################################################ + +DOCKER_CLI_VERSION = v18.09.0 +DOCKER_CLI_SITE = $(call github,docker,cli,$(DOCKER_CLI_VERSION)) +DOCKER_CLI_WORKSPACE = gopath + +DOCKER_CLI_LICENSE = Apache-2.0 +DOCKER_CLI_LICENSE_FILES = LICENSE + +DOCKER_CLI_DEPENDENCIES = host-pkgconf + +DOCKER_CLI_TAGS = autogen +DOCKER_CLI_BUILD_TARGETS = cmd/docker + +DOCKER_CLI_LDFLAGS = \ + -X github.com/docker/cli/cli.GitCommit=$(DOCKER_CLI_VERSION) \ + -X github.com/docker/cli/cli.Version=$(DOCKER_CLI_VERSION) + +ifeq ($(BR2_PACKAGE_DOCKER_CLI_STATIC),y) +DOCKER_CLI_LDFLAGS += -extldflags '-static' +DOCKER_CLI_TAGS += osusergo netgo +DOCKER_CLI_GO_ENV = CGO_ENABLED=no +endif + +DOCKER_CLI_INSTALL_BINS = $(notdir $(DOCKER_CLI_BUILD_TARGETS)) + +$(eval $(golang-package)) diff --git a/buildroot/package/docker-compose/0001-setup.py-allow-all-recent-2.x-requests-releases.patch b/buildroot/package/docker-compose/0001-setup.py-allow-all-recent-2.x-requests-releases.patch new file mode 100644 index 000000000..1378c3b81 --- /dev/null +++ b/buildroot/package/docker-compose/0001-setup.py-allow-all-recent-2.x-requests-releases.patch @@ -0,0 +1,34 @@ +From a79152d1d621ea9d477ecc6862a03cae80b2425b Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Sat, 15 Dec 2018 14:04:57 +0100 +Subject: [PATCH] setup.py: allow all recent 2.x requests releases + +Instead of having to update this for each new requests release. + +It it not quite clear why the restriction was added in the first place in +commit b0480b4d04e (Bump SDK version to latest), but change it to simply +disallow the upcoming 3.0 release to match what is done for the other +modules. + +Submitted upstream: https://github.com/docker/compose/pull/6415 +Signed-off-by: Peter Korsgaard +--- + setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/setup.py b/setup.py +index 96530726..3c8c7d0e 100644 +--- a/setup.py ++++ b/setup.py +@@ -33,7 +33,7 @@ install_requires = [ + 'cached-property >= 1.2.0, < 2', + 'docopt >= 0.6.1, < 0.7', + 'PyYAML >= 3.10, < 4', +- 'requests >= 2.6.1, != 2.11.0, != 2.12.2, != 2.18.0, < 2.19', ++ 'requests >= 2.6.1, != 2.11.0, != 2.12.2, != 2.18.0, < 3.0', + 'texttable >= 0.9.0, < 0.10', + 'websocket-client >= 0.32.0, < 1.0', + 'docker >= 3.1.4, < 4.0', +-- +2.11.0 + diff --git a/buildroot/package/docker-engine/Config.in b/buildroot/package/docker-engine/Config.in index 8feb11b48..11f17820a 100644 --- a/buildroot/package/docker-engine/Config.in +++ b/buildroot/package/docker-engine/Config.in @@ -26,12 +26,6 @@ config BR2_PACKAGE_DOCKER_ENGINE_DAEMON config BR2_PACKAGE_DOCKER_ENGINE_EXPERIMENTAL bool "build experimental features" -config BR2_PACKAGE_DOCKER_ENGINE_STATIC_CLIENT - bool "build static client" - depends on !BR2_STATIC_LIBS - help - Build a static docker client. - if BR2_PACKAGE_DOCKER_ENGINE_DAEMON config BR2_PACKAGE_DOCKER_ENGINE_DRIVER_BTRFS diff --git a/buildroot/package/docker-engine/docker-engine.hash b/buildroot/package/docker-engine/docker-engine.hash index 5ef89ccc8..1e3939f24 100644 --- a/buildroot/package/docker-engine/docker-engine.hash +++ b/buildroot/package/docker-engine/docker-engine.hash @@ -1,2 +1,3 @@ # Locally calculated -sha256 0f251f04b1973956f070c1d7ee2751a9663da2d9d701fbab7e957f0f5f310478 docker-engine-v18.09.0.tar.gz +sha256 b5278b3f2b460ea61f47833abd2a844f348b4518e73f309294ad178c205a48e1 docker-engine-v18.09.0.tar.gz +sha256 2d81ea060825006fc8f3fe28aa5dc0ffeb80faf325b612c955229157b8c10dc0 LICENSE diff --git a/buildroot/package/docker-engine/docker-engine.mk b/buildroot/package/docker-engine/docker-engine.mk index 0c3ab5b83..9ecfd1013 100644 --- a/buildroot/package/docker-engine/docker-engine.mk +++ b/buildroot/package/docker-engine/docker-engine.mk @@ -5,25 +5,20 @@ ################################################################################ DOCKER_ENGINE_VERSION = v18.09.0 -DOCKER_ENGINE_SITE = $(call github,docker,docker-ce,$(DOCKER_ENGINE_VERSION)) +DOCKER_ENGINE_SITE = $(call github,docker,engine,$(DOCKER_ENGINE_VERSION)) DOCKER_ENGINE_LICENSE = Apache-2.0 DOCKER_ENGINE_LICENSE_FILES = LICENSE -DOCKER_ENGINE_DEPENDENCIES = host-go host-pkgconf +DOCKER_ENGINE_DEPENDENCIES = host-pkgconf +DOCKER_ENGINE_SRC_SUBDIR = github.com/docker/docker DOCKER_ENGINE_LDFLAGS = \ -X main.GitCommit=$(DOCKER_ENGINE_VERSION) \ - -X main.Version=$(DOCKER_ENGINE_VERSION) \ - -X github.com/docker/cli/cli.GitCommit=$(DOCKER_ENGINE_VERSION) \ - -X github.com/docker/cli/cli.Version=$(DOCKER_ENGINE_VERSION) - -ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_STATIC_CLIENT),y) -DOCKER_ENGINE_LDFLAGS += -extldflags '-static' -endif + -X main.Version=$(DOCKER_ENGINE_VERSION) DOCKER_ENGINE_TAGS = cgo exclude_graphdriver_zfs autogen apparmor -DOCKER_ENGINE_BUILD_TARGETS = docker +DOCKER_ENGINE_BUILD_TARGETS = cmd/dockerd ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) DOCKER_ENGINE_TAGS += seccomp @@ -31,15 +26,9 @@ DOCKER_ENGINE_DEPENDENCIES += libseccomp endif ifeq ($(BR2_INIT_SYSTEMD),y) -DOCKER_ENGINE_TAGS += journald DOCKER_ENGINE_DEPENDENCIES += systemd +DOCKER_ENGINE_TAGS += systemd journald endif - -ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DAEMON),y) -DOCKER_ENGINE_TAGS += daemon -DOCKER_ENGINE_BUILD_TARGETS += dockerd -endif - ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_EXPERIMENTAL),y) DOCKER_ENGINE_TAGS += experimental endif @@ -62,26 +51,22 @@ else DOCKER_ENGINE_TAGS += exclude_graphdriver_vfs endif +DOCKER_ENGINE_INSTALL_BINS = $(notdir $(DOCKER_ENGINE_BUILD_TARGETS)) + define DOCKER_ENGINE_RUN_AUTOGEN - ln -fs $(@D)/components/engine $(@D)/_gopath/src/github.com/docker/docker - ln -fs $(@D)/components/cli $(@D)/_gopath/src/github.com/docker/cli - cd $(@D)/components/engine && \ + cd $(@D) && \ BUILDTIME="$$(date)" \ - IAMSTATIC="true" \ VERSION="$(patsubst v%,%,$(DOCKER_ENGINE_VERSION))" \ PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" $(TARGET_MAKE_ENV) \ bash ./hack/make/.go-autogen endef DOCKER_ENGINE_POST_CONFIGURE_HOOKS += DOCKER_ENGINE_RUN_AUTOGEN -DOCKER_ENGINE_INSTALL_BINS = $(notdir $(DOCKER_ENGINE_BUILD_TARGETS)) - -ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DAEMON),y) define DOCKER_ENGINE_INSTALL_INIT_SYSTEMD - $(INSTALL) -D -m 0644 $(@D)/components/engine/contrib/init/systemd/docker.service \ + $(INSTALL) -D -m 0644 $(@D)/contrib/init/systemd/docker.service \ $(TARGET_DIR)/usr/lib/systemd/system/docker.service - $(INSTALL) -D -m 0644 $(@D)/components/engine/contrib/init/systemd/docker.socket \ + $(INSTALL) -D -m 0644 $(@D)/contrib/init/systemd/docker.socket \ $(TARGET_DIR)/usr/lib/systemd/system/docker.socket mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/ ln -fs ../../../../usr/lib/systemd/system/docker.service \ @@ -92,22 +77,8 @@ define DOCKER_ENGINE_USERS - - docker -1 * - - - Docker Application Container Framework endef -endif - -define DOCKER_ENGINE_BUILD_CMDS - $(foreach target,$(DOCKER_ENGINE_BUILD_TARGETS), \ - cd $(@D)/$(DOCKER_ENGINE_WORKSPACE)/src/github.com/docker/$(if $(filter $(target),dockerd),docker,cli); \ - $(GO_TARGET_ENV) \ - GOPATH="$(@D)/$(DOCKER_ENGINE_WORKSPACE)" \ - $(DOCKER_ENGINE_GO_ENV) \ - $(GO_BIN) build -v $(DOCKER_ENGINE_BUILD_OPTS) \ - -o $(@D)/bin/$(target) \ - ./cmd/$(target) - ) -endef - define DOCKER_ENGINE_INSTALL_SYMLINKS - ln -fs tini $(TARGET_DIR)/usr/bin/docker-init + ln -fs tini $(TARGET_DIR)/usr/bin/docker-init endef DOCKER_ENGINE_POST_INSTALL_TARGET_HOOKS += DOCKER_ENGINE_INSTALL_SYMLINKS diff --git a/buildroot/package/gnutls/gnutls.mk b/buildroot/package/gnutls/gnutls.mk index 18af68437..7492254e8 100644 --- a/buildroot/package/gnutls/gnutls.mk +++ b/buildroot/package/gnutls/gnutls.mk @@ -95,4 +95,11 @@ else GNUTLS_CONF_OPTS += --without-zlib endif +# Provide a default CA cert location +ifeq ($(BR2_PACKAGE_P11_KIT),y) +GNUTLS_CONF_OPTS += --with-default-trust-store-pkcs11=pkcs11:model=p11-kit-trust +else ifeq ($(BR2_PACKAGE_CA_CERTIFICATES),y) +GNUTLS_CONF_OPTS += --with-default-trust-store-file=/etc/ssl/certs/ca-certificates.crt +endif + $(eval $(autotools-package)) diff --git a/buildroot/package/go/go.hash b/buildroot/package/go/go.hash index bd6af0358..ee1c881e6 100644 --- a/buildroot/package/go/go.hash +++ b/buildroot/package/go/go.hash @@ -1,3 +1,3 @@ # From https://golang.org/dl/ -sha256 042fba357210816160341f1002440550e952eb12678f7c9e7e9d389437942550 go1.11.2.src.tar.gz +sha256 4cfd42720a6b1e79a8024895fa6607b69972e8e32446df76d6ce79801bbadb15 go1.11.4.src.tar.gz sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 LICENSE diff --git a/buildroot/package/go/go.mk b/buildroot/package/go/go.mk index 2e434f3ba..0d7b961dd 100644 --- a/buildroot/package/go/go.mk +++ b/buildroot/package/go/go.mk @@ -4,7 +4,7 @@ # ################################################################################ -GO_VERSION = 1.11.2 +GO_VERSION = 1.11.4 GO_SITE = https://storage.googleapis.com/golang GO_SOURCE = go$(GO_VERSION).src.tar.gz diff --git a/buildroot/package/libbsd/Config.in b/buildroot/package/libbsd/Config.in index ba5e5cbcf..0f320302b 100644 --- a/buildroot/package/libbsd/Config.in +++ b/buildroot/package/libbsd/Config.in @@ -5,12 +5,12 @@ config BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS depends on !BR2_microblaze depends on !BR2_arc depends on !BR2_xtensa + # uClibc on noMMU doesn't provide __register_atfork() + depends on !(BR2_TOOLCHAIN_USES_UCLIBC && !BR2_USE_MMU) config BR2_PACKAGE_LIBBSD bool "libbsd" depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS - # uClibc on noMMU doesn't provide __register_atfork() - depends on !(BR2_TOOLCHAIN_USES_UCLIBC && !BR2_USE_MMU) depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_WCHAR help @@ -24,5 +24,4 @@ config BR2_PACKAGE_LIBBSD comment "libbsd needs a toolchain w/ threads, wchar" depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_USES_UCLIBC && !BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/buildroot/package/libcurl/libcurl.mk b/buildroot/package/libcurl/libcurl.mk index 99a451b63..8a5ab6dea 100644 --- a/buildroot/package/libcurl/libcurl.mk +++ b/buildroot/package/libcurl/libcurl.mk @@ -45,7 +45,8 @@ LIBCURL_CONF_ENV += LD_LIBRARY_PATH=$(if $(LD_LIBRARY_PATH),$(LD_LIBRARY_PATH):) LIBCURL_CONF_OPTS += --with-ssl=$(STAGING_DIR)/usr \ --with-ca-path=/etc/ssl/certs else ifeq ($(BR2_PACKAGE_GNUTLS),y) -LIBCURL_CONF_OPTS += --with-gnutls=$(STAGING_DIR)/usr +LIBCURL_CONF_OPTS += --with-gnutls=$(STAGING_DIR)/usr \ + --with-ca-fallback LIBCURL_DEPENDENCIES += gnutls else ifeq ($(BR2_PACKAGE_LIBNSS),y) LIBCURL_CONF_OPTS += --with-nss=$(STAGING_DIR)/usr diff --git a/buildroot/package/libgpgme/libgpgme.mk b/buildroot/package/libgpgme/libgpgme.mk index a70ffcf11..85450c83d 100644 --- a/buildroot/package/libgpgme/libgpgme.mk +++ b/buildroot/package/libgpgme/libgpgme.mk @@ -12,6 +12,7 @@ LIBGPGME_LICENSE_FILES = COPYING.LESSER LIBGPGME_INSTALL_STAGING = YES LIBGPGME_DEPENDENCIES = libassuan libgpg-error LIBGPGME_LANGUAGE_BINDINGS = cl +LIBGPGME_CONFIG_SCRIPTS = gpgme-config LIBGPGME_CONF_OPTS = \ --with-gpg-error-prefix=$(STAGING_DIR)/usr \ diff --git a/buildroot/package/libiscsi/libiscsi.mk b/buildroot/package/libiscsi/libiscsi.mk index 6c8600829..a34069d7b 100644 --- a/buildroot/package/libiscsi/libiscsi.mk +++ b/buildroot/package/libiscsi/libiscsi.mk @@ -11,6 +11,8 @@ LIBISCSI_LICENSE_FILES = COPYING LICENCE-GPL-2.txt LICENCE-LGPL-2.1.txt LIBISCSI_INSTALL_STAGING = YES LIBISCSI_AUTORECONF = YES +LIBISCSI_CONF_OPTS = --disable-werror --disable-manpages + # We need to create the m4 directory to make autoreconf work properly. define LIBISCSI_CREATE_M4_DIR mkdir -p $(@D)/m4 diff --git a/buildroot/package/liblo/0002-src-server.c-fix-stringop-truncation-error.patch b/buildroot/package/liblo/0002-src-server.c-fix-stringop-truncation-error.patch new file mode 100644 index 000000000..3f3bf86cc --- /dev/null +++ b/buildroot/package/liblo/0002-src-server.c-fix-stringop-truncation-error.patch @@ -0,0 +1,30 @@ +From c1b2fbd8d96d9b668a0b5e3c49c75c13cfe7d4ba Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 15 Dec 2018 21:55:08 +0100 +Subject: [PATCH] src/server.c: fix stringop-truncation error + +Fixes: + - http://autobuild.buildroot.org/results/62896bd6a1a30facaffd07a7a763831996dc8ea0 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/radarsat1/liblo/pull/70] +--- + src/server.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/server.c b/src/server.c +index 6d1a9de..72aecc9 100644 +--- a/src/server.c ++++ b/src/server.c +@@ -377,7 +377,7 @@ void lo_server_resolve_hostname(lo_server s) + gethostname(hostname, sizeof(hostname)); + he = gethostbyname(hostname); + if (he) { +- strncpy(hostname, he->h_name, sizeof(hostname)); ++ strncpy(hostname, he->h_name, sizeof(hostname) - 1); + } + } + +-- +2.14.1 + diff --git a/buildroot/package/libmpd/0001-Fix-build-on-archlinux-missing-include.patch b/buildroot/package/libmpd/0001-Fix-build-on-archlinux-missing-include.patch new file mode 100644 index 000000000..be16eb971 --- /dev/null +++ b/buildroot/package/libmpd/0001-Fix-build-on-archlinux-missing-include.patch @@ -0,0 +1,24 @@ +From 4f946c01000fd97100e4a534b47f9c7ace0403df Mon Sep 17 00:00:00 2001 +From: QC +Date: Thu, 9 Oct 2014 19:51:50 +0200 +Subject: [PATCH] Fix build on archlinux (missing include) + +Signed-off-by: Fabrice Fontaine +[Retrieved from: +https://github.com/DaveDavenport/libmpd/commit/4f946c01000fd97100e4a534b47f9c7ace0403df] +--- + src/libmpd-internal.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/libmpd-internal.h b/src/libmpd-internal.h +index c84c3a4..30cdc85 100644 +--- a/src/libmpd-internal.h ++++ b/src/libmpd-internal.h +@@ -21,6 +21,7 @@ + #define __MPD_INTERNAL_LIB_ + + #include "libmpdclient.h" ++#include + struct _MpdData_real; + + typedef struct _MpdData_real { diff --git a/buildroot/package/libopenssl/libopenssl.mk b/buildroot/package/libopenssl/libopenssl.mk index ca0521b22..dc15abf66 100644 --- a/buildroot/package/libopenssl/libopenssl.mk +++ b/buildroot/package/libopenssl/libopenssl.mk @@ -5,7 +5,7 @@ ################################################################################ LIBOPENSSL_VERSION = 1.0.2q -LIBOPENSSL_SITE = http://www.openssl.org/source +LIBOPENSSL_SITE = https://www.openssl.org/source LIBOPENSSL_SOURCE = openssl-$(LIBOPENSSL_VERSION).tar.gz LIBOPENSSL_LICENSE = OpenSSL or SSLeay LIBOPENSSL_LICENSE_FILES = LICENSE diff --git a/buildroot/package/liboping/0001-ping_host_add-Decrease-buffer-size-to-make-GCC-s-truncation-check-happy.patch b/buildroot/package/liboping/0001-ping_host_add-Decrease-buffer-size-to-make-GCC-s-truncation-check-happy.patch new file mode 100644 index 000000000..b0aca8a71 --- /dev/null +++ b/buildroot/package/liboping/0001-ping_host_add-Decrease-buffer-size-to-make-GCC-s-truncation-check-happy.patch @@ -0,0 +1,31 @@ +From 18ca43507b351f339ff23062541ee8d58e813a53 Mon Sep 17 00:00:00 2001 +From: Florian Forster +Date: Sun, 29 Jul 2018 14:34:19 +0200 +Subject: [PATCH] ping_host_add: Decrease buffer size to make GCC's truncation + check happy. + +Fixes: #38 +Signed-off-by: Fabrice Fontaine +[Retrieved from: +https://github.com/octo/liboping/commit/18ca43507b351f339ff23062541ee8d58e813a53] +--- + src/liboping.c | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/src/liboping.c b/src/liboping.c +index 5253e8c..2470988 100644 +--- a/src/liboping.c ++++ b/src/liboping.c +@@ -1636,10 +1636,8 @@ int ping_host_add (pingobj_t *obj, const char *host) + } + else + { +- char errmsg[PING_ERRMSG_LEN]; +- +- snprintf (errmsg, PING_ERRMSG_LEN, "Unknown `ai_family': %i", ai_ptr->ai_family); +- errmsg[PING_ERRMSG_LEN - 1] = '\0'; ++ char errmsg[64]; ++ snprintf (errmsg, sizeof(errmsg), "Unknown `ai_family': %d", ai_ptr->ai_family); + + dprintf ("%s", errmsg); + ping_set_error (obj, "getaddrinfo", errmsg); diff --git a/buildroot/package/libpam-tacplus/0002-Fix-compilation-of-tacc.c-with-GCC-8.patch b/buildroot/package/libpam-tacplus/0002-Fix-compilation-of-tacc.c-with-GCC-8.patch new file mode 100644 index 000000000..2f87b9276 --- /dev/null +++ b/buildroot/package/libpam-tacplus/0002-Fix-compilation-of-tacc.c-with-GCC-8.patch @@ -0,0 +1,39 @@ +From 4c9635b03d0acf140f65004be9d4822297ee5a35 Mon Sep 17 00:00:00 2001 +From: Carlos Santos +Date: Mon, 10 Dec 2018 17:27:16 -0200 +Subject: [PATCH] Fix compilation of tacc.c with GCC 8 + +GCC 8 demands that the size of the string copied by strncpy be smaller +than the size of the destination to keep space for the trailibg '\0': + +tacc.c:378:3: error: 'strncpy' specified bound 4 equals destination size [-Werror=stringop-truncation] + strncpy(utmpx.ut_id, tty + C_STRLEN("tty"), sizeof(utmpx.ut_id)); + +Ensure that no more than sizeof(utmpx.ut_id) - 1 characters are copied +and that a trailing '\0' is stored. + +Fixes: + http://autobuild.buildroot.net/results/da6d150e470046c03c5f7463de045604e15e4a30/ + +Signed-off-by: Carlos Santos +--- + tacc.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/tacc.c b/tacc.c +index f61e2d7..3c1a40c 100644 +--- a/tacc.c ++++ b/tacc.c +@@ -375,7 +375,8 @@ int main(int argc, char **argv) { + utmpx.ut_type = USER_PROCESS; + utmpx.ut_pid = getpid(); + xstrcpy(utmpx.ut_line, tty, sizeof(utmpx.ut_line)); +- strncpy(utmpx.ut_id, tty + C_STRLEN("tty"), sizeof(utmpx.ut_id)); ++ strncpy(utmpx.ut_id, tty + C_STRLEN("tty"), sizeof(utmpx.ut_id) - 1); ++ utmpx.ut_id[sizeof(utmpx.ut_id) - 1] = '\0'; + xstrcpy(utmpx.ut_host, "dialup", sizeof(utmpx.ut_host)); + utmpx.ut_tv.tv_sec = tv.tv_sec; + utmpx.ut_tv.tv_usec = tv.tv_usec; +-- +2.14.5 + diff --git a/buildroot/package/libpjsip/libpjsip.mk b/buildroot/package/libpjsip/libpjsip.mk index db9e474be..22b922586 100644 --- a/buildroot/package/libpjsip/libpjsip.mk +++ b/buildroot/package/libpjsip/libpjsip.mk @@ -26,9 +26,6 @@ LIBPJSIP_CONF_ENV = \ LIBPJSIP_CONF_OPTS = \ --disable-sound \ - --disable-gsm-codec \ - --disable-speex-codec \ - --disable-speex-aec \ --disable-resample \ --disable-video \ --disable-opencore-amr \ @@ -56,6 +53,16 @@ LIBPJSIP_CONF_OPTS = \ # so we want to use it. LIBPJSIP_CONF_OPTS += --enable-epoll +ifeq ($(BR2_PACKAGE_LIBGSM),y) +LIBPJSIP_CONF_OPTS += \ + --enable-gsm-codec \ + --with-external-gsm +LIBPJSIP_DEPENDENCIES += libgsm +else +LIBPJSIP_CONF_OPTS += \ + --disable-gsm-codec +endif + ifeq ($(BR2_PACKAGE_LIBOPENSSL),y) LIBPJSIP_DEPENDENCIES += libopenssl LIBPJSIP_CONF_OPTS += --with-ssl=$(STAGING_DIR)/usr @@ -63,8 +70,23 @@ else LIBPJSIP_CONF_OPTS += --disable-ssl endif +ifeq ($(BR2_PACKAGE_SPEEX)$(BR2_PACKAGE_SPEEXDSP),yy) +LIBPJSIP_CONF_OPTS += \ + --enable-speex-aec \ + --enable-speex-codec \ + --with-external-speex +LIBPJSIP_DEPENDENCIES += speex speexdsp +else +LIBPJSIP_CONF_OPTS += \ + --disable-speex-aec \ + --disable-speex-codec +endif + ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) LIBPJSIP_DEPENDENCIES += util-linux endif +# disable build of test binaries +LIBPJSIP_MAKE_OPTS = lib + $(eval $(autotools-package)) diff --git a/buildroot/package/linux-firmware/linux-firmware.mk b/buildroot/package/linux-firmware/linux-firmware.mk index 4eba57434..1c8bc3010 100644 --- a/buildroot/package/linux-firmware/linux-firmware.mk +++ b/buildroot/package/linux-firmware/linux-firmware.mk @@ -383,7 +383,7 @@ endif ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_QLOGIC_4X),y) LINUX_FIRMWARE_FILES += \ - qed/qed_init_values_zipped-8.33.11.0.bin + qed/qed_init_values_zipped-*.bin # No license file; the license is in the file WHENCE # which is installed unconditionally endif diff --git a/buildroot/package/linux-headers/Config.in.host b/buildroot/package/linux-headers/Config.in.host index 756fe81a5..5a71e9248 100644 --- a/buildroot/package/linux-headers/Config.in.host +++ b/buildroot/package/linux-headers/Config.in.host @@ -6,7 +6,7 @@ config BR2_PACKAGE_HOST_LINUX_HEADERS choice prompt "Kernel Headers" default BR2_KERNEL_HEADERS_AS_KERNEL if BR2_LINUX_KERNEL - default BR2_KERNEL_HEADERS_4_18 + default BR2_KERNEL_HEADERS_4_19 help Select the kernel version to get headers from. @@ -60,6 +60,10 @@ config BR2_KERNEL_HEADERS_4_18 bool "Linux 4.18.x kernel headers" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 +config BR2_KERNEL_HEADERS_4_19 + bool "Linux 4.19.x kernel headers" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 + config BR2_KERNEL_HEADERS_VERSION bool "Manually specified Linux version" help @@ -125,6 +129,10 @@ choice This is used to hide/show some packages that have strict requirements on the version of kernel headers. +config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19 + bool "4.19.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 + config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18 bool "4.18.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 @@ -290,9 +298,9 @@ config BR2_DEFAULT_KERNEL_HEADERS string default "3.2.102" if BR2_KERNEL_HEADERS_3_2 default "4.1.52" if BR2_KERNEL_HEADERS_4_1 - default "4.4.164" if BR2_KERNEL_HEADERS_4_4 - default "4.9.140" if BR2_KERNEL_HEADERS_4_9 - default "4.14.83" if BR2_KERNEL_HEADERS_4_14 + default "4.4.166" if BR2_KERNEL_HEADERS_4_4 + default "4.9.143" if BR2_KERNEL_HEADERS_4_9 + default "4.14.86" if BR2_KERNEL_HEADERS_4_14 default "4.16.18" if BR2_KERNEL_HEADERS_4_16 default "4.18.20" if BR2_KERNEL_HEADERS_4_18 default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION diff --git a/buildroot/package/liquid-dsp/liquid-dsp.mk b/buildroot/package/liquid-dsp/liquid-dsp.mk index e3114a2d1..db6789384 100644 --- a/buildroot/package/liquid-dsp/liquid-dsp.mk +++ b/buildroot/package/liquid-dsp/liquid-dsp.mk @@ -32,6 +32,7 @@ endif # use FFTW instead of built-in FFT ifeq ($(BR2_PACKAGE_FFTW_PRECISION_SINGLE),y) LIQUID_DSP_LDFLAGS += -lfftw3f +LIQUID_DSP_DEPENDENCIES += fftw endif # disable altivec, it has build issues @@ -41,10 +42,12 @@ endif ifeq ($(BR2_PACKAGE_FFTW_PRECISION_DOUBLE),y) LIQUID_DSP_LDFLAGS += -lfftw3 +LIQUID_DSP_DEPENDENCIES += fftw endif ifeq ($(BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE),y) LIQUID_DSP_LDFLAGS += -lfftw3l +LIQUID_DSP_DEPENDENCIES += fftw endif LIQUID_DSP_CONF_OPTS += \ diff --git a/buildroot/package/lua-cqueues/lua-cqueues.mk b/buildroot/package/lua-cqueues/lua-cqueues.mk index 4f4be1e04..4f31c3277 100644 --- a/buildroot/package/lua-cqueues/lua-cqueues.mk +++ b/buildroot/package/lua-cqueues/lua-cqueues.mk @@ -8,7 +8,7 @@ LUA_CQUEUES_VERSION = rel-20161215 LUA_CQUEUES_SITE = $(call github,wahern,cqueues,$(LUA_CQUEUES_VERSION)) LUA_CQUEUES_LICENSE = MIT LUA_CQUEUES_LICENSE_FILES = LICENSE -LUA_CQUEUES_DEPENDENCIES = luainterpreter openssl +LUA_CQUEUES_DEPENDENCIES = luainterpreter openssl host-m4 define LUA_CQUEUES_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ diff --git a/buildroot/package/luvi/0002-luvi-executable-needs-to-export-symbols.patch b/buildroot/package/luvi/0002-luvi-executable-needs-to-export-symbols.patch new file mode 100644 index 000000000..74b6537f9 --- /dev/null +++ b/buildroot/package/luvi/0002-luvi-executable-needs-to-export-symbols.patch @@ -0,0 +1,53 @@ +From 1ea2c1e372ab59b9a633a51f0dcefc24328528f1 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Mon, 10 Sep 2018 08:18:38 +0200 +Subject: [PATCH] luvi executable needs to export symbols +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Using CMake 3.12 running luvi fails with: + +``` +[string "return require('init')(...)"]:1: module 'init' not found: + no field package.preload['init'] + no file './init.lua' + no file '/usr/share/luajit-2.0.5/init.lua' + no file '/usr/local/share/lua/5.1/init.lua' + no file '/usr/local/share/lua/5.1/init/init.lua' + no file '/usr/share/lua/5.1/init.lua' + no file '/usr/share/lua/5.1/init/init.lua' + no file './init.so' + no file '/usr/local/lib/lua/5.1/init.so' + no file '/usr/lib/lua/5.1/init.so' + no file '/usr/local/lib/lua/5.1/loadall.so' +``` + +Looking at link.txt for the luvi executable shows that `-rdynamic` is +not set anymore in CMake 3.12. This has the effect, that symbols are +missing in the `.dynsym` section. + +Therefore, set `ENABLE_EXPORTS` to true which set `-rdynamic` explicitly. + +Upstream status: b8781653dcb8815a3019a77baf4f3b7f7a255ebe + +Signed-off-by: Jörg Krause +--- + CMakeLists.txt | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e141f8e..8219d0b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -158,6 +158,7 @@ if("${CMAKE_SYSTEM_NAME}" MATCHES "Linux") + endif() + + target_link_libraries(luvi ${LUVI_LIBRARIES} ${EXTRA_LIBS} ${CMAKE_THREAD_LIBS_INIT}) ++set_target_properties(luvi PROPERTIES ENABLE_EXPORTS ON) + + ############################################################################### + ## Installation Targets +-- +2.19.1 + diff --git a/buildroot/package/lxc/0001-stringutils-include-stdarg-for-va_list.patch b/buildroot/package/lxc/0001-stringutils-include-stdarg-for-va_list.patch new file mode 100644 index 000000000..b1fe98923 --- /dev/null +++ b/buildroot/package/lxc/0001-stringutils-include-stdarg-for-va_list.patch @@ -0,0 +1,30 @@ +From b7df06ad14c04f18b7db5b64d5142b802bf64cb2 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Mon, 3 Dec 2018 22:18:16 +0100 +Subject: [PATCH] stringutils: include stdarg for va_list + +Fixes: + - http://autobuild.buildroot.org/results/0b90e7dca2984652842832a41abad93ac49a9b86 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/lxc/lxc/commit/b7df06ad14c04f18b7db5b64d5142b802bf64cb2] +--- + src/lxc/string_utils.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/lxc/string_utils.h b/src/lxc/string_utils.h +index 4065e4e6..d4e633cc 100644 +--- a/src/lxc/string_utils.h ++++ b/src/lxc/string_utils.h +@@ -20,6 +20,8 @@ + #ifndef __LXC_STRING_UTILS_H + #define __LXC_STRING_UTILS_H + ++#include ++ + #include "config.h" + + #include "initutils.h" +-- +2.14.1 + diff --git a/buildroot/package/lxc/0002-configure.ac-fix-build-without-stack-protector.patch b/buildroot/package/lxc/0002-configure.ac-fix-build-without-stack-protector.patch new file mode 100644 index 000000000..744fcbbed --- /dev/null +++ b/buildroot/package/lxc/0002-configure.ac-fix-build-without-stack-protector.patch @@ -0,0 +1,37 @@ +From 3aa7271157d3c815a4426c1f8eaea2f3b6dafa6a Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 4 Dec 2018 08:40:05 +0100 +Subject: [PATCH] configure.ac: fix build without stack-protector + +Compiler based hardening (including -fstack-protector-strong) are +enabled since version 3.0.3 and +https://github.com/lxc/lxc/commit/2268c27754152aa538db2c9e3753d72d19bcd17a + +However, some compilers could missed the needed library (-lssp or +-lssp_nonshared) at linking step so use ax_check_link_flag instead of +ax_check_compile_flag + +Fixes: + - http://autobuild.buildroot.org/results/0b90e7dca2984652842832a41abad93ac49a9b86 + +Signed-off-by: Fabrice Fontaine +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 9a9adac3..032e4cfd 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -696,7 +696,7 @@ AX_CHECK_COMPILE_FLAG([-Wcast-align], [CFLAGS="$CFLAGS -Wcast-align"],,[-Werror] + AX_CHECK_COMPILE_FLAG([-Wstrict-prototypes], [CFLAGS="$CFLAGS -Wstrict-prototypes"],,[-Werror]) + AX_CHECK_COMPILE_FLAG([-fno-strict-aliasing], [CFLAGS="$CFLAGS -fno-strict-aliasing"],,[-Werror]) + AX_CHECK_COMPILE_FLAG([-fstack-clash-protection], [CFLAGS="$CFLAGS -fstack-clash-protection"],,[-Werror]) +-AX_CHECK_COMPILE_FLAG([-fstack-protector-strong], [CFLAGS="$CFLAGS -fstack-protector-strong"],,[-Werror]) ++AX_CHECK_LINK_FLAG([-fstack-protector-strong], [CFLAGS="$CFLAGS -fstack-protector-strong"],,[-Werror]) + AX_CHECK_COMPILE_FLAG([-g], [CFLAGS="$CFLAGS -g"],,[-Werror]) + AX_CHECK_COMPILE_FLAG([--mcet -fcf-protection], [CFLAGS="$CFLAGS --mcet -fcf-protection"],,[-Werror]) + AX_CHECK_COMPILE_FLAG([-Werror=implicit-function-declaration], [CFLAGS="$CFLAGS -Werror=implicit-function-declaration"],,[-Werror]) +-- +2.14.1 + diff --git a/buildroot/package/lxc/Config.in b/buildroot/package/lxc/Config.in index d90e78857..d8d8f50c8 100644 --- a/buildroot/package/lxc/Config.in +++ b/buildroot/package/lxc/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_LXC depends on BR2_USE_MMU # fork() # build system forcefully builds a shared library depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11 depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # setns() system call help Linux Containers (LXC), provides the ability to group and @@ -13,8 +14,9 @@ config BR2_PACKAGE_LXC https://linuxcontainers.org/ -comment "lxc needs a toolchain w/ threads, headers >= 3.0, dynamic library" +comment "lxc needs a toolchain w/ threads, headers >= 3.0, dynamic library, gcc >= 4.7" depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 \ || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 \ || BR2_STATIC_LIBS diff --git a/buildroot/package/lxc/lxc.hash b/buildroot/package/lxc/lxc.hash index f46b1e1f5..c741a5bab 100644 --- a/buildroot/package/lxc/lxc.hash +++ b/buildroot/package/lxc/lxc.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 45986c49be1c048fa127bd3e7ea1bd3347e25765c008a09a2e4c233151a2d5db lxc-3.0.1.tar.gz +sha256 620cb832cc02c63bf4d330657bf6176544e145da281ee384a34d689635a19841 lxc-3.0.3.tar.gz sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/buildroot/package/lxc/lxc.mk b/buildroot/package/lxc/lxc.mk index d1487e0e5..c9838fb22 100644 --- a/buildroot/package/lxc/lxc.mk +++ b/buildroot/package/lxc/lxc.mk @@ -4,12 +4,14 @@ # ################################################################################ -LXC_VERSION = 3.0.1 +LXC_VERSION = 3.0.3 LXC_SITE = https://linuxcontainers.org/downloads/lxc LXC_LICENSE = LGPL-2.1+ LXC_LICENSE_FILES = COPYING LXC_DEPENDENCIES = host-pkgconf LXC_INSTALL_STAGING = YES +# We're patching configure.ac +LXC_AUTORECONF = YES LXC_CONF_OPTS = --disable-apparmor --with-distro=buildroot \ --disable-werror \ diff --git a/buildroot/package/lynx/lynx.mk b/buildroot/package/lynx/lynx.mk index 735d5b317..174d741dd 100644 --- a/buildroot/package/lynx/lynx.mk +++ b/buildroot/package/lynx/lynx.mk @@ -10,7 +10,7 @@ LYNX_SITE = ftp://ftp.invisible-island.net/lynx/tarballs LYNX_LICENSE = GPL-2.0 LYNX_LICENSE_FILES = COPYING -LYNX_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES) +LYNX_DEPENDENCIES = host-pkgconf $(TARGET_NLS_DEPENDENCIES) ifeq ($(BR2_PACKAGE_NCURSES),y) LYNX_DEPENDENCIES += ncurses diff --git a/buildroot/package/minizip/Config.in b/buildroot/package/minizip/Config.in index 4bc12a0d7..68fa1d711 100644 --- a/buildroot/package/minizip/Config.in +++ b/buildroot/package/minizip/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_MINIZIP bool "minizip" depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS - depends on !(BR2_TOOLCHAIN_USES_UCLIBC && !BR2_USE_MMU) # libbsd depends on BR2_TOOLCHAIN_HAS_THREADS # libbsd depends on BR2_USE_WCHAR # libbsd select BR2_PACKAGE_LIBBSD @@ -20,5 +19,4 @@ config BR2_PACKAGE_MINIZIP_DEMOS comment "minizip needs a toolchain w/ threads, wchar" depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_USES_UCLIBC && !BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/buildroot/package/nginx/nginx.hash b/buildroot/package/nginx/nginx.hash index c3e6b6a72..40dba402e 100644 --- a/buildroot/package/nginx/nginx.hash +++ b/buildroot/package/nginx/nginx.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -sha256 a3d8c67c2035808c7c0d475fffe263db8c353b11521aa7ade468b780ed826cc6 nginx-1.15.6.tar.gz +sha256 8f22ea2f6c0e0a221b6ddc02b6428a3ff708e2ad55f9361102b1c9f4142bdf93 nginx-1.15.7.tar.gz # License files, locally calculated sha256 e18f05bcaad47528f8b21861d4a0fb9815ca1bbb4be946c51a51d36623758bcc LICENSE diff --git a/buildroot/package/nginx/nginx.mk b/buildroot/package/nginx/nginx.mk index 525317447..3bdd92b3f 100644 --- a/buildroot/package/nginx/nginx.mk +++ b/buildroot/package/nginx/nginx.mk @@ -4,7 +4,7 @@ # ################################################################################ -NGINX_VERSION = 1.15.6 +NGINX_VERSION = 1.15.7 NGINX_SITE = http://nginx.org/download NGINX_LICENSE = BSD-2-Clause NGINX_LICENSE_FILES = LICENSE diff --git a/buildroot/package/nodejs/nodejs.hash b/buildroot/package/nodejs/nodejs.hash index 70d67730b..13a5c2daa 100644 --- a/buildroot/package/nodejs/nodejs.hash +++ b/buildroot/package/nodejs/nodejs.hash @@ -1,5 +1,5 @@ -# From https://nodejs.org/dist/v8.12.0/SHASUMS256.txt -sha256 5a9dff58016c18fb4bf902d963b124ff058a550ebcd9840c677757387bce419a node-v8.12.0.tar.xz +# From https://nodejs.org/dist/v8.14.0/SHASUMS256.txt +sha256 8ce252913c9f6aaa9871f2d9661b6e54858dae2f0064bd3c624676edb09083c4 node-v8.14.0.tar.xz # Hash for license file sha256 b87be6c1479ed977481115869c2dd8b6d59e5ea55aa09939d6c898242121b2f5 LICENSE diff --git a/buildroot/package/nodejs/nodejs.mk b/buildroot/package/nodejs/nodejs.mk index 429642b79..8c8afbc33 100644 --- a/buildroot/package/nodejs/nodejs.mk +++ b/buildroot/package/nodejs/nodejs.mk @@ -4,7 +4,7 @@ # ################################################################################ -NODEJS_VERSION = 8.12.0 +NODEJS_VERSION = 8.14.0 NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION) NODEJS_DEPENDENCIES = host-python host-nodejs c-ares \ diff --git a/buildroot/package/openzwave/0004-Fix-compilation-error-in-regards-to-Werror-restrict.patch b/buildroot/package/openzwave/0004-Fix-compilation-error-in-regards-to-Werror-restrict.patch new file mode 100644 index 000000000..b3dbd8f88 --- /dev/null +++ b/buildroot/package/openzwave/0004-Fix-compilation-error-in-regards-to-Werror-restrict.patch @@ -0,0 +1,39 @@ +From 14164e9920ce3482747483fc16654c82d3ce445f Mon Sep 17 00:00:00 2001 +From: pipiche38 +Date: Fri, 8 Jun 2018 15:13:39 +0200 +Subject: [PATCH] Fix compilation error in regards to -Werror=restrict +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +/usr/share/domoticz/open-zwave/cpp/src/command_classes/DoorLockLogging.cpp: In member function �virtual bool OpenZWave::DoorLockLogging::HandleMsg(const uint8*, uint32, uint32)�: +/usr/share/domoticz/open-zwave/cpp/src/command_classes/DoorLockLogging.cpp:312:15: error: passing argument 1 to restrict-qualified parameter aliases with argument 4 [-Werror=restrict] + snprintf(usercode, sizeof(usercode), "%s %d", usercode, (int)_data[12+i]); + ^~~~~~~~ ~~~~~~~~ +Signed-off-by: Fabrice Fontaine +[Retrieved from: +https://github.com/OpenZWave/open-zwave/commit/14164e9920ce3482747483fc16654c82d3ce445f] +--- + cpp/src/command_classes/DoorLockLogging.cpp | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/cpp/src/command_classes/DoorLockLogging.cpp b/cpp/src/command_classes/DoorLockLogging.cpp +index c235a8497..418f61b7d 100644 +--- a/cpp/src/command_classes/DoorLockLogging.cpp ++++ b/cpp/src/command_classes/DoorLockLogging.cpp +@@ -304,12 +304,13 @@ bool DoorLockLogging::HandleMsg + } + uint8 userid = (_data[10]); + uint8 usercodelength = (_data[11]); +- char usercode[254]; ++ char usercode[254], tmpusercode[254]; + snprintf(usercode, sizeof(usercode), "UserCode:"); + if (usercodelength > 0) + for (int i = 0; i < usercodelength; i++ ) + { +- snprintf(usercode, sizeof(usercode), "%s %d", usercode, (int)_data[12+i]); ++ strncpy(tmpusercode, usercode, sizeof(tmpusercode)); ++ snprintf(usercode, sizeof(usercode), "%s %d", tmpusercode, (int)_data[12+i]); + } + + if (valid) { diff --git a/buildroot/package/php/php.hash b/buildroot/package/php/php.hash index cea6997aa..094977c54 100644 --- a/buildroot/package/php/php.hash +++ b/buildroot/package/php/php.hash @@ -1,5 +1,5 @@ # From http://php.net/downloads.php -sha256 989c04cc879ee71a5e1131db867f3c5102f1f7565f805e2bb8bde33f93147fe1 php-7.2.12.tar.xz +sha256 14b0429abdb46b65c843e5882c9a8c46b31dfbf279c747293b8ab950c2644a4b php-7.2.13.tar.xz # License file sha256 f689b8fa63bea7950ce6a21bf52ed88ea0d77673ee76e6de12f51191174d91b8 LICENSE diff --git a/buildroot/package/php/php.mk b/buildroot/package/php/php.mk index ae7e742b6..b95ceb5c9 100644 --- a/buildroot/package/php/php.mk +++ b/buildroot/package/php/php.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_VERSION = 7.2.12 +PHP_VERSION = 7.2.13 PHP_SITE = http://www.php.net/distributions PHP_SOURCE = php-$(PHP_VERSION).tar.xz PHP_INSTALL_STAGING = YES diff --git a/buildroot/package/pps-tools/pps-tools.hash b/buildroot/package/pps-tools/pps-tools.hash index da7bce45b..1e54c2946 100644 --- a/buildroot/package/pps-tools/pps-tools.hash +++ b/buildroot/package/pps-tools/pps-tools.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 eee0a76118cf11d94f575ee43804a6991379f2c734b400ba01ac4811d0498e97 pps-tools-47333f24af878f67ce48022e8af16419713aa1ac.tar.gz +sha256 1168f1474235017af413afdb07288303ad7a7b12a0282f3bf9ed0e22fe0d7d2e pps-tools-e2b25049df9a4da28168b7378016f1650d0dfa6b.tar.gz diff --git a/buildroot/package/pps-tools/pps-tools.mk b/buildroot/package/pps-tools/pps-tools.mk index 37bb7e1f8..2d82cf7da 100644 --- a/buildroot/package/pps-tools/pps-tools.mk +++ b/buildroot/package/pps-tools/pps-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -PPS_TOOLS_VERSION = 47333f24af878f67ce48022e8af16419713aa1ac +PPS_TOOLS_VERSION = e2b25049df9a4da28168b7378016f1650d0dfa6b PPS_TOOLS_SITE = $(call github,ago,pps-tools,$(PPS_TOOLS_VERSION)) PPS_TOOLS_INSTALL_STAGING = YES PPS_TOOLS_LICENSE = GPL-2.0+ diff --git a/buildroot/package/proftpd/Config.in b/buildroot/package/proftpd/Config.in index b615a5ff4..434dbb8bb 100644 --- a/buildroot/package/proftpd/Config.in +++ b/buildroot/package/proftpd/Config.in @@ -29,12 +29,12 @@ config BR2_PACKAGE_PROFTPD_MOD_SFTP config BR2_PACKAGE_PROFTPD_MOD_SQL bool "mod_sql support" help - Compile ProFTPD with mode_sql support. + Compile ProFTPD with mod_sql support. config BR2_PACKAGE_PROFTPD_MOD_QUOTATAB bool "mod_quotatab support" help - Compile ProFTPD with mode_quotatab support. This module + Compile ProFTPD with mod_quotatab support. This module is required in order to support quota tables: 1. mod_quotatab_file 2. mod_quotatab_ldap diff --git a/buildroot/package/prosody/Config.in b/buildroot/package/prosody/Config.in index 133b0b134..c32ca20e2 100644 --- a/buildroot/package/prosody/Config.in +++ b/buildroot/package/prosody/Config.in @@ -2,7 +2,9 @@ config BR2_PACKAGE_PROSODY bool "prosody" depends on BR2_USE_MMU # fork depends on BR2_PACKAGE_HAS_LUAINTERPRETER + depends on !BR2_PACKAGE_LUA_5_3 depends on !BR2_STATIC_LIBS # luaexpat, luasec, luasocket, luafilesystem + select BR2_PACKAGE_LUABITOP if !BR2_PACKAGE_LUAJIT # runtime select BR2_PACKAGE_LUAEXPAT # runtime select BR2_PACKAGE_LUASEC # runtime select BR2_PACKAGE_LUASOCKET # runtime @@ -19,3 +21,6 @@ config BR2_PACKAGE_PROSODY comment "prosody needs the lua interpreter, dynamic library" depends on !BR2_PACKAGE_HAS_LUAINTERPRETER || BR2_STATIC_LIBS depends on BR2_USE_MMU + +comment "prosody needs a Lua 5.1/5.2 interpreter" + depends on BR2_PACKAGE_LUA_5_3 diff --git a/buildroot/package/sdl2_net/sdl2_net.mk b/buildroot/package/sdl2_net/sdl2_net.mk index 2fa4a8c2e..93bf3a2eb 100644 --- a/buildroot/package/sdl2_net/sdl2_net.mk +++ b/buildroot/package/sdl2_net/sdl2_net.mk @@ -10,6 +10,6 @@ SDL2_NET_SITE = http://www.libsdl.org/projects/SDL_net/release SDL2_NET_LICENSE = Zlib SDL2_NET_LICENSE_FILES = COPYING.txt SDL2_NET_INSTALL_STAGING = YES -SDL2_NET_DEPENDENCIES = sdl2 +SDL2_NET_DEPENDENCIES = sdl2 host-pkgconf $(eval $(autotools-package)) diff --git a/buildroot/package/squashfs/Config.in b/buildroot/package/squashfs/Config.in index c16ebbf27..f5ae5d9be 100644 --- a/buildroot/package/squashfs/Config.in +++ b/buildroot/package/squashfs/Config.in @@ -2,7 +2,13 @@ config BR2_PACKAGE_SQUASHFS bool "squashfs" depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() - select BR2_PACKAGE_SQUASHFS_GZIP if !(BR2_PACKAGE_SQUASHFS_LZMA || BR2_PACKAGE_SQUASHFS_LZO) + # ensure at least on compression backend (defaults to gzip) + select BR2_PACKAGE_SQUASHFS_GZIP if !( \ + BR2_PACKAGE_SQUASHFS_LZ4 || \ + BR2_PACKAGE_SQUASHFS_LZMA || \ + BR2_PACKAGE_SQUASHFS_LZO || \ + BR2_PACKAGE_SQUASHFS_XZ || \ + BR2_PACKAGE_SQUASHFS_ZSTD) help Tools to generate SquashFS filesystems. diff --git a/buildroot/package/swupdate/swupdate.hash b/buildroot/package/swupdate/swupdate.hash index efc637976..339f40e1b 100644 --- a/buildroot/package/swupdate/swupdate.hash +++ b/buildroot/package/swupdate/swupdate.hash @@ -1,2 +1,3 @@ # Locally calculated -sha256 19156bb30c3517a0ff9c918a38062df3cfa70f02f8162da4971a2f47d108688e swupdate-2018.03.tar.gz +sha256 a65884ca18523cde1b0744d952d6f91462dbd4ad07941305f5684c6d4ec833dc swupdate-2018.11.tar.gz +sha256 dcc100d4161cc0b7177545ab6e47216f84857cda3843847c792a25289852dcaa COPYING diff --git a/buildroot/package/swupdate/swupdate.mk b/buildroot/package/swupdate/swupdate.mk index abf46c925..08d6ba937 100644 --- a/buildroot/package/swupdate/swupdate.mk +++ b/buildroot/package/swupdate/swupdate.mk @@ -4,11 +4,16 @@ # ################################################################################ -SWUPDATE_VERSION = 2018.03 +SWUPDATE_VERSION = 2018.11 SWUPDATE_SITE = $(call github,sbabic,swupdate,$(SWUPDATE_VERSION)) SWUPDATE_LICENSE = GPL-2.0+, LGPL-2.1+, MIT SWUPDATE_LICENSE_FILES = COPYING +# swupdate uses $CROSS-cc instead of $CROSS-gcc, which is not +# available in all external toolchains, and use CC for linking. Ensure +# TARGET_CC is used for both. +SWUPDATE_MAKE_ENV = CC="$(TARGET_CC)" LD="$(TARGET_CC)" + # swupdate bundles its own version of mongoose (version 6.11) ifeq ($(BR2_PACKAGE_JSON_C),y) diff --git a/buildroot/package/uclibc/0002-xtensa-add-custom-bits-poll.h.patch b/buildroot/package/uclibc/0002-xtensa-add-custom-bits-poll.h.patch new file mode 100644 index 000000000..030938bbc --- /dev/null +++ b/buildroot/package/uclibc/0002-xtensa-add-custom-bits-poll.h.patch @@ -0,0 +1,93 @@ +From 0cae9700a4a421dc22c80d205fbae4d01fdd1356 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Wed, 12 Dec 2018 06:58:01 -0800 +Subject: [PATCH] xtensa: add custom bits/poll.h +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Definitions of POLLWRNORM, POLLWRBAND and POLLREMOVE in xtensa linux +kernel are non-standard. Provide bits/poll.h with correct values for +these constants. + +This fixes the following strace build errors: + + In file included from xlat/pollflags.h:4:0, + from poll.c:34: + ./static_assert.h:40:24: error: static assertion failed: "POLLWRBAND != 0x0100" + # define static_assert _Static_assert + ^ + xlat/pollflags.h:75:1: note: in expansion of macro ‘static_assert’ + static_assert((POLLWRBAND) == (0x0100), "POLLWRBAND != 0x0100"); + ^~~~~~~~~~~~~ + ./static_assert.h:40:24: error: static assertion failed: "POLLREMOVE != 0x0800" + # define static_assert _Static_assert + ^ + xlat/pollflags.h:117:1: note: in expansion of macro ‘static_assert’ + static_assert((POLLREMOVE) == (0x0800), "POLLREMOVE != 0x0800"); + ^~~~~~~~~~~~~ + +Signed-off-by: Max Filippov +--- + libc/sysdeps/linux/xtensa/bits/poll.h | 49 +++++++++++++++++++++++++++++++++++ + 1 file changed, 49 insertions(+) + create mode 100644 libc/sysdeps/linux/xtensa/bits/poll.h + +diff --git a/libc/sysdeps/linux/xtensa/bits/poll.h b/libc/sysdeps/linux/xtensa/bits/poll.h +new file mode 100644 +index 000000000000..4588cc326006 +--- /dev/null ++++ b/libc/sysdeps/linux/xtensa/bits/poll.h +@@ -0,0 +1,49 @@ ++/* Copyright (C) 1997, 2001, 2006 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#ifndef _SYS_POLL_H ++# error "Never use directly; include instead." ++#endif ++ ++/* Event types that can be polled for. These bits may be set in `events' ++ to indicate the interesting event types; they will appear in `revents' ++ to indicate the status of the file descriptor. */ ++#define POLLIN 0x001 /* There is data to read. */ ++#define POLLPRI 0x002 /* There is urgent data to read. */ ++#define POLLOUT 0x004 /* Writing now will not block. */ ++ ++#ifdef __USE_XOPEN ++/* These values are defined in XPG4.2. */ ++# define POLLRDNORM 0x040 /* Normal data may be read. */ ++# define POLLRDBAND 0x080 /* Priority data may be read. */ ++# define POLLWRNORM POLLOUT /* Writing now will not block. */ ++# define POLLWRBAND 0x100 /* Priority data may be written. */ ++#endif ++ ++#ifdef __USE_GNU ++/* These are extensions for Linux. */ ++# define POLLMSG 0x400 ++# define POLLREMOVE 0x800 ++# define POLLRDHUP 0x2000 ++#endif ++ ++/* Event types always implicitly polled for. These bits need not be set in ++ `events', but they will appear in `revents' to indicate the status of ++ the file descriptor. */ ++#define POLLERR 0x008 /* Error condition. */ ++#define POLLHUP 0x010 /* Hung up. */ ++#define POLLNVAL 0x020 /* Invalid polling request. */ +-- +2.11.0 + diff --git a/buildroot/package/uclibc/0005-statfs.h-sync-generic-header-with-glibc.patch b/buildroot/package/uclibc/0005-statfs.h-sync-generic-header-with-glibc.patch new file mode 100644 index 000000000..b8753ed87 --- /dev/null +++ b/buildroot/package/uclibc/0005-statfs.h-sync-generic-header-with-glibc.patch @@ -0,0 +1,169 @@ +From 8a73a967e18c55199785bae0f22dc94d9b2f8985 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Tue, 27 Nov 2018 15:41:37 +0100 +Subject: [PATCH] statfs.h: sync generic header with glibc + +Fix issues with aarch64 and df with mismatching header between kernel +and libc. + +Signed-off-by: Waldemar Brodkorb +--- + .../linux/common-generic/bits/statfs.h | 84 +++++++++---------- + libc/sysdeps/linux/common/fstatfs.c | 9 -- + libc/sysdeps/linux/common/statfs.c | 10 --- + 3 files changed, 40 insertions(+), 63 deletions(-) + +diff --git a/libc/sysdeps/linux/common-generic/bits/statfs.h b/libc/sysdeps/linux/common-generic/bits/statfs.h +index a2767b49a..23519a57e 100644 +--- a/libc/sysdeps/linux/common-generic/bits/statfs.h ++++ b/libc/sysdeps/linux/common-generic/bits/statfs.h +@@ -11,65 +11,61 @@ + #include + #include + #include ++#include + ++/* 64-bit libc uses the kernel's 'struct statfs', accessed via the ++ statfs() syscall; 32-bit libc uses the kernel's 'struct statfs64' ++ and accesses it via the statfs64() syscall. All the various ++ APIs offered by libc use the kernel shape for their struct statfs ++ structure; the only difference is that 32-bit programs not ++ using __USE_FILE_OFFSET64 only see the low 32 bits of some ++ of the fields (the __fsblkcnt_t and __fsfilcnt_t fields). */ ++ ++#if defined __USE_FILE_OFFSET64 ++# define __field64(type, type64, name) type64 name ++#elif __WORDSIZE == 64 ++# define __field64(type, type64, name) type name ++#elif __BYTE_ORDER == __LITTLE_ENDIAN ++# define __field64(type, type64, name) \ ++ type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad ++#else ++# define __field64(type, type64, name) \ ++ int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name ++#endif + + struct statfs + { +- __U32_TYPE f_type; +- __U32_TYPE f_bsize; +-#ifndef __USE_FILE_OFFSET64 +-# if __BYTE_ORDER == __LITTLE_ENDIAN +- __U32_TYPE f_blocks; +- __U32_TYPE __pad1; +- __U32_TYPE f_bfree; +- __U32_TYPE __pad2; +- __U32_TYPE f_bavail; +- __U32_TYPE __pad3; +- __U32_TYPE f_files; +- __U32_TYPE __pad4; +- __U32_TYPE f_ffree; +- __U32_TYPE __pad5; +-# else +- __U32_TYPE __pad1; +- __U32_TYPE f_blocks; +- __U32_TYPE __pad2; +- __U32_TYPE f_bfree; +- __U32_TYPE __pad3; +- __U32_TYPE f_bavail; +- __U32_TYPE __pad4; +- __U32_TYPE f_files; +- __U32_TYPE __pad5; +- __U32_TYPE f_ffree; +-# endif /* __LITTLE_ENDIAN */ +-#else +- __U64_TYPE f_blocks; +- __U64_TYPE f_bfree; +- __U64_TYPE f_bavail; +- __U64_TYPE f_files; +- __U64_TYPE f_ffree; +-#endif /* __USE_FILE_OFFSET64 */ ++ __SWORD_TYPE f_type; ++ __SWORD_TYPE f_bsize; ++ __field64(__fsblkcnt_t, __fsblkcnt64_t, f_blocks); ++ __field64(__fsblkcnt_t, __fsblkcnt64_t, f_bfree); ++ __field64(__fsblkcnt_t, __fsblkcnt64_t, f_bavail); ++ __field64(__fsfilcnt_t, __fsfilcnt64_t, f_files); ++ __field64(__fsfilcnt_t, __fsfilcnt64_t, f_ffree); + __fsid_t f_fsid; +- __U32_TYPE f_namelen; +- __U32_TYPE f_frsize; +- __U32_TYPE f_flags; +- __U32_TYPE f_spare[4]; +- } __ARCH_64BIT_ALIGNMENT__; ++ __SWORD_TYPE f_namelen; ++ __SWORD_TYPE f_frsize; ++ __SWORD_TYPE f_flags; ++ __SWORD_TYPE f_spare[4]; ++ }; ++ ++#undef __field64 + + #ifdef __USE_LARGEFILE64 + struct statfs64 + { +- __U32_TYPE f_type; +- __U32_TYPE f_bsize; ++ __SWORD_TYPE f_type; ++ __SWORD_TYPE f_bsize; + __U64_TYPE f_blocks; + __U64_TYPE f_bfree; + __U64_TYPE f_bavail; + __U64_TYPE f_files; + __U64_TYPE f_ffree; + __fsid_t f_fsid; +- __U32_TYPE f_namelen; +- __U32_TYPE f_frsize; +- __U32_TYPE f_flags; +- __U32_TYPE f_spare[4]; ++ __SWORD_TYPE f_namelen; ++ __SWORD_TYPE f_frsize; ++ __SWORD_TYPE f_flags; ++ __SWORD_TYPE f_spare[4]; + }; + #endif + +diff --git a/libc/sysdeps/linux/common/fstatfs.c b/libc/sysdeps/linux/common/fstatfs.c +index fcb0820eb..0b2709ce3 100644 +--- a/libc/sysdeps/linux/common/fstatfs.c ++++ b/libc/sysdeps/linux/common/fstatfs.c +@@ -30,15 +30,6 @@ _syscall2(int, __libc_fstatfs, int, fd, struct statfs *, buf) + int __libc_fstatfs (int __fildes, struct statfs *__buf) + { + int err = INLINE_SYSCALL(fstatfs64, 3, __fildes, sizeof(*__buf), __buf); +- +- if (err == 0) { +- /* Did we overflow? */ +- if (__buf->__pad1 || __buf->__pad2 || __buf->__pad3 || +- __buf->__pad4 || __buf->__pad5) { +- __set_errno(EOVERFLOW); +- return -1; +- } +- } + return err; + }; + /* Redefined fstatfs because we need it for backwards compatibility */ +diff --git a/libc/sysdeps/linux/common/statfs.c b/libc/sysdeps/linux/common/statfs.c +index ab9ec0e56..2990ff3e2 100644 +--- a/libc/sysdeps/linux/common/statfs.c ++++ b/libc/sysdeps/linux/common/statfs.c +@@ -18,16 +18,6 @@ extern __typeof(statfs) __libc_statfs attribute_hidden; + int __libc_statfs(const char *path, struct statfs *buf) + { + int err = INLINE_SYSCALL(statfs64, 3, path, sizeof(*buf), buf); +- +- if (err == 0) { +- /* Did we overflow? */ +- if (buf->__pad1 || buf->__pad2 || buf->__pad3 || +- buf->__pad4 || buf->__pad5) { +- __set_errno(EOVERFLOW); +- return -1; +- } +- } +- + return err; + } + # if defined __UCLIBC_LINUX_SPECIFIC__ || defined __UCLIBC_HAS_THREADS_NATIVE__ +-- +2.19.1 + diff --git a/buildroot/package/vte/Config.in b/buildroot/package/vte/Config.in index 7410624c0..fa29de8c7 100644 --- a/buildroot/package/vte/Config.in +++ b/buildroot/package/vte/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_VTE depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND || \ BR2_PACKAGE_HAS_LIBGL @@ -20,11 +21,12 @@ config BR2_PACKAGE_VTE http://github.com/GNOME/vte -comment "vte needs a toolchain w/ wchar, threads, C++" +comment "vte needs a toolchain w/ wchar, threads, C++, gcc >= 4.8" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_HAS_THREADS + !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 comment "vte needs an OpenGL or an OpenGL-EGL/wayland backend" depends on BR2_USE_MMU diff --git a/buildroot/package/webkitgtk/webkitgtk.hash b/buildroot/package/webkitgtk/webkitgtk.hash index 15b1b5668..4cdefa75b 100644 --- a/buildroot/package/webkitgtk/webkitgtk.hash +++ b/buildroot/package/webkitgtk/webkitgtk.hash @@ -1,7 +1,7 @@ -# From https://webkitgtk.org/releases/webkitgtk-2.22.4.tar.xz.sums -md5 9f08d09cfc21c761a431a545549f301a webkitgtk-2.22.4.tar.xz -sha1 adf857c8a8b8fb79ba9b01bbe4b454956e633952 webkitgtk-2.22.4.tar.xz -sha256 fab5be2883802352ae0e735dd1eff4bc18abaff7ac78689cec72eb2f611943b8 webkitgtk-2.22.4.tar.xz +# From https://webkitgtk.org/releases/webkitgtk-2.22.5.tar.xz.sums +md5 96a731522b800f38e70f85c22f8de477 webkitgtk-2.22.5.tar.xz +sha1 809b067a1672a81a4ce31363a0872c668cc72953 webkitgtk-2.22.5.tar.xz +sha256 99d3863f418a7c3a3e37e5062950dbf2d91fb106ec1633459b0ef6f2d5f6cb13 webkitgtk-2.22.5.tar.xz # Hashes for license files: sha256 0b5d3a7cc325942567373b0ecd757d07c132e0ebd7c97bfc63f7e1a76094edb4 Source/WebCore/LICENSE-APPLE diff --git a/buildroot/package/webkitgtk/webkitgtk.mk b/buildroot/package/webkitgtk/webkitgtk.mk index 4cfddd1eb..f86c073d6 100644 --- a/buildroot/package/webkitgtk/webkitgtk.mk +++ b/buildroot/package/webkitgtk/webkitgtk.mk @@ -4,7 +4,7 @@ # ################################################################################ -WEBKITGTK_VERSION = 2.22.4 +WEBKITGTK_VERSION = 2.22.5 WEBKITGTK_SITE = http://www.webkitgtk.org/releases WEBKITGTK_SOURCE = webkitgtk-$(WEBKITGTK_VERSION).tar.xz WEBKITGTK_INSTALL_STAGING = YES diff --git a/buildroot/package/wine/wine.mk b/buildroot/package/wine/wine.mk index fa672f0c7..06436cc17 100644 --- a/buildroot/package/wine/wine.mk +++ b/buildroot/package/wine/wine.mk @@ -10,6 +10,7 @@ WINE_SITE = https://dl.winehq.org/wine/source/3.0 WINE_LICENSE = LGPL-2.1+ WINE_LICENSE_FILES = COPYING.LIB LICENSE WINE_DEPENDENCIES = host-bison host-flex host-wine +HOST_WINE_DEPENDENCIES = host-bison host-flex # Wine needs its own directory structure and tools for cross compiling WINE_CONF_OPTS = \ diff --git a/buildroot/package/xen/xen.hash b/buildroot/package/xen/xen.hash index 376013eb7..7a5241095 100644 --- a/buildroot/package/xen/xen.hash +++ b/buildroot/package/xen/xen.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 826e3a9f6d0eac94a825d272cc2c1294e22640ae75af906eb13920f9ad667643 xen-4.11.0.tar.gz +sha256 be88cb2443761990efc1070d9718016561fe19066af232f9bfae572922897e59 xen-4.11.1.tar.gz sha256 dba0d79260259c013c52e5d4daeaea564a2fbb9ff7fc6778c377a401ec3898de COPYING diff --git a/buildroot/package/xen/xen.mk b/buildroot/package/xen/xen.mk index 8d7b92ead..d6e6c91cf 100644 --- a/buildroot/package/xen/xen.mk +++ b/buildroot/package/xen/xen.mk @@ -4,7 +4,7 @@ # ################################################################################ -XEN_VERSION = 4.11.0 +XEN_VERSION = 4.11.1 XEN_SITE = https://downloads.xenproject.org/release/xen/$(XEN_VERSION) XEN_LICENSE = GPL-2.0 XEN_LICENSE_FILES = COPYING diff --git a/buildroot/support/download/dl-wrapper b/buildroot/support/download/dl-wrapper index bb70c9825..3315bd410 100755 --- a/buildroot/support/download/dl-wrapper +++ b/buildroot/support/download/dl-wrapper @@ -93,7 +93,7 @@ main() { esac uri=${uri#*+} - urlencode=${backend#*|} + urlencode=${backend_urlencode#*|} # urlencode must be "urlencode" [ "${urlencode}" != "urlencode" ] && urlencode="" diff --git a/buildroot/toolchain/Config.in b/buildroot/toolchain/Config.in index 196612b8b..bf8ed5bf5 100644 --- a/buildroot/toolchain/Config.in +++ b/buildroot/toolchain/Config.in @@ -366,10 +366,15 @@ config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 bool select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17 +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 + # This order guarantees that the highest version is set, as kconfig # stops affecting a value on the first matching default. config BR2_TOOLCHAIN_HEADERS_AT_LEAST string + default "4.19" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 default "4.18" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 default "4.17" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_17 default "4.16" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_16 diff --git a/buildroot/toolchain/toolchain-external/toolchain-external-custom/Config.in.options b/buildroot/toolchain/toolchain-external/toolchain-external-custom/Config.in.options index 8665d2e2a..288fc3f3e 100644 --- a/buildroot/toolchain/toolchain-external/toolchain-external-custom/Config.in.options +++ b/buildroot/toolchain/toolchain-external/toolchain-external-custom/Config.in.options @@ -123,6 +123,10 @@ choice m = ( LINUX_VERSION_CODE >> 8 ) & 0xFF p = ( LINUX_VERSION_CODE >> 0 ) & 0xFF +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_19 + bool "4.19.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 + config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_18 bool "4.18.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 diff --git a/scripts/build-all.sh b/scripts/build-all.sh deleted file mode 100755 index 2e345c98e..000000000 --- a/scripts/build-all.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -set -e - -mkdir -p /build/release - -all_platforms=(ova rpi rpi0_w rpi2 rpi3 rpi3_64 tinker odroid_c2) -for platform in "${all_platforms[@]}"; do - make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external \ - "${platform}_defconfig" - make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external - cp -f /build/buildroot/output/images/hassos_* /build/release/ - - make -C /build/buildroot BR2_EXTERNAL=/build/buildroot-external \ - clean -done