diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1d71257a20..22befa0427 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -161,6 +161,7 @@ beagleboardx15_defconfig: { extends: .defconfig } beaglebone_defconfig: { extends: .defconfig } beaglebone_qt5_defconfig: { extends: .defconfig } beagleboneai_defconfig: { extends: .defconfig } +beelink_gs1_defconfig: { extends: .defconfig } chromebook_snow_defconfig: { extends: .defconfig } ci20_defconfig: { extends: .defconfig } csky_gx6605s_defconfig: { extends: .defconfig } @@ -410,6 +411,7 @@ tests.package.test_luasocket.TestLuajitLuaSocket: { extends: .runtime_test } tests.package.test_luasyslog.TestLuaLuasyslog: { extends: .runtime_test } tests.package.test_luasyslog.TestLuajitLuasyslog: { extends: .runtime_test } tests.package.test_luvi.TestLuvi: { extends: .runtime_test } +tests.package.test_lxc.TestLxc: { extends: .runtime_test } tests.package.test_lzlib.TestLuaLzlib: { extends: .runtime_test } tests.package.test_openjdk.TestOpenJdk: { extends: .runtime_test } tests.package.test_perl.TestPerl: { extends: .runtime_test } diff --git a/Config.in b/Config.in index 010b0774e3..5a4239bc9a 100644 --- a/Config.in +++ b/Config.in @@ -690,6 +690,24 @@ config BR2_REPRODUCIBLE This is labeled as an experimental feature, as not all packages behave properly to ensure reproducibility. +config BR2_PER_PACKAGE_DIRECTORIES + bool "Use per-package directories (experimental)" + help + This option will change the build process of Buildroot + package to use per-package target and host directories. + + This is useful for two related purposes: + + - Cleanly isolate the build of each package, so that a + given package only "sees" the dependencies it has + explicitly expressed, and not other packages that may + have by chance been built before. + + - Enable top-level parallel build. + + This is labeled as an experimental feature, as not all + packages behave properly with per-package directories. + endmenu comment "Security Hardening Options" diff --git a/Config.in.legacy b/Config.in.legacy index aa66a564a9..c0274b65f4 100644 --- a/Config.in.legacy +++ b/Config.in.legacy @@ -144,6 +144,14 @@ endif ############################################################################### +comment "Legacy options removed in 2020.02" + +config BR2_PACKAGE_RPI_USERLAND_START_VCFILED + bool "rpi-userland start vcfiled was removed" + select BR2_LEGACY + help + The vcfiled support was removed upstream. + comment "Legacy options removed in 2019.11" config BR2_PACKAGE_OPENVMTOOLS_PROCPS diff --git a/DEVELOPERS b/DEVELOPERS index 4adaac0c3d..aea2b67171 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -73,6 +73,7 @@ F: package/selinux-python/ F: package/semodule-utils/ F: package/setools/ F: package/sngrep/ +F: package/spidermonkey/ F: package/systemd/ N: Adam Heinrich @@ -256,6 +257,8 @@ F: package/lua-ev/ F: package/orbit/ N: Bartosz Bilas +F: package/python-esptool/ +F: package/python-pyaes/ F: package/qt5/qt5scxml/ F: package/qt5/qt5webview/ @@ -274,6 +277,7 @@ N: Baruch Siach F: board/solidrun/clearfog_gt_8k/ F: configs/solidrun_clearfog_gt_8k_defconfig F: package/18xx-ti-utils/ +F: package/cpuburn-arm/ F: package/daemon/ F: package/dropbear/ F: package/ebtables/ @@ -593,6 +597,10 @@ F: package/libsemanage/ F: package/libsepol/ F: package/policycoreutils/ +N: Clément Péron +F: board/beelink/gs1/ +F: configs/beelink_gs1_defconfig + N: Corentin Guillevic F: package/libloki/ @@ -1003,6 +1011,7 @@ F: package/f2fs-tools/ F: package/pigpio/ F: package/python-aioblescan/ F: package/python-bluezero/ +F: package/python-crontab/ F: package/python-falcon/ F: package/python-ifaddr/ F: package/python-hiredis/ @@ -1173,6 +1182,9 @@ F: package/quota/ N: Jason Pruitt F: package/librtlsdr/ +N: Jens Kleintje +F: package/gcnano-binaries/ + N: Jens Rosenboom F: package/sl/ @@ -1238,6 +1250,7 @@ F: package/dhcpcd/ N: John Faith F: package/python-inflection/ +F: package/sdbusplus/ N: Jonathan Ben Avraham F: arch/Config.in.xtensa @@ -1394,6 +1407,9 @@ F: package/ti-sgx-um/ N: Louis Aussedat F: board/friendlyarm/nanopi-neo-plus2/ F: configs/friendlyarm_nanopi_neo_plus2_defconfig +F: package/python-dnspython/ +F: package/python-future/ +F: package/python-huepy/ F: package/python-tqdm/ N: Louis-Paul Cordier @@ -1585,6 +1601,7 @@ F: package/policycoreutils/ F: package/proftpd/ F: package/protobuf-c/ F: package/protobuf/ +F: package/python-bunch/ F: package/python-colorama/ F: package/python-flask-cors/ F: package/python-iptables/ @@ -1795,15 +1812,23 @@ F: package/checksec/ N: Parnell Springmeyer F: package/scrypt/ +N: Pascal de Bruijn +F: package/libargon2/ + N: Pascal Huerst F: package/google-breakpad/ N: Patrick Gerber F: package/yavta/ +N: Patrick Havelange +F: support/testing/tests/package/test_lxc.py +F: support/testing/tests/package/test_lxc/ + N: Paul Cercueil F: package/libiio/ F: package/lightning/ +F: package/umtprd/ N: Pedro Aguilar F: package/libunistring/ @@ -1937,6 +1962,7 @@ N: Pierre-Jean Texier F: package/fping/ F: package/genimage/ F: package/haveged/ +F: package/ipset/ F: package/libarchive/ F: package/libevent/ F: package/libubootenv/ @@ -1944,6 +1970,7 @@ F: package/libxml2/ F: package/mongoose/ F: package/mxml/ F: package/python-periphery/ +F: package/raspi-gpio/ F: package/sbc/ F: package/stunnel/ F: package/tree/ diff --git a/Makefile b/Makefile index 7e8138ba08..a58ca7821d 100644 --- a/Makefile +++ b/Makefile @@ -204,6 +204,7 @@ BR_GRAPH_OUT := $(or $(BR2_GRAPH_OUT),pdf) BUILD_DIR := $(BASE_DIR)/build BINARIES_DIR := $(BASE_DIR)/images BASE_TARGET_DIR := $(BASE_DIR)/target +PER_PACKAGE_DIR := $(BASE_DIR)/per-package # initial definition so that 'make clean' works for most users, even without # .config. HOST_DIR will be overwritten later when .config is included. HOST_DIR := $(BASE_DIR)/host @@ -226,21 +227,12 @@ ifeq ($(filter $(noconfig_targets),$(MAKECMDGOALS)),) -include $(BR2_CONFIG) endif -# Parallel execution of this Makefile is disabled because it changes -# the packages building order, that can be a problem for two reasons: -# - If a package has an unspecified optional dependency and that -# dependency is present when the package is built, it is used, -# otherwise it isn't (but compilation happily proceeds) so the end -# result will differ if the order is swapped due to parallel -# building. -# - Also changing the building order can be a problem if two packages -# manipulate the same file in the target directory. -# -# Taking into account the above considerations, if you still want to execute -# this top-level Makefile in parallel comment the ".NOTPARALLEL" line and -# use the -j option when building, e.g: -# make -j$((`getconf _NPROCESSORS_ONLN`+1)) +ifeq ($(BR2_PER_PACKAGE_DIRECTORIES),) +# Disable top-level parallel build if per-package directories is not +# used. Indeed, per-package directories is necessary to guarantee +# determinism and reproducibility with top-level parallel build. .NOTPARALLEL: +endif # timezone and locale may affect build output ifeq ($(BR2_REPRODUCIBLE),y) @@ -452,12 +444,13 @@ XZCAT := $(call qstrip,$(BR2_XZCAT)) LZCAT := $(call qstrip,$(BR2_LZCAT)) TAR_OPTIONS = $(call qstrip,$(BR2_TAR_OPTIONS)) -xf -# packages compiled for the host go here +ifeq ($(BR2_PER_PACKAGE_DIRECTORIES),y) +HOST_DIR = $(if $(PKG),$(PER_PACKAGE_DIR)/$($(PKG)_NAME)/host,$(call qstrip,$(BR2_HOST_DIR))) +TARGET_DIR = $(if $(ROOTFS),$(ROOTFS_$(ROOTFS)_TARGET_DIR),$(if $(PKG),$(PER_PACKAGE_DIR)/$($(PKG)_NAME)/target,$(BASE_TARGET_DIR))) +else HOST_DIR := $(call qstrip,$(BR2_HOST_DIR)) - -# The target directory is common to all packages, -# but there is one that is specific to each filesystem. TARGET_DIR = $(if $(ROOTFS),$(ROOTFS_$(ROOTFS)_TARGET_DIR),$(BASE_TARGET_DIR)) +endif ifneq ($(HOST_DIR),$(BASE_DIR)/host) HOST_DIR_SYMLINK = $(BASE_DIR)/host @@ -593,8 +586,8 @@ world: target-post-image .PHONY: prepare-sdk prepare-sdk: world @$(call MESSAGE,"Rendering the SDK relocatable") - $(TOPDIR)/support/scripts/fix-rpath host - $(TOPDIR)/support/scripts/fix-rpath staging + PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) $(TOPDIR)/support/scripts/fix-rpath host + PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) $(TOPDIR)/support/scripts/fix-rpath staging $(INSTALL) -m 755 $(TOPDIR)/support/misc/relocate-sdk.sh $(HOST_DIR)/relocate-sdk.sh mkdir -p $(HOST_DIR)/share/buildroot echo $(HOST_DIR) > $(HOST_DIR)/share/buildroot/sdk-location @@ -727,15 +720,19 @@ $(TARGETS_ROOTFS): target-finalize # Avoid the rootfs name leaking down the dependency chain target-finalize: ROOTFS= -host-finalize: $(HOST_DIR_SYMLINK) +.PHONY: host-finalize +host-finalize: $(PACKAGES) $(HOST_DIR) $(HOST_DIR_SYMLINK) + @$(call MESSAGE,"Finalizing host directory") + $(call per-package-rsync,$(sort $(PACKAGES)),host,$(HOST_DIR)) .PHONY: staging-finalize staging-finalize: @ln -snf $(STAGING_DIR) $(BASE_DIR)/staging .PHONY: target-finalize -target-finalize: $(PACKAGES) host-finalize +target-finalize: $(PACKAGES) $(TARGET_DIR) host-finalize @$(call MESSAGE,"Finalizing target directory") + $(call per-package-rsync,$(sort $(PACKAGES)),target,$(TARGET_DIR)) # Check files that are touched by more than one package $(foreach hook,$(TARGET_FINALIZE_HOOKS),$($(hook))$(sep)) rm -rf $(TARGET_DIR)/usr/include $(TARGET_DIR)/usr/share/aclocal \ @@ -776,7 +773,7 @@ endif ln -sf ../usr/lib/os-release $(TARGET_DIR)/etc @$(call MESSAGE,"Sanitizing RPATH in target tree") - $(TOPDIR)/support/scripts/fix-rpath target + PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) $(TOPDIR)/support/scripts/fix-rpath target # For a merged /usr, ensure that /lib, /bin and /sbin and their /usr # counterparts are appropriately setup as symlinks ones to the others. @@ -1014,7 +1011,7 @@ savedefconfig: $(BUILD_DIR)/buildroot-config/conf outputmakefile # staging and target directories do NOT list these as # dependencies anywhere else -$(BUILD_DIR) $(BASE_TARGET_DIR) $(HOST_DIR) $(BINARIES_DIR) $(LEGAL_INFO_DIR) $(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST): +$(BUILD_DIR) $(BASE_TARGET_DIR) $(HOST_DIR) $(BINARIES_DIR) $(LEGAL_INFO_DIR) $(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST) $(PER_PACKAGE_DIR): @mkdir -p $@ # outputmakefile generates a Makefile in the output directory, if using a @@ -1046,7 +1043,7 @@ printvars: clean: rm -rf $(BASE_TARGET_DIR) $(BINARIES_DIR) $(HOST_DIR) $(HOST_DIR_SYMLINK) \ $(BUILD_DIR) $(BASE_DIR)/staging \ - $(LEGAL_INFO_DIR) $(GRAPHS_DIR) + $(LEGAL_INFO_DIR) $(GRAPHS_DIR) $(PER_PACKAGE_DIR) .PHONY: distclean distclean: clean diff --git a/arch/Config.in.arc b/arch/Config.in.arc index c65bb01f1f..fdfafda31c 100644 --- a/arch/Config.in.arc +++ b/arch/Config.in.arc @@ -15,11 +15,17 @@ config BR2_archs38 bool "ARC HS38" help Generic ARC HS capable of running Linux, i.e. with MMU, - caches and multiplier. Also it corresponds to the default - configuration in older GNU toolchain versions. + caches and 32-bit multiplier. Also it corresponds to the + default configuration in older GNU toolchain versions. - If you're not sure which version of ARC HS core you build for - keep this one. +config BR2_archs38_64mpy + bool "ARC HS38 with 64-bit mpy" + help + Fully featured ARC HS capable of running Linux, i.e. with + MMU, caches and 64-bit multiplier. + + If you're not sure which version of ARC HS core you build + for use this one. config BR2_archs38_full bool "ARC HS38 with Quad MAC & FPU" @@ -43,7 +49,7 @@ endchoice # Choice of atomic instructions presence config BR2_ARC_ATOMIC_EXT bool "Atomic extension (LLOCK/SCOND instructions)" - default y if BR2_arc770d || BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 + default y if BR2_arc770d || BR2_archs38 || BR2_archs38_64mpy || BR2_archs38_full || BR2_archs4x_rel31 config BR2_ARCH default "arc" if BR2_arcle @@ -61,12 +67,13 @@ config BR2_GCC_TARGET_CPU default "arc700" if BR2_arc750d default "arc700" if BR2_arc770d default "archs" if BR2_archs38 + default "hs38" if BR2_archs38_64mpy default "hs38_linux" if BR2_archs38_full default "hs4x_rel31" if BR2_archs4x_rel31 config BR2_READELF_ARCH_NAME default "ARCompact" if BR2_arc750d || BR2_arc770d - default "ARCv2" if BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 + default "ARCv2" if BR2_archs38 || BR2_archs38_64mpy || BR2_archs38_full || BR2_archs4x_rel31 choice prompt "MMU Page Size" @@ -86,7 +93,7 @@ choice config BR2_ARC_PAGE_SIZE_4K bool "4KB" - depends on BR2_arc770d || BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 + depends on BR2_arc770d || BR2_archs38 || BR2_archs38_64mpy || BR2_archs38_full || BR2_archs4x_rel31 config BR2_ARC_PAGE_SIZE_8K bool "8KB" @@ -96,7 +103,7 @@ config BR2_ARC_PAGE_SIZE_8K config BR2_ARC_PAGE_SIZE_16K bool "16KB" - depends on BR2_arc770d || BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 + depends on BR2_arc770d || BR2_archs38 || BR2_archs38_64mpy || BR2_archs38_full || BR2_archs4x_rel31 endchoice diff --git a/board/beelink/gs1/extlinux.conf b/board/beelink/gs1/extlinux.conf new file mode 100644 index 0000000000..046681f71d --- /dev/null +++ b/board/beelink/gs1/extlinux.conf @@ -0,0 +1,4 @@ +label linux + kernel /Image + devicetree /sun50i-h6-beelink-gs1.dtb + append console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait diff --git a/board/beelink/gs1/genimage.cfg b/board/beelink/gs1/genimage.cfg new file mode 100644 index 0000000000..88bbd26594 --- /dev/null +++ b/board/beelink/gs1/genimage.cfg @@ -0,0 +1,33 @@ +image boot.vfat { + vfat { + files = { + "Image", + "sun50i-h6-beelink-gs1.dtb", + "extlinux" + } + } + size = 64M +} + +image sdcard.img { + hdimage { + } + + partition u-boot { + in-partition-table = "no" + image = "u-boot-sunxi-with-spl.bin" + offset = 8192 + size = 1040384 # 1MB - 8192 + } + + partition boot { + partition-type = 0xC + bootable = "true" + image = "boot.vfat" + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext4" + } +} diff --git a/board/beelink/gs1/patches/arm-trusted-firmware/0001-plat-allwinner-common-use-r_wdog-instead-of-wdog.patch b/board/beelink/gs1/patches/arm-trusted-firmware/0001-plat-allwinner-common-use-r_wdog-instead-of-wdog.patch new file mode 100644 index 0000000000..9443fdd568 --- /dev/null +++ b/board/beelink/gs1/patches/arm-trusted-firmware/0001-plat-allwinner-common-use-r_wdog-instead-of-wdog.patch @@ -0,0 +1,39 @@ +From 523ab5be1a84e9aa15fb62c3a15a6338b01d3961 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Cl=C3=A9ment=20P=C3=A9ron?= +Date: Tue, 9 Apr 2019 00:15:06 +0200 +Subject: [PATCH] plat: allwinner: common: use r_wdog instead of wdog +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Some Allwinner H6 has a broken watchdog that doesn't +make the soc reboot. + +Use the R_WATCHDOG instead. + +Signed-off-by: Clément Péron +Change-Id: Ie95cc30a80ed517b60b30d6bc2e655a1b53f18ba +--- + plat/allwinner/common/sunxi_pm.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/plat/allwinner/common/sunxi_pm.c b/plat/allwinner/common/sunxi_pm.c +index 1d2dc938..13e13532 100644 +--- a/plat/allwinner/common/sunxi_pm.c ++++ b/plat/allwinner/common/sunxi_pm.c +@@ -20,9 +20,9 @@ + #include + #include + +-#define SUNXI_WDOG0_CTRL_REG (SUNXI_WDOG_BASE + 0x0010) +-#define SUNXI_WDOG0_CFG_REG (SUNXI_WDOG_BASE + 0x0014) +-#define SUNXI_WDOG0_MODE_REG (SUNXI_WDOG_BASE + 0x0018) ++#define SUNXI_WDOG0_CTRL_REG (SUNXI_R_WDOG_BASE + 0x0010) ++#define SUNXI_WDOG0_CFG_REG (SUNXI_R_WDOG_BASE + 0x0014) ++#define SUNXI_WDOG0_MODE_REG (SUNXI_R_WDOG_BASE + 0x0018) + + #define mpidr_is_valid(mpidr) ( \ + MPIDR_AFFLVL3_VAL(mpidr) == 0 && \ +-- +2.20.1 + diff --git a/board/beelink/gs1/patches/uboot/0001-arm-dts-sync-dts-for-Allwinner-H6.patch b/board/beelink/gs1/patches/uboot/0001-arm-dts-sync-dts-for-Allwinner-H6.patch new file mode 100644 index 0000000000..8e695f6416 --- /dev/null +++ b/board/beelink/gs1/patches/uboot/0001-arm-dts-sync-dts-for-Allwinner-H6.patch @@ -0,0 +1,279 @@ +From 99cade8743158889b3e8db93c003b3318ebd4bda Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Cl=C3=A9ment=20P=C3=A9ron?= +Date: Sun, 11 Aug 2019 22:38:57 +0200 +Subject: [PATCH] arm: dts: sync dts for Allwinner H6 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Sync Kernel DTS for Allwinner H6 boards. + +Drop /omit-if-no-ref/ keyword as it's not supported by U-boot. + +commit Linux 5.3-rc4 + +Signed-off-by: Clément Péron +--- + arch/arm/dts/sun50i-h6-beelink-gs1.dts | 76 ++++++++++++++++++++++++++ + arch/arm/dts/sun50i-h6-pine-h64.dts | 12 ++++ + arch/arm/dts/sun50i-h6.dtsi | 46 +++++++++++++++- + 3 files changed, 131 insertions(+), 3 deletions(-) + +diff --git a/arch/arm/dts/sun50i-h6-beelink-gs1.dts b/arch/arm/dts/sun50i-h6-beelink-gs1.dts +index 54b0882bed..0dc33c90dd 100644 +--- a/arch/arm/dts/sun50i-h6-beelink-gs1.dts ++++ b/arch/arm/dts/sun50i-h6-beelink-gs1.dts +@@ -14,6 +14,7 @@ + compatible = "azw,beelink-gs1", "allwinner,sun50i-h6"; + + aliases { ++ ethernet0 = &emac; + serial0 = &uart0; + }; + +@@ -21,6 +22,17 @@ + stdout-path = "serial0:115200n8"; + }; + ++ connector { ++ compatible = "hdmi-connector"; ++ type = "a"; ++ ++ port { ++ hdmi_con_in: endpoint { ++ remote-endpoint = <&hdmi_out_con>; ++ }; ++ }; ++ }; ++ + leds { + compatible = "gpio-leds"; + +@@ -41,6 +53,40 @@ + }; + }; + ++&de { ++ status = "okay"; ++}; ++ ++&ehci0 { ++ status = "okay"; ++}; ++ ++&emac { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&ext_rgmii_pins>; ++ phy-mode = "rgmii"; ++ phy-handle = <&ext_rgmii_phy>; ++ phy-supply = <®_aldo2>; ++ status = "okay"; ++}; ++ ++&hdmi { ++ status = "okay"; ++}; ++ ++&hdmi_out { ++ hdmi_out_con: endpoint { ++ remote-endpoint = <&hdmi_con_in>; ++ }; ++}; ++ ++&mdio { ++ ext_rgmii_phy: ethernet-phy@1 { ++ compatible = "ethernet-phy-ieee802.3-c22"; ++ reg = <1>; ++ }; ++}; ++ + &mmc0 { + vmmc-supply = <®_cldo1>; + cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; +@@ -57,6 +103,15 @@ + status = "okay"; + }; + ++&ohci0 { ++ status = "okay"; ++}; ++ ++&pio { ++ vcc-pd-supply = <®_cldo1>; ++ vcc-pg-supply = <®_aldo1>; ++}; ++ + &r_i2c { + status = "okay"; + +@@ -177,8 +232,29 @@ + }; + }; + ++&r_pio { ++ /* ++ * PL0 and PL1 are used for PMIC I2C ++ * don't enable the pl-supply else ++ * it will fail at boot ++ * ++ * vcc-pl-supply = <®_aldo1>; ++ */ ++ vcc-pm-supply = <®_aldo1>; ++}; ++ + &uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_ph_pins>; + status = "okay"; + }; ++ ++&usb2otg { ++ dr_mode = "host"; ++ status = "okay"; ++}; ++ ++&usb2phy { ++ usb0_vbus-supply = <®_vcc5v>; ++ status = "okay"; ++}; +diff --git a/arch/arm/dts/sun50i-h6-pine-h64.dts b/arch/arm/dts/sun50i-h6-pine-h64.dts +index 4802902e12..1898345183 100644 +--- a/arch/arm/dts/sun50i-h6-pine-h64.dts ++++ b/arch/arm/dts/sun50i-h6-pine-h64.dts +@@ -127,6 +127,12 @@ + status = "okay"; + }; + ++&pio { ++ vcc-pc-supply = <®_bldo2>; ++ vcc-pd-supply = <®_cldo1>; ++ vcc-pg-supply = <®_aldo1>; ++}; ++ + &r_i2c { + status = "okay"; + +@@ -243,10 +249,16 @@ + pcf8563: rtc@51 { + compatible = "nxp,pcf8563"; + reg = <0x51>; ++ interrupt-parent = <&r_intc>; ++ interrupts = <0 IRQ_TYPE_LEVEL_LOW>; + #clock-cells = <0>; + }; + }; + ++&r_pio { ++ vcc-pm-supply = <®_aldo1>; ++}; ++ + &uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_ph_pins>; +diff --git a/arch/arm/dts/sun50i-h6.dtsi b/arch/arm/dts/sun50i-h6.dtsi +index e0dc4a05c1..a117f479ae 100644 +--- a/arch/arm/dts/sun50i-h6.dtsi ++++ b/arch/arm/dts/sun50i-h6.dtsi +@@ -101,7 +101,7 @@ + #size-cells = <1>; + ranges; + +- display-engine@1000000 { ++ bus@1000000 { + compatible = "allwinner,sun50i-h6-de3", + "allwinner,sun50i-a64-de2"; + reg = <0x1000000 0x400000>; +@@ -203,11 +203,32 @@ + #reset-cells = <1>; + }; + ++ dma: dma-controller@3002000 { ++ compatible = "allwinner,sun50i-h6-dma"; ++ reg = <0x03002000 0x1000>; ++ interrupts = ; ++ clocks = <&ccu CLK_BUS_DMA>, <&ccu CLK_MBUS_DMA>; ++ clock-names = "bus", "mbus"; ++ dma-channels = <16>; ++ dma-requests = <46>; ++ resets = <&ccu RST_BUS_DMA>; ++ #dma-cells = <1>; ++ }; ++ + sid: sid@3006000 { + compatible = "allwinner,sun50i-h6-sid"; + reg = <0x03006000 0x400>; + }; + ++ watchdog: watchdog@30090a0 { ++ compatible = "allwinner,sun50i-h6-wdt", ++ "allwinner,sun6i-a31-wdt"; ++ reg = <0x030090a0 0x20>; ++ interrupts = ; ++ /* Broken on some H6 boards */ ++ status = "disabled"; ++ }; ++ + pio: pinctrl@300b000 { + compatible = "allwinner,sun50i-h6-pinctrl"; + reg = <0x0300b000 0x400>; +@@ -243,6 +264,18 @@ + bias-pull-up; + }; + ++ /* ++ * /omit-if-no-ref/ isn't supported by U-boot ++ * keep this comment to avoid bad sync with Linux ++ */ ++ mmc1_pins: mmc1-pins { ++ pins = "PG0", "PG1", "PG2", "PG3", ++ "PG4", "PG5"; ++ function = "mmc1"; ++ drive-strength = <30>; ++ bias-pull-up; ++ }; ++ + mmc2_pins: mmc2-pins { + pins = "PC1", "PC4", "PC5", "PC6", + "PC7", "PC8", "PC9", "PC10", +@@ -294,6 +327,8 @@ + resets = <&ccu RST_BUS_MMC1>; + reset-names = "ahb"; + interrupts = ; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc1_pins>; + status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; +@@ -445,7 +480,6 @@ + resets = <&ccu RST_BUS_OHCI3>, + <&ccu RST_BUS_EHCI3>; + phys = <&usb2phy 3>; +- phy-names = "usb"; + status = "disabled"; + }; + +@@ -457,7 +491,6 @@ + <&ccu CLK_USB_OHCI3>; + resets = <&ccu RST_BUS_OHCI3>; + phys = <&usb2phy 3>; +- phy-names = "usb"; + status = "disabled"; + }; + +@@ -613,6 +646,13 @@ + #reset-cells = <1>; + }; + ++ r_watchdog: watchdog@7020400 { ++ compatible = "allwinner,sun50i-h6-wdt", ++ "allwinner,sun6i-a31-wdt"; ++ reg = <0x07020400 0x20>; ++ interrupts = ; ++ }; ++ + r_intc: interrupt-controller@7021000 { + compatible = "allwinner,sun50i-h6-r-intc", + "allwinner,sun6i-a31-r-intc"; +-- +2.20.1 + diff --git a/board/beelink/gs1/post-build.sh b/board/beelink/gs1/post-build.sh new file mode 100755 index 0000000000..ec20fca7d9 --- /dev/null +++ b/board/beelink/gs1/post-build.sh @@ -0,0 +1,4 @@ +#!/bin/sh +BOARD_DIR="$(dirname $0)" + +install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux/extlinux.conf diff --git a/board/friendlyarm/nanopi-neo/genimage.cfg b/board/friendlyarm/nanopi-neo/genimage.cfg index ad43d31049..f6adc4af3e 100644 --- a/board/friendlyarm/nanopi-neo/genimage.cfg +++ b/board/friendlyarm/nanopi-neo/genimage.cfg @@ -29,6 +29,5 @@ image sdcard.img { partition rootfs { partition-type = 0x83 image = "rootfs.ext4" - size = 32M } } diff --git a/board/pc/genimage-efi.cfg b/board/pc/genimage-efi.cfg new file mode 100644 index 0000000000..ea15ae5cfb --- /dev/null +++ b/board/pc/genimage-efi.cfg @@ -0,0 +1,35 @@ +image efi-part.vfat { + vfat { + file startup.nsh { + image = "efi-part/startup.nsh" + } + file EFI { + image = "efi-part/EFI" + } + file bzImage { + image = "bzImage" + } + } + size = 16777216 +} + +image disk.img { + hdimage { + gpt = true + } + + partition boot { + image = "efi-part.vfat" + partition-type-uuid = c12a7328-f81f-11d2-ba4b-00a0c93ec93b + offset = 32768 + size = 16777216 + bootable = true + } + + partition root { + partition-type-uuid = 44479540-f297-41b2-9af7-d131d5f0458a + partition-uuid = UUID_TMP + image = "rootfs.ext2" + offset = 16809984 + } +} diff --git a/board/pc/grub-efi.cfg b/board/pc/grub-efi.cfg new file mode 100644 index 0000000000..bd44666404 --- /dev/null +++ b/board/pc/grub-efi.cfg @@ -0,0 +1,6 @@ +set default="0" +set timeout="5" + +menuentry "Buildroot" { + linux /bzImage root=PARTUUID=UUID_TMP rootwait console=tty1 +} diff --git a/board/pc/post-build.sh b/board/pc/post-build.sh index b245cc00c6..552d488160 100755 --- a/board/pc/post-build.sh +++ b/board/pc/post-build.sh @@ -4,7 +4,12 @@ set -e BOARD_DIR=$(dirname "$0") -cp -f "$BOARD_DIR/grub-bios.cfg" "$TARGET_DIR/boot/grub/grub.cfg" +# Detect boot strategy, EFI or BIOS +if [ -f "$BINARIES_DIR/efi-part/startup.nsh" ]; then + cp -f "$BOARD_DIR/grub-efi.cfg" "$BINARIES_DIR/efi-part/EFI/BOOT/grub.cfg" +else + cp -f "$BOARD_DIR/grub-bios.cfg" "$TARGET_DIR/boot/grub/grub.cfg" -# Copy grub 1st stage to binaries, required for genimage -cp -f "$HOST_DIR/lib/grub/i386-pc/boot.img" "$BINARIES_DIR" + # Copy grub 1st stage to binaries, required for genimage + cp -f "$HOST_DIR/lib/grub/i387-pc/boot.img" "$BINARIES_DIR" +fi diff --git a/board/pc/post-image-efi-gpt.sh b/board/pc/post-image-efi-gpt.sh deleted file mode 100755 index d2acd8f852..0000000000 --- a/board/pc/post-image-efi-gpt.sh +++ /dev/null @@ -1,62 +0,0 @@ -#!/bin/sh - -set -e - -cd ${BINARIES_DIR} - -# GPT partition type UUIDs -esp_type=c12a7328-f81f-11d2-ba4b-00a0c93ec93b -linux_type=44479540-f297-41b2-9af7-d131d5f0458a - -# Partition UUIDs -efi_part_uuid=$(uuidgen) -root_part_uuid=$(uuidgen) - -# Boot partition offset and size, in 512-byte sectors -efi_part_start=64 -efi_part_size=32768 - -# Rootfs partition offset and size, in 512-byte sectors -root_part_start=$(( efi_part_start + efi_part_size )) -root_part_size=$(( $(stat -c %s rootfs.ext2) / 512 )) - -first_lba=34 -last_lba=$(( root_part_start + root_part_size )) - -# Disk image size in 512-byte sectors -image_size=$(( last_lba + first_lba )) - -cat > efi-part/EFI/BOOT/grub.cfg </dev/null | sed -n 's/^Filesystem UUID: *\(.*\)/\1/p') +sed -i "s/UUID_TMP/$UUID/g" "$BINARIES_DIR/efi-part/EFI/BOOT/grub.cfg" +sed "s/UUID_TMP/$UUID/g" board/pc/genimage-efi.cfg > "$BINARIES_DIR/genimage-efi.cfg" +support/scripts/genimage.sh -c "$BINARIES_DIR/genimage-efi.cfg" diff --git a/board/raspberrypi/post-image.sh b/board/raspberrypi/post-image.sh index bf9af5dc60..bbeb0bc721 100755 --- a/board/raspberrypi/post-image.sh +++ b/board/raspberrypi/post-image.sh @@ -28,15 +28,6 @@ __EOF__ # enable 64bits support arm_64bit=1 -__EOF__ - fi - - # Enable uart console - if ! grep -qE '^enable_uart=1' "${BINARIES_DIR}/rpi-firmware/config.txt"; then - cat << __EOF__ >> "${BINARIES_DIR}/rpi-firmware/config.txt" - -# enable rpi3 ttyS0 serial console -enable_uart=1 __EOF__ fi ;; diff --git a/boot/arm-trusted-firmware/Config.in b/boot/arm-trusted-firmware/Config.in index beb95fbf06..96861c3f4d 100644 --- a/boot/arm-trusted-firmware/Config.in +++ b/boot/arm-trusted-firmware/Config.in @@ -124,6 +124,17 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33 gets built before ATF, and that the appropriate BL33 variable pointing to u-boot.bin is passed when building ATF. +if BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33 + +config BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_BL33_IMAGE + string "U-Boot BL33 image name" + default "u-boot.bin" + help + Name of the U-Boot BL33 image to include in ATF, it must + have been installed to BINARIES_DIR by the U-Boot package. + +endif + config BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES string "Additional ATF build variables" help @@ -135,4 +146,11 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG help Enable this option to build ATF with DEBUG=1. +config BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES + string "Binary boot images" + default "*.bin" + help + Names of generated image files that are installed in the + output images/ directory. + endif diff --git a/boot/arm-trusted-firmware/arm-trusted-firmware.mk b/boot/arm-trusted-firmware/arm-trusted-firmware.mk index a7814e534a..2133d39e6d 100644 --- a/boot/arm-trusted-firmware/arm-trusted-firmware.mk +++ b/boot/arm-trusted-firmware/arm-trusted-firmware.mk @@ -70,7 +70,8 @@ endif endif # BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33),y) -ARM_TRUSTED_FIRMWARE_MAKE_OPTS += BL33=$(BINARIES_DIR)/u-boot.bin +ARM_TRUSTED_FIRMWARE_UBOOT_BIN = $(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_BL33_IMAGE)) +ARM_TRUSTED_FIRMWARE_MAKE_OPTS += BL33=$(BINARIES_DIR)/$(ARM_TRUSTED_FIRMWARE_UBOOT_BIN) ARM_TRUSTED_FIRMWARE_DEPENDENCIES += uboot endif @@ -146,7 +147,9 @@ define ARM_TRUSTED_FIRMWARE_BUILD_CMDS endef define ARM_TRUSTED_FIRMWARE_INSTALL_IMAGES_CMDS - cp -dpf $(ARM_TRUSTED_FIRMWARE_IMG_DIR)/*.bin $(BINARIES_DIR)/ + $(foreach f,$(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES)), \ + cp -dpf $(ARM_TRUSTED_FIRMWARE_IMG_DIR)/$(f) $(BINARIES_DIR)/ + ) $(ARM_TRUSTED_FIRMWARE_BL31_UBOOT_INSTALL) $(ARM_TRUSTED_FIRMWARE_BL31_UBOOT_INSTALL_ELF) endef diff --git a/boot/barebox/Config.in b/boot/barebox/Config.in index 4512aa1852..b3344ce699 100644 --- a/boot/barebox/Config.in +++ b/boot/barebox/Config.in @@ -12,7 +12,7 @@ choice Select the specific Barebox version you want to use config BR2_TARGET_BAREBOX_LATEST_VERSION - bool "2019.09.0" + bool "2019.11.0" config BR2_TARGET_BAREBOX_CUSTOM_VERSION bool "Custom version" @@ -40,7 +40,7 @@ endif config BR2_TARGET_BAREBOX_VERSION string - default "2019.09.0" if BR2_TARGET_BAREBOX_LATEST_VERSION + default "2019.11.0" if BR2_TARGET_BAREBOX_LATEST_VERSION default BR2_TARGET_BAREBOX_CUSTOM_VERSION_VALUE if BR2_TARGET_BAREBOX_CUSTOM_VERSION default "custom" if BR2_TARGET_BAREBOX_CUSTOM_TARBALL default BR2_TARGET_BAREBOX_CUSTOM_GIT_VERSION if BR2_TARGET_BAREBOX_CUSTOM_GIT diff --git a/boot/barebox/barebox.hash b/boot/barebox/barebox.hash index 9bdcfb3284..1797358833 100644 --- a/boot/barebox/barebox.hash +++ b/boot/barebox/barebox.hash @@ -1,5 +1,5 @@ -# From https://www.barebox.org/download/barebox-2019.09.0.tar.bz2.md5 -md5 08fa404904cc95d8d0d34d4142351d09 barebox-2019.09.0.tar.bz2 +# From https://www.barebox.org/download/barebox-2019.11.0.tar.bz2.md5 +md5 45bf108b22de94a73dfe5c024c873486 barebox-2019.11.0.tar.bz2 # Locally calculated -sha256 beab6bdba2466bece57d23834daf4f0d530a594efc11ca0ddb69372981e6e159 barebox-2019.09.0.tar.bz2 +sha256 607165b96d98fcc114fbd07e4001e7b527739a543e7adbe019854fbd8c78777f barebox-2019.11.0.tar.bz2 diff --git a/configs/atmel_sama5d2_xplained_mmc_defconfig b/configs/atmel_sama5d2_xplained_mmc_defconfig index 1ae1dcf4be..b9a37245b5 100644 --- a/configs/atmel_sama5d2_xplained_mmc_defconfig +++ b/configs/atmel_sama5d2_xplained_mmc_defconfig @@ -8,7 +8,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/atmel/sama5d2_xplained_mmc/genimage.cfg" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.1)/linux-linux4sam_6.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.2)/linux-linux4sam_6.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d2_xplained" @@ -18,13 +18,13 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_AT91BOOTSTRAP3=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git" -BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.13" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.9.0" BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d2_xplainedsd_uboot" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git" -BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.1" +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.2" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d2_xplained_mmc" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_PACKAGE_HOST_DOSFSTOOLS=y diff --git a/configs/atmel_sama5d2_xplained_mmc_dev_defconfig b/configs/atmel_sama5d2_xplained_mmc_dev_defconfig index 2272fcd6ff..8f5ffd94fa 100644 --- a/configs/atmel_sama5d2_xplained_mmc_dev_defconfig +++ b/configs/atmel_sama5d2_xplained_mmc_dev_defconfig @@ -24,7 +24,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/atmel/sama5d2_xplained_mmc/genimage.cfg" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.1)/linux-linux4sam_6.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.2)/linux-linux4sam_6.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d2_xplained" @@ -89,13 +89,13 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M" BR2_TARGET_AT91BOOTSTRAP3=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git" -BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.13" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.9.0" BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d2_xplainedsd_uboot" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git" -BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.1" +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.2" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d2_xplained_mmc" BR2_TARGET_UBOOT_NEEDS_DTC=y diff --git a/configs/atmel_sama5d3_xplained_defconfig b/configs/atmel_sama5d3_xplained_defconfig index 31668518cc..b24cc8beed 100644 --- a/configs/atmel_sama5d3_xplained_defconfig +++ b/configs/atmel_sama5d3_xplained_defconfig @@ -5,7 +5,7 @@ BR2_ARM_INSTRUCTIONS_THUMB2=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.1)/linux-linux4sam_6.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.2)/linux-linux4sam_6.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d3_xplained" @@ -17,13 +17,13 @@ BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048 BR2_TARGET_AT91BOOTSTRAP3=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git" -BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.13" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.9.0" BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d3_xplainednf_uboot" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git" -BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.1" +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.2" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d3_xplained_nandflash" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_PACKAGE_HOST_SAM_BA=y diff --git a/configs/atmel_sama5d3_xplained_dev_defconfig b/configs/atmel_sama5d3_xplained_dev_defconfig index feac379701..a2b03036cf 100644 --- a/configs/atmel_sama5d3_xplained_dev_defconfig +++ b/configs/atmel_sama5d3_xplained_dev_defconfig @@ -20,7 +20,7 @@ BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.1)/linux-linux4sam_6.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.2)/linux-linux4sam_6.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d3_xplained" @@ -86,13 +86,13 @@ BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048 BR2_TARGET_AT91BOOTSTRAP3=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git" -BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.13" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.9.0" BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d3_xplainednf_uboot" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git" -BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.1" +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.2" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d3_xplained_nandflash" BR2_TARGET_UBOOT_NEEDS_DTC=y diff --git a/configs/atmel_sama5d3_xplained_mmc_defconfig b/configs/atmel_sama5d3_xplained_mmc_defconfig index 3bba27d23a..259888ee54 100644 --- a/configs/atmel_sama5d3_xplained_mmc_defconfig +++ b/configs/atmel_sama5d3_xplained_mmc_defconfig @@ -7,7 +7,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/atmel/sama5d3_xplained_mmc/genimage.cfg" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.1)/linux-linux4sam_6.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.2)/linux-linux4sam_6.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d3_xplained" @@ -17,13 +17,13 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_AT91BOOTSTRAP3=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git" -BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.13" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.9.0" BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d3_xplainedsd_uboot" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git" -BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.1" +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.2" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d3_xplained_mmc" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_PACKAGE_HOST_DOSFSTOOLS=y diff --git a/configs/atmel_sama5d3_xplained_mmc_dev_defconfig b/configs/atmel_sama5d3_xplained_mmc_dev_defconfig index 6733288eff..ef47bb37d7 100644 --- a/configs/atmel_sama5d3_xplained_mmc_dev_defconfig +++ b/configs/atmel_sama5d3_xplained_mmc_dev_defconfig @@ -23,7 +23,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/atmel/sama5d3_xplained_mmc/genimage.cfg" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.1)/linux-linux4sam_6.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.2)/linux-linux4sam_6.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d3_xplained" @@ -88,13 +88,13 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M" BR2_TARGET_AT91BOOTSTRAP3=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git" -BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.13" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.9.0" BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d3_xplainedsd_uboot" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git" -BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.1" +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.2" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d3_xplained_mmc" BR2_TARGET_UBOOT_NEEDS_DTC=y diff --git a/configs/atmel_sama5d4_xplained_defconfig b/configs/atmel_sama5d4_xplained_defconfig index e72a9e7ad5..0ecb6a1e84 100644 --- a/configs/atmel_sama5d4_xplained_defconfig +++ b/configs/atmel_sama5d4_xplained_defconfig @@ -6,7 +6,7 @@ BR2_ARM_INSTRUCTIONS_THUMB2=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.1)/linux-linux4sam_6.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.2)/linux-linux4sam_6.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d4_xplained" @@ -21,13 +21,13 @@ BR2_TARGET_ROOTFS_UBI_SUBSIZE=0 BR2_TARGET_AT91BOOTSTRAP3=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git" -BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.13" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.9.0" BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d4_xplainednf_uboot_secure" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git" -BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.1" +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.2" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d4_xplained_nandflash" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_PACKAGE_HOST_SAM_BA=y diff --git a/configs/atmel_sama5d4_xplained_dev_defconfig b/configs/atmel_sama5d4_xplained_dev_defconfig index 4aaf767412..8eb6f0989f 100644 --- a/configs/atmel_sama5d4_xplained_dev_defconfig +++ b/configs/atmel_sama5d4_xplained_dev_defconfig @@ -21,7 +21,7 @@ BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.1)/linux-linux4sam_6.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.2)/linux-linux4sam_6.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d4_xplained" @@ -90,13 +90,13 @@ BR2_TARGET_ROOTFS_UBI_SUBSIZE=0 BR2_TARGET_AT91BOOTSTRAP3=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git" -BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.13" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.9.0" BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d4_xplainednf_uboot_secure" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git" -BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.1" +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.2" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d4_xplained_nandflash" BR2_TARGET_UBOOT_NEEDS_DTC=y diff --git a/configs/atmel_sama5d4_xplained_mmc_defconfig b/configs/atmel_sama5d4_xplained_mmc_defconfig index 63314f9262..2753a7af09 100644 --- a/configs/atmel_sama5d4_xplained_mmc_defconfig +++ b/configs/atmel_sama5d4_xplained_mmc_defconfig @@ -8,7 +8,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/atmel/sama5d4_xplained_mmc/genimage.cfg" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.1)/linux-linux4sam_6.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.2)/linux-linux4sam_6.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d4_xplained" @@ -18,13 +18,13 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_AT91BOOTSTRAP3=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git" -BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.13" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.9.0" BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d4_xplainedsd_uboot_secure" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git" -BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.1" +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.2" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d4_xplained_mmc" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_PACKAGE_HOST_DOSFSTOOLS=y diff --git a/configs/atmel_sama5d4_xplained_mmc_dev_defconfig b/configs/atmel_sama5d4_xplained_mmc_dev_defconfig index 828085c7b5..d948cfa0f0 100644 --- a/configs/atmel_sama5d4_xplained_mmc_dev_defconfig +++ b/configs/atmel_sama5d4_xplained_mmc_dev_defconfig @@ -24,7 +24,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/atmel/sama5d4_xplained_mmc/genimage.cfg" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.1)/linux-linux4sam_6.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam_6.2)/linux-linux4sam_6.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d4_xplained" @@ -89,13 +89,13 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M" BR2_TARGET_AT91BOOTSTRAP3=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git" -BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.13" +BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.9.0" BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d4_xplainedsd_uboot_secure" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git" -BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.1" +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_6.2" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d4_xplained_mmc" BR2_TARGET_UBOOT_NEEDS_DTC=y diff --git a/configs/beaglebone_defconfig b/configs/beaglebone_defconfig index ee97f80322..f8b7cc66ab 100644 --- a/configs/beaglebone_defconfig +++ b/configs/beaglebone_defconfig @@ -6,9 +6,8 @@ BR2_ROOTFS_POST_BUILD_SCRIPT="board/beaglebone/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/beaglebone/genimage.cfg" BR2_LINUX_KERNEL=y -BR2_LINUX_KERNEL_CUSTOM_GIT=y -BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.ti.com/processor-sdk/processor-sdk-linux.git" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="4dae378bbe721277b08699d1d88ffae12acc9b09" +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,beagleboard,linux,4.19.79-ti-r30)/linux-4.19.79-ti-r30.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="omap2plus" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-bonegreen am335x-evmsk am335x-boneblue" diff --git a/configs/beelink_gs1_defconfig b/configs/beelink_gs1_defconfig new file mode 100644 index 0000000000..80b111aee7 --- /dev/null +++ b/configs/beelink_gs1_defconfig @@ -0,0 +1,44 @@ +# Architecture +BR2_aarch64=y +BR2_ARM_FPU_VFPV4=y +BR2_TARGET_GENERIC_ISSUE="Welcome to Beelink GS1" +# MDEV is required to autoload the ethernet driver module +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y +BR2_SYSTEM_DHCP="eth0" +BR2_ROOTFS_POST_BUILD_SCRIPT="board/beelink/gs1/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/beelink/gs1/genimage.cfg" +BR2_GLOBAL_PATCH_DIR="board/beelink/gs1/patches/" + +# Kernel Linux headers same as kernel, a 5.3 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_3=y +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.12" +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="allwinner/sun50i-h6-beelink-gs1" +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y + +# Firmware +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.1" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="sun50i_h6" + +# Bootloader +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2019.10" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="beelink_gs1" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin" +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/linksprite_pcduino_defconfig b/configs/linksprite_pcduino_defconfig index dd9bcdc1f7..a8577b6e79 100644 --- a/configs/linksprite_pcduino_defconfig +++ b/configs/linksprite_pcduino_defconfig @@ -17,13 +17,13 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/linksprite/pcduino/post-image.sh" # For kernel modules autoloading BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y -# Linux headers same as kernel, a 4.13 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_13=y +# Linux headers same as kernel, a 5.3 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_3=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.13" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.8" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun4i-a10-pcduino" @@ -37,7 +37,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2017.09" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2019.10" BR2_TARGET_UBOOT_USE_DEFCONFIG=y BR2_TARGET_UBOOT_BOARD_DEFCONFIG="Linksprite_pcDuino" BR2_TARGET_UBOOT_NEEDS_DTC=y diff --git a/configs/nanopi_neo_defconfig b/configs/nanopi_neo_defconfig index aa464917b5..838f4edad5 100644 --- a/configs/nanopi_neo_defconfig +++ b/configs/nanopi_neo_defconfig @@ -31,8 +31,6 @@ BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-sunxi-with-spl.bin" # Build an sdcard image BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y -BR2_TARGET_ROOTFS_EXT2_SIZE="32M" -BR2_TARGET_ROOTFS_EXT2_INODES=8192 # BR2_TARGET_ROOTFS_TAR is not set BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y diff --git a/configs/orangepi_lite_defconfig b/configs/orangepi_lite_defconfig index 1c3b99cf1d..249224ed35 100644 --- a/configs/orangepi_lite_defconfig +++ b/configs/orangepi_lite_defconfig @@ -1,12 +1,12 @@ BR2_arm=y BR2_cortex_a7=y BR2_ARM_FPU_VFPV4=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_17=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_3=y BR2_TARGET_GENERIC_HOSTNAME="OrangePi_Lite" BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi Lite" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.17" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.8" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/orangepi/orangepi-lite/linux-extras.config" BR2_LINUX_KERNEL_DTS_SUPPORT=y @@ -22,7 +22,7 @@ BR2_TARGET_ROOTFS_EXT2_4=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.05" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2019.10" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_lite" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y diff --git a/configs/orangepi_one_defconfig b/configs/orangepi_one_defconfig index 3715f1ddbb..4863eebff3 100644 --- a/configs/orangepi_one_defconfig +++ b/configs/orangepi_one_defconfig @@ -1,13 +1,13 @@ BR2_arm=y BR2_cortex_a7=y BR2_ARM_FPU_VFPV4=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_3=y BR2_TARGET_GENERIC_HOSTNAME="OrangePi_One" BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi One" BR2_SYSTEM_DHCP="eth0" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.15" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.8" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h3-orangepi-one" @@ -17,7 +17,7 @@ BR2_TARGET_ROOTFS_EXT2_4=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.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2019.10" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_one" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y diff --git a/configs/orangepi_pc_defconfig b/configs/orangepi_pc_defconfig index 130a4e7088..2d745932aa 100644 --- a/configs/orangepi_pc_defconfig +++ b/configs/orangepi_pc_defconfig @@ -1,7 +1,7 @@ BR2_arm=y BR2_cortex_a7=y BR2_ARM_FPU_VFPV4=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_3=y BR2_TARGET_GENERIC_HOSTNAME="OrangePi_PC" BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi PC" BR2_SYSTEM_DHCP="eth0" @@ -9,7 +9,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/orangepi/orangepi-pc/genimage.cfg" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.3" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.8" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/orangepi/orangepi-pc/linux.fragment" BR2_LINUX_KERNEL_DTS_SUPPORT=y @@ -20,7 +20,7 @@ BR2_TARGET_ROOTFS_EXT2_4=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_CUSTOM_VERSION_VALUE="2019.10" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_pc" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y diff --git a/configs/orangepi_pc_plus_defconfig b/configs/orangepi_pc_plus_defconfig index edc3909ae7..4d22e7840b 100644 --- a/configs/orangepi_pc_plus_defconfig +++ b/configs/orangepi_pc_plus_defconfig @@ -2,13 +2,13 @@ BR2_arm=y BR2_cortex_a7=y BR2_ARM_FPU_VFPV4=y BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_3=y BR2_TARGET_GENERIC_HOSTNAME="OrangePi_PC_Plus" BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi PC Plus" BR2_SYSTEM_DHCP="eth0" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.15" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.8" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h3-orangepi-pc-plus" @@ -20,7 +20,7 @@ BR2_TARGET_ROOTFS_EXT2_4=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.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2019.10" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_pc_plus" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y diff --git a/configs/orangepi_r1_defconfig b/configs/orangepi_r1_defconfig index 34a400e78c..b1d35f2998 100644 --- a/configs/orangepi_r1_defconfig +++ b/configs/orangepi_r1_defconfig @@ -1,13 +1,13 @@ BR2_arm=y BR2_cortex_a7=y BR2_ARM_FPU_VFPV4=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_3=y BR2_TARGET_GENERIC_HOSTNAME="OrangePi_R1" BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi R1" BR2_SYSTEM_DHCP="eth0" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.38" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.12" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h2-plus-orangepi-r1" @@ -19,7 +19,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2019.04" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2019.10" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_r1" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y diff --git a/configs/orangepi_zero_defconfig b/configs/orangepi_zero_defconfig index d1c6c8f7a7..354e3bfdba 100644 --- a/configs/orangepi_zero_defconfig +++ b/configs/orangepi_zero_defconfig @@ -3,13 +3,13 @@ BR2_cortex_a7=y BR2_ARM_FPU_VFPV4=y BR2_GLOBAL_PATCH_DIR="board/orangepi/orangepi-zero/patches" BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_3=y BR2_TARGET_GENERIC_HOSTNAME="OrangePi_Zero" BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi Zero" BR2_SYSTEM_DHCP="eth0" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.38" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.8" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h2-plus-orangepi-zero" @@ -21,7 +21,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2019.04" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2019.10" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_zero" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y diff --git a/configs/orangepi_zero_plus2_defconfig b/configs/orangepi_zero_plus2_defconfig index 4ae7ef9355..a0183714a4 100644 --- a/configs/orangepi_zero_plus2_defconfig +++ b/configs/orangepi_zero_plus2_defconfig @@ -2,7 +2,7 @@ BR2_aarch64=y BR2_cortex_a53=y BR2_ARM_FPU_VFPV4=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_0=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_3=y BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y BR2_ROOTFS_OVERLAY="board/orangepi/orangepi-zero-plus2/rootfs_overlay" @@ -18,7 +18,7 @@ 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="2019.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2019.10" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_zero_plus2" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y @@ -33,7 +33,7 @@ BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="board/orangepi/orangepi-zero-plus2/boot.cmd # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.0" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.8" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="allwinner/sun50i-h5-orangepi-zero-plus2" diff --git a/configs/pc_x86_64_efi_defconfig b/configs/pc_x86_64_efi_defconfig index 324de35dff..984fc8f92f 100644 --- a/configs/pc_x86_64_efi_defconfig +++ b/configs/pc_x86_64_efi_defconfig @@ -10,6 +10,7 @@ BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y # Required tools to create bootable media BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y # Bootloader @@ -21,7 +22,8 @@ BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_ROOTFS_EXT2_SIZE="120M" # BR2_TARGET_ROOTFS_TAR is not set -BR2_ROOTFS_POST_IMAGE_SCRIPT="board/pc/post-image-efi-gpt.sh" +BR2_ROOTFS_POST_BUILD_SCRIPT="board/pc/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/pc/post-image-efi.sh" # Linux headers same as kernel, a 4.18 series BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18=y diff --git a/configs/raspberrypi0_defconfig b/configs/raspberrypi0_defconfig index 7255f8d067..1600e219d1 100644 --- a/configs/raspberrypi0_defconfig +++ b/configs/raspberrypi0_defconfig @@ -9,7 +9,7 @@ BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190819-1)/linux-raspberrypi-kernel_1.20190819-1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190925-1)/linux-raspberrypi-kernel_1.20190925-1.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi" # Build the DTBs for A/B from the kernel sources: the zero is the same diff --git a/configs/raspberrypi0w_defconfig b/configs/raspberrypi0w_defconfig index 57276aa8f7..ea5856e8c0 100644 --- a/configs/raspberrypi0w_defconfig +++ b/configs/raspberrypi0w_defconfig @@ -9,7 +9,7 @@ BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190819-1)/linux-raspberrypi-kernel_1.20190819-1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190925-1)/linux-raspberrypi-kernel_1.20190925-1.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2708-rpi-zero-w" diff --git a/configs/raspberrypi2_defconfig b/configs/raspberrypi2_defconfig index 73f5f349d3..e6c38e74b7 100644 --- a/configs/raspberrypi2_defconfig +++ b/configs/raspberrypi2_defconfig @@ -12,7 +12,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190819-1)/linux-raspberrypi-kernel_1.20190819-1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190925-1)/linux-raspberrypi-kernel_1.20190925-1.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="bcm2709" # Build the DTB from the kernel sources diff --git a/configs/raspberrypi3_64_defconfig b/configs/raspberrypi3_64_defconfig index 61cf730a19..27141f364e 100644 --- a/configs/raspberrypi3_64_defconfig +++ b/configs/raspberrypi3_64_defconfig @@ -11,17 +11,17 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190819-1)/linux-raspberrypi-kernel_1.20190819-1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190925-1)/linux-raspberrypi-kernel_1.20190925-1.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi3" # Build the DTB from the kernel sources BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="broadcom/bcm2710-rpi-3-b broadcom/bcm2710-rpi-3-b-plus broadcom/bcm2837-rpi-3-b" +BR2_LINUX_KERNEL_DTB_OVERLAY_SUPPORT=y BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y BR2_PACKAGE_RPI_FIRMWARE=y -# BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS is not set # Required tools to create the SD image BR2_PACKAGE_HOST_DOSFSTOOLS=y @@ -35,4 +35,4 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M" # BR2_TARGET_ROOTFS_TAR is not set BR2_ROOTFS_POST_BUILD_SCRIPT="board/raspberrypi3-64/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/raspberrypi3-64/post-image.sh" -BR2_ROOTFS_POST_SCRIPT_ARGS="--aarch64" +BR2_ROOTFS_POST_SCRIPT_ARGS="--aarch64 --add-pi3-miniuart-bt-overlay" diff --git a/configs/raspberrypi3_defconfig b/configs/raspberrypi3_defconfig index 744b16dca9..01aa239805 100644 --- a/configs/raspberrypi3_defconfig +++ b/configs/raspberrypi3_defconfig @@ -11,7 +11,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190819-1)/linux-raspberrypi-kernel_1.20190819-1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190925-1)/linux-raspberrypi-kernel_1.20190925-1.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="bcm2709" # Build the DTB from the kernel sources diff --git a/configs/raspberrypi3_qt5we_defconfig b/configs/raspberrypi3_qt5we_defconfig index 7fd834c502..775eb9114e 100644 --- a/configs/raspberrypi3_qt5we_defconfig +++ b/configs/raspberrypi3_qt5we_defconfig @@ -12,7 +12,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190819-1)/linux-raspberrypi-kernel_1.20190819-1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190925-1)/linux-raspberrypi-kernel_1.20190925-1.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="bcm2709" # Build the DTB from the kernel sources diff --git a/configs/raspberrypi4_defconfig b/configs/raspberrypi4_defconfig index ec29c13804..6eea0ca816 100644 --- a/configs/raspberrypi4_defconfig +++ b/configs/raspberrypi4_defconfig @@ -11,7 +11,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190819-1)/linux-raspberrypi-kernel_1.20190819-1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190925-1)/linux-raspberrypi-kernel_1.20190925-1.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="bcm2711" # Build the DTB from the kernel sources diff --git a/configs/raspberrypi_defconfig b/configs/raspberrypi_defconfig index 11107c44a9..969a92820e 100644 --- a/configs/raspberrypi_defconfig +++ b/configs/raspberrypi_defconfig @@ -11,7 +11,7 @@ BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190819-1)/linux-raspberrypi-kernel_1.20190819-1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,raspberrypi-kernel_1.20190925-1)/linux-raspberrypi-kernel_1.20190925-1.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi" # Build the DTBs for A/B, A+/B+ and compute module from the kernel sources diff --git a/docs/manual/adding-packages-generic.txt b/docs/manual/adding-packages-generic.txt index b2386f2c01..86300e7460 100644 --- a/docs/manual/adding-packages-generic.txt +++ b/docs/manual/adding-packages-generic.txt @@ -586,6 +586,13 @@ In the action definitions, you can use the following variables: * +$(TARGET_CROSS)+ to get the cross-compilation toolchain prefix * Of course the +$(HOST_DIR)+, +$(STAGING_DIR)+ and +$(TARGET_DIR)+ - variables to install the packages properly. + variables to install the packages properly. Those variables point to + the global _host_, _staging_ and _target_ directories, unless + _per-package directory_ support is used, in which case they point to + the current package _host_, _staging_ and _target_ directories. In + both cases, it doesn't make any difference from the package point of + view: it should simply use +HOST_DIR+, +STAGING_DIR+ and + +TARGET_DIR+. See xref:top-level-parallel-build[] for more details + about _per-package directory_ support. Finally, you can also use hooks. See xref:hooks[] for more information. diff --git a/docs/manual/common-usage.txt b/docs/manual/common-usage.txt index a87980d4a2..3fe7f69721 100644 --- a/docs/manual/common-usage.txt +++ b/docs/manual/common-usage.txt @@ -347,6 +347,53 @@ Refer to the help text of this script for more details: utils/size-stats-compare -h ---------------- +[[top-level-parallel-build]] +=== Top-level parallel build + +.Note +This section deals with a very experimental feature, which is known to +break even in some non-unusual situations. Use at your own risk. + +Buildroot has always been capable of using parallel build on a per +package basis: each package is built by Buildroot using +make -jN+ (or +the equivalent invocation for non-make-based build systems). The level +of parallelism is by default number of CPUs + 1, but it can be +adjusted using the +BR2_JLEVEL+ configuration option. + +Until 2020.02, Buildroot was however building packages in a serial +fashion: each package was built one after the other, without +parallelization of the build between packages. As of 2020.02, +Buildroot has experimental support for *top-level parallel build*, +which allows some signicant build time savings by building packages +that have no dependency relationship in parallel. This feature is +however marked as experimental and is known not to work in some cases. + +In order to use top-level parallel build, one must: + +. Enable the option +BR2_PER_PACKAGE_DIRECTORIES+ in the Buildroot +configuration + +. Use +make -jN+ when starting the Buildroot build + +Internally, the +BR2_PER_PACKAGE_DIRECTORIES+ will enable a mechanism +called *per-package directories*, which will have the following +effects: + +* Instead of a global _target_ directory and a global _host_ directory + common to all packages, per-package _target_ and _host_ directories + will be used, in +$(O)/per-package//target/+ and + +$(O)/per-package//host/+ respectively. Those folders will be + populated from the corresponding folders of the package dependencies + at the beginning of ++ build. The compiler and all other tools + will therefore only be able to see and access files installed by + dependencies explicitly listed by ++. + +* At the end of the build, the global _target_ and _host_ directories + will be populated, located in +$(O)/target+ and +$(O)/host+ + respectively. This means that during the build, those folders will + be empty and it's only at the very end of the build that they will + be populated. + include::eclipse-integration.txt[] include::advanced.txt[] diff --git a/docs/manual/faq-troubleshooting.txt b/docs/manual/faq-troubleshooting.txt index b144c9e7f0..5adf3fa6ce 100644 --- a/docs/manual/faq-troubleshooting.txt +++ b/docs/manual/faq-troubleshooting.txt @@ -239,3 +239,6 @@ help reduce the build time: * Buy new hardware. SSDs and lots of RAM are key to speeding up the builds. + + * Experiment with top-level parallel build, see + xref:top-level-parallel-build[]. diff --git a/docs/manual/quickstart.txt b/docs/manual/quickstart.txt index 542b278603..80569e85f4 100644 --- a/docs/manual/quickstart.txt +++ b/docs/manual/quickstart.txt @@ -60,10 +60,10 @@ To start the build process, simply run: $ make -------------------- -You *should never* use +make -jN+ with Buildroot: top-level parallel -make is currently not supported. Instead, use the +BR2_JLEVEL+ option -to tell Buildroot to run the compilation of each individual package -with +make -jN+. +By default, Buildroot does not support top-level parallel build, so +running +make -jN+ is not necessary. There is however experimental +support for top-level parallel build, see +xref:top-level-parallel-build[]. The `make` command will generally perform the following steps: diff --git a/linux/Config.in b/linux/Config.in index f291f671b5..14d737311a 100644 --- a/linux/Config.in +++ b/linux/Config.in @@ -35,7 +35,7 @@ config BR2_LINUX_KERNEL_LATEST_VERSION bool "Latest version (5.3)" config BR2_LINUX_KERNEL_LATEST_CIP_VERSION - bool "Latest CIP SLTS version (v4.19.75-cip11)" + bool "Latest CIP SLTS version (4.19.82-cip14)" help CIP launched in the spring of 2016 to address the needs of organizations in industries such as power generation and @@ -53,6 +53,17 @@ config BR2_LINUX_KERNEL_LATEST_CIP_VERSION https://www.cip-project.org +config BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION + bool "Latest CIP RT SLTS version (4.19.72-cip10-rt4)" + help + Same as the CIP version, but this is the PREEMPT_RT realtime + variant. + + The CIP community plans to maintain 4.19 for security and + bug fixes for more than 10 years. + + https://www.cip-project.org + config BR2_LINUX_KERNEL_CUSTOM_VERSION bool "Custom version" help @@ -123,7 +134,8 @@ endif config BR2_LINUX_KERNEL_VERSION string default "5.3.14" if BR2_LINUX_KERNEL_LATEST_VERSION - default "v4.19.75-cip11" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION + default "4.19.82-cip14" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION + default "4.19.72-cip10-rt4" if BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \ if BR2_LINUX_KERNEL_CUSTOM_VERSION default "custom" if BR2_LINUX_KERNEL_CUSTOM_TARBALL diff --git a/linux/linux.mk b/linux/linux.mk index 89ac31c2e1..762f8868b1 100644 --- a/linux/linux.mk +++ b/linux/linux.mk @@ -29,8 +29,9 @@ LINUX_SITE_METHOD = hg else ifeq ($(BR2_LINUX_KERNEL_CUSTOM_SVN),y) LINUX_SITE = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_REPO_URL)) LINUX_SITE_METHOD = svn -else ifeq ($(BR2_LINUX_KERNEL_LATEST_CIP_VERSION),y) -LINUX_SITE = git://git.kernel.org/pub/scm/linux/kernel/git/cip/linux-cip.git +else ifeq ($(BR2_LINUX_KERNEL_LATEST_CIP_VERSION)$(BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION),y) +LINUX_SOURCE = linux-cip-$(LINUX_VERSION).tar.gz +LINUX_SITE = https://git.kernel.org/pub/scm/linux/kernel/git/cip/linux-cip.git/snapshot else ifneq ($(findstring -rc,$(LINUX_VERSION)),) # Since 4.12-rc1, -rc kernels are generated from cgit. This also works for # older -rc kernels. diff --git a/package/Config.in b/package/Config.in index f72c77b416..37861387e8 100644 --- a/package/Config.in +++ b/package/Config.in @@ -418,6 +418,7 @@ endmenu source "package/cbootimage/Config.in" source "package/cc-tool/Config.in" source "package/cdrkit/Config.in" + source "package/cpuburn-arm/Config.in" source "package/cryptsetup/Config.in" source "package/cwiid/Config.in" source "package/dahdi-linux/Config.in" @@ -449,6 +450,7 @@ endmenu source "package/freescale-imx/Config.in" source "package/fxload/Config.in" source "package/gadgetfs-test/Config.in" + source "package/gcnano-binaries/Config.in" source "package/gpm/Config.in" source "package/gpsd/Config.in" source "package/gptfdisk/Config.in" @@ -509,6 +511,7 @@ endmenu source "package/pps-tools/Config.in" source "package/pru-software-support/Config.in" source "package/pulseview/Config.in" + source "package/raspi-gpio/Config.in" source "package/read-edid/Config.in" source "package/rng-tools/Config.in" source "package/rpi-userland/Config.in" @@ -550,6 +553,7 @@ endmenu source "package/udev/Config.in" source "package/udisks/Config.in" source "package/uhubctl/Config.in" + source "package/umtprd/Config.in" source "package/upower/Config.in" source "package/usb_modeswitch/Config.in" source "package/usb_modeswitch_data/Config.in" @@ -852,6 +856,7 @@ menu "External python modules" source "package/python-bluezero/Config.in" source "package/python-bottle/Config.in" source "package/python-brotli/Config.in" + source "package/python-bunch/Config.in" source "package/python-cached-property/Config.in" source "package/python-can/Config.in" source "package/python-cbor/Config.in" @@ -875,6 +880,7 @@ menu "External python modules" source "package/python-couchdb/Config.in" source "package/python-crc16/Config.in" source "package/python-crcmod/Config.in" + source "package/python-crontab/Config.in" source "package/python-crossbar/Config.in" source "package/python-cryptography/Config.in" source "package/python-cssselect/Config.in" @@ -891,6 +897,7 @@ menu "External python modules" source "package/python-dicttoxml/Config.in" source "package/python-django/Config.in" source "package/python-django-enumfields/Config.in" + source "package/python-dnspython/Config.in" source "package/python-docker/Config.in" source "package/python-docker-pycreds/Config.in" source "package/python-dockerpty/Config.in" @@ -902,6 +909,7 @@ menu "External python modules" source "package/python-engineio/Config.in" source "package/python-enum/Config.in" source "package/python-enum34/Config.in" + source "package/python-esptool/Config.in" source "package/python-falcon/Config.in" source "package/python-fire/Config.in" source "package/python-flask/Config.in" @@ -912,6 +920,7 @@ menu "External python modules" source "package/python-flask-sqlalchemy/Config.in" source "package/python-flup/Config.in" source "package/python-functools32/Config.in" + source "package/python-future/Config.in" source "package/python-futures/Config.in" source "package/python-gobject/Config.in" source "package/python-gunicorn/Config.in" @@ -920,6 +929,7 @@ menu "External python modules" source "package/python-hpack/Config.in" source "package/python-html5lib/Config.in" source "package/python-httplib2/Config.in" + source "package/python-huepy/Config.in" source "package/python-humanize/Config.in" source "package/python-hyperframe/Config.in" source "package/python-hyperlink/Config.in" @@ -1006,6 +1016,7 @@ menu "External python modules" source "package/python-ptyprocess/Config.in" source "package/python-pudb/Config.in" source "package/python-py/Config.in" + source "package/python-pyaes/Config.in" source "package/python-pyasn/Config.in" source "package/python-pyasn-modules/Config.in" source "package/python-pyasn1/Config.in" @@ -1239,6 +1250,7 @@ menu "Crypto" source "package/cryptodev/Config.in" source "package/gcr/Config.in" source "package/gnutls/Config.in" + source "package/libargon2/Config.in" source "package/libassuan/Config.in" source "package/libgcrypt/Config.in" source "package/libgpg-error/Config.in" @@ -1479,6 +1491,7 @@ endif source "package/jsmin/Config.in" source "package/json-javascript/Config.in" source "package/openlayers/Config.in" + source "package/spidermonkey/Config.in" endmenu menu "JSON/XML" @@ -2282,6 +2295,7 @@ menu "System tools" source "package/s6-rc/Config.in" source "package/scrub/Config.in" source "package/scrypt/Config.in" + source "package/sdbusplus/Config.in" source "package/smack/Config.in" source "package/start-stop-daemon/Config.in" source "package/supervisor/Config.in" diff --git a/package/Config.in.host b/package/Config.in.host index c0ac4fbbcc..758c268e00 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -66,6 +66,7 @@ menu "Host utilities" source "package/rustc/Config.in.host" source "package/s6-rc/Config.in.host" source "package/sam-ba/Config.in.host" + source "package/sdbusplus/Config.in.host" source "package/squashfs/Config.in.host" source "package/sunxi-tools/Config.in.host" source "package/swig/Config.in.host" diff --git a/package/cpuburn-arm/Config.in b/package/cpuburn-arm/Config.in new file mode 100644 index 0000000000..141904791d --- /dev/null +++ b/package/cpuburn-arm/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_CPUBURN_ARM_ARCH_SUPPORTS + bool + default y if BR2_cortex_a7 + default y if BR2_cortex_a8 + default y if BR2_cortex_a9 + default y if BR2_cortex_a53 + +config BR2_PACKAGE_CPUBURN_ARM + bool "cpuburn-arm" + depends on BR2_PACKAGE_CPUBURN_ARM_ARCH_SUPPORTS + help + Make ARM cores generate as much heat as possible. Supports + Cortex A7/A8/A9/A53. + + https://github.com/ssvb/cpuburn-arm diff --git a/package/cpuburn-arm/cpuburn-arm.hash b/package/cpuburn-arm/cpuburn-arm.hash new file mode 100644 index 0000000000..55f34f87f8 --- /dev/null +++ b/package/cpuburn-arm/cpuburn-arm.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 354381ec8c352e6c84875ac034004df44b0ed0ac097c400b8d2e47652815c3a2 cpuburn-arm-ad7e646700d14b81413297bda02fb7fe96613c3f.tar.gz +sha256 47f10095a04d16c8d8d52598371fa01b6a6e87134083b9ec3c43d83ff8576f55 cpuburn-a7.S diff --git a/package/cpuburn-arm/cpuburn-arm.mk b/package/cpuburn-arm/cpuburn-arm.mk new file mode 100644 index 0000000000..649ffd224b --- /dev/null +++ b/package/cpuburn-arm/cpuburn-arm.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# cpuburn-arm +# +################################################################################ + +CPUBURN_ARM_VERSION = ad7e646700d14b81413297bda02fb7fe96613c3f +CPUBURN_ARM_SITE = $(call github,ssvb,cpuburn-arm,$(CPUBURN_ARM_VERSION)) +CPUBURN_ARM_LICENSE = MIT +CPUBURN_ARM_LICENSE_FILES = cpuburn-a7.S + +ifeq ($(BR2_cortex_a7),y) +CPUBURN_ARM_SRC = cpuburn-a7.S +else ifeq ($(BR2_cortex_a8),y) +CPUBURN_ARM_SRC = cpuburn-a8.S +else ifeq ($(BR2_cortex_a9),y) +CPUBURN_ARM_SRC = cpuburn-a9.S +else ifeq ($(BR2_cortex_a53),y) +CPUBURN_ARM_SRC = cpuburn-a53.S +endif + +define CPUBURN_ARM_BUILD_CMDS + $(TARGET_CC) $(TARGET_CFLAGS) -o $(@D)/cpuburn \ + $(@D)/$(CPUBURN_ARM_SRC) +endef + +define CPUBURN_ARM_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 $(@D)/cpuburn $(TARGET_DIR)/usr/bin/cpuburn +endef + +$(eval $(generic-package)) diff --git a/package/dtc/0001-Fix-include-guards-for-older-kernel-u-boot-sources.patch b/package/dtc/0001-Fix-include-guards-for-older-kernel-u-boot-sources.patch index bff5f4c07a..127114e866 100644 --- a/package/dtc/0001-Fix-include-guards-for-older-kernel-u-boot-sources.patch +++ b/package/dtc/0001-Fix-include-guards-for-older-kernel-u-boot-sources.patch @@ -15,6 +15,8 @@ Signed-off-by: Lothar Felten [ThomasDS: also update fdt.h which has the same issue, seen on U-Boot 2011.03] Signed-off-by: Thomas De Schampheleire +[SB: Updated to match context change in v1.5.1] +Signed-off-by: Sam Bobroff --- libfdt/fdt.h | 4 ++++ libfdt/libfdt.h | 4 ++++ @@ -22,10 +24,11 @@ Signed-off-by: Thomas De Schampheleire 3 files changed, 12 insertions(+) diff --git a/libfdt/fdt.h b/libfdt/fdt.h -index 74961f9..2904f48 100644 +index f2e6880..0f1dc4d 100644 --- a/libfdt/fdt.h +++ b/libfdt/fdt.h -@@ -1,3 +1,7 @@ +@@ -1,4 +1,8 @@ + /* SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause) */ +#ifdef _FDT_H +#warning "Please consider updating your kernel and/or u-boot version" +#define FDT_H @@ -34,10 +37,11 @@ index 74961f9..2904f48 100644 #define FDT_H /* diff --git a/libfdt/libfdt.h b/libfdt/libfdt.h -index 830b77e..bef4566 100644 +index 8037f39..7668432 100644 --- a/libfdt/libfdt.h +++ b/libfdt/libfdt.h -@@ -1,3 +1,7 @@ +@@ -1,4 +1,8 @@ + /* SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause) */ +#ifdef _LIBFDT_H +#warning "Please consider updating your kernel and/or u-boot version" +#define LIBFDT_H @@ -46,10 +50,11 @@ index 830b77e..bef4566 100644 #define LIBFDT_H /* diff --git a/libfdt/libfdt_env.h b/libfdt/libfdt_env.h -index eb20538..6a61e6a 100644 +index 73b6d40..b95a287 100644 --- a/libfdt/libfdt_env.h +++ b/libfdt/libfdt_env.h -@@ -1,3 +1,7 @@ +@@ -1,4 +1,8 @@ + /* SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause) */ +#ifdef _LIBFDT_ENV_H +#warning "Please consider updating your kernel and/or u-boot version" +#define LIBFDT_ENV_H @@ -58,5 +63,5 @@ index eb20538..6a61e6a 100644 #define LIBFDT_ENV_H /* -- -2.19.2 +2.22.0.216.g00a2a96fc9 diff --git a/package/dtc/0002-Makefile-Add-EXTRA_CFLAGS-variable.patch b/package/dtc/0002-Makefile-Add-EXTRA_CFLAGS-variable.patch deleted file mode 100644 index b3f14a6991..0000000000 --- a/package/dtc/0002-Makefile-Add-EXTRA_CFLAGS-variable.patch +++ /dev/null @@ -1,37 +0,0 @@ -From f7c659d7daff5dbf4a0be959a544f15eab7fc49c Mon Sep 17 00:00:00 2001 -From: Joel Stanley -Date: Mon, 22 Jul 2019 12:21:49 +0930 -Subject: [PATCH] Makefile: Add EXTRA_CFLAGS variable - -Distributions packaging dtc may need to set extra flags. Currently when -they do that it overrides the ones set by the makefile. This is -particularly problematic when compiling without yaml, as the yaml -detection is ignored. - - ld: dtc.o: in function `main': - dtc.c:(.text.startup+0x718): undefined reference to `dt_to_yaml' - -This patch provides a EXTRA_CFLAGS variable that is added to the list of -CFLAGS, and can be set on the command line when packaging. - -Signed-off-by: Joel Stanley ---- - Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Makefile b/Makefile -index e6b32cf1cbf5..6807669569b3 100644 ---- a/Makefile -+++ b/Makefile -@@ -18,7 +18,7 @@ CONFIG_LOCALVERSION = - CPPFLAGS = -I libfdt -I . - WARNINGS = -Wall -Wpointer-arith -Wcast-qual -Wnested-externs \ - -Wstrict-prototypes -Wmissing-prototypes -Wredundant-decls -Wshadow --CFLAGS = -g -Os $(SHAREDLIB_CFLAGS) -Werror $(WARNINGS) -+CFLAGS = -g -Os $(SHAREDLIB_CFLAGS) -Werror $(WARNINGS) $(EXTRA_CFLAGS) - - BISON = bison - LEX = flex --- -2.20.1 - diff --git a/package/dtc/dtc.hash b/package/dtc/dtc.hash index 4d0aaea601..e4d6c02544 100644 --- a/package/dtc/dtc.hash +++ b/package/dtc/dtc.hash @@ -1,6 +1,7 @@ # from https://www.kernel.org/pub/software/utils/dtc/sha256sums.asc -sha256 c672e443c9f7e39f5a7c8e602da6777f9ad55ad70de87de300a43828c8050172 dtc-1.5.0.tar.xz +sha256 660b74039690fc37013660544d09191834efb58503c73c555c5513ba75ab031f dtc-1.5.1.tar.xz # Hash for license files -sha256 171ce1c292cf148a5be9ff95ce7e5c3d79a002721ab8e119eae3c0f5336d2b3d README.license -sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 GPL +sha256 78e1e1ce5728a990d59c7de61d4741c49185d5129daf783b386380a214328d68 README.license +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 GPL +sha256 6313108c23efffa36948f8b2cff1560a5935373b527b0e1a837cc77e6ed1bacd BSD-2-Clause diff --git a/package/dtc/dtc.mk b/package/dtc/dtc.mk index 96a64b70e4..d532487dd1 100644 --- a/package/dtc/dtc.mk +++ b/package/dtc/dtc.mk @@ -4,11 +4,11 @@ # ################################################################################ -DTC_VERSION = 1.5.0 +DTC_VERSION = 1.5.1 DTC_SOURCE = dtc-$(DTC_VERSION).tar.xz DTC_SITE = https://www.kernel.org/pub/software/utils/dtc DTC_LICENSE = GPL-2.0+ or BSD-2-Clause (library) -DTC_LICENSE_FILES = README.license GPL +DTC_LICENSE_FILES = README.license GPL BSD-2-Clause DTC_INSTALL_STAGING = YES DTC_DEPENDENCIES = host-bison host-flex host-pkgconf HOST_DTC_DEPENDENCIES = host-bison host-flex host-pkgconf @@ -18,8 +18,11 @@ DTC_MAKE_OPTS = \ NO_PYTHON=1 \ NO_VALGRIND=1 +# For the host, we install headers in a special subdirectory to avoid +# conflicts with the in-kernel libfdt copy. HOST_DTC_MAKE_OPTS = \ PREFIX=$(HOST_DIR) \ + INCLUDEDIR=$(HOST_DIR)/include/libfdt \ NO_PYTHON=1 \ NO_VALGRIND=1 \ NO_YAML=1 diff --git a/package/fatcat/fatcat.hash b/package/fatcat/fatcat.hash index a5a6f670ad..66823e2d9e 100644 --- a/package/fatcat/fatcat.hash +++ b/package/fatcat/fatcat.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 d44f6bb80d20ed50095ace9e71df8da98037db9f22cda76bdd9724d37df69130 fatcat-1.0.6.tar.gz +sha256 303efe2aa73cbfe6fbc5d8af346d0f2c70b3f996fc891e8859213a58b95ad88c fatcat-1.1.0.tar.gz sha256 3ea03755e32cf7f5b12981de92a0fdad396448195fe0024990c9cbc388e9866c LICENSE diff --git a/package/fatcat/fatcat.mk b/package/fatcat/fatcat.mk index e4f8d757b6..1a2e5aacae 100644 --- a/package/fatcat/fatcat.mk +++ b/package/fatcat/fatcat.mk @@ -4,8 +4,8 @@ # ################################################################################ -FATCAT_VERSION = 1.0.6 -FATCAT_SITE = $(call github,Gregwar,fatcat,$(FATCAT_VERSION)) +FATCAT_VERSION = 1.1.0 +FATCAT_SITE = $(call github,Gregwar,fatcat,v$(FATCAT_VERSION)) FATCAT_LICENSE = MIT FATCAT_LICENSE_FILES = LICENSE diff --git a/package/ffmpeg/Config.in b/package/ffmpeg/Config.in index 0c71415276..33baff262e 100644 --- a/package/ffmpeg/Config.in +++ b/package/ffmpeg/Config.in @@ -1,8 +1,6 @@ config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS bool default y - # fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW - depends on !(BR2_archs38 && BR2_TOOLCHAIN_USES_GLIBC) # fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2 depends on !BR2_nios2 # No support for ARMv7-M in the ARM assembly logic diff --git a/package/gcnano-binaries/Config.in b/package/gcnano-binaries/Config.in new file mode 100644 index 0000000000..01e1aacf1d --- /dev/null +++ b/package/gcnano-binaries/Config.in @@ -0,0 +1,33 @@ +comment "gcnano-binaries needs a Linux kernel to be built" + depends on BR2_arm + depends on !BR2_LINUX_KERNEL + +comment "gcnano-binaries needs a glibc toolchain w/ threads, dynamic library" + depends on BR2_arm + depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_TOOLCHAIN_HAS_THREADS \ + || BR2_STATIC_LIBS + +config BR2_PACKAGE_GCNANO_BINARIES + bool "gcnano-binaries" + depends on BR2_arm + depends on BR2_LINUX_KERNEL + depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm, wayland + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_HAS_LIBEGL + select BR2_PACKAGE_HAS_LIBGLES + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_WAYLAND + help + Driver and libaries for stm vivante gcnano gpu. + https://github.com/STMicroelectronics/gcnano-binaries/ + +if BR2_PACKAGE_GCNANO_BINARIES + +config BR2_PACKAGE_PROVIDES_LIBEGL + default "gcnano-binaries" + +config BR2_PACKAGE_PROVIDES_LIBGLES + default "gcnano-binaries" + +endif diff --git a/package/gcnano-binaries/gcnano-binaries.hash b/package/gcnano-binaries/gcnano-binaries.hash new file mode 100644 index 0000000000..e753f944a3 --- /dev/null +++ b/package/gcnano-binaries/gcnano-binaries.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 255db9c58627f5f54fd15263647cc97a55927363fec42e7c8d7486170a65d84d gcnano-binaries-c01642ed5e18cf09ecd905af193e935cb3be95ed.tar.gz +sha256 7d209718473d18f69f75adb7caf9cb5d4b0a31da068756aa011bea617de3dc57 EULA diff --git a/package/gcnano-binaries/gcnano-binaries.mk b/package/gcnano-binaries/gcnano-binaries.mk new file mode 100644 index 0000000000..b27571a08c --- /dev/null +++ b/package/gcnano-binaries/gcnano-binaries.mk @@ -0,0 +1,76 @@ +################################################################################ +# +# gcnano-binaries +# +################################################################################ + +GCNANO_BINARIES_LIB_VERSION = 6.2.4 +GCNANO_BINARIES_DRIVER_VERSION = $(GCNANO_BINARIES_LIB_VERSION).p4 +GCNANO_BINARIES_USERLAND_VERSION = $(GCNANO_BINARIES_LIB_VERSION).p4-20190626 +GCNANO_BINARIES_VERSION = c01642ed5e18cf09ecd905af193e935cb3be95ed +GCNANO_BINARIES_SITE = $(call github,STMicroelectronics,gcnano-binaries,$(GCNANO_BINARIES_VERSION)) + +GCNANO_BINARIES_LICENSE = MIT, Vivante End User Software License Terms +GCNANO_BINARIES_LICENSE_FILES = EULA +GCNANO_BINARIES_REDISTRIBUTE = NO + +GCNANO_BINARIES_DEPENDENCIES = linux wayland libdrm + +GCNANO_BINARIES_INSTALL_STAGING = YES + +GCNANO_BINARIES_PROVIDES = libegl libgles + +# The Github repository doesn't contain the source code as-is: it +# contains a tarball with the kernel driver source code, and a +# self-extractible binary for the user-space parts. So we extract both +# below, and also extract the EULA text from the self-extractible binary +define GCNANO_BINARIES_EXTRACT_HELPER + tar --strip-components=1 -xJf $(@D)/gcnano-driver-$(GCNANO_BINARIES_DRIVER_VERSION).tar.xz -C $(@D) + awk 'BEGIN { start = 0; } \ + /^EOEULA/ { start = 0; } \ + { if (start) print; } \ + /< $(@D)/EULA + cd $(@D) && sh gcnano-userland-multi-$(GCNANO_BINARIES_USERLAND_VERSION).bin --auto-accept +endef + +GCNANO_BINARIES_POST_EXTRACT_HOOKS += GCNANO_BINARIES_EXTRACT_HELPER + +GCNANO_BINARIES_MODULE_MAKE_OPTS = \ + KERNEL_DIR=$(LINUX_DIR) \ + SOC_PLATFORM=st-st \ + AQROOT=$(@D) \ + DEBUG=0 + +GCNANO_BINARIES_LIBRARIES = \ + gbm_viv libEGL libGAL libgbm libGLESv1_CM \ + libGLESv2 libGLSLC libOpenVG libVSC + +GCNANO_BINARIES_USERLAND_SUBDIR = gcnano-userland-multi-$(GCNANO_BINARIES_USERLAND_VERSION) + +GCNANO_BINARIES_PKG_CONFIGS = egl gbm glesv1_cm glesv2 vg + +define GCNANO_BINARIES_INSTALL + $(foreach lib,$(GCNANO_BINARIES_LIBRARIES), \ + $(INSTALL) -D -m 0755 $(@D)/$(GCNANO_BINARIES_USERLAND_SUBDIR)/usr/lib/$(lib).$(GCNANO_BINARIES_LIB_VERSION).multi.release.so \ + $(1)/usr/lib/$(lib).$(GCNANO_BINARIES_LIB_VERSION).multi.release.so ; \ + cp -a $(@D)/$(GCNANO_BINARIES_USERLAND_SUBDIR)/usr/lib/$(lib).so* $(1)/usr/lib + ) + mkdir -p $(1)/usr/include + cp -a $(@D)/$(GCNANO_BINARIES_USERLAND_SUBDIR)/usr/include/* $(1)/usr/include/ + $(foreach pkgconfig,$(GCNANO_BINARIES_PKG_CONFIGS), \ + $(INSTALL) -D -m 0644 $(@D)/$(GCNANO_BINARIES_USERLAND_SUBDIR)/usr/lib/pkgconfig/$(pkgconfig).pc \ + $(1)/usr/lib/pkgconfig/$(pkgconfig).pc + ) +endef + +define GCNANO_BINARIES_INSTALL_TARGET_CMDS + $(call GCNANO_BINARIES_INSTALL,$(TARGET_DIR)) +endef + +define GCNANO_BINARIES_INSTALL_STAGING_CMDS + $(call GCNANO_BINARIES_INSTALL,$(STAGING_DIR)) +endef + +$(eval $(kernel-module)) +$(eval $(generic-package)) diff --git a/package/git/git.hash b/package/git/git.hash index e02fd0d181..40cd8a169f 100644 --- a/package/git/git.hash +++ b/package/git/git.hash @@ -1,4 +1,4 @@ # From: https://www.kernel.org/pub/software/scm/git/sha256sums.asc -sha256 159e4b599f8af4612e70b666600a3139541f8bacc18124daf2cbe8d1b934f29f git-2.22.0.tar.xz +sha256 9f71d61973626d8b28c4cdf8e2484b4bf13870ed643fed982d68b2cfd754371b git-2.24.0.tar.xz sha256 5b2198d1645f767585e8a88ac0499b04472164c0d2da22e75ecf97ef443ab32e COPYING sha256 1922f45d2c49e390032c9c0ba6d7cac904087f7cec51af30c2b2ad022ce0e76a LGPL-2.1 diff --git a/package/git/git.mk b/package/git/git.mk index fdcb9aa54d..4fec24bf27 100644 --- a/package/git/git.mk +++ b/package/git/git.mk @@ -4,7 +4,7 @@ # ################################################################################ -GIT_VERSION = 2.22.0 +GIT_VERSION = 2.24.0 GIT_SOURCE = git-$(GIT_VERSION).tar.xz GIT_SITE = $(BR2_KERNEL_MIRROR)/software/scm/git GIT_LICENSE = GPL-2.0, LGPL-2.1+ diff --git a/package/glibc/Config.in b/package/glibc/Config.in index 7821251087..b8c2573d96 100644 --- a/package/glibc/Config.in +++ b/package/glibc/Config.in @@ -8,3 +8,13 @@ config BR2_PACKAGE_GLIBC help https://www.gnu.org/software/libc/ endif + +config BR2_PACKAGE_GLIBC_UTILS + bool "Install glibc utilities" + depends on BR2_PACKAGE_BASH + help + Enabling this option will compile and install the getconf, + ldconfig, ldd and locale glibc utilities for the target. + +comment "glibc utilities need bash" + depends on !BR2_PACKAGE_BASH diff --git a/package/glibc/glibc.mk b/package/glibc/glibc.mk index fd25162920..8eafa55ae1 100644 --- a/package/glibc/glibc.mk +++ b/package/glibc/glibc.mk @@ -143,10 +143,24 @@ ifeq ($(BR2_PACKAGE_GDB),y) GLIBC_LIBS_LIB += libthread_db.so.* endif +ifeq ($(BR2_PACKAGE_GLIBC_UTILS),y) +GLIBC_TARGET_UTILS_USR_BIN = posix/getconf elf/ldd +GLIBC_TARGET_UTILS_SBIN = elf/ldconfig +ifeq ($(BR2_SYSTEM_ENABLE_NLS),y) +GLIBC_TARGET_UTILS_USR_BIN += locale/locale +endif +endif + define GLIBC_INSTALL_TARGET_CMDS for libpattern in $(GLIBC_LIBS_LIB); do \ $(call copy_toolchain_lib_root,$$libpattern) ; \ done + $(foreach util,$(GLIBC_TARGET_UTILS_USR_BIN), \ + $(INSTALL) -D -m 0755 $(@D)/build/$(util) $(TARGET_DIR)/usr/bin/$(notdir $(util)) + ) + $(foreach util,$(GLIBC_TARGET_UTILS_SBIN), \ + $(INSTALL) -D -m 0755 $(@D)/build/$(util) $(TARGET_DIR)/sbin/$(notdir $(util)) + ) endef $(eval $(autotools-package)) diff --git a/package/iproute2/iproute2.hash b/package/iproute2/iproute2.hash index d130466440..41588488e6 100644 --- a/package/iproute2/iproute2.hash +++ b/package/iproute2/iproute2.hash @@ -1,3 +1,3 @@ # From https://kernel.org/pub/linux/utils/net/iproute2/sha256sums.asc -sha256 cb1c1e45993a3bd2438543fd4332d70f1726a6e6ff97dc613a8258c993117b3f iproute2-5.3.0.tar.xz +sha256 fe97aa60a0d4c5ac830be18937e18dc3400ca713a33a89ad896ff1e3d46086ae iproute2-5.4.0.tar.xz sha256 e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb4 COPYING diff --git a/package/iproute2/iproute2.mk b/package/iproute2/iproute2.mk index 0efd4e62d3..6dc3fbd9c0 100644 --- a/package/iproute2/iproute2.mk +++ b/package/iproute2/iproute2.mk @@ -4,7 +4,7 @@ # ################################################################################ -IPROUTE2_VERSION = 5.3.0 +IPROUTE2_VERSION = 5.4.0 IPROUTE2_SOURCE = iproute2-$(IPROUTE2_VERSION).tar.xz IPROUTE2_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/net/iproute2 IPROUTE2_DEPENDENCIES = host-bison host-flex host-pkgconf \ diff --git a/package/ipset/ipset.hash b/package/ipset/ipset.hash index 7405accd1a..25c0e69fe3 100644 --- a/package/ipset/ipset.hash +++ b/package/ipset/ipset.hash @@ -1,6 +1,6 @@ -# From http://ipset.netfilter.org/ipset-7.2.tar.bz2.md5sum.txt -md5 9eef4a237f9ccec48744836ee1497dba ipset-7.2.tar.bz2 +# From http://ipset.netfilter.org/ipset-7.4.tar.bz2.md5sum.txt +md5 f9dda6f2fc3bb941e0ca3a6c292baf2c ipset-7.4.tar.bz2 # Calculated based on the hash above -sha256 2e13384534669edc85ca6ab418c59429d5296132c5c27c44479d4c0a59434618 ipset-7.2.tar.bz2 +sha256 4a974176e57fe4b7e2984abb231c4a18af2291bdc41536ef64e4b8ec4d4a1884 ipset-7.4.tar.bz2 # Locally calculated sha256 231f7edcc7352d7734a96eef0b8030f77982678c516876fcb81e25b32d68564c COPYING diff --git a/package/ipset/ipset.mk b/package/ipset/ipset.mk index b8ba932d29..ab3fb85fe6 100644 --- a/package/ipset/ipset.mk +++ b/package/ipset/ipset.mk @@ -4,7 +4,7 @@ # ################################################################################ -IPSET_VERSION = 7.2 +IPSET_VERSION = 7.4 IPSET_SOURCE = ipset-$(IPSET_VERSION).tar.bz2 IPSET_SITE = http://ipset.netfilter.org IPSET_DEPENDENCIES = libmnl host-pkgconf diff --git a/package/irqbalance/irqbalance.hash b/package/irqbalance/irqbalance.hash index 3aba2e7dba..2e7cf49c25 100644 --- a/package/irqbalance/irqbalance.hash +++ b/package/irqbalance/irqbalance.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 3318eddc03782cfdad22b20eff18eaf378c498c5de286e8cbaa5521ddf4f810b irqbalance-1.5.0.tar.gz +sha256 5ace9dd69d5190e24ee34210c3131333e9963e3ba649bf9237eabb4313c300d2 irqbalance-1.6.0.tar.gz sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/irqbalance/irqbalance.mk b/package/irqbalance/irqbalance.mk index 8e550df3bf..b01eba96c8 100644 --- a/package/irqbalance/irqbalance.mk +++ b/package/irqbalance/irqbalance.mk @@ -4,7 +4,7 @@ # ################################################################################ -IRQBALANCE_VERSION = 1.5.0 +IRQBALANCE_VERSION = 1.6.0 IRQBALANCE_SITE = $(call github,irqbalance,irqbalance,v$(IRQBALANCE_VERSION)) IRQBALANCE_LICENSE = GPL-2.0 IRQBALANCE_LICENSE_FILES = COPYING diff --git a/package/libargon2/0001-libargon2-dont-fail-on-existing-symlink.patch b/package/libargon2/0001-libargon2-dont-fail-on-existing-symlink.patch new file mode 100644 index 0000000000..43a6deb9f5 --- /dev/null +++ b/package/libargon2/0001-libargon2-dont-fail-on-existing-symlink.patch @@ -0,0 +1,23 @@ +From b997b9e7d4744020409223afddc7299a771eb52d Mon Sep 17 00:00:00 2001 +From: Pascal de Bruijn +Date: Thu, 7 Nov 2019 09:55:32 +0100 +Subject: [PATCH] Don't fail on existing symlink + +Signed-off-by: Pascal de Bruijn +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 837e7f7..7c116c9 100644 +--- a/Makefile ++++ b/Makefile +@@ -238,7 +238,7 @@ install: $(RUN) libs + $(INSTALL) -d $(INST_LIBRARY) + $(INSTALL) -m 0644 $(LIBRARIES) $(INST_LIBRARY) + ifdef LINKED_LIB_SH +- cd $(INST_LIBRARY) && ln -s $(notdir $(LIB_SH) $(LINKED_LIB_SH)) ++ cd $(INST_LIBRARY) && ln -sf $(notdir $(LIB_SH) $(LINKED_LIB_SH)) + endif + $(INSTALL) -d $(INST_BINARY) + $(INSTALL) $(RUN) $(INST_BINARY) diff --git a/package/libargon2/Config.in b/package/libargon2/Config.in new file mode 100644 index 0000000000..6bba74cfb2 --- /dev/null +++ b/package/libargon2/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_LIBARGON2 + bool "libargon2" + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + help + A modern password hashing algorithm + + https://password-hashing.net/#argon2 + +comment "libargon needs a toolchain w/ dynamic library" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS diff --git a/package/libargon2/libargon2.hash b/package/libargon2/libargon2.hash new file mode 100644 index 0000000000..c524b42718 --- /dev/null +++ b/package/libargon2/libargon2.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 eaea0172c1f4ee4550d1b6c9ce01aab8d1ab66b4207776aa67991eb5872fdcd8 libargon2-20171227.tar.gz +sha256 220f8736a89ff51c92ef3d497f413b48e6cf1df3d6278bc909c6308c78e1718e LICENSE diff --git a/package/libargon2/libargon2.mk b/package/libargon2/libargon2.mk new file mode 100644 index 0000000000..e10343a15e --- /dev/null +++ b/package/libargon2/libargon2.mk @@ -0,0 +1,40 @@ +################################################################################ +# +# libargon2 +# +################################################################################ + +# 20190702 is not recognized by php7.3 +LIBARGON2_VERSION = 20171227 +LIBARGON2_SITE = $(call github,P-H-C,phc-winner-argon2,$(LIBARGON2_VERSION)) +LIBARGON2_LICENSE = CC0-1.0 or Apache-2.0 +LIBARGON2_LICENSE_FILES = LICENSE +LIBARGON2_INSTALL_STAGING = YES + +# GCC_TARGET_ARCH is not defined for all architectures, but libargon2 +# only uses it to detect if some x86 optimizations can be used, and +# GCC_TARGET_ARCH is defined on x86. +ifneq ($(GCC_TARGET_ARCH),) +LIBARGON2_OPTS = OPTTARGET=$(GCC_TARGET_ARCH) +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) +LIBARGON2_OPTS += NO_THREADS=1 +endif + +define LIBARGON2_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + $(LIBARGON2_OPTS) +endef + +define LIBARGON2_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + DESTDIR=$(STAGING_DIR) install +endef + +define LIBARGON2_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + DESTDIR=$(TARGET_DIR) install +endef + +$(eval $(generic-package)) diff --git a/package/libcgi/0001-CMakeLists.txt-libcgi-is-in-C.patch b/package/libcgi/0001-CMakeLists.txt-libcgi-is-in-C.patch deleted file mode 100644 index 682bfe5d52..0000000000 --- a/package/libcgi/0001-CMakeLists.txt-libcgi-is-in-C.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 043f7a470e32c036f0fe933ec5cd2003087d6b2e Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Sat, 2 Sep 2017 23:50:42 +0200 -Subject: [PATCH] CMakeLists.txt: libcgi is in C - -By default, CMake checks that both C and C++ compilers are -available. However, since libcgi is only C, there's no need for a C++ -compiler check. Therefore, this commit adjusts the project() variable -definition to only require C language support. - -Signed-off-by: Thomas Petazzoni -Submitted-upstream: https://github.com/rafaelsteil/libcgi/pull/38 ---- - CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index f98a99d..c599ca9 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -3,7 +3,7 @@ - # - cmake_minimum_required(VERSION 2.8.8) - --project(cgi) -+project(cgi C) - string(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UC) - string(TOLOWER ${PROJECT_NAME} PROJECT_NAME_LC) - set(LIBPREFIX ${PROJECT_NAME}) --- -2.13.5 - diff --git a/package/libcgi/0002-CMakeLists.txt-don-t-force-the-build-of-a-shared-lib.patch b/package/libcgi/0002-CMakeLists.txt-don-t-force-the-build-of-a-shared-lib.patch deleted file mode 100644 index ebf91b0a62..0000000000 --- a/package/libcgi/0002-CMakeLists.txt-don-t-force-the-build-of-a-shared-lib.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 9bb9d67da0e4faf4bb3a47786dee127e66a49ed0 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Sun, 3 Sep 2017 15:22:30 +0200 -Subject: [PATCH] CMakeLists.txt: don't force the build of a shared library - -Building a shared library doesn't work on all platforms, so instead, -let CMake rely on the standard BUILD_SHARED_LIBS variable to decide -whether a static or shared library should be built. - -Signed-off-by: Thomas Petazzoni -Submitted-upstream: https://github.com/rafaelsteil/libcgi/pull/39 ---- - src/CMakeLists.txt | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index f32d22e..3bde408 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -23,17 +23,18 @@ set(CGI_SRC - ) - - # create binary --add_library(${PROJECT_NAME}-shared SHARED ${CGI_SRC}) --set_target_properties(${PROJECT_NAME}-shared PROPERTIES -+add_library(${PROJECT_NAME} ${CGI_SRC}) -+set_target_properties(${PROJECT_NAME} PROPERTIES - OUTPUT_NAME ${PROJECT_NAME} - SOVERSION ${PROJECT_VERSION_MAJOR} - VERSION ${PROJECT_VERSION} - ) - - # install binary --install(TARGETS ${PROJECT_NAME}-shared -+install(TARGETS ${PROJECT_NAME} - EXPORT ${PROJECT_NAME}-targets - LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" -+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" - ) - - # install cmake targets --- -2.13.5 - diff --git a/package/libcgi/libcgi.hash b/package/libcgi/libcgi.hash index f071cc0aea..8760f91cf5 100644 --- a/package/libcgi/libcgi.hash +++ b/package/libcgi/libcgi.hash @@ -1,5 +1,8 @@ -# From https://github.com/rafaelsteil/libcgi/releases/download/v1.1/libcgi-1.1.tar.gz.sha256sum -sha256 128445f2f828e84905d51bd53d11e2e08c489df3a07225ff9f198c1318092fe6 libcgi-1.1.tar.gz +# From https://github.com/rafaelsteil/libcgi/releases/download/v1.3.0/libcgi-1.3.0.tar.gz.md5 +md5 6efdc968bdf986832b7e220d1b914e57 libcgi-1.3.0.tar.gz +# From https://github.com/rafaelsteil/libcgi/releases/download/v1.3.0/libcgi-1.3.0.tar.gz.sha256 +sha256 d932f380b1a5dbfbddffaa76fac71bf505a9585d441c9ae86bfbf76033d9d8df libcgi-1.3.0.tar.gz # Hash for license file: -sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LICENSES/LGPL-2.1.txt +sha256 f32c31e26ec840753a8cd47cd2681e48be4cee853212d16a4b1d85ac4d677669 LICENSES/MIT.txt diff --git a/package/libcgi/libcgi.mk b/package/libcgi/libcgi.mk index d1e403fdf1..22163310d3 100644 --- a/package/libcgi/libcgi.mk +++ b/package/libcgi/libcgi.mk @@ -4,11 +4,11 @@ # ################################################################################ -LIBCGI_VERSION = 1.1 +LIBCGI_VERSION = 1.3.0 LIBCGI_SITE = https://github.com/rafaelsteil/libcgi/releases/download/v$(LIBCGI_VERSION) LIBCGI_INSTALL_STAGING = YES -LIBCGI_LICENSE = LGPL-2.1+ -LIBCGI_LICENSE_FILES = COPYING +LIBCGI_LICENSE = LGPL-2.1+, MIT (base64.c) +LIBCGI_LICENSE_FILES = LICENSES/LGPL-2.1.txt LICENSES/MIT.txt $(eval $(cmake-package)) diff --git a/package/libcurl/libcurl.hash b/package/libcurl/libcurl.hash index 8f2d0c058c..b46ee52d04 100644 --- a/package/libcurl/libcurl.hash +++ b/package/libcurl/libcurl.hash @@ -1,5 +1,3 @@ -# Locally calculated after checking pgp signature -# https://curl.haxx.se/download/curl-7.66.0.tar.xz.asc -# with key 27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2 -sha256 dbb48088193016d079b97c5c3efde8efa56ada2ebf336e8a97d04eb8e2ed98c1 curl-7.66.0.tar.xz +# Locally calculated +sha256 f5d2e7320379338c3952dcc7566a140abb49edb575f9f99272455785c40e536c curl-7.67.0.tar.xz sha256 8c8824f50e73a021f5dde1fccbf69685939247399a33a32abab1fa448c9ddabb COPYING diff --git a/package/libcurl/libcurl.mk b/package/libcurl/libcurl.mk index 8384210d48..373befae13 100644 --- a/package/libcurl/libcurl.mk +++ b/package/libcurl/libcurl.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBCURL_VERSION = 7.66.0 +LIBCURL_VERSION = 7.67.0 LIBCURL_SOURCE = curl-$(LIBCURL_VERSION).tar.xz LIBCURL_SITE = https://curl.haxx.se/download LIBCURL_DEPENDENCIES = host-pkgconf \ diff --git a/package/libedit/libedit.hash b/package/libedit/libedit.hash index 3a5cdbac95..7b84909d8b 100644 --- a/package/libedit/libedit.hash +++ b/package/libedit/libedit.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 c41bea8fd140fb57ba67a98ec1d8ae0b8ffa82f4aba9c35a87e5a9499e653116 libedit-20180525-3.1.tar.gz +sha256 ac8f0f51c1cf65492e4d1e3ed2be360bda41e54633444666422fbf393bba1bae libedit-20190324-3.1.tar.gz sha256 9da6c9c74987a36c84302982799d17d2f748ba1c1c0c471425716173c1d07649 COPYING diff --git a/package/libedit/libedit.mk b/package/libedit/libedit.mk index a4b32e05eb..0a9b28afa7 100644 --- a/package/libedit/libedit.mk +++ b/package/libedit/libedit.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBEDIT_VERSION = 20180525-3.1 +LIBEDIT_VERSION = 20190324-3.1 LIBEDIT_SITE = http://www.thrysoee.dk/editline LIBEDIT_INSTALL_STAGING = YES LIBEDIT_DEPENDENCIES = ncurses diff --git a/package/libffi/libffi.hash b/package/libffi/libffi.hash index d8d2d2629a..496ae0d904 100644 --- a/package/libffi/libffi.hash +++ b/package/libffi/libffi.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 db41cfb9ec8052fcd116a94c12237303c4447af4844d50e4fea7163661e31743 libffi-3.3-rc0.tar.gz +sha256 3f2f86094f5cf4c36cfe850d2fe029d01f5c2c2296619407c8ba0d8207da9a6b libffi-3.3.tar.gz # License files, locally calculated -sha256 0f4d7a0bfb83c37465d42dc305f124189196cc0cc2cc8d6f8461103682aebbc5 LICENSE +sha256 deaf3a42effb551a5b140fa9afefed183a27f1341c6d1bf430d106a5e6931fc0 LICENSE diff --git a/package/libffi/libffi.mk b/package/libffi/libffi.mk index fb8e18a456..722a03dca0 100644 --- a/package/libffi/libffi.mk +++ b/package/libffi/libffi.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBFFI_VERSION = 3.3-rc0 +LIBFFI_VERSION = 3.3 LIBFFI_SITE = $(call github,libffi,libffi,v$(LIBFFI_VERSION)) LIBFFI_LICENSE = MIT LIBFFI_LICENSE_FILES = LICENSE diff --git a/package/libglib2/0002-add-option-to-build-tests.patch b/package/libglib2/0002-add-option-to-build-tests.patch deleted file mode 100644 index 5caaaff6b2..0000000000 --- a/package/libglib2/0002-add-option-to-build-tests.patch +++ /dev/null @@ -1,94 +0,0 @@ -From cdccbc6ec36243463613cb32d7058c26c3c51e16 Mon Sep 17 00:00:00 2001 -From: Adam Duskett -Date: Wed, 18 Sep 2019 09:50:00 -0700 -Subject: [PATCH] add option to build tests. - -Upstream won't build tests when cross-compiling. However; this means still -building the tests during a host build. Building the tests causes build -failures on older distributions such as CentOS 6 and Debian 7 because the -command `objcopy --add-symbol` is used when building the test -"test_resources2," which is not available with the older version of objcopy -provided by the distributions. - -Instead, add the option 'tests' which when set to false, enforces not -building any tests, even when building the host variant. - -Signed-off-by: Adam Duskett ---- - gio/meson.build | 1 - - glib/meson.build | 3 +- - gobject/meson.build | 1 - - meson.build | 2 +- - meson_options.txt | 5 +++++ - 5 files changed, 6 insertions(+), 5 deletions(-) - -diff --git a/gio/meson.build b/gio/meson.build -index 9a9e621..6adc014 100644 ---- a/gio/meson.build -+++ b/gio/meson.build -@@ -1010,7 +1010,6 @@ endif - - subdir('fam') - # Don’t build the tests unless we can run them (either natively or in an exe wrapper) --build_tests = not meson.is_cross_build() or (meson.is_cross_build() and meson.has_exe_wrapper()) - if build_tests - subdir('tests') - endif -diff --git a/glib/meson.build b/glib/meson.build -index 91a48f1..230d562 100644 ---- a/glib/meson.build -+++ b/glib/meson.build -@@ -458,8 +458,7 @@ if enable_systemtap - ) - endif - --# Don’t build the tests unless we can run them (either natively or in an exe wrapper) --build_tests = not meson.is_cross_build() or (meson.is_cross_build() and meson.has_exe_wrapper()) -+build_tests = get_option('tests') - if build_tests - subdir('tests') - endif -diff --git a/gobject/meson.build b/gobject/meson.build -index c7805c5..fb5874d 100644 ---- a/gobject/meson.build -+++ b/gobject/meson.build -@@ -166,7 +166,6 @@ if enable_systemtap - endif - - # Don’t build the tests unless we can run them (either natively or in an exe wrapper) --build_tests = not meson.is_cross_build() or (meson.is_cross_build() and meson.has_exe_wrapper()) - if build_tests - subdir('tests') - endif -diff --git a/meson.build b/meson.build -index 717d1bc..3124f28 100644 ---- a/meson.build -+++ b/meson.build -@@ -2098,7 +2098,7 @@ subdir('gmodule') - subdir('gio') - subdir('fuzzing') - # Don’t build the tests unless we can run them (either natively or in an exe wrapper) --build_tests = not meson.is_cross_build() or (meson.is_cross_build() and meson.has_exe_wrapper()) -+build_tests = get_option('tests') - if build_tests - subdir('tests') - endif -diff --git a/meson_options.txt b/meson_options.txt -index 2c831e3..90468a7 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -90,6 +90,11 @@ option('nls', - yield: true, - description : 'Enable native language support (translations)') - -+option('tests', -+ type : 'boolean', -+ value : false, -+ description : 'Build tests') -+ - option('oss_fuzz', - type : 'feature', - value : 'disabled', --- -2.21.0 - diff --git a/package/libglib2/0002-allow-explicit-disabling-of-tests.patch b/package/libglib2/0002-allow-explicit-disabling-of-tests.patch new file mode 100644 index 0000000000..d6c62499c3 --- /dev/null +++ b/package/libglib2/0002-allow-explicit-disabling-of-tests.patch @@ -0,0 +1,37 @@ +From cdccbc6ec36243463613cb32d7058c26c3c51e16 Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Wed, 18 Sep 2019 09:50:00 -0700 +Subject: [PATCH] allow explicit disabling of tests + +Upstream won't build tests when cross-compiling. However; this means still +building the tests during a host build. Building the tests causes build +failures on older distributions such as CentOS 6 and Debian 7 because the +command `objcopy --add-symbol` is used when building the test +"test_resources2," which is not available with the older version of objcopy +provided by the distributions. + +Instead, remove the conditional checks which set build_tests and only check if +installed_tests_enabled is passed. + +Signed-off-by: Adam Duskett +Refresh for 2.62.2 +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 99806d0..3206603 100644 +--- a/meson.build ++++ b/meson.build +@@ -77,7 +77,7 @@ installed_tests_template = files('template.test.in') + installed_tests_template_tap = files('template-tap.test.in') + + # Don’t build the tests unless we can run them (either natively, in an exe wrapper, or by installing them for later use) +-build_tests = not meson.is_cross_build() or (meson.is_cross_build() and meson.has_exe_wrapper()) or installed_tests_enabled ++build_tests = installed_tests_enabled + + add_project_arguments('-D_GNU_SOURCE', language: 'c') + +-- +2.23.0 + diff --git a/package/libglib2/0003-remove-cpp-requirement.patch b/package/libglib2/0003-remove-cpp-requirement.patch index 31a941bc7c..a96a94043c 100644 --- a/package/libglib2/0003-remove-cpp-requirement.patch +++ b/package/libglib2/0003-remove-cpp-requirement.patch @@ -12,9 +12,9 @@ Upstream status: Denied (Buildroot specific) https://gitlab.gnome.org/GNOME/glib/issues/1748 --- glib/glibconfig.h.in | 1 - - meson.build | 18 +----------------- + meson.build | 16 ---------------- tests/meson.build | 5 ----- - 3 files changed, 1 insertion(+), 23 deletions(-) + 3 files changed, 22 deletions(-) diff --git a/glib/glibconfig.h.in b/glib/glibconfig.h.in index 7ef8c48..128e65d 100644 @@ -29,15 +29,9 @@ index 7ef8c48..128e65d 100644 /* gcc-2.95.x supports both gnu style and ISO varargs, but if -ansi * is passed ISO vararg support is turned off, and there is no work diff --git a/meson.build b/meson.build -index 3124f28..642afb8 100644 +index 83774d0..99806d0 100644 --- a/meson.build +++ b/meson.build -@@ -1,4 +1,4 @@ --project('glib', 'c', 'cpp', -+project('glib', 'c', - version : '2.62.0', - # NOTE: We keep this pinned at 0.49 because that's what Debian 10 ships - meson_version : '>= 0.49.2', @@ -10,7 +10,6 @@ project('glib', 'c', 'cpp', ) @@ -46,7 +40,7 @@ index 3124f28..642afb8 100644 cc_can_run = not meson.is_cross_build() or meson.has_exe_wrapper() -@@ -1487,20 +1486,6 @@ if g_have_iso_c_varargs +@@ -1490,20 +1489,6 @@ if g_have_iso_c_varargs #endif''') endif @@ -67,21 +61,21 @@ index 3124f28..642afb8 100644 g_have_gnuc_varargs = cc.compiles(''' void some_func (void) { int a(int p1, int p2, int p3); -@@ -2096,7 +2081,6 @@ subdir('gobject') +@@ -2101,7 +2086,6 @@ subdir('gobject') subdir('gthread') subdir('gmodule') subdir('gio') -subdir('fuzzing') - # Don’t build the tests unless we can run them (either natively or in an exe wrapper) - build_tests = get_option('tests') if build_tests + subdir('tests') + endif diff --git a/tests/meson.build b/tests/meson.build -index ce30442..2b31427 100644 +index e4ea226..7fd974c 100644 --- a/tests/meson.build +++ b/tests/meson.build -@@ -48,11 +48,6 @@ tests = { - 'dependencies' : [libgmodule_dep], - 'export_dynamic' : true, +@@ -56,11 +56,6 @@ tests = { + 'source': 'module-test.c', + 'c_args': ['-DMODULE_TYPE="plugin"'], }, - 'cxx-test' : { - 'source' : 'cxx-test.cpp', @@ -92,5 +86,5 @@ index ce30442..2b31427 100644 test_extra_programs = { -- -2.21.0 +2.23.0 diff --git a/package/libglib2/0004-Add-Wno-format-nonliteral-to-compiler-arguments.patch b/package/libglib2/0004-Add-Wno-format-nonliteral-to-compiler-arguments.patch index c6ae49fd39..f792ceba3f 100644 --- a/package/libglib2/0004-Add-Wno-format-nonliteral-to-compiler-arguments.patch +++ b/package/libglib2/0004-Add-Wno-format-nonliteral-to-compiler-arguments.patch @@ -15,7 +15,7 @@ diff --git a/meson.build b/meson.build index 3c615b7..7cae4e8 100644 --- a/meson.build +++ b/meson.build -@@ -369,6 +369,7 @@ if cc.get_id() == 'gcc' or cc.get_id() == 'clang' +@@ -372,6 +372,7 @@ if cc.get_id() == 'gcc' or cc.get_id() == 'clang' '-Wno-cast-function-type', + '-Wno-format-nonliteral', # Due to function casts through (void*) we cannot support -Wpedantic: diff --git a/package/libglib2/libglib2.hash b/package/libglib2/libglib2.hash index facb44ed34..e2293d6ca8 100644 --- a/package/libglib2/libglib2.hash +++ b/package/libglib2/libglib2.hash @@ -1,4 +1,4 @@ -# https://download.gnome.org/sources/glib/2.60/glib-2.60.6.sha256sum -sha256 6c257205a0a343b662c9961a58bb4ba1f1e31c82f5c6b909ec741194abc3da10 glib-2.62.0.tar.xz +# https://download.gnome.org/sources/glib/2.62/glib-2.62.3.sha256sum +sha256 4400adc9f0d3ffcfe8e84225210370ce3f9853afb81812ddadb685325aa655c4 glib-2.62.3.tar.xz # License files, locally calculated sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/libglib2/libglib2.mk b/package/libglib2/libglib2.mk index 73ea27f4d1..9aaace2963 100644 --- a/package/libglib2/libglib2.mk +++ b/package/libglib2/libglib2.mk @@ -5,7 +5,7 @@ ################################################################################ LIBGLIB2_VERSION_MAJOR = 2.62 -LIBGLIB2_VERSION = $(LIBGLIB2_VERSION_MAJOR).0 +LIBGLIB2_VERSION = $(LIBGLIB2_VERSION_MAJOR).3 LIBGLIB2_SOURCE = glib-$(LIBGLIB2_VERSION).tar.xz LIBGLIB2_SITE = http://ftp.gnome.org/pub/gnome/sources/glib/$(LIBGLIB2_VERSION_MAJOR) LIBGLIB2_LICENSE = LGPL-2.1+ @@ -28,7 +28,6 @@ HOST_LIBGLIB2_CONF_OPTS = \ -Dxattr=false \ -Dinternal_pcre=false \ -Dinstalled_tests=false \ - -Dtests=false \ -Doss_fuzz=disabled LIBGLIB2_DEPENDENCIES = \ @@ -50,7 +49,7 @@ HOST_LIBGLIB2_DEPENDENCIES = \ LIBGLIB2_CONF_OPTS = \ -Dinternal_pcre=false \ -Dgio_module_dir=/usr/lib/gio/modules \ - -Dtests=false \ + -Dinstalled_tests=false \ -Doss_fuzz=disabled ifneq ($(BR2_ENABLE_LOCALE),y) diff --git a/package/libgudev/libgudev.hash b/package/libgudev/libgudev.hash index 138ae93d71..bee394601e 100644 --- a/package/libgudev/libgudev.hash +++ b/package/libgudev/libgudev.hash @@ -1,5 +1,5 @@ -# From: http://ftp.gnome.org/pub/GNOME/sources/libgudev/232/libgudev-232.sha256sum -sha256 ee4cb2b9c573cdf354f6ed744f01b111d4b5bed3503ffa956cefff50489c7860 libgudev-232.tar.xz +# From http://ftp.gnome.org/pub/GNOME/sources/libgudev/233/libgudev-233.sha256sum +sha256 587c4970eb23f4e2deee2cb1fb7838c94a78c578f41ce12cac0a3f4a80dabb03 libgudev-233.tar.xz # Hash for license file: sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/libgudev/libgudev.mk b/package/libgudev/libgudev.mk index 50432c461e..63d592f9ac 100644 --- a/package/libgudev/libgudev.mk +++ b/package/libgudev/libgudev.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBGUDEV_VERSION = 232 +LIBGUDEV_VERSION = 233 LIBGUDEV_SOURCE = libgudev-$(LIBGUDEV_VERSION).tar.xz LIBGUDEV_SITE = http://ftp.gnome.org/pub/GNOME/sources/libgudev/$(LIBGUDEV_VERSION) LIBGUDEV_INSTALL_STAGING = YES diff --git a/package/libidn2/libidn2.hash b/package/libidn2/libidn2.hash index 3dae7f7590..2d2fcdfd15 100644 --- a/package/libidn2/libidn2.hash +++ b/package/libidn2/libidn2.hash @@ -1,5 +1,5 @@ # Calculated locally after checking signature -sha256 fc734732b506d878753ec6606982bf7b936e868c25c30ddb0d83f7d7056381fe libidn2-2.2.0.tar.gz +sha256 e1cb1db3d2e249a6a3eb6f0946777c2e892d5c5dc7bd91c74394fc3a01cab8b5 libidn2-2.3.0.tar.gz # Hash for license files: sha256 73483f797a83373fca1b968c11785b98c4fc4803cdc7d3210811ca8b075d6d76 COPYING diff --git a/package/libidn2/libidn2.mk b/package/libidn2/libidn2.mk index 5e05634942..3f87b9bb8c 100644 --- a/package/libidn2/libidn2.mk +++ b/package/libidn2/libidn2.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBIDN2_VERSION = 2.2.0 +LIBIDN2_VERSION = 2.3.0 LIBIDN2_SITE = $(BR2_GNU_MIRROR)/libidn LIBIDN2_LICENSE = GPL-2.0+ or LGPL-3.0+ (library) LIBIDN2_LICENSE_FILES = COPYING COPYINGv2 COPYING.LESSERv3 COPYING.unicode diff --git a/package/libkcapi/0001-apps-kcapi-hasher.c-fix-build-with-gcc-8.2.x.patch b/package/libkcapi/0001-apps-kcapi-hasher.c-fix-build-with-gcc-8.2.x.patch deleted file mode 100644 index a4c352d30c..0000000000 --- a/package/libkcapi/0001-apps-kcapi-hasher.c-fix-build-with-gcc-8.2.x.patch +++ /dev/null @@ -1,54 +0,0 @@ -From dcb02c1639c2ff05938c01eaa41286a2e2f8d698 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sun, 20 Jan 2019 20:04:13 +0100 -Subject: [PATCH] apps/kcapi-hasher.c: fix build with gcc 8.2.x - -Fixes: - - http://autobuild.buildroot.org/results/8355bc42238e885f7f11ed3d9d37fc55ebdead2b - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/smuellerDD/libkcapi/pull/76] ---- - apps/kcapi-hasher.c | 12 ++++++++---- - 1 file changed, 8 insertions(+), 4 deletions(-) - -diff --git a/apps/kcapi-hasher.c b/apps/kcapi-hasher.c -index d6be685..7172b12 100644 ---- a/apps/kcapi-hasher.c -+++ b/apps/kcapi-hasher.c -@@ -357,16 +357,20 @@ out: - } - - /* -- * GCC v8.1.0 introduced -Wstringop-truncation but it is not smart enough to -- * find that cursor string will be NULL-terminated after all paste() calls and -- * warns with: -+ * GCC v8.1.0 introduced -Wstringop-truncation and GCC v8.2.0 introduced -+ * -Wstringop-overflow but it is not smart enough to find that cursor string -+ * will be NULL-terminated after all paste() calls and warns with: - * error: 'strncpy' destination unchanged after copying no bytes [-Werror=stringop-truncation] - * error: 'strncpy' output truncated before terminating nul copying 5 bytes from a string of the same length [-Werror=stringop-truncation] -+ * error: 'strncpy' specified bound depends on the length of the source argument [-Werror=stringop-overflow=] - */ - #pragma GCC diagnostic push - #if GCC_VERSION >= 80100 - #pragma GCC diagnostic ignored "-Wstringop-truncation" - #endif -+#if GCC_VERSION >= 80200 -+#pragma GCC diagnostic ignored "-Wstringop-overflow" -+#endif - static char *paste(char *dst, const char *src, size_t size) - { - strncpy(dst, src, size); -@@ -417,7 +421,7 @@ static char *get_hmac_file(const char *filename, const char *checkdir) - strncpy(cursor, "\0", 1); - return checkfile; - } --#pragma GCC diagnostic pop /* -Wstringop-truncation */ -+#pragma GCC diagnostic pop /* -Wstringop-truncation -Wstringop-overflow */ - - static int hash_files(const struct hash_params *params, - char *filenames[], uint32_t files, --- -2.14.1 - diff --git a/package/libkcapi/libkcapi.hash b/package/libkcapi/libkcapi.hash index a9b42bf6e2..b3c2c749c3 100644 --- a/package/libkcapi/libkcapi.hash +++ b/package/libkcapi/libkcapi.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 9197f35aca270f97c544fe94dab379b44a2879a07eb78acd5d02c55924902763 libkcapi-1.1.4.tar.xz +sha256 8a08dcbb4d05ede4357cdc9d61c7f2a7f2cd96b7ce2eb41b28e45b2e378267ad libkcapi-1.1.5.tar.xz sha256 c6b8402a68999b0f84560ab43cdf60f9ff33c4a9a8ced6a40db9d3b787ba5b4a COPYING sha256 e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb4 COPYING.gplv2 sha256 13aa749a5b0a454917a944ed8fffc530b784f5ead522b1aacaf4ec8aa55a6239 COPYING.bsd diff --git a/package/libkcapi/libkcapi.mk b/package/libkcapi/libkcapi.mk index dceacc0016..60b3f94388 100644 --- a/package/libkcapi/libkcapi.mk +++ b/package/libkcapi/libkcapi.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBKCAPI_VERSION = 1.1.4 +LIBKCAPI_VERSION = 1.1.5 LIBKCAPI_SOURCE = libkcapi-$(LIBKCAPI_VERSION).tar.xz LIBKCAPI_SITE = http://www.chronox.de/libkcapi LIBKCAPI_AUTORECONF = YES diff --git a/package/libmaxminddb/0001-Add-disable-binaries.patch b/package/libmaxminddb/0001-Add-disable-binaries.patch deleted file mode 100644 index 0053cace71..0000000000 --- a/package/libmaxminddb/0001-Add-disable-binaries.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 501f85fa729d08b90f0e1ff6f9378a0864f722a7 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Fri, 2 Feb 2018 13:19:18 +0100 -Subject: [PATCH] Add --disable-binaries - -mmdblookup now depends on pthread.h which can be disabled on some -toolchains so add an option to be able to compile libmaxminddb without -this binary - -Signed-off-by: Fabrice Fontaine ---- - Makefile.am | 6 +++++- - configure.ac | 6 ++++++ - 2 files changed, 11 insertions(+), 1 deletion(-) - -diff --git a/Makefile.am b/Makefile.am -index cebcd31..cfbfd77 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -4,8 +4,12 @@ include_HEADERS = include/maxminddb.h - nodist_include_HEADERS = include/maxminddb_config.h - - SUBDIRS = \ -- src \ -+ src -+ -+if BINARIES -+SUBDIRS += \ - bin -+endif - - if TESTS - SUBDIRS += \ -diff --git a/configure.ac b/configure.ac -index c494746..4d1beb4 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -119,6 +119,12 @@ AC_ARG_ENABLE( - esac],[debug=false]) - AM_CONDITIONAL([DEBUG], [test x$debug = xtrue]) - -+AC_ARG_ENABLE([binaries], -+ AS_HELP_STRING([--enable-binaries], [Compilation of binaries code]), -+ [enable_binaries=${enableval}], -+ [enable_binaries=yes]) -+AM_CONDITIONAL([BINARIES], [test "${enable_binaries}" = "yes"]) -+ - AC_ARG_ENABLE([tests], - AS_HELP_STRING([--enable-tests], [Compilation of tests code]), - [enable_tests=${enableval}], --- -2.7.4 - diff --git a/package/libmaxminddb/libmaxminddb.hash b/package/libmaxminddb/libmaxminddb.hash index 073458a351..a3ca682c2a 100644 --- a/package/libmaxminddb/libmaxminddb.hash +++ b/package/libmaxminddb/libmaxminddb.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 c0785521c7e5515f1169db90ed6e51bc2a5a000377d0fbad87e4d5a791a6e364 libmaxminddb-1.3.2.tar.gz +sha256 dd582aa971be23dee960ec33c67fb5fd38affba508e6f00ea75959dbd5aad156 libmaxminddb-1.4.2.tar.gz sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/libmaxminddb/libmaxminddb.mk b/package/libmaxminddb/libmaxminddb.mk index 25d4d3378f..18e2eaee7d 100644 --- a/package/libmaxminddb/libmaxminddb.mk +++ b/package/libmaxminddb/libmaxminddb.mk @@ -4,13 +4,12 @@ # ################################################################################ -LIBMAXMINDDB_VERSION = 1.3.2 -LIBMAXMINDDB_SITE = $(call github,maxmind,libmaxminddb,$(LIBMAXMINDDB_VERSION)) +LIBMAXMINDDB_VERSION = 1.4.2 +LIBMAXMINDDB_SITE = \ + https://github.com/maxmind/libmaxminddb/releases/download/$(LIBMAXMINDDB_VERSION) LIBMAXMINDDB_INSTALL_STAGING = YES LIBMAXMINDDB_LICENSE = Apache-2.0 LIBMAXMINDDB_LICENSE_FILES = LICENSE -# Fetched from Github, with no configure script -LIBMAXMINDDB_AUTORECONF = YES LIBMAXMINDDB_CONF_OPTS = --disable-tests # mmdblookup binary depends on pthreads diff --git a/package/libndp/libndp.hash b/package/libndp/libndp.hash index fd28dce825..8d4b6ef524 100644 --- a/package/libndp/libndp.hash +++ b/package/libndp/libndp.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 565d6c4167f83ec697c762ea002f23e8f0b00828d0749b1ce928f068543e5aad libndp-1.6.tar.gz +sha256 44be73630ee785ed9f571f9aaaeba0e1d375fa337fd841270034c813b5b0e6fd libndp-1.7.tar.gz sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/libndp/libndp.mk b/package/libndp/libndp.mk index 50a1cc9581..3783eb135a 100644 --- a/package/libndp/libndp.mk +++ b/package/libndp/libndp.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNDP_VERSION = 1.6 +LIBNDP_VERSION = 1.7 LIBNDP_SITE = $(call github,jpirko,libndp,v$(LIBNDP_VERSION)) LIBNDP_LICENSE = LGPL-2.1+ LIBNDP_LICENSE_FILES = COPYING diff --git a/package/librsync/0001-CMakeLists-fix-build-with-old-compilers.patch b/package/librsync/0001-CMakeLists-fix-build-with-old-compilers.patch new file mode 100644 index 0000000000..76598c21f1 --- /dev/null +++ b/package/librsync/0001-CMakeLists-fix-build-with-old-compilers.patch @@ -0,0 +1,39 @@ +From 77b78e01f83b65f3c38941f54f71beaaddcb6fc1 Mon Sep 17 00:00:00 2001 +From: Pierre-Jean Texier +Date: Sat, 23 Nov 2019 16:51:46 +0100 +Subject: [PATCH] CMakeLists: fix build with old compilers +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The librsync code uses some C99 constructs, but old compilers such +as gcc 4.7 don't default to -std=c99. This commit makes sure librsync +is built with -std=gnu99. + +Fixes: + +src/rabinkarp.h:82:5: error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode + for (size_t i = len; i; i--) { + ^ +src/rabinkarp.h:82:5: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code + +Signed-off-by: Pierre-Jean Texier +[Upstream status: https://github.com/librsync/librsync/pull/181] +Signed-off-by: Fabrice Fontaine +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index f810061..794d9c0 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -149,7 +149,7 @@ if (CMAKE_C_COMPILER_ID MATCHES "(Clang|Gnu|GNU)") + # TODO: Set for MSVC and other compilers. + # TODO: Set -Werror when the build is clean. + +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall") ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -std=gnu99") + endif() + + site_name(BUILD_HOSTNAME) diff --git a/package/librsync/Config.in b/package/librsync/Config.in index 6957ddcc0e..652f0cb276 100644 --- a/package/librsync/Config.in +++ b/package/librsync/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_LIBRSYNC bool "librsync" - depends on !BR2_STATIC_LIBS select BR2_PACKAGE_ZLIB select BR2_PACKAGE_BZIP2 select BR2_PACKAGE_POPT @@ -10,6 +9,3 @@ config BR2_PACKAGE_LIBRSYNC rsync utility and is used in rproxy. https://github.com/librsync/librsync - -comment "librsync needs a toolchain w/ dynamic library support" - depends on BR2_STATIC_LIBS diff --git a/package/librsync/librsync.hash b/package/librsync/librsync.hash index 95206c39a7..d00e5cd337 100644 --- a/package/librsync/librsync.hash +++ b/package/librsync/librsync.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 f701d2bab3d7471dfea60d29e9251f8bb7567222957f7195af55142cb207c653 librsync-2.1.0.tar.gz +sha256 b5ab8e2092b82b7d7bb9c1dd52e6a77083a89f8ad9b9309da611f490d0b49a71 librsync-2.2.1.tar.gz sha256 5bbcbb737e60fe9deba08ecbd00920cfcc3403ba2e534c64fdeea49d6bb87509 COPYING diff --git a/package/librsync/librsync.mk b/package/librsync/librsync.mk index 4e42f77344..82d9b9fe2e 100644 --- a/package/librsync/librsync.mk +++ b/package/librsync/librsync.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBRSYNC_VERSION = 2.1.0 +LIBRSYNC_VERSION = 2.2.1 LIBRSYNC_SITE = $(call github,librsync,librsync,v$(LIBRSYNC_VERSION)) LIBRSYNC_LICENSE = LGPL-2.1+ LIBRSYNC_LICENSE_FILES = COPYING diff --git a/package/libubootenv/libubootenv.hash b/package/libubootenv/libubootenv.hash index 81f72ad57c..36396ac732 100644 --- a/package/libubootenv/libubootenv.hash +++ b/package/libubootenv/libubootenv.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 9c8b0e6d596b43127ccdf6b2d181dce597fb1f90211aa36c4d88b5c6a31ef026 libubootenv-3286c571c7e15be4b341e46986f1c0dc74730207.tar.gz +sha256 38431bcbb93fa1a6065828947ca9f9510709b5ac57f8f700fd91473236885064 libubootenv-92949816720d7af2ac722016e7a5b9a85ff141bc.tar.gz sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 Licenses/lgpl-2.1.txt diff --git a/package/libubootenv/libubootenv.mk b/package/libubootenv/libubootenv.mk index b24008ca33..2c6abe8794 100644 --- a/package/libubootenv/libubootenv.mk +++ b/package/libubootenv/libubootenv.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBUBOOTENV_VERSION = 3286c571c7e15be4b341e46986f1c0dc74730207 +LIBUBOOTENV_VERSION = 92949816720d7af2ac722016e7a5b9a85ff141bc LIBUBOOTENV_SITE = $(call github,sbabic,libubootenv,$(LIBUBOOTENV_VERSION)) LIBUBOOTENV_LICENSE = LGPL-2.1 LIBUBOOTENV_LICENSE_FILES = Licenses/lgpl-2.1.txt diff --git a/package/libxslt/0001-Fix-security-framework-bypass.patch b/package/libxslt/0001-Fix-security-framework-bypass.patch deleted file mode 100644 index 16700362b3..0000000000 --- a/package/libxslt/0001-Fix-security-framework-bypass.patch +++ /dev/null @@ -1,122 +0,0 @@ -From e03553605b45c88f0b4b2980adfbbb8f6fca2fd6 Mon Sep 17 00:00:00 2001 -From: Nick Wellnhofer -Date: Sun, 24 Mar 2019 09:51:39 +0100 -Subject: [PATCH] Fix security framework bypass - -xsltCheckRead and xsltCheckWrite return -1 in case of error but callers -don't check for this condition and allow access. With a specially -crafted URL, xsltCheckRead could be tricked into returning an error -because of a supposedly invalid URL that would still be loaded -succesfully later on. - -Fixes #12. - -Thanks to Felix Wilhelm for the report. - -Signed-off-by: Peter Korsgaard ---- - libxslt/documents.c | 18 ++++++++++-------- - libxslt/imports.c | 9 +++++---- - libxslt/transform.c | 9 +++++---- - libxslt/xslt.c | 9 +++++---- - 4 files changed, 25 insertions(+), 20 deletions(-) - -diff --git a/libxslt/documents.c b/libxslt/documents.c -index 3f3a7312..4aad11bb 100644 ---- a/libxslt/documents.c -+++ b/libxslt/documents.c -@@ -296,10 +296,11 @@ xsltLoadDocument(xsltTransformContextPtr ctxt, const xmlChar *URI) { - int res; - - res = xsltCheckRead(ctxt->sec, ctxt, URI); -- if (res == 0) { -- xsltTransformError(ctxt, NULL, NULL, -- "xsltLoadDocument: read rights for %s denied\n", -- URI); -+ if (res <= 0) { -+ if (res == 0) -+ xsltTransformError(ctxt, NULL, NULL, -+ "xsltLoadDocument: read rights for %s denied\n", -+ URI); - return(NULL); - } - } -@@ -372,10 +373,11 @@ xsltLoadStyleDocument(xsltStylesheetPtr style, const xmlChar *URI) { - int res; - - res = xsltCheckRead(sec, NULL, URI); -- if (res == 0) { -- xsltTransformError(NULL, NULL, NULL, -- "xsltLoadStyleDocument: read rights for %s denied\n", -- URI); -+ if (res <= 0) { -+ if (res == 0) -+ xsltTransformError(NULL, NULL, NULL, -+ "xsltLoadStyleDocument: read rights for %s denied\n", -+ URI); - return(NULL); - } - } -diff --git a/libxslt/imports.c b/libxslt/imports.c -index 874870cc..3783b247 100644 ---- a/libxslt/imports.c -+++ b/libxslt/imports.c -@@ -130,10 +130,11 @@ xsltParseStylesheetImport(xsltStylesheetPtr style, xmlNodePtr cur) { - int secres; - - secres = xsltCheckRead(sec, NULL, URI); -- if (secres == 0) { -- xsltTransformError(NULL, NULL, NULL, -- "xsl:import: read rights for %s denied\n", -- URI); -+ if (secres <= 0) { -+ if (secres == 0) -+ xsltTransformError(NULL, NULL, NULL, -+ "xsl:import: read rights for %s denied\n", -+ URI); - goto error; - } - } -diff --git a/libxslt/transform.c b/libxslt/transform.c -index 13793914..0636dbd0 100644 ---- a/libxslt/transform.c -+++ b/libxslt/transform.c -@@ -3493,10 +3493,11 @@ xsltDocumentElem(xsltTransformContextPtr ctxt, xmlNodePtr node, - */ - if (ctxt->sec != NULL) { - ret = xsltCheckWrite(ctxt->sec, ctxt, filename); -- if (ret == 0) { -- xsltTransformError(ctxt, NULL, inst, -- "xsltDocumentElem: write rights for %s denied\n", -- filename); -+ if (ret <= 0) { -+ if (ret == 0) -+ xsltTransformError(ctxt, NULL, inst, -+ "xsltDocumentElem: write rights for %s denied\n", -+ filename); - xmlFree(URL); - xmlFree(filename); - return; -diff --git a/libxslt/xslt.c b/libxslt/xslt.c -index 780a5ad7..a234eb79 100644 ---- a/libxslt/xslt.c -+++ b/libxslt/xslt.c -@@ -6763,10 +6763,11 @@ xsltParseStylesheetFile(const xmlChar* filename) { - int res; - - res = xsltCheckRead(sec, NULL, filename); -- if (res == 0) { -- xsltTransformError(NULL, NULL, NULL, -- "xsltParseStylesheetFile: read rights for %s denied\n", -- filename); -+ if (res <= 0) { -+ if (res == 0) -+ xsltTransformError(NULL, NULL, NULL, -+ "xsltParseStylesheetFile: read rights for %s denied\n", -+ filename); - return(NULL); - } - } --- -2.11.0 - diff --git a/package/libxslt/libxslt.hash b/package/libxslt/libxslt.hash index 0326585959..25aa30839e 100644 --- a/package/libxslt/libxslt.hash +++ b/package/libxslt/libxslt.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -sha256 8e36605144409df979cab43d835002f63988f3dc94d5d3537c12796db90e38c8 libxslt-1.1.33.tar.gz +sha256 98b1bd46d6792925ad2dfe9a87452ea2adebf69dcb9919ffd55bf926a7f93f7f libxslt-1.1.34.tar.gz # Hash for license file: sha256 7e48e290b6bfccc2ec1b297023a1d77f2fd87417f71fbb9f50aabef40a851819 COPYING diff --git a/package/libxslt/libxslt.mk b/package/libxslt/libxslt.mk index d2cef1cb04..2f37f303ac 100644 --- a/package/libxslt/libxslt.mk +++ b/package/libxslt/libxslt.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBXSLT_VERSION = 1.1.33 +LIBXSLT_VERSION = 1.1.34 LIBXSLT_SITE = http://xmlsoft.org/sources LIBXSLT_INSTALL_STAGING = YES LIBXSLT_LICENSE = MIT diff --git a/package/linuxconsoletools/0002-sdl-config.patch b/package/linuxconsoletools/0002-sdl-config.patch deleted file mode 100644 index c19c274a83..0000000000 --- a/package/linuxconsoletools/0002-sdl-config.patch +++ /dev/null @@ -1,20 +0,0 @@ -Specify sdl-config to use instead of using host sdl-config. - -Signed-off-by: Koen Martens - -diff -Naur a/utils/Makefile b/utils/Makefile ---- a/utils/Makefile 2017-06-16 18:48:28.402824790 +0200 -+++ b/utils/Makefile 2017-06-16 18:48:53.898696647 +0200 -@@ -69,10 +69,10 @@ - $(CC) $(CFLAGS) $(CPPFLAGS) -funsigned-char $^ $(LDFLAGS) -lm -o $@ - - ffmvforce.o: ffmvforce.c -- $(CC) $(CFLAGS) $(CPPFLAGS) -c $^ -o $@ `sdl-config --cflags` -+ $(CC) $(CFLAGS) $(CPPFLAGS) -c $^ -o $@ `${SDL_CONFIG} --cflags` - - ffmvforce: ffmvforce.o -- $(CC) $^ -o $@ $(LDFLAGS) -g -lm `sdl-config --libs` -+ $(CC) $^ -o $@ $(LDFLAGS) -g -lm `${SDL_CONFIG} --libs` - - axbtnmap.o: axbtnmap.c axbtnmap.h - diff --git a/package/linuxconsoletools/Config.in b/package/linuxconsoletools/Config.in index 76150278ae..614099fdee 100644 --- a/package/linuxconsoletools/Config.in +++ b/package/linuxconsoletools/Config.in @@ -28,9 +28,13 @@ config BR2_PACKAGE_LINUXCONSOLETOOLS_JOYSTICK config BR2_PACKAGE_LINUXCONSOLETOOLS_FORCEFEEDBACK bool "force-feedback utilities" - select BR2_PACKAGE_SDL + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_SDL2 help Build force-feedback driver utilities (fftest, ffmvforce, ffset, ffcfstress). +comment "force-feedback utilities need a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + endif diff --git a/package/linuxconsoletools/linuxconsoletools.hash b/package/linuxconsoletools/linuxconsoletools.hash index d1bb5a39ef..caacf70e45 100644 --- a/package/linuxconsoletools/linuxconsoletools.hash +++ b/package/linuxconsoletools/linuxconsoletools.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 e9d6b05a6c57c7eb3ec7f9f017f46b20e4b55d5a02f930eff1823a13921c5934 linuxconsoletools-1.6.1.tar.bz2 +sha256 95d112f06393806116341d593bda002c8bc44119c1538407623268fed90d8c34 linuxconsoletools-1.7.0.tar.bz2 sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/linuxconsoletools/linuxconsoletools.mk b/package/linuxconsoletools/linuxconsoletools.mk index b22e136d33..f26d874d96 100644 --- a/package/linuxconsoletools/linuxconsoletools.mk +++ b/package/linuxconsoletools/linuxconsoletools.mk @@ -4,7 +4,7 @@ # ################################################################################ -LINUXCONSOLETOOLS_VERSION = 1.6.1 +LINUXCONSOLETOOLS_VERSION = 1.7.0 LINUXCONSOLETOOLS_SOURCE = linuxconsoletools-$(LINUXCONSOLETOOLS_VERSION).tar.bz2 LINUXCONSOLETOOLS_SITE = https://downloads.sourceforge.net/project/linuxconsole LINUXCONSOLETOOLS_LICENSE = GPL-2.0+ @@ -21,8 +21,8 @@ endif ifeq ($(BR2_PACKAGE_LINUXCONSOLETOOLS_FORCEFEEDBACK),y) LINUXCONSOLETOOLS_MAKE_OPTS += \ ENABLE_FORCEFEEDBACK=1 \ - SDL_CONFIG=$(STAGING_DIR)/usr/bin/sdl-config -LINUXCONSOLETOOLS_DEPENDENCIES += sdl + CFLAGS="$(TARGET_CFLAGS) -std=gnu99" +LINUXCONSOLETOOLS_DEPENDENCIES += sdl2 host-pkgconf endif define LINUXCONSOLETOOLS_BUILD_CMDS diff --git a/package/modem-manager/modem-manager.hash b/package/modem-manager/modem-manager.hash index fc826a6121..b1fef98fe2 100644 --- a/package/modem-manager/modem-manager.hash +++ b/package/modem-manager/modem-manager.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 cbe174078dbdf3f746a55f0004353d3c27da2a31da553036d90fc7dc34a0169a ModemManager-1.10.8.tar.xz +sha256 3daca86164145fffb589939433f596c13fa077c9a187c0d5820fdd5b4e4a6424 ModemManager-1.12.0.tar.xz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB diff --git a/package/modem-manager/modem-manager.mk b/package/modem-manager/modem-manager.mk index a5f3d63560..b5aa7914f6 100644 --- a/package/modem-manager/modem-manager.mk +++ b/package/modem-manager/modem-manager.mk @@ -4,7 +4,7 @@ # ################################################################################ -MODEM_MANAGER_VERSION = 1.10.8 +MODEM_MANAGER_VERSION = 1.12.0 MODEM_MANAGER_SOURCE = ModemManager-$(MODEM_MANAGER_VERSION).tar.xz MODEM_MANAGER_SITE = http://www.freedesktop.org/software/ModemManager MODEM_MANAGER_LICENSE = GPL-2.0+ (programs, plugins), LGPL-2.0+ (libmm-glib) diff --git a/package/paho-mqtt-cpp/paho-mqtt-cpp.hash b/package/paho-mqtt-cpp/paho-mqtt-cpp.hash index b98e073556..e5406e0b81 100644 --- a/package/paho-mqtt-cpp/paho-mqtt-cpp.hash +++ b/package/paho-mqtt-cpp/paho-mqtt-cpp.hash @@ -1,4 +1,4 @@ # Locally computed: -sha256 e97386d159b811e534b98d21e3f6881ab2b43678ec026da7525d5c21ebc292ff paho-mqtt-cpp-1.0.1.tar.gz +sha256 cb0343349ed91ef51d0e76ae860d19435a730d3d355e57886bb090014cb70bbe paho-mqtt-cpp-1.1.tar.gz sha256 83bbba033dc985487e321b6dfde111772affb73460be48726299fed3da684b1c edl-v10 sha256 44277b2bec6093e4ac313afec251a4de599d24c4e768f8574d95b13a9d2d97b5 epl-v10 diff --git a/package/paho-mqtt-cpp/paho-mqtt-cpp.mk b/package/paho-mqtt-cpp/paho-mqtt-cpp.mk index 246e076242..2cb65d9840 100644 --- a/package/paho-mqtt-cpp/paho-mqtt-cpp.mk +++ b/package/paho-mqtt-cpp/paho-mqtt-cpp.mk @@ -4,7 +4,7 @@ # ################################################################################ -PAHO_MQTT_CPP_VERSION = 1.0.1 +PAHO_MQTT_CPP_VERSION = 1.1 PAHO_MQTT_CPP_SITE = $(call github,eclipse,paho.mqtt.cpp,v$(PAHO_MQTT_CPP_VERSION)) PAHO_MQTT_CPP_LICENSE = EPL-1.0 or BSD-3-Clause PAHO_MQTT_CPP_LICENSE_FILES = epl-v10 edl-v10 diff --git a/package/perl/0001-fix-the-generated-subdirectory-Makefiles.patch b/package/perl/0001-fix-the-generated-subdirectory-Makefiles.patch index 178c7baa5b..ae1ce06994 100644 --- a/package/perl/0001-fix-the-generated-subdirectory-Makefiles.patch +++ b/package/perl/0001-fix-the-generated-subdirectory-Makefiles.patch @@ -7,6 +7,8 @@ all variables used by BR must be propagated similar to https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/commit/98e8532fffe5afa8186329acc44fb957427f1823 +see https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/pull/331, merged in EU-MM v7.35_08 + Signed-off-by: Francois Perrad --- cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm | 2 +- diff --git a/package/perl/perl.hash b/package/perl/perl.hash index c988ab752f..161a4fd615 100644 --- a/package/perl/perl.hash +++ b/package/perl/perl.hash @@ -1,10 +1,10 @@ -# Hashes from: http://www.cpan.org/src/5.0/perl-5.28.2.tar.xz.{md5,sha1,sha256}.txt -md5 6bb75770e9ba085b32bf13e4be71e4ac perl-5.28.2.tar.xz -sha1 e7be78eca9ac5596783e6abcf957408050a7b650 perl-5.28.2.tar.xz -sha256 0b0189bfa4b2da20e899b4bdd746ac402e8f746a58e4fcf5516484157f2aab07 perl-5.28.2.tar.xz +# Hashes from: http://www.cpan.org/src/5.0/perl-5.30.1.tar.xz.{md5,sha1,sha256}.txt +md5 f399f3aaee90ddcff5eadd3bccdaacc0 perl-5.30.1.tar.xz +sha1 4bc190b6ac368f573e6a028f91430f831d40d30a perl-5.30.1.tar.xz +sha256 7336cd3ed0535eb61b76a71350effcfa7c88b44faf37d64d70952ced5d38cd35 perl-5.30.1.tar.xz -# Hashes from: https://github.com/arsv/perl-cross/releases/download/1.2.3/perl-cross-1.2.3.hash -sha256 84583a1bb5f3a2c64d13d031386c114382e5c62955c6f84a27cec8318536627c perl-cross-1.2.3.tar.gz +# Hashes from: https://github.com/arsv/perl-cross/releases/download/1.3.1/perl-cross-1.3.1.hash +sha256 edce0b0c2f725e2db3f203d6d8e9f3f7161256f5d1590551e40694f21200141d perl-cross-1.3.1.tar.gz # Locally calculated sha256 dd90d4f42e4dcadf5a7c09eea0189d93c7b37ae560c91f0f6d5233ed3b9292a2 Artistic diff --git a/package/perl/perl.mk b/package/perl/perl.mk index ecb21c4b85..0ab81ddb34 100644 --- a/package/perl/perl.mk +++ b/package/perl/perl.mk @@ -5,15 +5,15 @@ ################################################################################ # When updating the version here, also update utils/scancpan -PERL_VERSION_MAJOR = 28 -PERL_VERSION = 5.$(PERL_VERSION_MAJOR).2 +PERL_VERSION_MAJOR = 30 +PERL_VERSION = 5.$(PERL_VERSION_MAJOR).1 PERL_SITE = http://www.cpan.org/src/5.0 PERL_SOURCE = perl-$(PERL_VERSION).tar.xz PERL_LICENSE = Artistic or GPL-1.0+ PERL_LICENSE_FILES = Artistic Copying README PERL_INSTALL_STAGING = YES -PERL_CROSS_VERSION = 1.2.3 +PERL_CROSS_VERSION = 1.3.1 # DO NOT refactor with the github helper (the result is not the same) PERL_CROSS_SITE = https://github.com/arsv/perl-cross/releases/download/$(PERL_CROSS_VERSION) PERL_CROSS_SOURCE = perl-cross-$(PERL_CROSS_VERSION).tar.gz diff --git a/package/php/Config.ext b/package/php/Config.ext index c7f0332fd8..d5c723ca39 100644 --- a/package/php/Config.ext +++ b/package/php/Config.ext @@ -70,6 +70,18 @@ config BR2_PACKAGE_PHP_EXT_HASH help HASH message digest framework +config BR2_PACKAGE_PHP_EXT_LIBARGON2 + bool "libargon2" + select BR2_PACKAGE_LIBARGON2 + help + libargon2 support + +config BR2_PACKAGE_PHP_EXT_LIBSODIUM + bool "libsodium" + select BR2_PACKAGE_LIBSODIUM + help + libsodium support + config BR2_PACKAGE_PHP_EXT_MCRYPT bool "mcrypt" select BR2_PACKAGE_LIBMCRYPT diff --git a/package/php/php.mk b/package/php/php.mk index 9589530101..1f3972c413 100644 --- a/package/php/php.mk +++ b/package/php/php.mk @@ -122,6 +122,16 @@ PHP_CONF_OPTS += \ $(if $(BR2_PACKAGE_PHP_EXT_MBSTRING),--enable-mbstring) \ $(if $(BR2_PACKAGE_PHP_EXT_PHAR),--enable-phar) +ifeq ($(BR2_PACKAGE_PHP_EXT_LIBARGON2),y) +PHP_CONF_OPTS += --with-password-argon2=$(STAGING_DIR)/usr +PHP_DEPENDENCIES += libargon2 +endif + +ifeq ($(BR2_PACKAGE_PHP_EXT_LIBSODIUM),y) +PHP_CONF_OPTS += --with-sodium=$(STAGING_DIR)/usr +PHP_DEPENDENCIES += libsodium +endif + ifeq ($(BR2_PACKAGE_PHP_EXT_MCRYPT),y) PHP_CONF_OPTS += --with-mcrypt=$(STAGING_DIR)/usr PHP_DEPENDENCIES += libmcrypt diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk index 635040c2a0..6d598cfd9d 100644 --- a/package/pkg-generic.mk +++ b/package/pkg-generic.mk @@ -106,7 +106,7 @@ GLOBAL_INSTRUMENTATION_HOOKS += check_bin_arch # have a proper DT_RPATH or DT_RUNPATH tag define check_host_rpath $(if $(filter install-host,$(2)),\ - $(if $(filter end,$(1)),support/scripts/check-host-rpath $(3) $(HOST_DIR))) + $(if $(filter end,$(1)),support/scripts/check-host-rpath $(3) $(HOST_DIR) $(PER_PACKAGE_DIR))) endef GLOBAL_INSTRUMENTATION_HOOKS += check_host_rpath @@ -134,6 +134,21 @@ endef GLOBAL_INSTRUMENTATION_HOOKS += step_user endif +####################################### +# Helper functions + +# Make sure .la files only reference the current per-package +# directory. + +# $1: package name (lower case) +# $2: staging directory of the package +ifeq ($(BR2_PER_PACKAGE_DIRECTORIES),y) +define fixup-libtool-files + $(Q)find $(2)/usr/lib* -name "*.la" | xargs --no-run-if-empty \ + $(SED) "s:$(PER_PACKAGE_DIR)/[^/]+/:$(PER_PACKAGE_DIR)/$(1)/:g" +endef +endif + ################################################################################ # Implicit targets -- produce a stamp file for each step of a package build ################################################################################ @@ -141,6 +156,7 @@ endif # Retrieve the archive $(BUILD_DIR)/%/.stamp_downloaded: @$(call step_start,download) + $(call prepare-per-package-directory,$($(PKG)_FINAL_DOWNLOAD_DEPENDENCIES)) $(foreach hook,$($(PKG)_PRE_DOWNLOAD_HOOKS),$(call $(hook))$(sep)) # Only show the download message if it isn't already downloaded $(Q)for p in $($(PKG)_ALL_DOWNLOADS); do \ @@ -167,6 +183,7 @@ $(BUILD_DIR)/%/.stamp_actual_downloaded: $(BUILD_DIR)/%/.stamp_extracted: @$(call step_start,extract) @$(call MESSAGE,"Extracting") + $(call prepare-per-package-directory,$($(PKG)_FINAL_EXTRACT_DEPENDENCIES)) $(foreach hook,$($(PKG)_PRE_EXTRACT_HOOKS),$(call $(hook))$(sep)) $(Q)mkdir -p $(@D) $($(PKG)_EXTRACT_CMDS) @@ -227,6 +244,8 @@ $(foreach dir,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR)),\ $(BUILD_DIR)/%/.stamp_configured: @$(call step_start,configure) @$(call MESSAGE,"Configuring") + $(call prepare-per-package-directory,$($(PKG)_FINAL_DEPENDENCIES)) + $(call fixup-libtool-files,$(NAME),$(STAGING_DIR)) $(foreach hook,$($(PKG)_PRE_CONFIGURE_HOOKS),$(call $(hook))$(sep)) $($(PKG)_CONFIGURE_CMDS) $(foreach hook,$($(PKG)_POST_CONFIGURE_HOOKS),$(call $(hook))$(sep)) @@ -349,6 +368,7 @@ $(BUILD_DIR)/%/.stamp_target_installed: # Remove package sources $(BUILD_DIR)/%/.stamp_dircleaned: + $(if $(BR2_PER_PACKAGE_DIRECTORIES),rm -Rf $(PER_PACKAGE_DIR)/$(NAME)) rm -Rf $(@D) ################################################################################ @@ -690,10 +710,10 @@ $(2)_INSTALL_TARGET ?= YES $(2)_TARGET_INSTALL_TARGET = $$($(2)_DIR)/.stamp_target_installed $(2)_TARGET_INSTALL_STAGING = $$($(2)_DIR)/.stamp_staging_installed $(2)_TARGET_INSTALL_IMAGES = $$($(2)_DIR)/.stamp_images_installed -$(2)_TARGET_INSTALL_HOST = $$($(2)_DIR)/.stamp_host_installed +$(2)_TARGET_INSTALL_HOST = $$($(2)_DIR)/.stamp_host_installed $(2)_TARGET_BUILD = $$($(2)_DIR)/.stamp_built $(2)_TARGET_CONFIGURE = $$($(2)_DIR)/.stamp_configured -$(2)_TARGET_RSYNC = $$($(2)_DIR)/.stamp_rsynced +$(2)_TARGET_RSYNC = $$($(2)_DIR)/.stamp_rsynced $(2)_TARGET_PATCH = $$($(2)_DIR)/.stamp_patched $(2)_TARGET_EXTRACT = $$($(2)_DIR)/.stamp_extracted $(2)_TARGET_SOURCE = $$($(2)_DIR)/.stamp_downloaded @@ -921,6 +941,7 @@ $$($(2)_TARGET_INSTALL_IMAGES): PKG=$(2) $$($(2)_TARGET_INSTALL_HOST): PKG=$(2) $$($(2)_TARGET_BUILD): PKG=$(2) $$($(2)_TARGET_CONFIGURE): PKG=$(2) +$$($(2)_TARGET_CONFIGURE): NAME=$(1) $$($(2)_TARGET_RSYNC): SRCDIR=$$($(2)_OVERRIDE_SRCDIR) $$($(2)_TARGET_RSYNC): PKG=$(2) $$($(2)_TARGET_PATCH): PKG=$(2) @@ -932,6 +953,7 @@ $$($(2)_TARGET_SOURCE): PKGDIR=$(pkgdir) $$($(2)_TARGET_ACTUAL_SOURCE): PKG=$(2) $$($(2)_TARGET_ACTUAL_SOURCE): PKGDIR=$(pkgdir) $$($(2)_TARGET_DIRCLEAN): PKG=$(2) +$$($(2)_TARGET_DIRCLEAN): NAME=$(1) # Compute the name of the Kconfig option that correspond to the # package being enabled. We handle three cases: the special Linux diff --git a/package/pkg-kconfig.mk b/package/pkg-kconfig.mk index 86d7c14fdb..e435b95bcf 100644 --- a/package/pkg-kconfig.mk +++ b/package/pkg-kconfig.mk @@ -143,6 +143,7 @@ $(2)_KCONFIG_RULES = \ # Since the file could be a defconfig file it needs to be expanded to a # full .config first. $$($(2)_DIR)/$$($(2)_KCONFIG_STAMP_DOTCONFIG): $$($(2)_KCONFIG_FILE) $$($(2)_KCONFIG_FRAGMENT_FILES) + $$(call prepare-per-package-directory,$$($(2)_KCONFIG_DEPENDENCIES)) $$(call kconfig-package-merge-config,$(2),$$(@D)/$$($(2)_KCONFIG_DOTCONFIG),\ $$($(2)_KCONFIG_FRAGMENT_FILES)) $$(Q)touch $$(@D)/$$($(2)_KCONFIG_STAMP_DOTCONFIG) diff --git a/package/pkg-utils.mk b/package/pkg-utils.mk index 63b19e812b..d38971caf6 100644 --- a/package/pkg-utils.mk +++ b/package/pkg-utils.mk @@ -135,6 +135,32 @@ clean-json = $(strip \ )))) \ ) +ifeq ($(BR2_PER_PACKAGE_DIRECTORIES),y) +# rsync the contents of per-package directories +# $1: space-separated list of packages to rsync from +# $2: 'host' or 'target' +# $3: destination directory +define per-package-rsync + mkdir -p $(3) + $(foreach pkg,$(1),\ + rsync -a --link-dest=$(PER_PACKAGE_DIR)/$(pkg)/$(2)/ \ + $(PER_PACKAGE_DIR)/$(pkg)/$(2)/ \ + $(3)$(sep)) +endef + +# prepares the per-package HOST_DIR and TARGET_DIR of the current +# package, by rsync the host and target directories of the +# dependencies of this package. The list of dependencies is passed as +# argument, so that this function can be used to prepare with +# different set of dependencies (download, extract, configure, etc.) +# +# $1: space-separated list of packages to rsync from +define prepare-per-package-directory + $(call per-package-rsync,$(1),host,$(HOST_DIR)) + $(call per-package-rsync,$(1),target,$(TARGET_DIR)) +endef +endif + # # legal-info helper functions # diff --git a/package/protobuf/protobuf.hash b/package/protobuf/protobuf.hash index f869691689..edb5fb6f03 100644 --- a/package/protobuf/protobuf.hash +++ b/package/protobuf/protobuf.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 29a1db3b9bebcf054c540f13400563120ff29fbdd849b2c7a097ffe9d3d508eb protobuf-cpp-3.9.1.tar.gz +sha256 e82ee5bdde198e0a1935e280748a86a7989474ea771418a2fd90f03e2e65b99b protobuf-cpp-3.10.1.tar.gz sha256 6e5e117324afd944dcf67f36cf329843bc1a92229a8cd9bb573d7a83130fea7d LICENSE diff --git a/package/protobuf/protobuf.mk b/package/protobuf/protobuf.mk index 77b01b5b88..82e21df5f0 100644 --- a/package/protobuf/protobuf.mk +++ b/package/protobuf/protobuf.mk @@ -7,7 +7,7 @@ # When bumping this package, make sure to also verify if the # python-protobuf package still works, as they share the same # version/site variables. -PROTOBUF_VERSION = 3.9.1 +PROTOBUF_VERSION = 3.10.1 PROTOBUF_SOURCE = protobuf-cpp-$(PROTOBUF_VERSION).tar.gz PROTOBUF_SITE = https://github.com/google/protobuf/releases/download/v$(PROTOBUF_VERSION) PROTOBUF_LICENSE = BSD-3-Clause diff --git a/package/python-aiohttp-session/python-aiohttp-session.hash b/package/python-aiohttp-session/python-aiohttp-session.hash index 794c272b0d..f10827b616 100644 --- a/package/python-aiohttp-session/python-aiohttp-session.hash +++ b/package/python-aiohttp-session/python-aiohttp-session.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aiohttp-session/json -md5 64ba16af01abad4fc1feaf16fba574c6 aiohttp-session-2.8.0.tar.gz -sha256 4975ad108341520a7107f5e4d482c6a9f2bbc367b9c9b08e7df524d353f5f0cb aiohttp-session-2.8.0.tar.gz +md5 993ec277ece4765472d0edc0f6c0bba3 aiohttp-session-2.9.0.tar.gz +sha256 959413468b84e30e7ca09719617cfb0000066a2e0f6c20062d043433e82aeb74 aiohttp-session-2.9.0.tar.gz # Locally computed sha256 checksums sha256 2a86817fedf0c52baaa47d7dd975073639dfaaebd37312bd279de54d7f841791 LICENSE diff --git a/package/python-aiohttp-session/python-aiohttp-session.mk b/package/python-aiohttp-session/python-aiohttp-session.mk index 093459a9ca..8fcd8e21b9 100644 --- a/package/python-aiohttp-session/python-aiohttp-session.mk +++ b/package/python-aiohttp-session/python-aiohttp-session.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AIOHTTP_SESSION_VERSION = 2.8.0 +PYTHON_AIOHTTP_SESSION_VERSION = 2.9.0 PYTHON_AIOHTTP_SESSION_SOURCE = aiohttp-session-$(PYTHON_AIOHTTP_SESSION_VERSION).tar.gz -PYTHON_AIOHTTP_SESSION_SITE = https://files.pythonhosted.org/packages/a1/da/d49d017faadb5e2c754fce83e1bd3fbcea9d10bc970bc8df9471880463f0 +PYTHON_AIOHTTP_SESSION_SITE = https://files.pythonhosted.org/packages/f8/fe/53dfd35f5c7fcc7f2d0866cb29e722303e3fae7f749c1f3d4d11d361dc38 PYTHON_AIOHTTP_SESSION_SETUP_TYPE = setuptools PYTHON_AIOHTTP_SESSION_LICENSE = Apache-2.0 PYTHON_AIOHTTP_SESSION_LICENSE_FILES = LICENSE diff --git a/package/python-aiohttp/python-aiohttp.hash b/package/python-aiohttp/python-aiohttp.hash index bd9e2d7a62..fd02bc80d6 100644 --- a/package/python-aiohttp/python-aiohttp.hash +++ b/package/python-aiohttp/python-aiohttp.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aiohttp/json -md5 85fe5c9037256c58d4678148bd91b3f3 aiohttp-3.5.4.tar.gz -sha256 9c4c83f4fa1938377da32bc2d59379025ceeee8e24b89f72fcbccd8ca22dc9bf aiohttp-3.5.4.tar.gz +md5 ca40144c199a09fc1a141960cf6295f0 aiohttp-3.6.2.tar.gz +sha256 259ab809ff0727d0e834ac5e8a283dc5e3e0ecc30c4d80b3cd17a4139ce1f326 aiohttp-3.6.2.tar.gz # Locally computed sha256 checksums sha256 6fd5243e92dd7f98ec69c7ac377728e74905709ff527a5bf98d6d0263c04f5b6 LICENSE.txt diff --git a/package/python-aiohttp/python-aiohttp.mk b/package/python-aiohttp/python-aiohttp.mk index 7a142a6550..5a5964ed5f 100644 --- a/package/python-aiohttp/python-aiohttp.mk +++ b/package/python-aiohttp/python-aiohttp.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AIOHTTP_VERSION = 3.5.4 +PYTHON_AIOHTTP_VERSION = 3.6.2 PYTHON_AIOHTTP_SOURCE = aiohttp-$(PYTHON_AIOHTTP_VERSION).tar.gz -PYTHON_AIOHTTP_SITE = https://files.pythonhosted.org/packages/0f/58/c8b83f999da3b13e66249ea32f325be923791c0c10aee6cf16002a3effc1 +PYTHON_AIOHTTP_SITE = https://files.pythonhosted.org/packages/00/94/f9fa18e8d7124d7850a5715a0b9c0584f7b9375d331d35e157cee50f27cc PYTHON_AIOHTTP_SETUP_TYPE = setuptools PYTHON_AIOHTTP_LICENSE = Apache-2.0 PYTHON_AIOHTTP_LICENSE_FILES = LICENSE.txt diff --git a/package/python-aiomonitor/python-aiomonitor.hash b/package/python-aiomonitor/python-aiomonitor.hash index 14a4466ddd..410beb7973 100644 --- a/package/python-aiomonitor/python-aiomonitor.hash +++ b/package/python-aiomonitor/python-aiomonitor.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aiomonitor/json -md5 38028c80adf5708ad5f7adadf0fdf404 aiomonitor-0.4.4.tar.gz -sha256 c3e0d79cb637baa06ce50db8070e8db0798e16ea626606b703d9d0e3ca5b30ff aiomonitor-0.4.4.tar.gz +md5 5f184e4b97ea161fc2d690aef604f997 aiomonitor-0.4.5.tar.gz +sha256 6232c1ab14bf06cd7217845801c27340032f74e283bdaf32d01cdd3b7c673d0e aiomonitor-0.4.5.tar.gz # Locally computed sha256 checksums sha256 9b42fe3a288996988c552e387e7877be7525a1649e62086aedd6b32d3cb56365 LICENSE diff --git a/package/python-aiomonitor/python-aiomonitor.mk b/package/python-aiomonitor/python-aiomonitor.mk index 4cd7254bdd..a8860097d5 100644 --- a/package/python-aiomonitor/python-aiomonitor.mk +++ b/package/python-aiomonitor/python-aiomonitor.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AIOMONITOR_VERSION = 0.4.4 +PYTHON_AIOMONITOR_VERSION = 0.4.5 PYTHON_AIOMONITOR_SOURCE = aiomonitor-$(PYTHON_AIOMONITOR_VERSION).tar.gz -PYTHON_AIOMONITOR_SITE = https://files.pythonhosted.org/packages/fe/15/ac345a2a55ef106b466347c58ebc5f77ef491aea5a05f700e80a181cda47 +PYTHON_AIOMONITOR_SITE = https://files.pythonhosted.org/packages/98/76/b62e9fbe267287527fb6f4b6774394d4f00650195774173bb0055a99ab3d PYTHON_AIOMONITOR_SETUP_TYPE = setuptools PYTHON_AIOMONITOR_LICENSE = Apache-2.0 PYTHON_AIOMONITOR_LICENSE_FILES = LICENSE diff --git a/package/python-bunch/Config.in b/package/python-bunch/Config.in new file mode 100644 index 0000000000..89eae742b8 --- /dev/null +++ b/package/python-bunch/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_BUNCH + bool "python-bunch" + help + A dot-accessible dictionary (a la JavaScript objects). + + http://github.com/dsc/bunch diff --git a/package/python-bunch/python-bunch.hash b/package/python-bunch/python-bunch.hash new file mode 100644 index 0000000000..5cf2cece46 --- /dev/null +++ b/package/python-bunch/python-bunch.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/bunch/json +md5 0a829d64e95ed96defbcae2bf9061bb0 bunch-1.0.1.tar.gz +sha256 50c77a0fc0cb372dfe48b5e11937d5f70e743adbf42683f3a6d2857645a76aaa bunch-1.0.1.tar.gz +# Locally computed sha256 checksums +sha256 57ca95c92059c8380625192462979bd32994aae3fcdf902ff6eb1e467eeb0469 LICENSE.txt diff --git a/package/python-bunch/python-bunch.mk b/package/python-bunch/python-bunch.mk new file mode 100644 index 0000000000..18fdc223bb --- /dev/null +++ b/package/python-bunch/python-bunch.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-bunch +# +################################################################################ + +PYTHON_BUNCH_VERSION = 1.0.1 +PYTHON_BUNCH_SOURCE = bunch-$(PYTHON_BUNCH_VERSION).tar.gz +PYTHON_BUNCH_SITE = https://files.pythonhosted.org/packages/ef/bf/a4cf1779a4ffb4f610903fa08e15d1f4a8a2f4e3353a02afbe097c5bf4a8 +PYTHON_BUNCH_SETUP_TYPE = setuptools +PYTHON_BUNCH_LICENSE = MIT +PYTHON_BUNCH_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/package/python-crontab/Config.in b/package/python-crontab/Config.in new file mode 100644 index 0000000000..102dbbdb6b --- /dev/null +++ b/package/python-crontab/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_CRONTAB + bool "python-crontab" + select BR2_PACKAGE_PYTHON_DATEUTIL # runtime + help + Crontab module for reading and writing crontab files and + accessing the system cron automatically and simply using + a direct API. + + https://gitlab.com/doctormo/python-crontab/ diff --git a/package/python-crontab/python-crontab.hash b/package/python-crontab/python-crontab.hash new file mode 100644 index 0000000000..c4f3636f5c --- /dev/null +++ b/package/python-crontab/python-crontab.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/python-crontab/json +md5 e1f2ca65e0218a85c724e3d6058da2a3 python-crontab-2.4.0.tar.gz +sha256 3ac1608ff76032e6fc6e16b5fbf83b51557e0e066bf78e9f88571571e7bd7ae6 python-crontab-2.4.0.tar.gz +# Locally computed sha256 checksums +sha256 da7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768 COPYING diff --git a/package/python-crontab/python-crontab.mk b/package/python-crontab/python-crontab.mk new file mode 100644 index 0000000000..f6bf8d7072 --- /dev/null +++ b/package/python-crontab/python-crontab.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-crontab +# +################################################################################ + +PYTHON_CRONTAB_VERSION = 2.4.0 +PYTHON_CRONTAB_SITE = https://files.pythonhosted.org/packages/bc/03/852f9c5f8da7f58abce06fe8ae769cbcf6502f1c60684b16bad72ffcced3 +PYTHON_CRONTAB_SETUP_TYPE = setuptools +PYTHON_CRONTAB_LICENSE = LGPL-3.0+ +PYTHON_CRONTAB_LICENSE_FILES = COPYING + +$(eval $(python-package)) diff --git a/package/python-dnspython/Config.in b/package/python-dnspython/Config.in new file mode 100644 index 0000000000..99fd6a9a5f --- /dev/null +++ b/package/python-dnspython/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_DNSPYTHON + bool "python-dnspython" + help + A powerful DNS toolkit for python. + + http://www.dnspython.org diff --git a/package/python-dnspython/python-dnspython.hash b/package/python-dnspython/python-dnspython.hash new file mode 100644 index 0000000000..af09d51cd5 --- /dev/null +++ b/package/python-dnspython/python-dnspython.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/dnspython/json +md5 bc9ca3b3a82164667d5730ec6d5248a2 dnspython-1.16.0.zip +sha256 36c5e8e38d4369a08b6780b7f27d790a292b2b08eea01607865bf0936c558e01 dnspython-1.16.0.zip +# Locally computed sha256 checksums +sha256 c3ea3ff5654b329c19d3bc5f7481af623c3dded4a6145585499f843ad3d741cd LICENSE diff --git a/package/python-dnspython/python-dnspython.mk b/package/python-dnspython/python-dnspython.mk new file mode 100644 index 0000000000..18d98efd72 --- /dev/null +++ b/package/python-dnspython/python-dnspython.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# python-dnspython +# +################################################################################ + +PYTHON_DNSPYTHON_VERSION = 1.16.0 +PYTHON_DNSPYTHON_SOURCE = dnspython-$(PYTHON_DNSPYTHON_VERSION).zip +PYTHON_DNSPYTHON_SITE = https://files.pythonhosted.org/packages/ec/c5/14bcd63cb6d06092a004793399ec395405edf97c2301dfdc146dfbd5beed +PYTHON_DNSPYTHON_LICENSE = ISC +PYTHON_DNSPYTHON_LICENSE_FILES = LICENSE +PYTHON_DNSPYTHON_SETUP_TYPE = setuptools + +define PYTHON_DNSPYTHON_EXTRACT_CMDS + $(UNZIP) -d $(@D) $(PYTHON_DNSPYTHON_DL_DIR)/$(PYTHON_DNSPYTHON_SOURCE) + mv $(@D)/dnspython-$(PYTHON_DNSPYTHON_VERSION)/* $(@D) + $(RM) -r $(@D)/dnspython-$(PYTHON_DNSPYTHON_VERSION) +endef + +$(eval $(python-package)) diff --git a/package/python-esptool/Config.in b/package/python-esptool/Config.in new file mode 100644 index 0000000000..08b84e3e08 --- /dev/null +++ b/package/python-esptool/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PYTHON_ESPTOOL + bool "python-esptool" + select BR2_PACKAGE_PYTHON_ECDSA # runtime + select BR2_PACKAGE_PYTHON_PYAES # runtime + select BR2_PACKAGE_PYTHON_SERIAL # runtime + help + A serial utility to communicate & flash code to Espressif + ESP8266 & ESP32 chips. + + https://github.com/espressif/esptool diff --git a/package/python-esptool/python-esptool.hash b/package/python-esptool/python-esptool.hash new file mode 100644 index 0000000000..b4dac7ed51 --- /dev/null +++ b/package/python-esptool/python-esptool.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/esptool/json +md5 d17b9293910773045b9de0d5caa0597d esptool-2.8.tar.gz +sha256 1e4288d9f00e55ba36809cc79c493643c623bfa036d7b019a0ebe396284bc317 esptool-2.8.tar.gz +# Locally computed sha256 checksums +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/package/python-esptool/python-esptool.mk b/package/python-esptool/python-esptool.mk new file mode 100644 index 0000000000..0cdc98ce16 --- /dev/null +++ b/package/python-esptool/python-esptool.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-esptool +# +################################################################################ + +PYTHON_ESPTOOL_VERSION = 2.8 +PYTHON_ESPTOOL_SOURCE = esptool-$(PYTHON_ESPTOOL_VERSION).tar.gz +PYTHON_ESPTOOL_SITE = https://files.pythonhosted.org/packages/68/91/08c182f66fa3f12a96e754ae8ec7762abb2d778429834638f5746f81977a +PYTHON_ESPTOOL_SETUP_TYPE = setuptools +PYTHON_ESPTOOL_LICENSE = GPL-2.0+ +PYTHON_ESPTOOL_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-future/Config.in b/package/python-future/Config.in new file mode 100644 index 0000000000..29303f334d --- /dev/null +++ b/package/python-future/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_FUTURE + bool "python-future" + depends on BR2_PACKAGE_PYTHON + help + Easy, clean, reliable Python 2/3 compatibility. + + http://python-future.org diff --git a/package/python-future/python-future.hash b/package/python-future/python-future.hash new file mode 100644 index 0000000000..c43018103e --- /dev/null +++ b/package/python-future/python-future.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.python.org/pypi/future/json +md5 e4579c836b9c025872efe230f6270349 future-0.18.2.tar.gz +sha256 b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d future-0.18.2.tar.gz +# Locally computed sha256 checksums +sha256 916e561392d48471b9c23437f56e2652f320cb3b119ceaa162edf41016f746b9 LICENSE.txt diff --git a/package/python-future/python-future.mk b/package/python-future/python-future.mk new file mode 100644 index 0000000000..76f32180ac --- /dev/null +++ b/package/python-future/python-future.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-future +# +################################################################################ + +PYTHON_FUTURE_VERSION = 0.18.2 +PYTHON_FUTURE_SOURCE = future-$(PYTHON_FUTURE_VERSION).tar.gz +PYTHON_FUTURE_SITE = https://files.pythonhosted.org/packages/45/0b/38b06fd9b92dc2b68d58b75f900e97884c45bedd2ff83203d933cf5851c9 +PYTHON_FUTURE_SETUP_TYPE = setuptools +PYTHON_FUTURE_LICENSE = MIT +PYTHON_FUTURE_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/package/python-hiredis/python-hiredis.hash b/package/python-hiredis/python-hiredis.hash index 2ab6766dda..1a013bb3a2 100644 --- a/package/python-hiredis/python-hiredis.hash +++ b/package/python-hiredis/python-hiredis.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/hiredis/json -md5 46bc0d51bda994611bae77c044b1398b hiredis-1.0.0.tar.gz -sha256 e97c953f08729900a5e740f1760305434d62db9f281ac351108d6c4b5bf51795 hiredis-1.0.0.tar.gz +md5 ad421ea848734c7be5c10689caa2a6f1 hiredis-1.0.1.tar.gz +sha256 aa59dd63bb3f736de4fc2d080114429d5d369dfb3265f771778e8349d67a97a4 hiredis-1.0.1.tar.gz # Locally computed sha256 checksums sha256 70edfa6d3e11f9d7497c2c2f298d06f33b11d10f37f76605102c5ab3b1f28262 COPYING sha256 dca05ce8fc87a8261783b4aed0deef8becc9350b6aa770bc714d0c1833b896eb vendor/hiredis/COPYING diff --git a/package/python-hiredis/python-hiredis.mk b/package/python-hiredis/python-hiredis.mk index 780ec0c13d..435918feb6 100644 --- a/package/python-hiredis/python-hiredis.mk +++ b/package/python-hiredis/python-hiredis.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_HIREDIS_VERSION = 1.0.0 +PYTHON_HIREDIS_VERSION = 1.0.1 PYTHON_HIREDIS_SOURCE = hiredis-$(PYTHON_HIREDIS_VERSION).tar.gz -PYTHON_HIREDIS_SITE = https://files.pythonhosted.org/packages/9e/e0/c160dbdff032ffe68e4b3c576cba3db22d8ceffc9513ae63368296d1bcc8 +PYTHON_HIREDIS_SITE = https://files.pythonhosted.org/packages/7f/5c/62e5c6b811b4dcef4125b4a01f76db82c496d79299dd67053b8f9c0732c0 PYTHON_HIREDIS_SETUP_TYPE = setuptools PYTHON_HIREDIS_LICENSE = BSD-3-Clause PYTHON_HIREDIS_LICENSE_FILES = COPYING vendor/hiredis/COPYING diff --git a/package/python-huepy/0001-fix-import-with-python3.patch b/package/python-huepy/0001-fix-import-with-python3.patch new file mode 100644 index 0000000000..e04eacb228 --- /dev/null +++ b/package/python-huepy/0001-fix-import-with-python3.patch @@ -0,0 +1,8 @@ +--- a/huepy/__init__.py ++++ b/huepy/__init__.py +@@ -1,4 +1,4 @@ +-from hue import COMMANDS ++from .hue import COMMANDS + + __all__ = list(COMMANDS.keys()) + __version__ = '1.0.1' diff --git a/package/python-huepy/Config.in b/package/python-huepy/Config.in new file mode 100644 index 0000000000..0bdd25ffda --- /dev/null +++ b/package/python-huepy/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_HUEPY + bool "python-huepy" + help + Hue will help you to print awesomely in terminals. + + https://github.com/s0md3v/hue diff --git a/package/python-huepy/python-huepy.hash b/package/python-huepy/python-huepy.hash new file mode 100644 index 0000000000..5a1a8fc1e3 --- /dev/null +++ b/package/python-huepy/python-huepy.hash @@ -0,0 +1,4 @@ +# Locally computer sha256 checksums +md5 da6514d9d61fb75ac9470f6863ce1aca python-huepy-a9851d5aea10d2299cc62b3f6dce26ac4ef2ea3e.tar.gz +sha256 63147cef5ecae5c1ab38000be91def351710e6bef2c5f67b5303418becf6c0f2 python-huepy-a9851d5aea10d2299cc62b3f6dce26ac4ef2ea3e.tar.gz +sha256 8b1ba204bb69a0ade2bfcf65ef294a920f6bb361b317dba43c7ef29d96332b9b LICENSE diff --git a/package/python-huepy/python-huepy.mk b/package/python-huepy/python-huepy.mk new file mode 100644 index 0000000000..5c1041205d --- /dev/null +++ b/package/python-huepy/python-huepy.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-huepy +# +################################################################################ + +PYTHON_HUEPY_VERSION = a9851d5aea10d2299cc62b3f6dce26ac4ef2ea3e +PYTHON_HUEPY_SITE = $(call github,s0md3v,hue,$(PYTHON_HUEPY_VERSION)) +PYTHON_HUEPY_LICENSE = GPL-3.0 +PYTHON_HUEPY_LICENSE_FILES = LICENSE +PYTHON_HUEPY_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-multidict/python-multidict.hash b/package/python-multidict/python-multidict.hash index a98c4553d4..1e7b704626 100644 --- a/package/python-multidict/python-multidict.hash +++ b/package/python-multidict/python-multidict.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/multidict/json -md5 5e9d8f7e1ada9a22932aed6a72f88e43 multidict-4.5.2.tar.gz -sha256 024b8129695a952ebd93373e45b5d341dbb87c17ce49637b34000093f243dd4f multidict-4.5.2.tar.gz +md5 bee3828781685758410fa0fbcda8c88e multidict-4.6.1.tar.gz +sha256 5159c4975931a1a78bf6602bbebaa366747fce0a56cb2111f44789d2c45e379f multidict-4.6.1.tar.gz # Locally computed sha256 checksums sha256 a1c5825513279d3085a0ba46880e148ea3710c149bbaedcf2d11605a5ed3c4ad LICENSE diff --git a/package/python-multidict/python-multidict.mk b/package/python-multidict/python-multidict.mk index 7b9cd39283..e3df5a64bf 100644 --- a/package/python-multidict/python-multidict.mk +++ b/package/python-multidict/python-multidict.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MULTIDICT_VERSION = 4.5.2 +PYTHON_MULTIDICT_VERSION = 4.6.1 PYTHON_MULTIDICT_SOURCE = multidict-$(PYTHON_MULTIDICT_VERSION).tar.gz -PYTHON_MULTIDICT_SITE = https://files.pythonhosted.org/packages/7f/8f/b3c8c5b062309e854ce5b726fc101195fbaa881d306ffa5c2ba19efa3af2 +PYTHON_MULTIDICT_SITE = https://files.pythonhosted.org/packages/8a/74/61547af55c077b8d2e3648c2af74c08fa1e382665b290468db7ba54db2ea PYTHON_MULTIDICT_SETUP_TYPE = setuptools PYTHON_MULTIDICT_LICENSE = Apache-2.0 PYTHON_MULTIDICT_LICENSE_FILES = LICENSE diff --git a/package/python-protobuf/python-protobuf.hash b/package/python-protobuf/python-protobuf.hash index de47cd28b7..fe883a96df 100644 --- a/package/python-protobuf/python-protobuf.hash +++ b/package/python-protobuf/python-protobuf.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 d07934c7e78d424e5f0f2182c2f3bed47214481005b9614a7480d6aaac97e7ef protobuf-python-3.9.1.tar.gz +sha256 39c7a5e7e557b24fc324bec3a73054d277ed9b9b320b273564e04f862131e679 protobuf-python-3.10.1.tar.gz sha256 6e5e117324afd944dcf67f36cf329843bc1a92229a8cd9bb573d7a83130fea7d LICENSE diff --git a/package/python-pyaes/Config.in b/package/python-pyaes/Config.in new file mode 100644 index 0000000000..629fd82801 --- /dev/null +++ b/package/python-pyaes/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_PYAES + bool "python-pyaes" + help + Pure-Python Implementation of the AES block-cipher and + common modes of operation. + + https://github.com/ricmoo/pyaes diff --git a/package/python-pyaes/python-pyaes.hash b/package/python-pyaes/python-pyaes.hash new file mode 100644 index 0000000000..25a15f1e19 --- /dev/null +++ b/package/python-pyaes/python-pyaes.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/pyaes/json +md5 20fd5c6e29dcfdd08098e85a859a54ec pyaes-1.6.1.tar.gz +sha256 02c1b1405c38d3c370b085fb952dd8bea3fadcee6411ad99f312cc129c536d8f pyaes-1.6.1.tar.gz +# Locally computed sha256 checksums +sha256 1efe6c78b28b4203d397ea9b68bdc9c658d21cd9afaf8ae8223def83f2a7ebbd LICENSE.txt diff --git a/package/python-pyaes/python-pyaes.mk b/package/python-pyaes/python-pyaes.mk new file mode 100644 index 0000000000..a738d3c76a --- /dev/null +++ b/package/python-pyaes/python-pyaes.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pyaes +# +################################################################################ + +PYTHON_PYAES_VERSION = 1.6.1 +PYTHON_PYAES_SOURCE = pyaes-$(PYTHON_PYAES_VERSION).tar.gz +PYTHON_PYAES_SITE = https://files.pythonhosted.org/packages/44/66/2c17bae31c906613795711fc78045c285048168919ace2220daa372c7d72 +PYTHON_PYAES_SETUP_TYPE = distutils +PYTHON_PYAES_LICENSE = MIT +PYTHON_PYAES_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/package/python-six/python-six.hash b/package/python-six/python-six.hash index b7262b12b1..fe9a455c05 100644 --- a/package/python-six/python-six.hash +++ b/package/python-six/python-six.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/six/json -md5 9ae5d1feed8c0215f4ae4adcd9207fcb six-1.12.0.tar.gz -sha256 d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73 six-1.12.0.tar.gz +md5 e92c23c882c7d5564ce5773fe31b2771 six-1.13.0.tar.gz +sha256 30f610279e8b2578cab6db20741130331735c781b56053c59c4076da27f06b66 six-1.13.0.tar.gz # Locally computed sha256 checksums -sha256 e732f54da58f3e9cf0c48e8b512948936fcf7361bd58afa63a9a3c392bf794ad LICENSE +sha256 b7529b8c07171a78a8c36c3283905528e4812945d977d125eb926e8ccbf245b6 LICENSE diff --git a/package/python-six/python-six.mk b/package/python-six/python-six.mk index 95817fa34b..906c268d74 100644 --- a/package/python-six/python-six.mk +++ b/package/python-six/python-six.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_SIX_VERSION = 1.12.0 +PYTHON_SIX_VERSION = 1.13.0 PYTHON_SIX_SOURCE = six-$(PYTHON_SIX_VERSION).tar.gz -PYTHON_SIX_SITE = https://files.pythonhosted.org/packages/dd/bf/4138e7bfb757de47d1f4b6994648ec67a51efe58fa907c1e11e350cddfca +PYTHON_SIX_SITE = https://files.pythonhosted.org/packages/94/3e/edcf6fef41d89187df7e38e868b2dd2182677922b600e880baad7749c865 PYTHON_SIX_SETUP_TYPE = setuptools PYTHON_SIX_LICENSE = MIT PYTHON_SIX_LICENSE_FILES = LICENSE diff --git a/package/python-tinyrpc/python-tinyrpc.hash b/package/python-tinyrpc/python-tinyrpc.hash index d01575c11c..b4bc7ae863 100644 --- a/package/python-tinyrpc/python-tinyrpc.hash +++ b/package/python-tinyrpc/python-tinyrpc.hash @@ -1,5 +1,4 @@ # md5, sha256 from https://pypi.org/pypi/tinyrpc/json -md5 b3a95133c65c7b5b5eb4f88c4713e909 tinyrpc-1.0.3.tar.gz -sha256 aa9f707a26cea5fd69af55fea28e8761f96b244e00efe3c8ccbeb233d5a9852e tinyrpc-1.0.3.tar.gz -# Locally computed sha256 checksums +sha256 4b41fab967fb1c978f573bf0d609a3b12cc3b6ed62bd3108f43f575563746396 tinyrpc-1.0.4.tar.gz +md5 cd61e3cbc01ea940abc97d3a87abf4a7 tinyrpc-1.0.4.tar.gz sha256 587f1ea174824613f4a7e0d7fb95fda000a7f58ca17df12416e014c9ee82e619 LICENSE diff --git a/package/python-tinyrpc/python-tinyrpc.mk b/package/python-tinyrpc/python-tinyrpc.mk index d589936d88..0ac0470f74 100644 --- a/package/python-tinyrpc/python-tinyrpc.mk +++ b/package/python-tinyrpc/python-tinyrpc.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_TINYRPC_VERSION = 1.0.3 +PYTHON_TINYRPC_VERSION = 1.0.4 PYTHON_TINYRPC_SOURCE = tinyrpc-$(PYTHON_TINYRPC_VERSION).tar.gz -PYTHON_TINYRPC_SITE = https://files.pythonhosted.org/packages/21/7a/ff1a74256e1bcc04fbaa414c13a2bb79a29ac9918b25f2238592b991e3bc +PYTHON_TINYRPC_SITE = https://files.pythonhosted.org/packages/9d/91/c639ba014aada92446516c5fc4b04f2cee3539ab2d0758a6a87a6da973cb PYTHON_TINYRPC_SETUP_TYPE = setuptools PYTHON_TINYRPC_LICENSE = MIT PYTHON_TINYRPC_LICENSE_FILES = LICENSE diff --git a/package/python-txdbus/python-txdbus.hash b/package/python-txdbus/python-txdbus.hash index 38760fada6..60740e29d2 100644 --- a/package/python-txdbus/python-txdbus.hash +++ b/package/python-txdbus/python-txdbus.hash @@ -1,3 +1,3 @@ # md5, sha256 from https://pypi.org/pypi/txdbus/json -md5 f17c9204c7f56365c297ba68e6840900 txdbus-1.1.0.tar.gz -sha256 6ff57f42c58d935956024b3c6824c1019db7d233d0af86aa0573b73b63b0817c txdbus-1.1.0.tar.gz +sha256 eefcffa4efbf82ba11222f17f5989fe1b2b6ef57226ef896c4a7084c990ba217 txdbus-1.1.1.tar.gz +md5 ce8a0e0a17cdbada725e3159802ae75f txdbus-1.1.1.tar.gz diff --git a/package/python-txdbus/python-txdbus.mk b/package/python-txdbus/python-txdbus.mk index 08429baac8..d8e7a7bee9 100644 --- a/package/python-txdbus/python-txdbus.mk +++ b/package/python-txdbus/python-txdbus.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_TXDBUS_VERSION = 1.1.0 +PYTHON_TXDBUS_VERSION = 1.1.1 PYTHON_TXDBUS_SOURCE = txdbus-$(PYTHON_TXDBUS_VERSION).tar.gz -PYTHON_TXDBUS_SITE = https://files.pythonhosted.org/packages/8e/7c/0b8726b82943ae99dc71b8fe20e2e0beb7feb4ef61105865021a64f08b16 +PYTHON_TXDBUS_SITE = https://files.pythonhosted.org/packages/4a/68/dfd06f3f349999cbbb31eade239fe76fbff2d6a905eb7d20449666d1b2ce PYTHON_TXDBUS_SETUP_TYPE = setuptools PYTHON_TXDBUS_LICENSE = MIT diff --git a/package/python-uvloop/python-uvloop.hash b/package/python-uvloop/python-uvloop.hash index 3c274097fe..436babf915 100644 --- a/package/python-uvloop/python-uvloop.hash +++ b/package/python-uvloop/python-uvloop.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/uvloop/json -md5 11c84a0a62048200a70272ec9a990ff9 uvloop-0.13.0.tar.gz -sha256 942cd07035510b149d6160796f4e972137130ae953871b6a98c2cf5d5ab68c2e uvloop-0.13.0.tar.gz +md5 a2f82abb676756f11f544c6b51caf171 uvloop-0.14.0.tar.gz +sha256 123ac9c0c7dd71464f58f1b4ee0bbd81285d96cdda8bc3519281b8973e3a461e uvloop-0.14.0.tar.gz # Locally computed sha256 checksums sha256 2fdc436a67077941295c58647f521fbef8f50e46db0970552fa1a4dd8ae261c6 LICENSE-APACHE sha256 9185f3c77e9f6ef8859a6ba4c94128ac1329876be3e813aad32d7645e51ae409 LICENSE-MIT diff --git a/package/python-uvloop/python-uvloop.mk b/package/python-uvloop/python-uvloop.mk index 8dbe3b36d9..3ee8d299a3 100644 --- a/package/python-uvloop/python-uvloop.mk +++ b/package/python-uvloop/python-uvloop.mk @@ -4,21 +4,14 @@ # ################################################################################ -PYTHON_UVLOOP_VERSION = 0.13.0 +PYTHON_UVLOOP_VERSION = 0.14.0 PYTHON_UVLOOP_SOURCE = uvloop-$(PYTHON_UVLOOP_VERSION).tar.gz -PYTHON_UVLOOP_SITE = https://files.pythonhosted.org/packages/e3/15/dc3276384f4363015d7c72282f37066bae26c77f99158f66c9058ac167cf +PYTHON_UVLOOP_SITE = https://files.pythonhosted.org/packages/84/2e/462e7a25b787d2b40cf6c9864a9e702f358349fc9cfb77e83c38acb73048 PYTHON_UVLOOP_SETUP_TYPE = setuptools PYTHON_UVLOOP_LICENSE = Apache-2.0, MIT PYTHON_UVLOOP_LICENSE_FILES = LICENSE-APACHE LICENSE-MIT -PYTHON_UVLOOP_BUILD_OPTS = build_ext --inplace --cython-always --use-system-libuv -PYTHON_UVLOOP_INSTALL_TARGET_OPTS = build_ext --inplace --cython-always --use-system-libuv -PYTHON_UVLOOP_DEPENDENCIES = libuv host-python-cython - -# force regenerating loop.c with cython. can be removed with the next -# uvloop version bump -define PYTHON_UVLOOP_FORCE_REGEN_LOOPC - $(RM) $(@D)/uvloop/loop.c -endef -PYTHON_UVLOOP_PRE_BUILD_HOOKS += PYTHON_UVLOOP_FORCE_REGEN_LOOPC +PYTHON_UVLOOP_BUILD_OPTS = build_ext --inplace --use-system-libuv +PYTHON_UVLOOP_INSTALL_TARGET_OPTS = build_ext --inplace --use-system-libuv +PYTHON_UVLOOP_DEPENDENCIES = libuv $(eval $(python-package)) diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk index 283577d749..450ad61877 100644 --- a/package/qemu/qemu.mk +++ b/package/qemu/qemu.mk @@ -246,9 +246,12 @@ endif endif HOST_QEMU_SYS_ARCH ?= $(HOST_QEMU_ARCH) +HOST_QEMU_CFLAGS = $(HOST_CFLAGS) + ifeq ($(BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE),y) HOST_QEMU_TARGETS += $(HOST_QEMU_SYS_ARCH)-softmmu HOST_QEMU_OPTS += --enable-system --enable-fdt +HOST_QEMU_CFLAGS += -I$(HOST_DIR)/include/libfdt HOST_QEMU_DEPENDENCIES += host-dtc else HOST_QEMU_OPTS += --disable-system @@ -297,7 +300,7 @@ define HOST_QEMU_CONFIGURE_CMDS --interp-prefix=$(STAGING_DIR) \ --cc="$(HOSTCC)" \ --host-cc="$(HOSTCC)" \ - --extra-cflags="$(HOST_CFLAGS)" \ + --extra-cflags="$(HOST_QEMU_CFLAGS)" \ --extra-ldflags="$(HOST_LDFLAGS)" \ --python=$(HOST_DIR)/bin/python3 \ $(HOST_QEMU_OPTS) diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk index 15c9650391..1a152be94b 100644 --- a/package/qt5/qt5base/qt5base.mk +++ b/package/qt5/qt5base/qt5base.mk @@ -78,6 +78,9 @@ endif ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y) QT5BASE_CONFIGURE_OPTS += -gbm QT5BASE_DEPENDENCIES += mesa3d +else ifeq ($(BR2_PACKAGE_GCNANO_BINARIES),y) +QT5BASE_CONFIGURE_OPTS += -gbm +QT5BASE_DEPENDENCIES += gcnano-binaries else QT5BASE_CONFIGURE_OPTS += -no-gbm endif @@ -289,6 +292,9 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_EGLFS) += Qt5EglFSDeviceIntegrat ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y) QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_EGLFS) += Qt5EglFsKmsSupport endif +ifeq ($(BR2_PACKAGE_GCNANO_BINARIES),y) +QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_EGLFS) += Qt5EglFsKmsSupport +endif else QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_EGLFS) += Qt5EglDeviceIntegration endif diff --git a/package/raspi-gpio/Config.in b/package/raspi-gpio/Config.in new file mode 100644 index 0000000000..32a9448335 --- /dev/null +++ b/package/raspi-gpio/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_RASPI_GPIO + bool "raspi-gpio" + help + Tool to help debug / hack at the BCM283x GPIO. You can dump + the state of a GPIO or (all GPIOs). You can change a GPIO + mode and pulls (and level if set as an output). + + Beware this tool writes directly to the BCM283x GPIO + registers, ignoring anything else that may be using them + (like Linux drivers). + + https://github.com/RPi-Distro/raspi-gpio diff --git a/package/raspi-gpio/raspi-gpio.hash b/package/raspi-gpio/raspi-gpio.hash new file mode 100644 index 0000000000..8a808b657f --- /dev/null +++ b/package/raspi-gpio/raspi-gpio.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 8f3fb411746d339d69adc398497892883c11d2d715ccbe6d8b0b5a401da73bd5 raspi-gpio-2eaa8b8755a550e34d07c898b90b0d9b3d66fd81.tar.gz +sha256 6e02227e1fb942687163996678d94add7911890c50025912d0ae7ee66d256bb2 LICENSE diff --git a/package/raspi-gpio/raspi-gpio.mk b/package/raspi-gpio/raspi-gpio.mk new file mode 100644 index 0000000000..f841c988bb --- /dev/null +++ b/package/raspi-gpio/raspi-gpio.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# raspi-gpio +# +################################################################################ + +RASPI_GPIO_VERSION = 2eaa8b8755a550e34d07c898b90b0d9b3d66fd81 +RASPI_GPIO_SITE = $(call github,RPi-Distro,raspi-gpio,$(RASPI_GPIO_VERSION)) +RASPI_GPIO_LICENSE = BSD-3-Clause +RASPI_GPIO_LICENSE_FILES = LICENSE + +$(eval $(autotools-package)) diff --git a/package/rcw/Config.in.host b/package/rcw/Config.in.host index ba40f76de9..a9253958d9 100644 --- a/package/rcw/Config.in.host +++ b/package/rcw/Config.in.host @@ -10,3 +10,19 @@ config BR2_PACKAGE_HOST_RCW then use this toolset and examples. https://source.codeaurora.org/external/qoriq/qoriq-components/rcw/ + +if BR2_PACKAGE_HOST_RCW + +config BR2_PACKAGE_HOST_RCW_CUSTOM_PATH + string "RCW Source file paths" + help + Space-separated list of .rcw and .rcwi files, that will be + used to generate a RCW binary. The entire list of .rcwi files + used by the .rcw file must be specified. There must be a + single .rcw file in the list. + + This is optional. If left empty, the rcw package will be + included for use in the SDK or with post scripts but no + RCW binary will not be generated. + +endif diff --git a/package/rcw/rcw.mk b/package/rcw/rcw.mk index f4570b9bde..36d2da61b5 100644 --- a/package/rcw/rcw.mk +++ b/package/rcw/rcw.mk @@ -10,11 +10,41 @@ RCW_SITE_METHOD = git RCW_LICENSE = BSD-3-Clause RCW_LICENSE_FILES = LICENSE +RCW_FILES = $(call qstrip,$(BR2_PACKAGE_HOST_RCW_CUSTOM_PATH)) + +ifneq ($(RCW_FILES),) +# Get the name of the custom rcw file from the custom list +RCW_PROJECT = $(notdir $(filter %.rcw,$(RCW_FILES))) + +# Error if there are no or more than one .rcw file +ifeq ($(BR_BUILDING),y) +ifneq ($(words $(RCW_PROJECT)),1) +$(error BR2_PACKAGE_HOST_RCW_CUSTOM_PATH must have exactly one .rcw file) +endif +endif + +define HOST_RCW_ADD_CUSTOM_RCW_FILES + mkdir -p $(@D)/custom_board/rcw + cp -f $(filter-out %.rcw,$(RCW_FILES)) $(@D)/custom_board + cp -f $(filter %.rcw,$(RCW_FILES)) $(@D)/custom_board/rcw +endef +HOST_RCW_POST_PATCH_HOOKS += HOST_RCW_ADD_CUSTOM_RCW_FILES + +define HOST_RCW_BUILD_CMDS + python $(@D)/rcw.py -i $(@D)/custom_board/rcw/$(RCW_PROJECT) -I $(@D)/custom_board -o $(@D)/PBL.bin +endef + +define HOST_RCW_INSTALL_DELIVERY_FILE + $(INSTALL) -D -m 0644 $(@D)/PBL.bin $(BINARIES_DIR)/PBL.bin +endef +endif + # Copy source files and script into $(HOST_DIR)/share/rcw/ so a developer # could use a post image or SDK to build/install PBL files. define HOST_RCW_INSTALL_CMDS mkdir -p $(HOST_DIR)/share/rcw cp -a $(@D)/* $(HOST_DIR)/share/rcw + $(HOST_RCW_INSTALL_DELIVERY_FILE) endef $(eval $(host-generic-package)) diff --git a/package/rng-tools/0001-configure.ac-fix-autoreconf.patch b/package/rng-tools/0001-configure.ac-fix-autoreconf.patch deleted file mode 100644 index 567a7a2891..0000000000 --- a/package/rng-tools/0001-configure.ac-fix-autoreconf.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 1af1b4aab717a58da1dff8888c36c741b0f6ac03 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Fri, 5 Apr 2019 19:22:22 +0200 -Subject: [PATCH] configure.ac: fix autoreconf - -Use foreign instead of gnu in AM_INIT_AUTOMAKE otherwise autoreconf will -fail on: -Makefile.am: error: required file './README' not found - -Upstream: -https://github.com/nhorman/rng-tools/commit/1af1b4aab717a58da1dff8888c36c741b0f6ac03 - -Signed-off-by: Fabrice Fontaine -Signed-off-by: Matt Weber ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index d00a6f1..26b4806 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -21,7 +21,7 @@ AC_INIT(rng-tools, 6.7, [Neil Horman ]) - AC_PREREQ(2.52) - AC_CONFIG_SRCDIR([rngd.c]) - AC_CANONICAL_TARGET --AM_INIT_AUTOMAKE([gnu]) -+AM_INIT_AUTOMAKE([foreign]) - AC_CONFIG_HEADERS([rng-tools-config.h]) - AC_CONFIG_MACRO_DIRS([m4]) - --- -2.17.1 - diff --git a/package/rng-tools/0002-rngd_jitter-replace-non-standard-pthread_yield-with-.patch b/package/rng-tools/0002-rngd_jitter-replace-non-standard-pthread_yield-with-.patch deleted file mode 100644 index 3ce6225fa5..0000000000 --- a/package/rng-tools/0002-rngd_jitter-replace-non-standard-pthread_yield-with-.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 96f1f4d5d718834c1fde610cbed89cfa9a2206f1 Mon Sep 17 00:00:00 2001 -From: Nicola Lunghi <25422924+nicola-lunghi@users.noreply.github.com> -Date: Wed, 5 Jun 2019 16:38:21 +0100 -Subject: [PATCH] rngd_jitter: replace non standard pthread_yield with - sched_yield - -Upsteam commit: -https://github.com/nhorman/rng-tools/commit/96f1f4d5d718834c1fde610cbed89cfa9a2206f1 - -[Original was Nicola's but it does not include a Signed-off-by] -Signed-off-by: Matt Weber - - ---- - rngd_jitter.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/rngd_jitter.c b/rngd_jitter.c -index 979e613..54070ae 100644 ---- a/rngd_jitter.c -+++ b/rngd_jitter.c -@@ -168,7 +168,7 @@ try_again: - } else if (request < need) { - if (request == -1) { - message(LOG_DAEMON|LOG_DEBUG, "failed read: %s\n", strerror(errno)); -- pthread_yield(); -+ sched_yield(); - } else - message(LOG_DAEMON|LOG_DEBUG, "request of random data returns %ld less than need %ld\n", - request, need); --- -2.17.1 - diff --git a/package/rng-tools/rng-tools.hash b/package/rng-tools/rng-tools.hash index a0771034fe..5989d9f022 100644 --- a/package/rng-tools/rng-tools.hash +++ b/package/rng-tools/rng-tools.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 b85e3530dbf943b6da03ebecaf64d0a4febfcc4f562fc7f8d886483906b15f08 rng-tools-6.7.tar.gz +sha256 93e548d4aaf2a1897d4b677f41d8473db1c7f57648adeca18cafa1907e410bb3 rng-tools-6.8.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/rng-tools/rng-tools.mk b/package/rng-tools/rng-tools.mk index fa23b3316f..c5f3051aea 100644 --- a/package/rng-tools/rng-tools.mk +++ b/package/rng-tools/rng-tools.mk @@ -4,12 +4,12 @@ # ################################################################################ -RNG_TOOLS_VERSION = 6.7 +RNG_TOOLS_VERSION = 6.8 RNG_TOOLS_SITE = $(call github,nhorman,$(RNG_TOOLS_NAME),v$(RNG_TOOLS_VERSION)) RNG_TOOLS_LICENSE = GPL-2.0 RNG_TOOLS_LICENSE_FILES = COPYING RNG_TOOLS_DEPENDENCIES = libsysfs jitterentropy-library host-pkgconf - +# From git RNG_TOOLS_AUTORECONF = YES RNG_TOOLS_CONF_OPTS = \ diff --git a/package/rpi-firmware/rpi-firmware.hash b/package/rpi-firmware/rpi-firmware.hash index 58737b4585..63d8ac50a0 100644 --- a/package/rpi-firmware/rpi-firmware.hash +++ b/package/rpi-firmware/rpi-firmware.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 ec2dbd3cd7654f743894ffb9100e7e86ef9d840e7cf113c0b517e0da42cbbb02 rpi-firmware-1.20190819.tar.gz +sha256 b3c5c9d3cda1f77caf317b8d1f0496cd7ca791ddaeec8207a5a1940111483509 rpi-firmware-1.20190925.tar.gz sha256 ba76edfc10a248166d965b8eaf320771c44f4f432d4fce2fd31fd272e7038add boot/LICENCE.broadcom diff --git a/package/rpi-firmware/rpi-firmware.mk b/package/rpi-firmware/rpi-firmware.mk index 3a23bc26d1..ee59ee2f26 100644 --- a/package/rpi-firmware/rpi-firmware.mk +++ b/package/rpi-firmware/rpi-firmware.mk @@ -4,7 +4,7 @@ # ################################################################################ -RPI_FIRMWARE_VERSION = 1.20190819 +RPI_FIRMWARE_VERSION = 1.20190925 RPI_FIRMWARE_SITE = $(call github,raspberrypi,firmware,$(RPI_FIRMWARE_VERSION)) RPI_FIRMWARE_LICENSE = BSD-3-Clause RPI_FIRMWARE_LICENSE_FILES = boot/LICENCE.broadcom diff --git a/package/rpi-userland/0003-Disable-Werror-everywhere.patch b/package/rpi-userland/0003-Disable-Werror-everywhere.patch index 7fb2f97978..27c8acdd41 100644 --- a/package/rpi-userland/0003-Disable-Werror-everywhere.patch +++ b/package/rpi-userland/0003-Disable-Werror-everywhere.patch @@ -1,4 +1,4 @@ -From 8275a380658070336df0c404f0ff585d27681836 Mon Sep 17 00:00:00 2001 +From cc9ac86bcff79697d354cc51d3a984fd0f362868 Mon Sep 17 00:00:00 2001 From: Peter Seiderer Date: Thu, 22 Sep 2016 22:59:11 +0200 Subject: [PATCH] Disable Werror everywhere @@ -15,6 +15,9 @@ Signed-off-by: Peter Seiderer [Rebased for rpi-userland-8f0abfb07b96e7ee85f46e59d895014ec5e25f5e] Signed-off-by: Peter Seiderer + +[Rebased for rpi-userland-5070cb7fc150fc98f1ed64a7739c3356970d9f76] +Signed-off-by: Peter Seiderer --- host_applications/android/apps/vidtex/CMakeLists.txt | 2 +- host_applications/linux/apps/gencmd/CMakeLists.txt | 2 +- @@ -26,8 +29,7 @@ Signed-off-by: Peter Seiderer interface/vcos/CMakeLists.txt | 2 +- interface/vcos/pthreads/CMakeLists.txt | 2 +- interface/vmcs_host/CMakeLists.txt | 2 +- - interface/vmcs_host/linux/vcfiled/CMakeLists.txt | 2 +- - 11 files changed, 11 insertions(+), 11 deletions(-) + 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/host_applications/android/apps/vidtex/CMakeLists.txt b/host_applications/android/apps/vidtex/CMakeLists.txt index 6d66d69..06a3192 100644 @@ -55,7 +57,7 @@ index f95d1a1..034bf20 100644 include_directories( ../../../.. diff --git a/host_applications/linux/apps/raspicam/CMakeLists.txt b/host_applications/linux/apps/raspicam/CMakeLists.txt -index 42636e8..d778f09 100644 +index f7db21e..b94bdc3 100644 --- a/host_applications/linux/apps/raspicam/CMakeLists.txt +++ b/host_applications/linux/apps/raspicam/CMakeLists.txt @@ -1,7 +1,7 @@ @@ -107,7 +109,7 @@ index 5ce5aca..02aea7c 100644 include_directories( ../../../.. diff --git a/interface/mmal/CMakeLists.txt b/interface/mmal/CMakeLists.txt -index 37ae757..78b24a9 100644 +index 46f149d..06273dc 100644 --- a/interface/mmal/CMakeLists.txt +++ b/interface/mmal/CMakeLists.txt @@ -3,7 +3,7 @@ if (NOT DEFINED LIBRARY_TYPE) @@ -146,7 +148,7 @@ index 1d81ca3..b35cd8e 100644 endif () diff --git a/interface/vmcs_host/CMakeLists.txt b/interface/vmcs_host/CMakeLists.txt -index fde18da..802c158 100755 +index a157db1..dc384ca 100755 --- a/interface/vmcs_host/CMakeLists.txt +++ b/interface/vmcs_host/CMakeLists.txt @@ -2,7 +2,7 @@ @@ -158,17 +160,6 @@ index fde18da..802c158 100755 # vc_vchi_gencmd.c has a type-punning problem in vc_gencmd_read_response add_definitions(-fno-strict-aliasing) -diff --git a/interface/vmcs_host/linux/vcfiled/CMakeLists.txt b/interface/vmcs_host/linux/vcfiled/CMakeLists.txt -index aed0e83..d834b3f 100644 ---- a/interface/vmcs_host/linux/vcfiled/CMakeLists.txt -+++ b/interface/vmcs_host/linux/vcfiled/CMakeLists.txt -@@ -1,5 +1,5 @@ - --add_definitions(-Werror) -+add_definitions() - - # vcfiled - serves files to videocore. used for media handlers from - # OpenMAX/IL and loading VLLs. -- -2.19.0 +2.23.0 diff --git a/package/rpi-userland/Config.in b/package/rpi-userland/Config.in index 8d349f21e1..342faf26e3 100644 --- a/package/rpi-userland/Config.in +++ b/package/rpi-userland/Config.in @@ -32,13 +32,6 @@ config BR2_PACKAGE_PROVIDES_LIBOPENVG config BR2_PACKAGE_PROVIDES_LIBOPENMAX default "rpi-userland" -config BR2_PACKAGE_RPI_USERLAND_START_VCFILED - bool "Start vcfiled" - depends on BR2_INIT_SYSV || BR2_INIT_BUSYBOX - help - vcfiled is a daemon serving files to VideoCore from the host - file system. - config BR2_PACKAGE_RPI_USERLAND_HELLO bool "hello_pi examples" help diff --git a/package/rpi-userland/S94vcfiled b/package/rpi-userland/S94vcfiled deleted file mode 100644 index 4d27b91bae..0000000000 --- a/package/rpi-userland/S94vcfiled +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/sh - -NAME=vcfiled -DESC="VideoCore file server daemon $NAME" -DAEMON="/usr/sbin/$NAME" -DAEMON_ARGS="" -CFGFILE="/etc/default/$NAME" -PIDFILE="/var/run/$NAME.pid" - -# Read configuration variable file if it is present -[ -r "$CFGFILE" ] && . "$CFGFILE" - -start() -{ - printf "Starting $DESC: " - start-stop-daemon -S -q -p "$PIDFILE" -x "$DAEMON" -- $DAEMON_ARGS && - echo "done" || echo "failed" -} - -stop() -{ - printf "Stopping $DESC: " - if start-stop-daemon -K -q -R TERM/30/KILL/5 -p "$PIDFILE" -n "$NAME"; then - # This daemon does not remove its PID file when it exits. - rm -f "$PIDFILE" - echo "done" - else - echo "failed" - fi -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|reload) - stop - start - ;; - *) - echo "Usage: $0 {start|stop|restart|reload}" >&2 - exit 1 - ;; -esac diff --git a/package/rpi-userland/rpi-userland.hash b/package/rpi-userland/rpi-userland.hash index 2502a3f592..6d59f2aafc 100644 --- a/package/rpi-userland/rpi-userland.hash +++ b/package/rpi-userland/rpi-userland.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 9424ffa45ef888fb61483c63fd66532c1c648e071fea72c93762efbb3c2a8669 rpi-userland-e5803f2c986cbf8c919c60278b3231dcdf4271a6.tar.gz +sha256 d6231e9fa33c805cf7cbb559a0d6eb125605fc2ba862d9e5a3248778dd269859 rpi-userland-5070cb7fc150fc98f1ed64a7739c3356970d9f76.tar.gz sha256 bee6f1249175683d8610651706e1aa7dffcbfd3f9c4c05bc1e5ab34f313c2db5 LICENCE diff --git a/package/rpi-userland/rpi-userland.mk b/package/rpi-userland/rpi-userland.mk index 20ef2fca98..2b672b6c97 100644 --- a/package/rpi-userland/rpi-userland.mk +++ b/package/rpi-userland/rpi-userland.mk @@ -4,31 +4,15 @@ # ################################################################################ -RPI_USERLAND_VERSION = e5803f2c986cbf8c919c60278b3231dcdf4271a6 +RPI_USERLAND_VERSION = 5070cb7fc150fc98f1ed64a7739c3356970d9f76 RPI_USERLAND_SITE = $(call github,raspberrypi,userland,$(RPI_USERLAND_VERSION)) RPI_USERLAND_LICENSE = BSD-3-Clause RPI_USERLAND_LICENSE_FILES = LICENCE RPI_USERLAND_INSTALL_STAGING = YES -RPI_USERLAND_CONF_OPTS = -DVMCS_INSTALL_PREFIX=/usr \ - -DCMAKE_C_FLAGS="$(TARGET_CFLAGS) \ - -DVCFILED_LOCKFILE=\\\"/var/run/vcfiled.pid\\\"" +RPI_USERLAND_CONF_OPTS = -DVMCS_INSTALL_PREFIX=/usr RPI_USERLAND_PROVIDES = libegl libgles libopenmax libopenvg -ifeq ($(BR2_PACKAGE_RPI_USERLAND_START_VCFILED),y) -define RPI_USERLAND_INSTALL_INIT_SYSV - $(INSTALL) -m 0755 -D package/rpi-userland/S94vcfiled \ - $(TARGET_DIR)/etc/init.d/S94vcfiled -endef -define RPI_USERLAND_INSTALL_INIT_SYSTEMD - $(INSTALL) -D -m 644 package/rpi-userland/vcfiled.service \ - $(TARGET_DIR)/usr/lib/systemd/system/vcfiled.service - mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants - ln -sf ../../../../usr/lib/systemd/system/vcfiled.service \ - $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/vcfiled.service -endef -endif - ifeq ($(BR2_PACKAGE_RPI_USERLAND_HELLO),y) RPI_USERLAND_CONF_OPTS += -DALL_APPS=ON @@ -54,9 +38,6 @@ RPI_USERLAND_CONF_OPTS += -DALL_APPS=OFF endif # BR2_PACKAGE_RPI_USERLAND_HELLO define RPI_USERLAND_POST_TARGET_CLEANUP - rm -f $(TARGET_DIR)/etc/init.d/vcfiled - rm -f $(TARGET_DIR)/usr/share/install/vcfiled - rmdir --ignore-fail-on-non-empty $(TARGET_DIR)/usr/share/install rm -Rf $(TARGET_DIR)/usr/src endef RPI_USERLAND_POST_INSTALL_TARGET_HOOKS += RPI_USERLAND_POST_TARGET_CLEANUP diff --git a/package/rpi-userland/vcfiled.service b/package/rpi-userland/vcfiled.service deleted file mode 100644 index b09aa62774..0000000000 --- a/package/rpi-userland/vcfiled.service +++ /dev/null @@ -1,9 +0,0 @@ -[Unit] -Description=VideoCore file server daemon - -[Service] -ExecStart=/usr/sbin/vcfiled --foreground -Restart=always - -[Install] -WantedBy=multi-user.target diff --git a/package/rsyslog/rsyslog.hash b/package/rsyslog/rsyslog.hash index a963b4e7bb..22372a92a7 100644 --- a/package/rsyslog/rsyslog.hash +++ b/package/rsyslog/rsyslog.hash @@ -1,5 +1,5 @@ # From http://www.rsyslog.com/downloads/download-v8-stable/ -sha256 0219ee692f31a39743acb62aaf4196b644ce94edf386df4605fd6a11a4fe0c93 rsyslog-8.1910.0.tar.gz +sha256 e1f4776b1c62ad7220f4d624a89a96b0c3d4738006899356eaaef0f1f91ee104 rsyslog-8.1911.0.tar.gz # Locally calculated sha256 054b3a047d9232376a46b87356b19b0c0c2924cb5e6911ab96a01fc4b515f083 COPYING diff --git a/package/rsyslog/rsyslog.mk b/package/rsyslog/rsyslog.mk index 5bd6b59ba3..1d535fc26b 100644 --- a/package/rsyslog/rsyslog.mk +++ b/package/rsyslog/rsyslog.mk @@ -4,7 +4,7 @@ # ################################################################################ -RSYSLOG_VERSION = 8.1910.0 +RSYSLOG_VERSION = 8.1911.0 RSYSLOG_SITE = http://rsyslog.com/files/download/rsyslog RSYSLOG_LICENSE = GPL-3.0, LGPL-3.0, Apache-2.0 RSYSLOG_LICENSE_FILES = COPYING COPYING.LESSER COPYING.ASL20 diff --git a/package/rtl8189fs/rtl8189fs.hash b/package/rtl8189fs/rtl8189fs.hash index d6ce6c1e8a..f1524a6fcc 100644 --- a/package/rtl8189fs/rtl8189fs.hash +++ b/package/rtl8189fs/rtl8189fs.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 93472471e1769f92984792f40a0898dd8dd02122d745d48e8edd1a8cc869bc82 rtl8189fs-569bdb91f2cc76e2f5b77df42471db2a62fd2376.tar.gz +sha256 f3f8bcc1e75f095350f12c36f7b8af88eebf3913d4bc921083489f1758cb5068 rtl8189fs-54bd6808e38f213126e7d6447ae9d80c656179f3.tar.gz diff --git a/package/rtl8189fs/rtl8189fs.mk b/package/rtl8189fs/rtl8189fs.mk index d463bba7e6..39122bc786 100644 --- a/package/rtl8189fs/rtl8189fs.mk +++ b/package/rtl8189fs/rtl8189fs.mk @@ -4,7 +4,7 @@ # ################################################################################ -RTL8189FS_VERSION = 569bdb91f2cc76e2f5b77df42471db2a62fd2376 +RTL8189FS_VERSION = 54bd6808e38f213126e7d6447ae9d80c656179f3 RTL8189FS_SITE = $(call github,jwrdegoede,rtl8189ES_linux,$(RTL8189FS_VERSION)) RTL8189FS_LICENSE = GPL-2.0 diff --git a/package/samba4/0001-libreplace-disable-libbsd-support.patch b/package/samba4/0001-libreplace-disable-libbsd-support.patch index ae46c447fd..a303fa6669 100644 --- a/package/samba4/0001-libreplace-disable-libbsd-support.patch +++ b/package/samba4/0001-libreplace-disable-libbsd-support.patch @@ -1,4 +1,4 @@ -From fc0304ba92ec7ae9a2f75fbc31d97fee39d19665 Mon Sep 17 00:00:00 2001 +From 4df82c9e03b68dc1621fe4c9ac6a29ae3e64e07e Mon Sep 17 00:00:00 2001 From: Gustavo Zacarias Date: Wed, 7 Sep 2016 23:03:43 -0300 Subject: [PATCH] libreplace: disable libbsd support @@ -16,10 +16,10 @@ Signed-off-by: Bernd Kuhls 1 file changed, 15 deletions(-) diff --git a/lib/replace/wscript b/lib/replace/wscript -index 6c7de5953f0..ac230d719f7 100644 +index 240d730cbee..c6d8df43c74 100644 --- a/lib/replace/wscript +++ b/lib/replace/wscript -@@ -304,21 +304,6 @@ def configure(conf): +@@ -381,21 +381,6 @@ def configure(conf): strlcpy_in_bsd = False @@ -42,5 +42,5 @@ index 6c7de5953f0..ac230d719f7 100644 struct ucred cred; socklen_t cred_len; -- -2.18.0 +2.20.1 diff --git a/package/samba4/0002-Fix-uClibc-build-on-64bit-platforms-by-including-std.patch b/package/samba4/0002-Fix-uClibc-build-on-64bit-platforms-by-including-std.patch deleted file mode 100644 index 450f8a2ce4..0000000000 --- a/package/samba4/0002-Fix-uClibc-build-on-64bit-platforms-by-including-std.patch +++ /dev/null @@ -1,111 +0,0 @@ -From e3e9755989b158b2497d2c449db445cf7f93de56 Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Sun, 28 Jan 2018 11:57:11 +0100 -Subject: [PATCH] Fix uClibc build on 64bit platforms by including stdint.h - -Fixes an error detected by buildroot autobuilders: -http://autobuild.buildroot.net/results/573/573e2268e205e10d1352fa81122d8f225fdb4575/build-end.log - -/home/rclinux/rc-buildroot-test/scripts/instance-1/output/host/mips64el-buildroot-linux-uclibc/sysroot/usr/include/stdint.h:122:27: -error: conflicting types for 'uintptr_t' - typedef unsigned long int uintptr_t; - ^ -In file included from ../lib/ldb/tests/ldb_msg.c:17:0: -../third_party/cmocka/cmocka.h:126:28: note: previous declaration of 'uintptr_t' was here - typedef unsigned int uintptr_t; - -The define __WORDSIZE is missing when cmocka.h decides how to -define uintptr_t, this patch includes stdint.h when needed. - -Patch sent upstream: -https://lists.samba.org/archive/samba-technical/2018-January/125306.html - -[updated for samba-4.8.4, v2 sent upstream - https://lists.samba.org/archive/samba-technical/2018-August/129732.html, - updated for samba-4.9.1 & 4.10.6] - -Signed-off-by: Bernd Kuhls ---- - lib/ldb/tests/ldb_kv_ops_test.c | 1 + - lib/ldb/tests/ldb_tdb_test.c | 1 + - lib/ldb/tests/test_ldb_dn.c | 1 + - lib/ldb/tests/test_ldb_qsort.c | 1 + - lib/util/tests/test_ms_fnmatch.c | 1 + - source3/lib/test_tldap.c | 1 + - 6 files changed, 6 insertions(+) - -diff --git a/lib/ldb/tests/ldb_kv_ops_test.c b/lib/ldb/tests/ldb_kv_ops_test.c -index d6a4dc058e5..8b230200cba 100644 ---- a/lib/ldb/tests/ldb_kv_ops_test.c -+++ b/lib/ldb/tests/ldb_kv_ops_test.c -@@ -46,6 +46,7 @@ - */ - #include - #include -+#include - #include - #include - -diff --git a/lib/ldb/tests/ldb_tdb_test.c b/lib/ldb/tests/ldb_tdb_test.c -index 8418dbfd671..ef91ba54756 100644 ---- a/lib/ldb/tests/ldb_tdb_test.c -+++ b/lib/ldb/tests/ldb_tdb_test.c -@@ -40,6 +40,7 @@ - */ - #include - #include -+#include - #include - #include - -diff --git a/lib/ldb/tests/test_ldb_dn.c b/lib/ldb/tests/test_ldb_dn.c -index 4965dcef575..37eeedc1d70 100644 ---- a/lib/ldb/tests/test_ldb_dn.c -+++ b/lib/ldb/tests/test_ldb_dn.c -@@ -19,6 +19,7 @@ - - #include - #include -+#include - #include - #include - -diff --git a/lib/ldb/tests/test_ldb_qsort.c b/lib/ldb/tests/test_ldb_qsort.c -index 06e80d94379..663cf0e7564 100644 ---- a/lib/ldb/tests/test_ldb_qsort.c -+++ b/lib/ldb/tests/test_ldb_qsort.c -@@ -19,6 +19,7 @@ - - #include - #include -+#include - #include - #include - -diff --git a/lib/util/tests/test_ms_fnmatch.c b/lib/util/tests/test_ms_fnmatch.c -index 7fe8ed05e28..d11c7bed4be 100644 ---- a/lib/util/tests/test_ms_fnmatch.c -+++ b/lib/util/tests/test_ms_fnmatch.c -@@ -19,6 +19,7 @@ - - #include - #include -+#include - #include - #include - -diff --git a/source3/lib/test_tldap.c b/source3/lib/test_tldap.c -index a6c2f2117cb..659c5a7371a 100644 ---- a/source3/lib/test_tldap.c -+++ b/source3/lib/test_tldap.c -@@ -20,6 +20,7 @@ - - #include - #include -+#include - #include - #include - --- -2.20.1 - diff --git a/package/samba4/0002-waf-upgrade-to-2.0.18.patch b/package/samba4/0002-waf-upgrade-to-2.0.18.patch new file mode 100644 index 0000000000..16db24c4cf --- /dev/null +++ b/package/samba4/0002-waf-upgrade-to-2.0.18.patch @@ -0,0 +1,736 @@ +From 9fdae71c29e7e80f463c0205b508d52c2bb7385b Mon Sep 17 00:00:00 2001 +From: Uri Simchoni +Date: Mon, 7 Oct 2019 00:36:42 +0300 +Subject: [PATCH] waf: upgrade to 2.0.18 + +This is required to get the new test_args parameter to conf.check, which +facilitates passing arguments to configuration test programs. + +BUG: https://bugzilla.samba.org/show_bug.cgi?id=13846 + +Signed-off-by: Uri Simchoni +Signed-off-by: Bernd Kuhls +--- + buildtools/bin/waf | 2 +- + buildtools/wafsamba/wafsamba.py | 2 +- + third_party/waf/waflib/Configure.py | 20 +- + third_party/waf/waflib/Context.py | 6 +- + third_party/waf/waflib/Scripting.py | 7 +- + third_party/waf/waflib/TaskGen.py | 2 +- + third_party/waf/waflib/Tools/asm.py | 37 +++- + third_party/waf/waflib/Tools/c_aliases.py | 6 +- + third_party/waf/waflib/Tools/c_config.py | 9 +- + third_party/waf/waflib/Tools/c_tests.py | 3 +- + third_party/waf/waflib/Tools/gas.py | 1 + + third_party/waf/waflib/Tools/javaw.py | 2 +- + third_party/waf/waflib/Tools/nasm.py | 5 + + third_party/waf/waflib/Tools/python.py | 27 ++- + third_party/waf/waflib/extras/doxygen.py | 11 +- + third_party/waf/waflib/extras/fast_partial.py | 28 ++- + third_party/waf/waflib/extras/genpybind.py | 194 ++++++++++++++++++ + third_party/waf/waflib/extras/local_rpath.py | 8 +- + third_party/waf/waflib/extras/objcopy.py | 9 +- + 19 files changed, 329 insertions(+), 50 deletions(-) + create mode 100644 third_party/waf/waflib/extras/genpybind.py + +diff --git a/buildtools/bin/waf b/buildtools/bin/waf +index 8413f2332b7..11ce8e7480a 100755 +--- a/buildtools/bin/waf ++++ b/buildtools/bin/waf +@@ -32,7 +32,7 @@ POSSIBILITY OF SUCH DAMAGE. + + import os, sys, inspect + +-VERSION="2.0.17" ++VERSION="2.0.18" + REVISION="x" + GIT="x" + INSTALL="x" +diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py +index 76d65ebfcb6..205d5b4ac32 100644 +--- a/buildtools/wafsamba/wafsamba.py ++++ b/buildtools/wafsamba/wafsamba.py +@@ -38,7 +38,7 @@ LIB_PATH="shared" + + os.environ['PYTHONUNBUFFERED'] = '1' + +-if Context.HEXVERSION not in (0x2001100,): ++if Context.HEXVERSION not in (0x2001200,): + Logs.error(''' + Please use the version of waf that comes with Samba, not + a system installed version. See http://wiki.samba.org/index.php/Waf +diff --git a/third_party/waf/waflib/Configure.py b/third_party/waf/waflib/Configure.py +index db09c0e3a40..5762eb66954 100644 +--- a/third_party/waf/waflib/Configure.py ++++ b/third_party/waf/waflib/Configure.py +@@ -524,7 +524,7 @@ def run_build(self, *k, **kw): + Though this function returns *0* by default, the build may set an attribute named *retval* on the + build context object to return a particular value. See :py:func:`waflib.Tools.c_config.test_exec_fun` for example. + +- This function also provides a limited cache. To use it, provide the following option:: ++ This function also features a cache which can be enabled by the following option:: + + def options(opt): + opt.add_option('--confcache', dest='confcache', default=0, +@@ -535,10 +535,21 @@ def run_build(self, *k, **kw): + $ waf configure --confcache + + """ +- lst = [str(v) for (p, v) in kw.items() if p != 'env'] +- h = Utils.h_list(lst) ++ buf = [] ++ for key in sorted(kw.keys()): ++ v = kw[key] ++ if hasattr(v, '__call__'): ++ buf.append(Utils.h_fun(v)) ++ else: ++ buf.append(str(v)) ++ h = Utils.h_list(buf) + dir = self.bldnode.abspath() + os.sep + (not Utils.is_win32 and '.' or '') + 'conf_check_' + Utils.to_hex(h) + ++ cachemode = kw.get('confcache', getattr(Options.options, 'confcache', None)) ++ ++ if not cachemode and os.path.exists(dir): ++ shutil.rmtree(dir) ++ + try: + os.makedirs(dir) + except OSError: +@@ -549,7 +560,6 @@ def run_build(self, *k, **kw): + except OSError: + self.fatal('cannot use the configuration test folder %r' % dir) + +- cachemode = getattr(Options.options, 'confcache', None) + if cachemode == 1: + try: + proj = ConfigSet.ConfigSet(os.path.join(dir, 'cache_run_build')) +@@ -589,7 +599,7 @@ def run_build(self, *k, **kw): + else: + ret = getattr(bld, 'retval', 0) + finally: +- if cachemode == 1: ++ if cachemode: + # cache the results each time + proj = ConfigSet.ConfigSet() + proj['cache_run_build'] = ret +diff --git a/third_party/waf/waflib/Context.py b/third_party/waf/waflib/Context.py +index d0759aada58..e3305fa3341 100644 +--- a/third_party/waf/waflib/Context.py ++++ b/third_party/waf/waflib/Context.py +@@ -11,13 +11,13 @@ from waflib import Utils, Errors, Logs + import waflib.Node + + # the following 3 constants are updated on each new release (do not touch) +-HEXVERSION=0x2001100 ++HEXVERSION=0x2001200 + """Constant updated on new releases""" + +-WAFVERSION="2.0.17" ++WAFVERSION="2.0.18" + """Constant updated on new releases""" + +-WAFREVISION="6bc6cb599c702e985780e9f705b291b812123693" ++WAFREVISION="314689b8994259a84f0de0aaef74d7ce91f541ad" + """Git revision when the waf version is updated""" + + ABI = 20 +diff --git a/third_party/waf/waflib/Scripting.py b/third_party/waf/waflib/Scripting.py +index ae17a8b4503..68dccf29ce0 100644 +--- a/third_party/waf/waflib/Scripting.py ++++ b/third_party/waf/waflib/Scripting.py +@@ -332,7 +332,12 @@ def distclean(ctx): + else: + remove_and_log(env.out_dir, shutil.rmtree) + +- for k in (env.out_dir, env.top_dir, env.run_dir): ++ env_dirs = [env.out_dir] ++ if not ctx.options.no_lock_in_top: ++ env_dirs.append(env.top_dir) ++ if not ctx.options.no_lock_in_run: ++ env_dirs.append(env.run_dir) ++ for k in env_dirs: + p = os.path.join(k, Options.lockfile) + remove_and_log(p, os.remove) + +diff --git a/third_party/waf/waflib/TaskGen.py b/third_party/waf/waflib/TaskGen.py +index 532b7d5cdb4..f8f92bd57c1 100644 +--- a/third_party/waf/waflib/TaskGen.py ++++ b/third_party/waf/waflib/TaskGen.py +@@ -905,7 +905,7 @@ def process_subst(self): + # paranoid safety measure for the general case foo.in->foo.h with ambiguous dependencies + for xt in HEADER_EXTS: + if b.name.endswith(xt): +- tsk.ext_in = tsk.ext_in + ['.h'] ++ tsk.ext_out = tsk.ext_out + ['.h'] + break + + inst_to = getattr(self, 'install_path', None) +diff --git a/third_party/waf/waflib/Tools/asm.py b/third_party/waf/waflib/Tools/asm.py +index b6f26fb3df3..a57e83bb5ec 100644 +--- a/third_party/waf/waflib/Tools/asm.py ++++ b/third_party/waf/waflib/Tools/asm.py +@@ -34,9 +34,22 @@ Support for pure asm programs and libraries should also work:: + target = 'asmtest') + """ + +-from waflib import Task ++import re ++from waflib import Errors, Logs, Task + from waflib.Tools.ccroot import link_task, stlink_task + from waflib.TaskGen import extension ++from waflib.Tools import c_preproc ++ ++re_lines = re.compile( ++ '^[ \t]*(?:%)[ \t]*(ifdef|ifndef|if|else|elif|endif|include|import|define|undef)[ \t]*(.*)\r*$', ++ re.IGNORECASE | re.MULTILINE) ++ ++class asm_parser(c_preproc.c_parser): ++ def filter_comments(self, node): ++ code = node.read() ++ code = c_preproc.re_nl.sub('', code) ++ code = c_preproc.re_cpp.sub(c_preproc.repl, code) ++ return re_lines.findall(code) + + class asm(Task.Task): + """ +@@ -45,6 +58,28 @@ class asm(Task.Task): + color = 'BLUE' + run_str = '${AS} ${ASFLAGS} ${ASMPATH_ST:INCPATHS} ${DEFINES_ST:DEFINES} ${AS_SRC_F}${SRC} ${AS_TGT_F}${TGT}' + ++ def scan(self): ++ if self.env.ASM_NAME == 'gas': ++ return c_preproc.scan(self) ++ Logs.warn('There is no dependency scanner for Nasm!') ++ return [[], []] ++ elif self.env.ASM_NAME == 'nasm': ++ Logs.warn('The Nasm dependency scanner is incomplete!') ++ ++ try: ++ incn = self.generator.includes_nodes ++ except AttributeError: ++ raise Errors.WafError('%r is missing the "asm" feature' % self.generator) ++ ++ if c_preproc.go_absolute: ++ nodepaths = incn ++ else: ++ nodepaths = [x for x in incn if x.is_child_of(x.ctx.srcnode) or x.is_child_of(x.ctx.bldnode)] ++ ++ tmp = asm_parser(nodepaths) ++ tmp.start(self.inputs[0], self.env) ++ return (tmp.nodes, tmp.names) ++ + @extension('.s', '.S', '.asm', '.ASM', '.spp', '.SPP') + def asm_hook(self, node): + """ +diff --git a/third_party/waf/waflib/Tools/c_aliases.py b/third_party/waf/waflib/Tools/c_aliases.py +index c9d53692e8f..985e048bdb7 100644 +--- a/third_party/waf/waflib/Tools/c_aliases.py ++++ b/third_party/waf/waflib/Tools/c_aliases.py +@@ -47,10 +47,12 @@ def sniff_features(**kw): + if x in exts: + feats.append('cxx') + break +- + if 'c' in exts or 'vala' in exts or 'gs' in exts: + feats.append('c') + ++ if 's' in exts or 'S' in exts: ++ feats.append('asm') ++ + for x in 'f f90 F F90 for FOR'.split(): + if x in exts: + feats.append('fc') +@@ -66,7 +68,7 @@ def sniff_features(**kw): + if typ in ('program', 'shlib', 'stlib'): + will_link = False + for x in feats: +- if x in ('cxx', 'd', 'fc', 'c'): ++ if x in ('cxx', 'd', 'fc', 'c', 'asm'): + feats.append(x + typ) + will_link = True + if not will_link and not kw.get('features', []): +diff --git a/third_party/waf/waflib/Tools/c_config.py b/third_party/waf/waflib/Tools/c_config.py +index d546be95614..80580cc9fcb 100644 +--- a/third_party/waf/waflib/Tools/c_config.py ++++ b/third_party/waf/waflib/Tools/c_config.py +@@ -659,20 +659,21 @@ class test_exec(Task.Task): + """ + color = 'PINK' + def run(self): ++ cmd = [self.inputs[0].abspath()] + getattr(self.generator, 'test_args', []) + if getattr(self.generator, 'rpath', None): + if getattr(self.generator, 'define_ret', False): +- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()]) ++ self.generator.bld.retval = self.generator.bld.cmd_and_log(cmd) + else: +- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()]) ++ self.generator.bld.retval = self.generator.bld.exec_command(cmd) + else: + env = self.env.env or {} + env.update(dict(os.environ)) + for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'): + env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '') + if getattr(self.generator, 'define_ret', False): +- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env) ++ self.generator.bld.retval = self.generator.bld.cmd_and_log(cmd, env=env) + else: +- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env) ++ self.generator.bld.retval = self.generator.bld.exec_command(cmd, env=env) + + @feature('test_exec') + @after_method('apply_link') +diff --git a/third_party/waf/waflib/Tools/c_tests.py b/third_party/waf/waflib/Tools/c_tests.py +index f858df5763c..7a4094f2450 100644 +--- a/third_party/waf/waflib/Tools/c_tests.py ++++ b/third_party/waf/waflib/Tools/c_tests.py +@@ -224,6 +224,7 @@ def check_endianness(self): + def check_msg(self): + return tmp[0] + self.check(fragment=ENDIAN_FRAGMENT, features='c grep_for_endianness', +- msg='Checking for endianness', define='ENDIANNESS', tmp=tmp, okmsg=check_msg) ++ msg='Checking for endianness', define='ENDIANNESS', tmp=tmp, ++ okmsg=check_msg, confcache=None) + return tmp[0] + +diff --git a/third_party/waf/waflib/Tools/gas.py b/third_party/waf/waflib/Tools/gas.py +index 77afed7038f..4a8745afd7e 100644 +--- a/third_party/waf/waflib/Tools/gas.py ++++ b/third_party/waf/waflib/Tools/gas.py +@@ -16,3 +16,4 @@ def configure(conf): + conf.env.ASLNK_TGT_F = ['-o'] + conf.find_ar() + conf.load('asm') ++ conf.env.ASM_NAME = 'gas' +diff --git a/third_party/waf/waflib/Tools/javaw.py b/third_party/waf/waflib/Tools/javaw.py +index fd1cf469abf..ceb08c28c87 100644 +--- a/third_party/waf/waflib/Tools/javaw.py ++++ b/third_party/waf/waflib/Tools/javaw.py +@@ -246,7 +246,7 @@ def use_javac_files(self): + self.javac_task.dep_nodes.extend(tg.jar_task.outputs) + else: + if hasattr(tg, 'outdir'): +- base_node = tg.outdir.abspath() ++ base_node = tg.outdir + else: + base_node = tg.path.get_bld() + +diff --git a/third_party/waf/waflib/Tools/nasm.py b/third_party/waf/waflib/Tools/nasm.py +index 411d5826b5d..9c51c18de18 100644 +--- a/third_party/waf/waflib/Tools/nasm.py ++++ b/third_party/waf/waflib/Tools/nasm.py +@@ -24,3 +24,8 @@ def configure(conf): + conf.env.ASLNK_TGT_F = ['-o'] + conf.load('asm') + conf.env.ASMPATH_ST = '-I%s' + os.sep ++ txt = conf.cmd_and_log(conf.env.AS + ['--version']) ++ if 'yasm' in txt.lower(): ++ conf.env.ASM_NAME = 'yasm' ++ else: ++ conf.env.ASM_NAME = 'nasm' +diff --git a/third_party/waf/waflib/Tools/python.py b/third_party/waf/waflib/Tools/python.py +index 63a8917d7c1..7c45a76ffd2 100644 +--- a/third_party/waf/waflib/Tools/python.py ++++ b/third_party/waf/waflib/Tools/python.py +@@ -79,14 +79,19 @@ def process_py(self, node): + """ + Add signature of .py file, so it will be byte-compiled when necessary + """ +- assert(hasattr(self, 'install_path')), 'add features="py"' ++ assert(hasattr(self, 'install_path')), 'add features="py" for target "%s" in "%s/wscript".' % (self.target, self.path.nice_path()) ++ self.install_from = getattr(self, 'install_from', None) ++ relative_trick = getattr(self, 'relative_trick', True) ++ if self.install_from: ++ assert isinstance(self.install_from, Node.Node), \ ++ 'add features="py" for target "%s" in "%s/wscript" (%s).' % (self.target, self.path.nice_path(), type(self.install_from)) + + # where to install the python file + if self.install_path: + if self.install_from: +- self.add_install_files(install_to=self.install_path, install_from=node, cwd=self.install_from, relative_trick=True) ++ self.add_install_files(install_to=self.install_path, install_from=node, cwd=self.install_from, relative_trick=relative_trick) + else: +- self.add_install_files(install_to=self.install_path, install_from=node, relative_trick=True) ++ self.add_install_files(install_to=self.install_path, install_from=node, relative_trick=relative_trick) + + lst = [] + if self.env.PYC: +@@ -96,9 +101,11 @@ def process_py(self, node): + + if self.install_path: + if self.install_from: +- pyd = Utils.subst_vars("%s/%s" % (self.install_path, node.path_from(self.install_from)), self.env) ++ target_dir = node.path_from(self.install_from) if relative_trick else node.name ++ pyd = Utils.subst_vars("%s/%s" % (self.install_path, target_dir), self.env) + else: +- pyd = Utils.subst_vars("%s/%s" % (self.install_path, node.path_from(self.path)), self.env) ++ target_dir = node.path_from(self.path) if relative_trick else node.name ++ pyd = Utils.subst_vars("%s/%s" % (self.install_path, target_dir), self.env) + else: + pyd = node.abspath() + +@@ -115,7 +122,7 @@ def process_py(self, node): + tsk.pyd = pyd + + if self.install_path: +- self.add_install_files(install_to=os.path.dirname(pyd), install_from=pyobj, cwd=node.parent.get_bld(), relative_trick=True) ++ self.add_install_files(install_to=os.path.dirname(pyd), install_from=pyobj, cwd=node.parent.get_bld(), relative_trick=relative_trick) + + class pyc(Task.Task): + """ +@@ -433,11 +440,11 @@ def check_python_headers(conf, features='pyembed pyext'): + + # Code using the Python API needs to be compiled with -fno-strict-aliasing + if env.CC_NAME == 'gcc': +- env.append_value('CFLAGS_PYEMBED', ['-fno-strict-aliasing']) +- env.append_value('CFLAGS_PYEXT', ['-fno-strict-aliasing']) ++ env.append_unique('CFLAGS_PYEMBED', ['-fno-strict-aliasing']) ++ env.append_unique('CFLAGS_PYEXT', ['-fno-strict-aliasing']) + if env.CXX_NAME == 'gcc': +- env.append_value('CXXFLAGS_PYEMBED', ['-fno-strict-aliasing']) +- env.append_value('CXXFLAGS_PYEXT', ['-fno-strict-aliasing']) ++ env.append_unique('CXXFLAGS_PYEMBED', ['-fno-strict-aliasing']) ++ env.append_unique('CXXFLAGS_PYEXT', ['-fno-strict-aliasing']) + + if env.CC_NAME == "msvc": + from distutils.msvccompiler import MSVCCompiler +diff --git a/third_party/waf/waflib/extras/doxygen.py b/third_party/waf/waflib/extras/doxygen.py +index 423d8455025..20cd9e1a852 100644 +--- a/third_party/waf/waflib/extras/doxygen.py ++++ b/third_party/waf/waflib/extras/doxygen.py +@@ -85,6 +85,12 @@ class doxygen(Task.Task): + if not getattr(self, 'pars', None): + txt = self.inputs[0].read() + self.pars = parse_doxy(txt) ++ ++ # Override with any parameters passed to the task generator ++ if getattr(self.generator, 'pars', None): ++ for k, v in self.generator.pars.items(): ++ self.pars[k] = v ++ + if self.pars.get('OUTPUT_DIRECTORY'): + # Use the path parsed from the Doxyfile as an absolute path + output_node = self.inputs[0].parent.get_bld().make_node(self.pars['OUTPUT_DIRECTORY']) +@@ -94,11 +100,6 @@ class doxygen(Task.Task): + output_node.mkdir() + self.pars['OUTPUT_DIRECTORY'] = output_node.abspath() + +- # Override with any parameters passed to the task generator +- if getattr(self.generator, 'pars', None): +- for k, v in self.generator.pars.items(): +- self.pars[k] = v +- + self.doxy_inputs = getattr(self, 'doxy_inputs', []) + if not self.pars.get('INPUT'): + self.doxy_inputs.append(self.inputs[0].parent) +diff --git a/third_party/waf/waflib/extras/fast_partial.py b/third_party/waf/waflib/extras/fast_partial.py +index 71b8318eecb..90a94723bb8 100644 +--- a/third_party/waf/waflib/extras/fast_partial.py ++++ b/third_party/waf/waflib/extras/fast_partial.py +@@ -18,6 +18,7 @@ Usage:: + opt.load('fast_partial') + + Assumptions: ++* Start with a clean build (run "waf distclean" after enabling) + * Mostly for C/C++/Fortran targets with link tasks (object-only targets are not handled) + try it in the folder generated by utils/genbench.py + * For full project builds: no --targets and no pruning from subfolders +@@ -131,12 +132,18 @@ class bld_proxy(object): + data[x] = getattr(self, x) + db = os.path.join(self.variant_dir, Context.DBFILE + self.store_key) + +- try: +- waflib.Node.pickle_lock.acquire() ++ with waflib.Node.pickle_lock: + waflib.Node.Nod3 = self.node_class +- x = Build.cPickle.dumps(data, Build.PROTOCOL) +- finally: +- waflib.Node.pickle_lock.release() ++ try: ++ x = Build.cPickle.dumps(data, Build.PROTOCOL) ++ except Build.cPickle.PicklingError: ++ root = data['root'] ++ for node_deps in data['node_deps'].values(): ++ for idx, node in enumerate(node_deps): ++ # there may be more cross-context Node objects to fix, ++ # but this should be the main source ++ node_deps[idx] = root.find_node(node.abspath()) ++ x = Build.cPickle.dumps(data, Build.PROTOCOL) + + Logs.debug('rev_use: storing %s', db) + Utils.writef(db + '.tmp', x, m='wb') +@@ -393,12 +400,17 @@ def is_stale(self): + Logs.debug('rev_use: must post %r because this is a clean build') + return True + +- # 3. check if the configuration changed +- if os.stat(self.bld.bldnode.find_node('c4che/build.config.py').abspath()).st_mtime > dbstat: ++ # 3.a check if the configuration exists ++ cache_node = self.bld.bldnode.find_node('c4che/build.config.py') ++ if not cache_node: ++ return True ++ ++ # 3.b check if the configuration changed ++ if os.stat(cache_node.abspath()).st_mtime > dbstat: + Logs.debug('rev_use: must post %r because the configuration has changed', self.name) + return True + +- # 3.a any tstamp data? ++ # 3.c any tstamp data? + try: + f_deps = self.bld.f_deps + except AttributeError: +diff --git a/third_party/waf/waflib/extras/genpybind.py b/third_party/waf/waflib/extras/genpybind.py +new file mode 100644 +index 00000000000..ac206ee8a8b +--- /dev/null ++++ b/third_party/waf/waflib/extras/genpybind.py +@@ -0,0 +1,194 @@ ++import os ++import pipes ++import subprocess ++import sys ++ ++from waflib import Logs, Task, Context ++from waflib.Tools.c_preproc import scan as scan_impl ++# ^-- Note: waflib.extras.gccdeps.scan does not work for us, ++# due to its current implementation: ++# The -MD flag is injected into the {C,CXX}FLAGS environment variable and ++# dependencies are read out in a separate step after compiling by reading ++# the .d file saved alongside the object file. ++# As the genpybind task refers to a header file that is never compiled itself, ++# gccdeps will not be able to extract the list of dependencies. ++ ++from waflib.TaskGen import feature, before_method ++ ++ ++def join_args(args): ++ return " ".join(pipes.quote(arg) for arg in args) ++ ++ ++def configure(cfg): ++ cfg.load("compiler_cxx") ++ cfg.load("python") ++ cfg.check_python_version(minver=(2, 7)) ++ if not cfg.env.LLVM_CONFIG: ++ cfg.find_program("llvm-config", var="LLVM_CONFIG") ++ if not cfg.env.GENPYBIND: ++ cfg.find_program("genpybind", var="GENPYBIND") ++ ++ # find clang reasource dir for builtin headers ++ cfg.env.GENPYBIND_RESOURCE_DIR = os.path.join( ++ cfg.cmd_and_log(cfg.env.LLVM_CONFIG + ["--libdir"]).strip(), ++ "clang", ++ cfg.cmd_and_log(cfg.env.LLVM_CONFIG + ["--version"]).strip()) ++ if os.path.exists(cfg.env.GENPYBIND_RESOURCE_DIR): ++ cfg.msg("Checking clang resource dir", cfg.env.GENPYBIND_RESOURCE_DIR) ++ else: ++ cfg.fatal("Clang resource dir not found") ++ ++ ++@feature("genpybind") ++@before_method("process_source") ++def generate_genpybind_source(self): ++ """ ++ Run genpybind on the headers provided in `source` and compile/link the ++ generated code instead. This works by generating the code on the fly and ++ swapping the source node before `process_source` is run. ++ """ ++ # name of module defaults to name of target ++ module = getattr(self, "module", self.target) ++ ++ # create temporary source file in build directory to hold generated code ++ out = "genpybind-%s.%d.cpp" % (module, self.idx) ++ out = self.path.get_bld().find_or_declare(out) ++ ++ task = self.create_task("genpybind", self.to_nodes(self.source), out) ++ # used to detect whether CFLAGS or CXXFLAGS should be passed to genpybind ++ task.features = self.features ++ task.module = module ++ # can be used to select definitions to include in the current module ++ # (when header files are shared by more than one module) ++ task.genpybind_tags = self.to_list(getattr(self, "genpybind_tags", [])) ++ # additional include directories ++ task.includes = self.to_list(getattr(self, "includes", [])) ++ task.genpybind = self.env.GENPYBIND ++ ++ # Tell waf to compile/link the generated code instead of the headers ++ # originally passed-in via the `source` parameter. (see `process_source`) ++ self.source = [out] ++ ++ ++class genpybind(Task.Task): # pylint: disable=invalid-name ++ """ ++ Runs genpybind on headers provided as input to this task. ++ Generated code will be written to the first (and only) output node. ++ """ ++ quiet = True ++ color = "PINK" ++ scan = scan_impl ++ ++ @staticmethod ++ def keyword(): ++ return "Analyzing" ++ ++ def run(self): ++ if not self.inputs: ++ return ++ ++ args = self.find_genpybind() + self._arguments( ++ resource_dir=self.env.GENPYBIND_RESOURCE_DIR) ++ ++ output = self.run_genpybind(args) ++ ++ # For debugging / log output ++ pasteable_command = join_args(args) ++ ++ # write generated code to file in build directory ++ # (will be compiled during process_source stage) ++ (output_node,) = self.outputs ++ output_node.write("// {}\n{}\n".format( ++ pasteable_command.replace("\n", "\n// "), output)) ++ ++ def find_genpybind(self): ++ return self.genpybind ++ ++ def run_genpybind(self, args): ++ bld = self.generator.bld ++ ++ kwargs = dict(cwd=bld.variant_dir) ++ if hasattr(bld, "log_command"): ++ bld.log_command(args, kwargs) ++ else: ++ Logs.debug("runner: {!r}".format(args)) ++ proc = subprocess.Popen( ++ args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, **kwargs) ++ stdout, stderr = proc.communicate() ++ ++ if not isinstance(stdout, str): ++ stdout = stdout.decode(sys.stdout.encoding, errors="replace") ++ if not isinstance(stderr, str): ++ stderr = stderr.decode(sys.stderr.encoding, errors="replace") ++ ++ if proc.returncode != 0: ++ bld.fatal( ++ "genpybind returned {code} during the following call:" ++ "\n{command}\n\n{stdout}\n\n{stderr}".format( ++ code=proc.returncode, ++ command=join_args(args), ++ stdout=stdout, ++ stderr=stderr, ++ )) ++ ++ if stderr.strip(): ++ Logs.debug("non-fatal warnings during genpybind run:\n{}".format(stderr)) ++ ++ return stdout ++ ++ def _include_paths(self): ++ return self.generator.to_incnodes(self.includes + self.env.INCLUDES) ++ ++ def _inputs_as_relative_includes(self): ++ include_paths = self._include_paths() ++ relative_includes = [] ++ for node in self.inputs: ++ for inc in include_paths: ++ if node.is_child_of(inc): ++ relative_includes.append(node.path_from(inc)) ++ break ++ else: ++ self.generator.bld.fatal("could not resolve {}".format(node)) ++ return relative_includes ++ ++ def _arguments(self, genpybind_parse=None, resource_dir=None): ++ args = [] ++ relative_includes = self._inputs_as_relative_includes() ++ is_cxx = "cxx" in self.features ++ ++ # options for genpybind ++ args.extend(["--genpybind-module", self.module]) ++ if self.genpybind_tags: ++ args.extend(["--genpybind-tag"] + self.genpybind_tags) ++ if relative_includes: ++ args.extend(["--genpybind-include"] + relative_includes) ++ if genpybind_parse: ++ args.extend(["--genpybind-parse", genpybind_parse]) ++ ++ args.append("--") ++ ++ # headers to be processed by genpybind ++ args.extend(node.abspath() for node in self.inputs) ++ ++ args.append("--") ++ ++ # options for clang/genpybind-parse ++ args.append("-D__GENPYBIND__") ++ args.append("-xc++" if is_cxx else "-xc") ++ has_std_argument = False ++ for flag in self.env["CXXFLAGS" if is_cxx else "CFLAGS"]: ++ flag = flag.replace("-std=gnu", "-std=c") ++ if flag.startswith("-std=c"): ++ has_std_argument = True ++ args.append(flag) ++ if not has_std_argument: ++ args.append("-std=c++14") ++ args.extend("-I{}".format(n.abspath()) for n in self._include_paths()) ++ args.extend("-D{}".format(p) for p in self.env.DEFINES) ++ ++ # point to clang resource dir, if specified ++ if resource_dir: ++ args.append("-resource-dir={}".format(resource_dir)) ++ ++ return args +diff --git a/third_party/waf/waflib/extras/local_rpath.py b/third_party/waf/waflib/extras/local_rpath.py +index b2507e17a10..e3923d9b9d4 100644 +--- a/third_party/waf/waflib/extras/local_rpath.py ++++ b/third_party/waf/waflib/extras/local_rpath.py +@@ -2,18 +2,20 @@ + # encoding: utf-8 + # Thomas Nagy, 2011 (ita) + ++import copy + from waflib.TaskGen import after_method, feature + + @after_method('propagate_uselib_vars') + @feature('cprogram', 'cshlib', 'cxxprogram', 'cxxshlib', 'fcprogram', 'fcshlib') + def add_rpath_stuff(self): +- all = self.to_list(getattr(self, 'use', [])) ++ all = copy.copy(self.to_list(getattr(self, 'use', []))) + while all: + name = all.pop() + try: + tg = self.bld.get_tgen_by_name(name) + except: + continue +- self.env.append_value('RPATH', tg.link_task.outputs[0].parent.abspath()) +- all.extend(self.to_list(getattr(tg, 'use', []))) ++ if hasattr(tg, 'link_task'): ++ self.env.append_value('RPATH', tg.link_task.outputs[0].parent.abspath()) ++ all.extend(self.to_list(getattr(tg, 'use', []))) + +diff --git a/third_party/waf/waflib/extras/objcopy.py b/third_party/waf/waflib/extras/objcopy.py +index 82d8359ecf7..bb7ca6ef224 100644 +--- a/third_party/waf/waflib/extras/objcopy.py ++++ b/third_party/waf/waflib/extras/objcopy.py +@@ -15,7 +15,7 @@ objcopy_flags Additional flags passed to objcopy. + """ + + from waflib.Utils import def_attrs +-from waflib import Task ++from waflib import Task, Options + from waflib.TaskGen import feature, after_method + + class objcopy(Task.Task): +@@ -46,5 +46,8 @@ def map_objcopy(self): + self.add_install_files(install_to=self.objcopy_install_path, install_from=task.outputs[0]) + + def configure(ctx): +- ctx.find_program('objcopy', var='OBJCOPY', mandatory=True) +- ++ program_name = 'objcopy' ++ prefix = getattr(Options.options, 'cross_prefix', None) ++ if prefix: ++ program_name = '{}-{}'.format(prefix, program_name) ++ ctx.find_program(program_name, var='OBJCOPY', mandatory=True) +-- +2.20.1 + diff --git a/package/samba4/0003-test_regfio.c-include-stdint.h-before-cmoka.h.patch b/package/samba4/0003-test_regfio.c-include-stdint.h-before-cmoka.h.patch deleted file mode 100644 index 2415d57d70..0000000000 --- a/package/samba4/0003-test_regfio.c-include-stdint.h-before-cmoka.h.patch +++ /dev/null @@ -1,38 +0,0 @@ -From bed8720dce64181c188c23a28506a88cd2e1ee4f Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sat, 11 May 2019 00:07:50 +0200 -Subject: [PATCH] test_regfio.c: include stdint.h before cmoka.h - -This fix the following build failure on mips64el: -/usr/lfs/v0/rc-buildroot-test/scripts/instance-2/output/host/mips64el-buildroot-linux-uclibc/sysroot/usr/include/stdint.h:122:27: error: conflicting types for 'uintptr_t' - typedef unsigned long int uintptr_t; - ^ -In file included from ../source3/registry/tests/test_regfio.c:23:0: -../third_party/cmocka/cmocka.h:126:28: note: previous declaration of 'uintptr_t' was here - typedef unsigned int uintptr_t; - -Fixes: - - http://autobuild.buildroot.org/results/bae0508e84c905dc23ad7cf1153cd1e9d8e4d734 - -Signed-off-by: Fabrice Fontaine -[Upstream status: -https://gitlab.com/samba-team/samba/merge_requests/442] ---- - source3/registry/tests/test_regfio.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/source3/registry/tests/test_regfio.c b/source3/registry/tests/test_regfio.c -index 86a217661f3..f945e653708 100644 ---- a/source3/registry/tests/test_regfio.c -+++ b/source3/registry/tests/test_regfio.c -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - #include - - #include --- -2.20.1 - diff --git a/package/samba4/0003-wafsamba-use-test_args-instead-of-exec_args-to-suppo.patch b/package/samba4/0003-wafsamba-use-test_args-instead-of-exec_args-to-suppo.patch new file mode 100644 index 0000000000..4495f5610d --- /dev/null +++ b/package/samba4/0003-wafsamba-use-test_args-instead-of-exec_args-to-suppo.patch @@ -0,0 +1,62 @@ +From 0daf4e72271951e21afa73911e304df1b046909c Mon Sep 17 00:00:00 2001 +From: Uri Simchoni +Date: Mon, 7 Oct 2019 00:37:17 +0300 +Subject: [PATCH] wafsamba: use test_args instead of exec_args to support + cross-compilation + +exec_args seems to have been a custom addition to Samba's copy of waf. +Upstream Waf has an identically-purposed parameter called test_args. + +This parameter is being used for addiing runtime args to test programs that +are being run during configuration phases. + +BUG: https://bugzilla.samba.org/show_bug.cgi?id=13846 + +Signed-off-by: Uri Simchoni +Signed-off-by: Bernd Kuhls +--- + buildtools/wafsamba/samba_autoconf.py | 6 +++--- + buildtools/wafsamba/samba_cross.py | 2 +- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py +index 8e5dfb87102..62d3e20a15c 100644 +--- a/buildtools/wafsamba/samba_autoconf.py ++++ b/buildtools/wafsamba/samba_autoconf.py +@@ -423,9 +423,9 @@ def CHECK_CODE(conf, code, define, + cflags.extend(ccflags) + + if on_target: +- exec_args = conf.SAMBA_CROSS_ARGS(msg=msg) ++ test_args = conf.SAMBA_CROSS_ARGS(msg=msg) + else: +- exec_args = [] ++ test_args = [] + + conf.COMPOUND_START(msg) + +@@ -440,7 +440,7 @@ def CHECK_CODE(conf, code, define, + type=type, + msg=msg, + quote=quote, +- exec_args=exec_args, ++ test_args=test_args, + define_ret=define_ret) + except Exception: + if always: +diff --git a/buildtools/wafsamba/samba_cross.py b/buildtools/wafsamba/samba_cross.py +index 8863c2c53e7..60ddf967237 100644 +--- a/buildtools/wafsamba/samba_cross.py ++++ b/buildtools/wafsamba/samba_cross.py +@@ -139,7 +139,7 @@ class cross_Popen(Utils.subprocess.Popen): + + @conf + def SAMBA_CROSS_ARGS(conf, msg=None): +- '''get exec_args to pass when running cross compiled binaries''' ++ '''get test_args to pass when running cross compiled binaries''' + if not conf.env.CROSS_COMPILE: + return [] + +-- +2.20.1 + diff --git a/package/samba4/0004-cross_compile-fix.patch b/package/samba4/0004-cross_compile-fix.patch deleted file mode 100644 index 45655a9c4c..0000000000 --- a/package/samba4/0004-cross_compile-fix.patch +++ /dev/null @@ -1,94 +0,0 @@ -From a197e0cafb276a9b732f914b1f679ebb487b47f1 Mon Sep 17 00:00:00 2001 -From: pinglin -Date: Tue, 19 Mar 2019 20:46:27 +0800 -Subject: [PATCH] cross_compile argument doesn't apply - -reproduce: - ./configure --cross-compile --cross-answers=XXX - -The output log now will show correct cross-answers. - -Downloaded from -https://github.com/openwrt/packages/blob/master/net/samba4/patches/003-samba-4-10-cross_compile-fix.patch - -Signed-off-by: Bernd Kuhls ---- - third_party/waf/waflib/Context.py | 20 ++++++++++++++++++-- - third_party/waf/waflib/Tools/c_config.py | 11 +++++++---- - 2 files changed, 25 insertions(+), 6 deletions(-) - -diff --git a/third_party/waf/waflib/Context.py b/third_party/waf/waflib/Context.py -index 3222fb1551c..d1c87512095 100644 ---- a/third_party/waf/waflib/Context.py -+++ b/third_party/waf/waflib/Context.py -@@ -359,8 +359,16 @@ class Context(ctx): - - encoding = kw.pop('decode_as', default_encoding) - -+ exec_args = kw.pop('exec_args', []) -+ if isinstance(cmd, str): -+ cmd = [cmd] + exec_args -+ elif isinstance(cmd, list): -+ cmd = cmd + exec_args - try: -- ret, out, err = Utils.run_process(cmd, kw, cargs) -+ if exec_args: -+ ret, out, err = Utils.run_regular_process(cmd, kw, cargs) -+ else: -+ ret, out, err = Utils.run_process(cmd, kw, cargs) - except Exception as e: - raise Errors.WafError('Execution failure: %s' % str(e), ex=e) - -@@ -438,8 +446,16 @@ class Context(ctx): - - encoding = kw.pop('decode_as', default_encoding) - -+ exec_args = kw.pop('exec_args', []) -+ if isinstance(cmd, str): -+ cmd = [cmd] + exec_args -+ elif isinstance(cmd, list): -+ cmd = cmd + exec_args - try: -- ret, out, err = Utils.run_process(cmd, kw, cargs) -+ if exec_args: -+ ret, out, err = Utils.run_regular_process(cmd, kw, cargs) -+ else: -+ ret, out, err = Utils.run_process(cmd, kw, cargs) - except Exception as e: - raise Errors.WafError('Execution failure: %s' % str(e), ex=e) - -diff --git a/third_party/waf/waflib/Tools/c_config.py b/third_party/waf/waflib/Tools/c_config.py -index 76082152cd9..25e468b0844 100644 ---- a/third_party/waf/waflib/Tools/c_config.py -+++ b/third_party/waf/waflib/Tools/c_config.py -@@ -660,20 +660,23 @@ class test_exec(Task.Task): - """ - color = 'PINK' - def run(self): -+ exec_args = Utils.to_list(self.generator.exec_args) -+ - if getattr(self.generator, 'rpath', None): - if getattr(self.generator, 'define_ret', False): -- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()]) -+ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], exec_args=exec_args) - else: -- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()]) -+ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], exec_args=exec_args) - else: - env = self.env.env or {} - env.update(dict(os.environ)) - for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'): - env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '') -+ - if getattr(self.generator, 'define_ret', False): -- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env) -+ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env, exec_args=exec_args) - else: -- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env) -+ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env, exec_args=exec_args) - - @feature('test_exec') - @after_method('apply_link') --- -2.17.1 - diff --git a/package/samba4/0004-wafsamba-avoid-pre-forking-if-cross-compilation-is-e.patch b/package/samba4/0004-wafsamba-avoid-pre-forking-if-cross-compilation-is-e.patch new file mode 100644 index 0000000000..5005e01508 --- /dev/null +++ b/package/samba4/0004-wafsamba-avoid-pre-forking-if-cross-compilation-is-e.patch @@ -0,0 +1,40 @@ +From 9c3cf5f67053124c6bbdf9c4705fa1d2d416f873 Mon Sep 17 00:00:00 2001 +From: Uri Simchoni +Date: Mon, 7 Oct 2019 00:37:31 +0300 +Subject: [PATCH] wafsamba: avoid pre-forking if cross-compilation is enabled + +Waf supports pre-forking to run configuration tests, but this +doesn't play well with Samba's cross-compilation support, because +Samba monkey-patches the actual fork+exec, which doesn't happen +in a pre-forked process pool. + +This patch emulates the impact of WAF_NO_PREFORK env var when +cross-compilation is enabled. + +The blueprint for the solution has been suggested by Thomas Nagy +in https://bugzilla.samba.org/show_bug.cgi?id=13846#c7 (item #2) + +BUG: https://bugzilla.samba.org/show_bug.cgi?id=13846 + +Signed-off-by: Uri Simchoni +Signed-off-by: Bernd Kuhls +--- + buildtools/wafsamba/samba_cross.py | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/buildtools/wafsamba/samba_cross.py b/buildtools/wafsamba/samba_cross.py +index 60ddf967237..6fca470f2b7 100644 +--- a/buildtools/wafsamba/samba_cross.py ++++ b/buildtools/wafsamba/samba_cross.py +@@ -147,6 +147,8 @@ def SAMBA_CROSS_ARGS(conf, msg=None): + if real_Popen is None: + real_Popen = Utils.subprocess.Popen + Utils.subprocess.Popen = cross_Popen ++ Utils.run_process = Utils.run_regular_process ++ Utils.get_process = Utils.alloc_process_pool = Utils.nada + + ret = [] + +-- +2.20.1 + diff --git a/package/samba4/0005-fix_unistd_incl.patch b/package/samba4/0005-fix_unistd_incl.patch deleted file mode 100644 index 80467fadf6..0000000000 --- a/package/samba4/0005-fix_unistd_incl.patch +++ /dev/null @@ -1,27 +0,0 @@ -Fix unistd.h include - -Fixes build error - -source4/heimdal/lib/asn1/asn1_err.c:47:23: error: 'link' redeclared as different kind of symbol - static struct et_list link = { 0, 0 }; - -Downloaded from -https://github.com/openwrt/packages/blob/master/net/samba4/patches/006-samba-4-10-musl_rm_unistd_incl.patch - -Upstream bug report: https://bugzilla.samba.org/show_bug.cgi?id=13856 - -Signed-off-by: Bernd Kuhls - ---- a/lib/replace/replace.h -+++ b/lib/replace/replace.h -@@ -162,10 +162,6 @@ - #include - #endif - --#ifdef HAVE_UNISTD_H --#include --#endif -- - #ifdef HAVE_STRING_H - #include - #endif diff --git a/package/samba4/0005-wafsamba-pass-environment-to-cross-execute-tests.patch b/package/samba4/0005-wafsamba-pass-environment-to-cross-execute-tests.patch new file mode 100644 index 0000000000..7b37b0458f --- /dev/null +++ b/package/samba4/0005-wafsamba-pass-environment-to-cross-execute-tests.patch @@ -0,0 +1,36 @@ +From 8a173f08d32960091d0ee9cab1b1e1e6df17c85a Mon Sep 17 00:00:00 2001 +From: Uri Simchoni +Date: Mon, 7 Oct 2019 00:37:41 +0300 +Subject: [PATCH] wafsamba: pass environment to cross-execute tests + +This can come in handy for cross-execute scripts in general, and +is particularly required by the samba-xc test for cross-answers / +cross-execute, because Samba sets LD_LIBRARY_PATH during rpath +checks, and the test program needs that in order to successfully +run. + +BUG: https://bugzilla.samba.org/show_bug.cgi?id=13846 + +Signed-off-by: Uri Simchoni +Signed-off-by: Bernd Kuhls +--- + buildtools/wafsamba/samba_cross.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/buildtools/wafsamba/samba_cross.py b/buildtools/wafsamba/samba_cross.py +index 6fca470f2b7..0868a855a0d 100644 +--- a/buildtools/wafsamba/samba_cross.py ++++ b/buildtools/wafsamba/samba_cross.py +@@ -120,7 +120,8 @@ class cross_Popen(Utils.subprocess.Popen): + if use_answers: + p = real_Popen(newargs, + stdout=Utils.subprocess.PIPE, +- stderr=Utils.subprocess.PIPE) ++ stderr=Utils.subprocess.PIPE, ++ env=kw.get('env', {})) + ce_out, ce_err = p.communicate() + ans = (p.returncode, samba_utils.get_string(ce_out)) + add_answer(ca_file, msg, ans) +-- +2.20.1 + diff --git a/package/samba4/0006-autobuild-harden-samba-xc-test-suite.patch b/package/samba4/0006-autobuild-harden-samba-xc-test-suite.patch new file mode 100644 index 0000000000..ddd4e136ad --- /dev/null +++ b/package/samba4/0006-autobuild-harden-samba-xc-test-suite.patch @@ -0,0 +1,59 @@ +From 74e95015050ed3dd7229140f2f0f7f0b7a2d8c01 Mon Sep 17 00:00:00 2001 +From: Uri Simchoni +Date: Wed, 9 Oct 2019 21:53:43 +0300 +Subject: [PATCH] autobuild: harden samba-xc test suite + +Add more checks which directly test the behavior of +--cross-answers and --cross-execute. + +Previous test tested things in a round-about way, checking +that running in all three modes (native, cross-execute, +cross-answers) yields the same result. It was vulnerable +to a degradation in which cross-compilation modes didn't +work at all and were running native tests, which is +what happened with the upgrade of waf. + +The added tests check the following: +- That cross-excute with cross-answers sets the cross-answers file +- That the content of cross-answers file actually affects the build + configuration +- That a missing line in cross-answers fails the build + +BUG: https://bugzilla.samba.org/show_bug.cgi?id=13846 + +Signed-off-by: Uri Simchoni +Signed-off-by: Bernd Kuhls +--- + script/autobuild.py | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/script/autobuild.py b/script/autobuild.py +index ef75f507add..465d1950ec2 100755 +--- a/script/autobuild.py ++++ b/script/autobuild.py +@@ -430,12 +430,22 @@ tasks = { + ("configure-native", "./configure.developer --with-selftest-prefix=./bin/ab" + samba_configure_params), + ("configure-cross-execute", "./configure.developer --out ./bin-xe --cross-compile --cross-execute=script/identity_cc.sh" \ + " --cross-answers=./bin-xe/cross-answers.txt --with-selftest-prefix=./bin-xe/ab" + samba_configure_params), ++ ("verify-cross-execute-output", "grep '^Checking value of NSIG' ./bin-xe/cross-answers.txt"), + ("configure-cross-answers", "./configure.developer --out ./bin-xa --cross-compile" \ + " --cross-answers=./bin-xe/cross-answers.txt --with-selftest-prefix=./bin-xa/ab" + samba_configure_params), + ("compare-results", "script/compare_cc_results.py " + "./bin/c4che/default{} " + "./bin-xe/c4che/default{} " + "./bin-xa/c4che/default{}".format(*([CACHE_SUFFIX]*3))), ++ ("modify-cross-answers", "sed -i.bak -e 's/^\\(Checking value of NSIG:\\) .*/\\1 \"1234\"/' ./bin-xe/cross-answers.txt"), ++ ("configure-cross-answers-modified", "./configure.developer --out ./bin-xa2 --cross-compile" \ ++ " --cross-answers=./bin-xe/cross-answers.txt --with-selftest-prefix=./bin-xa2/ab" + samba_configure_params), ++ ("verify-cross-answers", "test $(sed -n -e 's/VALUEOF_NSIG = \\(.*\\)/\\1/p' ./bin-xa2/c4che/default{})" \ ++ " = \"'1234'\"".format(CACHE_SUFFIX)), ++ ("invalidate-cross-answers", "sed -i.bak -e '/^Checking value of NSIG/d' ./bin-xe/cross-answers.txt"), ++ ("configure-cross-answers-fail", "./configure.developer --out ./bin-xa3 --cross-compile" \ ++ " --cross-answers=./bin-xe/cross-answers.txt --with-selftest-prefix=./bin-xa3/ab" + samba_configure_params + \ ++ " ; test $? -ne 0"), + ], + + # test build with -O3 -- catches extra warnings and bugs, tests the ad_dc environments +-- +2.20.1 + diff --git a/package/samba4/0007-build-find-pre-built-heimdal-build-tools-in-case-of-.patch b/package/samba4/0007-build-find-pre-built-heimdal-build-tools-in-case-of-.patch new file mode 100644 index 0000000000..3405e1b0cf --- /dev/null +++ b/package/samba4/0007-build-find-pre-built-heimdal-build-tools-in-case-of-.patch @@ -0,0 +1,86 @@ +From e002d2ef2688d5433d2bd03aa4d77a0ec5ac4e63 Mon Sep 17 00:00:00 2001 +From: Uri Simchoni +Date: Sun, 20 Oct 2019 00:03:14 +0300 +Subject: [PATCH] build: find pre-built heimdal build tools in case of embedded + heimdal + +This patch fixes the case of finding asn1_compile and compile_et for +building embedded heimdal, by setting +--bundled-libraries='!asn1_compile,!compile_et' as configure flags. + +The Heimdal build tools compile_et and asn1_compile are needed *only* +if we use the embedded heimdal (otherwise we don't build heimdal and +use headers that have been generated by those tools elsewhere). + +For cross-compilation with embedded heimdal, it is vital to use host build +tools, and so asn1_compile and compile_et must be supplied and not +built. One way of doing this would be to set the COMPILE_ET and +ASN1_COMPILE env vars to the location of supplied binaries. Another way, +which is more commonly used, is to exclude asn1_compile and compile_et +from bundled packages via the switch +-bundled-libraries='!asn1_compile,!compile_et'. When this is done, +the build script searches the path for those tools and sets the +ASN1_COMPILE and COMPILE_ET vars accordingly. (this is admittedly +kind of a round-about way of doing things but this has become the +de-facto standard amongst embedded distro builders). + +In commit 8061983d4882f3ba3f12da71443b035d7b672eec, this process of +finding the binaris has been moved to be carried out only in the +system heimdal case. As explained above, we only need these tools, +and hence the check, in bundled mode. + +BUG: https://bugzilla.samba.org/show_bug.cgi?id=14164 + +Signed-off-by: Uri Simchoni +Signed-off-by: Bernd Kuhls +--- + wscript_configure_embedded_heimdal | 11 +++++++++++ + wscript_configure_system_heimdal | 11 ----------- + 2 files changed, 11 insertions(+), 11 deletions(-) + +diff --git a/wscript_configure_embedded_heimdal b/wscript_configure_embedded_heimdal +index 8c55ae2a938..4fdae8062c5 100644 +--- a/wscript_configure_embedded_heimdal ++++ b/wscript_configure_embedded_heimdal +@@ -1 +1,12 @@ + conf.RECURSE('source4/heimdal_build') ++ ++def check_system_heimdal_binary(name): ++ if conf.LIB_MAY_BE_BUNDLED(name): ++ return False ++ if not conf.find_program(name, var=name.upper()): ++ return False ++ conf.define('USING_SYSTEM_%s' % name.upper(), 1) ++ return True ++ ++check_system_heimdal_binary("compile_et") ++check_system_heimdal_binary("asn1_compile") +diff --git a/wscript_configure_system_heimdal b/wscript_configure_system_heimdal +index 0ff6dad2f55..f77c177442f 100644 +--- a/wscript_configure_system_heimdal ++++ b/wscript_configure_system_heimdal +@@ -36,14 +36,6 @@ def check_system_heimdal_lib(name, functions='', headers='', onlyif=None): + conf.define('USING_SYSTEM_%s' % name.upper(), 1) + return True + +-def check_system_heimdal_binary(name): +- if conf.LIB_MAY_BE_BUNDLED(name): +- return False +- if not conf.find_program(name, var=name.upper()): +- return False +- conf.define('USING_SYSTEM_%s' % name.upper(), 1) +- return True +- + check_system_heimdal_lib("com_err", "com_right_r com_err", "com_err.h") + + if check_system_heimdal_lib("roken", "rk_socket_set_reuseaddr", "roken.h"): +@@ -94,6 +86,3 @@ finally: + # With the proper checks in place we should be able to build against the system libtommath. + #if conf.CHECK_BUNDLED_SYSTEM('tommath', checkfunctions='mp_init', headers='tommath.h'): + # conf.define('USING_SYSTEM_TOMMATH', 1) +- +-check_system_heimdal_binary("compile_et") +-check_system_heimdal_binary("asn1_compile") +-- +2.20.1 + diff --git a/package/samba4/0008-Fix-unistd.h-include.patch b/package/samba4/0008-Fix-unistd.h-include.patch new file mode 100644 index 0000000000..f01b899a18 --- /dev/null +++ b/package/samba4/0008-Fix-unistd.h-include.patch @@ -0,0 +1,38 @@ +From 85c33f89df8607ace0707e1360ff0f79f3e8f5f3 Mon Sep 17 00:00:00 2001 +From: Andy Walsh +Date: Wed, 6 Nov 2019 19:28:30 +0100 +Subject: [PATCH] Fix unistd.h include + +Fixes build error + +source4/heimdal/lib/asn1/asn1_err.c:47:23: error: 'link' redeclared as different kind of symbol + static struct et_list link = { 0, 0 }; + +Downloaded from +https://github.com/Andy2244/openwrt-extra/blob/samba-4.10/samba4/patches/006-samba-4-10-musl_rm_unistd_incl.patch + +Upstream bug report: https://bugzilla.samba.org/show_bug.cgi?id=13856 + +Signed-off-by: Bernd Kuhls +--- + lib/replace/replace.h | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/lib/replace/replace.h b/lib/replace/replace.h +index 1658465866e..e6768c4ae51 100644 +--- a/lib/replace/replace.h ++++ b/lib/replace/replace.h +@@ -168,10 +168,6 @@ + #include + #endif + +-#ifdef HAVE_UNISTD_H +-#include +-#endif +- + #ifdef HAVE_STRING_H + #include + #endif +-- +2.20.1 + diff --git a/package/samba4/0006-heimdal_build-wscript_build-do-not-add-host-include-.patch b/package/samba4/0009-heimdal_build-wscript_build-do-not-add-host-include-.patch similarity index 84% rename from package/samba4/0006-heimdal_build-wscript_build-do-not-add-host-include-.patch rename to package/samba4/0009-heimdal_build-wscript_build-do-not-add-host-include-.patch index 08d8382ab0..ff1f05ec4d 100644 --- a/package/samba4/0006-heimdal_build-wscript_build-do-not-add-host-include-.patch +++ b/package/samba4/0009-heimdal_build-wscript_build-do-not-add-host-include-.patch @@ -1,8 +1,7 @@ -From 189440643157fbc872a1670b3e30b6c459dbd930 Mon Sep 17 00:00:00 2001 +From 25a8d80820ee6713988d72cca69707b03d06e707 Mon Sep 17 00:00:00 2001 From: Bernd Kuhls Date: Sun, 21 Jul 2019 15:12:03 +0200 -Subject: [PATCH] heimdal_build/wscript_build: do not add host include - patch +Subject: [PATCH] heimdal_build/wscript_build: do not add host include patch Fixes cross-compile. @@ -14,10 +13,10 @@ Signed-off-by: Bernd Kuhls 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source4/heimdal_build/wscript_build b/source4/heimdal_build/wscript_build -index 45938b88315..e896c3e9454 100644 +index 163b622fca9..27adbc06dc6 100644 --- a/source4/heimdal_build/wscript_build +++ b/source4/heimdal_build/wscript_build -@@ -131,7 +131,7 @@ def HEIMDAL_ASN1(name, source, +@@ -140,7 +140,7 @@ def HEIMDAL_ASN1(name, source, samba_cflags = CURRENT_CFLAGS(bld, name, ''), depends_on = '', samba_deps = to_list('roken replace'), diff --git a/package/samba4/Config.in b/package/samba4/Config.in index e89289b153..a6997c13eb 100644 --- a/package/samba4/Config.in +++ b/package/samba4/Config.in @@ -15,6 +15,7 @@ config BR2_PACKAGE_SAMBA4 depends on !BR2_TOOLCHAIN_USES_MUSL select BR2_PACKAGE_CMOCKA select BR2_PACKAGE_E2FSPROGS + select BR2_PACKAGE_GNUTLS select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_PACKAGE_POPT select BR2_PACKAGE_PYTHON3 if !BR2_PACKAGE_PYTHON @@ -30,7 +31,6 @@ if BR2_PACKAGE_SAMBA4 config BR2_PACKAGE_SAMBA4_AD_DC bool "AD DC" - select BR2_PACKAGE_GNUTLS select BR2_PACKAGE_JANSSON help Enable Active Directory Domain Controller functionality. diff --git a/package/samba4/samba4.hash b/package/samba4/samba4.hash index 02220772f6..d4b177a45f 100644 --- a/package/samba4/samba4.hash +++ b/package/samba4/samba4.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -# https://download.samba.org/pub/samba/stable/samba-4.10.10.tar.asc -sha256 700c734b51610e2feaa0d6744f9bec0c0d8917bca8cc78d5b63a4591f32866a5 samba-4.10.10.tar.gz +# https://download.samba.org/pub/samba/stable/samba-4.11.2.tar.asc +sha256 d27bf1b7cf5f25fb5587896fccb73747a705f7cf7ee352b5cbab82841db09f1f samba-4.11.2.tar.gz sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/samba4/samba4.mk b/package/samba4/samba4.mk index c7910d87c8..201328fe4b 100644 --- a/package/samba4/samba4.mk +++ b/package/samba4/samba4.mk @@ -4,7 +4,7 @@ # ################################################################################ -SAMBA4_VERSION = 4.10.10 +SAMBA4_VERSION = 4.11.2 SAMBA4_SITE = https://download.samba.org/pub/samba/stable SAMBA4_SOURCE = samba-$(SAMBA4_VERSION).tar.gz SAMBA4_INSTALL_STAGING = YES @@ -12,7 +12,7 @@ SAMBA4_LICENSE = GPL-3.0+ SAMBA4_LICENSE_FILES = COPYING SAMBA4_DEPENDENCIES = \ host-e2fsprogs host-heimdal host-nfs-utils \ - cmocka e2fsprogs popt zlib \ + cmocka e2fsprogs gnutls popt zlib \ $(if $(BR2_PACKAGE_LIBAIO),libaio) \ $(if $(BR2_PACKAGE_LIBCAP),libcap) \ $(if $(BR2_PACKAGE_READLINE),readline) \ @@ -76,13 +76,6 @@ else SAMBA4_CONF_OPTS += --without-fam endif -ifeq ($(BR2_PACKAGE_GNUTLS),y) -SAMBA4_CONF_OPTS += --enable-gnutls -SAMBA4_DEPENDENCIES += gnutls -else -SAMBA4_CONF_OPTS += --disable-gnutls -endif - ifeq ($(BR2_PACKAGE_LIBARCHIVE),y) SAMBA4_CONF_OPTS += --with-libarchive SAMBA4_DEPENDENCIES += libarchive diff --git a/package/sdbusplus/Config.in b/package/sdbusplus/Config.in new file mode 100644 index 0000000000..e278d17156 --- /dev/null +++ b/package/sdbusplus/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_SDBUSPLUS + bool "sdbusplus" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_SYSTEMD + help + A C++ library for sd-bus with a bindings and doc generator. + + This will build the target library. See the host package for + the bindings and documentation generation program. + + https://github.com/openbmc/sdbusplus + +comment "sdbusplus needs systemd and a toolchain w/ C++" + depends on !BR2_PACKAGE_SYSTEMD || !BR2_INSTALL_LIBSTDCPP diff --git a/package/sdbusplus/Config.in.host b/package/sdbusplus/Config.in.host new file mode 100644 index 0000000000..2b1d1ce31d --- /dev/null +++ b/package/sdbusplus/Config.in.host @@ -0,0 +1,10 @@ +config BR2_PACKAGE_HOST_SDBUSPLUS + bool "host-sdbusplus" + select BR2_PACKAGE_HOST_PKGCONF + help + A C++ library for sd-bus with a bindings and doc generator. + + This will build the Python host side generation tool for + bindings and documentation. + + https://github.com/openbmc/sdbusplus diff --git a/package/sdbusplus/sdbusplus.hash b/package/sdbusplus/sdbusplus.hash new file mode 100644 index 0000000000..b21d2ddd23 --- /dev/null +++ b/package/sdbusplus/sdbusplus.hash @@ -0,0 +1,5 @@ +# Locally calculated +sha256 c67b8f3d9b74fd0d70eb6eec3b2ec2d496d0f169deedf6fc07dbff2c2f275d2b sdbusplus-4212292bcf136d04b38ba5116aa568b0fa312798.tar.gz + +# License file, locally calculated +sha256 b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1 LICENSE diff --git a/package/sdbusplus/sdbusplus.mk b/package/sdbusplus/sdbusplus.mk new file mode 100644 index 0000000000..e7a3dc2665 --- /dev/null +++ b/package/sdbusplus/sdbusplus.mk @@ -0,0 +1,32 @@ +################################################################################ +# +# sdbusplus +# +################################################################################ + +SDBUSPLUS_VERSION = 4212292bcf136d04b38ba5116aa568b0fa312798 +SDBUSPLUS_SITE = $(call github,openbmc,sdbusplus,$(SDBUSPLUS_VERSION)) +SDBUSPLUS_DEPENDENCIES = host-autoconf-archive host-pkgconf systemd +HOST_SDBUSPLUS_DEPENDENCIES = \ + host-autoconf-archive \ + host-pkgconf \ + $(if $(BR2_PACKAGE_PYTHON3),host-python3,host-python) \ + host-python-inflection \ + host-python-mako \ + host-python-pyyaml +SDBUSPLUS_CONF_OPTS = --disable-sdbuspp +HOST_SDBUSPLUS_CONF_OPTS = --disable-libsdbusplus +SDBUSPLUS_AUTORECONF = YES +SDBUSPLUS_AUTORECONF_OPTS = --include=$(HOST_DIR)/share/autoconf-archive +SDBUSPLUS_INSTALL_STAGING = YES +SDBUSPLUS_LICENSE = Apache-2.0 +SDBUSPLUS_LICENSE_FILES = LICENSE + +define SDBUSPLUS_CREATE_M4 + mkdir -p $(@D)/m4 +endef +SDBUSPLUS_POST_PATCH_HOOKS += SDBUSPLUS_CREATE_M4 +HOST_SDBUSPLUS_POST_PATCH_HOOKS += SDBUSPLUS_CREATE_M4 + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/shadowsocks-libev/shadowsocks-libev.hash b/package/shadowsocks-libev/shadowsocks-libev.hash index b8bc4379a9..76928ebb48 100644 --- a/package/shadowsocks-libev/shadowsocks-libev.hash +++ b/package/shadowsocks-libev/shadowsocks-libev.hash @@ -1,5 +1,5 @@ # Locally computed -sha256 65a67c355df1794dc0ef94d80d2d596fd590b13fdcd0a21bda28859c88924ce5 shadowsocks-libev-3.2.4.tar.gz +sha256 677356a5ed6b5ae9e32a898061db2587158ff27e245db03f4bde9b006ef12dc9 shadowsocks-libev-3.3.3.tar.gz # License files, locally calculated sha256 736883f97d44dbec288bb82819f18f4f86d02ae3192f6a9abefa00db76bace41 COPYING diff --git a/package/shadowsocks-libev/shadowsocks-libev.mk b/package/shadowsocks-libev/shadowsocks-libev.mk index fcebe34a4b..4b0b963eef 100644 --- a/package/shadowsocks-libev/shadowsocks-libev.mk +++ b/package/shadowsocks-libev/shadowsocks-libev.mk @@ -4,7 +4,7 @@ # ################################################################################ -SHADOWSOCKS_LIBEV_VERSION = 3.2.4 +SHADOWSOCKS_LIBEV_VERSION = 3.3.3 SHADOWSOCKS_LIBEV_SITE = https://github.com/shadowsocks/shadowsocks-libev/releases/download/v$(SHADOWSOCKS_LIBEV_VERSION) SHADOWSOCKS_LIBEV_LICENSE = GPL-3.0+, BSD-2-Clause (libbloom), BSD-3-Clause (libcork, libipset) SHADOWSOCKS_LIBEV_LICENSE_FILES = COPYING libbloom/LICENSE libcork/COPYING diff --git a/package/spidermonkey/0001-allow-newer-autoconf-versions.patch b/package/spidermonkey/0001-allow-newer-autoconf-versions.patch new file mode 100644 index 0000000000..61becb68f3 --- /dev/null +++ b/package/spidermonkey/0001-allow-newer-autoconf-versions.patch @@ -0,0 +1,61 @@ +From 646a78262b18e19721cd41ee515215221dd241b6 Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Thu, 12 Jul 2018 18:12:42 +0800 +Subject: [PATCH] allow newer autoconf versions + +Spidermonkey is hardcoded to use Autoconf 2.13, which is from 1999! +The reasoning behind using 2.13 is because newer versions of Autoconf at the +time did not work correctly with the custom m4 macros in the source code. +However: Because we are building just the spidermonkey engine instead of the +entire firefox package, and we are using a tarball with a pre-setup +old-configure file, there is no need for the old version of autoconf. + +See: https://bugzilla.mozilla.org/show_bug.cgi?id=104642 + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Hongxu Jia +Signed-off-by: Adam Duskett +--- + build/moz.configure/old.configure | 4 ++-- + js/src/old-configure | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/build/moz.configure/old.configure b/build/moz.configure/old.configure +index 17d0c5bf..436fcc5e 100644 +--- a/build/moz.configure/old.configure ++++ b/build/moz.configure/old.configure +@@ -33,7 +33,7 @@ def autoconf(mozconfig, autoconf): + autoconf = autoconf[0] if autoconf else None + + for ac in (mozconfig_autoconf, autoconf, 'autoconf-2.13', 'autoconf2.13', +- 'autoconf213'): ++ 'autoconf213', 'autoconf'): + if ac: + autoconf = find_program(ac) + if autoconf: +@@ -87,7 +87,7 @@ def prepare_configure(old_configure, mozconfig, autoconf, build_env, shell, + old_configure = os.path.join(old_configure_dir, 'js', 'src', + os.path.basename(old_configure)) + +- refresh = True ++ refresh = False + if exists(old_configure): + mtime = getmtime(old_configure) + aclocal = os.path.join(build_env.topsrcdir, 'build', 'autoconf', +diff --git a/js/src/old-configure b/js/src/old-configure +index 58cc646f..ebd2646e 100644 +--- a/js/src/old-configure ++++ b/js/src/old-configure +@@ -587,7 +587,7 @@ if test -z "$srcdir"; then + ac_prog=$0 + ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` + test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. +- srcdir=$ac_confdir ++ srcdir="$ac_confdir/../../" + if test ! -r $srcdir/$ac_unique_file; then + srcdir=.. + fi +-- +2.23.0 + diff --git a/package/spidermonkey/0002-allow-building-in-tree.patch b/package/spidermonkey/0002-allow-building-in-tree.patch new file mode 100644 index 0000000000..533747cb41 --- /dev/null +++ b/package/spidermonkey/0002-allow-building-in-tree.patch @@ -0,0 +1,47 @@ +From 07d40f72e1ed1d84a5ddd98ae8490d41a2e19c46 Mon Sep 17 00:00:00 2001 +From: Arjan van de Ven +Date: Wed, 5 Sep 2018 11:39:01 +0000 +Subject: [PATCH] allow building in tree + +By default, spidermonkey must be configured and built out-of-tree, +otherwise the following error occurs: + +FATAL ERROR PROCESSING MOZBUILD FILE +============================== + +The error occurred while processing the following file or one of the files it +includes: + js/src/shell/moz.build + +The error occurred when validating the result of the execution. The reported +error is: + Path specified in LOCAL_INCLUDES is not allowed: + .. (resolved to js/src) + +Remove this check, as spidermonkey builds without issue in-tree. + +Signed-off-by: Arjan van de Ven +Signed-off-by: Adam Duskett +--- + python/mozbuild/mozbuild/frontend/emitter.py | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/python/mozbuild/mozbuild/frontend/emitter.py b/python/mozbuild/mozbuild/frontend/emitter.py +index 642b381c..c37fbf5d 100644 +--- a/python/mozbuild/mozbuild/frontend/emitter.py ++++ b/python/mozbuild/mozbuild/frontend/emitter.py +@@ -1127,11 +1127,6 @@ class TreeMetadataEmitter(LoggingMixin): + raise SandboxValidationError('Path specified in LOCAL_INCLUDES ' + 'does not exist: %s (resolved to %s)' % (local_include, + full_path), context) +- if (full_path == context.config.topsrcdir or +- full_path == context.config.topobjdir): +- raise SandboxValidationError('Path specified in LOCAL_INCLUDES ' +- 'is not allowed: %s (resolved to %s)' % (local_include, +- full_path), context) + include_obj = LocalInclude(context, local_include) + local_includes.append(include_obj.path.full_path) + yield include_obj +-- +2.23.0 + diff --git a/package/spidermonkey/0003-allow-unknown-configuration-options.patch b/package/spidermonkey/0003-allow-unknown-configuration-options.patch new file mode 100644 index 0000000000..b489075a94 --- /dev/null +++ b/package/spidermonkey/0003-allow-unknown-configuration-options.patch @@ -0,0 +1,35 @@ +From 4a06a1a6a71293decb83aee7adb74bc709493106 Mon Sep 17 00:00:00 2001 +From: Philip Chimento +Date: Wed, 5 Jul 2017 22:57:09 -0700 +Subject: [PATCH] allow unknown configuration options + +By default, if an unknown parameter is passed to configure, an error is raised. +Replace the raise with a pass and continue. + +Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=1379540 + +Signed-off-by: Philip Chimento +Signed-off-by: Adam Duskett +--- + js/src/configure | 9 +++++++++ + python/mozbuild/mozbuild/configure/__init__.py | 2 +- + python/mozbuild/mozbuild/configure/options.py | 6 +++++- + 3 files changed, 15 insertions(+), 2 deletions(-) + create mode 100755 js/src/configure + +diff --git a/python/mozbuild/mozbuild/configure/__init__.py b/python/mozbuild/mozbuild/configure/__init__.py +index 0fe640ca..09b460d3 100644 +--- a/python/mozbuild/mozbuild/configure/__init__.py ++++ b/python/mozbuild/mozbuild/configure/__init__.py +@@ -421,7 +421,7 @@ def run(self, path=None): + # All options should have been removed (handled) by now. + for arg in self._helper: + without_value = arg.split('=', 1)[0] +- raise InvalidOptionError('Unknown option: %s' % without_value) ++ pass + + # Run the execution queue + for func, args in self._execution_queue: +-- +2.23.0 + diff --git a/package/spidermonkey/0004-fix-building-with-musl.patch b/package/spidermonkey/0004-fix-building-with-musl.patch new file mode 100644 index 0000000000..8d8b10fb71 --- /dev/null +++ b/package/spidermonkey/0004-fix-building-with-musl.patch @@ -0,0 +1,133 @@ +From 0c9e8f586ba52a9aef5ed298e8315b2598b8fb72 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 25 May 2019 16:54:45 -0700 +Subject: [PATCH] fix building with musl + +The MIPS specific header is not provided by musl +linux kernel headers provide which has same definitions + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +Signed-off-by: Adam Duskett +--- +--- + js/src/jsmath.cpp | 2 +- + memory/build/Mutex.h | 4 ++-- + mozglue/misc/TimeStamp_darwin.cpp | 1 - + mozglue/misc/TimeStamp_posix.cpp | 1 - + nsprpub/pr/src/misc/prsystem.c | 1 - + third_party/python/psutil/psutil/_psutil_bsd.c | 1 - + third_party/python/psutil/psutil/_psutil_osx.c | 1 - + third_party/python/psutil/psutil/arch/osx/process_info.c | 1 - + 8 files changed, 3 insertions(+), 9 deletions(-) + +diff --git a/js/src/jsmath.cpp b/js/src/jsmath.cpp +index a28968be..8facaa81 100644 +--- a/js/src/jsmath.cpp ++++ b/js/src/jsmath.cpp +@@ -71,7 +71,7 @@ + #elif defined(__s390__) + #define GETRANDOM_NR 349 + #elif defined(__mips__) +-#include ++#include + #if _MIPS_SIM == _MIPS_SIM_ABI32 + #define GETRANDOM_NR 4353 + #elif _MIPS_SIM == _MIPS_SIM_ABI64 +diff --git a/memory/build/Mutex.h b/memory/build/Mutex.h +index cb8b1e7d..7b9eb1de 100644 +--- a/memory/build/Mutex.h ++++ b/memory/build/Mutex.h +@@ -42,7 +42,7 @@ struct Mutex { + if (pthread_mutexattr_init(&attr) != 0) { + return false; + } +- pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ADAPTIVE_NP); ++ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_STALLED); + if (pthread_mutex_init(&mMutex, &attr) != 0) { + pthread_mutexattr_destroy(&attr); + return false; +@@ -102,7 +102,7 @@ typedef Mutex StaticMutex; + + #if defined(XP_DARWIN) + #define STATIC_MUTEX_INIT OS_SPINLOCK_INIT +-#elif defined(XP_LINUX) && !defined(ANDROID) ++#elif defined(XP_LINUX) && !defined(ANDROID) && defined(__GLIBC__) + #define STATIC_MUTEX_INIT PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP + #else + #define STATIC_MUTEX_INIT PTHREAD_MUTEX_INITIALIZER +diff --git a/mozglue/misc/TimeStamp_darwin.cpp b/mozglue/misc/TimeStamp_darwin.cpp +index d2abe9a5..d065649c 100644 +--- a/mozglue/misc/TimeStamp_darwin.cpp ++++ b/mozglue/misc/TimeStamp_darwin.cpp +@@ -19,7 +19,6 @@ + + #include + #include +-#include + #include + #include + +diff --git a/mozglue/misc/TimeStamp_posix.cpp b/mozglue/misc/TimeStamp_posix.cpp +index 86c7609a..a37bd93a 100644 +--- a/mozglue/misc/TimeStamp_posix.cpp ++++ b/mozglue/misc/TimeStamp_posix.cpp +@@ -21,7 +21,6 @@ + #if defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || \ + defined(__OpenBSD__) + #include +-#include + #endif + + #if defined(__DragonFly__) || defined(__FreeBSD__) +diff --git a/nsprpub/pr/src/misc/prsystem.c b/nsprpub/pr/src/misc/prsystem.c +index eba85fb0..54b57bb9 100644 +--- a/nsprpub/pr/src/misc/prsystem.c ++++ b/nsprpub/pr/src/misc/prsystem.c +@@ -27,7 +27,6 @@ + || defined(OPENBSD) || defined(DRAGONFLY) || defined(DARWIN) + #define _PR_HAVE_SYSCTL + #include +-#include + #endif + + #if defined(DARWIN) +diff --git a/third_party/python/psutil/psutil/_psutil_bsd.c b/third_party/python/psutil/psutil/_psutil_bsd.c +index 9a2ed04b..9e0d34cb 100644 +--- a/third_party/python/psutil/psutil/_psutil_bsd.c ++++ b/third_party/python/psutil/psutil/_psutil_bsd.c +@@ -29,7 +29,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/third_party/python/psutil/psutil/_psutil_osx.c b/third_party/python/psutil/psutil/_psutil_osx.c +index 55dd64ca..ec356339 100644 +--- a/third_party/python/psutil/psutil/_psutil_osx.c ++++ b/third_party/python/psutil/psutil/_psutil_osx.c +@@ -13,7 +13,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/third_party/python/psutil/psutil/arch/osx/process_info.c b/third_party/python/psutil/psutil/arch/osx/process_info.c +index 40c79a2c..8de0dcbd 100644 +--- a/third_party/python/psutil/psutil/arch/osx/process_info.c ++++ b/third_party/python/psutil/psutil/arch/osx/process_info.c +@@ -16,7 +16,6 @@ + #include + #include + #include +-#include + #include + + #include "process_info.h" +-- +2.23.0 diff --git a/package/spidermonkey/0005-add-riscv-support.patch b/package/spidermonkey/0005-add-riscv-support.patch new file mode 100644 index 0000000000..6b7ea3265f --- /dev/null +++ b/package/spidermonkey/0005-add-riscv-support.patch @@ -0,0 +1,121 @@ +From 64ad80e6d95871f17be4cd01da15581f41ac0b2b Mon Sep 17 00:00:00 2001 +From: Stefan O'Rear +Date: Fri, 11 Nov 2016 21:10:34 -0700 +Subject: [PATCH] Add RISC-V support + +These changes allow spidermonkey to cross-compile for riscv64 and riscv32. + +Upstream-status: Submitted +See: https://bugzilla.mozilla.org/show_bug.cgi?id=1318905 + +Signed-off-by: Stefan O'Rear +Signed-off-by: Ricardo Salveti +Signed-off-by: Adam Duskett +--- + build/autoconf/config.guess | 3 +++ + build/moz.configure/init.configure | 3 +++ + js/src/jit/AtomicOperations.h | 2 ++ + js/src/jit/none/AtomicOperations-feeling-lucky.h | 8 ++++++++ + mfbt/tests/TestPoisonArea.cpp | 3 +++ + python/mozbuild/mozbuild/configure/constants.py | 4 ++++ + 6 files changed, 23 insertions(+) + +diff --git a/build/autoconf/config.guess b/build/autoconf/config.guess +index d5d667d4..1277a862 100755 +--- a/build/autoconf/config.guess ++++ b/build/autoconf/config.guess +@@ -1029,6 +1029,9 @@ EOF + ppcle:Linux:*:*) + echo powerpcle-unknown-linux-${LIBC} + exit ;; ++ riscv32:Linux:*:* | riscv64:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux-${LIBC} + exit ;; +diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure +index 83b8d705..ef33db50 100644 +--- a/build/moz.configure/init.configure ++++ b/build/moz.configure/init.configure +@@ -676,6 +676,9 @@ def split_triplet(triplet, allow_unknown=False): + elif cpu == 'sh4': + canonical_cpu = 'sh4' + endianness = 'little' ++ elif cpu in ('riscv32', 'riscv64'): ++ canonical_cpu = cpu ++ endianness = 'little' + elif allow_unknown: + canonical_cpu = cpu + endianness = 'unknown' +diff --git a/js/src/jit/AtomicOperations.h b/js/src/jit/AtomicOperations.h +index 3501e65b..fda0b148 100644 +--- a/js/src/jit/AtomicOperations.h ++++ b/js/src/jit/AtomicOperations.h +@@ -393,6 +393,8 @@ inline bool AtomicOperations::isLockfreeJS(int32_t size) { + #include "jit/none/AtomicOperations-feeling-lucky.h" + #elif defined(__s390__) || defined(__s390x__) + #include "jit/none/AtomicOperations-feeling-lucky.h" ++#elif defined(__riscv) ++#include "jit/none/AtomicOperations-feeling-lucky.h" + #else + #error "No AtomicOperations support provided for this platform" + #endif +diff --git a/js/src/jit/none/AtomicOperations-feeling-lucky.h b/js/src/jit/none/AtomicOperations-feeling-lucky.h +index c0b43699..42b1f3e0 100644 +--- a/js/src/jit/none/AtomicOperations-feeling-lucky.h ++++ b/js/src/jit/none/AtomicOperations-feeling-lucky.h +@@ -80,6 +80,14 @@ + #define GNUC_COMPATIBLE + #endif + ++#ifdef __riscv ++#define GNUC_COMPATIBLE ++#ifdef __riscv_xlen == 64 ++#define HAS_64BIT_ATOMICS ++#define HAS_64BIT_LOCKFREE ++#endif ++#endif ++ + // The default implementation tactic for gcc/clang is to use the newer + // __atomic intrinsics added for use in C++11 . Where that + // isn't available, we use GCC's older __sync functions instead. +diff --git a/mfbt/tests/TestPoisonArea.cpp b/mfbt/tests/TestPoisonArea.cpp +index 06c24ed0..fba9263c 100644 +--- a/mfbt/tests/TestPoisonArea.cpp ++++ b/mfbt/tests/TestPoisonArea.cpp +@@ -168,6 +168,9 @@ static const ia64_instr _return_instr = + #define RETURN_INSTR _return_instr + #define RETURN_INSTR_TYPE ia64_instr + ++#elif defined __riscv ++#define RETURN_INSTR 0x80828082 /* ret; ret */ ++ + #else + #error "Need return instruction for this architecture" + #endif +diff --git a/python/mozbuild/mozbuild/configure/constants.py b/python/mozbuild/mozbuild/configure/constants.py +index 33ae5a45..1067b6a4 100644 +--- a/python/mozbuild/mozbuild/configure/constants.py ++++ b/python/mozbuild/mozbuild/configure/constants.py +@@ -50,6 +50,8 @@ CPU_bitness = { + 'mips64': 64, + 'ppc': 32, + 'ppc64': 64, ++ 'riscv32': 32, ++ 'riscv64': 64, + 's390': 32, + 's390x': 64, + 'sh4': 32, +@@ -82,6 +84,8 @@ CPU_preprocessor_checks = OrderedDict(( + ('s390', '__s390__'), + ('ppc64', '__powerpc64__'), + ('ppc', '__powerpc__'), ++ ('riscv32', '__riscv && __SIZEOF_POINTER__ == 4'), ++ ('riscv64', '__riscv && __SIZEOF_POINTER__ == 8'), + ('Alpha', '__alpha__'), + ('hppa', '__hppa__'), + ('sparc64', '__sparc__ && __arch64__'), +-- +2.23.0 + diff --git a/package/spidermonkey/0006-copy-headers-on-install-instead-of-symlinking.patch b/package/spidermonkey/0006-copy-headers-on-install-instead-of-symlinking.patch new file mode 100644 index 0000000000..10ca54c702 --- /dev/null +++ b/package/spidermonkey/0006-copy-headers-on-install-instead-of-symlinking.patch @@ -0,0 +1,34 @@ +From 903a79a1efff18fc7cc50db09a3fe5d768adc9a8 Mon 19 Mar 2018 09:58:06 +0100 +From: Rico Tzschichholz +Date: Wed, 5 Jul 2017 22:45:59 -0700 +Subject: build: Copy headers on install instead of symlinking + +Patch ported from mozjs52 by Philip Chimento + +Signed-off-by: Rico Tzschichholz +Signed-off-by: Adam Duskett +--- + python/mozbuild/mozbuild/backend/recursivemake.py | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/python/mozbuild/mozbuild/backend/recursivemake.py b/python/mozbuild/mozbuild/backend/recursivemake.py +index dd9020d..6918ef8 100644 +--- a/python/mozbuild/mozbuild/backend/recursivemake.py ++++ b/python/mozbuild/mozbuild/backend/recursivemake.py +@@ -1427,11 +1427,11 @@ class RecursiveMakeBackend(CommonBackend): + raise Exception("Wildcards are only supported in the filename part of " + "srcdir-relative or absolute paths.") + +- install_manifest.add_pattern_link(basepath, wild, path) ++ install_manifest.add_pattern_copy(basepath, wild, path) + else: +- install_manifest.add_pattern_link(f.srcdir, f, path) ++ install_manifest.add_pattern_copy(f.srcdir, f, path) + else: +- install_manifest.add_link(f.full_path, dest) ++ install_manifest.add_copy(f.full_path, dest) + else: + install_manifest.add_optional_exists(dest) + backend_file.write('%s_FILES += %s\n' % ( +-- +2.23.0 diff --git a/package/spidermonkey/0007-ensure-proper-running-on-64-bit-and-32-bit-be-platforms.patch b/package/spidermonkey/0007-ensure-proper-running-on-64-bit-and-32-bit-be-platforms.patch new file mode 100644 index 0000000000..9ffd69380a --- /dev/null +++ b/package/spidermonkey/0007-ensure-proper-running-on-64-bit-and-32-bit-be-platforms.patch @@ -0,0 +1,144 @@ +From f66d410f3ba767efb91c6b9545d373267cd975f2 Mon Sep 17 00:00:00 2001 +From: Philip Chimento +Date: Sat, 7 Sep 2019 20:43:40 +0200 +Subject: [PATCH] ensure proper running on 64-bit and 32-bit BE platforms + +See: https://salsa.debian.org/gnome-team/mozjs60/blob/debian/master/debian/patches/jsproperty-endian.patch + +Signed-off-by: Philip Chimento +Signed-off-by: Adam Duskett +--- + js/src/gc/Marking-inl.h | 16 ++++++++++++++++ + js/src/gc/RelocationOverlay.h | 13 ++++++++++++- + js/src/jsfriendapi.h | 8 ++++++++ + js/src/vm/StringType.h | 13 +++++++++++++ + 4 files changed, 49 insertions(+), 1 deletion(-) + +diff --git a/js/src/gc/Marking-inl.h b/js/src/gc/Marking-inl.h +index 6d2a4c7..c773c21 100644 +--- a/js/src/gc/Marking-inl.h ++++ b/js/src/gc/Marking-inl.h +@@ -82,12 +82,28 @@ inline void RelocationOverlay::forwardTo(Cell* cell) { + MOZ_ASSERT(!isForwarded()); + // The location of magic_ is important because it must never be valid to see + // the value Relocated there in a GC thing that has not been moved. ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 ++ // On 32-bit, the magic_ aliases with whatever comes after the first ++ // pointer; on little-endian 64-bit, the magic_ aliases with the ++ // 32 most significant bits of the pointer, which are the second half. + static_assert(offsetof(RelocationOverlay, magic_) == + offsetof(JSObject, group_) + sizeof(uint32_t), + "RelocationOverlay::magic_ is in the wrong location"); + static_assert(offsetof(RelocationOverlay, magic_) == + offsetof(js::Shape, base_) + sizeof(uint32_t), + "RelocationOverlay::magic_ is in the wrong location"); ++#elif JS_BITS_PER_WORD == 64 ++ // On big-endian 64-bit, the magic_ aliases with the 32 most ++ // significant bits of the pointer, but now that's the first half. ++ static_assert(offsetof(RelocationOverlay, magic_) == ++ offsetof(JSObject, group_), ++ "RelocationOverlay::magic_ is in the wrong location"); ++ static_assert(offsetof(RelocationOverlay, magic_) == ++ offsetof(js::Shape, base_), ++ "RelocationOverlay::magic_ is in the wrong location"); ++#else ++# error "Unknown endianness or word size" ++#endif + static_assert( + offsetof(RelocationOverlay, magic_) == offsetof(JSString, d.u1.length), + "RelocationOverlay::magic_ is in the wrong location"); +diff --git a/js/src/gc/RelocationOverlay.h b/js/src/gc/RelocationOverlay.h +index a568843..399a541 100644 +--- a/js/src/gc/RelocationOverlay.h ++++ b/js/src/gc/RelocationOverlay.h +@@ -33,14 +33,25 @@ class RelocationOverlay { + /* See comment in js/public/HeapAPI.h. */ + static const uint32_t Relocated = js::gc::Relocated; + ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 + /* +- * Keep the low 32 bits untouched. Use them to distinguish strings from ++ * Keep the first 32 bits untouched. Use them to distinguish strings from + * objects in the nursery. + */ + uint32_t preserve_; + + /* Set to Relocated when moved. */ + uint32_t magic_; ++#elif JS_BITS_PER_WORD == 64 ++ /* ++ * On big-endian, we need to reorder to keep preserve_ lined up with the ++ * low 32 bits of the aligned group_ pointer in JSObject. ++ */ ++ uint32_t magic_; ++ uint32_t preserve_; ++#else ++# error "Unknown endianness or word size" ++#endif + + /* The location |this| was moved to. */ + Cell* newLocation_; +diff --git a/js/src/jsfriendapi.h b/js/src/jsfriendapi.h +index 4b8d18a..70ce0a1 100644 +--- a/js/src/jsfriendapi.h ++++ b/js/src/jsfriendapi.h +@@ -9,6 +9,7 @@ + + #include "mozilla/Atomics.h" + #include "mozilla/Casting.h" ++#include "mozilla/EndianUtils.h" + #include "mozilla/Maybe.h" + #include "mozilla/MemoryReporting.h" + #include "mozilla/UniquePtr.h" +@@ -609,8 +610,15 @@ struct String { + static const uint32_t LATIN1_CHARS_BIT = JS_BIT(6); + static const uint32_t EXTERNAL_FLAGS = LINEAR_BIT | NON_ATOM_BIT | JS_BIT(5); + static const uint32_t TYPE_FLAGS_MASK = JS_BIT(6) - 1; ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 + uint32_t flags; + uint32_t length; ++#elif JS_BITS_PER_WORD == 64 ++ uint32_t length; ++ uint32_t flags; ++#else ++# error "Unknown endianness or word size" ++#endif + union { + const JS::Latin1Char* nonInlineCharsLatin1; + const char16_t* nonInlineCharsTwoByte; +diff --git a/js/src/vm/StringType.h b/js/src/vm/StringType.h +index cde3427..c3400db 100644 +--- a/js/src/vm/StringType.h ++++ b/js/src/vm/StringType.h +@@ -7,6 +7,7 @@ + #ifndef vm_StringType_h + #define vm_StringType_h + ++#include "mozilla/EndianUtils.h" + #include "mozilla/MemoryReporting.h" + #include "mozilla/PodOperations.h" + #include "mozilla/Range.h" +@@ -168,8 +169,20 @@ class JSString : public js::gc::Cell { + struct Data { + union { + struct { ++#if MOZ_LITTLE_ENDIAN || JS_BITS_PER_WORD == 32 + uint32_t flags; /* JSString */ + uint32_t length; /* JSString */ ++#elif JS_BITS_PER_WORD == 64 ++ /* ++ * On big-endian, we need to reorder to keep flags lined up ++ * with the low 32 bits of the aligned group_ pointer in ++ * JSObject. ++ */ ++ uint32_t length; /* JSString */ ++ uint32_t flags; /* JSString */ ++#else ++# error "Unknown endianness or word size" ++#endif + }; + uintptr_t flattenData; /* JSRope (temporary while flattening) */ + } u1; +-- +2.23.0 + diff --git a/package/spidermonkey/0008-save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-obje.patch b/package/spidermonkey/0008-save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-obje.patch new file mode 100644 index 0000000000..9fd4340ffe --- /dev/null +++ b/package/spidermonkey/0008-save-and-restore-non-volatile-x28-on-ARM64-for-generated-unboxed-obje.patch @@ -0,0 +1,66 @@ +From 903a79a1efff18fc7cc50db09a3fe5d768adc9a8 Mon 19 Mar 2018 09:58:06 +0100 +From: Lars T Hansen +Date: Fri, 23 Mar 2018 22:01:33 +0000 +Subject: [PATCH] save and restore non-volatile x28 on ARM64 for generated unboxed object constructor + +Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=1375074 + +Upsream-status: Applied +See: https://hg.mozilla.org/mozilla-central/rev/800abe66894d + +Signed-off-by: Lars T Hansen +Signed-off-by: Adam Duskett +--- + js/src/vm/UnboxedObject.cpp | 30 ++++++++++++++++++++++++++---- + 1 file changed, 26 insertions(+), 4 deletions(-) + +diff --git a/js/src/vm/UnboxedObject.cpp b/js/src/vm/UnboxedObject.cpp +index 35ca20d7405f..1c20a1093d13 100644 +--- a/js/src/vm/UnboxedObject.cpp ++++ b/js/src/vm/UnboxedObject.cpp +@@ -86,9 +86,16 @@ static const uintptr_t CLEAR_CONSTRUCTOR_CODE_TOKEN = 0x1; + #endif + + #ifdef JS_CODEGEN_ARM64 +- // ARM64 communicates stack address via sp, but uses a pseudo-sp for +- // addressing. +- masm.initStackPtr(); ++ // ARM64 communicates stack address via sp, but uses a pseudo-sp (PSP) for ++ // addressing. The register we use for PSP may however also be used by ++ // calling code, and it is nonvolatile, so save it. Do this as a special ++ // case first because the generic save/restore code needs the PSP to be ++ // initialized already. ++ MOZ_ASSERT(PseudoStackPointer64.Is(masm.GetStackPointer64())); ++ masm.Str(PseudoStackPointer64, vixl::MemOperand(sp, -16, vixl::PreIndex)); ++ ++ // Initialize the PSP from the SP. ++ masm.initStackPtr(); + #endif + + MOZ_ASSERT(propertiesReg.volatile_()); +@@ -239,7 +246,22 @@ static const uintptr_t CLEAR_CONSTRUCTOR_CODE_TOKEN = 0x1; + if (ScratchDoubleReg.volatile_()) masm.pop(ScratchDoubleReg); + masm.PopRegsInMask(savedNonVolatileRegisters); + +- masm.abiret(); ++#ifdef JS_CODEGEN_ARM64 ++ // Now restore the value that was in the PSP register on entry, and return. ++ ++ // Obtain the correct SP from the PSP. ++ masm.Mov(sp, PseudoStackPointer64); ++ ++ // Restore the saved value of the PSP register, this value is whatever the ++ // caller had saved in it, not any actual SP value, and it must not be ++ // overwritten subsequently. ++ masm.Ldr(PseudoStackPointer64, vixl::MemOperand(sp, 16, vixl::PostIndex)); ++ ++ // Perform a plain Ret(), as abiret() will move SP <- PSP and that is wrong. ++ masm.Ret(vixl::lr); ++#else ++ masm.abiret(); ++#endif + + masm.bind(&failureStoreOther); + +-- +2.23.0 diff --git a/package/spidermonkey/0009-save-x28-before-clobbering-it-in-the-regex-compiler.patch b/package/spidermonkey/0009-save-x28-before-clobbering-it-in-the-regex-compiler.patch new file mode 100644 index 0000000000..b4623c5961 --- /dev/null +++ b/package/spidermonkey/0009-save-x28-before-clobbering-it-in-the-regex-compiler.patch @@ -0,0 +1,100 @@ +From 903a79a1efff18fc7cc50db09a3fe5d768adc9a8 Mon 19 Mar 2018 09:58:06 +0100 +From: Lars T Hansen +Date: Fri, 23 Mar 2018 22:01:33 +0000 +Subject: [PATCH] save x28 before clobbering it in the regex compiler + +Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=1445907 + +Upsream-status: Applied +See: https://hg.mozilla.org/mozilla-central/rev/903a79a1efff + +Signed-off-by: Lars T Hansen +Signed-off-by: Adam Duskett +--- +diff --git a/js/src/irregexp/NativeRegExpMacroAssembler.cpp b/js/src/irregexp/NativeRegExpMacroAssembler.cpp +--- a/js/src/irregexp/NativeRegExpMacroAssembler.cpp ++++ b/js/src/irregexp/NativeRegExpMacroAssembler.cpp +@@ -118,17 +118,25 @@ NativeRegExpMacroAssembler::GenerateCode + + Label return_temp0; + + // Finalize code - write the entry point code now we know how many + // registers we need. + masm.bind(&entry_label_); + + #ifdef JS_CODEGEN_ARM64 +- // ARM64 communicates stack address via sp, but uses a pseudo-sp for addressing. ++ // ARM64 communicates stack address via SP, but uses a pseudo-sp (PSP) for ++ // addressing. The register we use for PSP may however also be used by ++ // calling code, and it is nonvolatile, so save it. Do this as a special ++ // case first because the generic save/restore code needs the PSP to be ++ // initialized already. ++ MOZ_ASSERT(PseudoStackPointer64.Is(masm.GetStackPointer64())); ++ masm.Str(PseudoStackPointer64, vixl::MemOperand(sp, -16, vixl::PreIndex)); ++ ++ // Initialize the PSP from the SP. + masm.initStackPtr(); + #endif + + // Push non-volatile registers which might be modified by jitcode. + size_t pushedNonVolatileRegisters = 0; + for (GeneralRegisterForwardIterator iter(savedNonVolatileRegisters); iter.more(); ++iter) { + masm.Push(*iter); + pushedNonVolatileRegisters++; +@@ -416,17 +424,32 @@ NativeRegExpMacroAssembler::GenerateCode + masm.pop(temp0); + masm.movePtr(temp0, StackPointer); + #endif + + // Restore non-volatile registers which were saved on entry. + for (GeneralRegisterBackwardIterator iter(savedNonVolatileRegisters); iter.more(); ++iter) + masm.Pop(*iter); + ++#ifdef JS_CODEGEN_ARM64 ++ // Now restore the value that was in the PSP register on entry, and return. ++ ++ // Obtain the correct SP from the PSP. ++ masm.Mov(sp, PseudoStackPointer64); ++ ++ // Restore the saved value of the PSP register, this value is whatever the ++ // caller had saved in it, not any actual SP value, and it must not be ++ // overwritten subsequently. ++ masm.Ldr(PseudoStackPointer64, vixl::MemOperand(sp, 16, vixl::PostIndex)); ++ ++ // Perform a plain Ret(), as abiret() will move SP <- PSP and that is wrong. ++ masm.Ret(vixl::lr); ++#else + masm.abiret(); ++#endif + + // Backtrack code (branch target for conditional backtracks). + if (backtrack_label_.used()) { + masm.bind(&backtrack_label_); + Backtrack(); + } + + // Backtrack stack overflow code. +diff --git a/js/src/jit-test/tests/regexp/bug1445907.js b/js/src/jit-test/tests/regexp/bug1445907.js +new file mode 100644 +--- /dev/null ++++ b/js/src/jit-test/tests/regexp/bug1445907.js +@@ -0,0 +1,15 @@ ++// On ARM64, we failed to save x28 properly when generating code for the regexp ++// matcher. ++// ++// There's wasm and Debugger code here because the combination forces the use of ++// x28 and exposes the bug when running on the simulator. ++ ++if (!wasmIsSupported()) ++ quit(); ++ ++var g = newGlobal(''); ++var dbg = new Debugger(g); ++g.eval(`var m = new WebAssembly.Instance(new WebAssembly.Module(wasmTextToBinary('(module (func (export "test")))')))`); ++var re = /./; ++dbg.onEnterFrame = function(frame) { re.exec("x") }; ++result = g.eval("m.exports.test()"); + +-- +2.23.0 + diff --git a/package/spidermonkey/0010-always-use-the-equivalent-year-to-determine-the-time-zone.patch b/package/spidermonkey/0010-always-use-the-equivalent-year-to-determine-the-time-zone.patch new file mode 100644 index 0000000000..7ebe80a8a0 --- /dev/null +++ b/package/spidermonkey/0010-always-use-the-equivalent-year-to-determine-the-time-zone.patch @@ -0,0 +1,103 @@ +From 903a79a1efff18fc7cc50db09a3fe5d768adc9a8 Mon 19 Mar 2018 09:58:06 +0100 +From: André Bargull +Date: Wed, 8 Nov 2017 03:23:41 -0800 +Subject: always use the equivalent year to determine the time zone offset and + name + +Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=1415202 + +Upsream-status: Applied +See: https://hg.mozilla.org/mozilla-central/rev/ce9f1466ec78 + +Reviewed-by: Jeff Walden +Signed-off-by: André Bargull +Signed-off-by: Adam Duskett +--- + js/src/jsdate.cpp | 11 +++++++---- + js/src/vm/Time.cpp | 14 ++++---------- + js/src/vm/Time.h | 2 +- + 3 files changed, 12 insertions(+), 15 deletions(-) + +diff --git a/js/src/jsdate.cpp b/js/src/jsdate.cpp +index 07af3d18c865..ff8fd6c3763c 100644 +--- a/js/src/jsdate.cpp ++++ b/js/src/jsdate.cpp +@@ -2353,12 +2353,15 @@ static PRMJTime ToPRMJTime(double localTime, double utcTime) { + static size_t FormatTime(char* buf, int buflen, const char* fmt, double utcTime, + double localTime) { + PRMJTime prtm = ToPRMJTime(localTime, utcTime); +- int eqivalentYear = IsRepresentableAsTime32(utcTime) +- ? prtm.tm_year +- : EquivalentYearForDST(prtm.tm_year); ++ // If an equivalent year was used to compute the date/time components, use ++ // the same equivalent year to determine the time zone name and offset in ++ // PRMJ_FormatTime(...). ++ int timeZoneYear = IsRepresentableAsTime32(utcTime) ++ ? prtm.tm_year ++ : EquivalentYearForDST(prtm.tm_year); + int offsetInSeconds = (int)floor((localTime - utcTime) / msPerSecond); + +- return PRMJ_FormatTime(buf, buflen, fmt, &prtm, eqivalentYear, ++ return PRMJ_FormatTime(buf, buflen, fmt, &prtm, timeZoneYear, + offsetInSeconds); + } + +diff --git a/js/src/vm/Time.cpp b/js/src/vm/Time.cpp +index f59977f0d0e9..5ee4794b3e83 100644 +--- a/js/src/vm/Time.cpp ++++ b/js/src/vm/Time.cpp +@@ -247,7 +247,7 @@ static void PRMJ_InvalidParameterHandler(const wchar_t* expression, + + /* Format a time value into a buffer. Same semantics as strftime() */ + size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, +- const PRMJTime* prtm, int equivalentYear, ++ const PRMJTime* prtm, int timeZoneYear, + int offsetInSeconds) { + size_t result = 0; + #if defined(XP_UNIX) || defined(XP_WIN) +@@ -280,7 +280,8 @@ size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, + * Fill out |td| to the time represented by |prtm|, leaving the + * timezone fields zeroed out. localtime_r will then fill in the + * timezone fields for that local time according to the system's +- * timezone parameters. ++ * timezone parameters. Use |timeZoneYear| for the year to ensure the ++ * time zone name matches the time zone offset used by the caller. + */ + struct tm td; + memset(&td, 0, sizeof(td)); +@@ -290,19 +291,12 @@ size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, + td.tm_mday = prtm->tm_mday; + td.tm_mon = prtm->tm_mon; + td.tm_wday = prtm->tm_wday; +- td.tm_year = prtm->tm_year - 1900; ++ td.tm_year = timeZoneYear - 1900; + td.tm_yday = prtm->tm_yday; + td.tm_isdst = prtm->tm_isdst; + + time_t t = mktime(&td); + +- // If |prtm| cannot be represented in |time_t| the year is probably +- // out of range, try again with the DST equivalent year. +- if (t == static_cast(-1)) { +- td.tm_year = equivalentYear - 1900; +- t = mktime(&td); +- } +- + // If either mktime or localtime_r failed, fill in the fallback time + // zone offset |offsetInSeconds| and set the time zone identifier to + // the empty string. +diff --git a/js/src/vm/Time.h b/js/src/vm/Time.h +index 3a51d869c922..37b7faeec028 100644 +--- a/js/src/vm/Time.h ++++ b/js/src/vm/Time.h +@@ -49,7 +49,7 @@ inline void PRMJ_NowShutdown() {} + + /* Format a time value into a buffer. Same semantics as strftime() */ + extern size_t PRMJ_FormatTime(char* buf, int buflen, const char* fmt, +- const PRMJTime* tm, int equivalentYear, ++ const PRMJTime* tm, int timeZoneYear, + int offsetInSeconds); + + /** +-- +2.23.0 diff --git a/package/spidermonkey/Config.in b/package/spidermonkey/Config.in new file mode 100644 index 0000000000..284502f618 --- /dev/null +++ b/package/spidermonkey/Config.in @@ -0,0 +1,47 @@ +config BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS + bool + default y if BR2_aarch64 + default y if BR2_arm || BR2_armeb + default y if BR2_i386 || BR2_x86_64 + default y if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le + default y if BR2_riscv + default y if BR2_sh4 || BR2_sh4a + default y if BR2_sparc || BR2_sparc64 + depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnspr + +config BR2_PACKAGE_SPIDERMONKEY_JIT_ARCH_SUPPORTS + bool + default y if BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64 + +config BR2_PACKAGE_SPIDERMONKEY + bool "spidermonkey" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # needs pthread_getattr_np() + depends on BR2_USE_MMU # fork in executable tools. + depends on BR2_USE_WCHAR + depends on !BR2_TOOLCHAIN_USES_UCLIBC # No way to check for fenv support. + depends on !BR2_STATIC_LIBS # dlopen + select BR2_PACKAGE_HOST_PYTHON + select BR2_PACKAGE_HOST_PYTHON_SSL + select BR2_PACKAGE_LIBNSPR + select BR2_PACKAGE_ZLIB + help + SpiderMonkey is the code-name for Mozilla Firefox's C++ + implementation of JavaScript. It is intended to be embedded in + other applications that provide host environments for + JavaScript. + + https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey + +comment "spidermonkey needs a glibc or musl toolchain with C++, wchar, dynamic library, NPTL, gcc >= 4.9" + depends on BR2_USE_MMU + depends on BR2_PACKAGE_SPIDERMONKEY_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_USES_UCLIBC || \ + !BR2_INSTALL_LIBSTDCPP || \ + BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ + !BR2_USE_WCHAR diff --git a/package/spidermonkey/spidermonkey.hash b/package/spidermonkey/spidermonkey.hash new file mode 100644 index 0000000000..ccb0265861 --- /dev/null +++ b/package/spidermonkey/spidermonkey.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 f51039c997415fd0f13f8e01966b4a8ff80cbf90deb8b14c18827104a369cc0d mozjs-60.5.2.tar.bz2 +sha256 aaac93a33bec26d5d1a9c5efc1e7dc6bd215d8a4f1e1a7fc5315a67adfd51338 moz.configure diff --git a/package/spidermonkey/spidermonkey.mk b/package/spidermonkey/spidermonkey.mk new file mode 100644 index 0000000000..579dc7b864 --- /dev/null +++ b/package/spidermonkey/spidermonkey.mk @@ -0,0 +1,58 @@ +################################################################################ +# +# spidermonkey +# +################################################################################ + +# Use a tarball with only the spidermonkey source code and a pre-setup +# old-configure in src/js.This prevents having to use autoconf 2.13 and +# makes the package much 31M instead of 257M +SPIDERMONKEY_VERSION = 60.5.2 +SPIDERMONKEY_SOURCE = mozjs-$(SPIDERMONKEY_VERSION).tar.bz2 +SPIDERMONKEY_SITE = https://gentoo.osuosl.org/distfiles/9a +SPIDERMONKEY_SUBDIR = js/src +SPIDERMONKEY_LICENSE = MPL-2.0 +SPIDERMONKEY_LICENSE_FILES = moz.configure +SPIDERMONKEY_INSTALL_STAGING = YES + +SPIDERMONKEY_DEPENDENCIES = \ + host-python \ + libnspr \ + zlib + +SPIDERMONKEY_CONF_ENV = \ + PYTHON="$(HOST_DIR)/bin/python2" + +# spidermonkey mixes up target and host. +# spidermonkey does not allow building against a system jemalloc, +# as it causes a conflict with glibc. +SPIDERMONKEY_CONF_OPTS = \ + --host=$(GNU_HOST_NAME) \ + --target=$(GNU_TARGET_NAME) \ + --disable-jemalloc \ + --enable-shared-js \ + --with-system-zlib \ + --with-system-nspr \ + --with-nspr-exec-prefix="$(STAGING_DIR)/usr" + +ifeq ($(BR2_PACKAGE_SPIDERMONKEY_JIT_ARCH_SUPPORTS),y) +SPIDERMONKEY_CONF_OPTS += --enable-ion +else +SPIDERMONKEY_CONF_OPTS += --disable-ion +endif + +ifeq ($(BR2_PACKAGE_READLINE),y) +SPIDERMONKEY_CONF_OPTS += --enable-readline +SPIDERMONKEY_DEPENDENCIES += readline +else +SPIDERMONKEY_CONF_OPTS += --disable-readline +endif + +# Remove unneeded files +define SPIDERMONKEY_CLEANUP + rm -rf $(TARGET_DIR)/usr/lib/libjs_static.ajs + rm -rf $(TARGET_DIR)/usr/bin/js60-config +endef +SPIDERMONKEY_POST_INSTALL_TARGET_HOOKS += SPIDERMONKEY_CLEANUP + +$(eval $(autotools-package)) diff --git a/package/stm32flash/stm32flash.hash b/package/stm32flash/stm32flash.hash index d12b9354b2..3adcb96d31 100644 --- a/package/stm32flash/stm32flash.hash +++ b/package/stm32flash/stm32flash.hash @@ -1,2 +1,3 @@ # Locally computed: -sha256 73afcbd317ca3eb080c14b6ed1451e5a74a3bbae8f8fb5fe24ea496333f03ead stm32flash-1f934ae86babdeea47afdfae1d856d5fd5da6c53.tar.gz +sha256 58788826b80f16f2084632299340f9a3155b326936210e5f7a58f9dbd1b18bdd stm32flash-3cebf121f7b32b9edfcb0d49f0fb43ccf33e5650.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 gpl-2.0.txt diff --git a/package/stm32flash/stm32flash.mk b/package/stm32flash/stm32flash.mk index 9bb05ab730..a8ae9b01df 100644 --- a/package/stm32flash/stm32flash.mk +++ b/package/stm32flash/stm32flash.mk @@ -4,7 +4,7 @@ # ################################################################################ -STM32FLASH_VERSION = 1f934ae86babdeea47afdfae1d856d5fd5da6c53 +STM32FLASH_VERSION = 3cebf121f7b32b9edfcb0d49f0fb43ccf33e5650 STM32FLASH_SITE = git://git.code.sf.net/p/stm32flash/code STM32FLASH_LICENSE = GPL-2.0+ STM32FLASH_LICENSE_FILES = gpl-2.0.txt diff --git a/package/stunnel/stunnel.hash b/package/stunnel/stunnel.hash index 7dde175563..b741b0e816 100644 --- a/package/stunnel/stunnel.hash +++ b/package/stunnel/stunnel.hash @@ -1,5 +1,5 @@ -# From https://www.stunnel.org/downloads/stunnel-5.55.tar.gz.sha256 -sha256 90de69f41c58342549e74c82503555a6426961b29af3ed92f878192727074c62 stunnel-5.55.tar.gz +# From https://www.stunnel.org/downloads/stunnel-5.56.tar.gz.sha256 +sha256 7384bfb356b9a89ddfee70b5ca494d187605bb516b4fff597e167f97e2236b22 stunnel-5.56.tar.gz # Locally calculated -sha256 81d0b7244f44ef81dd0b299cf681037c5a42d468b8533e53aff6d1ac84c97dc8 COPYING -sha256 1ee2b290e92c211b08df10e9fcaf32596cdb22b8eae731b18c2c074a4a83eebe COPYRIGHT.GPL +sha256 f46e2613769e23e23348b6eb667dc85309da2252c8cc2016db92ad93d743aea4 COPYING.md +sha256 62f171d4d8b6726df61f18a6bbc0a70f79c4bc2134d837d35c81fc6289a2d84d COPYRIGHT.md diff --git a/package/stunnel/stunnel.mk b/package/stunnel/stunnel.mk index 261e331cfa..f8265c4cf4 100644 --- a/package/stunnel/stunnel.mk +++ b/package/stunnel/stunnel.mk @@ -5,7 +5,7 @@ ################################################################################ STUNNEL_VERSION_MAJOR = 5 -STUNNEL_VERSION = $(STUNNEL_VERSION_MAJOR).55 +STUNNEL_VERSION = $(STUNNEL_VERSION_MAJOR).56 STUNNEL_SITE = http://www.usenix.org.uk/mirrors/stunnel/archive/$(STUNNEL_VERSION_MAJOR).x STUNNEL_DEPENDENCIES = host-pkgconf openssl STUNNEL_CONF_OPTS = --with-ssl=$(STAGING_DIR)/usr --with-threads=fork \ @@ -14,7 +14,7 @@ STUNNEL_CONF_ENV = \ ax_cv_check_cflags___fstack_protector=$(if $(BR2_TOOLCHAIN_HAS_SSP),yes,no) \ LIBS=`$(PKG_CONFIG_HOST_BINARY) --libs openssl` STUNNEL_LICENSE = GPL-2.0+ -STUNNEL_LICENSE_FILES = COPYING COPYRIGHT.GPL +STUNNEL_LICENSE_FILES = COPYING.md COPYRIGHT.md ifeq ($(BR2_INIT_SYSTEMD),y) STUNNEL_DEPENDENCIES += systemd diff --git a/package/terminology/terminology.hash b/package/terminology/terminology.hash index 64e7cd9aa2..ed386fb7b3 100644 --- a/package/terminology/terminology.hash +++ b/package/terminology/terminology.hash @@ -1,3 +1,3 @@ -# From https://download.enlightenment.org/rel/apps/terminology/terminology-1.5.0.tar.xz.sha256sum -sha256 de55e503b382bb7c42a7def04c5ef7bff01e3e1fb0b379a4591544899eab8a6c terminology-1.5.0.tar.xz +# From https://download.enlightenment.org/rel/apps/terminology/terminology-1.6.0.tar.xz.sha256sum +sha256 b95cb05653afe0dad77fc038a8d5276c02a9c08d64ac97ddf0cee8087d27bd77 terminology-1.6.0.tar.xz sha256 a907d434f4691990ed8f2826ff7546672e9934a26c798351da12ed544dadc628 COPYING diff --git a/package/terminology/terminology.mk b/package/terminology/terminology.mk index 590413e69c..add80825a7 100644 --- a/package/terminology/terminology.mk +++ b/package/terminology/terminology.mk @@ -4,7 +4,7 @@ # ################################################################################ -TERMINOLOGY_VERSION = 1.5.0 +TERMINOLOGY_VERSION = 1.6.0 TERMINOLOGY_SOURCE = terminology-$(TERMINOLOGY_VERSION).tar.xz TERMINOLOGY_SITE = https://download.enlightenment.org/rel/apps/terminology TERMINOLOGY_LICENSE = BSD-2-Clause diff --git a/package/tinycbor/0001-fix-undefined-encode_half-in-json2cbor.patch b/package/tinycbor/0001-fix-undefined-encode_half-in-json2cbor.patch deleted file mode 100644 index 0547758bd5..0000000000 --- a/package/tinycbor/0001-fix-undefined-encode_half-in-json2cbor.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 77325101e41c149507c071c64a8dc9a21bf469d6 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Thu, 20 Sep 2018 19:23:54 +0200 -Subject: [PATCH] fix undefined encode_half in json2cbor - -encode_half has been moved from compilersupport_p.h to cborinternal_p.h -in commit bfc40dcf909f1998d7760c2bc0e1409979d3c8cb so include this file -in json2cbor to avoid the following build failure: - -/home/buildroot/autobuild/run/instance-0/output/host/bin/microblazeel-linux-gcc -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I./src -std=gnu99 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -c -o tools/json2cbor/json2cbor.o tools/json2cbor/json2cbor.c -tools/json2cbor/json2cbor.c: In function 'decode_json_with_metadata': -tools/json2cbor/json2cbor.c:295:50: warning: implicit declaration of function 'encode_half' [-Wimplicit-function-declaration] - (half = encode_half(v), cbor_encode_half_float(encoder, &half)); - ^~~~~~~~~~~ -/home/buildroot/autobuild/run/instance-0/output/host/bin/microblazeel-linux-gcc -o bin/json2cbor tools/json2cbor/json2cbor.o lib/libtinycbor.so -lcjson -lm -tools/json2cbor/json2cbor.o: In function `decode_json_with_metadata': -(.text+0xe54): undefined reference to `encode_half' -collect2: error: ld returned 1 exit status -Makefile:151: recipe for target 'bin/json2cbor' failed - -Fixes: - - http://autobuild.buildroot.net/results/afd8d24f2a4e501264abff618cf421d4bd088ebf - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/intel/tinycbor/pull/139] ---- - tools/json2cbor/json2cbor.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/tools/json2cbor/json2cbor.c b/tools/json2cbor/json2cbor.c -index 008a7de..c13a751 100644 ---- a/tools/json2cbor/json2cbor.c -+++ b/tools/json2cbor/json2cbor.c -@@ -25,6 +25,7 @@ - #define _POSIX_C_SOURCE 200809L - #define _GNU_SOURCE - #include "cbor.h" -+#include "cborinternal_p.h" - #include "compilersupport_p.h" - - #include --- -2.17.1 - diff --git a/package/tinycbor/tinycbor.hash b/package/tinycbor/tinycbor.hash index 007eac6490..8ff706bb67 100644 --- a/package/tinycbor/tinycbor.hash +++ b/package/tinycbor/tinycbor.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 dfa2a4550eb145a5f62ffff39e36accf2704987922c194e8e845124175c00441 tinycbor-0.5.2.tar.gz +sha256 956eb4b670ea4969eaee67395b5bb6437b153960385b77357d6692e979d1b12d tinycbor-0.5.3.tar.gz sha256 3c6ba0b5bfa7830505301ffb336a17b0748e0d61c4d34216e9dc98f10e40395e LICENSE diff --git a/package/tinycbor/tinycbor.mk b/package/tinycbor/tinycbor.mk index 9506e0d89c..ef095ea67d 100644 --- a/package/tinycbor/tinycbor.mk +++ b/package/tinycbor/tinycbor.mk @@ -4,7 +4,7 @@ # ################################################################################ -TINYCBOR_VERSION = 0.5.2 +TINYCBOR_VERSION = 0.5.3 TINYCBOR_SITE = $(call github,intel,tinycbor,v$(TINYCBOR_VERSION)) TINYCBOR_LICENSE = MIT TINYCBOR_LICENSE_FILES = LICENSE diff --git a/package/uboot-tools/uboot-tools.hash b/package/uboot-tools/uboot-tools.hash index d2830eeba5..1dd2456449 100644 --- a/package/uboot-tools/uboot-tools.hash +++ b/package/uboot-tools/uboot-tools.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 bff4fa77e8da17521c030ca4c5b947a056c1b1be4d3e6ee8637020b8d50251d0 u-boot-2019.07.tar.bz2 +sha256 8d6d6070739522dd236cba7055b8736bfe92b4fac0ea18ad809829ca79667014 u-boot-2019.10.tar.bz2 sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 Licenses/gpl-2.0.txt diff --git a/package/uboot-tools/uboot-tools.mk b/package/uboot-tools/uboot-tools.mk index 6bfc2ff82d..f277a4c828 100644 --- a/package/uboot-tools/uboot-tools.mk +++ b/package/uboot-tools/uboot-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -UBOOT_TOOLS_VERSION = 2019.07 +UBOOT_TOOLS_VERSION = 2019.10 UBOOT_TOOLS_SOURCE = u-boot-$(UBOOT_TOOLS_VERSION).tar.bz2 UBOOT_TOOLS_SITE = ftp://ftp.denx.de/pub/u-boot UBOOT_TOOLS_LICENSE = GPL-2.0+ diff --git a/package/umtprd/Config.in b/package/umtprd/Config.in new file mode 100644 index 0000000000..24bf119549 --- /dev/null +++ b/package/umtprd/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_UMTPRD + bool "umtprd" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 + help + Lightweight USB MTP responder daemon for GNU/Linux + + https://github.com/viveris/uMTP-Responder + +comment "umtprd needs a toolchain w/ threads, headers >= 3.15" + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 diff --git a/package/umtprd/umtprd.hash b/package/umtprd/umtprd.hash new file mode 100644 index 0000000000..168b19e951 --- /dev/null +++ b/package/umtprd/umtprd.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 e1301bdd89170cc2c679446c1cc5873feaacd061bf0ab547fc0a11670bae9163 umtprd-1.0.0.tar.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE diff --git a/package/umtprd/umtprd.mk b/package/umtprd/umtprd.mk new file mode 100644 index 0000000000..63faae43b3 --- /dev/null +++ b/package/umtprd/umtprd.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# umtprd +# +################################################################################ + +UMTPRD_VERSION = 1.0.0 +UMTPRD_SITE = https://github.com/viveris/uMTP-Responder/archive +UMTPRD_LICENSE = GPL-3.0+ +UMTPRD_LICENSE_FILES = LICENSE + +define UMTPRD_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define UMTPRD_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/umtprd $(TARGET_DIR)/usr/sbin/umtprd +endef + +$(eval $(generic-package)) diff --git a/package/unrar/unrar.hash b/package/unrar/unrar.hash index 7f9bb865c8..f688a4e364 100644 --- a/package/unrar/unrar.hash +++ b/package/unrar/unrar.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 33386623fd3fb153b56292df4a6a69b457e69e1803b6d07b614e5fd22fb33dda unrarsrc-5.8.2.tar.gz +sha256 3591685c8f5bbcb0be09de3d0a0544adb88966b9cccb80986f6cd2b534fd91a6 unrarsrc-5.8.3.tar.gz sha256 6ecc1687808b7d66b24f874755abfed7464d9751ed0001cd4e8e5d9bf397ff8a license.txt diff --git a/package/unrar/unrar.mk b/package/unrar/unrar.mk index 942f52b031..cdaff26988 100644 --- a/package/unrar/unrar.mk +++ b/package/unrar/unrar.mk @@ -4,7 +4,7 @@ # ################################################################################ -UNRAR_VERSION = 5.8.2 +UNRAR_VERSION = 5.8.3 UNRAR_SOURCE = unrarsrc-$(UNRAR_VERSION).tar.gz UNRAR_SITE = http://www.rarlab.com/rar UNRAR_LICENSE = unrar diff --git a/package/valijson/valijson.hash b/package/valijson/valijson.hash index cd34ecb8c9..6f11000669 100644 --- a/package/valijson/valijson.hash +++ b/package/valijson/valijson.hash @@ -1,2 +1,3 @@ # Locally Computed: -sha256 d22c1f8fe27d43e5a27aad1d3cbe9f1318ec28ccfa913e615663ed2bd6a5d063 valijson-0.1.tar.gz +sha256 77dbebb40dab2e834557c2fcc39122cdb2d0fe26bf591c2b3e0df5a316a45592 valijson-0.2.tar.gz +sha256 1a0f99926a2dbec30eba3db820236d9953fbe3048976923ac24980e655fbe991 LICENSE diff --git a/package/valijson/valijson.mk b/package/valijson/valijson.mk index a804334732..31efeede34 100644 --- a/package/valijson/valijson.mk +++ b/package/valijson/valijson.mk @@ -4,13 +4,13 @@ # ################################################################################ -VALIJSON_VERSION = 0.1 +VALIJSON_VERSION = 0.2 VALIJSON_SITE = $(call github,tristanpenman,valijson,v$(VALIJSON_VERSION)) VALIJSON_LICENSE = BSD-2-Clause VALIJSON_LICENSE_FILES = LICENSE VALIJSON_INSTALL_STAGING = YES VALIJSON_INSTALL_TARGET = NO VALIJSON_DEPENDENCIES = boost -VALIJSON_CONF_OPTS = -DINSTALL_HEADERS=TRUE +VALIJSON_CONF_OPTS = -Dvalijson_INSTALL_HEADERS=TRUE -Dvalijson_BUILD_TESTS=FALSE $(eval $(cmake-package)) diff --git a/package/whois/whois.hash b/package/whois/whois.hash index ca4c81b3f5..77d30b2cd0 100644 --- a/package/whois/whois.hash +++ b/package/whois/whois.hash @@ -1,5 +1,5 @@ -# From http://snapshot.debian.org/archive/debian/20190719T170739Z/pool/main/w/whois/whois_5.5.0.dsc -sha256 64ec63339d7ad559cd6722bd3141a1e5787817bd921841a813ee17a0a34b6f3d whois_5.5.0.tar.xz +# From http://snapshot.debian.org/archive/debian/20191118T030126Z/pool/main/w/whois/whois_5.5.3.dsc +sha256 55c33f9c2a01c0cf1d6449ece63b0c26ef45aab63cf5f01c18459df0e341ab46 whois_5.5.3.tar.xz # Hash for license file: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/whois/whois.mk b/package/whois/whois.mk index 7d36ddc76c..1517d1e630 100644 --- a/package/whois/whois.mk +++ b/package/whois/whois.mk @@ -4,8 +4,8 @@ # ################################################################################ -WHOIS_VERSION = 5.5.0 -WHOIS_SITE = http://snapshot.debian.org/archive/debian/20190719T170739Z/pool/main/w/whois +WHOIS_VERSION = 5.5.3 +WHOIS_SITE = http://snapshot.debian.org/archive/debian/20191118T030126Z/pool/main/w/whois WHOIS_SOURCE = whois_$(WHOIS_VERSION).tar.xz WHOIS_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES) WHOIS_MAKE_ENV = $(TARGET_MAKE_ENV) diff --git a/package/xr819-xradio/xr819-xradio.hash b/package/xr819-xradio/xr819-xradio.hash index 341747c5b5..393780fb30 100644 --- a/package/xr819-xradio/xr819-xradio.hash +++ b/package/xr819-xradio/xr819-xradio.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 7b78fc61d13a428a0d8a3d8dcffaa604d23b5a17c6e8e86d2e5e8372dcd17672 xr819-xradio-33f4b1c25eff0d9db7cbac19f36b130da9857f37.tar.gz +sha256 2f61f2db78d46440819af2d8191f9b5ed2bb3e5404b739f68fb0af7917d0d222 xr819-xradio-aa01ba77b9360dd734b50f5b937960a50c5a0825.tar.gz # Locally computed sha256 db296f2f7f35bca3a174efb0eb392b3b17bd94b341851429a3dff411b1c2fc73 LICENSE diff --git a/package/xr819-xradio/xr819-xradio.mk b/package/xr819-xradio/xr819-xradio.mk index edf423bc3c..ae3e4fbd34 100644 --- a/package/xr819-xradio/xr819-xradio.mk +++ b/package/xr819-xradio/xr819-xradio.mk @@ -4,7 +4,7 @@ # ################################################################################ -XR819_XRADIO_VERSION = 33f4b1c25eff0d9db7cbac19f36b130da9857f37 +XR819_XRADIO_VERSION = aa01ba77b9360dd734b50f5b937960a50c5a0825 XR819_XRADIO_SITE = $(call github,fifteenhex,xradio,$(XR819_XRADIO_VERSION)) XR819_XRADIO_LICENSE = GPL-2.0 XR819_XRADIO_LICENSE_FILES = LICENSE diff --git a/package/xtables-addons/xtables-addons.hash b/package/xtables-addons/xtables-addons.hash index 5ecc4197b7..0d30b1ab1e 100644 --- a/package/xtables-addons/xtables-addons.hash +++ b/package/xtables-addons/xtables-addons.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 1152205156ceb4ea02307a361d7c4888f07eabc6bb844bd82e7ffab8d1ebd627 xtables-addons-3.4.tar.xz +sha256 189ff57a0b8960969bd99141a6c79c345efa67e4461f450e2f162c9bd3d17da6 xtables-addons-3.5.tar.xz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 LICENSE diff --git a/package/xtables-addons/xtables-addons.mk b/package/xtables-addons/xtables-addons.mk index 6b7114f5f7..e8b931eaeb 100644 --- a/package/xtables-addons/xtables-addons.mk +++ b/package/xtables-addons/xtables-addons.mk @@ -4,7 +4,7 @@ # ################################################################################ -XTABLES_ADDONS_VERSION = 3.4 +XTABLES_ADDONS_VERSION = 3.5 XTABLES_ADDONS_SOURCE = xtables-addons-$(XTABLES_ADDONS_VERSION).tar.xz XTABLES_ADDONS_SITE = http://downloads.sourceforge.net/project/xtables-addons/Xtables-addons XTABLES_ADDONS_DEPENDENCIES = iptables linux host-pkgconf diff --git a/support/scripts/check-host-rpath b/support/scripts/check-host-rpath index c8939569e2..9a3866982b 100755 --- a/support/scripts/check-host-rpath +++ b/support/scripts/check-host-rpath @@ -11,6 +11,7 @@ export LC_ALL=C main() { local pkg="${1}" local hostdir="${2}" + local perpackagedir="${3}" local file ret # Remove duplicate and trailing '/' for proper match @@ -20,7 +21,7 @@ main() { while read file; do is_elf "${file}" || continue elf_needs_rpath "${file}" "${hostdir}" || continue - check_elf_has_rpath "${file}" "${hostdir}" && continue + check_elf_has_rpath "${file}" "${hostdir}" "${perpackagedir}" && continue if [ ${ret} -eq 0 ]; then ret=1 printf "***\n" @@ -44,6 +45,15 @@ is_elf() { # needs such an RPATH if at least of the libraries used by the ELF # executable is available in the host library directory. This function # returns 0 when a RPATH is needed, 1 otherwise. +# +# With per-package directory support, ${hostdir} will point to the +# current package per-package host directory, and this is where this +# function will check if the libraries needed by the executable are +# located (or not). In practice, the ELF executable RPATH may point to +# another package per-package host directory, but that is fine because +# if such an executable is within the current package per-package host +# directory, its libraries will also have been copied into the current +# package per-package host directory. elf_needs_rpath() { local file="${1}" local hostdir="${2}" @@ -62,13 +72,19 @@ elf_needs_rpath() { # This function checks whether at least one of the RPATH of the given # ELF executable (first argument) properly points to the host library # directory (second argument), either through an absolute RPATH or a -# relative RPATH. Having such a RPATH will make sure the ELF -# executable will find at runtime the shared libraries it depends -# on. This function returns 0 when a proper RPATH was found, or 1 -# otherwise. +# relative RPATH. In the context of per-package directory support, +# ${hostdir} (second argument) points to the current package host +# directory. However, it is perfectly valid for an ELF binary to have +# a RPATH pointing to another package per-package host directory, +# which is why such RPATH is also accepted (the per-package directory +# gets passed as third argument). Having a RPATH pointing to the host +# directory will make sure the ELF executable will find at runtime the +# shared libraries it depends on. This function returns 0 when a +# proper RPATH was found, or 1 otherwise. check_elf_has_rpath() { local file="${1}" local hostdir="${2}" + local perpackagedir="${3}" local rpath dir while read rpath; do @@ -77,6 +93,12 @@ check_elf_has_rpath() { dir="$( sed -r -e 's:/+:/:g; s:/$::;' <<<"${dir}" )" [ "${dir}" = "${hostdir}/lib" ] && return 0 [ "${dir}" = "\$ORIGIN/../lib" ] && return 0 + # This check is done even for builds where + # BR2_PER_PACKAGE_DIRECTORIES is disabled. In this case, + # PER_PACKAGE_DIR and therefore ${perpackagedir} points to + # a non-existent directory, and this check will always be + # false. + [[ ${dir} =~ ${perpackagedir}/[^/]+/host/lib ]] && return 0 done done < <( readelf -d "${file}" \ |sed -r -e '/.* \(R(UN)?PATH\) +Library r(un)?path: \[(.+)\]$/!d' \ diff --git a/support/scripts/fix-rpath b/support/scripts/fix-rpath index fa138ca15a..9fc9ef8514 100755 --- a/support/scripts/fix-rpath +++ b/support/scripts/fix-rpath @@ -127,14 +127,29 @@ main() { while read file ; do # check if it's an ELF file - if ${PATCHELF} --print-rpath "${file}" > /dev/null 2>&1; then - # make files writable if necessary - changed=$(chmod -c u+w "${file}") - # call patchelf to sanitize the rpath - ${PATCHELF} --make-rpath-relative "${rootdir}" ${sanitize_extra_args[@]} "${file}" - # restore the original permission - test "${changed}" != "" && chmod u-w "${file}" + rpath=$(${PATCHELF} --print-rpath "${file}" 2>&1) + if test $? -ne 0 ; then + continue fi + + # make files writable if necessary + changed=$(chmod -c u+w "${file}") + + # With per-package directory support, most RPATH of host + # binaries will point to per-package directories. This won't + # work with the --make-rpath-relative ${rootdir} invocation as + # the per-package host directory is not within ${rootdir}. So, + # we rewrite all RPATHs pointing to per-package directories so + # that they point to the global host directry. + changed_rpath=$(echo ${rpath} | sed "s@${PER_PACKAGE_DIR}/[^/]+/host@${HOST_DIR}@") + if test "${rpath}" != "${changed_rpath}" ; then + ${PATCHELF} --set-rpath ${changed_rpath} "${file}" + fi + + # call patchelf to sanitize the rpath + ${PATCHELF} --make-rpath-relative "${rootdir}" ${sanitize_extra_args[@]} "${file}" + # restore the original permission + test "${changed}" != "" && chmod u-w "${file}" done < <(find "${rootdir}" ${find_args[@]}) # Restore patched patchelf utility diff --git a/support/testing/infra/basetest.py b/support/testing/infra/basetest.py index a176bc328a..5dc6034447 100644 --- a/support/testing/infra/basetest.py +++ b/support/testing/infra/basetest.py @@ -84,3 +84,9 @@ class BRTest(BRConfigTest): if self.emulator: self.emulator.stop() super(BRTest, self).tearDown() + + # Run the given 'cmd' with a 'timeout' on the target and + # assert that the command succeeded + def assertRunOk(self, cmd, timeout=-1): + _, exit_code = self.emulator.run(cmd, timeout) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/package/test_lxc.py b/support/testing/tests/package/test_lxc.py new file mode 100644 index 0000000000..346247da08 --- /dev/null +++ b/support/testing/tests/package/test_lxc.py @@ -0,0 +1,56 @@ +import os + +import infra.basetest + + +class TestLxc(infra.basetest.BRTest): + config = \ + """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.79" + BR2_LINUX_KERNEL_DEFCONFIG="vexpress" + BR2_LINUX_KERNEL_DTS_SUPPORT=y + BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_INIT_SYSTEMD=y + BR2_PACKAGE_LXC=y + BR2_PACKAGE_TINI=y + BR2_PACKAGE_IPERF3=y + BR2_ROOTFS_OVERLAY="{}" + BR2_TARGET_ROOTFS_CPIO=y + """.format( + infra.filepath("tests/package/test_lxc/lxc-kernel.config"), + infra.filepath("tests/package/test_lxc/rootfs-overlay")) + + def run_ok(self, cmd): + self.assertRunOk(cmd, 120) + + def wait_boot(self): + # the complete boot with systemd takes more time than what the default multipler permits + self.emulator.timeout_multiplier *= 10 + self.emulator.login() + + def setup_run_test_container(self): + self.run_ok("lxc-create -n lxc_iperf3 -t none -f /usr/share/lxc/config/minimal-iperf3.conf") + self.run_ok("lxc-start -l trace -n lxc_iperf3 -o /tmp/lxc.log -L /tmp/lxc.console.log") + # need to wait for the container to be fully started + self.run_ok("sleep 2") + self.run_ok("iperf3 -c 192.168.1.2 -t 2") + # if the test fails, just cat /tmp/*.log + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + kernel_file = os.path.join(self.builddir, "images", "zImage") + dtb_file = os.path.join(self.builddir, "images", "vexpress-v2p-ca9.dtb") + self.emulator.boot(arch="armv7", kernel=kernel_file, + kernel_cmdline=[ + "console=ttyAMA0,115200"], + options=["-initrd", cpio_file, + "-dtb", dtb_file, + "-M", "vexpress-a9"]) + self.wait_boot() + self.setup_run_test_container() diff --git a/support/testing/tests/package/test_lxc/lxc-kernel.config b/support/testing/tests/package/test_lxc/lxc-kernel.config new file mode 100644 index 0000000000..32f8bdd65e --- /dev/null +++ b/support/testing/tests/package/test_lxc/lxc-kernel.config @@ -0,0 +1,20 @@ +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_BLK_CGROUP=y +CONFIG_CGROUP_SCHED=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_CGROUP_DEBUG=y +CONFIG_NETFILTER_XT_MATCH_CGROUP=y +CONFIG_SOCK_CGROUP_DATA=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_NAMESPACES=y +CONFIG_IPC_NS=y +CONFIG_PID_NS=y +CONFIG_UTS_NS=y +CONFIG_USER_NS=y +CONFIG_NET_NS=y +CONFIG_BRIDGE=y +CONFIG_VETH=y diff --git a/support/testing/tests/package/test_lxc/rootfs-overlay/usr/bin/iperf3.sh b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/bin/iperf3.sh new file mode 100755 index 0000000000..7045ca4806 --- /dev/null +++ b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/bin/iperf3.sh @@ -0,0 +1,2 @@ +#!/bin/sh +iperf3 -s -1 > /tmp/iperf3.serv.log 2>&1 diff --git a/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal-iperf3.conf b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal-iperf3.conf new file mode 100644 index 0000000000..41cc5311d6 --- /dev/null +++ b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal-iperf3.conf @@ -0,0 +1,4 @@ +lxc.include = /usr/share/lxc/config/minimal.conf +lxc.hook.version = 1 +lxc.hook.start-host = ip a add 192.168.1.1/24 dev lxc0 +lxc.init.cmd = tini -g iperf3.sh diff --git a/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal.conf b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal.conf new file mode 100644 index 0000000000..7319821506 --- /dev/null +++ b/support/testing/tests/package/test_lxc/rootfs-overlay/usr/share/lxc/config/minimal.conf @@ -0,0 +1,6 @@ +lxc.autodev = 0 +lxc.net.0.type = veth +lxc.net.0.veth.pair = lxc0 +lxc.net.0.name = eth0 +lxc.net.0.flags = up +lxc.net.0.ipv4.address = 192.168.1.2/24 diff --git a/utils/scanpypi b/utils/scanpypi index b48eda49aa..796ce1d60c 100755 --- a/utils/scanpypi +++ b/utils/scanpypi @@ -612,6 +612,7 @@ class BuildrootPackage(): bool_line = '\tbool "{name}"\n'.format(name=self.buildroot_name) lines.append(bool_line) if self.pkg_req: + self.pkg_req.sort() for dep in self.pkg_req: dep_line = '\tselect BR2_PACKAGE_{req} # runtime\n'.format( req=dep.upper().replace('-', '_'))