mirror of
https://github.com/home-assistant/operating-system.git
synced 2025-07-27 15:06:29 +00:00
Update buildroot to 2020.11.2 (#1200)
Signed-off-by: Stefan Agner <stefan@agner.ch>
This commit is contained in:
parent
614ff50394
commit
825ef58f85
@ -1,3 +1,40 @@
|
|||||||
|
2020.11.2, released January 31st, 2021
|
||||||
|
|
||||||
|
Important / security related fixes.
|
||||||
|
|
||||||
|
Download: Ensure git submodules are correctly fetched if
|
||||||
|
enabled for a package with <pkg>_GIT_SUBMODULES = YES and the
|
||||||
|
host variant is downloaded first.
|
||||||
|
|
||||||
|
Toolchain: Mark CodeSourcery Aarch64 2014.11 toolchain as not
|
||||||
|
having libatomic. Bootlin PowerPC-440 FP toolchain updated for
|
||||||
|
SecurePLT fix.
|
||||||
|
|
||||||
|
pkg-stats: Fix python 3.8+ deprecation warning.
|
||||||
|
|
||||||
|
meson: Ensure ccache is not detected and used, as it may
|
||||||
|
conflict with the ccache handling in Buildroot.
|
||||||
|
|
||||||
|
Updated/fixed packages: barebox, boost, brltty, dbus,
|
||||||
|
docker-containerd, dovecot, dovecot-pigeonhole,
|
||||||
|
environment-setup, firmware-imx, gcc, gerbera, glibc,
|
||||||
|
gmrender-resurrect, igd2-for-linux, kodi-pvr-zattoo, libclc,
|
||||||
|
libfuse3, libllcp, libodb-mysql, libtorrent-rasterbar,
|
||||||
|
libupnp, lpc32xxcdl, luarocks, mpd, multipath-tools, mutt,
|
||||||
|
nfs-utils, nodejs, openjpeg, openldap, opentracing-cpp,
|
||||||
|
openvpn, p11-kit, paho-mqtt-c, php, poppler, postgresql,
|
||||||
|
python3, redis, resiprocate, rpm, runc, socat, sslh, sudo,
|
||||||
|
sunxi-mali-mainline-driver, syslog-ng, systemd, tini,
|
||||||
|
tpm2-tss, trace-cmd, tzdata, uboot-tools, uhd, ushare,
|
||||||
|
util-linux, vlc, wavpack, wireguard-linux-compat, wolfssl,
|
||||||
|
xapp_xload, xorriso, zic
|
||||||
|
|
||||||
|
Removed packages: libupnp18
|
||||||
|
|
||||||
|
Issues resolved (http://bugs.uclibc.org):
|
||||||
|
|
||||||
|
#13471: package/mpd/mpd.conf make use of path not created
|
||||||
|
|
||||||
2020.11.1, released December 27th, 2020
|
2020.11.1, released December 27th, 2020
|
||||||
|
|
||||||
Important / security related fixes.
|
Important / security related fixes.
|
||||||
|
@ -146,6 +146,16 @@ endif
|
|||||||
|
|
||||||
comment "Legacy options removed in 2020.11"
|
comment "Legacy options removed in 2020.11"
|
||||||
|
|
||||||
|
config BR2_PACKAGE_LIBUPNP18
|
||||||
|
bool "libupnp18 package removed"
|
||||||
|
select BR2_LEGACY
|
||||||
|
select BR2_PACKAGE_LIBUPNP
|
||||||
|
help
|
||||||
|
Version 1.8.x of libupnp (i.e. libupnp18) has been removed
|
||||||
|
because it will never be fixed against CallStranger a.k.a.
|
||||||
|
CVE-2020-12695. The libupnp package (which has been updated to
|
||||||
|
version 1.14.x) has been selected instead.
|
||||||
|
|
||||||
config BR2_PACKAGE_OPENCV
|
config BR2_PACKAGE_OPENCV
|
||||||
bool "opencv package was removed"
|
bool "opencv package was removed"
|
||||||
select BR2_LEGACY
|
select BR2_LEGACY
|
||||||
|
@ -405,6 +405,7 @@ F: package/perl-netaddr-ip/
|
|||||||
F: package/perl-timedate/
|
F: package/perl-timedate/
|
||||||
F: package/perl-uri/
|
F: package/perl-uri/
|
||||||
F: package/perl-www-robotrules/
|
F: package/perl-www-robotrules/
|
||||||
|
F: package/php/
|
||||||
F: package/pixman/
|
F: package/pixman/
|
||||||
F: package/pngquant/
|
F: package/pngquant/
|
||||||
F: package/pound/
|
F: package/pound/
|
||||||
@ -851,7 +852,6 @@ F: package/librsync/
|
|||||||
F: package/libsoup/
|
F: package/libsoup/
|
||||||
F: package/libsoxr/
|
F: package/libsoxr/
|
||||||
F: package/libupnp/
|
F: package/libupnp/
|
||||||
F: package/libupnp18/
|
|
||||||
F: package/libv4l/
|
F: package/libv4l/
|
||||||
F: package/libxslt/
|
F: package/libxslt/
|
||||||
F: package/mbedtls/
|
F: package/mbedtls/
|
||||||
@ -2254,6 +2254,7 @@ F: package/ogre/
|
|||||||
F: package/openpowerlink/
|
F: package/openpowerlink/
|
||||||
F: package/physfs/
|
F: package/physfs/
|
||||||
F: package/piglit/
|
F: package/piglit/
|
||||||
|
F: package/qemu/
|
||||||
F: package/solarus/
|
F: package/solarus/
|
||||||
F: package/stress-ng/
|
F: package/stress-ng/
|
||||||
F: package/supertux/
|
F: package/supertux/
|
||||||
@ -2591,7 +2592,7 @@ F: toolchain/
|
|||||||
N: Timo Ketola <timo.ketola@exertus.fi>
|
N: Timo Ketola <timo.ketola@exertus.fi>
|
||||||
F: package/fbgrab/
|
F: package/fbgrab/
|
||||||
|
|
||||||
N: Titouan Christophe <titouan.christophe@railnova.eu>
|
N: Titouan Christophe <titouanchristophe@gmail.com>
|
||||||
F: package/avro-c/
|
F: package/avro-c/
|
||||||
F: package/mosquitto/
|
F: package/mosquitto/
|
||||||
F: package/python-avro/
|
F: package/python-avro/
|
||||||
|
@ -92,9 +92,9 @@ all:
|
|||||||
.PHONY: all
|
.PHONY: all
|
||||||
|
|
||||||
# Set and export the version string
|
# Set and export the version string
|
||||||
export BR2_VERSION := 2020.11.1
|
export BR2_VERSION := 2020.11.2
|
||||||
# Actual time the release is cut (for reproducible builds)
|
# Actual time the release is cut (for reproducible builds)
|
||||||
BR2_VERSION_EPOCH = 1609079000
|
BR2_VERSION_EPOCH = 1612125000
|
||||||
|
|
||||||
# Save running make version since it's clobbered by the make package
|
# Save running make version since it's clobbered by the make package
|
||||||
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
|
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
|
||||||
|
@ -138,6 +138,11 @@ define $(1)_INSTALL_IMAGES_CMDS
|
|||||||
$$($(1)_INSTALL_CUSTOM_ENV)
|
$$($(1)_INSTALL_CUSTOM_ENV)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
# Starting with barebox v2020.09.0, the kconfig used calls the
|
||||||
|
# cross-compiler to check its capabilities. So we need the
|
||||||
|
# toolchain before we can call the configurators.
|
||||||
|
$(1)_KCONFIG_DEPENDENCIES += toolchain
|
||||||
|
|
||||||
ifeq ($$(BR2_TARGET_$(1)_BAREBOXENV),y)
|
ifeq ($$(BR2_TARGET_$(1)_BAREBOXENV),y)
|
||||||
define $(1)_INSTALL_TARGET_CMDS
|
define $(1)_INSTALL_TARGET_CMDS
|
||||||
cp $$(@D)/scripts/bareboxenv-target $$(TARGET_DIR)/usr/bin/bareboxenv
|
cp $$(@D)/scripts/bareboxenv-target $$(TARGET_DIR)/usr/bin/bareboxenv
|
||||||
|
2
buildroot/boot/lpc32xxcdl/lpc32xxcdl.hash
Normal file
2
buildroot/boot/lpc32xxcdl/lpc32xxcdl.hash
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
# Locally computed
|
||||||
|
sha256 ded3fa936a96d3fb8188ca6214f57b5208bd49e5416bd69f38bfc810b34197bc lpc32xx_cdl-v2.11.zip
|
@ -4,9 +4,9 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
LPC32XXCDL_VERSION = lpc32xx_cdl_v2.11
|
LPC32XXCDL_VERSION = 2.11
|
||||||
LPC32XXCDL_SITE = http://git.lpcware.com/lpc3xxx_cdl.git
|
LPC32XXCDL_SOURCE = lpc32xx_cdl-v$(LPC32XXCDL_VERSION).zip
|
||||||
LPC32XXCDL_SITE_METHOD = git
|
LPC32XXCDL_SITE = https://community.nxp.com/pwmxy87654/attachments/pwmxy87654/lpcware-archive/61/2
|
||||||
|
|
||||||
LPC32XXCDL_INSTALL_TARGET = NO
|
LPC32XXCDL_INSTALL_TARGET = NO
|
||||||
LPC32XXCDL_INSTALL_IMAGES = YES
|
LPC32XXCDL_INSTALL_IMAGES = YES
|
||||||
@ -45,13 +45,14 @@ LPC32XXCDL_BOARD_STARTUP_DIR = \
|
|||||||
# Source files are with dos newlines, which our patch infrastructure doesn't
|
# Source files are with dos newlines, which our patch infrastructure doesn't
|
||||||
# handle. Work around it by converting the affected files to unix newlines
|
# handle. Work around it by converting the affected files to unix newlines
|
||||||
# before patching
|
# before patching
|
||||||
define LPC32XXCDL_DOS2UNIX_FOR_PATCH
|
define LPC32XXCDL_EXTRACT_CMDS
|
||||||
|
unzip $(LPC32XXCDL_DL_DIR)/$(LPC32XXCDL_SOURCE) -d $(@D)
|
||||||
|
mv $(@D)/lpc3xxx_cdl/* $(@D)
|
||||||
|
rmdir $(@D)/lpc3xxx_cdl/
|
||||||
sed -n 's|^[+-]\{3\} [^/]\+\([^ \t]*\)\(.*\)|$(@D)\1|p' \
|
sed -n 's|^[+-]\{3\} [^/]\+\([^ \t]*\)\(.*\)|$(@D)\1|p' \
|
||||||
boot/lpc32xxcdl/*.patch| sort -u | xargs $(SED) 's/\x0D$$//'
|
boot/lpc32xxcdl/*.patch| sort -u | xargs $(SED) 's/\x0D$$//'
|
||||||
endef
|
endef
|
||||||
|
|
||||||
LPC32XXCDL_POST_EXTRACT_HOOKS += LPC32XXCDL_DOS2UNIX_FOR_PATCH
|
|
||||||
|
|
||||||
define LPC32XXCDL_BUILD_CMDS
|
define LPC32XXCDL_BUILD_CMDS
|
||||||
$(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)
|
$(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)
|
||||||
$(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/Burners/$(LPC32XXCDL_KICKSTART_BURNER)
|
$(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/Burners/$(LPC32XXCDL_KICKSTART_BURNER)
|
||||||
|
@ -126,14 +126,19 @@ typical packages will therefore only use a few of them.
|
|||||||
in the build step. These are passed after the +make+ command. By
|
in the build step. These are passed after the +make+ command. By
|
||||||
default, empty.
|
default, empty.
|
||||||
|
|
||||||
|
* +LIBFOO_INSTALL_OPTS+ contains the make options used to
|
||||||
|
install the package to the host directory. By default, the value
|
||||||
|
is +install+, which is correct for most CMake packages. It is still
|
||||||
|
possible to override it.
|
||||||
|
|
||||||
* +LIBFOO_INSTALL_STAGING_OPTS+ contains the make options used to
|
* +LIBFOO_INSTALL_STAGING_OPTS+ contains the make options used to
|
||||||
install the package to the staging directory. By default, the value
|
install the package to the staging directory. By default, the value
|
||||||
is +DESTDIR=$(STAGING_DIR) install+, which is correct for most
|
is +DESTDIR=$(STAGING_DIR) install/fast+, which is correct for most
|
||||||
CMake packages. It is still possible to override it.
|
CMake packages. It is still possible to override it.
|
||||||
|
|
||||||
* +LIBFOO_INSTALL_TARGET_OPTS+ contains the make options used to
|
* +LIBFOO_INSTALL_TARGET_OPTS+ contains the make options used to
|
||||||
install the package to the target directory. By default, the value
|
install the package to the target directory. By default, the value
|
||||||
is +DESTDIR=$(TARGET_DIR) install+. The default value is correct
|
is +DESTDIR=$(TARGET_DIR) install/fast+. The default value is correct
|
||||||
for most CMake packages, but it is still possible to override it if
|
for most CMake packages, but it is still possible to override it if
|
||||||
needed.
|
needed.
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
Binary file not shown.
@ -174,13 +174,13 @@ List of Examples
|
|||||||
|
|
||||||
---------------------------------------------------------------------
|
---------------------------------------------------------------------
|
||||||
|
|
||||||
Buildroot 2020.11.1 manual generated on 2020-12-27 14:25:17 UTC from
|
Buildroot 2020.11.2 manual generated on 2021-01-31 20:36:55 UTC from
|
||||||
git revision 804a9e1865
|
git revision 551cb63007
|
||||||
|
|
||||||
The Buildroot manual is written by the Buildroot developers. It is
|
The Buildroot manual is written by the Buildroot developers. It is
|
||||||
licensed under the GNU General Public License, version 2. Refer to
|
licensed under the GNU General Public License, version 2. Refer to
|
||||||
the COPYING [http://git.buildroot.org/buildroot/tree/COPYING?id=
|
the COPYING [http://git.buildroot.org/buildroot/tree/COPYING?id=
|
||||||
804a9e18656c1584b059129e0b5cebe2a2405fac] file in the Buildroot
|
551cb630079316efe928d7c2eb0358a19e38fc48] file in the Buildroot
|
||||||
sources for the full text of this license.
|
sources for the full text of this license.
|
||||||
|
|
||||||
Copyright © 2004-2020 The Buildroot developers
|
Copyright © 2004-2020 The Buildroot developers
|
||||||
@ -1710,7 +1710,7 @@ you to just prepare the SDK with make prepare-sdk without actually
|
|||||||
generating a tarball.
|
generating a tarball.
|
||||||
|
|
||||||
For your convenience, by selecting the option
|
For your convenience, by selecting the option
|
||||||
BR2_PACKAGE_HOST_ENVIRONMENT_SETUP, you can get a setup-environment
|
BR2_PACKAGE_HOST_ENVIRONMENT_SETUP, you can get a environment-setup
|
||||||
script installed in output/host/ and therefore in your SDK. This
|
script installed in output/host/ and therefore in your SDK. This
|
||||||
script can be sourced with . your/sdk/path/environment-setup to
|
script can be sourced with . your/sdk/path/environment-setup to
|
||||||
export a number of environment variables that will help cross-compile
|
export a number of environment variables that will help cross-compile
|
||||||
@ -5225,13 +5225,17 @@ typical packages will therefore only use a few of them.
|
|||||||
* LIBFOO_MAKE_OPTS, to specify additional variables to pass to make
|
* LIBFOO_MAKE_OPTS, to specify additional variables to pass to make
|
||||||
in the build step. These are passed after the make command. By
|
in the build step. These are passed after the make command. By
|
||||||
default, empty.
|
default, empty.
|
||||||
|
* LIBFOO_INSTALL_OPTS contains the make options used to install the
|
||||||
|
package to the host directory. By default, the value is install,
|
||||||
|
which is correct for most CMake packages. It is still possible to
|
||||||
|
override it.
|
||||||
* LIBFOO_INSTALL_STAGING_OPTS contains the make options used to
|
* LIBFOO_INSTALL_STAGING_OPTS contains the make options used to
|
||||||
install the package to the staging directory. By default, the
|
install the package to the staging directory. By default, the
|
||||||
value is DESTDIR=$(STAGING_DIR) install, which is correct for
|
value is DESTDIR=$(STAGING_DIR) install/fast, which is correct
|
||||||
most CMake packages. It is still possible to override it.
|
for most CMake packages. It is still possible to override it.
|
||||||
* LIBFOO_INSTALL_TARGET_OPTS contains the make options used to
|
* LIBFOO_INSTALL_TARGET_OPTS contains the make options used to
|
||||||
install the package to the target directory. By default, the
|
install the package to the target directory. By default, the
|
||||||
value is DESTDIR=$(TARGET_DIR) install. The default value is
|
value is DESTDIR=$(TARGET_DIR) install/fast. The default value is
|
||||||
correct for most CMake packages, but it is still possible to
|
correct for most CMake packages, but it is still possible to
|
||||||
override it if needed.
|
override it if needed.
|
||||||
|
|
||||||
|
@ -35,7 +35,7 @@ generating a tarball.
|
|||||||
|
|
||||||
For your convenience, by selecting the option
|
For your convenience, by selecting the option
|
||||||
+BR2_PACKAGE_HOST_ENVIRONMENT_SETUP+, you can get a
|
+BR2_PACKAGE_HOST_ENVIRONMENT_SETUP+, you can get a
|
||||||
+setup-environment+ script installed in +output/host/+ and therefore
|
+environment-setup+ script installed in +output/host/+ and therefore
|
||||||
in your SDK. This script can be sourced with
|
in your SDK. This script can be sourced with
|
||||||
+. your/sdk/path/environment-setup+ to export a number of environment
|
+. your/sdk/path/environment-setup+ to export a number of environment
|
||||||
variables that will help cross-compile your projects using the
|
variables that will help cross-compile your projects using the
|
||||||
|
@ -125,7 +125,7 @@ endif
|
|||||||
|
|
||||||
config BR2_LINUX_KERNEL_VERSION
|
config BR2_LINUX_KERNEL_VERSION
|
||||||
string
|
string
|
||||||
default "5.9.14" if BR2_LINUX_KERNEL_LATEST_VERSION
|
default "5.9.16" if BR2_LINUX_KERNEL_LATEST_VERSION
|
||||||
default "4.19.152-cip37" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION
|
default "4.19.152-cip37" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION
|
||||||
default "4.19.152-cip37-rt16" if BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION
|
default "4.19.152-cip37-rt16" if BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION
|
||||||
default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \
|
default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
# From https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc
|
# From https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc
|
||||||
sha256 39fcfb41dcdf71b6b42b88eff3d8cedbe7523830ccae847f3914c0b97e1e6b49 linux-5.9.14.tar.xz
|
sha256 b0d7abae88e5f91893627c645e680a95c818defd1b4fcaf3e2afb4b2b6b4ab86 linux-5.9.16.tar.xz
|
||||||
sha256 4ab4a3f694b7b4cfbe78871eab34c8039ad33692144c45c669827a594da85534 linux-5.8.18.tar.xz
|
sha256 4ab4a3f694b7b4cfbe78871eab34c8039ad33692144c45c669827a594da85534 linux-5.8.18.tar.xz
|
||||||
sha256 beec970bbb93de8ab839f27930f7ab00c7bd65af0ffa07a50e765affdc2561c6 linux-5.4.83.tar.xz
|
sha256 d37449403664cc3b1bac96d0d9a199dbe619885cd899c0ae3108843f42e3d522 linux-5.4.93.tar.xz
|
||||||
# From https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc
|
# From https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc
|
||||||
sha256 e52a49ceb639d871478a143c314648c35e22222c317ecdf49866830fea5c3dfc linux-4.4.248.tar.xz
|
sha256 661e98b9448cbac948c705fd44cd7d30200422ee1cb02950d142aa99a1b3985a linux-4.4.253.tar.xz
|
||||||
sha256 4687268061c9933c298b30d28e4bf1a30dfbab7c0da4bee194968e4f81ffeccf linux-4.9.248.tar.xz
|
sha256 9a5b51a8350201bd38e3ff13909323a6571b4572a7b3caed76e462b07619bc18 linux-4.9.253.tar.xz
|
||||||
sha256 0e1bc32c4842c3bbee3a15454408f528acd4d3c5e83312b93008d5ee2e9a0c79 linux-4.14.212.tar.xz
|
sha256 62a36a25431016d98d0f1cff98be432086c51f86fd79042bd10a867b3a924d11 linux-4.14.217.tar.xz
|
||||||
sha256 3eeec4e5eb8a129be3536357ecb028fae7d82fac933dcfac0b6089ee398fc5fc linux-4.19.163.tar.xz
|
sha256 f4e352fe0eb986e5b532b99d9b0725a67046cbb3e5f53fcd5b098cbaeb2ac60a linux-4.19.171.tar.xz
|
||||||
# Locally computed
|
# Locally computed
|
||||||
sha256 d2a06f52143deb929b8d513cf9afc9bd065951389a80fa70bc4d63025b5b3fb9 linux-cip-4.19.152-cip37.tar.gz
|
sha256 d2a06f52143deb929b8d513cf9afc9bd065951389a80fa70bc4d63025b5b3fb9 linux-cip-4.19.152-cip37.tar.gz
|
||||||
sha256 bc1dacd3d0f526de3e8754a444e8e02a54521527af639ddb907cb35cda775a8c linux-cip-4.19.152-cip37-rt16.tar.gz
|
sha256 bc1dacd3d0f526de3e8754a444e8e02a54521527af639ddb907cb35cda775a8c linux-cip-4.19.152-cip37-rt16.tar.gz
|
||||||
|
@ -1764,7 +1764,6 @@ menu "Networking"
|
|||||||
source "package/libuev/Config.in"
|
source "package/libuev/Config.in"
|
||||||
source "package/libuhttpd/Config.in"
|
source "package/libuhttpd/Config.in"
|
||||||
source "package/libupnp/Config.in"
|
source "package/libupnp/Config.in"
|
||||||
source "package/libupnp18/Config.in"
|
|
||||||
source "package/libupnpp/Config.in"
|
source "package/libupnpp/Config.in"
|
||||||
source "package/liburiparser/Config.in"
|
source "package/liburiparser/Config.in"
|
||||||
source "package/libuwsc/Config.in"
|
source "package/libuwsc/Config.in"
|
||||||
|
@ -5,6 +5,7 @@ config BR2_PACKAGE_AZMQ
|
|||||||
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # boost-log
|
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # boost-log
|
||||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
|
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
|
||||||
depends on BR2_USE_WCHAR # boost
|
depends on BR2_USE_WCHAR # boost
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-thread
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr
|
||||||
select BR2_PACKAGE_ZEROMQ
|
select BR2_PACKAGE_ZEROMQ
|
||||||
select BR2_PACKAGE_BOOST
|
select BR2_PACKAGE_BOOST
|
||||||
@ -21,6 +22,7 @@ config BR2_PACKAGE_AZMQ
|
|||||||
https://github.com/zeromq/azmq
|
https://github.com/zeromq/azmq
|
||||||
|
|
||||||
comment "azmq needs a toolchain w/ C++11, wchar and NPTL"
|
comment "azmq needs a toolchain w/ C++11, wchar and NPTL"
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 \
|
depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 \
|
||||||
&& BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS_NPTL)
|
&& BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS_NPTL)
|
||||||
|
|
||||||
|
@ -10,6 +10,7 @@ config BR2_PACKAGE_BITCOIN_ARCH_SUPPORTS
|
|||||||
config BR2_PACKAGE_BITCOIN
|
config BR2_PACKAGE_BITCOIN
|
||||||
bool "bitcoin"
|
bool "bitcoin"
|
||||||
depends on BR2_INSTALL_LIBSTDCPP
|
depends on BR2_INSTALL_LIBSTDCPP
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-thread
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::future
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::future
|
||||||
depends on BR2_PACKAGE_BITCOIN_ARCH_SUPPORTS
|
depends on BR2_PACKAGE_BITCOIN_ARCH_SUPPORTS
|
||||||
depends on BR2_TOOLCHAIN_HAS_THREADS # boost
|
depends on BR2_TOOLCHAIN_HAS_THREADS # boost
|
||||||
@ -37,6 +38,7 @@ config BR2_PACKAGE_BITCOIN
|
|||||||
|
|
||||||
comment "bitcoin needs a toolchain w/ C++, threads, wchar"
|
comment "bitcoin needs a toolchain w/ C++, threads, wchar"
|
||||||
depends on BR2_PACKAGE_BITCOIN_ARCH_SUPPORTS
|
depends on BR2_PACKAGE_BITCOIN_ARCH_SUPPORTS
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
depends on !BR2_INSTALL_LIBSTDCPP || \
|
depends on !BR2_INSTALL_LIBSTDCPP || \
|
||||||
!BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
|
!BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
|
||||||
|
|
||||||
|
@ -52,6 +52,7 @@ config BR2_PACKAGE_BOOST_LAYOUT
|
|||||||
|
|
||||||
config BR2_PACKAGE_BOOST_ATOMIC
|
config BR2_PACKAGE_BOOST_ATOMIC
|
||||||
bool "boost-atomic"
|
bool "boost-atomic"
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
help
|
help
|
||||||
C++11-style atomic<>.
|
C++11-style atomic<>.
|
||||||
|
|
||||||
@ -82,6 +83,8 @@ config BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
|
|||||||
config BR2_PACKAGE_BOOST_CONTEXT
|
config BR2_PACKAGE_BOOST_CONTEXT
|
||||||
bool "boost-context"
|
bool "boost-context"
|
||||||
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
|
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS \
|
||||||
|
|| BR2_TOOLCHAIN_GCC_AT_LEAST_6 # boost-thread
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
||||||
select BR2_PACKAGE_BOOST_THREAD if !BR2_TOOLCHAIN_GCC_AT_LEAST_6
|
select BR2_PACKAGE_BOOST_THREAD if !BR2_TOOLCHAIN_GCC_AT_LEAST_6
|
||||||
help
|
help
|
||||||
@ -101,6 +104,7 @@ comment "boost-contract needs a toolchain w/ NPTL"
|
|||||||
config BR2_PACKAGE_BOOST_COROUTINE
|
config BR2_PACKAGE_BOOST_COROUTINE
|
||||||
bool "boost-coroutine"
|
bool "boost-coroutine"
|
||||||
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
|
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-thread
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-context, boost-thread
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-context, boost-thread
|
||||||
select BR2_PACKAGE_BOOST_CHRONO
|
select BR2_PACKAGE_BOOST_CHRONO
|
||||||
select BR2_PACKAGE_BOOST_CONTEXT
|
select BR2_PACKAGE_BOOST_CONTEXT
|
||||||
@ -113,6 +117,7 @@ config BR2_PACKAGE_BOOST_COROUTINE
|
|||||||
|
|
||||||
comment "boost-coroutine needs a toolchain not affected by GCC bug 64735"
|
comment "boost-coroutine needs a toolchain not affected by GCC bug 64735"
|
||||||
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
|
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
||||||
|
|
||||||
config BR2_PACKAGE_BOOST_DATE_TIME
|
config BR2_PACKAGE_BOOST_DATE_TIME
|
||||||
@ -135,6 +140,8 @@ config BR2_PACKAGE_BOOST_FIBER
|
|||||||
# mips support uses the "pause" instruction, only available
|
# mips support uses the "pause" instruction, only available
|
||||||
# since mips32r2/mips64r2.
|
# since mips32r2/mips64r2.
|
||||||
depends on !BR2_MIPS_CPU_MIPS32 && !BR2_MIPS_CPU_MIPS64
|
depends on !BR2_MIPS_CPU_MIPS32 && !BR2_MIPS_CPU_MIPS64
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS \
|
||||||
|
|| BR2_TOOLCHAIN_GCC_AT_LEAST_6 # boost-context -> boost-thread
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-context
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-context
|
||||||
select BR2_PACKAGE_BOOST_CONTEXT
|
select BR2_PACKAGE_BOOST_CONTEXT
|
||||||
select BR2_PACKAGE_BOOST_FILESYSTEM
|
select BR2_PACKAGE_BOOST_FILESYSTEM
|
||||||
@ -144,10 +151,14 @@ config BR2_PACKAGE_BOOST_FIBER
|
|||||||
|
|
||||||
comment "boost-fiber needs a toolchain w/ NPTL"
|
comment "boost-fiber needs a toolchain w/ NPTL"
|
||||||
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
|
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS \
|
||||||
|
|| BR2_TOOLCHAIN_GCC_AT_LEAST_6
|
||||||
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
||||||
|
|
||||||
comment "boost-fiber needs a toolchain not affected by GCC bug 64735"
|
comment "boost-fiber needs a toolchain not affected by GCC bug 64735"
|
||||||
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
|
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS \
|
||||||
|
|| BR2_TOOLCHAIN_GCC_AT_LEAST_6
|
||||||
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
||||||
|
|
||||||
config BR2_PACKAGE_BOOST_FILESYSTEM
|
config BR2_PACKAGE_BOOST_FILESYSTEM
|
||||||
@ -190,6 +201,8 @@ config BR2_PACKAGE_BOOST_LOCALE
|
|||||||
# details.
|
# details.
|
||||||
depends on !(BR2_STATIC_LIBS && BR2_PACKAGE_ICU)
|
depends on !(BR2_STATIC_LIBS && BR2_PACKAGE_ICU)
|
||||||
depends on !(BR2_TOOLCHAIN_HAS_GCC_BUG_64735 && BR2_PACKAGE_ICU) # boost-thread
|
depends on !(BR2_TOOLCHAIN_HAS_GCC_BUG_64735 && BR2_PACKAGE_ICU) # boost-thread
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS \
|
||||||
|
|| !BR2_PACKAGE_ICU # boost-thread
|
||||||
select BR2_PACKAGE_BOOST_SYSTEM
|
select BR2_PACKAGE_BOOST_SYSTEM
|
||||||
select BR2_PACKAGE_BOOST_THREAD if BR2_PACKAGE_ICU
|
select BR2_PACKAGE_BOOST_THREAD if BR2_PACKAGE_ICU
|
||||||
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
|
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
|
||||||
@ -197,16 +210,19 @@ config BR2_PACKAGE_BOOST_LOCALE
|
|||||||
Provide localization and Unicode handling tools for C++.
|
Provide localization and Unicode handling tools for C++.
|
||||||
|
|
||||||
comment "boost-locale needs a toolchain w/ dynamic library"
|
comment "boost-locale needs a toolchain w/ dynamic library"
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
depends on BR2_PACKAGE_ICU
|
depends on BR2_PACKAGE_ICU
|
||||||
depends on BR2_STATIC_LIBS
|
depends on BR2_STATIC_LIBS
|
||||||
|
|
||||||
comment "boost-locale needs a toolchain not affected by GCC bug 64735"
|
comment "boost-locale needs a toolchain not affected by GCC bug 64735"
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
depends on BR2_PACKAGE_ICU
|
depends on BR2_PACKAGE_ICU
|
||||||
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
||||||
|
|
||||||
config BR2_PACKAGE_BOOST_LOG
|
config BR2_PACKAGE_BOOST_LOG
|
||||||
bool "boost-log"
|
bool "boost-log"
|
||||||
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-atomic
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread
|
||||||
select BR2_PACKAGE_BOOST_ATOMIC
|
select BR2_PACKAGE_BOOST_ATOMIC
|
||||||
select BR2_PACKAGE_BOOST_DATE_TIME
|
select BR2_PACKAGE_BOOST_DATE_TIME
|
||||||
@ -218,6 +234,7 @@ config BR2_PACKAGE_BOOST_LOG
|
|||||||
Logging library.
|
Logging library.
|
||||||
|
|
||||||
comment "boost-log needs a toolchain w/ NPTL"
|
comment "boost-log needs a toolchain w/ NPTL"
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
||||||
|
|
||||||
comment "boost-log needs a toolchain not affected by GCC bug 64735"
|
comment "boost-log needs a toolchain not affected by GCC bug 64735"
|
||||||
@ -313,8 +330,8 @@ config BR2_PACKAGE_BOOST_TEST
|
|||||||
|
|
||||||
config BR2_PACKAGE_BOOST_THREAD
|
config BR2_PACKAGE_BOOST_THREAD
|
||||||
bool "boost-thread"
|
bool "boost-thread"
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::current_exception
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::current_exception
|
||||||
select BR2_PACKAGE_BOOST_ATOMIC if !BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
|
||||||
select BR2_PACKAGE_BOOST_CHRONO
|
select BR2_PACKAGE_BOOST_CHRONO
|
||||||
select BR2_PACKAGE_BOOST_SYSTEM
|
select BR2_PACKAGE_BOOST_SYSTEM
|
||||||
help
|
help
|
||||||
@ -332,6 +349,7 @@ config BR2_PACKAGE_BOOST_TIMER
|
|||||||
|
|
||||||
config BR2_PACKAGE_BOOST_TYPE_ERASURE
|
config BR2_PACKAGE_BOOST_TYPE_ERASURE
|
||||||
bool "boost-type_erasure"
|
bool "boost-type_erasure"
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-thread
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread
|
||||||
select BR2_PACKAGE_BOOST_SYSTEM
|
select BR2_PACKAGE_BOOST_SYSTEM
|
||||||
select BR2_PACKAGE_BOOST_THREAD
|
select BR2_PACKAGE_BOOST_THREAD
|
||||||
@ -346,6 +364,7 @@ config BR2_PACKAGE_BOOST_WAVE
|
|||||||
# limitation of assembler for coldfire
|
# limitation of assembler for coldfire
|
||||||
# error: Tried to convert PC relative branch to absolute jump
|
# error: Tried to convert PC relative branch to absolute jump
|
||||||
depends on !BR2_m68k_cf
|
depends on !BR2_m68k_cf
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-thread
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread
|
||||||
select BR2_PACKAGE_BOOST_DATE_TIME
|
select BR2_PACKAGE_BOOST_DATE_TIME
|
||||||
select BR2_PACKAGE_BOOST_FILESYSTEM
|
select BR2_PACKAGE_BOOST_FILESYSTEM
|
||||||
|
@ -96,6 +96,13 @@ else
|
|||||||
BRLTTY_CONF_OPTS += --without-rgx-package
|
BRLTTY_CONF_OPTS += --without-rgx-package
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq ($(BR2_PACKAGE_POLKIT),y)
|
||||||
|
BRLTTY_DEPENDENCIES += polkit
|
||||||
|
BRLTTY_CONF_OPTS += --enable-polkit
|
||||||
|
else
|
||||||
|
BRLTTY_CONF_OPTS += --disable-polkit
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
|
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
|
||||||
BRLTTY_DEPENDENCIES += systemd
|
BRLTTY_DEPENDENCIES += systemd
|
||||||
BRLTTY_CONF_OPTS += --with-service-package
|
BRLTTY_CONF_OPTS += --with-service-package
|
||||||
|
@ -7,7 +7,7 @@ config BR2_PACKAGE_DBUS
|
|||||||
help
|
help
|
||||||
The D-Bus message bus system.
|
The D-Bus message bus system.
|
||||||
|
|
||||||
http://www.freedesktop.org/wiki/Software/dbus
|
https://www.freedesktop.org/wiki/Software/dbus
|
||||||
|
|
||||||
comment "dbus needs a toolchain w/ threads"
|
comment "dbus needs a toolchain w/ threads"
|
||||||
depends on BR2_USE_MMU
|
depends on BR2_USE_MMU
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
# Locally calculated after checking pgp signature
|
# Locally calculated after checking pgp signature
|
||||||
# https://dbus.freedesktop.org/releases/dbus/dbus-1.12.18.tar.gz.asc
|
# https://dbus.freedesktop.org/releases/dbus/dbus-1.12.20.tar.gz.asc
|
||||||
# using key 36EC5A6448A4F5EF79BEFE98E05AE1478F814C4F
|
# using key 36EC5A6448A4F5EF79BEFE98E05AE1478F814C4F
|
||||||
sha256 64cf4d70840230e5e9bc784d153880775ab3db19d656ead8a0cb9c0ab5a95306 dbus-1.12.18.tar.gz
|
sha256 f77620140ecb4cdc67f37fb444f8a6bea70b5b6461f12f1cbe2cec60fa7de5fe dbus-1.12.20.tar.gz
|
||||||
|
|
||||||
# Locally calculated
|
# Locally calculated
|
||||||
sha256 0e46f54efb12d04ab5c33713bacd0e140c9a35b57ae29e03c853203266e8f3a1 COPYING
|
sha256 0e46f54efb12d04ab5c33713bacd0e140c9a35b57ae29e03c853203266e8f3a1 COPYING
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
DBUS_VERSION = 1.12.18
|
DBUS_VERSION = 1.12.20
|
||||||
DBUS_SITE = https://dbus.freedesktop.org/releases/dbus
|
DBUS_SITE = https://dbus.freedesktop.org/releases/dbus
|
||||||
DBUS_LICENSE = AFL-2.1 or GPL-2.0+ (library, tools), GPL-2.0+ (tools)
|
DBUS_LICENSE = AFL-2.1 or GPL-2.0+ (library, tools), GPL-2.0+ (tools)
|
||||||
DBUS_LICENSE_FILES = COPYING
|
DBUS_LICENSE_FILES = COPYING
|
||||||
|
@ -12,7 +12,7 @@ DOCKER_CONTAINERD_LICENSE_FILES = LICENSE
|
|||||||
DOCKER_CONTAINERD_GOMOD = github.com/containerd/containerd
|
DOCKER_CONTAINERD_GOMOD = github.com/containerd/containerd
|
||||||
|
|
||||||
DOCKER_CONTAINERD_LDFLAGS = \
|
DOCKER_CONTAINERD_LDFLAGS = \
|
||||||
-X github.com/docker/containerd.GitCommit=$(DOCKER_CONTAINERD_VERSION)
|
-X $(DOCKER_CONTAINERD_GOMOD)/version.Version=$(DOCKER_CONTAINERD_VERSION)
|
||||||
|
|
||||||
DOCKER_CONTAINERD_BUILD_TARGETS = cmd/ctr cmd/containerd cmd/containerd-shim
|
DOCKER_CONTAINERD_BUILD_TARGETS = cmd/ctr cmd/containerd cmd/containerd-shim
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ config BR2_PACKAGE_DOMOTICZ
|
|||||||
depends on BR2_INSTALL_LIBSTDCPP
|
depends on BR2_INSTALL_LIBSTDCPP
|
||||||
depends on BR2_USE_WCHAR
|
depends on BR2_USE_WCHAR
|
||||||
depends on BR2_PACKAGE_LUA_5_3
|
depends on BR2_PACKAGE_LUA_5_3
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-thread
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr
|
||||||
select BR2_PACKAGE_BOOST
|
select BR2_PACKAGE_BOOST
|
||||||
select BR2_PACKAGE_BOOST_DATE_TIME
|
select BR2_PACKAGE_BOOST_DATE_TIME
|
||||||
@ -30,6 +31,7 @@ config BR2_PACKAGE_DOMOTICZ
|
|||||||
|
|
||||||
comment "domoticz needs lua 5.3 and a toolchain w/ C++, gcc >= 4.8, NPTL, wchar, dynamic library"
|
comment "domoticz needs lua 5.3 and a toolchain w/ C++, gcc >= 4.8, NPTL, wchar, dynamic library"
|
||||||
depends on BR2_USE_MMU
|
depends on BR2_USE_MMU
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
depends on !BR2_INSTALL_LIBSTDCPP || \
|
depends on !BR2_INSTALL_LIBSTDCPP || \
|
||||||
!BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || \
|
!BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || \
|
||||||
!BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
|
!BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
# Locally computed after checking signature
|
# Locally computed after checking signature
|
||||||
sha256 0b972a441f680545ddfacd2f41fb2a705fb03249d46ed5ce7e01fe68b6cfb5f0 dovecot-2.3-pigeonhole-0.5.11.tar.gz
|
sha256 911fe566da5b638eab1b11105314300bc9049cc3832d4bd2aed44c265013bf17 dovecot-2.3-pigeonhole-0.5.13.tar.gz
|
||||||
sha256 fc9e9522216f2a9a28b31300e3c73c1df56acc27dfae951bf516e7995366b51a COPYING
|
sha256 fc9e9522216f2a9a28b31300e3c73c1df56acc27dfae951bf516e7995366b51a COPYING
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
DOVECOT_PIGEONHOLE_VERSION = 0.5.11
|
DOVECOT_PIGEONHOLE_VERSION = 0.5.13
|
||||||
DOVECOT_PIGEONHOLE_SOURCE = dovecot-2.3-pigeonhole-$(DOVECOT_PIGEONHOLE_VERSION).tar.gz
|
DOVECOT_PIGEONHOLE_SOURCE = dovecot-2.3-pigeonhole-$(DOVECOT_PIGEONHOLE_VERSION).tar.gz
|
||||||
DOVECOT_PIGEONHOLE_SITE = https://pigeonhole.dovecot.org/releases/2.3
|
DOVECOT_PIGEONHOLE_SITE = https://pigeonhole.dovecot.org/releases/2.3
|
||||||
DOVECOT_PIGEONHOLE_LICENSE = LGPL-2.1
|
DOVECOT_PIGEONHOLE_LICENSE = LGPL-2.1
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Locally computed after checking signature
|
# Locally computed after checking signature
|
||||||
sha256 d3d9ea9010277f57eb5b9f4166a5d2ba539b172bd6d5a2b2529a6db524baafdc dovecot-2.3.11.3.tar.gz
|
sha256 a3f875b80ec11a452480690108660030978c94fa8e796ad6d943a874b496f1c4 dovecot-2.3.13.tar.gz
|
||||||
sha256 a363b132e494f662d98c820d1481297e6ae72f194c2c91b6c39e1518b86240a8 COPYING
|
sha256 319a9830aab406109cd67cb45496587566a8123203d66d037b209ca3e13de02a COPYING
|
||||||
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPL
|
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPL
|
||||||
sha256 52b8c95fabb19575281874b661ef7968ea47e8f5d74ba0dd40ce512e52b3fc97 COPYING.MIT
|
sha256 52b8c95fabb19575281874b661ef7968ea47e8f5d74ba0dd40ce512e52b3fc97 COPYING.MIT
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
DOVECOT_VERSION_MAJOR = 2.3
|
DOVECOT_VERSION_MAJOR = 2.3
|
||||||
DOVECOT_VERSION = $(DOVECOT_VERSION_MAJOR).11.3
|
DOVECOT_VERSION = $(DOVECOT_VERSION_MAJOR).13
|
||||||
DOVECOT_SITE = https://dovecot.org/releases/$(DOVECOT_VERSION_MAJOR)
|
DOVECOT_SITE = https://dovecot.org/releases/$(DOVECOT_VERSION_MAJOR)
|
||||||
DOVECOT_INSTALL_STAGING = YES
|
DOVECOT_INSTALL_STAGING = YES
|
||||||
DOVECOT_LICENSE = LGPL-2.1, MIT, Public Domain, BSD-3-Clause, Unicode-DFS-2015
|
DOVECOT_LICENSE = LGPL-2.1, MIT, Public Domain, BSD-3-Clause, Unicode-DFS-2015
|
||||||
|
@ -18,6 +18,8 @@ config BR2_PACKAGE_FIRMWARE_IMX_SDMA_FW_NAME
|
|||||||
default "imx51" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX51
|
default "imx51" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX51
|
||||||
default "imx53" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53
|
default "imx53" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53
|
||||||
default "imx6q" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q
|
default "imx6q" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q
|
||||||
|
default "imx6q" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6S
|
||||||
|
default "imx6q" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6UL
|
||||||
default "imx7d" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7
|
default "imx7d" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7
|
||||||
default "imx7d" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M
|
default "imx7d" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M
|
||||||
default "imx7d" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM
|
default "imx7d" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM
|
||||||
|
@ -116,9 +116,11 @@ endif
|
|||||||
FIRMWARE_IMX_VPU_FW_NAME = $(call qstrip,$(BR2_PACKAGE_FIRMWARE_IMX_VPU_FW_NAME))
|
FIRMWARE_IMX_VPU_FW_NAME = $(call qstrip,$(BR2_PACKAGE_FIRMWARE_IMX_VPU_FW_NAME))
|
||||||
ifneq ($(FIRMWARE_IMX_VPU_FW_NAME),)
|
ifneq ($(FIRMWARE_IMX_VPU_FW_NAME),)
|
||||||
define FIRMWARE_IMX_INSTALL_TARGET_VPU_FW
|
define FIRMWARE_IMX_INSTALL_TARGET_VPU_FW
|
||||||
mkdir -p $(TARGET_DIR)/lib/firmware/imx/vpu
|
mkdir -p $(TARGET_DIR)/lib/firmware/vpu
|
||||||
cp $(@D)/firmware/vpu/vpu_fw_$(FIRMWARE_IMX_VPU_FW_NAME)*.bin \
|
for i in $$(find $(@D)/firmware/vpu/vpu_fw_$(FIRMWARE_IMX_VPU_FW_NAME)*.bin); do \
|
||||||
$(TARGET_DIR)/lib/firmware/imx/vpu/
|
cp $$i $(TARGET_DIR)/lib/firmware/vpu/ ; \
|
||||||
|
ln -sf vpu/$$(basename $$i) $(TARGET_DIR)/lib/firmware/$$(basename $$i) ; \
|
||||||
|
done
|
||||||
endef
|
endef
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -0,0 +1,242 @@
|
|||||||
|
From 09944fba5bfb8e5543ce043c70d08222cf2f97ff Mon Sep 17 00:00:00 2001
|
||||||
|
From: Claudiu Zissulescu <claziss@synopsys.com>
|
||||||
|
Date: Wed, 11 Nov 2020 12:31:10 +0200
|
||||||
|
Subject: [PATCH] arc: Refurbish adc/sbc patterns
|
||||||
|
|
||||||
|
The adc/sbc patterns were unecessary spliting, remove that and
|
||||||
|
associated functions.
|
||||||
|
|
||||||
|
gcc/ChangeLog:
|
||||||
|
|
||||||
|
2020-10-11 Claudiu Zissulescu <claziss@synopsys.com>
|
||||||
|
|
||||||
|
* config/arc/arc-protos.h (arc_scheduling_not_expected): Remove
|
||||||
|
it.
|
||||||
|
(arc_sets_cc_p): Likewise.
|
||||||
|
(arc_need_delay): Likewise.
|
||||||
|
* config/arc/arc.c (arc_sets_cc_p): Likewise.
|
||||||
|
(arc_need_delay): Likewise.
|
||||||
|
(arc_scheduling_not_expected): Likewise.
|
||||||
|
* config/arc/arc.md: Convert adc/sbc patterns to simple
|
||||||
|
instruction definitions.
|
||||||
|
|
||||||
|
Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
|
||||||
|
Signed-off-by: Veronika Kremneva <kremneva@synopsys.com>
|
||||||
|
---
|
||||||
|
gcc/config/arc/arc-protos.h | 3 --
|
||||||
|
gcc/config/arc/arc.c | 53 -------------------------
|
||||||
|
gcc/config/arc/arc.md | 95 ++++++++++++++-------------------------------
|
||||||
|
3 files changed, 29 insertions(+), 122 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/gcc/config/arc/arc-protos.h b/gcc/config/arc/arc-protos.h
|
||||||
|
index c72d78e3b9e..de4cf47c818 100644
|
||||||
|
--- a/gcc/config/arc/arc-protos.h
|
||||||
|
+++ b/gcc/config/arc/arc-protos.h
|
||||||
|
@@ -90,10 +90,7 @@ extern void split_subsi (rtx *);
|
||||||
|
extern void arc_split_move (rtx *);
|
||||||
|
extern const char *arc_short_long (rtx_insn *insn, const char *, const char *);
|
||||||
|
extern rtx arc_regno_use_in (unsigned int, rtx);
|
||||||
|
-extern bool arc_scheduling_not_expected (void);
|
||||||
|
-extern bool arc_sets_cc_p (rtx_insn *insn);
|
||||||
|
extern int arc_label_align (rtx_insn *label);
|
||||||
|
-extern bool arc_need_delay (rtx_insn *insn);
|
||||||
|
extern bool arc_text_label (rtx_insn *insn);
|
||||||
|
|
||||||
|
extern bool arc_short_comparison_p (rtx, int);
|
||||||
|
diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c
|
||||||
|
index fcb83c4e23e..2daf83dd009 100644
|
||||||
|
--- a/gcc/config/arc/arc.c
|
||||||
|
+++ b/gcc/config/arc/arc.c
|
||||||
|
@@ -10341,59 +10341,6 @@ arc_attr_type (rtx_insn *insn)
|
||||||
|
return get_attr_type (insn);
|
||||||
|
}
|
||||||
|
|
||||||
|
-/* Return true if insn sets the condition codes. */
|
||||||
|
-
|
||||||
|
-bool
|
||||||
|
-arc_sets_cc_p (rtx_insn *insn)
|
||||||
|
-{
|
||||||
|
- if (NONJUMP_INSN_P (insn))
|
||||||
|
- if (rtx_sequence *seq = dyn_cast <rtx_sequence *> (PATTERN (insn)))
|
||||||
|
- insn = seq->insn (seq->len () - 1);
|
||||||
|
- return arc_attr_type (insn) == TYPE_COMPARE;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-/* Return true if INSN is an instruction with a delay slot we may want
|
||||||
|
- to fill. */
|
||||||
|
-
|
||||||
|
-bool
|
||||||
|
-arc_need_delay (rtx_insn *insn)
|
||||||
|
-{
|
||||||
|
- rtx_insn *next;
|
||||||
|
-
|
||||||
|
- if (!flag_delayed_branch)
|
||||||
|
- return false;
|
||||||
|
- /* The return at the end of a function needs a delay slot. */
|
||||||
|
- if (NONJUMP_INSN_P (insn) && GET_CODE (PATTERN (insn)) == USE
|
||||||
|
- && (!(next = next_active_insn (insn))
|
||||||
|
- || ((!NONJUMP_INSN_P (next) || GET_CODE (PATTERN (next)) != SEQUENCE)
|
||||||
|
- && arc_attr_type (next) == TYPE_RETURN))
|
||||||
|
- && (!TARGET_PAD_RETURN
|
||||||
|
- || (prev_active_insn (insn)
|
||||||
|
- && prev_active_insn (prev_active_insn (insn))
|
||||||
|
- && prev_active_insn (prev_active_insn (prev_active_insn (insn))))))
|
||||||
|
- return true;
|
||||||
|
- if (NONJUMP_INSN_P (insn)
|
||||||
|
- ? (GET_CODE (PATTERN (insn)) == USE
|
||||||
|
- || GET_CODE (PATTERN (insn)) == CLOBBER
|
||||||
|
- || GET_CODE (PATTERN (insn)) == SEQUENCE)
|
||||||
|
- : JUMP_P (insn)
|
||||||
|
- ? (GET_CODE (PATTERN (insn)) == ADDR_VEC
|
||||||
|
- || GET_CODE (PATTERN (insn)) == ADDR_DIFF_VEC)
|
||||||
|
- : !CALL_P (insn))
|
||||||
|
- return false;
|
||||||
|
- return num_delay_slots (insn) != 0;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-/* Return true if the scheduling pass(es) has/have already run,
|
||||||
|
- i.e. where possible, we should try to mitigate high latencies
|
||||||
|
- by different instruction selection. */
|
||||||
|
-
|
||||||
|
-bool
|
||||||
|
-arc_scheduling_not_expected (void)
|
||||||
|
-{
|
||||||
|
- return cfun->machine->arc_reorg_started;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
/* Code has a minimum p2 alignment of 1, which we must restore after
|
||||||
|
an ADDR_DIFF_VEC. */
|
||||||
|
|
||||||
|
diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
|
||||||
|
index d4d9f59a3ea..6c09c86884f 100644
|
||||||
|
--- a/gcc/config/arc/arc.md
|
||||||
|
+++ b/gcc/config/arc/arc.md
|
||||||
|
@@ -2857,43 +2857,25 @@ archs4x, archs4xd"
|
||||||
|
(set_attr "type" "compare")
|
||||||
|
(set_attr "length" "4,4,8")])
|
||||||
|
|
||||||
|
-; w/c/c comes first (rather than w/0/C_0) to prevent the middle-end
|
||||||
|
-; needlessly prioritizing the matching constraint.
|
||||||
|
-; Rcw/0/C_0 comes before w/c/L so that the lower latency conditional
|
||||||
|
-; execution is used where possible.
|
||||||
|
-(define_insn_and_split "adc"
|
||||||
|
- [(set (match_operand:SI 0 "dest_reg_operand" "=w,Rcw,w,Rcw,w")
|
||||||
|
- (plus:SI (plus:SI (ltu:SI (reg:CC_C CC_REG) (const_int 0))
|
||||||
|
- (match_operand:SI 1 "nonmemory_operand"
|
||||||
|
- "%c,0,c,0,cCal"))
|
||||||
|
- (match_operand:SI 2 "nonmemory_operand" "c,C_0,L,I,cCal")))]
|
||||||
|
+(define_insn "adc"
|
||||||
|
+ [(set (match_operand:SI 0 "register_operand" "=r, r,r,r, r,r")
|
||||||
|
+ (plus:SI
|
||||||
|
+ (plus:SI
|
||||||
|
+ (ltu:SI (reg:CC_C CC_REG) (const_int 0))
|
||||||
|
+ (match_operand:SI 1 "nonmemory_operand" "%r, 0,r,0,Cal,r"))
|
||||||
|
+ (match_operand:SI 2 "nonmemory_operand" "r,C_0,L,I, r,Cal")))]
|
||||||
|
"register_operand (operands[1], SImode)
|
||||||
|
|| register_operand (operands[2], SImode)"
|
||||||
|
"@
|
||||||
|
- adc %0,%1,%2
|
||||||
|
- add.cs %0,%1,1
|
||||||
|
- adc %0,%1,%2
|
||||||
|
- adc %0,%1,%2
|
||||||
|
- adc %0,%1,%2"
|
||||||
|
- ; if we have a bad schedule after sched2, split.
|
||||||
|
- "reload_completed
|
||||||
|
- && !optimize_size && (!TARGET_ARC600_FAMILY)
|
||||||
|
- && arc_scheduling_not_expected ()
|
||||||
|
- && arc_sets_cc_p (prev_nonnote_insn (insn))
|
||||||
|
- /* If next comes a return or other insn that needs a delay slot,
|
||||||
|
- expect the adc to get into the delay slot. */
|
||||||
|
- && next_nonnote_insn (insn)
|
||||||
|
- && !arc_need_delay (next_nonnote_insn (insn))
|
||||||
|
- /* Restore operands before emitting. */
|
||||||
|
- && (extract_insn_cached (insn), 1)"
|
||||||
|
- [(set (match_dup 0) (match_dup 3))
|
||||||
|
- (cond_exec
|
||||||
|
- (ltu (reg:CC_C CC_REG) (const_int 0))
|
||||||
|
- (set (match_dup 0) (plus:SI (match_dup 0) (const_int 1))))]
|
||||||
|
- "operands[3] = simplify_gen_binary (PLUS, SImode, operands[1], operands[2]);"
|
||||||
|
+ adc\\t%0,%1,%2
|
||||||
|
+ add.cs\\t%0,%1,1
|
||||||
|
+ adc\\t%0,%1,%2
|
||||||
|
+ adc\\t%0,%1,%2
|
||||||
|
+ adc\\t%0,%1,%2
|
||||||
|
+ adc\\t%0,%1,%2"
|
||||||
|
[(set_attr "cond" "use")
|
||||||
|
(set_attr "type" "cc_arith")
|
||||||
|
- (set_attr "length" "4,4,4,4,8")])
|
||||||
|
+ (set_attr "length" "4,4,4,4,8,8")])
|
||||||
|
|
||||||
|
; combiner-splitter cmp / scc -> cmp / adc
|
||||||
|
(define_split
|
||||||
|
@@ -3025,7 +3007,7 @@ archs4x, archs4xd"
|
||||||
|
DONE;
|
||||||
|
}
|
||||||
|
emit_insn (gen_sub_f (l0, l1, l2));
|
||||||
|
- emit_insn (gen_sbc (h0, h1, h2, gen_rtx_REG (CCmode, CC_REG)));
|
||||||
|
+ emit_insn (gen_sbc (h0, h1, h2));
|
||||||
|
DONE;
|
||||||
|
")
|
||||||
|
|
||||||
|
@@ -3040,44 +3022,25 @@ archs4x, archs4xd"
|
||||||
|
(set_attr "type" "cc_arith")
|
||||||
|
(set_attr "length" "4")])
|
||||||
|
|
||||||
|
-; w/c/c comes first (rather than Rcw/0/C_0) to prevent the middle-end
|
||||||
|
-; needlessly prioritizing the matching constraint.
|
||||||
|
-; Rcw/0/C_0 comes before w/c/L so that the lower latency conditional execution
|
||||||
|
-; is used where possible.
|
||||||
|
-(define_insn_and_split "sbc"
|
||||||
|
- [(set (match_operand:SI 0 "dest_reg_operand" "=w,Rcw,w,Rcw,w")
|
||||||
|
- (minus:SI (minus:SI (match_operand:SI 1 "nonmemory_operand"
|
||||||
|
- "c,0,c,0,cCal")
|
||||||
|
- (ltu:SI (match_operand:CC_C 3 "cc_use_register")
|
||||||
|
- (const_int 0)))
|
||||||
|
- (match_operand:SI 2 "nonmemory_operand" "c,C_0,L,I,cCal")))]
|
||||||
|
+(define_insn "sbc"
|
||||||
|
+ [(set (match_operand:SI 0 "dest_reg_operand" "=r,r,r,r,r,r")
|
||||||
|
+ (minus:SI
|
||||||
|
+ (minus:SI
|
||||||
|
+ (match_operand:SI 1 "nonmemory_operand" "r, 0,r,0, r,Cal")
|
||||||
|
+ (ltu:SI (reg:CC_C CC_REG) (const_int 0)))
|
||||||
|
+ (match_operand:SI 2 "nonmemory_operand" "r,C_0,L,I,Cal,r")))]
|
||||||
|
"register_operand (operands[1], SImode)
|
||||||
|
|| register_operand (operands[2], SImode)"
|
||||||
|
"@
|
||||||
|
- sbc %0,%1,%2
|
||||||
|
- sub.cs %0,%1,1
|
||||||
|
- sbc %0,%1,%2
|
||||||
|
- sbc %0,%1,%2
|
||||||
|
- sbc %0,%1,%2"
|
||||||
|
- ; if we have a bad schedule after sched2, split.
|
||||||
|
- "reload_completed
|
||||||
|
- && !optimize_size && (!TARGET_ARC600_FAMILY)
|
||||||
|
- && arc_scheduling_not_expected ()
|
||||||
|
- && arc_sets_cc_p (prev_nonnote_insn (insn))
|
||||||
|
- /* If next comes a return or other insn that needs a delay slot,
|
||||||
|
- expect the adc to get into the delay slot. */
|
||||||
|
- && next_nonnote_insn (insn)
|
||||||
|
- && !arc_need_delay (next_nonnote_insn (insn))
|
||||||
|
- /* Restore operands before emitting. */
|
||||||
|
- && (extract_insn_cached (insn), 1)"
|
||||||
|
- [(set (match_dup 0) (match_dup 4))
|
||||||
|
- (cond_exec
|
||||||
|
- (ltu (reg:CC_C CC_REG) (const_int 0))
|
||||||
|
- (set (match_dup 0) (plus:SI (match_dup 0) (const_int -1))))]
|
||||||
|
- "operands[4] = simplify_gen_binary (MINUS, SImode, operands[1], operands[2]);"
|
||||||
|
+ sbc\\t%0,%1,%2
|
||||||
|
+ sub.cs\\t%0,%1,1
|
||||||
|
+ sbc\\t%0,%1,%2
|
||||||
|
+ sbc\\t%0,%1,%2
|
||||||
|
+ sbc\\t%0,%1,%2
|
||||||
|
+ sbc\\t%0,%1,%2"
|
||||||
|
[(set_attr "cond" "use")
|
||||||
|
(set_attr "type" "cc_arith")
|
||||||
|
- (set_attr "length" "4,4,4,4,8")])
|
||||||
|
+ (set_attr "length" "4,4,4,4,8,8")])
|
||||||
|
|
||||||
|
(define_insn "sub_f"
|
||||||
|
[(set (reg:CC CC_REG)
|
||||||
|
--
|
||||||
|
2.16.2
|
||||||
|
|
@ -0,0 +1,325 @@
|
|||||||
|
From 472472ee0aaccb6389747d6281c34c558bcca7d8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Romain Naour <romain.naour@gmail.com>
|
||||||
|
Date: Wed, 20 Jan 2021 23:26:29 +0100
|
||||||
|
Subject: [PATCH] Revert "re PR target/92095 (internal error with -O1
|
||||||
|
-mcpu=niagara2 -fPIE)"
|
||||||
|
|
||||||
|
This reverts commit 0a83f1a441d7aaadecb368c237b6ee70bd7b91d6.
|
||||||
|
|
||||||
|
Building the Buildroot defconfig qemu_sparc_ss10_defconfig using
|
||||||
|
gcc 8.4, 9.3 and 10 produce a broken rootfs that trigger illegal
|
||||||
|
instruction messages.
|
||||||
|
|
||||||
|
gcc 8.3, 9.2 are the latest working gcc version.
|
||||||
|
git bisect between gcc 8.4 and 8.4 allowed to identify
|
||||||
|
the commit that introcuce the regression.
|
||||||
|
|
||||||
|
Reverting this patch allowed to produce a working rootfs.
|
||||||
|
|
||||||
|
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||||
|
Cc: Eric Botcazou <ebotcazou@gcc.gnu.org>
|
||||||
|
---
|
||||||
|
gcc/config/sparc/sparc-protos.h | 1 -
|
||||||
|
gcc/config/sparc/sparc.c | 121 +++++++-----------
|
||||||
|
gcc/config/sparc/sparc.md | 5 +-
|
||||||
|
.../gcc.c-torture/compile/20191108-1.c | 14 --
|
||||||
|
gcc/testsuite/gcc.target/sparc/overflow-3.c | 2 +-
|
||||||
|
gcc/testsuite/gcc.target/sparc/overflow-4.c | 2 +-
|
||||||
|
gcc/testsuite/gcc.target/sparc/overflow-5.c | 2 +-
|
||||||
|
7 files changed, 53 insertions(+), 94 deletions(-)
|
||||||
|
delete mode 100644 gcc/testsuite/gcc.c-torture/compile/20191108-1.c
|
||||||
|
|
||||||
|
diff --git a/gcc/config/sparc/sparc-protos.h b/gcc/config/sparc/sparc-protos.h
|
||||||
|
index f525cd7a422..0d9f47af644 100644
|
||||||
|
--- a/gcc/config/sparc/sparc-protos.h
|
||||||
|
+++ b/gcc/config/sparc/sparc-protos.h
|
||||||
|
@@ -69,7 +69,6 @@ extern void sparc_split_reg_mem (rtx, rtx, machine_mode);
|
||||||
|
extern void sparc_split_mem_reg (rtx, rtx, machine_mode);
|
||||||
|
extern int sparc_split_reg_reg_legitimate (rtx, rtx);
|
||||||
|
extern void sparc_split_reg_reg (rtx, rtx, machine_mode);
|
||||||
|
-extern const char *output_load_pcrel_sym (rtx *);
|
||||||
|
extern const char *output_ubranch (rtx, rtx_insn *);
|
||||||
|
extern const char *output_cbranch (rtx, rtx, int, int, int, rtx_insn *);
|
||||||
|
extern const char *output_return (rtx_insn *);
|
||||||
|
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
|
||||||
|
index aefced85fe1..3ff6f9200f6 100644
|
||||||
|
--- a/gcc/config/sparc/sparc.c
|
||||||
|
+++ b/gcc/config/sparc/sparc.c
|
||||||
|
@@ -4192,6 +4192,13 @@ eligible_for_sibcall_delay (rtx_insn *trial)
|
||||||
|
static bool
|
||||||
|
sparc_cannot_force_const_mem (machine_mode mode, rtx x)
|
||||||
|
{
|
||||||
|
+ /* After IRA has run in PIC mode, it is too late to put anything into the
|
||||||
|
+ constant pool if the PIC register hasn't already been initialized. */
|
||||||
|
+ if ((lra_in_progress || reload_in_progress)
|
||||||
|
+ && flag_pic
|
||||||
|
+ && !crtl->uses_pic_offset_table)
|
||||||
|
+ return true;
|
||||||
|
+
|
||||||
|
switch (GET_CODE (x))
|
||||||
|
{
|
||||||
|
case CONST_INT:
|
||||||
|
@@ -4227,11 +4234,9 @@ sparc_cannot_force_const_mem (machine_mode mode, rtx x)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Global Offset Table support. */
|
||||||
|
-static GTY(()) rtx got_symbol_rtx = NULL_RTX;
|
||||||
|
-static GTY(()) rtx got_register_rtx = NULL_RTX;
|
||||||
|
static GTY(()) rtx got_helper_rtx = NULL_RTX;
|
||||||
|
-
|
||||||
|
-static GTY(()) bool got_helper_needed = false;
|
||||||
|
+static GTY(()) rtx got_register_rtx = NULL_RTX;
|
||||||
|
+static GTY(()) rtx got_symbol_rtx = NULL_RTX;
|
||||||
|
|
||||||
|
/* Return the SYMBOL_REF for the Global Offset Table. */
|
||||||
|
|
||||||
|
@@ -4244,6 +4249,27 @@ sparc_got (void)
|
||||||
|
return got_symbol_rtx;
|
||||||
|
}
|
||||||
|
|
||||||
|
+#ifdef HAVE_GAS_HIDDEN
|
||||||
|
+# define USE_HIDDEN_LINKONCE 1
|
||||||
|
+#else
|
||||||
|
+# define USE_HIDDEN_LINKONCE 0
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+static void
|
||||||
|
+get_pc_thunk_name (char name[32], unsigned int regno)
|
||||||
|
+{
|
||||||
|
+ const char *reg_name = reg_names[regno];
|
||||||
|
+
|
||||||
|
+ /* Skip the leading '%' as that cannot be used in a
|
||||||
|
+ symbol name. */
|
||||||
|
+ reg_name += 1;
|
||||||
|
+
|
||||||
|
+ if (USE_HIDDEN_LINKONCE)
|
||||||
|
+ sprintf (name, "__sparc_get_pc_thunk.%s", reg_name);
|
||||||
|
+ else
|
||||||
|
+ ASM_GENERATE_INTERNAL_LABEL (name, "LADDPC", regno);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
/* Wrapper around the load_pcrel_sym{si,di} patterns. */
|
||||||
|
|
||||||
|
static rtx
|
||||||
|
@@ -4263,78 +4289,30 @@ gen_load_pcrel_sym (rtx op0, rtx op1, rtx op2)
|
||||||
|
return insn;
|
||||||
|
}
|
||||||
|
|
||||||
|
-/* Output the load_pcrel_sym{si,di} patterns. */
|
||||||
|
-
|
||||||
|
-const char *
|
||||||
|
-output_load_pcrel_sym (rtx *operands)
|
||||||
|
-{
|
||||||
|
- if (flag_delayed_branch)
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("sethi\t%%hi(%a1-4), %0", operands);
|
||||||
|
- output_asm_insn ("call\t%a2", operands);
|
||||||
|
- output_asm_insn (" add\t%0, %%lo(%a1+4), %0", operands);
|
||||||
|
- }
|
||||||
|
- else
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("sethi\t%%hi(%a1-8), %0", operands);
|
||||||
|
- output_asm_insn ("add\t%0, %%lo(%a1-4), %0", operands);
|
||||||
|
- output_asm_insn ("call\t%a2", operands);
|
||||||
|
- output_asm_insn (" nop", NULL);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- if (operands[2] == got_helper_rtx)
|
||||||
|
- got_helper_needed = true;
|
||||||
|
-
|
||||||
|
- return "";
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-#ifdef HAVE_GAS_HIDDEN
|
||||||
|
-# define USE_HIDDEN_LINKONCE 1
|
||||||
|
-#else
|
||||||
|
-# define USE_HIDDEN_LINKONCE 0
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
/* Emit code to load the GOT register. */
|
||||||
|
|
||||||
|
void
|
||||||
|
load_got_register (void)
|
||||||
|
{
|
||||||
|
- rtx insn;
|
||||||
|
+ if (!got_register_rtx)
|
||||||
|
+ got_register_rtx = gen_rtx_REG (Pmode, GLOBAL_OFFSET_TABLE_REGNUM);
|
||||||
|
|
||||||
|
if (TARGET_VXWORKS_RTP)
|
||||||
|
- {
|
||||||
|
- if (!got_register_rtx)
|
||||||
|
- got_register_rtx = pic_offset_table_rtx;
|
||||||
|
-
|
||||||
|
- insn = gen_vxworks_load_got ();
|
||||||
|
- }
|
||||||
|
+ emit_insn (gen_vxworks_load_got ());
|
||||||
|
else
|
||||||
|
{
|
||||||
|
- if (!got_register_rtx)
|
||||||
|
- got_register_rtx = gen_rtx_REG (Pmode, GLOBAL_OFFSET_TABLE_REGNUM);
|
||||||
|
-
|
||||||
|
/* The GOT symbol is subject to a PC-relative relocation so we need a
|
||||||
|
helper function to add the PC value and thus get the final value. */
|
||||||
|
if (!got_helper_rtx)
|
||||||
|
{
|
||||||
|
char name[32];
|
||||||
|
-
|
||||||
|
- /* Skip the leading '%' as that cannot be used in a symbol name. */
|
||||||
|
- if (USE_HIDDEN_LINKONCE)
|
||||||
|
- sprintf (name, "__sparc_get_pc_thunk.%s",
|
||||||
|
- reg_names[REGNO (got_register_rtx)] + 1);
|
||||||
|
- else
|
||||||
|
- ASM_GENERATE_INTERNAL_LABEL (name, "LADDPC",
|
||||||
|
- REGNO (got_register_rtx));
|
||||||
|
-
|
||||||
|
+ get_pc_thunk_name (name, GLOBAL_OFFSET_TABLE_REGNUM);
|
||||||
|
got_helper_rtx = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (name));
|
||||||
|
}
|
||||||
|
|
||||||
|
- insn
|
||||||
|
- = gen_load_pcrel_sym (got_register_rtx, sparc_got (), got_helper_rtx);
|
||||||
|
+ emit_insn (gen_load_pcrel_sym (got_register_rtx, sparc_got (),
|
||||||
|
+ got_helper_rtx));
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- emit_insn (insn);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Ensure that we are not using patterns that are not OK with PIC. */
|
||||||
|
@@ -5499,7 +5477,7 @@ save_local_or_in_reg_p (unsigned int regno, int leaf_function)
|
||||||
|
return true;
|
||||||
|
|
||||||
|
/* GOT register (%l7) if needed. */
|
||||||
|
- if (got_register_rtx && regno == REGNO (got_register_rtx))
|
||||||
|
+ if (regno == GLOBAL_OFFSET_TABLE_REGNUM && got_register_rtx)
|
||||||
|
return true;
|
||||||
|
|
||||||
|
/* If the function accesses prior frames, the frame pointer and the return
|
||||||
|
@@ -12542,9 +12520,10 @@ static void
|
||||||
|
sparc_file_end (void)
|
||||||
|
{
|
||||||
|
/* If we need to emit the special GOT helper function, do so now. */
|
||||||
|
- if (got_helper_needed)
|
||||||
|
+ if (got_helper_rtx)
|
||||||
|
{
|
||||||
|
const char *name = XSTR (got_helper_rtx, 0);
|
||||||
|
+ const char *reg_name = reg_names[GLOBAL_OFFSET_TABLE_REGNUM];
|
||||||
|
#ifdef DWARF2_UNWIND_INFO
|
||||||
|
bool do_cfi;
|
||||||
|
#endif
|
||||||
|
@@ -12581,22 +12560,17 @@ sparc_file_end (void)
|
||||||
|
#ifdef DWARF2_UNWIND_INFO
|
||||||
|
do_cfi = dwarf2out_do_cfi_asm ();
|
||||||
|
if (do_cfi)
|
||||||
|
- output_asm_insn (".cfi_startproc", NULL);
|
||||||
|
+ fprintf (asm_out_file, "\t.cfi_startproc\n");
|
||||||
|
#endif
|
||||||
|
if (flag_delayed_branch)
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("jmp\t%%o7+8", NULL);
|
||||||
|
- output_asm_insn (" add\t%%o7, %0, %0", &got_register_rtx);
|
||||||
|
- }
|
||||||
|
+ fprintf (asm_out_file, "\tjmp\t%%o7+8\n\t add\t%%o7, %s, %s\n",
|
||||||
|
+ reg_name, reg_name);
|
||||||
|
else
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("add\t%%o7, %0, %0", &got_register_rtx);
|
||||||
|
- output_asm_insn ("jmp\t%%o7+8", NULL);
|
||||||
|
- output_asm_insn (" nop", NULL);
|
||||||
|
- }
|
||||||
|
+ fprintf (asm_out_file, "\tadd\t%%o7, %s, %s\n\tjmp\t%%o7+8\n\t nop\n",
|
||||||
|
+ reg_name, reg_name);
|
||||||
|
#ifdef DWARF2_UNWIND_INFO
|
||||||
|
if (do_cfi)
|
||||||
|
- output_asm_insn (".cfi_endproc", NULL);
|
||||||
|
+ fprintf (asm_out_file, "\t.cfi_endproc\n");
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -13091,10 +13065,7 @@ sparc_init_pic_reg (void)
|
||||||
|
edge entry_edge;
|
||||||
|
rtx_insn *seq;
|
||||||
|
|
||||||
|
- /* In PIC mode, we need to always initialize the PIC register if optimization
|
||||||
|
- is enabled, because we are called from IRA and LRA may later force things
|
||||||
|
- to the constant pool for optimization purposes. */
|
||||||
|
- if (!flag_pic || (!crtl->uses_pic_offset_table && !optimize))
|
||||||
|
+ if (!crtl->uses_pic_offset_table)
|
||||||
|
return;
|
||||||
|
|
||||||
|
start_sequence ();
|
||||||
|
diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md
|
||||||
|
index 231c0d84778..899804b80ae 100644
|
||||||
|
--- a/gcc/config/sparc/sparc.md
|
||||||
|
+++ b/gcc/config/sparc/sparc.md
|
||||||
|
@@ -1604,7 +1604,10 @@
|
||||||
|
(clobber (reg:P O7_REG))]
|
||||||
|
"REGNO (operands[0]) == INTVAL (operands[3])"
|
||||||
|
{
|
||||||
|
- return output_load_pcrel_sym (operands);
|
||||||
|
+ if (flag_delayed_branch)
|
||||||
|
+ return "sethi\t%%hi(%a1-4), %0\n\tcall\t%a2\n\t add\t%0, %%lo(%a1+4), %0";
|
||||||
|
+ else
|
||||||
|
+ return "sethi\t%%hi(%a1-8), %0\n\tadd\t%0, %%lo(%a1-4), %0\n\tcall\t%a2\n\t nop";
|
||||||
|
}
|
||||||
|
[(set (attr "type") (const_string "multi"))
|
||||||
|
(set (attr "length")
|
||||||
|
diff --git a/gcc/testsuite/gcc.c-torture/compile/20191108-1.c b/gcc/testsuite/gcc.c-torture/compile/20191108-1.c
|
||||||
|
deleted file mode 100644
|
||||||
|
index 7929751bb06..00000000000
|
||||||
|
--- a/gcc/testsuite/gcc.c-torture/compile/20191108-1.c
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,14 +0,0 @@
|
||||||
|
-/* PR target/92095 */
|
||||||
|
-/* Testcase by Sergei Trofimovich <slyfox@inbox.ru> */
|
||||||
|
-
|
||||||
|
-typedef union {
|
||||||
|
- double a;
|
||||||
|
- int b[2];
|
||||||
|
-} c;
|
||||||
|
-
|
||||||
|
-double d(int e)
|
||||||
|
-{
|
||||||
|
- c f;
|
||||||
|
- (&f)->b[0] = 15728640;
|
||||||
|
- return e ? -(&f)->a : (&f)->a;
|
||||||
|
-}
|
||||||
|
diff --git a/gcc/testsuite/gcc.target/sparc/overflow-3.c b/gcc/testsuite/gcc.target/sparc/overflow-3.c
|
||||||
|
index 52d6ab2b688..86dddfb09e6 100644
|
||||||
|
--- a/gcc/testsuite/gcc.target/sparc/overflow-3.c
|
||||||
|
+++ b/gcc/testsuite/gcc.target/sparc/overflow-3.c
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
/* { dg-do compile } */
|
||||||
|
/* { dg-require-effective-target lp64 } */
|
||||||
|
-/* { dg-options "-O -fno-pie" } */
|
||||||
|
+/* { dg-options "-O" } */
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
diff --git a/gcc/testsuite/gcc.target/sparc/overflow-4.c b/gcc/testsuite/gcc.target/sparc/overflow-4.c
|
||||||
|
index c6121b958c3..019feee335c 100644
|
||||||
|
--- a/gcc/testsuite/gcc.target/sparc/overflow-4.c
|
||||||
|
+++ b/gcc/testsuite/gcc.target/sparc/overflow-4.c
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
/* { dg-do compile } */
|
||||||
|
/* { dg-require-effective-target lp64 } */
|
||||||
|
-/* { dg-options "-O -fno-pie -mno-vis3 -mno-vis4" } */
|
||||||
|
+/* { dg-options "-O -mno-vis3 -mno-vis4" } */
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
diff --git a/gcc/testsuite/gcc.target/sparc/overflow-5.c b/gcc/testsuite/gcc.target/sparc/overflow-5.c
|
||||||
|
index f00283f6e7b..67d4ac38095 100644
|
||||||
|
--- a/gcc/testsuite/gcc.target/sparc/overflow-5.c
|
||||||
|
+++ b/gcc/testsuite/gcc.target/sparc/overflow-5.c
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
/* { dg-do compile } */
|
||||||
|
/* { dg-require-effective-target lp64 } */
|
||||||
|
-/* { dg-options "-O -fno-pie -mvis3" } */
|
||||||
|
+/* { dg-options "-O -mvis3" } */
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
--
|
||||||
|
2.25.4
|
||||||
|
|
@ -0,0 +1,322 @@
|
|||||||
|
From bb9b71752267444b4360442b89129bfc0ae938d3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Romain Naour <romain.naour@gmail.com>
|
||||||
|
Date: Wed, 20 Jan 2021 23:06:07 +0100
|
||||||
|
Subject: [PATCH] Revert "re PR target/92095 (internal error with -O1
|
||||||
|
-mcpu=niagara2 -fPIE)"
|
||||||
|
|
||||||
|
This reverts commit 3fcce773f0f914c0499b130c6e9efa0e45ee54a0.
|
||||||
|
|
||||||
|
Building the Buildroot defconfig qemu_sparc_ss10_defconfig using
|
||||||
|
gcc 8.4, 9.3 and 10 produce a broken rootfs that trigger illegal
|
||||||
|
instruction messages.
|
||||||
|
|
||||||
|
gcc 8.3, 9.2 are the latest working gcc version.
|
||||||
|
git bisect between gcc 8.4 and 8.4 allowed to identify
|
||||||
|
the commit that introcuce the regression.
|
||||||
|
|
||||||
|
Reverting this patch allowed to produce a working rootfs.
|
||||||
|
|
||||||
|
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||||
|
Cc: Eric Botcazou <ebotcazou@gcc.gnu.org>
|
||||||
|
---
|
||||||
|
gcc/config/sparc/sparc-protos.h | 1 -
|
||||||
|
gcc/config/sparc/sparc.c | 121 +++++++-----------
|
||||||
|
gcc/config/sparc/sparc.md | 5 +-
|
||||||
|
.../gcc.c-torture/compile/20191108-1.c | 14 --
|
||||||
|
gcc/testsuite/gcc.target/sparc/overflow-3.c | 2 +-
|
||||||
|
gcc/testsuite/gcc.target/sparc/overflow-4.c | 2 +-
|
||||||
|
gcc/testsuite/gcc.target/sparc/overflow-5.c | 2 +-
|
||||||
|
7 files changed, 53 insertions(+), 94 deletions(-)
|
||||||
|
delete mode 100644 gcc/testsuite/gcc.c-torture/compile/20191108-1.c
|
||||||
|
|
||||||
|
diff --git a/gcc/config/sparc/sparc-protos.h b/gcc/config/sparc/sparc-protos.h
|
||||||
|
index b3f73c2f2bf..71a067e871c 100644
|
||||||
|
--- a/gcc/config/sparc/sparc-protos.h
|
||||||
|
+++ b/gcc/config/sparc/sparc-protos.h
|
||||||
|
@@ -69,7 +69,6 @@ extern void sparc_split_reg_mem (rtx, rtx, machine_mode);
|
||||||
|
extern void sparc_split_mem_reg (rtx, rtx, machine_mode);
|
||||||
|
extern int sparc_split_reg_reg_legitimate (rtx, rtx);
|
||||||
|
extern void sparc_split_reg_reg (rtx, rtx, machine_mode);
|
||||||
|
-extern const char *output_load_pcrel_sym (rtx *);
|
||||||
|
extern const char *output_ubranch (rtx, rtx_insn *);
|
||||||
|
extern const char *output_cbranch (rtx, rtx, int, int, int, rtx_insn *);
|
||||||
|
extern const char *output_return (rtx_insn *);
|
||||||
|
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
|
||||||
|
index 73032d33596..db1b428db90 100644
|
||||||
|
--- a/gcc/config/sparc/sparc.c
|
||||||
|
+++ b/gcc/config/sparc/sparc.c
|
||||||
|
@@ -4200,6 +4200,13 @@ eligible_for_sibcall_delay (rtx_insn *trial)
|
||||||
|
static bool
|
||||||
|
sparc_cannot_force_const_mem (machine_mode mode, rtx x)
|
||||||
|
{
|
||||||
|
+ /* After IRA has run in PIC mode, it is too late to put anything into the
|
||||||
|
+ constant pool if the PIC register hasn't already been initialized. */
|
||||||
|
+ if ((lra_in_progress || reload_in_progress)
|
||||||
|
+ && flag_pic
|
||||||
|
+ && !crtl->uses_pic_offset_table)
|
||||||
|
+ return true;
|
||||||
|
+
|
||||||
|
switch (GET_CODE (x))
|
||||||
|
{
|
||||||
|
case CONST_INT:
|
||||||
|
@@ -4235,11 +4242,9 @@ sparc_cannot_force_const_mem (machine_mode mode, rtx x)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Global Offset Table support. */
|
||||||
|
-static GTY(()) rtx got_symbol_rtx = NULL_RTX;
|
||||||
|
-static GTY(()) rtx got_register_rtx = NULL_RTX;
|
||||||
|
static GTY(()) rtx got_helper_rtx = NULL_RTX;
|
||||||
|
-
|
||||||
|
-static GTY(()) bool got_helper_needed = false;
|
||||||
|
+static GTY(()) rtx got_register_rtx = NULL_RTX;
|
||||||
|
+static GTY(()) rtx got_symbol_rtx = NULL_RTX;
|
||||||
|
|
||||||
|
/* Return the SYMBOL_REF for the Global Offset Table. */
|
||||||
|
|
||||||
|
@@ -4252,6 +4257,27 @@ sparc_got (void)
|
||||||
|
return got_symbol_rtx;
|
||||||
|
}
|
||||||
|
|
||||||
|
+#ifdef HAVE_GAS_HIDDEN
|
||||||
|
+# define USE_HIDDEN_LINKONCE 1
|
||||||
|
+#else
|
||||||
|
+# define USE_HIDDEN_LINKONCE 0
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+static void
|
||||||
|
+get_pc_thunk_name (char name[32], unsigned int regno)
|
||||||
|
+{
|
||||||
|
+ const char *reg_name = reg_names[regno];
|
||||||
|
+
|
||||||
|
+ /* Skip the leading '%' as that cannot be used in a
|
||||||
|
+ symbol name. */
|
||||||
|
+ reg_name += 1;
|
||||||
|
+
|
||||||
|
+ if (USE_HIDDEN_LINKONCE)
|
||||||
|
+ sprintf (name, "__sparc_get_pc_thunk.%s", reg_name);
|
||||||
|
+ else
|
||||||
|
+ ASM_GENERATE_INTERNAL_LABEL (name, "LADDPC", regno);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
/* Wrapper around the load_pcrel_sym{si,di} patterns. */
|
||||||
|
|
||||||
|
static rtx
|
||||||
|
@@ -4271,78 +4297,30 @@ gen_load_pcrel_sym (rtx op0, rtx op1, rtx op2)
|
||||||
|
return insn;
|
||||||
|
}
|
||||||
|
|
||||||
|
-/* Output the load_pcrel_sym{si,di} patterns. */
|
||||||
|
-
|
||||||
|
-const char *
|
||||||
|
-output_load_pcrel_sym (rtx *operands)
|
||||||
|
-{
|
||||||
|
- if (flag_delayed_branch)
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("sethi\t%%hi(%a1-4), %0", operands);
|
||||||
|
- output_asm_insn ("call\t%a2", operands);
|
||||||
|
- output_asm_insn (" add\t%0, %%lo(%a1+4), %0", operands);
|
||||||
|
- }
|
||||||
|
- else
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("sethi\t%%hi(%a1-8), %0", operands);
|
||||||
|
- output_asm_insn ("add\t%0, %%lo(%a1-4), %0", operands);
|
||||||
|
- output_asm_insn ("call\t%a2", operands);
|
||||||
|
- output_asm_insn (" nop", NULL);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- if (operands[2] == got_helper_rtx)
|
||||||
|
- got_helper_needed = true;
|
||||||
|
-
|
||||||
|
- return "";
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-#ifdef HAVE_GAS_HIDDEN
|
||||||
|
-# define USE_HIDDEN_LINKONCE 1
|
||||||
|
-#else
|
||||||
|
-# define USE_HIDDEN_LINKONCE 0
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
/* Emit code to load the GOT register. */
|
||||||
|
|
||||||
|
void
|
||||||
|
load_got_register (void)
|
||||||
|
{
|
||||||
|
- rtx insn;
|
||||||
|
+ if (!got_register_rtx)
|
||||||
|
+ got_register_rtx = gen_rtx_REG (Pmode, GLOBAL_OFFSET_TABLE_REGNUM);
|
||||||
|
|
||||||
|
if (TARGET_VXWORKS_RTP)
|
||||||
|
- {
|
||||||
|
- if (!got_register_rtx)
|
||||||
|
- got_register_rtx = pic_offset_table_rtx;
|
||||||
|
-
|
||||||
|
- insn = gen_vxworks_load_got ();
|
||||||
|
- }
|
||||||
|
+ emit_insn (gen_vxworks_load_got ());
|
||||||
|
else
|
||||||
|
{
|
||||||
|
- if (!got_register_rtx)
|
||||||
|
- got_register_rtx = gen_rtx_REG (Pmode, GLOBAL_OFFSET_TABLE_REGNUM);
|
||||||
|
-
|
||||||
|
/* The GOT symbol is subject to a PC-relative relocation so we need a
|
||||||
|
helper function to add the PC value and thus get the final value. */
|
||||||
|
if (!got_helper_rtx)
|
||||||
|
{
|
||||||
|
char name[32];
|
||||||
|
-
|
||||||
|
- /* Skip the leading '%' as that cannot be used in a symbol name. */
|
||||||
|
- if (USE_HIDDEN_LINKONCE)
|
||||||
|
- sprintf (name, "__sparc_get_pc_thunk.%s",
|
||||||
|
- reg_names[REGNO (got_register_rtx)] + 1);
|
||||||
|
- else
|
||||||
|
- ASM_GENERATE_INTERNAL_LABEL (name, "LADDPC",
|
||||||
|
- REGNO (got_register_rtx));
|
||||||
|
-
|
||||||
|
+ get_pc_thunk_name (name, GLOBAL_OFFSET_TABLE_REGNUM);
|
||||||
|
got_helper_rtx = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (name));
|
||||||
|
}
|
||||||
|
|
||||||
|
- insn
|
||||||
|
- = gen_load_pcrel_sym (got_register_rtx, sparc_got (), got_helper_rtx);
|
||||||
|
+ emit_insn (gen_load_pcrel_sym (got_register_rtx, sparc_got (),
|
||||||
|
+ got_helper_rtx));
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- emit_insn (insn);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Ensure that we are not using patterns that are not OK with PIC. */
|
||||||
|
@@ -5494,7 +5472,7 @@ save_local_or_in_reg_p (unsigned int regno, int leaf_function)
|
||||||
|
return true;
|
||||||
|
|
||||||
|
/* GOT register (%l7) if needed. */
|
||||||
|
- if (got_register_rtx && regno == REGNO (got_register_rtx))
|
||||||
|
+ if (regno == GLOBAL_OFFSET_TABLE_REGNUM && got_register_rtx)
|
||||||
|
return true;
|
||||||
|
|
||||||
|
/* If the function accesses prior frames, the frame pointer and the return
|
||||||
|
@@ -12475,9 +12453,10 @@ static void
|
||||||
|
sparc_file_end (void)
|
||||||
|
{
|
||||||
|
/* If we need to emit the special GOT helper function, do so now. */
|
||||||
|
- if (got_helper_needed)
|
||||||
|
+ if (got_helper_rtx)
|
||||||
|
{
|
||||||
|
const char *name = XSTR (got_helper_rtx, 0);
|
||||||
|
+ const char *reg_name = reg_names[GLOBAL_OFFSET_TABLE_REGNUM];
|
||||||
|
#ifdef DWARF2_UNWIND_INFO
|
||||||
|
bool do_cfi;
|
||||||
|
#endif
|
||||||
|
@@ -12514,22 +12493,17 @@ sparc_file_end (void)
|
||||||
|
#ifdef DWARF2_UNWIND_INFO
|
||||||
|
do_cfi = dwarf2out_do_cfi_asm ();
|
||||||
|
if (do_cfi)
|
||||||
|
- output_asm_insn (".cfi_startproc", NULL);
|
||||||
|
+ fprintf (asm_out_file, "\t.cfi_startproc\n");
|
||||||
|
#endif
|
||||||
|
if (flag_delayed_branch)
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("jmp\t%%o7+8", NULL);
|
||||||
|
- output_asm_insn (" add\t%%o7, %0, %0", &got_register_rtx);
|
||||||
|
- }
|
||||||
|
+ fprintf (asm_out_file, "\tjmp\t%%o7+8\n\t add\t%%o7, %s, %s\n",
|
||||||
|
+ reg_name, reg_name);
|
||||||
|
else
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("add\t%%o7, %0, %0", &got_register_rtx);
|
||||||
|
- output_asm_insn ("jmp\t%%o7+8", NULL);
|
||||||
|
- output_asm_insn (" nop", NULL);
|
||||||
|
- }
|
||||||
|
+ fprintf (asm_out_file, "\tadd\t%%o7, %s, %s\n\tjmp\t%%o7+8\n\t nop\n",
|
||||||
|
+ reg_name, reg_name);
|
||||||
|
#ifdef DWARF2_UNWIND_INFO
|
||||||
|
if (do_cfi)
|
||||||
|
- output_asm_insn (".cfi_endproc", NULL);
|
||||||
|
+ fprintf (asm_out_file, "\t.cfi_endproc\n");
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -13035,10 +13009,7 @@ sparc_init_pic_reg (void)
|
||||||
|
edge entry_edge;
|
||||||
|
rtx_insn *seq;
|
||||||
|
|
||||||
|
- /* In PIC mode, we need to always initialize the PIC register if optimization
|
||||||
|
- is enabled, because we are called from IRA and LRA may later force things
|
||||||
|
- to the constant pool for optimization purposes. */
|
||||||
|
- if (!flag_pic || (!crtl->uses_pic_offset_table && !optimize))
|
||||||
|
+ if (!crtl->uses_pic_offset_table)
|
||||||
|
return;
|
||||||
|
|
||||||
|
start_sequence ();
|
||||||
|
diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md
|
||||||
|
index 468e2cc5d3b..25134bd1148 100644
|
||||||
|
--- a/gcc/config/sparc/sparc.md
|
||||||
|
+++ b/gcc/config/sparc/sparc.md
|
||||||
|
@@ -1601,7 +1601,10 @@
|
||||||
|
(clobber (reg:P O7_REG))]
|
||||||
|
"REGNO (operands[0]) == INTVAL (operands[3])"
|
||||||
|
{
|
||||||
|
- return output_load_pcrel_sym (operands);
|
||||||
|
+ if (flag_delayed_branch)
|
||||||
|
+ return "sethi\t%%hi(%a1-4), %0\n\tcall\t%a2\n\t add\t%0, %%lo(%a1+4), %0";
|
||||||
|
+ else
|
||||||
|
+ return "sethi\t%%hi(%a1-8), %0\n\tadd\t%0, %%lo(%a1-4), %0\n\tcall\t%a2\n\t nop";
|
||||||
|
}
|
||||||
|
[(set (attr "type") (const_string "multi"))
|
||||||
|
(set (attr "length")
|
||||||
|
diff --git a/gcc/testsuite/gcc.c-torture/compile/20191108-1.c b/gcc/testsuite/gcc.c-torture/compile/20191108-1.c
|
||||||
|
deleted file mode 100644
|
||||||
|
index 7929751bb06..00000000000
|
||||||
|
--- a/gcc/testsuite/gcc.c-torture/compile/20191108-1.c
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,14 +0,0 @@
|
||||||
|
-/* PR target/92095 */
|
||||||
|
-/* Testcase by Sergei Trofimovich <slyfox@inbox.ru> */
|
||||||
|
-
|
||||||
|
-typedef union {
|
||||||
|
- double a;
|
||||||
|
- int b[2];
|
||||||
|
-} c;
|
||||||
|
-
|
||||||
|
-double d(int e)
|
||||||
|
-{
|
||||||
|
- c f;
|
||||||
|
- (&f)->b[0] = 15728640;
|
||||||
|
- return e ? -(&f)->a : (&f)->a;
|
||||||
|
-}
|
||||||
|
diff --git a/gcc/testsuite/gcc.target/sparc/overflow-3.c b/gcc/testsuite/gcc.target/sparc/overflow-3.c
|
||||||
|
index 18253bb6e5e..8cb24f52f7b 100644
|
||||||
|
--- a/gcc/testsuite/gcc.target/sparc/overflow-3.c
|
||||||
|
+++ b/gcc/testsuite/gcc.target/sparc/overflow-3.c
|
||||||
|
@@ -1,5 +1,5 @@
|
||||||
|
/* { dg-do compile } */
|
||||||
|
-/* { dg-options "-O -fno-pie" } */
|
||||||
|
+/* { dg-options "-O" } */
|
||||||
|
/* { dg-require-effective-target lp64 } */
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
diff --git a/gcc/testsuite/gcc.target/sparc/overflow-4.c b/gcc/testsuite/gcc.target/sparc/overflow-4.c
|
||||||
|
index fb30877efb9..868edea2b9e 100644
|
||||||
|
--- a/gcc/testsuite/gcc.target/sparc/overflow-4.c
|
||||||
|
+++ b/gcc/testsuite/gcc.target/sparc/overflow-4.c
|
||||||
|
@@ -1,5 +1,5 @@
|
||||||
|
/* { dg-do compile } */
|
||||||
|
-/* { dg-options "-O -fno-pie -mno-vis3" } */
|
||||||
|
+/* { dg-options "-O -mno-vis3" } */
|
||||||
|
/* { dg-require-effective-target lp64 } */
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
diff --git a/gcc/testsuite/gcc.target/sparc/overflow-5.c b/gcc/testsuite/gcc.target/sparc/overflow-5.c
|
||||||
|
index 509d957715d..501ce04f7a1 100644
|
||||||
|
--- a/gcc/testsuite/gcc.target/sparc/overflow-5.c
|
||||||
|
+++ b/gcc/testsuite/gcc.target/sparc/overflow-5.c
|
||||||
|
@@ -1,5 +1,5 @@
|
||||||
|
/* { dg-do compile } */
|
||||||
|
-/* { dg-options "-O -fno-pie -mvis3" } */
|
||||||
|
+/* { dg-options "-O -mvis3" } */
|
||||||
|
/* { dg-require-effective-target lp64 } */
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
--
|
||||||
|
2.25.4
|
||||||
|
|
@ -0,0 +1,325 @@
|
|||||||
|
From 0d7fe4806d9dce76367c193d5199df6a2b98009f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Romain Naour <romain.naour@gmail.com>
|
||||||
|
Date: Wed, 20 Jan 2021 23:22:16 +0100
|
||||||
|
Subject: [PATCH] Revert "re PR target/92095 (internal error with -O1
|
||||||
|
-mcpu=niagara2 -fPIE)"
|
||||||
|
|
||||||
|
This reverts commit 6bf2990842388101897b6f465524cbc295ee8cf9.
|
||||||
|
|
||||||
|
Building the Buildroot defconfig qemu_sparc_ss10_defconfig using
|
||||||
|
gcc 8.4, 9.3 and 10 produce a broken rootfs that trigger illegal
|
||||||
|
instruction messages.
|
||||||
|
|
||||||
|
gcc 8.3, 9.2 are the latest working gcc version.
|
||||||
|
git bisect between gcc 8.4 and 8.4 allowed to identify
|
||||||
|
the commit that introcuce the regression.
|
||||||
|
|
||||||
|
Reverting this patch allowed to produce a working rootfs.
|
||||||
|
|
||||||
|
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||||
|
Cc: Eric Botcazou <ebotcazou@gcc.gnu.org>
|
||||||
|
---
|
||||||
|
gcc/config/sparc/sparc-protos.h | 1 -
|
||||||
|
gcc/config/sparc/sparc.c | 121 +++++++-----------
|
||||||
|
gcc/config/sparc/sparc.md | 5 +-
|
||||||
|
.../gcc.c-torture/compile/20191108-1.c | 14 --
|
||||||
|
gcc/testsuite/gcc.target/sparc/overflow-3.c | 2 +-
|
||||||
|
gcc/testsuite/gcc.target/sparc/overflow-4.c | 2 +-
|
||||||
|
gcc/testsuite/gcc.target/sparc/overflow-5.c | 2 +-
|
||||||
|
7 files changed, 53 insertions(+), 94 deletions(-)
|
||||||
|
delete mode 100644 gcc/testsuite/gcc.c-torture/compile/20191108-1.c
|
||||||
|
|
||||||
|
diff --git a/gcc/config/sparc/sparc-protos.h b/gcc/config/sparc/sparc-protos.h
|
||||||
|
index ef1adb69ede..9bdae7b9faa 100644
|
||||||
|
--- a/gcc/config/sparc/sparc-protos.h
|
||||||
|
+++ b/gcc/config/sparc/sparc-protos.h
|
||||||
|
@@ -69,7 +69,6 @@ extern void sparc_split_reg_mem (rtx, rtx, machine_mode);
|
||||||
|
extern void sparc_split_mem_reg (rtx, rtx, machine_mode);
|
||||||
|
extern int sparc_split_reg_reg_legitimate (rtx, rtx);
|
||||||
|
extern void sparc_split_reg_reg (rtx, rtx, machine_mode);
|
||||||
|
-extern const char *output_load_pcrel_sym (rtx *);
|
||||||
|
extern const char *output_ubranch (rtx, rtx_insn *);
|
||||||
|
extern const char *output_cbranch (rtx, rtx, int, int, int, rtx_insn *);
|
||||||
|
extern const char *output_return (rtx_insn *);
|
||||||
|
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
|
||||||
|
index a993aab7639..2974d174e93 100644
|
||||||
|
--- a/gcc/config/sparc/sparc.c
|
||||||
|
+++ b/gcc/config/sparc/sparc.c
|
||||||
|
@@ -4205,6 +4205,13 @@ eligible_for_sibcall_delay (rtx_insn *trial)
|
||||||
|
static bool
|
||||||
|
sparc_cannot_force_const_mem (machine_mode mode, rtx x)
|
||||||
|
{
|
||||||
|
+ /* After IRA has run in PIC mode, it is too late to put anything into the
|
||||||
|
+ constant pool if the PIC register hasn't already been initialized. */
|
||||||
|
+ if ((lra_in_progress || reload_in_progress)
|
||||||
|
+ && flag_pic
|
||||||
|
+ && !crtl->uses_pic_offset_table)
|
||||||
|
+ return true;
|
||||||
|
+
|
||||||
|
switch (GET_CODE (x))
|
||||||
|
{
|
||||||
|
case CONST_INT:
|
||||||
|
@@ -4240,11 +4247,9 @@ sparc_cannot_force_const_mem (machine_mode mode, rtx x)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Global Offset Table support. */
|
||||||
|
-static GTY(()) rtx got_symbol_rtx = NULL_RTX;
|
||||||
|
-static GTY(()) rtx got_register_rtx = NULL_RTX;
|
||||||
|
static GTY(()) rtx got_helper_rtx = NULL_RTX;
|
||||||
|
-
|
||||||
|
-static GTY(()) bool got_helper_needed = false;
|
||||||
|
+static GTY(()) rtx got_register_rtx = NULL_RTX;
|
||||||
|
+static GTY(()) rtx got_symbol_rtx = NULL_RTX;
|
||||||
|
|
||||||
|
/* Return the SYMBOL_REF for the Global Offset Table. */
|
||||||
|
|
||||||
|
@@ -4257,6 +4262,27 @@ sparc_got (void)
|
||||||
|
return got_symbol_rtx;
|
||||||
|
}
|
||||||
|
|
||||||
|
+#ifdef HAVE_GAS_HIDDEN
|
||||||
|
+# define USE_HIDDEN_LINKONCE 1
|
||||||
|
+#else
|
||||||
|
+# define USE_HIDDEN_LINKONCE 0
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+static void
|
||||||
|
+get_pc_thunk_name (char name[32], unsigned int regno)
|
||||||
|
+{
|
||||||
|
+ const char *reg_name = reg_names[regno];
|
||||||
|
+
|
||||||
|
+ /* Skip the leading '%' as that cannot be used in a
|
||||||
|
+ symbol name. */
|
||||||
|
+ reg_name += 1;
|
||||||
|
+
|
||||||
|
+ if (USE_HIDDEN_LINKONCE)
|
||||||
|
+ sprintf (name, "__sparc_get_pc_thunk.%s", reg_name);
|
||||||
|
+ else
|
||||||
|
+ ASM_GENERATE_INTERNAL_LABEL (name, "LADDPC", regno);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
/* Wrapper around the load_pcrel_sym{si,di} patterns. */
|
||||||
|
|
||||||
|
static rtx
|
||||||
|
@@ -4276,78 +4302,30 @@ gen_load_pcrel_sym (rtx op0, rtx op1, rtx op2)
|
||||||
|
return insn;
|
||||||
|
}
|
||||||
|
|
||||||
|
-/* Output the load_pcrel_sym{si,di} patterns. */
|
||||||
|
-
|
||||||
|
-const char *
|
||||||
|
-output_load_pcrel_sym (rtx *operands)
|
||||||
|
-{
|
||||||
|
- if (flag_delayed_branch)
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("sethi\t%%hi(%a1-4), %0", operands);
|
||||||
|
- output_asm_insn ("call\t%a2", operands);
|
||||||
|
- output_asm_insn (" add\t%0, %%lo(%a1+4), %0", operands);
|
||||||
|
- }
|
||||||
|
- else
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("sethi\t%%hi(%a1-8), %0", operands);
|
||||||
|
- output_asm_insn ("add\t%0, %%lo(%a1-4), %0", operands);
|
||||||
|
- output_asm_insn ("call\t%a2", operands);
|
||||||
|
- output_asm_insn (" nop", NULL);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- if (operands[2] == got_helper_rtx)
|
||||||
|
- got_helper_needed = true;
|
||||||
|
-
|
||||||
|
- return "";
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-#ifdef HAVE_GAS_HIDDEN
|
||||||
|
-# define USE_HIDDEN_LINKONCE 1
|
||||||
|
-#else
|
||||||
|
-# define USE_HIDDEN_LINKONCE 0
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
/* Emit code to load the GOT register. */
|
||||||
|
|
||||||
|
void
|
||||||
|
load_got_register (void)
|
||||||
|
{
|
||||||
|
- rtx insn;
|
||||||
|
+ if (!got_register_rtx)
|
||||||
|
+ got_register_rtx = gen_rtx_REG (Pmode, GLOBAL_OFFSET_TABLE_REGNUM);
|
||||||
|
|
||||||
|
if (TARGET_VXWORKS_RTP)
|
||||||
|
- {
|
||||||
|
- if (!got_register_rtx)
|
||||||
|
- got_register_rtx = pic_offset_table_rtx;
|
||||||
|
-
|
||||||
|
- insn = gen_vxworks_load_got ();
|
||||||
|
- }
|
||||||
|
+ emit_insn (gen_vxworks_load_got ());
|
||||||
|
else
|
||||||
|
{
|
||||||
|
- if (!got_register_rtx)
|
||||||
|
- got_register_rtx = gen_rtx_REG (Pmode, GLOBAL_OFFSET_TABLE_REGNUM);
|
||||||
|
-
|
||||||
|
/* The GOT symbol is subject to a PC-relative relocation so we need a
|
||||||
|
helper function to add the PC value and thus get the final value. */
|
||||||
|
if (!got_helper_rtx)
|
||||||
|
{
|
||||||
|
char name[32];
|
||||||
|
-
|
||||||
|
- /* Skip the leading '%' as that cannot be used in a symbol name. */
|
||||||
|
- if (USE_HIDDEN_LINKONCE)
|
||||||
|
- sprintf (name, "__sparc_get_pc_thunk.%s",
|
||||||
|
- reg_names[REGNO (got_register_rtx)] + 1);
|
||||||
|
- else
|
||||||
|
- ASM_GENERATE_INTERNAL_LABEL (name, "LADDPC",
|
||||||
|
- REGNO (got_register_rtx));
|
||||||
|
-
|
||||||
|
+ get_pc_thunk_name (name, GLOBAL_OFFSET_TABLE_REGNUM);
|
||||||
|
got_helper_rtx = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (name));
|
||||||
|
}
|
||||||
|
|
||||||
|
- insn
|
||||||
|
- = gen_load_pcrel_sym (got_register_rtx, sparc_got (), got_helper_rtx);
|
||||||
|
+ emit_insn (gen_load_pcrel_sym (got_register_rtx, sparc_got (),
|
||||||
|
+ got_helper_rtx));
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- emit_insn (insn);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Ensure that we are not using patterns that are not OK with PIC. */
|
||||||
|
@@ -5512,7 +5490,7 @@ save_local_or_in_reg_p (unsigned int regno, int leaf_function)
|
||||||
|
return true;
|
||||||
|
|
||||||
|
/* GOT register (%l7) if needed. */
|
||||||
|
- if (got_register_rtx && regno == REGNO (got_register_rtx))
|
||||||
|
+ if (regno == GLOBAL_OFFSET_TABLE_REGNUM && got_register_rtx)
|
||||||
|
return true;
|
||||||
|
|
||||||
|
/* If the function accesses prior frames, the frame pointer and the return
|
||||||
|
@@ -12555,9 +12533,10 @@ static void
|
||||||
|
sparc_file_end (void)
|
||||||
|
{
|
||||||
|
/* If we need to emit the special GOT helper function, do so now. */
|
||||||
|
- if (got_helper_needed)
|
||||||
|
+ if (got_helper_rtx)
|
||||||
|
{
|
||||||
|
const char *name = XSTR (got_helper_rtx, 0);
|
||||||
|
+ const char *reg_name = reg_names[GLOBAL_OFFSET_TABLE_REGNUM];
|
||||||
|
#ifdef DWARF2_UNWIND_INFO
|
||||||
|
bool do_cfi;
|
||||||
|
#endif
|
||||||
|
@@ -12594,22 +12573,17 @@ sparc_file_end (void)
|
||||||
|
#ifdef DWARF2_UNWIND_INFO
|
||||||
|
do_cfi = dwarf2out_do_cfi_asm ();
|
||||||
|
if (do_cfi)
|
||||||
|
- output_asm_insn (".cfi_startproc", NULL);
|
||||||
|
+ fprintf (asm_out_file, "\t.cfi_startproc\n");
|
||||||
|
#endif
|
||||||
|
if (flag_delayed_branch)
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("jmp\t%%o7+8", NULL);
|
||||||
|
- output_asm_insn (" add\t%%o7, %0, %0", &got_register_rtx);
|
||||||
|
- }
|
||||||
|
+ fprintf (asm_out_file, "\tjmp\t%%o7+8\n\t add\t%%o7, %s, %s\n",
|
||||||
|
+ reg_name, reg_name);
|
||||||
|
else
|
||||||
|
- {
|
||||||
|
- output_asm_insn ("add\t%%o7, %0, %0", &got_register_rtx);
|
||||||
|
- output_asm_insn ("jmp\t%%o7+8", NULL);
|
||||||
|
- output_asm_insn (" nop", NULL);
|
||||||
|
- }
|
||||||
|
+ fprintf (asm_out_file, "\tadd\t%%o7, %s, %s\n\tjmp\t%%o7+8\n\t nop\n",
|
||||||
|
+ reg_name, reg_name);
|
||||||
|
#ifdef DWARF2_UNWIND_INFO
|
||||||
|
if (do_cfi)
|
||||||
|
- output_asm_insn (".cfi_endproc", NULL);
|
||||||
|
+ fprintf (asm_out_file, "\t.cfi_endproc\n");
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -13115,10 +13089,7 @@ sparc_init_pic_reg (void)
|
||||||
|
edge entry_edge;
|
||||||
|
rtx_insn *seq;
|
||||||
|
|
||||||
|
- /* In PIC mode, we need to always initialize the PIC register if optimization
|
||||||
|
- is enabled, because we are called from IRA and LRA may later force things
|
||||||
|
- to the constant pool for optimization purposes. */
|
||||||
|
- if (!flag_pic || (!crtl->uses_pic_offset_table && !optimize))
|
||||||
|
+ if (!crtl->uses_pic_offset_table)
|
||||||
|
return;
|
||||||
|
|
||||||
|
start_sequence ();
|
||||||
|
diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md
|
||||||
|
index 0a6e27ffa83..7af62d599b9 100644
|
||||||
|
--- a/gcc/config/sparc/sparc.md
|
||||||
|
+++ b/gcc/config/sparc/sparc.md
|
||||||
|
@@ -1604,7 +1604,10 @@
|
||||||
|
(clobber (reg:P O7_REG))]
|
||||||
|
"REGNO (operands[0]) == INTVAL (operands[3])"
|
||||||
|
{
|
||||||
|
- return output_load_pcrel_sym (operands);
|
||||||
|
+ if (flag_delayed_branch)
|
||||||
|
+ return "sethi\t%%hi(%a1-4), %0\n\tcall\t%a2\n\t add\t%0, %%lo(%a1+4), %0";
|
||||||
|
+ else
|
||||||
|
+ return "sethi\t%%hi(%a1-8), %0\n\tadd\t%0, %%lo(%a1-4), %0\n\tcall\t%a2\n\t nop";
|
||||||
|
}
|
||||||
|
[(set (attr "type") (const_string "multi"))
|
||||||
|
(set (attr "length")
|
||||||
|
diff --git a/gcc/testsuite/gcc.c-torture/compile/20191108-1.c b/gcc/testsuite/gcc.c-torture/compile/20191108-1.c
|
||||||
|
deleted file mode 100644
|
||||||
|
index 7929751bb06..00000000000
|
||||||
|
--- a/gcc/testsuite/gcc.c-torture/compile/20191108-1.c
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,14 +0,0 @@
|
||||||
|
-/* PR target/92095 */
|
||||||
|
-/* Testcase by Sergei Trofimovich <slyfox@inbox.ru> */
|
||||||
|
-
|
||||||
|
-typedef union {
|
||||||
|
- double a;
|
||||||
|
- int b[2];
|
||||||
|
-} c;
|
||||||
|
-
|
||||||
|
-double d(int e)
|
||||||
|
-{
|
||||||
|
- c f;
|
||||||
|
- (&f)->b[0] = 15728640;
|
||||||
|
- return e ? -(&f)->a : (&f)->a;
|
||||||
|
-}
|
||||||
|
diff --git a/gcc/testsuite/gcc.target/sparc/overflow-3.c b/gcc/testsuite/gcc.target/sparc/overflow-3.c
|
||||||
|
index 52d6ab2b688..86dddfb09e6 100644
|
||||||
|
--- a/gcc/testsuite/gcc.target/sparc/overflow-3.c
|
||||||
|
+++ b/gcc/testsuite/gcc.target/sparc/overflow-3.c
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
/* { dg-do compile } */
|
||||||
|
/* { dg-require-effective-target lp64 } */
|
||||||
|
-/* { dg-options "-O -fno-pie" } */
|
||||||
|
+/* { dg-options "-O" } */
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
diff --git a/gcc/testsuite/gcc.target/sparc/overflow-4.c b/gcc/testsuite/gcc.target/sparc/overflow-4.c
|
||||||
|
index c6121b958c3..019feee335c 100644
|
||||||
|
--- a/gcc/testsuite/gcc.target/sparc/overflow-4.c
|
||||||
|
+++ b/gcc/testsuite/gcc.target/sparc/overflow-4.c
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
/* { dg-do compile } */
|
||||||
|
/* { dg-require-effective-target lp64 } */
|
||||||
|
-/* { dg-options "-O -fno-pie -mno-vis3 -mno-vis4" } */
|
||||||
|
+/* { dg-options "-O -mno-vis3 -mno-vis4" } */
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
diff --git a/gcc/testsuite/gcc.target/sparc/overflow-5.c b/gcc/testsuite/gcc.target/sparc/overflow-5.c
|
||||||
|
index f00283f6e7b..67d4ac38095 100644
|
||||||
|
--- a/gcc/testsuite/gcc.target/sparc/overflow-5.c
|
||||||
|
+++ b/gcc/testsuite/gcc.target/sparc/overflow-5.c
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
/* { dg-do compile } */
|
||||||
|
/* { dg-require-effective-target lp64 } */
|
||||||
|
-/* { dg-options "-O -fno-pie -mvis3" } */
|
||||||
|
+/* { dg-options "-O -mvis3" } */
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
--
|
||||||
|
2.25.4
|
||||||
|
|
@ -1,51 +0,0 @@
|
|||||||
From 0ac781b0b0deef5c02c32a70ac484f882c3f4dd0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
Date: Tue, 24 Dec 2019 18:55:57 +0100
|
|
||||||
Subject: [PATCH] fix matroska build without js, taglib or atrailers
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
i2i function is used in matroska_handler.cc but this function is defined
|
|
||||||
only if defined(HAVE_JS) || defined(HAVE_TAGLIB) || defined(ATRAILERS)
|
|
||||||
as a result compilation fails if HAVE_MATROSKA is set but HAVE_JS,
|
|
||||||
HAVE_TAGLIG or ATRAILERS are not.
|
|
||||||
|
|
||||||
Backported from: 0ac781b0b0deef5c02c32a70ac484f882c3f4dd0
|
|
||||||
|
|
||||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
|
|
||||||
---
|
|
||||||
src/string_converter.cc | 2 +-
|
|
||||||
src/string_converter.h | 2 +-
|
|
||||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/string_converter.cc b/src/string_converter.cc
|
|
||||||
index f669c661..7a3c55d7 100644
|
|
||||||
--- a/src/string_converter.cc
|
|
||||||
+++ b/src/string_converter.cc
|
|
||||||
@@ -218,7 +218,7 @@ Ref<StringConverter> StringConverter::p2i()
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-#if defined(HAVE_JS) || defined(HAVE_TAGLIB) || defined(ATRAILERS)
|
|
||||||
+#if defined(HAVE_JS) || defined(HAVE_TAGLIB) || defined(ATRAILERS) || defined(HAVE_MATROSKA)
|
|
||||||
|
|
||||||
Ref<StringConverter> StringConverter::i2i()
|
|
||||||
{
|
|
||||||
diff --git a/src/string_converter.h b/src/string_converter.h
|
|
||||||
index 58495430..f75bf833 100644
|
|
||||||
--- a/src/string_converter.h
|
|
||||||
+++ b/src/string_converter.h
|
|
||||||
@@ -65,7 +65,7 @@ public:
|
|
||||||
static zmm::Ref<StringConverter> p2i();
|
|
||||||
|
|
||||||
#endif
|
|
||||||
-#if defined(HAVE_JS) || defined(HAVE_TAGLIB) || defined(ATRAILERS)
|
|
||||||
+#if defined(HAVE_JS) || defined(HAVE_TAGLIB) || defined(ATRAILERS) || defined(HAVE_MATROSKA)
|
|
||||||
/// \brief safeguard - internal to internal - needed to catch some
|
|
||||||
/// scenarious where the user may have forgotten to add proper conversion
|
|
||||||
/// in the script.
|
|
||||||
--
|
|
||||||
2.26.1
|
|
||||||
|
|
@ -1,63 +0,0 @@
|
|||||||
From 7fdcabd80c823694d190e5baa8c657ffcae5e777 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
Date: Fri, 31 Jan 2020 17:14:11 +0100
|
|
||||||
Subject: [PATCH] cmake/FindLibMagic.cmake: fix static linking
|
|
||||||
|
|
||||||
libmagic can optionally depends on xz (for lzma) or bzip2 since version
|
|
||||||
5.38 and
|
|
||||||
https://github.com/file/file/commit/b259a07ea95827f565faa20f0316e5b2704064f7
|
|
||||||
so use pkg-config to retrieve those static dependencies and avoid the
|
|
||||||
following build failure:
|
|
||||||
|
|
||||||
[100%] Linking CXX executable gerbera
|
|
||||||
/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /home/br-user/autobuild/run/instance-0/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libmagic.a(compress.o): in function `uncompressbuf':
|
|
||||||
compress.c:(.text+0x69c): undefined reference to `BZ2_bzDecompressInit'
|
|
||||||
/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x710): undefined reference to `BZ2_bzDecompress'
|
|
||||||
/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x730): undefined reference to `BZ2_bzDecompressEnd'
|
|
||||||
/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x7bc): undefined reference to `lzma_auto_decoder'
|
|
||||||
/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x828): undefined reference to `lzma_code'
|
|
||||||
/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x848): undefined reference to `lzma_end'
|
|
||||||
|
|
||||||
It should be noted that libmagic.pc is not currently provided in the
|
|
||||||
official file package (which provides libmagic), an issue has been
|
|
||||||
opened to add libmagic.pc: https://bugs.astron.com/view.php?id=136
|
|
||||||
|
|
||||||
Fixes:
|
|
||||||
- http://autobuild.buildroot.org/results/37b1ef54dc41100689f311fbc31fc9300dc6ae63
|
|
||||||
|
|
||||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
[Retrieved from:
|
|
||||||
https://github.com/gerbera/gerbera/commit/7fdcabd80c823694d190e5baa8c657ffcae5e777]
|
|
||||||
---
|
|
||||||
cmake/FindLibMagic.cmake | 15 +++++++++++++--
|
|
||||||
1 file changed, 13 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/cmake/FindLibMagic.cmake b/cmake/FindLibMagic.cmake
|
|
||||||
index f68ab923..04995af4 100644
|
|
||||||
--- a/cmake/FindLibMagic.cmake
|
|
||||||
+++ b/cmake/FindLibMagic.cmake
|
|
||||||
@@ -1,11 +1,22 @@
|
|
||||||
INCLUDE (FindPackageHandleStandardArgs)
|
|
||||||
|
|
||||||
-FIND_PATH(MAGIC_INCLUDE_DIR magic.h)
|
|
||||||
-FIND_LIBRARY(MAGIC_LIBRARIES NAMES magic)
|
|
||||||
+find_package(PkgConfig QUIET)
|
|
||||||
+
|
|
||||||
+pkg_check_modules(PC_MAGIC QUIET libmagic)
|
|
||||||
+
|
|
||||||
+FIND_PATH(MAGIC_INCLUDE_DIR magic.h
|
|
||||||
+ HINTS ${PC_MAGIC_INCLUDEDIR} ${PC_MAGIC_INCLUDE_DIRS})
|
|
||||||
+FIND_LIBRARY(MAGIC_LIBRARIES NAMES magic
|
|
||||||
+ HINTS ${PC_MAGIC_LIBDIR} ${PC_MAGIC_LIBRARY_DIRS})
|
|
||||||
|
|
||||||
# handle the QUIETLY and REQUIRED arguments and set MAGIC_FOUND to TRUE
|
|
||||||
find_package_handle_standard_args(MAGIC DEFAULT_MSG MAGIC_LIBRARIES)
|
|
||||||
|
|
||||||
+if (MAGIC_FOUND)
|
|
||||||
+ set (MAGIC_LIBRARIES ${MAGIC_LIBRARY} ${PC_MAGIC_LIBRARIES})
|
|
||||||
+ set (MAGIC_INCLUDE_DIRS ${MAGIC_INCLUDE_DIR} )
|
|
||||||
+endif ()
|
|
||||||
+
|
|
||||||
MARK_AS_ADVANCED(
|
|
||||||
MAGIC_LIBRARIES
|
|
||||||
MAGIC_INCLUDE_DIRS )
|
|
@ -1,37 +0,0 @@
|
|||||||
From aab2eacbaad10759294f4fd74bbb5ecef3cf3a8d Mon Sep 17 00:00:00 2001
|
|
||||||
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
Date: Tue, 24 Dec 2019 22:57:18 +0100
|
|
||||||
Subject: [PATCH] cmake/FindMatroska: fix static linking
|
|
||||||
|
|
||||||
Fix static linking with libmatrasoka by adding PC_EBM_LIBRARIES to
|
|
||||||
EBML_LIBRARIES and PC_MAT_LIBRARIES to MATROSKA_LIBRARIES
|
|
||||||
|
|
||||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
[Retrieved from:
|
|
||||||
https://github.com/gerbera/gerbera/commit/aab2eacbaad10759294f4fd74bbb5ecef3cf3a8d]
|
|
||||||
---
|
|
||||||
cmake/FindMatroska.cmake | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/cmake/FindMatroska.cmake b/cmake/FindMatroska.cmake
|
|
||||||
index 4b09a5ec..12ca593d 100644
|
|
||||||
--- a/cmake/FindMatroska.cmake
|
|
||||||
+++ b/cmake/FindMatroska.cmake
|
|
||||||
@@ -23,7 +23,7 @@ FIND_LIBRARY(EBML_LIBRARY ebml
|
|
||||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(EBML
|
|
||||||
REQUIRED_VARS EBML_LIBRARY EBML_INCLUDE_DIR)
|
|
||||||
if (EBML_FOUND)
|
|
||||||
- set (EBML_LIBRARIES ${EBML_LIBRARY})
|
|
||||||
+ set (EBML_LIBRARIES ${EBML_LIBRARY} ${PC_EBM_LIBRARIES})
|
|
||||||
set (EBML_INCLUDE_DIRS ${EBML_INCLUDE_DIR} )
|
|
||||||
endif ()
|
|
||||||
MARK_AS_ADVANCED(
|
|
||||||
@@ -41,7 +41,7 @@ find_library(MATROSKA_LIBRARY matroska
|
|
||||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(MATROSKA
|
|
||||||
REQUIRED_VARS MATROSKA_LIBRARY MATROSKA_INCLUDE_DIR)
|
|
||||||
if (MATROSKA_FOUND)
|
|
||||||
- set (MATROSKA_LIBRARIES ${MATROSKA_LIBRARY})
|
|
||||||
+ set (MATROSKA_LIBRARIES ${MATROSKA_LIBRARY} ${PC_MAT_LIBRARIES})
|
|
||||||
set (MATROSKA_INCLUDE_DIRS ${MATROSKA_INCLUDE_DIR} )
|
|
||||||
endif ()
|
|
||||||
MARK_AS_ADVANCED(
|
|
@ -3,12 +3,15 @@ config BR2_PACKAGE_GERBERA
|
|||||||
depends on BR2_USE_MMU # fork()
|
depends on BR2_USE_MMU # fork()
|
||||||
depends on BR2_TOOLCHAIN_HAS_ATOMIC
|
depends on BR2_TOOLCHAIN_HAS_ATOMIC
|
||||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # C++17 optional
|
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17 filesystem
|
||||||
depends on BR2_INSTALL_LIBSTDCPP
|
depends on BR2_INSTALL_LIBSTDCPP
|
||||||
depends on !BR2_PACKAGE_LIBUPNP # libupnp18
|
depends on BR2_USE_WCHAR # fmt
|
||||||
select BR2_PACKAGE_EXPAT
|
select BR2_PACKAGE_FMT
|
||||||
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
|
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
|
||||||
select BR2_PACKAGE_LIBUPNP18
|
select BR2_PACKAGE_LIBUPNP if !BR2_PACKAGE_LIBNPUPNP
|
||||||
|
select BR2_PACKAGE_PUGIXML
|
||||||
|
select BR2_PACKAGE_PUGIXML_XPATH_SUPPORT
|
||||||
|
select BR2_PACKAGE_SPDLOG
|
||||||
select BR2_PACKAGE_SQLITE
|
select BR2_PACKAGE_SQLITE
|
||||||
select BR2_PACKAGE_UTIL_LINUX
|
select BR2_PACKAGE_UTIL_LINUX
|
||||||
select BR2_PACKAGE_UTIL_LINUX_LIBUUID
|
select BR2_PACKAGE_UTIL_LINUX_LIBUUID
|
||||||
@ -19,9 +22,8 @@ config BR2_PACKAGE_GERBERA
|
|||||||
|
|
||||||
https://gerbera.io
|
https://gerbera.io
|
||||||
|
|
||||||
comment "gerbera needs a toolchain w/ C++, threads, gcc >= 7"
|
comment "gerbera needs a toolchain w/ C++, threads, wchar, gcc >= 8"
|
||||||
depends on BR2_USE_MMU
|
depends on BR2_USE_MMU
|
||||||
depends on BR2_TOOLCHAIN_HAS_ATOMIC
|
depends on BR2_TOOLCHAIN_HAS_ATOMIC
|
||||||
depends on !BR2_PACKAGE_LIBUPNP
|
|
||||||
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
|
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
|
||||||
!BR2_TOOLCHAIN_GCC_AT_LEAST_7
|
!BR2_USE_WCHAR || !BR2_TOOLCHAIN_GCC_AT_LEAST_8
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
# Locally computed:
|
# Locally computed:
|
||||||
sha256 904a9031c85ac805e4c139f363510226952683d7257acd1dee25ba1e97fd7651 gerbera-1.4.0.tar.gz
|
sha256 cbe7ea78977db8c02fcca1759ed149f199a590afaf4a6d21ffcca8623d1a0cc5 gerbera-1.6.4.tar.gz
|
||||||
sha256 cae4138373be41fd2be75faf41ce7efbcf49fb17d0e05ad1c51cc01ac335b9b6 LICENSE.md
|
sha256 cae4138373be41fd2be75faf41ce7efbcf49fb17d0e05ad1c51cc01ac335b9b6 LICENSE.md
|
||||||
|
@ -4,14 +4,15 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
GERBERA_VERSION = 1.4.0
|
GERBERA_VERSION = 1.6.4
|
||||||
GERBERA_SITE = $(call github,gerbera,gerbera,v$(GERBERA_VERSION))
|
GERBERA_SITE = $(call github,gerbera,gerbera,v$(GERBERA_VERSION))
|
||||||
GERBERA_LICENSE = GPL-2.0
|
GERBERA_LICENSE = GPL-2.0
|
||||||
GERBERA_LICENSE_FILES = LICENSE.md
|
GERBERA_LICENSE_FILES = LICENSE.md
|
||||||
GERBERA_DEPENDENCIES = \
|
GERBERA_DEPENDENCIES = \
|
||||||
expat \
|
fmt \
|
||||||
host-pkgconf \
|
host-pkgconf \
|
||||||
libupnp18 \
|
pugixml \
|
||||||
|
spdlog \
|
||||||
sqlite \
|
sqlite \
|
||||||
util-linux \
|
util-linux \
|
||||||
zlib
|
zlib
|
||||||
@ -70,6 +71,15 @@ else
|
|||||||
GERBERA_CONF_OPTS += -DWITH_MATROSKA=OFF
|
GERBERA_CONF_OPTS += -DWITH_MATROSKA=OFF
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Either libupnp or libnpupnp are guranteed to be enabled
|
||||||
|
ifeq ($(BR2_PACKAGE_LIBNPUPNP),y)
|
||||||
|
GERBERA_DEPENDENCIES += libnpupnp
|
||||||
|
GERBERA_CONF_OPTS += -DWITH_NPUPNP=ON
|
||||||
|
else
|
||||||
|
GERBERA_DEPENDENCIES += libupnp
|
||||||
|
GERBERA_CONF_OPTS += -DWITH_NPUPNP=OFF
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(BR2_PACKAGE_MYSQL),y)
|
ifeq ($(BR2_PACKAGE_MYSQL),y)
|
||||||
GERBERA_DEPENDENCIES += mysql
|
GERBERA_DEPENDENCIES += mysql
|
||||||
GERBERA_CONF_OPTS += -DWITH_MYSQL=ON
|
GERBERA_CONF_OPTS += -DWITH_MYSQL=ON
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Locally calculated (fetched from Github)
|
# Locally calculated (fetched from Github)
|
||||||
sha256 e1f2c9b424a4e0c00e7ad123a4204f7bc8afd3c504aeb8c79b1086509fd67176 glibc-2.31-54-g6fdf971c9dbf7dac9bea552113fe4694015bbc4d.tar.gz
|
sha256 d7495fb929497bedff9827d01091a4df681cfcbe5204de1d47fc5dab1ba7457c glibc-2.31-74-gd0c84d22b6a67f85a1eed3b93aef30e6953294b5.tar.gz
|
||||||
|
|
||||||
# Hashes for license files
|
# Hashes for license files
|
||||||
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
|
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
|
@ -20,7 +20,7 @@ else ifeq ($(BR2_RISCV_32),y)
|
|||||||
# Until 2.33 is released, just use master
|
# Until 2.33 is released, just use master
|
||||||
GLIBC_VERSION = 2.32.9000-69-gbd394d131c10c9ec22c6424197b79410042eed99
|
GLIBC_VERSION = 2.32.9000-69-gbd394d131c10c9ec22c6424197b79410042eed99
|
||||||
else
|
else
|
||||||
GLIBC_VERSION = 2.31-54-g6fdf971c9dbf7dac9bea552113fe4694015bbc4d
|
GLIBC_VERSION = 2.31-74-gd0c84d22b6a67f85a1eed3b93aef30e6953294b5
|
||||||
endif
|
endif
|
||||||
# Upstream doesn't officially provide an https download link.
|
# Upstream doesn't officially provide an https download link.
|
||||||
# There is one (https://sourceware.org/git/glibc.git) but it's not reliable,
|
# There is one (https://sourceware.org/git/glibc.git) but it's not reliable,
|
||||||
|
175
buildroot/package/gmrender-resurrect/0001-Drop-UpnpInit.patch
Normal file
175
buildroot/package/gmrender-resurrect/0001-Drop-UpnpInit.patch
Normal file
@ -0,0 +1,175 @@
|
|||||||
|
From dc8c4d4dc234311b3099e7f1efadf5d9733c81e9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||||
|
Date: Fri, 21 Aug 2020 21:29:00 +0200
|
||||||
|
Subject: [PATCH] Drop UpnpInit
|
||||||
|
|
||||||
|
UpnpInit has been dropped from libupnp 1.14.x as it can't be fixed
|
||||||
|
against CallStranger a.k.a. CVE-2020-12695 so replace it by UpnpInit2
|
||||||
|
which is available since version 1.6.7 and
|
||||||
|
https://github.com/pupnp/pupnp/commit/2bcbdffd89a70364147d345ec5e70a3fce5cbc29
|
||||||
|
|
||||||
|
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||||
|
[Upstream status:
|
||||||
|
https://github.com/hzeller/gmrender-resurrect/pull/214]
|
||||||
|
---
|
||||||
|
dist-scripts/centos7/README.md | 2 +-
|
||||||
|
dist-scripts/debian/gmediarender.1 | 8 ++------
|
||||||
|
dist-scripts/fedora/README.md | 2 +-
|
||||||
|
src/main.c | 13 ++++---------
|
||||||
|
src/upnp_device.c | 18 +++++++++---------
|
||||||
|
src/upnp_device.h | 2 +-
|
||||||
|
6 files changed, 18 insertions(+), 27 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/dist-scripts/centos7/README.md b/dist-scripts/centos7/README.md
|
||||||
|
index 278d777..ed82fb6 100644
|
||||||
|
--- a/dist-scripts/centos7/README.md
|
||||||
|
+++ b/dist-scripts/centos7/README.md
|
||||||
|
@@ -45,7 +45,7 @@ Additional configuration is also recommended, sice there's no configuration file
|
||||||
|
# vi /etc/systemd/system/gmediarender.service.d/customize.conf # or nano, or emacs, or whatever editor you like
|
||||||
|
[Service]
|
||||||
|
ExecStart=
|
||||||
|
- ExecStart=/usr/bin/gmediarender --port=49494 --ip-address=<your_IP_address> -f "DLNA Renderer GMediaRender"
|
||||||
|
+ ExecStart=/usr/bin/gmediarender --port=49494 --interface-name=<your_interface_name> -f "DLNA Renderer GMediaRender"
|
||||||
|
|
||||||
|
# systemctl daemon-reload
|
||||||
|
# systemctl start gmediarender.service
|
||||||
|
diff --git a/dist-scripts/debian/gmediarender.1 b/dist-scripts/debian/gmediarender.1
|
||||||
|
index 96123ff..b2b1359 100644
|
||||||
|
--- a/dist-scripts/debian/gmediarender.1
|
||||||
|
+++ b/dist-scripts/debian/gmediarender.1
|
||||||
|
@@ -50,12 +50,8 @@ Usually, it is desirable for the renderer
|
||||||
|
to show up on controllers under a recognisable and unique name. This is
|
||||||
|
the option to set that name.
|
||||||
|
.TP
|
||||||
|
-.B \-I, \-\-ip\-address \fI\<ip-address\>\fP
|
||||||
|
-The local IP address the service is running and advertised on.
|
||||||
|
-
|
||||||
|
-This can
|
||||||
|
-only be a single address, and must be explicitly specified (i.e. not
|
||||||
|
-0.0.0.0).
|
||||||
|
+.B \-I, \-\-interface\-name \fI\<interface-name\>\fP
|
||||||
|
+The local interface name the service is running and advertised on.
|
||||||
|
.TP
|
||||||
|
.B \-p, \-\-port \fI\<port>\fP
|
||||||
|
Port to listen to. [49152..65535].
|
||||||
|
diff --git a/dist-scripts/fedora/README.md b/dist-scripts/fedora/README.md
|
||||||
|
index 7b9ea4b..45aa536 100644
|
||||||
|
--- a/dist-scripts/fedora/README.md
|
||||||
|
+++ b/dist-scripts/fedora/README.md
|
||||||
|
@@ -43,7 +43,7 @@ Additional configuration is also recommended, sice there's no configuration file
|
||||||
|
# vi /etc/systemd/system/gmediarender.service.d/customize.conf # or nano, or emacs, or whatever editor you like
|
||||||
|
[Service]
|
||||||
|
ExecStart=
|
||||||
|
- ExecStart=/usr/bin/gmediarender --port=49494 --ip-address=<your_IP_address> -f "DLNA Renderer GMediaRender"
|
||||||
|
+ ExecStart=/usr/bin/gmediarender --port=49494 --interface-name=<your_interface_name> -f "DLNA Renderer GMediaRender"
|
||||||
|
|
||||||
|
# systemctl daemon-reload
|
||||||
|
# systemctl start gmediarender.service
|
||||||
|
diff --git a/src/main.c b/src/main.c
|
||||||
|
index ef720e3..2030c49 100644
|
||||||
|
--- a/src/main.c
|
||||||
|
+++ b/src/main.c
|
||||||
|
@@ -69,11 +69,7 @@ static gboolean show_transport_scpd = FALSE;
|
||||||
|
static gboolean show_outputs = FALSE;
|
||||||
|
static gboolean daemon_mode = FALSE;
|
||||||
|
|
||||||
|
-// IP-address seems strange in libupnp: they actually don't bind to
|
||||||
|
-// that address, but to INADDR_ANY (miniserver.c in upnp library).
|
||||||
|
-// Apparently they just use this for the advertisement ? Anyway, 0.0.0.0 would
|
||||||
|
-// not work.
|
||||||
|
-static const gchar *ip_address = NULL;
|
||||||
|
+static const gchar *interface_name = NULL;
|
||||||
|
static int listen_port = 49494;
|
||||||
|
|
||||||
|
#ifdef GMRENDER_UUID
|
||||||
|
@@ -92,9 +88,8 @@ static const gchar *mime_filter = NULL;
|
||||||
|
static GOptionEntry option_entries[] = {
|
||||||
|
{ "version", 0, 0, G_OPTION_ARG_NONE, &show_version,
|
||||||
|
"Output version information and exit", NULL },
|
||||||
|
- { "ip-address", 'I', 0, G_OPTION_ARG_STRING, &ip_address,
|
||||||
|
- "The local IP address the service is running and advertised "
|
||||||
|
- "(only one, 0.0.0.0 won't work)", NULL },
|
||||||
|
+ { "interface-name", 'I', 0, G_OPTION_ARG_STRING, &interface_name,
|
||||||
|
+ "The local interface name the service is running and advertised", NULL },
|
||||||
|
// The following is not very reliable, as libupnp does not set
|
||||||
|
// SO_REUSEADDR by default, so it might increment (sending patch).
|
||||||
|
{ "port", 'p', 0, G_OPTION_ARG_INT, &listen_port,
|
||||||
|
@@ -302,7 +297,7 @@ int main(int argc, char **argv)
|
||||||
|
listen_port);
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
}
|
||||||
|
- device = upnp_device_init(upnp_renderer, ip_address, listen_port);
|
||||||
|
+ device = upnp_device_init(upnp_renderer, interface_name, listen_port);
|
||||||
|
if (device == NULL) {
|
||||||
|
Log_error("main", "ERROR: Failed to initialize UPnP device");
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
diff --git a/src/upnp_device.c b/src/upnp_device.c
|
||||||
|
index db65e4f..3151238 100644
|
||||||
|
--- a/src/upnp_device.c
|
||||||
|
+++ b/src/upnp_device.c
|
||||||
|
@@ -416,13 +416,13 @@ static UPNP_CALLBACK(event_handler, EventType, event, userdata)
|
||||||
|
|
||||||
|
static gboolean initialize_device(struct upnp_device_descriptor *device_def,
|
||||||
|
struct upnp_device *result_device,
|
||||||
|
- const char *ip_address,
|
||||||
|
+ const char *interface_name,
|
||||||
|
unsigned short port)
|
||||||
|
{
|
||||||
|
int rc;
|
||||||
|
char *buf;
|
||||||
|
|
||||||
|
- rc = UpnpInit(ip_address, port);
|
||||||
|
+ rc = UpnpInit2(interface_name, port);
|
||||||
|
/* There have been situations reported in which UPNP had issues
|
||||||
|
* initializing right after network came up. #129
|
||||||
|
*/
|
||||||
|
@@ -430,13 +430,13 @@ static gboolean initialize_device(struct upnp_device_descriptor *device_def,
|
||||||
|
static const int kRetryTimeMs = 1000;
|
||||||
|
while (rc != UPNP_E_SUCCESS && retries_left--) {
|
||||||
|
usleep(kRetryTimeMs * 1000);
|
||||||
|
- Log_error("upnp", "UpnpInit(ip=%s, port=%d) Error: %s (%d). Retrying... (%ds)",
|
||||||
|
- ip_address, port, UpnpGetErrorMessage(rc), rc, retries_left);
|
||||||
|
- rc = UpnpInit(ip_address, port);
|
||||||
|
+ Log_error("upnp", "UpnpInit2(interface=%s, port=%d) Error: %s (%d). Retrying... (%ds)",
|
||||||
|
+ interface_name, port, UpnpGetErrorMessage(rc), rc, retries_left);
|
||||||
|
+ rc = UpnpInit2(interface_name, port);
|
||||||
|
}
|
||||||
|
if (UPNP_E_SUCCESS != rc) {
|
||||||
|
- Log_error("upnp", "UpnpInit(ip=%s, port=%d) Error: %s (%d). Giving up.",
|
||||||
|
- ip_address, port, UpnpGetErrorMessage(rc), rc);
|
||||||
|
+ Log_error("upnp", "UpnpInit2(interface=%s, port=%d) Error: %s (%d). Giving up.",
|
||||||
|
+ interface_name, port, UpnpGetErrorMessage(rc), rc);
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
Log_info("upnp", "Registered IP=%s port=%d\n",
|
||||||
|
@@ -483,7 +483,7 @@ static gboolean initialize_device(struct upnp_device_descriptor *device_def,
|
||||||
|
}
|
||||||
|
|
||||||
|
struct upnp_device *upnp_device_init(struct upnp_device_descriptor *device_def,
|
||||||
|
- const char *ip_address,
|
||||||
|
+ const char *interface_name,
|
||||||
|
unsigned short port)
|
||||||
|
{
|
||||||
|
int rc;
|
||||||
|
@@ -516,7 +516,7 @@ struct upnp_device *upnp_device_init(struct upnp_device_descriptor *device_def,
|
||||||
|
webserver_register_buf(srv->scpd_url, buf, "text/xml");
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (!initialize_device(device_def, result_device, ip_address, port)) {
|
||||||
|
+ if (!initialize_device(device_def, result_device, interface_name, port)) {
|
||||||
|
UpnpFinish();
|
||||||
|
free(result_device);
|
||||||
|
return NULL;
|
||||||
|
diff --git a/src/upnp_device.h b/src/upnp_device.h
|
||||||
|
index 3e635e1..8c8e783 100644
|
||||||
|
--- a/src/upnp_device.h
|
||||||
|
+++ b/src/upnp_device.h
|
||||||
|
@@ -49,7 +49,7 @@ struct upnp_device;
|
||||||
|
struct action_event;
|
||||||
|
|
||||||
|
struct upnp_device *upnp_device_init(struct upnp_device_descriptor *device_def,
|
||||||
|
- const char *ip_address,
|
||||||
|
+ const char *interface_name,
|
||||||
|
unsigned short port);
|
||||||
|
|
||||||
|
void upnp_device_shutdown(struct upnp_device *device);
|
@ -5,7 +5,7 @@ config BR2_PACKAGE_GMRENDER_RESURRECT
|
|||||||
depends on BR2_USE_MMU # gstreamer1
|
depends on BR2_USE_MMU # gstreamer1
|
||||||
select BR2_PACKAGE_GSTREAMER1
|
select BR2_PACKAGE_GSTREAMER1
|
||||||
select BR2_PACKAGE_GST1_PLUGINS_BASE # run-time only
|
select BR2_PACKAGE_GST1_PLUGINS_BASE # run-time only
|
||||||
select BR2_PACKAGE_LIBUPNP18 if !BR2_PACKAGE_LIBUPNP
|
select BR2_PACKAGE_LIBUPNP
|
||||||
help
|
help
|
||||||
UPnP (DLNA) media renderer based on gstreamer
|
UPnP (DLNA) media renderer based on gstreamer
|
||||||
|
|
||||||
|
@ -13,6 +13,6 @@ GMRENDER_RESURRECT_LICENSE = GPL-2.0+
|
|||||||
GMRENDER_RESURRECT_LICENSE_FILES = COPYING
|
GMRENDER_RESURRECT_LICENSE_FILES = COPYING
|
||||||
GMRENDER_RESURRECT_DEPENDENCIES = \
|
GMRENDER_RESURRECT_DEPENDENCIES = \
|
||||||
gstreamer1 \
|
gstreamer1 \
|
||||||
$(if $(BR2_PACKAGE_LIBUPNP),libupnp,libupnp18)
|
libupnp
|
||||||
|
|
||||||
$(eval $(autotools-package))
|
$(eval $(autotools-package))
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
comment "gnuradio needs a toolchain w/ C++, NPTL, wchar, dynamic library"
|
comment "gnuradio needs a toolchain w/ C++, NPTL, wchar, dynamic library"
|
||||||
depends on BR2_USE_MMU
|
depends on BR2_USE_MMU
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
|
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
|
||||||
!BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
|
!BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
|
||||||
|
|
||||||
@ -13,6 +14,7 @@ config BR2_PACKAGE_GNURADIO
|
|||||||
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
||||||
depends on BR2_USE_MMU # use fork()
|
depends on BR2_USE_MMU # use fork()
|
||||||
depends on BR2_USE_WCHAR # boost
|
depends on BR2_USE_WCHAR # boost
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-atomic
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-thread
|
||||||
select BR2_PACKAGE_BOOST
|
select BR2_PACKAGE_BOOST
|
||||||
select BR2_PACKAGE_BOOST_ATOMIC
|
select BR2_PACKAGE_BOOST_ATOMIC
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
comment "gqrx needs a toolchain w/ C++, threads, wchar, dynamic library"
|
comment "gqrx needs a toolchain w/ C++, threads, wchar, dynamic library"
|
||||||
depends on BR2_USE_MMU # gnuradio
|
depends on BR2_USE_MMU # gnuradio
|
||||||
depends on BR2_TOOLCHAIN_HAS_SYNC_4 || BR2_TOOLCHAIN_HAS_ATOMIC
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4 || BR2_TOOLCHAIN_HAS_ATOMIC
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
|
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
|
||||||
!BR2_USE_WCHAR || !BR2_STATIC_LIBS
|
!BR2_USE_WCHAR || !BR2_STATIC_LIBS
|
||||||
|
|
||||||
@ -19,6 +20,7 @@ config BR2_PACKAGE_GQRX
|
|||||||
depends on BR2_USE_WCHAR # boost
|
depends on BR2_USE_WCHAR # boost
|
||||||
depends on BR2_TOOLCHAIN_HAS_SYNC_4 || BR2_TOOLCHAIN_HAS_ATOMIC
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4 || BR2_TOOLCHAIN_HAS_ATOMIC
|
||||||
depends on BR2_PACKAGE_QT5
|
depends on BR2_PACKAGE_QT5
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # gnuradio -> boost-atomic
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # gnuradio
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # gnuradio
|
||||||
select BR2_PACKAGE_BOOST
|
select BR2_PACKAGE_BOOST
|
||||||
select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS
|
select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS
|
||||||
|
@ -1,199 +0,0 @@
|
|||||||
From 23ed73623810a0894c8efd9eb79dd38483794a3b Mon Sep 17 00:00:00 2001
|
|
||||||
From: Fabrice Fontaine <fabrice.fontaine@orange.com>
|
|
||||||
Date: Thu, 20 Aug 2020 18:17:03 +0200
|
|
||||||
Subject: [PATCH] fix build with gcc 10
|
|
||||||
|
|
||||||
This will fix build failures with -fno-common which is enabled by
|
|
||||||
default with gcc 10
|
|
||||||
|
|
||||||
Fixes:
|
|
||||||
- http://autobuild.buildroot.org/results/f296984c3851fc28341210e36ef1b55b2edac209
|
|
||||||
|
|
||||||
Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
|
|
||||||
[Retrieved from:
|
|
||||||
https://github.com/Orange-OpenSource/igd2-for-linux/commit/23ed73623810a0894c8efd9eb79dd38483794a3b]
|
|
||||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
---
|
|
||||||
linuxigd2/src/gatedevice.c | 37 +++++++++++++++++++++++++++++++++
|
|
||||||
linuxigd2/src/gatedevice.h | 42 +++++++++-----------------------------
|
|
||||||
linuxigd2/src/pinholev6.c | 2 ++
|
|
||||||
linuxigd2/src/pinholev6.h | 2 +-
|
|
||||||
linuxigd2/src/pmlist.c | 5 +++++
|
|
||||||
linuxigd2/src/pmlist.h | 2 +-
|
|
||||||
linuxigd2/src/wanipv6fw.h | 3 ---
|
|
||||||
7 files changed, 56 insertions(+), 37 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/linuxigd2/src/gatedevice.c b/linuxigd2/src/gatedevice.c
|
|
||||||
index 8be53e5..a50525d 100644
|
|
||||||
--- a/linuxigd2/src/gatedevice.c
|
|
||||||
+++ b/linuxigd2/src/gatedevice.c
|
|
||||||
@@ -41,6 +41,43 @@
|
|
||||||
#include "wanipv6fw.h"
|
|
||||||
#include "config.h"
|
|
||||||
|
|
||||||
+// Thread which contains all kind of timers and threads used in gatedevice.c and deviceprotection.c
|
|
||||||
+TimerThread gExpirationTimerThread;
|
|
||||||
+
|
|
||||||
+// IGD Device Globals
|
|
||||||
+UpnpDevice_Handle deviceHandle;
|
|
||||||
+UpnpDevice_Handle deviceHandleIPv6;
|
|
||||||
+UpnpDevice_Handle deviceHandleIPv6UlaGua;
|
|
||||||
+char *gateUDN;
|
|
||||||
+char *wanUDN;
|
|
||||||
+char *wanConnectionUDN;
|
|
||||||
+char *lanUDN;
|
|
||||||
+long int startup_time;
|
|
||||||
+unsigned long connection_stats[STATS_LIMIT]; // this is used for defining if connection is in idling
|
|
||||||
+long int idle_time;
|
|
||||||
+
|
|
||||||
+// State Variables
|
|
||||||
+char ConnectionType[50];
|
|
||||||
+char PossibleConnectionTypes[50];
|
|
||||||
+char ConnectionStatus[20];
|
|
||||||
+char LastConnectionError[35];
|
|
||||||
+long int AutoDisconnectTime;
|
|
||||||
+long int IdleDisconnectTime;
|
|
||||||
+long int WarnDisconnectDelay;
|
|
||||||
+int RSIPAvailable;
|
|
||||||
+int NATEnabled;
|
|
||||||
+char ExternalIPAddress[INET6_ADDRSTRLEN];
|
|
||||||
+int PortMappingNumberOfEntries;
|
|
||||||
+int PortMappingEnabled;
|
|
||||||
+char RemoteHost[INET6_ADDRSTRLEN]; // updated IPv6 addrss length 16 -> 46
|
|
||||||
+long int SystemUpdateID;
|
|
||||||
+
|
|
||||||
+// WANEthLinkConfig state variables
|
|
||||||
+char EthernetLinkStatus[12];
|
|
||||||
+
|
|
||||||
+char FirewallEnabled[2];
|
|
||||||
+char InboundPinholeAllowed[2];
|
|
||||||
+
|
|
||||||
//Definitions for mapping expiration timer thread
|
|
||||||
static ThreadPool gExpirationThreadPool;
|
|
||||||
static ThreadPoolJob gEventUpdateJob;
|
|
||||||
diff --git a/linuxigd2/src/gatedevice.h b/linuxigd2/src/gatedevice.h
|
|
||||||
index 28d6b21..dbaa0c2 100644
|
|
||||||
--- a/linuxigd2/src/gatedevice.h
|
|
||||||
+++ b/linuxigd2/src/gatedevice.h
|
|
||||||
@@ -33,42 +33,20 @@
|
|
||||||
#include "util.h"
|
|
||||||
|
|
||||||
// Thread which contains all kind of timers and threads used in gatedevice.c and deviceprotection.c
|
|
||||||
-TimerThread gExpirationTimerThread;
|
|
||||||
+extern TimerThread gExpirationTimerThread;
|
|
||||||
|
|
||||||
// IGD Device Globals
|
|
||||||
-UpnpDevice_Handle deviceHandle;
|
|
||||||
-UpnpDevice_Handle deviceHandleIPv6;
|
|
||||||
-UpnpDevice_Handle deviceHandleIPv6UlaGua;
|
|
||||||
-char *gateUDN;
|
|
||||||
-char *wanUDN;
|
|
||||||
-char *wanConnectionUDN;
|
|
||||||
-char *lanUDN;
|
|
||||||
-long int startup_time;
|
|
||||||
-unsigned long connection_stats[STATS_LIMIT]; // this is used for defining if connection is in idling
|
|
||||||
-long int idle_time;
|
|
||||||
-
|
|
||||||
-// State Variables
|
|
||||||
-char ConnectionType[50];
|
|
||||||
-char PossibleConnectionTypes[50];
|
|
||||||
-char ConnectionStatus[20];
|
|
||||||
-char LastConnectionError[35];
|
|
||||||
-long int AutoDisconnectTime;
|
|
||||||
-long int IdleDisconnectTime;
|
|
||||||
-long int WarnDisconnectDelay;
|
|
||||||
-int RSIPAvailable;
|
|
||||||
-int NATEnabled;
|
|
||||||
-char ExternalIPAddress[INET6_ADDRSTRLEN];
|
|
||||||
-int PortMappingNumberOfEntries;
|
|
||||||
-int PortMappingEnabled;
|
|
||||||
-char RemoteHost[INET6_ADDRSTRLEN]; // updated IPv6 addrss length 16 -> 46
|
|
||||||
-long int SystemUpdateID;
|
|
||||||
-
|
|
||||||
-// WANEthLinkConfig state variables
|
|
||||||
-char EthernetLinkStatus[12];
|
|
||||||
+extern UpnpDevice_Handle deviceHandle;
|
|
||||||
+extern UpnpDevice_Handle deviceHandleIPv6;
|
|
||||||
+extern UpnpDevice_Handle deviceHandleIPv6UlaGua;
|
|
||||||
+extern char *gateUDN;
|
|
||||||
+extern char *wanUDN;
|
|
||||||
+extern char *wanConnectionUDN;
|
|
||||||
+extern char *lanUDN;
|
|
||||||
|
|
||||||
// Linked list for portmapping entries
|
|
||||||
-struct portMap *pmlist_Head;
|
|
||||||
-struct portMap *pmlist_Current;
|
|
||||||
+extern struct portMap *pmlist_Head;
|
|
||||||
+extern struct portMap *pmlist_Current;
|
|
||||||
|
|
||||||
// WanIPConnection Actions
|
|
||||||
int EventHandler(Upnp_EventType EventType, void *Event, void *Cookie);
|
|
||||||
diff --git a/linuxigd2/src/pinholev6.c b/linuxigd2/src/pinholev6.c
|
|
||||||
index 44e8a19..78f886d 100644
|
|
||||||
--- a/linuxigd2/src/pinholev6.c
|
|
||||||
+++ b/linuxigd2/src/pinholev6.c
|
|
||||||
@@ -41,6 +41,8 @@ extern "C" {
|
|
||||||
#include "gatedevice.h"
|
|
||||||
#include "pinholev6.h"
|
|
||||||
|
|
||||||
+struct pinholev6 *ph_first;
|
|
||||||
+
|
|
||||||
static const char * add_rule_str = "ip6tables -I %s " //upnp forward chain
|
|
||||||
"-i %s " //input interface
|
|
||||||
"-o %s " //output interface
|
|
||||||
diff --git a/linuxigd2/src/pinholev6.h b/linuxigd2/src/pinholev6.h
|
|
||||||
index 295b9f9..353ae27 100644
|
|
||||||
--- a/linuxigd2/src/pinholev6.h
|
|
||||||
+++ b/linuxigd2/src/pinholev6.h
|
|
||||||
@@ -37,7 +37,7 @@ struct pinholev6 {
|
|
||||||
|
|
||||||
struct pinholev6 *next;
|
|
||||||
|
|
||||||
-} *ph_first;
|
|
||||||
+};
|
|
||||||
|
|
||||||
struct phv6_expirationEvent
|
|
||||||
{
|
|
||||||
diff --git a/linuxigd2/src/pmlist.c b/linuxigd2/src/pmlist.c
|
|
||||||
index 1b3fe05..95d0c61 100644
|
|
||||||
--- a/linuxigd2/src/pmlist.c
|
|
||||||
+++ b/linuxigd2/src/pmlist.c
|
|
||||||
@@ -41,6 +41,11 @@
|
|
||||||
#include "iptc.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+// Linked list for portmapping entries
|
|
||||||
+struct portMap *pmlist_Head;
|
|
||||||
+struct portMap *pmlist_Current;
|
|
||||||
+struct portMap *pmlist_Tail;
|
|
||||||
+
|
|
||||||
/**
|
|
||||||
* Create new portMap struct of rule to add iptables.
|
|
||||||
* portMap-struct is internal presentation of iptables rule in IGD.
|
|
||||||
diff --git a/linuxigd2/src/pmlist.h b/linuxigd2/src/pmlist.h
|
|
||||||
index 436d228..017500d 100644
|
|
||||||
--- a/linuxigd2/src/pmlist.h
|
|
||||||
+++ b/linuxigd2/src/pmlist.h
|
|
||||||
@@ -57,7 +57,7 @@ struct portMap
|
|
||||||
|
|
||||||
struct portMap* next;
|
|
||||||
struct portMap* prev;
|
|
||||||
-} *pmlist_Head, *pmlist_Tail, *pmlist_Current;
|
|
||||||
+};
|
|
||||||
|
|
||||||
//struct portMap* pmlist_NewNode(void);
|
|
||||||
struct portMap* pmlist_NewNode(int enabled, long int duration, char *remoteHost,
|
|
||||||
diff --git a/linuxigd2/src/wanipv6fw.h b/linuxigd2/src/wanipv6fw.h
|
|
||||||
index 55419fe..a50d267 100644
|
|
||||||
--- a/linuxigd2/src/wanipv6fw.h
|
|
||||||
+++ b/linuxigd2/src/wanipv6fw.h
|
|
||||||
@@ -46,9 +46,6 @@ extern "C" {
|
|
||||||
#define ERR_SRC_ADD_WILDCARD 708
|
|
||||||
#define ERR_NO_TRAFFIC 709
|
|
||||||
|
|
||||||
-char FirewallEnabled[2];
|
|
||||||
-char InboundPinholeAllowed[2];
|
|
||||||
-
|
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
int InitFirewallv6(void);
|
|
@ -18,7 +18,7 @@ config BR2_PACKAGE_IGD2_FOR_LINUX
|
|||||||
|
|
||||||
Please edit /etc/upnpd.conf before using upnpd!
|
Please edit /etc/upnpd.conf before using upnpd!
|
||||||
|
|
||||||
https://github.com/ffontaine/igd2-for-linux
|
https://github.com/Orange-OpenSource/igd2-for-linux
|
||||||
|
|
||||||
comment "igd2-for-linux needs a toolchain w/ threads, wchar"
|
comment "igd2-for-linux needs a toolchain w/ threads, wchar"
|
||||||
depends on BR2_USE_MMU
|
depends on BR2_USE_MMU
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
# Locally computed:
|
# Locally computed:
|
||||||
sha256 523545a26b0d662e9f6913bec2518df6e70f4d497935d88983d994336a1b0ea9 igd2-for-linux-1.2.tar.gz
|
sha256 e3fcc7c9da4ad1ca16227b3b1b3712bcfb3f6ec922685eee7ae4a76edfa32bb4 igd2-for-linux-2.0.tar.gz
|
||||||
sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 linuxigd2/doc/LICENSE
|
sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 linuxigd2/doc/LICENSE
|
||||||
|
sha256 c8b99423cad48bb44e2cf52a496361404290865eac259a82da6d1e4331ececb3 linuxigd2/src/threadutil/COPYING
|
||||||
|
@ -4,11 +4,12 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
IGD2_FOR_LINUX_VERSION = 1.2
|
IGD2_FOR_LINUX_VERSION = 2.0
|
||||||
IGD2_FOR_LINUX_SITE = $(call github,ffontaine,igd2-for-linux,v$(IGD2_FOR_LINUX_VERSION))
|
IGD2_FOR_LINUX_SITE = \
|
||||||
|
$(call github,Orange-OpenSource,igd2-for-linux,v$(IGD2_FOR_LINUX_VERSION))
|
||||||
|
|
||||||
IGD2_FOR_LINUX_LICENSE = GPL-2.0
|
IGD2_FOR_LINUX_LICENSE = GPL-2.0, BSD-3-Clause
|
||||||
IGD2_FOR_LINUX_LICENSE_FILES = linuxigd2/doc/LICENSE
|
IGD2_FOR_LINUX_LICENSE_FILES = linuxigd2/doc/LICENSE linuxigd2/src/threadutil/COPYING
|
||||||
|
|
||||||
IGD2_FOR_LINUX_DEPENDENCIES = libupnp
|
IGD2_FOR_LINUX_DEPENDENCIES = libupnp
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@ config BR2_PACKAGE_KODI_PVR_ZATTOO
|
|||||||
bool "kodi-pvr-zattoo"
|
bool "kodi-pvr-zattoo"
|
||||||
select BR2_PACKAGE_KODI_PLATFORM
|
select BR2_PACKAGE_KODI_PLATFORM
|
||||||
select BR2_PACKAGE_LIBPLATFORM
|
select BR2_PACKAGE_LIBPLATFORM
|
||||||
select BR2_PACKAGE_RAPIDXML
|
select BR2_PACKAGE_RAPIDJSON
|
||||||
select BR2_PACKAGE_TINYXML2
|
select BR2_PACKAGE_TINYXML2
|
||||||
help
|
help
|
||||||
Kodi PVR-Addon for Zattoo
|
Kodi PVR-Addon for Zattoo
|
||||||
|
@ -8,6 +8,6 @@ KODI_PVR_ZATTOO_VERSION = 18.1.21-Leia
|
|||||||
KODI_PVR_ZATTOO_SITE = $(call github,rbuehlma,pvr.zattoo,$(KODI_PVR_ZATTOO_VERSION))
|
KODI_PVR_ZATTOO_SITE = $(call github,rbuehlma,pvr.zattoo,$(KODI_PVR_ZATTOO_VERSION))
|
||||||
KODI_PVR_ZATTOO_LICENSE = GPL-2.0+
|
KODI_PVR_ZATTOO_LICENSE = GPL-2.0+
|
||||||
KODI_PVR_ZATTOO_LICENSE_FILES = debian/copyright
|
KODI_PVR_ZATTOO_LICENSE_FILES = debian/copyright
|
||||||
KODI_PVR_ZATTOO_DEPENDENCIES = kodi-platform libplatform rapidxml tinyxml2
|
KODI_PVR_ZATTOO_DEPENDENCIES = kodi-platform libplatform rapidjson tinyxml2
|
||||||
|
|
||||||
$(eval $(cmake-package))
|
$(eval $(cmake-package))
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
# Use the latest commit from release_90 branch.
|
# Use the latest commit from release_90 branch.
|
||||||
LIBCLC_VERSION = d1cbc92e2ceee59963f5c3a576382e5bba31f060
|
LIBCLC_VERSION = d1cbc92e2ceee59963f5c3a576382e5bba31f060
|
||||||
LIBCLC_SITE = https://git.llvm.org/git/libclc
|
LIBCLC_SITE = https://github.com/llvm-mirror/libclc
|
||||||
LIBCLC_SITE_METHOD = git
|
LIBCLC_SITE_METHOD = git
|
||||||
LIBCLC_LICENSE = Apache-2.0 with exceptions or MIT
|
LIBCLC_LICENSE = Apache-2.0 with exceptions or MIT
|
||||||
LIBCLC_LICENSE_FILES = LICENSE.TXT
|
LIBCLC_LICENSE_FILES = LICENSE.TXT
|
||||||
|
@ -3,6 +3,7 @@ config BR2_PACKAGE_LIBCPPRESTSDK
|
|||||||
depends on BR2_ENABLE_LOCALE
|
depends on BR2_ENABLE_LOCALE
|
||||||
depends on BR2_INSTALL_LIBSTDCPP
|
depends on BR2_INSTALL_LIBSTDCPP
|
||||||
depends on BR2_USE_WCHAR # boost
|
depends on BR2_USE_WCHAR # boost
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-atomic
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr
|
||||||
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
||||||
select BR2_PACKAGE_BOOST
|
select BR2_PACKAGE_BOOST
|
||||||
@ -23,6 +24,7 @@ config BR2_PACKAGE_LIBCPPRESTSDK
|
|||||||
https://github.com/Microsoft/cpprestsdk
|
https://github.com/Microsoft/cpprestsdk
|
||||||
|
|
||||||
comment "libcpprestsdk needs a toolchain w/ NPTL, C++, wchar, locale"
|
comment "libcpprestsdk needs a toolchain w/ NPTL, C++, wchar, locale"
|
||||||
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
||||||
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
|
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
|
||||||
!BR2_INSTALL_LIBSTDCPP || \
|
!BR2_INSTALL_LIBSTDCPP || \
|
||||||
!BR2_USE_WCHAR || !BR2_ENABLE_LOCALE
|
!BR2_USE_WCHAR || !BR2_ENABLE_LOCALE
|
||||||
|
@ -23,4 +23,8 @@ define LIBFUSE3_PERMISSIONS
|
|||||||
/usr/bin/fusermount3 f 4755 0 0 - - - - -
|
/usr/bin/fusermount3 f 4755 0 0 - - - - -
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define LIBFUSE3_LINUX_CONFIG_FIXUPS
|
||||||
|
$(call KCONFIG_ENABLE_OPT,CONFIG_FUSE_FS)
|
||||||
|
endef
|
||||||
|
|
||||||
$(eval $(meson-package))
|
$(eval $(meson-package))
|
||||||
|
@ -1,9 +1,12 @@
|
|||||||
config BR2_PACKAGE_LIBLLCP
|
config BR2_PACKAGE_LIBLLCP
|
||||||
bool "libllcp"
|
bool "libllcp"
|
||||||
depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
|
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||||
select BR2_PACKAGE_LIBNFC
|
select BR2_PACKAGE_LIBNFC
|
||||||
help
|
help
|
||||||
Library extending libnfc with support for Logical Link Control
|
Library extending libnfc with support for Logical Link Control
|
||||||
Protocol.
|
Protocol.
|
||||||
|
|
||||||
https://github.com/nfc-tools/libllcp
|
https://github.com/nfc-tools/libllcp
|
||||||
|
|
||||||
|
comment "libllcp needs a toolchain w/ threads"
|
||||||
|
depends on !BR2_TOOLCHAIN_HAS_THREADS
|
||||||
|
@ -12,6 +12,6 @@ LIBODB_MYSQL_INSTALL_STAGING = YES
|
|||||||
LIBODB_MYSQL_LICENSE = GPL-2.0
|
LIBODB_MYSQL_LICENSE = GPL-2.0
|
||||||
LIBODB_MYSQL_LICENSE_FILES = LICENSE
|
LIBODB_MYSQL_LICENSE_FILES = LICENSE
|
||||||
LIBODB_MYSQL_DEPENDENCIES = libodb mysql
|
LIBODB_MYSQL_DEPENDENCIES = libodb mysql
|
||||||
LIBODB_MYSQL_CONF_ENV = LIBS="$(shell $(STAGING_DIR)/usr/bin/mysql_config --libs)"
|
LIBODB_MYSQL_CONF_ENV = LIBS=`$(STAGING_DIR)/usr/bin/mysql_config --libs`
|
||||||
|
|
||||||
$(eval $(autotools-package))
|
$(eval $(autotools-package))
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
comment "libtorrent-rasterbar needs a toolchain w/ C++, threads, wchar, gcc >= 4.9"
|
comment "libtorrent-rasterbar needs a toolchain w/ C++, threads, wchar, gcc >= 4.9"
|
||||||
depends on BR2_TOOLCHAIN_SUPPORTS_VARIADIC_MI_THUNK
|
depends on BR2_TOOLCHAIN_SUPPORTS_VARIADIC_MI_THUNK
|
||||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
||||||
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \
|
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
|
||||||
!BR2_HOST_GCC_AT_LEAST_4_9 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
!BR2_USE_WCHAR || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
||||||
|
|
||||||
comment "libtorrent-rasterbar needs exception_ptr"
|
comment "libtorrent-rasterbar needs exception_ptr"
|
||||||
depends on BR2_TOOLCHAIN_SUPPORTS_VARIADIC_MI_THUNK
|
depends on BR2_TOOLCHAIN_SUPPORTS_VARIADIC_MI_THUNK
|
||||||
@ -11,7 +11,6 @@ comment "libtorrent-rasterbar needs exception_ptr"
|
|||||||
config BR2_PACKAGE_LIBTORRENT_RASTERBAR
|
config BR2_PACKAGE_LIBTORRENT_RASTERBAR
|
||||||
bool "libtorrent-rasterbar"
|
bool "libtorrent-rasterbar"
|
||||||
depends on BR2_INSTALL_LIBSTDCPP # boost
|
depends on BR2_INSTALL_LIBSTDCPP # boost
|
||||||
depends on BR2_HOST_GCC_AT_LEAST_4_9 # C++11
|
|
||||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11
|
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11
|
||||||
depends on BR2_TOOLCHAIN_HAS_THREADS # boost
|
depends on BR2_TOOLCHAIN_HAS_THREADS # boost
|
||||||
depends on BR2_TOOLCHAIN_SUPPORTS_VARIADIC_MI_THUNK
|
depends on BR2_TOOLCHAIN_SUPPORTS_VARIADIC_MI_THUNK
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
# Locally computed:
|
# Locally computed:
|
||||||
sha256 c5a300b86775435c076d58a79cc0d5a977d76027d2a7d721590729b7f369fa43 libupnp-1.6.25.tar.bz2
|
sha256 ecb23d4291968c8a7bdd4eb16fc2250dbacc16b354345a13342d67f571d35ceb libupnp-1.14.0.tar.bz2
|
||||||
sha256 0375955c8a79d6e8fa0792d45d00fc4e7710d7ac95bcbd27f9225a83f5c946fd LICENSE
|
sha256 c8b99423cad48bb44e2cf52a496361404290865eac259a82da6d1e4331ececb3 COPYING
|
||||||
|
@ -4,12 +4,24 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
LIBUPNP_VERSION = 1.6.25
|
LIBUPNP_VERSION = 1.14.0
|
||||||
LIBUPNP_SOURCE = libupnp-$(LIBUPNP_VERSION).tar.bz2
|
LIBUPNP_SOURCE = libupnp-$(LIBUPNP_VERSION).tar.bz2
|
||||||
LIBUPNP_SITE = http://downloads.sourceforge.net/project/pupnp/pupnp/libUPnP%20$(LIBUPNP_VERSION)
|
LIBUPNP_SITE = \
|
||||||
|
http://downloads.sourceforge.net/project/pupnp/pupnp/libupnp-$(LIBUPNP_VERSION)
|
||||||
LIBUPNP_CONF_ENV = ac_cv_lib_compat_ftime=no
|
LIBUPNP_CONF_ENV = ac_cv_lib_compat_ftime=no
|
||||||
LIBUPNP_INSTALL_STAGING = YES
|
LIBUPNP_INSTALL_STAGING = YES
|
||||||
LIBUPNP_LICENSE = BSD-3-Clause
|
LIBUPNP_LICENSE = BSD-3-Clause
|
||||||
LIBUPNP_LICENSE_FILES = LICENSE
|
LIBUPNP_LICENSE_FILES = COPYING
|
||||||
|
LIBUPNP_DEPENDENCIES = host-pkgconf
|
||||||
|
|
||||||
|
# Bind the internal miniserver socket with reuseaddr to allow clean restarts.
|
||||||
|
LIBUPNP_CONF_OPTS += --enable-reuseaddr
|
||||||
|
|
||||||
|
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
||||||
|
LIBUPNP_CONF_OPTS += --enable-open-ssl
|
||||||
|
LIBUPNP_DEPENDENCIES += openssl
|
||||||
|
else
|
||||||
|
LIBUPNP_CONF_OPTS += --disable-open-ssl
|
||||||
|
endif
|
||||||
|
|
||||||
$(eval $(autotools-package))
|
$(eval $(autotools-package))
|
||||||
|
@ -1,16 +0,0 @@
|
|||||||
config BR2_PACKAGE_LIBUPNP18
|
|
||||||
bool "libupnp18"
|
|
||||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
|
||||||
depends on !BR2_PACKAGE_LIBUPNP
|
|
||||||
help
|
|
||||||
The portable SDK for UPnP(tm) Devices (libupnp) provides
|
|
||||||
developers with an API and open source code for building
|
|
||||||
control points, devices, and bridges that are compliant with
|
|
||||||
Version 1.0 of the Universal Plug and Play Device Architecture
|
|
||||||
Specification
|
|
||||||
|
|
||||||
http://pupnp.sourceforge.net/
|
|
||||||
|
|
||||||
comment "libupnp18 needs a toolchain w/ threads"
|
|
||||||
depends on !BR2_PACKAGE_LIBUPNP
|
|
||||||
depends on !BR2_TOOLCHAIN_HAS_THREADS
|
|
@ -1,5 +0,0 @@
|
|||||||
# From https://sourceforge.net/projects/pupnp/files/pupnp/libupnp-1.8.7/libupnp-1.8.7.tar.bz2.sha1
|
|
||||||
sha1 2ea3011180c58b0584f0cb73cc8e685a0a1c4ec8 libupnp-1.8.7.tar.bz2
|
|
||||||
# Locally computed:
|
|
||||||
sha256 e38c69b2b67322e67cd53680db9b02c7c1f720a47a3cd626fd89d57d2dca93b8 libupnp-1.8.7.tar.bz2
|
|
||||||
sha256 c8b99423cad48bb44e2cf52a496361404290865eac259a82da6d1e4331ececb3 COPYING
|
|
@ -1,26 +0,0 @@
|
|||||||
################################################################################
|
|
||||||
#
|
|
||||||
# libupnp18
|
|
||||||
#
|
|
||||||
################################################################################
|
|
||||||
|
|
||||||
LIBUPNP18_VERSION = 1.8.7
|
|
||||||
LIBUPNP18_SOURCE = libupnp-$(LIBUPNP18_VERSION).tar.bz2
|
|
||||||
LIBUPNP18_SITE = http://downloads.sourceforge.net/project/pupnp/pupnp/libupnp-$(LIBUPNP18_VERSION)
|
|
||||||
LIBUPNP18_CONF_ENV = ac_cv_lib_compat_ftime=no
|
|
||||||
LIBUPNP18_INSTALL_STAGING = YES
|
|
||||||
LIBUPNP18_LICENSE = BSD-3-Clause
|
|
||||||
LIBUPNP18_LICENSE_FILES = COPYING
|
|
||||||
LIBUPNP18_DEPENDENCIES = host-pkgconf
|
|
||||||
|
|
||||||
# Bind the internal miniserver socket with reuseaddr to allow clean restarts.
|
|
||||||
LIBUPNP18_CONF_OPTS += --enable-reuseaddr
|
|
||||||
|
|
||||||
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
|
||||||
LIBUPNP18_CONF_OPTS += --enable-open-ssl
|
|
||||||
LIBUPNP18_DEPENDENCIES += openssl
|
|
||||||
else
|
|
||||||
LIBUPNP18_CONF_OPTS += --disable-open-ssl
|
|
||||||
endif
|
|
||||||
|
|
||||||
$(eval $(autotools-package))
|
|
@ -346,13 +346,13 @@ endchoice
|
|||||||
|
|
||||||
config BR2_DEFAULT_KERNEL_HEADERS
|
config BR2_DEFAULT_KERNEL_HEADERS
|
||||||
string
|
string
|
||||||
default "4.4.248" if BR2_KERNEL_HEADERS_4_4
|
default "4.4.253" if BR2_KERNEL_HEADERS_4_4
|
||||||
default "4.9.248" if BR2_KERNEL_HEADERS_4_9
|
default "4.9.253" if BR2_KERNEL_HEADERS_4_9
|
||||||
default "4.14.212" if BR2_KERNEL_HEADERS_4_14
|
default "4.14.217" if BR2_KERNEL_HEADERS_4_14
|
||||||
default "4.19.163" if BR2_KERNEL_HEADERS_4_19
|
default "4.19.171" if BR2_KERNEL_HEADERS_4_19
|
||||||
default "5.4.83" if BR2_KERNEL_HEADERS_5_4
|
default "5.4.93" if BR2_KERNEL_HEADERS_5_4
|
||||||
default "5.8.18" if BR2_KERNEL_HEADERS_5_8
|
default "5.8.18" if BR2_KERNEL_HEADERS_5_8
|
||||||
default "5.9.14" if BR2_KERNEL_HEADERS_5_9
|
default "5.9.16" if BR2_KERNEL_HEADERS_5_9
|
||||||
default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION
|
default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION
|
||||||
default "custom" if BR2_KERNEL_HEADERS_CUSTOM_TARBALL
|
default "custom" if BR2_KERNEL_HEADERS_CUSTOM_TARBALL
|
||||||
default BR2_KERNEL_HEADERS_CUSTOM_REPO_VERSION \
|
default BR2_KERNEL_HEADERS_CUSTOM_REPO_VERSION \
|
||||||
|
@ -17,8 +17,7 @@ LUAROCKS_CONFIG_FILE = $(LUAROCKS_CONFIG_DIR)/luarocks/config.lua
|
|||||||
HOST_LUAROCKS_CONFIG_FILE = $(LUAROCKS_CONFIG_DIR)/luarocks/host-config.lua
|
HOST_LUAROCKS_CONFIG_FILE = $(LUAROCKS_CONFIG_DIR)/luarocks/host-config.lua
|
||||||
|
|
||||||
define LUAROCKS_ADDON_EXTRACT
|
define LUAROCKS_ADDON_EXTRACT
|
||||||
mkdir $(@D)/src/luarocks/cmd/external
|
$(INSTALL) -D -m 0644 package/luarocks/buildroot.lua $(@D)/src/luarocks/cmd/external/buildroot.lua
|
||||||
cp package/luarocks/buildroot.lua $(@D)/src/luarocks/cmd/external/buildroot.lua
|
|
||||||
endef
|
endef
|
||||||
HOST_LUAROCKS_POST_EXTRACT_HOOKS += LUAROCKS_ADDON_EXTRACT
|
HOST_LUAROCKS_POST_EXTRACT_HOOKS += LUAROCKS_ADDON_EXTRACT
|
||||||
|
|
||||||
|
@ -390,7 +390,7 @@ config BR2_PACKAGE_MPD_TCP
|
|||||||
config BR2_PACKAGE_MPD_UPNP
|
config BR2_PACKAGE_MPD_UPNP
|
||||||
bool "UPnP"
|
bool "UPnP"
|
||||||
select BR2_PACKAGE_EXPAT
|
select BR2_PACKAGE_EXPAT
|
||||||
select BR2_PACKAGE_LIBUPNP18 if !BR2_PACKAGE_LIBUPNP
|
select BR2_PACKAGE_LIBUPNP
|
||||||
select BR2_PACKAGE_MPD_CURL
|
select BR2_PACKAGE_MPD_CURL
|
||||||
help
|
help
|
||||||
Enable MPD UPnP client support.
|
Enable MPD UPnP client support.
|
||||||
|
@ -304,7 +304,7 @@ endif
|
|||||||
ifeq ($(BR2_PACKAGE_MPD_UPNP),y)
|
ifeq ($(BR2_PACKAGE_MPD_UPNP),y)
|
||||||
MPD_DEPENDENCIES += \
|
MPD_DEPENDENCIES += \
|
||||||
expat \
|
expat \
|
||||||
$(if $(BR2_PACKAGE_LIBUPNP),libupnp,libupnp18)
|
libupnp
|
||||||
MPD_CONF_OPTS += -Dupnp=enabled
|
MPD_CONF_OPTS += -Dupnp=enabled
|
||||||
else
|
else
|
||||||
MPD_CONF_OPTS += -Dupnp=disabled
|
MPD_CONF_OPTS += -Dupnp=disabled
|
||||||
@ -333,6 +333,8 @@ endif
|
|||||||
|
|
||||||
define MPD_INSTALL_EXTRA_FILES
|
define MPD_INSTALL_EXTRA_FILES
|
||||||
$(INSTALL) -m 0644 -D package/mpd/mpd.conf $(TARGET_DIR)/etc/mpd.conf
|
$(INSTALL) -m 0644 -D package/mpd/mpd.conf $(TARGET_DIR)/etc/mpd.conf
|
||||||
|
mkdir -p $(TARGET_DIR)/var/lib/mpd/music
|
||||||
|
mkdir -p $(TARGET_DIR)/var/lib/mpd/playlists
|
||||||
endef
|
endef
|
||||||
|
|
||||||
MPD_POST_INSTALL_TARGET_HOOKS += MPD_INSTALL_EXTRA_FILES
|
MPD_POST_INSTALL_TARGET_HOOKS += MPD_INSTALL_EXTRA_FILES
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
From f55b1a37e2c43b67e7fd7f6a39afe2b2316b7cf9 Mon Sep 17 00:00:00 2001
|
From 922855e245c8bdadc0d24b5b706549b18fb5f079 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Egorenkov <egorenar-dev@posteo.net>
|
From: Alexander Egorenkov <egorenar-dev@posteo.net>
|
||||||
Date: Mon, 31 Aug 2020 19:05:46 +0200
|
Date: Sat, 21 Nov 2020 11:08:56 +0100
|
||||||
Subject: [PATCH] kpartx, libmultipath: use pkg-config to get path to
|
Subject: [PATCH] kpartx, libmultipath: use pkg-config to get path to
|
||||||
headers
|
headers
|
||||||
|
|
||||||
@ -10,8 +10,8 @@ to enable cross-compilation.
|
|||||||
Signed-off-by: Alexander Egorenkov <egorenar-dev@posteo.net>
|
Signed-off-by: Alexander Egorenkov <egorenar-dev@posteo.net>
|
||||||
---
|
---
|
||||||
kpartx/Makefile | 2 +-
|
kpartx/Makefile | 2 +-
|
||||||
libmultipath/Makefile | 8 ++++----
|
libmultipath/Makefile | 12 ++++++------
|
||||||
2 files changed, 5 insertions(+), 5 deletions(-)
|
2 files changed, 7 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
diff --git a/kpartx/Makefile b/kpartx/Makefile
|
diff --git a/kpartx/Makefile b/kpartx/Makefile
|
||||||
index 2906a984..29573890 100644
|
index 2906a984..29573890 100644
|
||||||
@ -27,10 +27,10 @@ index 2906a984..29573890 100644
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
diff --git a/libmultipath/Makefile b/libmultipath/Makefile
|
diff --git a/libmultipath/Makefile b/libmultipath/Makefile
|
||||||
index e5651e49..51ad0193 100644
|
index 62ba16e8..3ad9130c 100644
|
||||||
--- a/libmultipath/Makefile
|
--- a/libmultipath/Makefile
|
||||||
+++ b/libmultipath/Makefile
|
+++ b/libmultipath/Makefile
|
||||||
@@ -20,19 +20,19 @@ ifdef SYSTEMD
|
@@ -20,27 +20,27 @@ ifdef SYSTEMD
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -39,6 +39,11 @@ index e5651e49..51ad0193 100644
|
|||||||
CFLAGS += -DLIBDM_API_FLUSH -D_GNU_SOURCE
|
CFLAGS += -DLIBDM_API_FLUSH -D_GNU_SOURCE
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
-ifneq ($(call check_func,dm_task_get_errno,/usr/include/libdevmapper.h),0)
|
||||||
|
+ifneq ($(call check_func,dm_task_get_errno,$(shell $(PKG_CONFIG) --variable=includedir devmapper)/libdevmapper.h),0)
|
||||||
|
CFLAGS += -DLIBDM_API_GET_ERRNO
|
||||||
|
endif
|
||||||
|
|
||||||
-ifneq ($(call check_func,dm_task_set_cookie,/usr/include/libdevmapper.h),0)
|
-ifneq ($(call check_func,dm_task_set_cookie,/usr/include/libdevmapper.h),0)
|
||||||
+ifneq ($(call check_func,dm_task_set_cookie,$(shell $(PKG_CONFIG) --variable=includedir devmapper)/libdevmapper.h),0)
|
+ifneq ($(call check_func,dm_task_set_cookie,$(shell $(PKG_CONFIG) --variable=includedir devmapper)/libdevmapper.h),0)
|
||||||
CFLAGS += -DLIBDM_API_COOKIE
|
CFLAGS += -DLIBDM_API_COOKIE
|
||||||
@ -54,6 +59,11 @@ index e5651e49..51ad0193 100644
|
|||||||
CFLAGS += -DLIBDM_API_DEFERRED
|
CFLAGS += -DLIBDM_API_DEFERRED
|
||||||
endif
|
endif
|
||||||
|
|
||||||
--
|
-ifneq ($(call check_func,dm_hold_control_dev,/usr/include/libdevmapper.h),0)
|
||||||
2.28.0
|
+ifneq ($(call check_func,dm_hold_control_dev,$(shell $(PKG_CONFIG) --variable=includedir devmapper)/libdevmapper.h),0)
|
||||||
|
CFLAGS += -DLIBDM_API_HOLD_CONTROL
|
||||||
|
endif
|
||||||
|
|
||||||
|
--
|
||||||
|
2.29.2
|
||||||
|
|
||||||
|
@ -1,31 +0,0 @@
|
|||||||
From 48f537b9fef4f9db761466b8951fb63243f06602 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Christian Hesse <mail@eworm.de>
|
|
||||||
Date: Wed, 6 May 2020 09:35:47 +0200
|
|
||||||
Subject: [PATCH] libmpathpersist: depend on libmultipath
|
|
||||||
|
|
||||||
Without this the build fails with:
|
|
||||||
|
|
||||||
/usr/bin/ld: cannot find -lmultipath
|
|
||||||
|
|
||||||
Signed-off-by: Christian Hesse <mail@eworm.de>
|
|
||||||
Signed-off-by: Alexander Egorenkov <egorenar-dev@posteo.net>
|
|
||||||
---
|
|
||||||
Makefile | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/Makefile b/Makefile
|
|
||||||
index 1dee3680..ba1d73ba 100644
|
|
||||||
--- a/Makefile
|
|
||||||
+++ b/Makefile
|
|
||||||
@@ -28,7 +28,7 @@ all: $(BUILDDIRS)
|
|
||||||
$(BUILDDIRS):
|
|
||||||
$(MAKE) -C $@
|
|
||||||
|
|
||||||
-multipath multipathd mpathpersist: libmultipath
|
|
||||||
+libmpathpersist multipath multipathd mpathpersist: libmultipath
|
|
||||||
mpathpersist: libmpathpersist
|
|
||||||
|
|
||||||
$(BUILDDIRS.clean):
|
|
||||||
--
|
|
||||||
2.28.0
|
|
||||||
|
|
@ -1,41 +0,0 @@
|
|||||||
From 82129852d74785267f95ef598ac483ff9af38a55 Mon Sep 17 00:00:00 2001
|
|
||||||
From: "mail@eworm.de" <mail@eworm.de>
|
|
||||||
Date: Sat, 25 Apr 2020 21:11:13 +0200
|
|
||||||
Subject: [PATCH] fix boolean value with json-c 0.14
|
|
||||||
|
|
||||||
Upstream json-c removed the TRUE and FALSE defines in commit
|
|
||||||
0992aac61f8b087efd7094e9ac2b84fa9c040fcd.
|
|
||||||
|
|
||||||
[mwilck]: Use stdbool.h, and keep the log message unchanged.
|
|
||||||
|
|
||||||
Signed-off-by: Christian Hesse <mail@eworm.de>
|
|
||||||
Signed-off-by: Martin Wilck <mwilck@suse.com>
|
|
||||||
Signed-off-by: Alexander Egorenkov <egorenar-dev@posteo.net>
|
|
||||||
---
|
|
||||||
libdmmp/libdmmp_private.h | 3 ++-
|
|
||||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/libdmmp/libdmmp_private.h b/libdmmp/libdmmp_private.h
|
|
||||||
index ac85b63f..b1a6ddea 100644
|
|
||||||
--- a/libdmmp/libdmmp_private.h
|
|
||||||
+++ b/libdmmp/libdmmp_private.h
|
|
||||||
@@ -30,6 +30,7 @@
|
|
||||||
#include <stdint.h>
|
|
||||||
#include <string.h>
|
|
||||||
#include <assert.h>
|
|
||||||
+#include <stdbool.h>
|
|
||||||
#include <json.h>
|
|
||||||
|
|
||||||
#include "libdmmp/libdmmp.h"
|
|
||||||
@@ -82,7 +83,7 @@ static out_type func_name(struct dmmp_context *ctx, const char *var_name) { \
|
|
||||||
do { \
|
|
||||||
json_type j_type = json_type_null; \
|
|
||||||
json_object *j_obj_tmp = NULL; \
|
|
||||||
- if (json_object_object_get_ex(j_obj, key, &j_obj_tmp) != TRUE) { \
|
|
||||||
+ if (json_object_object_get_ex(j_obj, key, &j_obj_tmp) != true) { \
|
|
||||||
_error(ctx, "Invalid JSON output from multipathd IPC: " \
|
|
||||||
"key '%s' not found", key); \
|
|
||||||
rc = DMMP_ERR_IPC_ERROR; \
|
|
||||||
--
|
|
||||||
2.28.0
|
|
||||||
|
|
@ -1,34 +0,0 @@
|
|||||||
From ec2b935d2af33651f34de8bd6e428156005c2e3d Mon Sep 17 00:00:00 2001
|
|
||||||
From: Martin Wilck <mwilck@suse.com>
|
|
||||||
Date: Tue, 12 May 2020 22:13:51 +0200
|
|
||||||
Subject: [PATCH] multipath-tools Makefile: add install dependency
|
|
||||||
|
|
||||||
$(libdir) must exist before running "make install" on prioritizer, checker,
|
|
||||||
and foreign libraries.
|
|
||||||
|
|
||||||
Cc: Christian Hesse <mail@eworm.de>
|
|
||||||
|
|
||||||
Signed-off-by: Martin Wilck <mwilck@suse.com>
|
|
||||||
Signed-off-by: Alexander Egorenkov <egorenar-dev@posteo.net>
|
|
||||||
---
|
|
||||||
Makefile | 4 ++++
|
|
||||||
1 file changed, 4 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/Makefile b/Makefile
|
|
||||||
index fec3b73b..8bcaba66 100644
|
|
||||||
--- a/Makefile
|
|
||||||
+++ b/Makefile
|
|
||||||
@@ -32,6 +32,10 @@ libmultipath libdmmp: libmpathcmd
|
|
||||||
libmpathpersist multipath multipathd: libmultipath
|
|
||||||
mpathpersist multipathd: libmpathpersist
|
|
||||||
|
|
||||||
+libmultipath/checkers.install \
|
|
||||||
+ libmultipath/prioritizers.install \
|
|
||||||
+ libmultipath/foreign.install: libmultipath.install
|
|
||||||
+
|
|
||||||
$(BUILDDIRS.clean):
|
|
||||||
$(MAKE) -C ${@:.clean=} clean
|
|
||||||
|
|
||||||
--
|
|
||||||
2.28.0
|
|
||||||
|
|
@ -1,3 +1,7 @@
|
|||||||
# Locally computed:
|
# Locally computed:
|
||||||
sha256 ccd73bf67621161d9e42d1a770c3a7efff6e252433e8b8ed5f64a88cb5e7151d multipath-tools-0.8.4.tar.gz
|
sha256 0549ebe39fd3950ec49c16304da408c2bfe1b18d386d8e6647b5bcb60363c8aa multipath-tools-0.8.5.tar.gz
|
||||||
sha256 b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c COPYING
|
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSES/GPL-2.0
|
||||||
|
sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 LICENSES/GPL-3.0
|
||||||
|
sha256 b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c LICENSES/LGPL-2.0
|
||||||
|
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LICENSES/LGPL-2.1
|
||||||
|
sha256 afa9db94ff46f8d011251273f547ba958da6a0150a2b797b10fa8c8cfa74bbda README.md
|
||||||
|
@ -4,12 +4,28 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
MULTIPATH_TOOLS_VERSION = 0.8.4
|
MULTIPATH_TOOLS_VERSION = 0.8.5
|
||||||
MULTIPATH_TOOLS_SITE = $(call github,openSUSE,multipath-tools,$(MULTIPATH_TOOLS_VERSION))
|
MULTIPATH_TOOLS_SITE = $(call github,opensvc,multipath-tools,$(MULTIPATH_TOOLS_VERSION))
|
||||||
MULTIPATH_TOOLS_LICENSE = LGPL-2.0
|
|
||||||
MULTIPATH_TOOLS_LICENSE_FILES = COPYING
|
MULTIPATH_TOOLS_LICENSE = \
|
||||||
|
LGPL-2.0 (default), \
|
||||||
|
LGPL-2.1+ (libmpathcmd), \
|
||||||
|
GPL-2.0+ (libmultipath), \
|
||||||
|
GPL-3.0+ (libdmmp)
|
||||||
|
MULTIPATH_TOOLS_LICENSE_FILES = \
|
||||||
|
LICENSES/GPL-2.0 \
|
||||||
|
LICENSES/GPL-3.0 \
|
||||||
|
LICENSES/LGPL-2.0 \
|
||||||
|
LICENSES/LGPL-2.1 \
|
||||||
|
README.md
|
||||||
|
|
||||||
MULTIPATH_TOOLS_DEPENDENCIES = lvm2 json-c readline udev liburcu libaio host-pkgconf
|
MULTIPATH_TOOLS_DEPENDENCIES = lvm2 json-c readline udev liburcu libaio host-pkgconf
|
||||||
MULTIPATH_TOOLS_MAKE_OPTS = LIB="lib" RUN="run" OPTFLAGS="" STACKPROT=""
|
MULTIPATH_TOOLS_MAKE_OPTS = \
|
||||||
|
LIB="lib" \
|
||||||
|
RUN="run" \
|
||||||
|
OPTFLAGS="" \
|
||||||
|
STACKPROT="" \
|
||||||
|
WARNFLAGS=""
|
||||||
|
|
||||||
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
|
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
|
||||||
MULTIPATH_TOOLS_DEPENDENCIES += systemd
|
MULTIPATH_TOOLS_DEPENDENCIES += systemd
|
||||||
|
40
buildroot/package/mutt/0002-CVE-2021-3181-1.patch
Normal file
40
buildroot/package/mutt/0002-CVE-2021-3181-1.patch
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
From 4a2becbdb4422aaffe3ce314991b9d670b7adf17 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kevin McCarthy <kevin@8t8.us>
|
||||||
|
Date: Sun, 17 Jan 2021 10:40:37 -0800
|
||||||
|
Subject: [PATCH] Fix memory leak parsing group addresses without a display
|
||||||
|
name.
|
||||||
|
|
||||||
|
When there was a group address terminator with no previous
|
||||||
|
addresses (including the group display-name), an address would be
|
||||||
|
allocated but not attached to the address list.
|
||||||
|
|
||||||
|
Change this to only allocate when last exists.
|
||||||
|
|
||||||
|
It would be more correct to not allocate at all unless we are inside a
|
||||||
|
group list, but I will address that in a separate commit to master.
|
||||||
|
|
||||||
|
[Retrieved from:
|
||||||
|
https://git.launchpad.net/ubuntu/+source/mutt/plain/debian/patches/CVE-2021-3181-1.patch?h=import/1.14.6-1ubuntu0.2]
|
||||||
|
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
||||||
|
---
|
||||||
|
rfc822.c | 5 ++---
|
||||||
|
1 file changed, 2 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
Index: mutt-1.14.6/rfc822.c
|
||||||
|
===================================================================
|
||||||
|
--- mutt-1.14.6.orig/rfc822.c
|
||||||
|
+++ mutt-1.14.6/rfc822.c
|
||||||
|
@@ -491,11 +491,10 @@ ADDRESS *rfc822_parse_adrlist (ADDRESS *
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* add group terminator */
|
||||||
|
- cur = rfc822_new_address ();
|
||||||
|
if (last)
|
||||||
|
{
|
||||||
|
- last->next = cur;
|
||||||
|
- last = cur;
|
||||||
|
+ last->next = rfc822_new_address ();
|
||||||
|
+ last = last->next;
|
||||||
|
}
|
||||||
|
|
||||||
|
phraselen = 0;
|
53
buildroot/package/mutt/0003-CVE-2021-3181-2.patch
Normal file
53
buildroot/package/mutt/0003-CVE-2021-3181-2.patch
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
From 939b02b33ae29bc0d642570c1dcfd4b339037d19 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kevin McCarthy <kevin@8t8.us>
|
||||||
|
Date: Sun, 17 Jan 2021 10:53:19 -0800
|
||||||
|
Subject: [PATCH] Don't allocate a group terminator unless we are in a
|
||||||
|
group-list.
|
||||||
|
|
||||||
|
This will reduce memory allocation for garbage/spam address lists.
|
||||||
|
|
||||||
|
It also makes no sense to store a terminator when there wasn't a
|
||||||
|
display-name indicating the start of a group.
|
||||||
|
|
||||||
|
[Retrieved from:
|
||||||
|
https://git.launchpad.net/ubuntu/+source/mutt/plain/debian/patches/CVE-2021-3181-2.patch?h=import/1.14.6-1ubuntu0.2]
|
||||||
|
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
||||||
|
---
|
||||||
|
rfc822.c | 6 ++++--
|
||||||
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
Index: mutt-1.14.6/rfc822.c
|
||||||
|
===================================================================
|
||||||
|
--- mutt-1.14.6.orig/rfc822.c
|
||||||
|
+++ mutt-1.14.6/rfc822.c
|
||||||
|
@@ -378,7 +378,7 @@ add_addrspec (ADDRESS **top, ADDRESS **l
|
||||||
|
|
||||||
|
ADDRESS *rfc822_parse_adrlist (ADDRESS *top, const char *s)
|
||||||
|
{
|
||||||
|
- int ws_pending, nl;
|
||||||
|
+ int ws_pending, nl, in_group = 0;
|
||||||
|
#ifdef EXACT_ADDRESS
|
||||||
|
const char *begin;
|
||||||
|
#endif
|
||||||
|
@@ -455,6 +455,7 @@ ADDRESS *rfc822_parse_adrlist (ADDRESS *
|
||||||
|
terminate_buffer (phrase, phraselen);
|
||||||
|
cur->mailbox = safe_strdup (phrase);
|
||||||
|
cur->group = 1;
|
||||||
|
+ in_group = 1;
|
||||||
|
|
||||||
|
if (last)
|
||||||
|
last->next = cur;
|
||||||
|
@@ -491,11 +492,12 @@ ADDRESS *rfc822_parse_adrlist (ADDRESS *
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* add group terminator */
|
||||||
|
- if (last)
|
||||||
|
+ if (last && in_group)
|
||||||
|
{
|
||||||
|
last->next = rfc822_new_address ();
|
||||||
|
last = last->next;
|
||||||
|
}
|
||||||
|
+ in_group = 0;
|
||||||
|
|
||||||
|
phraselen = 0;
|
||||||
|
commentlen = 0;
|
30
buildroot/package/mutt/0004-CVE-2021-3181-3.patch
Normal file
30
buildroot/package/mutt/0004-CVE-2021-3181-3.patch
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
From d4305208955c5cdd9fe96dfa61e7c1e14e176a14 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kevin McCarthy <kevin@8t8.us>
|
||||||
|
Date: Sun, 17 Jan 2021 11:05:36 -0800
|
||||||
|
Subject: [PATCH] Add group terminator if it is left off.
|
||||||
|
|
||||||
|
If there is no terminating ";" add one to the list, to make the text
|
||||||
|
re-rendering correct.
|
||||||
|
|
||||||
|
[Retrieved from:
|
||||||
|
https://git.launchpad.net/ubuntu/+source/mutt/plain/debian/patches/CVE-2021-3181-3.patch?h=import/1.14.6-1ubuntu0.2]
|
||||||
|
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
||||||
|
---
|
||||||
|
rfc822.c | 4 ++++
|
||||||
|
1 file changed, 4 insertions(+)
|
||||||
|
|
||||||
|
Index: mutt-1.14.6/rfc822.c
|
||||||
|
===================================================================
|
||||||
|
--- mutt-1.14.6.orig/rfc822.c
|
||||||
|
+++ mutt-1.14.6/rfc822.c
|
||||||
|
@@ -560,6 +560,10 @@ ADDRESS *rfc822_parse_adrlist (ADDRESS *
|
||||||
|
last->val = mutt_substrdup (begin, s - nl < begin ? begin : s - nl);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+ /* add group terminator, if it was left off */
|
||||||
|
+ if (last && in_group)
|
||||||
|
+ last->next = rfc822_new_address ();
|
||||||
|
+
|
||||||
|
return top;
|
||||||
|
}
|
||||||
|
|
@ -14,6 +14,11 @@ MUTT_CONF_OPTS = --disable-doc --disable-smtp
|
|||||||
# 0001-Ensure-IMAP-connection-is-closed-after-a-connection-error.patch
|
# 0001-Ensure-IMAP-connection-is-closed-after-a-connection-error.patch
|
||||||
MUTT_IGNORE_CVES += CVE-2020-28896
|
MUTT_IGNORE_CVES += CVE-2020-28896
|
||||||
|
|
||||||
|
# 0002-CVE-2021-3181-1.patch
|
||||||
|
# 0003-CVE-2021-3181-2.patch
|
||||||
|
# 0004-CVE-2021-3181-3.patch
|
||||||
|
MUTT_IGNORE_CVES += CVE-2021-3181
|
||||||
|
|
||||||
ifeq ($(BR2_PACKAGE_LIBICONV),y)
|
ifeq ($(BR2_PACKAGE_LIBICONV),y)
|
||||||
MUTT_DEPENDENCIES += libiconv
|
MUTT_DEPENDENCIES += libiconv
|
||||||
MUTT_CONF_OPTS += --enable-iconv
|
MUTT_CONF_OPTS += --enable-iconv
|
||||||
|
@ -7,7 +7,6 @@ config BR2_PACKAGE_NFS_UTILS
|
|||||||
depends on BR2_TOOLCHAIN_HAS_THREADS # libtirpc, rpcbind
|
depends on BR2_TOOLCHAIN_HAS_THREADS # libtirpc, rpcbind
|
||||||
depends on BR2_USE_MMU # fork()
|
depends on BR2_USE_MMU # fork()
|
||||||
select BR2_PACKAGE_LIBTIRPC # IPv6 requires libtirpc
|
select BR2_PACKAGE_LIBTIRPC # IPv6 requires libtirpc
|
||||||
select BR2_PACKAGE_RPCBIND # runtime
|
|
||||||
help
|
help
|
||||||
The NFS Linux kernel server.
|
The NFS Linux kernel server.
|
||||||
|
|
||||||
@ -28,6 +27,7 @@ config BR2_PACKAGE_NFS_UTILS_RPC_LOCKD
|
|||||||
config BR2_PACKAGE_NFS_UTILS_RPC_NFSD
|
config BR2_PACKAGE_NFS_UTILS_RPC_NFSD
|
||||||
bool "rpc.nfsd"
|
bool "rpc.nfsd"
|
||||||
default y
|
default y
|
||||||
|
select BR2_PACKAGE_RPCBIND # runtime
|
||||||
help
|
help
|
||||||
NFS server
|
NFS server
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# From https://nodejs.org/dist/v12.19.1/SHASUMS256.txt
|
# From https://nodejs.org/dist/v12.20.1/SHASUMS256.txt
|
||||||
sha256 74077e0cc3db000a6f3cc685b220e609807b61adc8e7d8243e8511d478d1b17d node-v12.19.1.tar.xz
|
sha256 e00eee325d705b2bfa9929b7d061eb2315402d7e8548945eac9870bf84321853 node-v12.20.1.tar.xz
|
||||||
|
|
||||||
# Hash for license file
|
# Hash for license file
|
||||||
sha256 0dc03af08b95ea0c1e27f8fd591dee4383eb6f2c304db6eb6cdfb6751f7da87b LICENSE
|
sha256 221417a7ca275112a5ac54639b36ee3c5184e74631ea1e1b01b701293b655190 LICENSE
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
NODEJS_VERSION = 12.19.1
|
NODEJS_VERSION = 12.20.1
|
||||||
NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz
|
NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz
|
||||||
NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION)
|
NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION)
|
||||||
NODEJS_DEPENDENCIES = host-python host-nodejs c-ares \
|
NODEJS_DEPENDENCIES = host-python host-nodejs c-ares \
|
||||||
|
@ -0,0 +1,37 @@
|
|||||||
|
From 14f4c27e7c91f745a1dda9991b5deea3cbef2072 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||||
|
Date: Thu, 7 Jan 2021 14:09:50 +0100
|
||||||
|
Subject: [PATCH] Revert "Use INC_DIR for OPENJPEG_INCLUDE_DIRS (fixes
|
||||||
|
uclouvain#1174)"
|
||||||
|
|
||||||
|
This reverts commit 65586374d639cfc0104419992f9022174b412594 which
|
||||||
|
breaks cross-compilation of poppler under buildroot (because of
|
||||||
|
DESTDIR usage).
|
||||||
|
|
||||||
|
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||||
|
[Upstream status: https://github.com/uclouvain/openjpeg/pull/1321]
|
||||||
|
---
|
||||||
|
cmake/OpenJPEGConfig.cmake.in | 6 +++++-
|
||||||
|
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/cmake/OpenJPEGConfig.cmake.in b/cmake/OpenJPEGConfig.cmake.in
|
||||||
|
index 8a726697..2925108a 100644
|
||||||
|
--- a/cmake/OpenJPEGConfig.cmake.in
|
||||||
|
+++ b/cmake/OpenJPEGConfig.cmake.in
|
||||||
|
@@ -27,8 +27,12 @@ if(EXISTS ${SELF_DIR}/OpenJPEGTargets.cmake)
|
||||||
|
# This is an install tree
|
||||||
|
include(${SELF_DIR}/OpenJPEGTargets.cmake)
|
||||||
|
|
||||||
|
+ # We find a relative path from the PKG directory to header files.
|
||||||
|
+ set(PKG_DIR "@CMAKE_INSTALL_PREFIX@/@OPENJPEG_INSTALL_PACKAGE_DIR@")
|
||||||
|
set(INC_DIR "@CMAKE_INSTALL_PREFIX@/@OPENJPEG_INSTALL_INCLUDE_DIR@")
|
||||||
|
- get_filename_component(OPENJPEG_INCLUDE_DIRS "${INC_DIR}" ABSOLUTE)
|
||||||
|
+ file(RELATIVE_PATH PKG_TO_INC_RPATH "${PKG_DIR}" "${INC_DIR}")
|
||||||
|
+
|
||||||
|
+ get_filename_component(OPENJPEG_INCLUDE_DIRS "${SELF_DIR}/${PKG_TO_INC_RPATH}" ABSOLUTE)
|
||||||
|
|
||||||
|
else()
|
||||||
|
if(EXISTS ${SELF_DIR}/OpenJPEGExports.cmake)
|
||||||
|
--
|
||||||
|
2.29.2
|
||||||
|
|
@ -1,71 +0,0 @@
|
|||||||
From 21399f6b7d318fcdf4406d5e88723c4922202aa3 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Young Xiao <YangX92@hotmail.com>
|
|
||||||
Date: Sat, 16 Mar 2019 19:57:27 +0800
|
|
||||||
Subject: [PATCH] convertbmp: detect invalid file dimensions early
|
|
||||||
|
|
||||||
width/length dimensions read from bmp headers are not necessarily
|
|
||||||
valid. For instance they may have been maliciously set to very large
|
|
||||||
values with the intention to cause DoS (large memory allocation, stack
|
|
||||||
overflow). In these cases we want to detect the invalid size as early
|
|
||||||
as possible.
|
|
||||||
|
|
||||||
This commit introduces a counter which verifies that the number of
|
|
||||||
written bytes corresponds to the advertized width/length.
|
|
||||||
|
|
||||||
See commit 8ee335227bbc for details.
|
|
||||||
|
|
||||||
Signed-off-by: Young Xiao <YangX92@hotmail.com>
|
|
||||||
[Retrieved from:
|
|
||||||
https://github.com/uclouvain/openjpeg/commit/21399f6b7d318fcdf4406d5e88723c4922202aa3]
|
|
||||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
---
|
|
||||||
src/bin/jp2/convertbmp.c | 10 ++++++++--
|
|
||||||
1 file changed, 8 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/bin/jp2/convertbmp.c b/src/bin/jp2/convertbmp.c
|
|
||||||
index 0af52f816..ec34f535b 100644
|
|
||||||
--- a/src/bin/jp2/convertbmp.c
|
|
||||||
+++ b/src/bin/jp2/convertbmp.c
|
|
||||||
@@ -622,13 +622,13 @@ static OPJ_BOOL bmp_read_rle8_data(FILE* IN, OPJ_UINT8* pData,
|
|
||||||
static OPJ_BOOL bmp_read_rle4_data(FILE* IN, OPJ_UINT8* pData,
|
|
||||||
OPJ_UINT32 stride, OPJ_UINT32 width, OPJ_UINT32 height)
|
|
||||||
{
|
|
||||||
- OPJ_UINT32 x, y;
|
|
||||||
+ OPJ_UINT32 x, y, written;
|
|
||||||
OPJ_UINT8 *pix;
|
|
||||||
const OPJ_UINT8 *beyond;
|
|
||||||
|
|
||||||
beyond = pData + stride * height;
|
|
||||||
pix = pData;
|
|
||||||
- x = y = 0U;
|
|
||||||
+ x = y = written = 0U;
|
|
||||||
while (y < height) {
|
|
||||||
int c = getc(IN);
|
|
||||||
if (c == EOF) {
|
|
||||||
@@ -642,6 +642,7 @@ static OPJ_BOOL bmp_read_rle4_data(FILE* IN, OPJ_UINT8* pData,
|
|
||||||
for (j = 0; (j < c) && (x < width) &&
|
|
||||||
((OPJ_SIZE_T)pix < (OPJ_SIZE_T)beyond); j++, x++, pix++) {
|
|
||||||
*pix = (OPJ_UINT8)((j & 1) ? (c1 & 0x0fU) : ((c1 >> 4) & 0x0fU));
|
|
||||||
+ written++;
|
|
||||||
}
|
|
||||||
} else { /* absolute mode */
|
|
||||||
c = getc(IN);
|
|
||||||
@@ -671,6 +672,7 @@ static OPJ_BOOL bmp_read_rle4_data(FILE* IN, OPJ_UINT8* pData,
|
|
||||||
c1 = (OPJ_UINT8)getc(IN);
|
|
||||||
}
|
|
||||||
*pix = (OPJ_UINT8)((j & 1) ? (c1 & 0x0fU) : ((c1 >> 4) & 0x0fU));
|
|
||||||
+ written++;
|
|
||||||
}
|
|
||||||
if (((c & 3) == 1) || ((c & 3) == 2)) { /* skip padding byte */
|
|
||||||
getc(IN);
|
|
||||||
@@ -678,6 +680,10 @@ static OPJ_BOOL bmp_read_rle4_data(FILE* IN, OPJ_UINT8* pData,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} /* while(y < height) */
|
|
||||||
+ if (written != width * height) {
|
|
||||||
+ fprintf(stderr, "warning, image's actual size does not match advertized one\n");
|
|
||||||
+ return OPJ_FALSE;
|
|
||||||
+ }
|
|
||||||
return OPJ_TRUE;
|
|
||||||
}
|
|
||||||
|
|
@ -1,86 +0,0 @@
|
|||||||
From 3aef207f90e937d4931daf6d411e092f76d82e66 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Young Xiao <YangX92@hotmail.com>
|
|
||||||
Date: Sat, 16 Mar 2019 20:09:59 +0800
|
|
||||||
Subject: [PATCH] bmp_read_rle4_data(): avoid potential infinite loop
|
|
||||||
|
|
||||||
[Retrieved from:
|
|
||||||
https://github.com/uclouvain/openjpeg/commit/3aef207f90e937d4931daf6d411e092f76d82e66]
|
|
||||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
---
|
|
||||||
src/bin/jp2/convertbmp.c | 32 ++++++++++++++++++++++++++------
|
|
||||||
1 file changed, 26 insertions(+), 6 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/bin/jp2/convertbmp.c b/src/bin/jp2/convertbmp.c
|
|
||||||
index ec34f535b..2fc4e9bc4 100644
|
|
||||||
--- a/src/bin/jp2/convertbmp.c
|
|
||||||
+++ b/src/bin/jp2/convertbmp.c
|
|
||||||
@@ -632,12 +632,18 @@ static OPJ_BOOL bmp_read_rle4_data(FILE* IN, OPJ_UINT8* pData,
|
|
||||||
while (y < height) {
|
|
||||||
int c = getc(IN);
|
|
||||||
if (c == EOF) {
|
|
||||||
- break;
|
|
||||||
+ return OPJ_FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (c) { /* encoded mode */
|
|
||||||
- int j;
|
|
||||||
- OPJ_UINT8 c1 = (OPJ_UINT8)getc(IN);
|
|
||||||
+ int j, c1_int;
|
|
||||||
+ OPJ_UINT8 c1;
|
|
||||||
+
|
|
||||||
+ c1_int = getc(IN);
|
|
||||||
+ if (c1_int == EOF) {
|
|
||||||
+ return OPJ_FALSE;
|
|
||||||
+ }
|
|
||||||
+ c1 = (OPJ_UINT8)c1_int;
|
|
||||||
|
|
||||||
for (j = 0; (j < c) && (x < width) &&
|
|
||||||
((OPJ_SIZE_T)pix < (OPJ_SIZE_T)beyond); j++, x++, pix++) {
|
|
||||||
@@ -647,7 +653,7 @@ static OPJ_BOOL bmp_read_rle4_data(FILE* IN, OPJ_UINT8* pData,
|
|
||||||
} else { /* absolute mode */
|
|
||||||
c = getc(IN);
|
|
||||||
if (c == EOF) {
|
|
||||||
- break;
|
|
||||||
+ return OPJ_FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (c == 0x00) { /* EOL */
|
|
||||||
@@ -658,8 +664,14 @@ static OPJ_BOOL bmp_read_rle4_data(FILE* IN, OPJ_UINT8* pData,
|
|
||||||
break;
|
|
||||||
} else if (c == 0x02) { /* MOVE by dxdy */
|
|
||||||
c = getc(IN);
|
|
||||||
+ if (c == EOF) {
|
|
||||||
+ return OPJ_FALSE;
|
|
||||||
+ }
|
|
||||||
x += (OPJ_UINT32)c;
|
|
||||||
c = getc(IN);
|
|
||||||
+ if (c == EOF) {
|
|
||||||
+ return OPJ_FALSE;
|
|
||||||
+ }
|
|
||||||
y += (OPJ_UINT32)c;
|
|
||||||
pix = pData + y * stride + x;
|
|
||||||
} else { /* 03 .. 255 : absolute mode */
|
|
||||||
@@ -669,13 +681,21 @@ static OPJ_BOOL bmp_read_rle4_data(FILE* IN, OPJ_UINT8* pData,
|
|
||||||
for (j = 0; (j < c) && (x < width) &&
|
|
||||||
((OPJ_SIZE_T)pix < (OPJ_SIZE_T)beyond); j++, x++, pix++) {
|
|
||||||
if ((j & 1) == 0) {
|
|
||||||
- c1 = (OPJ_UINT8)getc(IN);
|
|
||||||
+ int c1_int;
|
|
||||||
+ c1_int = getc(IN);
|
|
||||||
+ if (c1_int == EOF) {
|
|
||||||
+ return OPJ_FALSE;
|
|
||||||
+ }
|
|
||||||
+ c1 = (OPJ_UINT8)c1_int;
|
|
||||||
}
|
|
||||||
*pix = (OPJ_UINT8)((j & 1) ? (c1 & 0x0fU) : ((c1 >> 4) & 0x0fU));
|
|
||||||
written++;
|
|
||||||
}
|
|
||||||
if (((c & 3) == 1) || ((c & 3) == 2)) { /* skip padding byte */
|
|
||||||
- getc(IN);
|
|
||||||
+ c = getc(IN);
|
|
||||||
+ if (c == EOF) {
|
|
||||||
+ return OPJ_FALSE;
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,32 +0,0 @@
|
|||||||
From 024b8407392cb0b82b04b58ed256094ed5799e04 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Even Rouault <even.rouault@spatialys.com>
|
|
||||||
Date: Sat, 11 Jan 2020 01:51:19 +0100
|
|
||||||
Subject: [PATCH] opj_j2k_update_image_dimensions(): reject images whose
|
|
||||||
coordinates are beyond INT_MAX (fixes #1228)
|
|
||||||
|
|
||||||
[Retrieved from:
|
|
||||||
https://github.com/uclouvain/openjpeg/commit/024b8407392cb0b82b04b58ed256094ed5799e04]
|
|
||||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
---
|
|
||||||
src/lib/openjp2/j2k.c | 8 ++++++++
|
|
||||||
1 file changed, 8 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/src/lib/openjp2/j2k.c b/src/lib/openjp2/j2k.c
|
|
||||||
index 14f6ff41a..922550eb1 100644
|
|
||||||
--- a/src/lib/openjp2/j2k.c
|
|
||||||
+++ b/src/lib/openjp2/j2k.c
|
|
||||||
@@ -9221,6 +9221,14 @@ static OPJ_BOOL opj_j2k_update_image_dimensions(opj_image_t* p_image,
|
|
||||||
l_img_comp = p_image->comps;
|
|
||||||
for (it_comp = 0; it_comp < p_image->numcomps; ++it_comp) {
|
|
||||||
OPJ_INT32 l_h, l_w;
|
|
||||||
+ if (p_image->x0 > (OPJ_UINT32)INT_MAX ||
|
|
||||||
+ p_image->y0 > (OPJ_UINT32)INT_MAX ||
|
|
||||||
+ p_image->x1 > (OPJ_UINT32)INT_MAX ||
|
|
||||||
+ p_image->y1 > (OPJ_UINT32)INT_MAX) {
|
|
||||||
+ opj_event_msg(p_manager, EVT_ERROR,
|
|
||||||
+ "Image coordinates above INT_MAX are not supported\n");
|
|
||||||
+ return OPJ_FALSE;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
l_img_comp->x0 = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)p_image->x0,
|
|
||||||
(OPJ_INT32)l_img_comp->dx);
|
|
@ -1,46 +0,0 @@
|
|||||||
From 05f9b91e60debda0e83977e5e63b2e66486f7074 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Even Rouault <even.rouault@spatialys.com>
|
|
||||||
Date: Thu, 30 Jan 2020 00:59:57 +0100
|
|
||||||
Subject: [PATCH] opj_tcd_init_tile(): avoid integer overflow
|
|
||||||
|
|
||||||
That could lead to later assertion failures.
|
|
||||||
|
|
||||||
Fixes #1231 / CVE-2020-8112
|
|
||||||
[Retrieved from:
|
|
||||||
https://github.com/uclouvain/openjpeg/commit/05f9b91e60debda0e83977e5e63b2e66486f7074]
|
|
||||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
---
|
|
||||||
src/lib/openjp2/tcd.c | 20 ++++++++++++++++++--
|
|
||||||
1 file changed, 18 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/lib/openjp2/tcd.c b/src/lib/openjp2/tcd.c
|
|
||||||
index deecc4dff..aa419030a 100644
|
|
||||||
--- a/src/lib/openjp2/tcd.c
|
|
||||||
+++ b/src/lib/openjp2/tcd.c
|
|
||||||
@@ -905,8 +905,24 @@ static INLINE OPJ_BOOL opj_tcd_init_tile(opj_tcd_t *p_tcd, OPJ_UINT32 p_tile_no,
|
|
||||||
/* p. 64, B.6, ISO/IEC FDIS15444-1 : 2000 (18 august 2000) */
|
|
||||||
l_tl_prc_x_start = opj_int_floordivpow2(l_res->x0, (OPJ_INT32)l_pdx) << l_pdx;
|
|
||||||
l_tl_prc_y_start = opj_int_floordivpow2(l_res->y0, (OPJ_INT32)l_pdy) << l_pdy;
|
|
||||||
- l_br_prc_x_end = opj_int_ceildivpow2(l_res->x1, (OPJ_INT32)l_pdx) << l_pdx;
|
|
||||||
- l_br_prc_y_end = opj_int_ceildivpow2(l_res->y1, (OPJ_INT32)l_pdy) << l_pdy;
|
|
||||||
+ {
|
|
||||||
+ OPJ_UINT32 tmp = ((OPJ_UINT32)opj_int_ceildivpow2(l_res->x1,
|
|
||||||
+ (OPJ_INT32)l_pdx)) << l_pdx;
|
|
||||||
+ if (tmp > (OPJ_UINT32)INT_MAX) {
|
|
||||||
+ opj_event_msg(manager, EVT_ERROR, "Integer overflow\n");
|
|
||||||
+ return OPJ_FALSE;
|
|
||||||
+ }
|
|
||||||
+ l_br_prc_x_end = (OPJ_INT32)tmp;
|
|
||||||
+ }
|
|
||||||
+ {
|
|
||||||
+ OPJ_UINT32 tmp = ((OPJ_UINT32)opj_int_ceildivpow2(l_res->y1,
|
|
||||||
+ (OPJ_INT32)l_pdy)) << l_pdy;
|
|
||||||
+ if (tmp > (OPJ_UINT32)INT_MAX) {
|
|
||||||
+ opj_event_msg(manager, EVT_ERROR, "Integer overflow\n");
|
|
||||||
+ return OPJ_FALSE;
|
|
||||||
+ }
|
|
||||||
+ l_br_prc_y_end = (OPJ_INT32)tmp;
|
|
||||||
+ }
|
|
||||||
/*fprintf(stderr, "\t\t\tprc_x_start=%d, prc_y_start=%d, br_prc_x_end=%d, br_prc_y_end=%d \n", l_tl_prc_x_start, l_tl_prc_y_start, l_br_prc_x_end ,l_br_prc_y_end );*/
|
|
||||||
|
|
||||||
l_res->pw = (l_res->x0 == l_res->x1) ? 0U : (OPJ_UINT32)((
|
|
@ -1,43 +0,0 @@
|
|||||||
From e8e258ab049240c2dd1f1051b4e773b21e2d3dc0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Even Rouault <even.rouault@spatialys.com>
|
|
||||||
Date: Sun, 28 Jun 2020 14:19:59 +0200
|
|
||||||
Subject: [PATCH] opj_decompress: fix double-free on input directory with mix
|
|
||||||
of valid and invalid images (CVE-2020-15389)
|
|
||||||
|
|
||||||
Fixes #1261
|
|
||||||
|
|
||||||
Credits to @Ruia-ruia for reporting and analysis.
|
|
||||||
|
|
||||||
[Retrieved from:
|
|
||||||
https://github.com/uclouvain/openjpeg/commit/e8e258ab049240c2dd1f1051b4e773b21e2d3dc0]
|
|
||||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
||||||
---
|
|
||||||
src/bin/jp2/opj_decompress.c | 8 ++++----
|
|
||||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/bin/jp2/opj_decompress.c b/src/bin/jp2/opj_decompress.c
|
|
||||||
index 7eeb0952f..2634907f0 100644
|
|
||||||
--- a/src/bin/jp2/opj_decompress.c
|
|
||||||
+++ b/src/bin/jp2/opj_decompress.c
|
|
||||||
@@ -1316,10 +1316,6 @@ static opj_image_t* upsample_image_components(opj_image_t* original)
|
|
||||||
int main(int argc, char **argv)
|
|
||||||
{
|
|
||||||
opj_decompress_parameters parameters; /* decompression parameters */
|
|
||||||
- opj_image_t* image = NULL;
|
|
||||||
- opj_stream_t *l_stream = NULL; /* Stream */
|
|
||||||
- opj_codec_t* l_codec = NULL; /* Handle to a decompressor */
|
|
||||||
- opj_codestream_index_t* cstr_index = NULL;
|
|
||||||
|
|
||||||
OPJ_INT32 num_images, imageno;
|
|
||||||
img_fol_t img_fol;
|
|
||||||
@@ -1393,6 +1389,10 @@ int main(int argc, char **argv)
|
|
||||||
|
|
||||||
/*Decoding image one by one*/
|
|
||||||
for (imageno = 0; imageno < num_images ; imageno++) {
|
|
||||||
+ opj_image_t* image = NULL;
|
|
||||||
+ opj_stream_t *l_stream = NULL; /* Stream */
|
|
||||||
+ opj_codec_t* l_codec = NULL; /* Handle to a decompressor */
|
|
||||||
+ opj_codestream_index_t* cstr_index = NULL;
|
|
||||||
|
|
||||||
if (!parameters.quiet) {
|
|
||||||
fprintf(stderr, "\n");
|
|
@ -1,3 +1,3 @@
|
|||||||
# Locally computed:
|
# Locally computed:
|
||||||
sha256 63f5a4713ecafc86de51bfad89cc07bb788e9bba24ebbf0c4ca637621aadb6a9 openjpeg-2.3.1.tar.gz
|
sha256 8702ba68b442657f11aaeb2b338443ca8d5fb95b0d845757968a7be31ef7f16d openjpeg-2.4.0.tar.gz
|
||||||
sha256 a6af136f3e15038a666b61f376612a07d9a4e48cb7c01adbf3e33b3f14ab49b6 LICENSE
|
sha256 a6af136f3e15038a666b61f376612a07d9a4e48cb7c01adbf3e33b3f14ab49b6 LICENSE
|
||||||
|
@ -4,25 +4,12 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
OPENJPEG_VERSION = 2.3.1
|
OPENJPEG_VERSION = 2.4.0
|
||||||
OPENJPEG_SITE = $(call github,uclouvain,openjpeg,v$(OPENJPEG_VERSION))
|
OPENJPEG_SITE = $(call github,uclouvain,openjpeg,v$(OPENJPEG_VERSION))
|
||||||
OPENJPEG_LICENSE = BSD-2-Clause
|
OPENJPEG_LICENSE = BSD-2-Clause
|
||||||
OPENJPEG_LICENSE_FILES = LICENSE
|
OPENJPEG_LICENSE_FILES = LICENSE
|
||||||
OPENJPEG_INSTALL_STAGING = YES
|
OPENJPEG_INSTALL_STAGING = YES
|
||||||
|
|
||||||
# 0004-convertbmp-detect-invalid-file-dimensions-early.patch
|
|
||||||
# 0005-bmp_read_rle4_data-avoid-potential-infinite-loop.patch
|
|
||||||
OPENJPEG_IGNORE_CVES += CVE-2019-12973
|
|
||||||
|
|
||||||
# 0006-opj_j2k_update_image_dimensions-reject-images-whose-coordinates.patch
|
|
||||||
OPENJPEG_IGNORE_CVES += CVE-2020-6851
|
|
||||||
|
|
||||||
# 0007-opj_tcd_init_tile-avoid-integer-overflow.patch
|
|
||||||
OPENJPEG_IGNORE_CVES += CVE-2020-8112
|
|
||||||
|
|
||||||
# 0008-opj_decompress-fix-double-free-on-input-directory-with-mix-of-valid.patch
|
|
||||||
OPENJPEG_IGNORE_CVES += CVE-2020-15389
|
|
||||||
|
|
||||||
OPENJPEG_DEPENDENCIES += $(if $(BR2_PACKAGE_ZLIB),zlib)
|
OPENJPEG_DEPENDENCIES += $(if $(BR2_PACKAGE_ZLIB),zlib)
|
||||||
OPENJPEG_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBPNG),libpng)
|
OPENJPEG_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBPNG),libpng)
|
||||||
OPENJPEG_DEPENDENCIES += $(if $(BR2_PACKAGE_TIFF),tiff)
|
OPENJPEG_DEPENDENCIES += $(if $(BR2_PACKAGE_TIFF),tiff)
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# From https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.56.md5
|
# From https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.57.md5
|
||||||
md5 82a7dcf7aeaf95fdad16017c0ed9983a openldap-2.4.56.tgz
|
md5 e3349456c3a66e5e6155be7ddc3f042c openldap-2.4.57.tgz
|
||||||
# From https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.56.sha1
|
# From https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.57.sha1
|
||||||
sha1 4c617b87bd50ef8d071e7deb7525af79b08d4910 openldap-2.4.56.tgz
|
sha1 1cffa70a3ea8545948041fd113f8f53bc24d6d87 openldap-2.4.57.tgz
|
||||||
# Locally computed
|
# Locally computed
|
||||||
sha256 25520e0363c93f3bcb89802a4aa3db33046206039436e0c7c9262db5a61115e0 openldap-2.4.56.tgz
|
sha256 c7ba47e1e6ecb5b436f3d43281df57abeffa99262141aec822628bc220f6b45a openldap-2.4.57.tgz
|
||||||
sha256 310fe25c858a9515fc8c8d7d1f24a67c9496f84a91e0a0e41ea9975b1371e569 LICENSE
|
sha256 310fe25c858a9515fc8c8d7d1f24a67c9496f84a91e0a0e41ea9975b1371e569 LICENSE
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
OPENLDAP_VERSION = 2.4.56
|
OPENLDAP_VERSION = 2.4.57
|
||||||
OPENLDAP_SOURCE = openldap-$(OPENLDAP_VERSION).tgz
|
OPENLDAP_SOURCE = openldap-$(OPENLDAP_VERSION).tgz
|
||||||
OPENLDAP_SITE = https://www.openldap.org/software/download/OpenLDAP/openldap-release
|
OPENLDAP_SITE = https://www.openldap.org/software/download/OpenLDAP/openldap-release
|
||||||
OPENLDAP_LICENSE = OpenLDAP Public License
|
OPENLDAP_LICENSE = OpenLDAP Public License
|
||||||
|
@ -22,4 +22,6 @@ else ifeq ($(BR2_SHARED_LIBS),y)
|
|||||||
OPENTRACING_CPP_CONF_OPTS += -DBUILD_STATIC_LIBS=OFF
|
OPENTRACING_CPP_CONF_OPTS += -DBUILD_STATIC_LIBS=OFF
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
OPENTRACING_CPP_CONF_OPTS += -DENABLE_LINTING=OFF
|
||||||
|
|
||||||
$(eval $(cmake-package))
|
$(eval $(cmake-package))
|
||||||
|
@ -72,11 +72,6 @@ else
|
|||||||
OPENVPN_CONF_OPTS += --disable-systemd
|
OPENVPN_CONF_OPTS += --disable-systemd
|
||||||
endif
|
endif
|
||||||
|
|
||||||
define OPENVPN_INSTALL_TARGET_CMDS
|
|
||||||
$(INSTALL) -m 755 $(@D)/src/openvpn/openvpn \
|
|
||||||
$(TARGET_DIR)/usr/sbin/openvpn
|
|
||||||
endef
|
|
||||||
|
|
||||||
define OPENVPN_INSTALL_INIT_SYSV
|
define OPENVPN_INSTALL_INIT_SYSV
|
||||||
$(INSTALL) -m 755 -D package/openvpn/S60openvpn \
|
$(INSTALL) -m 755 -D package/openvpn/S60openvpn \
|
||||||
$(TARGET_DIR)/etc/init.d/S60openvpn
|
$(TARGET_DIR)/etc/init.d/S60openvpn
|
||||||
|
@ -0,0 +1,28 @@
|
|||||||
|
From 507c394cfcf4edffc5e4450c5d737e545c26b857 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Daniel Engberg <daniel.engberg.lists@pyret.net>
|
||||||
|
Date: Sat, 12 Dec 2020 18:56:38 +0100
|
||||||
|
Subject: [PATCH] p11-kit/lists.c: Add stdint.h to fix compilation
|
||||||
|
|
||||||
|
Add stdint.h otherwise compilation fails on FreeBSD 13-CURRENT with "use of undeclared identifier 'SIZE_MAX'"
|
||||||
|
|
||||||
|
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
|
||||||
|
|
||||||
|
[Retrieved from:
|
||||||
|
https://github.com/p11-glue/p11-kit/commit/507c394cfcf4edffc5e4450c5d737e545c26b857]
|
||||||
|
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||||
|
---
|
||||||
|
p11-kit/lists.c | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/p11-kit/lists.c b/p11-kit/lists.c
|
||||||
|
index 365a6d89..1d9062be 100644
|
||||||
|
--- a/p11-kit/lists.c
|
||||||
|
+++ b/p11-kit/lists.c
|
||||||
|
@@ -39,6 +39,7 @@
|
||||||
|
|
||||||
|
#include <assert.h>
|
||||||
|
#include <ctype.h>
|
||||||
|
+#include <stdint.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
@ -3,8 +3,6 @@ config BR2_PACKAGE_P11_KIT
|
|||||||
depends on !BR2_STATIC_LIBS
|
depends on !BR2_STATIC_LIBS
|
||||||
depends on BR2_USE_MMU
|
depends on BR2_USE_MMU
|
||||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||||
select BR2_PACKAGE_LIBFFI
|
|
||||||
select BR2_PACKAGE_LIBTASN1
|
|
||||||
help
|
help
|
||||||
Provides a way to load and enumerate PKCS#11 modules.
|
Provides a way to load and enumerate PKCS#11 modules.
|
||||||
Provides a standard configuration setup for installing PKCS#11
|
Provides a standard configuration setup for installing PKCS#11
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Locally calculated after checking pgp signature
|
# Locally calculated after checking pgp signature
|
||||||
sha256 4b34e92ae36fa493e0d94366c767f06d5f9951e3d8581d10fd935d738db1574d p11-kit-0.23.16.1.tar.gz
|
sha256 8a8f40153dd5a3f8e7c03e641f8db400133fb2a6a9ab2aee1b6d0cb0495ec6b6 p11-kit-0.23.22.tar.xz
|
||||||
# Locally computed
|
# Locally computed
|
||||||
sha256 2e1ba993904df807a10c3eda1e5c272338edc35674b679773a8b3ad460731054 COPYING
|
sha256 2e1ba993904df807a10c3eda1e5c272338edc35674b679773a8b3ad460731054 COPYING
|
||||||
|
@ -4,9 +4,9 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
P11_KIT_VERSION = 0.23.16.1
|
P11_KIT_VERSION = 0.23.22
|
||||||
|
P11_KIT_SOURCE = p11-kit-$(P11_KIT_VERSION).tar.xz
|
||||||
P11_KIT_SITE = https://github.com/p11-glue/p11-kit/releases/download/$(P11_KIT_VERSION)
|
P11_KIT_SITE = https://github.com/p11-glue/p11-kit/releases/download/$(P11_KIT_VERSION)
|
||||||
P11_KIT_DEPENDENCIES = host-pkgconf libffi libtasn1
|
|
||||||
P11_KIT_INSTALL_STAGING = YES
|
P11_KIT_INSTALL_STAGING = YES
|
||||||
P11_KIT_CONF_OPTS = --disable-static
|
P11_KIT_CONF_OPTS = --disable-static
|
||||||
P11_KIT_CONF_ENV = ac_cv_have_decl_program_invocation_short_name=yes \
|
P11_KIT_CONF_ENV = ac_cv_have_decl_program_invocation_short_name=yes \
|
||||||
@ -14,10 +14,27 @@ P11_KIT_CONF_ENV = ac_cv_have_decl_program_invocation_short_name=yes \
|
|||||||
P11_KIT_LICENSE = BSD-3-Clause
|
P11_KIT_LICENSE = BSD-3-Clause
|
||||||
P11_KIT_LICENSE_FILES = COPYING
|
P11_KIT_LICENSE_FILES = COPYING
|
||||||
|
|
||||||
|
ifeq ($(BR2_PACKAGE_LIBFFI),y)
|
||||||
|
P11_KIT_DEPENDENCIES += host-pkgconf libffi
|
||||||
|
P11_KIT_CONF_OPTS += --with-libffi
|
||||||
|
else
|
||||||
|
P11_KIT_CONF_OPTS += --without-libffi
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(BR2_PACKAGE_LIBTASN1),y)
|
||||||
|
P11_KIT_DEPENDENCIES += host-pkgconf libtasn1
|
||||||
|
P11_KIT_CONF_OPTS += \
|
||||||
|
--enable-trust-module \
|
||||||
|
--with-libtasn1
|
||||||
ifeq ($(BR2_PACKAGE_CA_CERTIFICATES),y)
|
ifeq ($(BR2_PACKAGE_CA_CERTIFICATES),y)
|
||||||
P11_KIT_CONF_OPTS += --with-trust-paths=/etc/ssl/certs/ca-certificates.crt
|
P11_KIT_CONF_OPTS += --with-trust-paths=/etc/ssl/certs/ca-certificates.crt
|
||||||
else
|
else
|
||||||
P11_KIT_CONF_OPTS += --without-trust-paths
|
P11_KIT_CONF_OPTS += --without-trust-paths
|
||||||
endif
|
endif
|
||||||
|
else
|
||||||
|
P11_KIT_CONF_OPTS += \
|
||||||
|
--disable-trust-module \
|
||||||
|
--without-libtasn1
|
||||||
|
endif
|
||||||
|
|
||||||
$(eval $(autotools-package))
|
$(eval $(autotools-package))
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Locally computed:
|
# Locally computed:
|
||||||
sha256 19e9f04ddf244ab8c937d7e631ca15cedce7df95712c554107600e80efdaf277 paho-mqtt-c-1.3.7.tar.gz
|
sha256 4920ff685344cdb0272568bc4414dcf48fcdfc4a98c78b1f3ca49c38417bf391 paho-mqtt-c-1.3.8.tar.gz
|
||||||
sha256 83bbba033dc985487e321b6dfde111772affb73460be48726299fed3da684b1c edl-v10
|
sha256 83bbba033dc985487e321b6dfde111772affb73460be48726299fed3da684b1c edl-v10
|
||||||
sha256 0becf16567beb77fa252b7664631dd177c8f9a1889e48995b45379c7130e5303 epl-v20
|
sha256 0becf16567beb77fa252b7664631dd177c8f9a1889e48995b45379c7130e5303 epl-v20
|
||||||
sha256 bc0f3f447097eb82a29ad6c2f4929572bb548b6bd4c9e38fde1bf131a771b7a0 LICENSE
|
sha256 bc0f3f447097eb82a29ad6c2f4929572bb548b6bd4c9e38fde1bf131a771b7a0 LICENSE
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
PAHO_MQTT_C_VERSION = 1.3.7
|
PAHO_MQTT_C_VERSION = 1.3.8
|
||||||
PAHO_MQTT_C_SITE = $(call github,eclipse,paho.mqtt.c,v$(PAHO_MQTT_C_VERSION))
|
PAHO_MQTT_C_SITE = $(call github,eclipse,paho.mqtt.c,v$(PAHO_MQTT_C_VERSION))
|
||||||
PAHO_MQTT_C_LICENSE = EPL-2.0 or BSD-3-Clause
|
PAHO_MQTT_C_LICENSE = EPL-2.0 or BSD-3-Clause
|
||||||
PAHO_MQTT_C_LICENSE_FILES = epl-v20 edl-v10 LICENSE
|
PAHO_MQTT_C_LICENSE_FILES = epl-v20 edl-v10 LICENSE
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user