Compare commits
93 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3815d578c5 | ||
|
|
ca6a6837e1 | ||
|
|
dd0b07d51b | ||
|
|
ffb96d7c7a | ||
|
|
2b8badc39b | ||
|
|
1f07498068 | ||
|
|
f60abbcef8 | ||
|
|
8bd61791c2 | ||
|
|
8ec52fe782 | ||
|
|
b2f49a3e96 | ||
|
|
8c5f3cf8d5 | ||
|
|
783b1d6169 | ||
|
|
0d543e1cb4 | ||
|
|
c39f683102 | ||
|
|
5c86cfb222 | ||
|
|
3e88e16e03 | ||
|
|
83f1e6e201 | ||
|
|
9089ab75c6 | ||
|
|
bd9f6cf0f2 | ||
|
|
0afaf231cd | ||
|
|
26163a401f | ||
|
|
361b299cee | ||
|
|
a432163e47 | ||
|
|
68aa6844e7 | ||
|
|
9e5112171f | ||
|
|
4d0b51a71a | ||
|
|
0eaf6d7205 | ||
|
|
1648e43e29 | ||
|
|
56a065c54c | ||
|
|
fb87457897 | ||
|
|
63e2499f18 | ||
|
|
f47266b842 | ||
|
|
b3ba70b20d | ||
|
|
c0839ab823 | ||
|
|
e318e5c54b | ||
|
|
cb7599133a | ||
|
|
81da992063 | ||
|
|
9bf97d2c2a | ||
|
|
fae66b0aa2 | ||
|
|
c2df4231bf | ||
|
|
ff65fe7676 | ||
|
|
178d9177e7 | ||
|
|
01fb2a1f4f | ||
|
|
951f2adc9d | ||
|
|
50fc5c5153 | ||
|
|
62ae5b3f16 | ||
|
|
f07edffbe8 | ||
|
|
49ffee7310 | ||
|
|
d7ffdf80d3 | ||
|
|
41a2521221 | ||
|
|
c5b3d6e5fa | ||
|
|
771fb18d2a | ||
|
|
1fdc97bf1a | ||
|
|
283fc0ea2e | ||
|
|
b4bc8f0791 | ||
|
|
d023e7ad22 | ||
|
|
b8dd91d81c | ||
|
|
54664369d1 | ||
|
|
357fd1b657 | ||
|
|
41d3983526 | ||
|
|
31c0a801f5 | ||
|
|
6b0e4d82c3 | ||
|
|
bc018bafdc | ||
|
|
333baf2f05 | ||
|
|
ba59edc803 | ||
|
|
9b24a8272b | ||
|
|
d11ef1e7a4 | ||
|
|
ccbd64ef13 | ||
|
|
e47a5d24b9 | ||
|
|
21527b95eb | ||
|
|
f0a67991c0 | ||
|
|
e66ca1741d | ||
|
|
5300d0736a | ||
|
|
936fda5040 | ||
|
|
9e8f32b159 | ||
|
|
ca971b2810 | ||
|
|
250336547c | ||
|
|
0d0a58d687 | ||
|
|
d5e6d6594b | ||
|
|
aebe29ce64 | ||
|
|
77ba1810f8 | ||
|
|
6355ac3851 | ||
|
|
e33639d6ac | ||
|
|
cfd6ac3d04 | ||
|
|
ae2ee09119 | ||
|
|
52ebdca76f | ||
|
|
7c3b82579a | ||
|
|
3404767ab3 | ||
|
|
b25ad599d7 | ||
|
|
9be3caee67 | ||
|
|
8ea9c11a1a | ||
|
|
e5600040ff | ||
|
|
8c10983c40 |
@@ -505,15 +505,15 @@ package/gdb/15.1/0006-Fix-getrandom-compile-for-uclibc-v1.0.35.patch lib_patch.U
|
||||
package/gdb/15.1/0007-fix-musl-build-on-riscv.patch lib_patch.Upstream
|
||||
package/gdb/15.1/0008-gdbserver-Makefile.in-fix-NLS-build.patch lib_patch.Upstream
|
||||
package/gdb/15.1/0009-gdb-Fix-native-build-on-xtensa.patch lib_patch.Upstream
|
||||
package/gdb/16.1/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch lib_patch.Upstream
|
||||
package/gdb/16.1/0002-sh-ptrace-Define-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch lib_patch.Upstream
|
||||
package/gdb/16.1/0003-use-asm-sgidefs.h.patch lib_patch.Upstream
|
||||
package/gdb/16.1/0004-gdbserver-fix-build-for-m68k.patch lib_patch.Upstream
|
||||
package/gdb/16.1/0005-nat-fork-inferior-include-linux-ptrace.h.patch lib_patch.Upstream
|
||||
package/gdb/16.1/0006-Fix-getrandom-compile-for-uclibc-v1.0.35.patch lib_patch.Upstream
|
||||
package/gdb/16.1/0007-fix-musl-build-on-riscv.patch lib_patch.Upstream
|
||||
package/gdb/16.1/0008-gdbserver-Makefile.in-fix-NLS-build.patch lib_patch.Upstream
|
||||
package/gdb/16.1/0009-gdb-Fix-native-build-on-xtensa.patch lib_patch.Upstream
|
||||
package/gdb/16.2/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch lib_patch.Upstream
|
||||
package/gdb/16.2/0002-sh-ptrace-Define-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch lib_patch.Upstream
|
||||
package/gdb/16.2/0003-use-asm-sgidefs.h.patch lib_patch.Upstream
|
||||
package/gdb/16.2/0004-gdbserver-fix-build-for-m68k.patch lib_patch.Upstream
|
||||
package/gdb/16.2/0005-nat-fork-inferior-include-linux-ptrace.h.patch lib_patch.Upstream
|
||||
package/gdb/16.2/0006-Fix-getrandom-compile-for-uclibc-v1.0.35.patch lib_patch.Upstream
|
||||
package/gdb/16.2/0007-fix-musl-build-on-riscv.patch lib_patch.Upstream
|
||||
package/gdb/16.2/0008-gdbserver-Makefile.in-fix-NLS-build.patch lib_patch.Upstream
|
||||
package/gdb/16.2/0009-gdb-Fix-native-build-on-xtensa.patch lib_patch.Upstream
|
||||
package/genpart/0001-fix-return-code.patch lib_patch.Upstream
|
||||
package/gensio/0001-Fix-missing-EVP_PKEY_ED25519-build-error-on-libressl.patch lib_patch.Upstream
|
||||
package/gerbera/S99gerbera lib_sysv.Indent
|
||||
|
||||
71
CHANGES
71
CHANGES
@@ -1,3 +1,74 @@
|
||||
2025.02.1, released April 22nd, 2025
|
||||
|
||||
Changes with potentially large impact:
|
||||
|
||||
- gstreamer1 and related packages: updated from 1.22.x to 1.24.x.
|
||||
1.22.x was already EOL when Buildroot 2025.02 was released, so
|
||||
GStreamer should really already have been udpated to 1.24.x.
|
||||
This update was needed to fix a lot of vulnerabilities.
|
||||
- frr: updated from 9.1.3 to 10.3. Version 9 is no longer
|
||||
maintained upstream, and not in any distro either. This update
|
||||
was needed to fix a vulernability.
|
||||
|
||||
Important / security related fixes:
|
||||
|
||||
- libmodsecurity: CVE-2025-27110.
|
||||
- tinyxml2: CVE-2024-50615.
|
||||
- xserver_xorg-server & xwayland: CVE-2024-9632, CVE-2025-26594,
|
||||
CVE-2025-26595, CVE-2025-26596, CVE-2025-26597, CVE-2025-26598,
|
||||
CVE-2025-26599, CVE-2025-26600, CVE-2025-26601.
|
||||
- exim: CVE-2025-30232.
|
||||
- mbedtls: CVE-2025-27809, CVE-2025-27810.
|
||||
- libfreeglut: CVE-2024-24258, CVE-2024-24259.
|
||||
- libopenh264: CVE-2025-27091.
|
||||
- gstreamer1: CVE-2024-47834, CVE-2024-47835, CVE-2024-47778,
|
||||
CVE-2024-47777 CVE-2024-47776, CVE-2024-47775, CVE-2024-47774,
|
||||
CVE-2024-47615, CVE-2024-47613, CVE-2024-47607, CVE-2024-47606,
|
||||
CVE-2024-47603, CVE-2024-47602, CVE-2024-47601, CVE-2024-47600,
|
||||
CVE-2024-47599, CVE-2024-47598, CVE-2024-47597, CVE-2024-47596,
|
||||
CVE-2024-47546, CVE-2024-47545, CVE-2024-47544, CVE-2024-47543,
|
||||
CVE-2024-47542, CVE-2024-47541, CVE-2024-47540, CVE-2024-47539,
|
||||
CVE-2024-47538, CVE-2024-47537.
|
||||
- augeas: CVE-2025-2588.
|
||||
- libndp: CVE-2024-5564.
|
||||
- python-jinja2: CVE-2025-27516.
|
||||
- python-django: CVE-2025-26699.
|
||||
- libarchive: CVE-2024-57970, CVE-2025-1632.
|
||||
- frr: CVE-2024-55553.
|
||||
|
||||
Updated / fixed packages: libmodsecurity, intel-mediadriver,
|
||||
intel-vpl-gpu-rt, python-aerich, python-aiohttp, python-maturin,
|
||||
python-tortoise-orm, python-sqlalchemy, kodi-pvr-waipu, tor, mc,
|
||||
tinyxml2, libgeos, intel-vpl-gpu-rt, intel-mediadriver, ruby,
|
||||
ncftp, xserver_xorg-server, exim, mbedtls, gdb, freerdp, uclibc,
|
||||
libsoup3, cairo, zabbix, armadillo, spdlog, go, linux, linux-tools,
|
||||
gstreamer, linux-header, ethtool, apr, mali-driver, libcoap, libcap
|
||||
python-fastapi, python-twisted.
|
||||
|
||||
Test Improvements:
|
||||
|
||||
- linux-tools: selftests: Add path containing BPF binary.
|
||||
- testing: make time setting portable.
|
||||
- testing: set date in emulated machine.
|
||||
- testing: add git runtime test.
|
||||
- test_gstreamer1: fix test by using bootlin toolchain.
|
||||
|
||||
Infrastructure updates/fixes:
|
||||
|
||||
- kconfig: Handle backspace (^H) key.
|
||||
- xilinx-embeddedsw: fix menuconfig visualization.
|
||||
- DEVELOPERS: change arnout's address.
|
||||
- support/download/svn: use 'svn info' whith LC_ALL=C
|
||||
- glibc: disable on RISC-V ilp32f and lp64f, not supported.
|
||||
- dillo: Fix an issue related to _SITE url for make show-info.
|
||||
- pkg-stats: add -v/--verbose option
|
||||
|
||||
Build issues/problems solved for packages:
|
||||
|
||||
dillo, freerdp, freeswitch, gdb, glibc, linux-tools,
|
||||
mesa3d-demos, ncftp, tesseract-ocr,
|
||||
v4l2loopback, zabbix
|
||||
|
||||
2025.02, released March 17th, 2025
|
||||
|
||||
Various fixes.
|
||||
|
||||
@@ -278,7 +278,7 @@ F: package/espeak/
|
||||
N: Arno Messiaen <arnomessiaen@gmail.com>
|
||||
F: package/python-aiohttp-sse-client/
|
||||
|
||||
N: Arnout Vandecappelle <arnout@mind.be>
|
||||
N: Arnout Vandecappelle <arnout@rnout.be>
|
||||
F: package/arp-scan/
|
||||
F: package/dehydrated/
|
||||
F: package/dracut/
|
||||
@@ -793,6 +793,7 @@ N: Dario Binacchi <dario.binacchi@amarulasolutions.com>
|
||||
F: board/bsh/
|
||||
F: board/stmicroelectronics/stm32f746-disco/
|
||||
F: board/stmicroelectronics/stm32f769-disco/
|
||||
F: boot/ti-k3-boot-firmware/
|
||||
F: configs/imx6ulz_bsh_smm_m2_defconfig
|
||||
F: configs/imx8mn_bsh_smm_s2_defconfig
|
||||
F: configs/imx8mn_bsh_smm_s2_pro_defconfig
|
||||
@@ -1897,6 +1898,7 @@ F: support/testing/tests/package/test_fwts.py
|
||||
F: support/testing/tests/package/test_gawk.py
|
||||
F: support/testing/tests/package/test_ghostscript.py
|
||||
F: support/testing/tests/package/test_ghostscript/
|
||||
F: support/testing/tests/package/test_git.py
|
||||
F: support/testing/tests/package/test_glslsandbox_player.py
|
||||
F: support/testing/tests/package/test_glslsandbox_player/
|
||||
F: support/testing/tests/package/test_gnupg2.py
|
||||
|
||||
4
Makefile
4
Makefile
@@ -92,9 +92,9 @@ all:
|
||||
.PHONY: all
|
||||
|
||||
# Set and export the version string
|
||||
export BR2_VERSION := 2025.02
|
||||
export BR2_VERSION := 2025.02.1
|
||||
# Actual time the release is cut (for reproducible builds)
|
||||
BR2_VERSION_EPOCH = 1742234000
|
||||
BR2_VERSION_EPOCH = 1745347000
|
||||
|
||||
# Save running make version since it's clobbered by the make package
|
||||
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
comment "xilinx-embeddedsw needs a bare metal toolchain for tuple microblazeel-xilinx-elf"
|
||||
depends on BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH != "microblazeel-xilinx-elf"
|
||||
|
||||
config BR2_TARGET_XILINX_EMBEDDEDSW
|
||||
bool "xilinx-embeddedsw"
|
||||
depends on BR2_aarch64
|
||||
@@ -14,9 +17,6 @@ config BR2_TARGET_XILINX_EMBEDDEDSW
|
||||
Applications can be found on the Xilinx embeddedsw repo:
|
||||
https://github.com/Xilinx/embeddedsw/tree/master/lib/sw_apps
|
||||
|
||||
comment "xilinx-embeddedsw needs a bare metal toolchain for tuple microblazeel-xilinx-elf"
|
||||
depends on BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH != "microblazeel-xilinx-elf"
|
||||
|
||||
if BR2_TARGET_XILINX_EMBEDDEDSW
|
||||
|
||||
config BR2_TARGET_XILINX_EMBEDDEDSW_VERSION
|
||||
|
||||
@@ -18,6 +18,7 @@ BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(LINUX_DIR)/arch/arm64/configs/lsdk.con
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/fsl-ls1028a-rdb"
|
||||
BR2_LINUX_KERNEL_INSTALL_TARGET=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_PACKAGE_QORIQ_CADENCE_DP_FIRMWARE=y
|
||||
BR2_TARGET_ROOTFS_EXT2=y
|
||||
BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
|
||||
@@ -17,6 +17,7 @@ BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(LINUX_DIR)/arch/arm64/configs/lsdk.con
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/fsl-ls1043a-rdb freescale/fsl-ls1043a-rdb-sdk"
|
||||
BR2_LINUX_KERNEL_INSTALL_TARGET=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_PACKAGE_QORIQ_FM_UCODE=y
|
||||
BR2_PACKAGE_QORIQ_FM_UCODE_PLATFORM="ls1043"
|
||||
BR2_TARGET_ROOTFS_EXT2=y
|
||||
|
||||
@@ -18,6 +18,7 @@ BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(LINUX_DIR)/arch/arm64/configs/lsdk.con
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/fsl-ls1046a-frwy freescale/fsl-ls1046a-frwy-sdk"
|
||||
BR2_LINUX_KERNEL_INSTALL_TARGET=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_PACKAGE_QORIQ_FM_UCODE=y
|
||||
BR2_TARGET_ROOTFS_EXT2=y
|
||||
BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
|
||||
@@ -18,6 +18,7 @@ BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(LINUX_DIR)/arch/arm64/configs/lsdk.con
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/fsl-ls1046a-rdb freescale/fsl-ls1046a-rdb-sdk"
|
||||
BR2_LINUX_KERNEL_INSTALL_TARGET=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_PACKAGE_QORIQ_FM_UCODE=y
|
||||
BR2_TARGET_ROOTFS_EXT2=y
|
||||
BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
|
||||
@@ -168,6 +168,12 @@ i {
|
||||
text-justify: inter-word;
|
||||
}
|
||||
|
||||
.panel-lts-sponsor {
|
||||
min-height: 200px;
|
||||
text-align: justify;
|
||||
text-justify: inter-word;
|
||||
}
|
||||
|
||||
@media (min-width: 768px) and (max-width: 991px) {
|
||||
.navbar-collapse.collapse {
|
||||
display: none !important;
|
||||
|
||||
BIN
docs/website/images/evs-logo.png
Normal file
BIN
docs/website/images/evs-logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 9.3 KiB After Width: | Height: | Size: 6.9 KiB |
BIN
docs/website/images/sense-logo.png
Normal file
BIN
docs/website/images/sense-logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.6 KiB |
@@ -9,11 +9,62 @@
|
||||
<div class="panel-body">
|
||||
<p>The maintenance of the Long Term Support branch of Buildroot is
|
||||
possible thanks to the sponsors of the
|
||||
<a href="https://mind.be/buildroot-lts">Buildroot LTS Sponsoring
|
||||
<a href="https://mind.be/buildroot-lts">Buildroot LTS Sponsorship
|
||||
Program</a>.</p>
|
||||
<p>When the Buildroot LTS Sponsoring program will be operational
|
||||
later in 2024, those sponsors will be mentioned here.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<h3>Gold Sponsors</h3>
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="panel panel-default panel-lts-sponsor">
|
||||
<div class="panel-body">
|
||||
<div class="col-sm-12" style="height: 150px;">
|
||||
<a href="https://evs.com">
|
||||
<img class="img-responsive center-block" src="images/evs-logo.png"/>
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-sm-12">
|
||||
<a href="http://evs.com">EVS Broadcast Equipment</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="panel panel-default panel-lts-sponsor">
|
||||
<div class="panel-body">
|
||||
<div class="col-sm-12" style="height: 150px;">
|
||||
<a href="https://www.openhomefoundation.org/">
|
||||
<img class="img-responsive center-block" src="images/openhomefoundation-logo.png"/>
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-sm-12">
|
||||
<a href="https://www.openhomefoundation.org">Open Home
|
||||
Foundation</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<h3>Bronze Sponsors</h3>
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="panel panel-default panel-lts-sponsor">
|
||||
<div class="panel-body">
|
||||
<div class="col-sm-12" style="height: 150px;">
|
||||
<a href="https://www.sense.com">
|
||||
<img class="img-responsive center-block" style="width: 100%;" src="images/sense-logo.png"/>
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-sm-12">
|
||||
<a href="https://www.sense.com">Sense Labs</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel panel-primary">
|
||||
|
||||
@@ -137,7 +137,7 @@ config BR2_LINUX_KERNEL_CUSTOM_REPO_GIT_SUBMODULES
|
||||
|
||||
config BR2_LINUX_KERNEL_VERSION
|
||||
string
|
||||
default "6.12.19" if BR2_LINUX_KERNEL_LATEST_VERSION
|
||||
default "6.12.20" if BR2_LINUX_KERNEL_LATEST_VERSION
|
||||
default "5.10.162-cip24" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION
|
||||
default "5.10.162-cip24-rt10" if BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION
|
||||
default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# From https://www.kernel.org/pub/linux/kernel/v6.x/sha256sums.asc
|
||||
sha256 d73bf057bec04434b169d1b61641936f7d0c97ceb923a281f32e35dd4dcc6531 linux-6.12.19.tar.xz
|
||||
sha256 894bbbe63b7484a0bc576a1e11a8dbc090fbd476d6424431bdc8435e03c2c208 linux-6.6.83.tar.xz
|
||||
sha256 230e89b07b0ab82e74f07ecc1bee3105dca81d0ef4a97f900929c407249b6ac7 linux-6.12.20.tar.xz
|
||||
sha256 7fd20721551a61db347c5ac6ca05818e24058682be4e4389dc51e88d4ac17ba7 linux-6.6.84.tar.xz
|
||||
sha256 44caf510603b4cbbe78ef828620099d200536d666e909ddb73bb2938c7de5b16 linux-6.1.131.tar.xz
|
||||
# From https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc
|
||||
sha256 9319a47b1e9b5d344ff6015431856d0c9640e4faedc527c87f9129061a27136f linux-5.15.179.tar.xz
|
||||
|
||||
@@ -537,7 +537,7 @@ endif
|
||||
# the same $(BR2_MAKE) invocation has shown to cause parallel build
|
||||
# issues.
|
||||
# The call to disable gcc-plugins is a stop-gap measure:
|
||||
# http://lists.busybox.net/pipermail/buildroot/2020-May/282727.html
|
||||
# https://lore.kernel.org/buildroot/20200512095550.GW12536@scaer
|
||||
define LINUX_BUILD_CMDS
|
||||
$(call KCONFIG_DISABLE_OPT,CONFIG_GCC_PLUGINS)
|
||||
$(foreach dts,$(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH)), \
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From ed1daed074fba0dabff825e63525d751b6bb7b8d Mon Sep 17 00:00:00 2001
|
||||
From a8fd928dfab693278205e73286e3a6b622624aeb Mon Sep 17 00:00:00 2001
|
||||
From: Graham Leggett <minfrin@apache.org>
|
||||
Date: Tue, 31 Dec 2019 21:26:02 +0000
|
||||
Subject: [PATCH] Revert: Add the ability to cross compile APR.
|
||||
@@ -7,16 +7,18 @@ git-svn-id: https://svn.apache.org/repos/asf/apr/apr/branches/1.7.x@1872147 13f7
|
||||
|
||||
[Revert upstream commit https://github.com/apache/apr/commit/b6dbbc77da35a7b46754c99f465827f2a583e23c]
|
||||
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
|
||||
[Dario: adapt to 1.7.5]
|
||||
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
|
||||
---
|
||||
CHANGES | 2 --
|
||||
apr-config.in | 22 ----------------------
|
||||
2 files changed, 24 deletions(-)
|
||||
|
||||
diff --git a/CHANGES b/CHANGES
|
||||
index 71b2f0e..e751c90 100644
|
||||
index 793b0b6a46a4..4705b8476ff3 100644
|
||||
--- a/CHANGES
|
||||
+++ b/CHANGES
|
||||
@@ -56,8 +56,6 @@ Changes for APR 1.7.1
|
||||
@@ -119,8 +119,6 @@ Changes for APR 1.7.5
|
||||
*) Don't try to use PROC_PTHREAD by default when cross compiling.
|
||||
[Yann Ylavic]
|
||||
|
||||
@@ -26,25 +28,25 @@ index 71b2f0e..e751c90 100644
|
||||
be executed at build time, use AX_PROG_CC_FOR_BUILD to
|
||||
build native tools/gen_test_char
|
||||
diff --git a/apr-config.in b/apr-config.in
|
||||
index 4873fc0..84b4073 100644
|
||||
index 1203d9a0d38e..bcd4a0c10399 100644
|
||||
--- a/apr-config.in
|
||||
+++ b/apr-config.in
|
||||
@@ -48,14 +48,6 @@ APR_LIBNAME="@APR_LIBNAME@"
|
||||
# NOTE: the following line is modified during 'make install': alter with care!
|
||||
location=@APR_CONFIG_LOCATION@
|
||||
@@ -61,14 +61,6 @@ if test "$cross_compiling" != "no"; then
|
||||
# Remove trailing '/'
|
||||
normalized_bindir=${normalized_bindir%/}
|
||||
|
||||
- # absolute path, but not installed path - we're cross compiling
|
||||
- case "$normalized_command" in
|
||||
- "${normalized_bindir}/"*) ;;
|
||||
- "/"*) location=crosscompile;
|
||||
- APR_TARGET_DIR=${normalized_command%${normalized_bindir}/apr-${APR_MAJOR_VERSION}-config};
|
||||
- ;;
|
||||
- *) ;;
|
||||
- esac
|
||||
fi
|
||||
|
||||
-# absolute path, but not installed path - we're cross compiling
|
||||
-case "$0" in
|
||||
- "${bindir}/"*) ;;
|
||||
- "/"*) location=crosscompile;
|
||||
- APR_TARGET_DIR=${0%${bindir}/apr-${APR_MAJOR_VERSION}-config} ;;
|
||||
- *) ;;
|
||||
-esac
|
||||
-
|
||||
show_usage()
|
||||
{
|
||||
cat << EOF
|
||||
@@ -101,8 +93,6 @@ fi
|
||||
@@ -116,8 +108,6 @@ fi
|
||||
|
||||
if test "$location" = "installed"; then
|
||||
LA_FILE="$libdir/lib${APR_LIBNAME}.la"
|
||||
@@ -53,7 +55,7 @@ index 4873fc0..84b4073 100644
|
||||
else
|
||||
LA_FILE="$APR_BUILD_DIR/lib${APR_LIBNAME}.la"
|
||||
fi
|
||||
@@ -132,8 +122,6 @@ while test $# -gt 0; do
|
||||
@@ -147,8 +137,6 @@ while test $# -gt 0; do
|
||||
--includedir)
|
||||
if test "$location" = "installed"; then
|
||||
flags="$includedir"
|
||||
@@ -62,7 +64,7 @@ index 4873fc0..84b4073 100644
|
||||
elif test "$location" = "source"; then
|
||||
flags="$APR_SOURCE_DIR/include"
|
||||
else
|
||||
@@ -166,8 +154,6 @@ while test $# -gt 0; do
|
||||
@@ -181,8 +169,6 @@ while test $# -gt 0; do
|
||||
--includes)
|
||||
if test "$location" = "installed"; then
|
||||
flags="$flags -I$includedir $EXTRA_INCLUDES"
|
||||
@@ -71,7 +73,7 @@ index 4873fc0..84b4073 100644
|
||||
elif test "$location" = "source"; then
|
||||
flags="$flags -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES"
|
||||
else
|
||||
@@ -182,8 +168,6 @@ while test $# -gt 0; do
|
||||
@@ -197,8 +183,6 @@ while test $# -gt 0; do
|
||||
--installbuilddir)
|
||||
if test "$location" = "installed"; then
|
||||
echo "${installbuilddir}"
|
||||
@@ -80,7 +82,7 @@ index 4873fc0..84b4073 100644
|
||||
elif test "$location" = "source"; then
|
||||
echo "$APR_SOURCE_DIR/build"
|
||||
else
|
||||
@@ -200,8 +184,6 @@ while test $# -gt 0; do
|
||||
@@ -215,8 +199,6 @@ while test $# -gt 0; do
|
||||
if test "$location" = "installed"; then
|
||||
### avoid using -L if libdir is a "standard" location like /usr/lib
|
||||
flags="$flags -L$libdir -l${APR_LIBNAME}"
|
||||
@@ -89,7 +91,7 @@ index 4873fc0..84b4073 100644
|
||||
else
|
||||
### this surely can't work since the library is in .libs?
|
||||
flags="$flags -L$APR_BUILD_DIR -l${APR_LIBNAME}"
|
||||
@@ -219,8 +201,6 @@ while test $# -gt 0; do
|
||||
@@ -234,8 +216,6 @@ while test $# -gt 0; do
|
||||
# Since the user is specifying they are linking with libtool, we
|
||||
# *know* that -R will be recognized by libtool.
|
||||
flags="$flags -L$libdir -R$libdir -l${APR_LIBNAME}"
|
||||
@@ -98,7 +100,7 @@ index 4873fc0..84b4073 100644
|
||||
else
|
||||
flags="$flags $LA_FILE"
|
||||
fi
|
||||
@@ -245,8 +225,6 @@ while test $# -gt 0; do
|
||||
@@ -260,8 +240,6 @@ while test $# -gt 0; do
|
||||
--apr-libtool)
|
||||
if test "$location" = "installed"; then
|
||||
echo "${installbuilddir}/libtool"
|
||||
@@ -108,5 +110,5 @@ index 4873fc0..84b4073 100644
|
||||
echo "$APR_BUILD_DIR/libtool"
|
||||
fi
|
||||
--
|
||||
2.39.2
|
||||
2.43.0
|
||||
|
||||
|
||||
@@ -1,71 +0,0 @@
|
||||
From 36ea6d5a2bfc480dd8032cc8651e6793552bc2aa Mon Sep 17 00:00:00 2001
|
||||
From: Eric Covener <covener@apache.org>
|
||||
Date: Tue, 20 Aug 2024 21:50:42 +0000
|
||||
Subject: [PATCH] Merge r1920082 from 1.8.x:
|
||||
|
||||
use 0600 perms for named shared mem consistently
|
||||
|
||||
|
||||
|
||||
|
||||
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/branches/1.7.x@1920083 13f79535-47bb-0310-9956-ffa450edef68
|
||||
Upstream: https://github.com/apache/apr/commit/36ea6d5a2bfc480dd8032cc8651e6793552bc2aa
|
||||
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
||||
---
|
||||
shmem/unix/shm.c | 18 +++++++-----------
|
||||
1 file changed, 7 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/shmem/unix/shm.c b/shmem/unix/shm.c
|
||||
index 096884d99..ea9b94277 100644
|
||||
--- a/shmem/unix/shm.c
|
||||
+++ b/shmem/unix/shm.c
|
||||
@@ -287,10 +287,9 @@ APR_DECLARE(apr_status_t) apr_shm_create(apr_shm_t **m,
|
||||
status = APR_SUCCESS;
|
||||
|
||||
#if APR_USE_SHMEM_MMAP_TMP
|
||||
- /* FIXME: Is APR_OS_DEFAULT sufficient? */
|
||||
- status = apr_file_open(&file, filename,
|
||||
- APR_READ | APR_WRITE | APR_CREATE | APR_EXCL,
|
||||
- APR_OS_DEFAULT, pool);
|
||||
+ status = apr_file_open(&file, filename,
|
||||
+ APR_FOPEN_READ | APR_FOPEN_WRITE | APR_FOPEN_CREATE | APR_FOPEN_EXCL,
|
||||
+ APR_FPROT_UREAD | APR_FPROT_UWRITE, pool);
|
||||
if (status != APR_SUCCESS) {
|
||||
return status;
|
||||
}
|
||||
@@ -319,8 +318,7 @@ APR_DECLARE(apr_status_t) apr_shm_create(apr_shm_t **m,
|
||||
}
|
||||
#endif /* APR_USE_SHMEM_MMAP_TMP */
|
||||
#if APR_USE_SHMEM_MMAP_SHM
|
||||
- /* FIXME: SysV uses 0600... should we? */
|
||||
- tmpfd = shm_open(shm_name, O_RDWR | O_CREAT | O_EXCL, 0644);
|
||||
+ tmpfd = shm_open(shm_name, O_RDWR | O_CREAT | O_EXCL, 0600);
|
||||
if (tmpfd == -1) {
|
||||
return errno;
|
||||
}
|
||||
@@ -361,10 +359,9 @@ APR_DECLARE(apr_status_t) apr_shm_create(apr_shm_t **m,
|
||||
#elif APR_USE_SHMEM_SHMGET
|
||||
new_m->realsize = reqsize;
|
||||
|
||||
- /* FIXME: APR_OS_DEFAULT is too permissive, switch to 600 I think. */
|
||||
- status = apr_file_open(&file, filename,
|
||||
+ status = apr_file_open(&file, filename,
|
||||
APR_FOPEN_WRITE | APR_FOPEN_CREATE | APR_FOPEN_EXCL,
|
||||
- APR_OS_DEFAULT, pool);
|
||||
+ APR_FPROT_UREAD | APR_FPROT_UWRITE, pool);
|
||||
if (status != APR_SUCCESS) {
|
||||
return status;
|
||||
}
|
||||
@@ -555,8 +552,7 @@ APR_DECLARE(apr_status_t) apr_shm_attach(apr_shm_t **m,
|
||||
#if APR_USE_SHMEM_MMAP_SHM
|
||||
const char *shm_name = make_shm_open_safe_name(filename, pool);
|
||||
|
||||
- /* FIXME: SysV uses 0600... should we? */
|
||||
- tmpfd = shm_open(shm_name, O_RDWR, 0644);
|
||||
+ tmpfd = shm_open(shm_name, O_RDWR, 0600);
|
||||
if (tmpfd == -1) {
|
||||
return errno;
|
||||
}
|
||||
--
|
||||
2.39.5
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# From https://archive.apache.org/dist/apr/apr-1.7.2.tar.bz2.sha256
|
||||
sha256 75e77cc86776c030c0a5c408dfbd0bf2a0b75eed5351e52d5439fa1e5509a43e apr-1.7.2.tar.bz2
|
||||
# From https://archive.apache.org/dist/apr/apr-1.7.5.tar.bz2.sha256
|
||||
sha256 cd0f5d52b9ab1704c72160c5ee3ed5d3d4ca2df4a7f8ab564e3cb352b67232f2 apr-1.7.5.tar.bz2
|
||||
# Locally calculated
|
||||
sha256 f854aeef66ecd55a126226e82b3f26793fc3b1c584647f6a0edc5639974c38ad LICENSE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
APR_VERSION = 1.7.2
|
||||
APR_VERSION = 1.7.5
|
||||
APR_SOURCE = apr-$(APR_VERSION).tar.bz2
|
||||
APR_SITE = https://archive.apache.org/dist/apr
|
||||
APR_LICENSE = Apache-2.0
|
||||
@@ -16,9 +16,6 @@ APR_INSTALL_STAGING = YES
|
||||
# so we need to autoreconf:
|
||||
APR_AUTORECONF = YES
|
||||
|
||||
# 0004-Merge-r1920082-from-1.8.x.patch
|
||||
APR_IGNORE_CVES += CVE-2023-49582
|
||||
|
||||
APR_CONF_OPTS = --disable-sctp
|
||||
|
||||
# avoid apr_hints.m4 by setting apr_preload_done=yes and set
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Locally computed:
|
||||
sha256 023242fd59071d98c75fb015fd3293c921132dc39bf46d221d4b059aae8d79f4 armadillo-14.4.0.tar.xz
|
||||
sha256 26ce272bfdc8246c278e6f8cfa53777a1efb14ef196e88082fee05da1a463491 armadillo-14.4.1.tar.xz
|
||||
# License files, locally calculated
|
||||
sha256 3ddf9be5c28fe27dad143a5dc76eea25222ad1dd68934a047064e56ed2fa40c5 LICENSE.txt
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
ARMADILLO_VERSION = 14.4.0
|
||||
ARMADILLO_VERSION = 14.4.1
|
||||
ARMADILLO_SOURCE = armadillo-$(ARMADILLO_VERSION).tar.xz
|
||||
ARMADILLO_SITE = https://downloads.sourceforge.net/project/arma
|
||||
ARMADILLO_INSTALL_STAGING = YES
|
||||
|
||||
@@ -0,0 +1,77 @@
|
||||
From af2aa88ab37fc48167d8c5e43b1770a4ba2ff403 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Bokovoy <abbra@users.noreply.github.com>
|
||||
Date: Sun, 30 Mar 2025 12:27:04 +0300
|
||||
Subject: [PATCH] CVE-2025-2588: return _REG_ENOSYS if no specific error was
|
||||
set yet parse_regexp failed (#854)
|
||||
|
||||
parse_regexp() supposed to set an error on the parser state in case of a
|
||||
failure. If no specific error was set, return _REG_ENOSYS to indicate a
|
||||
generic failure.
|
||||
|
||||
Fixes: https://github.com/hercules-team/augeas/issues/671
|
||||
Fixes: https://github.com/hercules-team/augeas/issues/778
|
||||
Fixes: https://github.com/hercules-team/augeas/issues/852
|
||||
|
||||
Signed-off-by: Alexander Bokovoy <abokovoy@redhat.com>
|
||||
|
||||
Upstream: https://github.com/hercules-team/augeas/commit/af2aa88ab37fc48167d8c5e43b1770a4ba2ff403
|
||||
CVE: CVE-2025-2588
|
||||
Signed-off-by: Thomas Perale <thomas.perale@mind.be>
|
||||
|
||||
---
|
||||
src/fa.c | 2 ++
|
||||
src/fa.h | 3 ++-
|
||||
tests/fatest.c | 6 ++++++
|
||||
3 files changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/fa.c b/src/fa.c
|
||||
index 66ac70784..4de5675b9 100644
|
||||
--- a/src/fa.c
|
||||
+++ b/src/fa.c
|
||||
@@ -3550,6 +3550,8 @@ static struct re *parse_regexp(struct re_parse *parse) {
|
||||
return re;
|
||||
|
||||
error:
|
||||
+ if (re == NULL && parse->error == REG_NOERROR)
|
||||
+ parse->error = _REG_ENOSYS;
|
||||
re_unref(re);
|
||||
return NULL;
|
||||
}
|
||||
diff --git a/src/fa.h b/src/fa.h
|
||||
index 1fd754ad0..89c9b17e9 100644
|
||||
--- a/src/fa.h
|
||||
+++ b/src/fa.h
|
||||
@@ -81,7 +81,8 @@ extern int fa_minimization_algorithm;
|
||||
*
|
||||
* On success, FA points to the newly allocated automaton constructed for
|
||||
* RE, and the function returns REG_NOERROR. Otherwise, FA is NULL, and the
|
||||
- * return value indicates the error.
|
||||
+ * return value indicates the error. Special value _REG_ENOSYS indicates
|
||||
+ * fa_compile() couldn't identify the syntax issue with regexp.
|
||||
*
|
||||
* The FA is case sensitive. Call FA_NOCASE to switch it to
|
||||
* case-insensitive.
|
||||
diff --git a/tests/fatest.c b/tests/fatest.c
|
||||
index 0c9ca7696..6717af8f4 100644
|
||||
--- a/tests/fatest.c
|
||||
+++ b/tests/fatest.c
|
||||
@@ -589,6 +589,7 @@ static void testExpandNoCase(CuTest *tc) {
|
||||
const char *p1 = "aB";
|
||||
const char *p2 = "[a-cUV]";
|
||||
const char *p3 = "[^a-z]";
|
||||
+ const char *wrong_regexp = "{&.{";
|
||||
char *s;
|
||||
size_t len;
|
||||
int r;
|
||||
@@ -607,6 +608,11 @@ static void testExpandNoCase(CuTest *tc) {
|
||||
CuAssertIntEquals(tc, 0, r);
|
||||
CuAssertStrEquals(tc, "[^A-Za-z]", s);
|
||||
free(s);
|
||||
+
|
||||
+ /* Test that fa_expand_nocase does return _REG_ENOSYS */
|
||||
+ r = fa_expand_nocase(wrong_regexp, strlen(wrong_regexp), &s, &len);
|
||||
+ CuAssertIntEquals(tc, _REG_ENOSYS, r);
|
||||
+ free(s);
|
||||
}
|
||||
|
||||
static void testNoCaseComplement(CuTest *tc) {
|
||||
@@ -14,6 +14,9 @@ AUGEAS_DEPENDENCIES = host-pkgconf readline libxml2
|
||||
|
||||
AUGEAS_CONF_OPTS = --disable-gnulib-tests
|
||||
|
||||
# 0001-CVE-2025-2588-return-_REG_ENOSYS-if-no-specific-error-was-set-yet-parse_regexp-failed.patch
|
||||
AUGEAS_IGNORE_CVES += CVE-2025-2588
|
||||
|
||||
# Remove the test lenses which occupy about 1.4 MB on the target
|
||||
define AUGEAS_REMOVE_TEST_LENSES
|
||||
rm -rf $(TARGET_DIR)/usr/share/augeas/lenses/dist/tests
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
From da698db0c20507f0e07492cbe40dbaf1c9053f71 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Devoogdt <thomas@devoogdt.com>
|
||||
Date: Sun, 12 Nov 2023 09:58:05 +0100
|
||||
Subject: [PATCH] cairo-ft-private.h: fix missing FT_Color error
|
||||
|
||||
In file included from ../src/cairo-colr-glyph-render.c:37:
|
||||
../src/cairo-ft-private.h:87:30: error: unknown type name 'FT_Color'
|
||||
87 | FT_Color *palette,
|
||||
| ^~~~~~~~
|
||||
|
||||
Upstream: https://gitlab.freedesktop.org/cairo/cairo/-/issues/792
|
||||
Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
|
||||
---
|
||||
src/cairo-ft-private.h | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/src/cairo-ft-private.h b/src/cairo-ft-private.h
|
||||
index 836f7e523..6b0e30223 100644
|
||||
--- a/src/cairo-ft-private.h
|
||||
+++ b/src/cairo-ft-private.h
|
||||
@@ -43,6 +43,8 @@
|
||||
|
||||
#if CAIRO_HAS_FT_FONT
|
||||
|
||||
+#include FT_COLOR_H
|
||||
+
|
||||
CAIRO_BEGIN_DECLS
|
||||
|
||||
typedef struct _cairo_ft_unscaled_font cairo_ft_unscaled_font_t;
|
||||
--
|
||||
2.34.1
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# From https://www.cairographics.org/releases/cairo-1.18.2.tar.xz.sha256sum
|
||||
sha256 a62b9bb42425e844cc3d6ddde043ff39dbabedd1542eba57a2eb79f85889d45a cairo-1.18.2.tar.xz
|
||||
# From https://www.cairographics.org/releases/cairo-1.18.4.tar.xz.sha256sum
|
||||
sha256 445ed8208a6e4823de1226a74ca319d3600e83f6369f99b14265006599c32ccb cairo-1.18.4.tar.xz
|
||||
|
||||
# Hash for license files:
|
||||
sha256 67228a9f7c5f9b67c58f556f1be178f62da4d9e2e6285318d8c74d567255abdf COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
CAIRO_VERSION = 1.18.2
|
||||
CAIRO_VERSION = 1.18.4
|
||||
CAIRO_SOURCE = cairo-$(CAIRO_VERSION).tar.xz
|
||||
CAIRO_LICENSE = LGPL-2.1 or MPL-1.1 (library)
|
||||
CAIRO_LICENSE_FILES = COPYING COPYING-LGPL-2.1 COPYING-MPL-1.1
|
||||
@@ -37,8 +37,7 @@ CAIRO_CONF_OPTS = \
|
||||
-Dtests=disabled \
|
||||
-Dspectre=disabled \
|
||||
-Dsymbol-lookup=disabled \
|
||||
-Dgtk_doc=false \
|
||||
-Dc_std=gnu11
|
||||
-Dgtk_doc=false
|
||||
CAIRO_DEPENDENCIES = \
|
||||
host-pkgconf \
|
||||
fontconfig \
|
||||
@@ -59,8 +58,7 @@ HOST_CAIRO_CONF_OPTS = \
|
||||
-Dglib=enabled \
|
||||
-Dspectre=disabled \
|
||||
-Dsymbol-lookup=disabled \
|
||||
-Dgtk_doc=false \
|
||||
-Dc_std=gnu11
|
||||
-Dgtk_doc=false
|
||||
HOST_CAIRO_DEPENDENCIES = \
|
||||
host-freetype \
|
||||
host-fontconfig \
|
||||
@@ -71,7 +69,10 @@ HOST_CAIRO_DEPENDENCIES = \
|
||||
host-zlib
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LZO),y)
|
||||
CAIRO_CONF_OPTS += -Dlzo=enabled
|
||||
CAIRO_DEPENDENCIES += lzo
|
||||
else
|
||||
CAIRO_CONF_OPTS += -Dlzo=disabled
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_FREETYPE),y)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
DILLO_VERSION = 3.0.5
|
||||
DILLO_SOURCE = dillo-$(DILLO_VERSION).tar.bz2
|
||||
DILLO_SITE = https://github.com/dillo-browser/dillo/releases/download/v$(DILLO_VERSION)/
|
||||
DILLO_SITE = https://github.com/dillo-browser/dillo/releases/download/v$(DILLO_VERSION)
|
||||
DILLO_LICENSE = GPL-3.0+
|
||||
DILLO_LICENSE_FILES = COPYING
|
||||
# configure.ac gets patched, so autoreconf is necessary
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# From https://www.kernel.org/pub/software/network/ethtool/sha256sums.asc
|
||||
sha256 8d91f5c72ae3f25b7e88d4781279dcb320f71e30058914370b1c574c96b31202 ethtool-6.11.tar.xz
|
||||
sha256 9338bb00e492878d3bbe3cd2894e60db35813634c208db0b20f5c7ee84da69b1 ethtool-6.14.tar.xz
|
||||
|
||||
# Locally calculated
|
||||
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
|
||||
sha256 5d632934396f90c82dfebe3c9512648bbb6333b406113d0cd331b0e0aa2d34a1 LICENSE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
ETHTOOL_VERSION = 6.11
|
||||
ETHTOOL_VERSION = 6.14
|
||||
ETHTOOL_SOURCE = ethtool-$(ETHTOOL_VERSION).tar.xz
|
||||
ETHTOOL_SITE = $(BR2_KERNEL_MIRROR)/software/network/ethtool
|
||||
ETHTOOL_LICENSE = GPL-2.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# From https://ftp.exim.org/pub/exim/exim4/00-sha256sums.txt
|
||||
sha256 d858b75ad2cc6bf71c9071ba26a55b3ea9add26607bd832df3cb54f82221c2ce exim-4.98.1.tar.xz
|
||||
sha256 88b8e8a67c1db6cc0b1d148161aa36e662f4ca2fef25d5b6f3694d490e42dcae exim-4.98.2.tar.xz
|
||||
# From https://ftp.exim.org/pub/exim/exim4/00-sha512sums.txt
|
||||
sha512 8f80999a41ed40e86ee16eea5cfd765e2f164ea149f40eeb410fd02fcf35c23317dc69540efe336e9e0fae930b1cc6771e0180dd70f1314531cdb139740c744e exim-4.98.1.tar.xz
|
||||
sha512 aaa4cfc8aee90818c6d1c2fd0cf64b82668d1a343f462f678b38b2b79e10a467240f2e81786eec7705eec3598d23686a74437c50b68502f29ff67788393c812a exim-4.98.2.tar.xz
|
||||
# Locally calculated
|
||||
sha256 49240db527b7e55b312a46fc59794fde5dd006422e422257f4f057bfd27b3c8f LICENCE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
EXIM_VERSION = 4.98.1
|
||||
EXIM_VERSION = 4.98.2
|
||||
EXIM_SOURCE = exim-$(EXIM_VERSION).tar.xz
|
||||
EXIM_SITE = https://ftp.exim.org/pub/exim/exim4
|
||||
EXIM_LICENSE = GPL-2.0+
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
# From https://pub.freerdp.com/releases/freerdp-2.11.7.tar.gz.sha256
|
||||
sha256 5a2d54e1ca0f1facd1632bcc94c73b9f071a80c5fdbbb3f26e79f02aaa586ca3 freerdp-2.11.7.tar.gz
|
||||
|
||||
# Locally calculated
|
||||
sha256 f7cc2bf43b9778e9079cd229ea8e37fc1843eb1c11a8e4e003034af71858ce6a freerdp-2.11.7-18-g0ee17e2f8e49d56ab5b90d5160fa8f87ffc445e0-git4.tar.gz
|
||||
sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE
|
||||
|
||||
@@ -4,8 +4,10 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
FREERDP_VERSION = 2.11.7
|
||||
FREERDP_SITE = https://pub.freerdp.com/releases
|
||||
# Latest, and probably last, commit on the stable-2.0 branch
|
||||
FREERDP_VERSION = 2.11.7-18-g0ee17e2f8e49d56ab5b90d5160fa8f87ffc445e0
|
||||
FREERDP_SITE = https://github.com/FreeRDP/FreeRDP
|
||||
FREERDP_SITE_METHOD = git
|
||||
FREERDP_DEPENDENCIES = libglib2 openssl zlib
|
||||
FREERDP_LICENSE = Apache-2.0
|
||||
FREERDP_LICENSE_FILES = LICENSE
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
From 475b64d1c5707e1302cf9f7cfe3c385b7339c6c4 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?=D0=94=D0=B8=D0=BB=D1=8F=D0=BD=20=D0=9F=D0=B0=D0=BB=D0=B0?=
|
||||
=?UTF-8?q?=D1=83=D0=B7=D0=BE=D0=B2?= <git-dpa@aegee.org>
|
||||
Date: Sat, 22 Jun 2024 14:58:52 +0200
|
||||
Subject: [PATCH] xml_int/mod_xml_rpc: const compiler errors
|
||||
|
||||
Upstream: https://github.com/signalwire/freeswitch/pull/2496
|
||||
|
||||
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
|
||||
---
|
||||
src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.c b/src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.c
|
||||
index 8e49462d2c2..0a4e5e1e449 100644
|
||||
--- a/src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.c
|
||||
+++ b/src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.c
|
||||
@@ -321,7 +321,7 @@ static abyss_bool user_attributes(const char *user, const char *domain_name,
|
||||
static abyss_bool is_authorized(const TSession * r, const char *command)
|
||||
{
|
||||
char *user = NULL, *domain_name = NULL;
|
||||
- char *allowed_commands = NULL;
|
||||
+ const char *allowed_commands = NULL;
|
||||
char *dp;
|
||||
char *dup = NULL;
|
||||
char *argv[256] = { 0 };
|
||||
@@ -922,7 +922,7 @@ abyss_bool handler_hook(TSession * r)
|
||||
if (len > 0) {
|
||||
int succeeded = TRUE;
|
||||
char *qp = qbuf;
|
||||
- char *readError;
|
||||
+ const char *readError;
|
||||
|
||||
do {
|
||||
int blen = r->connP->buffersize - r->connP->bufferpos;
|
||||
@@ -24,6 +24,13 @@ config BR2_PACKAGE_FRR
|
||||
|
||||
if BR2_PACKAGE_FRR
|
||||
|
||||
config BR2_PACKAGE_FRR_BFD
|
||||
bool "BFD protocol"
|
||||
default y
|
||||
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10
|
||||
help
|
||||
Build Bidirectional Forwarding Detection daemon.
|
||||
|
||||
config BR2_PACKAGE_FRR_BMP
|
||||
bool "BMP protocol"
|
||||
select BR2_PACKAGE_C_ARES
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Locally calculated
|
||||
sha256 5323e5ec236346860301e57f6845443855e8f2508d7ccd87ead395a9991c01c2 frr-9.1.3.tar.gz
|
||||
sha256 0f10aca9074c773c12be8a07382c7560d625d4a2c842d82261d18bb8f4b26f6c frr-10.3.tar.gz
|
||||
sha256 7bf053957d6c38e39a06a112c60ff35b228d3bd03edbe8c9a03508b051128d16 COPYING
|
||||
sha256 f9e0c21faf738da586281c0beaad3cd56204c19085a10fe05e4d3d7f8b5863d2 doc/licenses/BSD-2-Clause
|
||||
sha256 aca297b8fd3a43e3bb200f1e2e043c0db6c897325f5ff7f23f7530302a6bf713 doc/licenses/BSD-3-Clause
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
FRR_VERSION = 9.1.3
|
||||
FRR_VERSION = 10.3
|
||||
FRR_SITE = $(call github,FRRouting,frr,frr-$(FRR_VERSION))
|
||||
FRR_LICENSE = GPL-2.0+
|
||||
FRR_LICENSE_FILES = \
|
||||
@@ -38,14 +38,11 @@ FRR_CONF_ENV = \
|
||||
# Do not enable -fplugin=frr-format for production, see doc/developer/workflow.rst,
|
||||
# it is only intended for FRR's developments
|
||||
FRR_CONF_OPTS = --with-clippy=$(HOST_DIR)/bin/clippy \
|
||||
--sysconfdir=/etc/frr \
|
||||
--localstatedir=/var/run/frr \
|
||||
--with-moduledir=/usr/lib/frr/modules \
|
||||
--enable-configfile-mask=0640 \
|
||||
--enable-logfile-mask=0640 \
|
||||
--enable-multipath=256 \
|
||||
--disable-ospfclient \
|
||||
--enable-shell-access \
|
||||
--enable-user=frr \
|
||||
--enable-group=frr \
|
||||
--enable-vty-group=frrvty \
|
||||
@@ -86,6 +83,12 @@ else
|
||||
FRR_CONF_OPTS += --disable-zeromq
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_FRR_BFD),y)
|
||||
FRR_CONF_OPTS += --enable-bfdd
|
||||
else
|
||||
FRR_CONF_OPTS += --disable-bfdd
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
|
||||
FRR_CONF_ENV += LIBS=-latomic
|
||||
endif
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From d251b3cd408849d032c869846364964d1ddc7a9e Mon Sep 17 00:00:00 2001
|
||||
From 7fbcc55c3b2dac91dcb0a8dc6daa5514ff323185 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sat, 6 Aug 2016 17:32:50 -0700
|
||||
Subject: [PATCH] ppc/ptrace: Define pt_regs uapi_pt_regs on !GLIBC systems
|
||||
@@ -51,5 +51,5 @@ index 3ce978f4c7c..38534297cdf 100644
|
||||
#include "arch/ppc-linux-common.h"
|
||||
#include "arch/ppc-linux-tdesc.h"
|
||||
--
|
||||
2.47.1
|
||||
2.48.1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From a5098f7fb6ec72c3694d1e0c34e6db982110d944 Mon Sep 17 00:00:00 2001
|
||||
From ab3ce973d6423552de732a05ac9da04c22b21411 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
Date: Sat, 3 Jun 2017 21:23:52 +0200
|
||||
Subject: [PATCH] sh/ptrace: Define pt_{dsp,}regs uapi_pt_{dsp,}regs on !GLIBC
|
||||
@@ -39,5 +39,5 @@ index 64e6de3480b..4770e652614 100644
|
||||
#define sh_num_regs 41
|
||||
|
||||
--
|
||||
2.47.1
|
||||
2.48.1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 047f9e6b31e2d2dcc633d2d1749153a8bb4f5aa1 Mon Sep 17 00:00:00 2001
|
||||
From aa66834f88463c23a641c12e967bce68799cda47 Mon Sep 17 00:00:00 2001
|
||||
From: Andre McCurdy <amccurdy@gmail.com>
|
||||
Date: Sat, 30 Apr 2016 15:29:06 -0700
|
||||
Subject: [PATCH] use <asm/sgidefs.h>
|
||||
@@ -36,5 +36,5 @@ index 3d072ea935c..d763c9b8f7e 100644
|
||||
#include <asm/ptrace.h>
|
||||
#include "inf-ptrace.h"
|
||||
--
|
||||
2.47.1
|
||||
2.48.1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 15097e614fd3c686a69779a578a24b63b674925c Mon Sep 17 00:00:00 2001
|
||||
From cec7ed0cb055f960a689f2403a871a7e3e852e6e Mon Sep 17 00:00:00 2001
|
||||
From: Romain Naour <romain.naour@gmail.com>
|
||||
Date: Fri, 22 Jun 2018 22:40:26 +0200
|
||||
Subject: [PATCH] gdbserver: fix build for m68k
|
||||
@@ -60,5 +60,5 @@ index 8020e49ac6e..d9ba6235288 100644
|
||||
#define m68k_num_gregs 18
|
||||
|
||||
--
|
||||
2.47.1
|
||||
2.48.1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 4919bd469c1385cef4109280c6861db760001690 Mon Sep 17 00:00:00 2001
|
||||
From 11b382a75cae8f4599e9d3f8b85815d2d95a58fa Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
Date: Sun, 24 Jun 2018 23:33:55 +0200
|
||||
Subject: [PATCH] nat/fork-inferior: include linux-ptrace.h
|
||||
@@ -49,5 +49,5 @@ index 41765b102bc..a44a1d48722 100644
|
||||
|
||||
extern char **environ;
|
||||
--
|
||||
2.47.1
|
||||
2.48.1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 74c9d53de1c3c3de2e66e559889ce041f41e952a Mon Sep 17 00:00:00 2001
|
||||
From 95d6a5a844083585f4f7b235cba14be94595b04a Mon Sep 17 00:00:00 2001
|
||||
From: Peter Seiderer <ps.report@gmx.net>
|
||||
Date: Sat, 6 Nov 2021 10:06:25 +0100
|
||||
Subject: [PATCH] Fix getrandom compile for uclibc < v1.0.35
|
||||
@@ -35,5 +35,5 @@ index e1468730933..3948d8d552a 100644
|
||||
|
||||
#include <errno.h>
|
||||
--
|
||||
2.47.1
|
||||
2.48.1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 5895710a6692dfdf00fdb258b89dae6c6784eedc Mon Sep 17 00:00:00 2001
|
||||
From 76bee99c13ab44949c25582f49528cd0c661cdb3 Mon Sep 17 00:00:00 2001
|
||||
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
Date: Wed, 10 Nov 2021 23:14:54 +0100
|
||||
Subject: [PATCH] fix musl build on riscv
|
||||
@@ -56,5 +56,5 @@ index 44c805bb6d6..d43c3b9fe02 100644
|
||||
|
||||
class riscv_target : public linux_process_target
|
||||
--
|
||||
2.47.1
|
||||
2.48.1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From dd6ca97fa5fa5acd0fdaa5aa7e5aee33f92ba2df Mon Sep 17 00:00:00 2001
|
||||
From e5a09ecd2a222168a6c58eb57a171f64e75ad053 Mon Sep 17 00:00:00 2001
|
||||
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
Date: Thu, 18 Nov 2021 22:52:08 +0100
|
||||
Subject: [PATCH] gdbserver/Makefile.in: fix NLS build
|
||||
@@ -34,5 +34,5 @@ index 365dcf23650..42e1b7bcf6d 100644
|
||||
# Put the proper machine-specific files first, so M-. on a machine
|
||||
# specific routine gets the one for the correct machine.
|
||||
--
|
||||
2.47.1
|
||||
2.48.1
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From cbb4871a793965abbe53df76c699ff7c4936d4a3 Mon Sep 17 00:00:00 2001
|
||||
From 43501f9838e7aefd7d5d19aede49491591c34c98 Mon Sep 17 00:00:00 2001
|
||||
From: Romain Naour <romain.naour@gmail.com>
|
||||
Date: Sun, 28 Aug 2022 23:21:37 +0200
|
||||
Subject: [PATCH] gdb: Fix native build on xtensa
|
||||
@@ -53,5 +53,5 @@ index f8509b02e07..794be827f9a 100644
|
||||
/* Defines ps_err_e, struct ps_prochandle. */
|
||||
#include "gdb_proc_service.h"
|
||||
--
|
||||
2.47.1
|
||||
2.48.1
|
||||
|
||||
@@ -71,5 +71,5 @@ config BR2_GDB_VERSION
|
||||
default "arc-2023.09-release" if BR2_arc
|
||||
default "14.2" if BR2_GDB_VERSION_14 || (!BR2_PACKAGE_HOST_GDB && !BR2_TOOLCHAIN_GCC_AT_LEAST_9)
|
||||
default "15.1" if BR2_GDB_VERSION_15 || (!BR2_PACKAGE_HOST_GDB && BR2_TOOLCHAIN_GCC_AT_LEAST_9)
|
||||
default "16.1" if BR2_GDB_VERSION_16
|
||||
default "16.2" if BR2_GDB_VERSION_16
|
||||
depends on BR2_PACKAGE_GDB || BR2_PACKAGE_HOST_GDB
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# From https://gcc.gnu.org/pub/gdb/releases/sha512.sum
|
||||
sha512 7e07941f1fe661288cc571b4964012ceabc1760624fce20320db2f470c01439b2386f859b5288da13204b758e2e3b22a74c68c012178db93b9529b06f1e22ede gdb-14.2.tar.xz
|
||||
sha512 0217434073023a8b8316088bf3ee95d53a1b6a7897f6269095429016a8900f9a05e130c390d8d5d5550cc515c16519de1071d8eef96aa58e38056c7e37da1d8b gdb-15.1.tar.xz
|
||||
sha512 17b322fde0655a849506851c879aba9ad1f8bfee804b900efc718806091bec75511383bd4d632b8b32a32ef207233331581501157df18a8df528abe6ff667577 gdb-16.1.tar.xz
|
||||
sha512 f04a6335dbdee371edb7e3213294fcbb878ac39adedb73f7e17e621f54350488f5f5bea9bc742639239c122d590bed158771a74fc3aaeaa7fa0ae304232576a3 gdb-16.2.tar.xz
|
||||
|
||||
# Locally calculated (fetched from Github)
|
||||
sha512 3518b47d5c11d1fb478ee152bde1719363f9391db73f3b9f5491217c17742bef8ebca6a51a40302dfaa9476c5a32a8b8f70a4bf64289422dea5f750ae53ab88d gdb-arc-2023.09-release.tar.gz
|
||||
|
||||
@@ -22,7 +22,9 @@ config BR2_PACKAGE_GLIBC_ARCH_SUPPORTS
|
||||
default y if BR2_microblaze
|
||||
default y if BR2_arc && BR2_ARC_ATOMIC_EXT && !BR2_arc750d && !BR2_arc770d
|
||||
depends on !BR2_POWERPC_CPU_HAS_SPE
|
||||
depends on BR2_RISCV_ISA_RVA || !BR2_riscv
|
||||
# glibc needs atomic instructions, and does not support
|
||||
# single-precision floating point ABIs (ilp32f and lp64f)
|
||||
depends on (BR2_RISCV_ISA_RVA && !BR2_RISCV_ABI_ILP32F && !BR2_RISCV_ABI_LP64F) || !BR2_riscv
|
||||
depends on BR2_USE_MMU
|
||||
|
||||
config BR2_PACKAGE_GLIBC_SUPPORTS
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
# sha256 checksum from https://go.dev/dl/
|
||||
sha256 7cfabd46b73eb4c26b19d69515dd043d7183a6559acccd5cfdb25eb6b266a458 go1.23.7.src.tar.gz
|
||||
sha256 9115f7d751efe5b17b63a7630d24cd0a2479976465eecb277b5deec8aa0f4143 go1.23.7.linux-386.tar.gz
|
||||
sha256 4741525e69841f2e22f9992af25df0c1112b07501f61f741c12c6389fcb119f3 go1.23.7.linux-amd64.tar.gz
|
||||
sha256 597acbd0505250d4d98c4c83adf201562a8c812cbcd7b341689a07087a87a541 go1.23.7.linux-arm64.tar.gz
|
||||
sha256 c9e9ecd6a8cf1429f1c65d81115c450258258ac65833d95a82d5f4e5ad7d2d7a go1.23.7.linux-armv6l.tar.gz
|
||||
sha256 3ffc310bfd11fd0bcc713a764a0f7252c4d52d03f12abebfaebaaae77e027028 go1.23.7.linux-ppc64le.tar.gz
|
||||
sha256 af1d4c5d01e32c2cf6e3cc00e44cb240e1a6cef539b28a64389b2b9ca284ac6c go1.23.7.linux-s390x.tar.gz
|
||||
sha256 0ca1f1e37ea255e3ce283af3f4e628502fb444587da987a5bb96d6c6f15930d4 go1.23.8.src.tar.gz
|
||||
sha256 714b9d004063bfa27686f9ff0e5648bb190b3a5bc1e86b0aa16c134d8d8c315f go1.23.8.linux-386.tar.gz
|
||||
sha256 45b87381172a58d62c977f27c4683c8681ef36580abecd14fd124d24ca306d3f go1.23.8.linux-amd64.tar.gz
|
||||
sha256 9d6d938422724a954832d6f806d397cf85ccfde8c581c201673e50e634fdc992 go1.23.8.linux-arm64.tar.gz
|
||||
sha256 d14e0bea9fb25344a0460f395880d5589bbcd413ffd5555be48e46c0de084437 go1.23.8.linux-armv6l.tar.gz
|
||||
sha256 0cadab469e612b159f5f68b1a30d75aa7b7e1ed5292746005a6a3c8ff04e6f35 go1.23.8.linux-ppc64le.tar.gz
|
||||
sha256 cbe954ee534eb02aa782639716d8c25706dd171445f7c8336bd2fc0b8f6fe38e go1.23.8.linux-s390x.tar.gz
|
||||
sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 LICENSE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GO_VERSION = 1.23.7
|
||||
GO_VERSION = 1.23.8
|
||||
|
||||
HOST_GO_GOPATH = $(HOST_DIR)/share/go-path
|
||||
HOST_GO_HOST_CACHE = $(HOST_DIR)/share/host-go-cache
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# From https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-1.22.12.tar.xz.sha256sum
|
||||
sha256 015ff62789dab423edafe979b019c7de4c849a2b7e74912b20b74a70e5b68f72 gst-devtools-1.22.12.tar.xz
|
||||
# From https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-1.24.11.tar.xz.sha256sum
|
||||
sha256 73990a939c1ea9d9ca199b8cd135dd3a7120b495004aaa79299257d9cd897834 gst-devtools-1.24.11.tar.xz
|
||||
sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 validate/COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GST1_DEVTOOLS_VERSION = 1.22.12
|
||||
GST1_DEVTOOLS_VERSION = 1.24.11
|
||||
GST1_DEVTOOLS_SOURCE = gst-devtools-$(GST1_DEVTOOLS_VERSION).tar.xz
|
||||
GST1_DEVTOOLS_SITE = https://gstreamer.freedesktop.org/src/gst-devtools
|
||||
GST1_DEVTOOLS_LICENSE = LGPL-2.1+
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# From https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.22.12.tar.xz.sha256sum
|
||||
sha256 3b60d4cac2fbcd085a93e9389ca23e0443bee1ca75574d31d4f12bb1bbecab48 gst-libav-1.22.12.tar.xz
|
||||
# From https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.24.11.tar.xz.sha256sum
|
||||
sha256 13776fc16f7ce587d437d56d83e08c9224768dddc897dd3c88208d970a6aa422 gst-libav-1.24.11.tar.xz
|
||||
sha256 ad2eec519ebd4b5df86ea84dff24ae3bfa2edea846a703b58902dd221ae375db COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GST1_LIBAV_VERSION = 1.22.12
|
||||
GST1_LIBAV_VERSION = 1.24.11
|
||||
GST1_LIBAV_SOURCE = gst-libav-$(GST1_LIBAV_VERSION).tar.xz
|
||||
GST1_LIBAV_SITE = https://gstreamer.freedesktop.org/src/gst-libav
|
||||
GST1_LIBAV_LICENSE = LGPL-2.1+
|
||||
|
||||
@@ -1,883 +0,0 @@
|
||||
From d5755744c3e2b70e9f04704ae9d18b928d9fa456 Mon Sep 17 00:00:00 2001
|
||||
From: Arun Raghavan <arun@asymptotic.io>
|
||||
Date: Wed, 2 Dec 2020 18:31:44 -0500
|
||||
Subject: [PATCH] webrtcdsp: Update code for webrtc-audio-processing-1
|
||||
|
||||
Updated API usage appropriately, and now we have a versioned package to
|
||||
track breaking vs. non-breaking updates.
|
||||
|
||||
Deprecates a number of properties (and we have to plug in our own values
|
||||
for related enums which are now gone):
|
||||
|
||||
* echo-suprression-level
|
||||
* experimental-agc
|
||||
* extended-filter
|
||||
* delay-agnostic
|
||||
* voice-detection-frame-size-ms
|
||||
* voice-detection-likelihood
|
||||
|
||||
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2943>
|
||||
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
|
||||
Upstream: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/d5755744c3e2b70e9f04704ae9d18b928d9fa456
|
||||
---
|
||||
.../ext/webrtcdsp/gstwebrtcdsp.cpp | 271 +++++++-----------
|
||||
.../ext/webrtcdsp/gstwebrtcechoprobe.cpp | 87 +++---
|
||||
.../ext/webrtcdsp/gstwebrtcechoprobe.h | 9 +-
|
||||
.../gst-plugins-bad/ext/webrtcdsp/meson.build | 4 +-
|
||||
4 files changed, 164 insertions(+), 207 deletions(-)
|
||||
|
||||
diff --git a/ext/webrtcdsp/gstwebrtcdsp.cpp b/ext/webrtcdsp/gstwebrtcdsp.cpp
|
||||
index 7ee09488fb..c9a7cdae2f 100644
|
||||
--- a/ext/webrtcdsp/gstwebrtcdsp.cpp
|
||||
+++ b/ext/webrtcdsp/gstwebrtcdsp.cpp
|
||||
@@ -71,9 +71,7 @@
|
||||
#include "gstwebrtcdsp.h"
|
||||
#include "gstwebrtcechoprobe.h"
|
||||
|
||||
-#include <webrtc/modules/audio_processing/include/audio_processing.h>
|
||||
-#include <webrtc/modules/interface/module_common_types.h>
|
||||
-#include <webrtc/system_wrappers/include/trace.h>
|
||||
+#include <modules/audio_processing/include/audio_processing.h>
|
||||
|
||||
GST_DEBUG_CATEGORY (webrtc_dsp_debug);
|
||||
#define GST_CAT_DEFAULT (webrtc_dsp_debug)
|
||||
@@ -82,10 +80,9 @@ GST_DEBUG_CATEGORY (webrtc_dsp_debug);
|
||||
#define DEFAULT_COMPRESSION_GAIN_DB 9
|
||||
#define DEFAULT_STARTUP_MIN_VOLUME 12
|
||||
#define DEFAULT_LIMITER TRUE
|
||||
-#define DEFAULT_GAIN_CONTROL_MODE webrtc::GainControl::kAdaptiveDigital
|
||||
+#define DEFAULT_GAIN_CONTROL_MODE webrtc::AudioProcessing::Config::GainController1::Mode::kAdaptiveDigital
|
||||
#define DEFAULT_VOICE_DETECTION FALSE
|
||||
#define DEFAULT_VOICE_DETECTION_FRAME_SIZE_MS 10
|
||||
-#define DEFAULT_VOICE_DETECTION_LIKELIHOOD webrtc::VoiceDetection::kLowLikelihood
|
||||
|
||||
static GstStaticPadTemplate gst_webrtc_dsp_sink_template =
|
||||
GST_STATIC_PAD_TEMPLATE ("sink",
|
||||
@@ -119,7 +116,7 @@ GST_STATIC_PAD_TEMPLATE ("src",
|
||||
"channels = (int) [1, MAX]")
|
||||
);
|
||||
|
||||
-typedef webrtc::EchoCancellation::SuppressionLevel GstWebrtcEchoSuppressionLevel;
|
||||
+typedef int GstWebrtcEchoSuppressionLevel;
|
||||
#define GST_TYPE_WEBRTC_ECHO_SUPPRESSION_LEVEL \
|
||||
(gst_webrtc_echo_suppression_level_get_type ())
|
||||
static GType
|
||||
@@ -127,10 +124,9 @@ gst_webrtc_echo_suppression_level_get_type (void)
|
||||
{
|
||||
static GType suppression_level_type = 0;
|
||||
static const GEnumValue level_types[] = {
|
||||
- {webrtc::EchoCancellation::kLowSuppression, "Low Suppression", "low"},
|
||||
- {webrtc::EchoCancellation::kModerateSuppression,
|
||||
- "Moderate Suppression", "moderate"},
|
||||
- {webrtc::EchoCancellation::kHighSuppression, "high Suppression", "high"},
|
||||
+ {1, "Low Suppression", "low"},
|
||||
+ {2, "Moderate Suppression", "moderate"},
|
||||
+ {3, "high Suppression", "high"},
|
||||
{0, NULL, NULL}
|
||||
};
|
||||
|
||||
@@ -141,7 +137,7 @@ gst_webrtc_echo_suppression_level_get_type (void)
|
||||
return suppression_level_type;
|
||||
}
|
||||
|
||||
-typedef webrtc::NoiseSuppression::Level GstWebrtcNoiseSuppressionLevel;
|
||||
+typedef webrtc::AudioProcessing::Config::NoiseSuppression::Level GstWebrtcNoiseSuppressionLevel;
|
||||
#define GST_TYPE_WEBRTC_NOISE_SUPPRESSION_LEVEL \
|
||||
(gst_webrtc_noise_suppression_level_get_type ())
|
||||
static GType
|
||||
@@ -149,10 +145,10 @@ gst_webrtc_noise_suppression_level_get_type (void)
|
||||
{
|
||||
static GType suppression_level_type = 0;
|
||||
static const GEnumValue level_types[] = {
|
||||
- {webrtc::NoiseSuppression::kLow, "Low Suppression", "low"},
|
||||
- {webrtc::NoiseSuppression::kModerate, "Moderate Suppression", "moderate"},
|
||||
- {webrtc::NoiseSuppression::kHigh, "High Suppression", "high"},
|
||||
- {webrtc::NoiseSuppression::kVeryHigh, "Very High Suppression",
|
||||
+ {webrtc::AudioProcessing::Config::NoiseSuppression::Level::kLow, "Low Suppression", "low"},
|
||||
+ {webrtc::AudioProcessing::Config::NoiseSuppression::Level::kModerate, "Moderate Suppression", "moderate"},
|
||||
+ {webrtc::AudioProcessing::Config::NoiseSuppression::Level::kHigh, "High Suppression", "high"},
|
||||
+ {webrtc::AudioProcessing::Config::NoiseSuppression::Level::kVeryHigh, "Very High Suppression",
|
||||
"very-high"},
|
||||
{0, NULL, NULL}
|
||||
};
|
||||
@@ -164,7 +160,7 @@ gst_webrtc_noise_suppression_level_get_type (void)
|
||||
return suppression_level_type;
|
||||
}
|
||||
|
||||
-typedef webrtc::GainControl::Mode GstWebrtcGainControlMode;
|
||||
+typedef webrtc::AudioProcessing::Config::GainController1::Mode GstWebrtcGainControlMode;
|
||||
#define GST_TYPE_WEBRTC_GAIN_CONTROL_MODE \
|
||||
(gst_webrtc_gain_control_mode_get_type ())
|
||||
static GType
|
||||
@@ -172,8 +168,9 @@ gst_webrtc_gain_control_mode_get_type (void)
|
||||
{
|
||||
static GType gain_control_mode_type = 0;
|
||||
static const GEnumValue mode_types[] = {
|
||||
- {webrtc::GainControl::kAdaptiveDigital, "Adaptive Digital", "adaptive-digital"},
|
||||
- {webrtc::GainControl::kFixedDigital, "Fixed Digital", "fixed-digital"},
|
||||
+ {webrtc::AudioProcessing::Config::GainController1::kAdaptiveDigital, "Adaptive Digital", "adaptive-digital"},
|
||||
+ {webrtc::AudioProcessing::Config::GainController1::kFixedDigital, "Fixed Digital", "fixed-digital"},
|
||||
+ {webrtc::AudioProcessing::Config::GainController1::kAdaptiveAnalog, "Adaptive Analog", "adaptive-analog"},
|
||||
{0, NULL, NULL}
|
||||
};
|
||||
|
||||
@@ -184,7 +181,7 @@ gst_webrtc_gain_control_mode_get_type (void)
|
||||
return gain_control_mode_type;
|
||||
}
|
||||
|
||||
-typedef webrtc::VoiceDetection::Likelihood GstWebrtcVoiceDetectionLikelihood;
|
||||
+typedef int GstWebrtcVoiceDetectionLikelihood;
|
||||
#define GST_TYPE_WEBRTC_VOICE_DETECTION_LIKELIHOOD \
|
||||
(gst_webrtc_voice_detection_likelihood_get_type ())
|
||||
static GType
|
||||
@@ -192,10 +189,10 @@ gst_webrtc_voice_detection_likelihood_get_type (void)
|
||||
{
|
||||
static GType likelihood_type = 0;
|
||||
static const GEnumValue likelihood_types[] = {
|
||||
- {webrtc::VoiceDetection::kVeryLowLikelihood, "Very Low Likelihood", "very-low"},
|
||||
- {webrtc::VoiceDetection::kLowLikelihood, "Low Likelihood", "low"},
|
||||
- {webrtc::VoiceDetection::kModerateLikelihood, "Moderate Likelihood", "moderate"},
|
||||
- {webrtc::VoiceDetection::kHighLikelihood, "High Likelihood", "high"},
|
||||
+ {1, "Very Low Likelihood", "very-low"},
|
||||
+ {2, "Low Likelihood", "low"},
|
||||
+ {3, "Moderate Likelihood", "moderate"},
|
||||
+ {4, "High Likelihood", "high"},
|
||||
{0, NULL, NULL}
|
||||
};
|
||||
|
||||
@@ -227,6 +224,7 @@ enum
|
||||
PROP_VOICE_DETECTION,
|
||||
PROP_VOICE_DETECTION_FRAME_SIZE_MS,
|
||||
PROP_VOICE_DETECTION_LIKELIHOOD,
|
||||
+ PROP_EXTRA_DELAY_MS,
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -248,7 +246,7 @@ struct _GstWebrtcDsp
|
||||
/* Protected by the stream lock */
|
||||
GstAdapter *adapter;
|
||||
GstPlanarAudioAdapter *padapter;
|
||||
- webrtc::AudioProcessing * apm;
|
||||
+ webrtc::AudioProcessing *apm;
|
||||
|
||||
/* Protected by the object lock */
|
||||
gchar *probe_name;
|
||||
@@ -257,21 +255,15 @@ struct _GstWebrtcDsp
|
||||
/* Properties */
|
||||
gboolean high_pass_filter;
|
||||
gboolean echo_cancel;
|
||||
- webrtc::EchoCancellation::SuppressionLevel echo_suppression_level;
|
||||
gboolean noise_suppression;
|
||||
- webrtc::NoiseSuppression::Level noise_suppression_level;
|
||||
+ webrtc::AudioProcessing::Config::NoiseSuppression::Level noise_suppression_level;
|
||||
gboolean gain_control;
|
||||
- gboolean experimental_agc;
|
||||
- gboolean extended_filter;
|
||||
- gboolean delay_agnostic;
|
||||
gint target_level_dbfs;
|
||||
gint compression_gain_db;
|
||||
gint startup_min_volume;
|
||||
gboolean limiter;
|
||||
- webrtc::GainControl::Mode gain_control_mode;
|
||||
+ webrtc::AudioProcessing::Config::GainController1::Mode gain_control_mode;
|
||||
gboolean voice_detection;
|
||||
- gint voice_detection_frame_size_ms;
|
||||
- webrtc::VoiceDetection::Likelihood voice_detection_likelihood;
|
||||
};
|
||||
|
||||
G_DEFINE_TYPE_WITH_CODE (GstWebrtcDsp, gst_webrtc_dsp, GST_TYPE_AUDIO_FILTER,
|
||||
@@ -376,9 +368,9 @@ gst_webrtc_dsp_analyze_reverse_stream (GstWebrtcDsp * self,
|
||||
GstClockTime rec_time)
|
||||
{
|
||||
GstWebrtcEchoProbe *probe = NULL;
|
||||
- webrtc::AudioProcessing * apm;
|
||||
- webrtc::AudioFrame frame;
|
||||
+ webrtc::AudioProcessing *apm;
|
||||
GstBuffer *buf = NULL;
|
||||
+ GstAudioBuffer abuf;
|
||||
GstFlowReturn ret = GST_FLOW_OK;
|
||||
gint err, delay;
|
||||
|
||||
@@ -391,48 +383,44 @@ gst_webrtc_dsp_analyze_reverse_stream (GstWebrtcDsp * self,
|
||||
if (!probe)
|
||||
return GST_FLOW_OK;
|
||||
|
||||
+ webrtc::StreamConfig config (probe->info.rate, probe->info.channels,
|
||||
+ false);
|
||||
apm = self->apm;
|
||||
|
||||
- if (self->delay_agnostic)
|
||||
- rec_time = GST_CLOCK_TIME_NONE;
|
||||
-
|
||||
-again:
|
||||
- delay = gst_webrtc_echo_probe_read (probe, rec_time, (gpointer) &frame, &buf);
|
||||
+ delay = gst_webrtc_echo_probe_read (probe, rec_time, &buf);
|
||||
apm->set_stream_delay_ms (delay);
|
||||
|
||||
+ g_return_val_if_fail (buf != NULL, GST_FLOW_ERROR);
|
||||
+
|
||||
if (delay < 0)
|
||||
goto done;
|
||||
|
||||
- if (frame.sample_rate_hz_ != self->info.rate) {
|
||||
+ if (probe->info.rate != self->info.rate) {
|
||||
GST_ELEMENT_ERROR (self, STREAM, FORMAT,
|
||||
("Echo Probe has rate %i , while the DSP is running at rate %i,"
|
||||
" use a caps filter to ensure those are the same.",
|
||||
- frame.sample_rate_hz_, self->info.rate), (NULL));
|
||||
+ probe->info.rate, self->info.rate), (NULL));
|
||||
ret = GST_FLOW_ERROR;
|
||||
goto done;
|
||||
}
|
||||
|
||||
- if (buf) {
|
||||
- webrtc::StreamConfig config (frame.sample_rate_hz_, frame.num_channels_,
|
||||
- false);
|
||||
- GstAudioBuffer abuf;
|
||||
- float * const * data;
|
||||
+ gst_audio_buffer_map (&abuf, &self->info, buf, GST_MAP_READWRITE);
|
||||
+
|
||||
+ if (probe->interleaved) {
|
||||
+ int16_t * const data = (int16_t * const) abuf.planes[0];
|
||||
|
||||
- gst_audio_buffer_map (&abuf, &self->info, buf, GST_MAP_READWRITE);
|
||||
- data = (float * const *) abuf.planes;
|
||||
if ((err = apm->ProcessReverseStream (data, config, config, data)) < 0)
|
||||
GST_WARNING_OBJECT (self, "Reverse stream analyses failed: %s.",
|
||||
webrtc_error_to_string (err));
|
||||
- gst_audio_buffer_unmap (&abuf);
|
||||
- gst_buffer_replace (&buf, NULL);
|
||||
} else {
|
||||
- if ((err = apm->AnalyzeReverseStream (&frame)) < 0)
|
||||
+ float * const * data = (float * const *) abuf.planes;
|
||||
+
|
||||
+ if ((err = apm->ProcessReverseStream (data, config, config, data)) < 0)
|
||||
GST_WARNING_OBJECT (self, "Reverse stream analyses failed: %s.",
|
||||
webrtc_error_to_string (err));
|
||||
}
|
||||
|
||||
- if (self->delay_agnostic)
|
||||
- goto again;
|
||||
+ gst_audio_buffer_unmap (&abuf);
|
||||
|
||||
done:
|
||||
gst_object_unref (probe);
|
||||
@@ -443,16 +431,14 @@ done:
|
||||
|
||||
static void
|
||||
gst_webrtc_vad_post_activity (GstWebrtcDsp *self, GstBuffer *buffer,
|
||||
- gboolean stream_has_voice)
|
||||
+ gboolean stream_has_voice, guint8 level)
|
||||
{
|
||||
GstClockTime timestamp = GST_BUFFER_PTS (buffer);
|
||||
GstBaseTransform *trans = GST_BASE_TRANSFORM_CAST (self);
|
||||
GstStructure *s;
|
||||
GstClockTime stream_time;
|
||||
GstAudioLevelMeta *meta;
|
||||
- guint8 level;
|
||||
|
||||
- level = self->apm->level_estimator ()->RMS ();
|
||||
meta = gst_buffer_get_audio_level_meta (buffer);
|
||||
if (meta) {
|
||||
meta->voice_activity = stream_has_voice;
|
||||
@@ -481,6 +467,7 @@ gst_webrtc_dsp_process_stream (GstWebrtcDsp * self,
|
||||
{
|
||||
GstAudioBuffer abuf;
|
||||
webrtc::AudioProcessing * apm = self->apm;
|
||||
+ webrtc::StreamConfig config (self->info.rate, self->info.channels, false);
|
||||
gint err;
|
||||
|
||||
if (!gst_audio_buffer_map (&abuf, &self->info, buffer,
|
||||
@@ -490,19 +477,10 @@ gst_webrtc_dsp_process_stream (GstWebrtcDsp * self,
|
||||
}
|
||||
|
||||
if (self->interleaved) {
|
||||
- webrtc::AudioFrame frame;
|
||||
- frame.num_channels_ = self->info.channels;
|
||||
- frame.sample_rate_hz_ = self->info.rate;
|
||||
- frame.samples_per_channel_ = self->period_samples;
|
||||
-
|
||||
- memcpy (frame.data_, abuf.planes[0], self->period_size);
|
||||
- err = apm->ProcessStream (&frame);
|
||||
- if (err >= 0)
|
||||
- memcpy (abuf.planes[0], frame.data_, self->period_size);
|
||||
+ int16_t * const data = (int16_t * const) abuf.planes[0];
|
||||
+ err = apm->ProcessStream (data, config, config, data);
|
||||
} else {
|
||||
float * const * data = (float * const *) abuf.planes;
|
||||
- webrtc::StreamConfig config (self->info.rate, self->info.channels, false);
|
||||
-
|
||||
err = apm->ProcessStream (data, config, config, data);
|
||||
}
|
||||
|
||||
@@ -511,10 +489,13 @@ gst_webrtc_dsp_process_stream (GstWebrtcDsp * self,
|
||||
webrtc_error_to_string (err));
|
||||
} else {
|
||||
if (self->voice_detection) {
|
||||
- gboolean stream_has_voice = apm->voice_detection ()->stream_has_voice ();
|
||||
+ webrtc::AudioProcessingStats stats = apm->GetStatistics ();
|
||||
+ gboolean stream_has_voice = stats.voice_detected && *stats.voice_detected;
|
||||
+ // The meta takes the value as -dbov, so we negate
|
||||
+ guint8 level = stats.output_rms_dbfs ? (guint8) -(*stats.output_rms_dbfs) : 127;
|
||||
|
||||
if (stream_has_voice != self->stream_has_voice)
|
||||
- gst_webrtc_vad_post_activity (self, buffer, stream_has_voice);
|
||||
+ gst_webrtc_vad_post_activity (self, buffer, stream_has_voice, level);
|
||||
|
||||
self->stream_has_voice = stream_has_voice;
|
||||
}
|
||||
@@ -583,21 +564,9 @@ static gboolean
|
||||
gst_webrtc_dsp_start (GstBaseTransform * btrans)
|
||||
{
|
||||
GstWebrtcDsp *self = GST_WEBRTC_DSP (btrans);
|
||||
- webrtc::Config config;
|
||||
|
||||
GST_OBJECT_LOCK (self);
|
||||
|
||||
- config.Set < webrtc::ExtendedFilter >
|
||||
- (new webrtc::ExtendedFilter (self->extended_filter));
|
||||
- config.Set < webrtc::ExperimentalAgc >
|
||||
- (new webrtc::ExperimentalAgc (self->experimental_agc, self->startup_min_volume));
|
||||
- config.Set < webrtc::DelayAgnostic >
|
||||
- (new webrtc::DelayAgnostic (self->delay_agnostic));
|
||||
-
|
||||
- /* TODO Intelligibility enhancer, Beamforming, etc. */
|
||||
-
|
||||
- self->apm = webrtc::AudioProcessing::Create (config);
|
||||
-
|
||||
if (self->echo_cancel) {
|
||||
self->probe = gst_webrtc_acquire_echo_probe (self->probe_name);
|
||||
|
||||
@@ -618,10 +587,8 @@ static gboolean
|
||||
gst_webrtc_dsp_setup (GstAudioFilter * filter, const GstAudioInfo * info)
|
||||
{
|
||||
GstWebrtcDsp *self = GST_WEBRTC_DSP (filter);
|
||||
- webrtc::AudioProcessing * apm;
|
||||
- webrtc::ProcessingConfig pconfig;
|
||||
+ webrtc::AudioProcessing::Config config;
|
||||
GstAudioInfo probe_info = *info;
|
||||
- gint err = 0;
|
||||
|
||||
GST_LOG_OBJECT (self, "setting format to %s with %i Hz and %i channels",
|
||||
info->finfo->description, info->rate, info->channels);
|
||||
@@ -633,7 +600,7 @@ gst_webrtc_dsp_setup (GstAudioFilter * filter, const GstAudioInfo * info)
|
||||
|
||||
self->info = *info;
|
||||
self->interleaved = (info->layout == GST_AUDIO_LAYOUT_INTERLEAVED);
|
||||
- apm = self->apm;
|
||||
+ self->apm = webrtc::AudioProcessingBuilder().Create();
|
||||
|
||||
if (!self->interleaved)
|
||||
gst_planar_audio_adapter_configure (self->padapter, info);
|
||||
@@ -642,8 +609,7 @@ gst_webrtc_dsp_setup (GstAudioFilter * filter, const GstAudioInfo * info)
|
||||
self->period_samples = info->rate / 100;
|
||||
self->period_size = self->period_samples * info->bpf;
|
||||
|
||||
- if (self->interleaved &&
|
||||
- (webrtc::AudioFrame::kMaxDataSizeSamples * 2) < self->period_size)
|
||||
+ if (self->interleaved && (self->period_size > MAX_DATA_SIZE_SAMPLES * 2))
|
||||
goto period_too_big;
|
||||
|
||||
if (self->probe) {
|
||||
@@ -658,40 +624,31 @@ gst_webrtc_dsp_setup (GstAudioFilter * filter, const GstAudioInfo * info)
|
||||
GST_WEBRTC_ECHO_PROBE_UNLOCK (self->probe);
|
||||
}
|
||||
|
||||
- /* input stream */
|
||||
- pconfig.streams[webrtc::ProcessingConfig::kInputStream] =
|
||||
- webrtc::StreamConfig (info->rate, info->channels, false);
|
||||
- /* output stream */
|
||||
- pconfig.streams[webrtc::ProcessingConfig::kOutputStream] =
|
||||
- webrtc::StreamConfig (info->rate, info->channels, false);
|
||||
- /* reverse input stream */
|
||||
- pconfig.streams[webrtc::ProcessingConfig::kReverseInputStream] =
|
||||
- webrtc::StreamConfig (probe_info.rate, probe_info.channels, false);
|
||||
- /* reverse output stream */
|
||||
- pconfig.streams[webrtc::ProcessingConfig::kReverseOutputStream] =
|
||||
- webrtc::StreamConfig (probe_info.rate, probe_info.channels, false);
|
||||
-
|
||||
- if ((err = apm->Initialize (pconfig)) < 0)
|
||||
- goto initialize_failed;
|
||||
-
|
||||
/* Setup Filters */
|
||||
+ // TODO: expose pre_amplifier
|
||||
+
|
||||
if (self->high_pass_filter) {
|
||||
GST_DEBUG_OBJECT (self, "Enabling High Pass filter");
|
||||
- apm->high_pass_filter ()->Enable (true);
|
||||
+ config.high_pass_filter.enabled = true;
|
||||
}
|
||||
|
||||
if (self->echo_cancel) {
|
||||
GST_DEBUG_OBJECT (self, "Enabling Echo Cancellation");
|
||||
- apm->echo_cancellation ()->enable_drift_compensation (false);
|
||||
- apm->echo_cancellation ()
|
||||
- ->set_suppression_level (self->echo_suppression_level);
|
||||
- apm->echo_cancellation ()->Enable (true);
|
||||
+ config.echo_canceller.enabled = true;
|
||||
}
|
||||
|
||||
if (self->noise_suppression) {
|
||||
GST_DEBUG_OBJECT (self, "Enabling Noise Suppression");
|
||||
- apm->noise_suppression ()->set_level (self->noise_suppression_level);
|
||||
- apm->noise_suppression ()->Enable (true);
|
||||
+ config.noise_suppression.enabled = true;
|
||||
+ config.noise_suppression.level = self->noise_suppression_level;
|
||||
+ }
|
||||
+
|
||||
+ // TODO: expose transient suppression
|
||||
+
|
||||
+ if (self->voice_detection) {
|
||||
+ GST_DEBUG_OBJECT (self, "Enabling Voice Activity Detection");
|
||||
+ config.voice_detection.enabled = true;
|
||||
+ self->stream_has_voice = FALSE;
|
||||
}
|
||||
|
||||
if (self->gain_control) {
|
||||
@@ -706,30 +663,17 @@ gst_webrtc_dsp_setup (GstAudioFilter * filter, const GstAudioInfo * info)
|
||||
|
||||
g_type_class_unref (mode_class);
|
||||
|
||||
- apm->gain_control ()->set_mode (self->gain_control_mode);
|
||||
- apm->gain_control ()->set_target_level_dbfs (self->target_level_dbfs);
|
||||
- apm->gain_control ()->set_compression_gain_db (self->compression_gain_db);
|
||||
- apm->gain_control ()->enable_limiter (self->limiter);
|
||||
- apm->gain_control ()->Enable (true);
|
||||
+ config.gain_controller1.enabled = true;
|
||||
+ config.gain_controller1.target_level_dbfs = self->target_level_dbfs;
|
||||
+ config.gain_controller1.compression_gain_db = self->compression_gain_db;
|
||||
+ config.gain_controller1.enable_limiter = self->limiter;
|
||||
+ config.level_estimation.enabled = true;
|
||||
}
|
||||
|
||||
- if (self->voice_detection) {
|
||||
- GEnumClass *likelihood_class = (GEnumClass *)
|
||||
- g_type_class_ref (GST_TYPE_WEBRTC_VOICE_DETECTION_LIKELIHOOD);
|
||||
- GST_DEBUG_OBJECT (self, "Enabling Voice Activity Detection, frame size "
|
||||
- "%d milliseconds, likelihood: %s", self->voice_detection_frame_size_ms,
|
||||
- g_enum_get_value (likelihood_class,
|
||||
- self->voice_detection_likelihood)->value_name);
|
||||
- g_type_class_unref (likelihood_class);
|
||||
+ // TODO: expose gain controller 2
|
||||
+ // TODO: expose residual echo detector
|
||||
|
||||
- self->stream_has_voice = FALSE;
|
||||
-
|
||||
- apm->voice_detection ()->Enable (true);
|
||||
- apm->voice_detection ()->set_likelihood (self->voice_detection_likelihood);
|
||||
- apm->voice_detection ()->set_frame_size_ms (
|
||||
- self->voice_detection_frame_size_ms);
|
||||
- apm->level_estimator ()->Enable (true);
|
||||
- }
|
||||
+ self->apm->ApplyConfig (config);
|
||||
|
||||
GST_OBJECT_UNLOCK (self);
|
||||
|
||||
@@ -738,9 +682,9 @@ gst_webrtc_dsp_setup (GstAudioFilter * filter, const GstAudioInfo * info)
|
||||
period_too_big:
|
||||
GST_OBJECT_UNLOCK (self);
|
||||
GST_WARNING_OBJECT (self, "webrtcdsp format produce too big period "
|
||||
- "(maximum is %" G_GSIZE_FORMAT " samples and we have %u samples), "
|
||||
+ "(maximum is %d samples and we have %u samples), "
|
||||
"reduce the number of channels or the rate.",
|
||||
- webrtc::AudioFrame::kMaxDataSizeSamples, self->period_size / 2);
|
||||
+ MAX_DATA_SIZE_SAMPLES, self->period_size / 2);
|
||||
return FALSE;
|
||||
|
||||
probe_has_wrong_rate:
|
||||
@@ -751,14 +695,6 @@ probe_has_wrong_rate:
|
||||
" use a caps filter to ensure those are the same.",
|
||||
probe_info.rate, info->rate), (NULL));
|
||||
return FALSE;
|
||||
-
|
||||
-initialize_failed:
|
||||
- GST_OBJECT_UNLOCK (self);
|
||||
- GST_ELEMENT_ERROR (self, LIBRARY, INIT,
|
||||
- ("Failed to initialize WebRTC Audio Processing library"),
|
||||
- ("webrtc::AudioProcessing::Initialize() failed: %s",
|
||||
- webrtc_error_to_string (err)));
|
||||
- return FALSE;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
@@ -803,8 +739,6 @@ gst_webrtc_dsp_set_property (GObject * object,
|
||||
self->echo_cancel = g_value_get_boolean (value);
|
||||
break;
|
||||
case PROP_ECHO_SUPPRESSION_LEVEL:
|
||||
- self->echo_suppression_level =
|
||||
- (GstWebrtcEchoSuppressionLevel) g_value_get_enum (value);
|
||||
break;
|
||||
case PROP_NOISE_SUPPRESSION:
|
||||
self->noise_suppression = g_value_get_boolean (value);
|
||||
@@ -817,13 +751,10 @@ gst_webrtc_dsp_set_property (GObject * object,
|
||||
self->gain_control = g_value_get_boolean (value);
|
||||
break;
|
||||
case PROP_EXPERIMENTAL_AGC:
|
||||
- self->experimental_agc = g_value_get_boolean (value);
|
||||
break;
|
||||
case PROP_EXTENDED_FILTER:
|
||||
- self->extended_filter = g_value_get_boolean (value);
|
||||
break;
|
||||
case PROP_DELAY_AGNOSTIC:
|
||||
- self->delay_agnostic = g_value_get_boolean (value);
|
||||
break;
|
||||
case PROP_TARGET_LEVEL_DBFS:
|
||||
self->target_level_dbfs = g_value_get_int (value);
|
||||
@@ -845,11 +776,8 @@ gst_webrtc_dsp_set_property (GObject * object,
|
||||
self->voice_detection = g_value_get_boolean (value);
|
||||
break;
|
||||
case PROP_VOICE_DETECTION_FRAME_SIZE_MS:
|
||||
- self->voice_detection_frame_size_ms = g_value_get_int (value);
|
||||
break;
|
||||
case PROP_VOICE_DETECTION_LIKELIHOOD:
|
||||
- self->voice_detection_likelihood =
|
||||
- (GstWebrtcVoiceDetectionLikelihood) g_value_get_enum (value);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||||
@@ -876,7 +804,7 @@ gst_webrtc_dsp_get_property (GObject * object,
|
||||
g_value_set_boolean (value, self->echo_cancel);
|
||||
break;
|
||||
case PROP_ECHO_SUPPRESSION_LEVEL:
|
||||
- g_value_set_enum (value, self->echo_suppression_level);
|
||||
+ g_value_set_enum (value, (GstWebrtcEchoSuppressionLevel) 2);
|
||||
break;
|
||||
case PROP_NOISE_SUPPRESSION:
|
||||
g_value_set_boolean (value, self->noise_suppression);
|
||||
@@ -888,13 +816,13 @@ gst_webrtc_dsp_get_property (GObject * object,
|
||||
g_value_set_boolean (value, self->gain_control);
|
||||
break;
|
||||
case PROP_EXPERIMENTAL_AGC:
|
||||
- g_value_set_boolean (value, self->experimental_agc);
|
||||
+ g_value_set_boolean (value, false);
|
||||
break;
|
||||
case PROP_EXTENDED_FILTER:
|
||||
- g_value_set_boolean (value, self->extended_filter);
|
||||
+ g_value_set_boolean (value, false);
|
||||
break;
|
||||
case PROP_DELAY_AGNOSTIC:
|
||||
- g_value_set_boolean (value, self->delay_agnostic);
|
||||
+ g_value_set_boolean (value, false);
|
||||
break;
|
||||
case PROP_TARGET_LEVEL_DBFS:
|
||||
g_value_set_int (value, self->target_level_dbfs);
|
||||
@@ -915,10 +843,10 @@ gst_webrtc_dsp_get_property (GObject * object,
|
||||
g_value_set_boolean (value, self->voice_detection);
|
||||
break;
|
||||
case PROP_VOICE_DETECTION_FRAME_SIZE_MS:
|
||||
- g_value_set_int (value, self->voice_detection_frame_size_ms);
|
||||
+ g_value_set_int (value, 0);
|
||||
break;
|
||||
case PROP_VOICE_DETECTION_LIKELIHOOD:
|
||||
- g_value_set_enum (value, self->voice_detection_likelihood);
|
||||
+ g_value_set_enum (value, 2);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||||
@@ -1005,13 +933,13 @@ gst_webrtc_dsp_class_init (GstWebrtcDspClass * klass)
|
||||
|
||||
g_object_class_install_property (gobject_class,
|
||||
PROP_ECHO_SUPPRESSION_LEVEL,
|
||||
- g_param_spec_enum ("echo-suppression-level", "Echo Suppression Level",
|
||||
+ g_param_spec_enum ("echo-suppression-level",
|
||||
+ "Echo Suppression Level (does nothing)",
|
||||
"Controls the aggressiveness of the suppressor. A higher level "
|
||||
"trades off double-talk performance for increased echo suppression.",
|
||||
- GST_TYPE_WEBRTC_ECHO_SUPPRESSION_LEVEL,
|
||||
- webrtc::EchoCancellation::kModerateSuppression,
|
||||
+ GST_TYPE_WEBRTC_ECHO_SUPPRESSION_LEVEL, 2,
|
||||
(GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
|
||||
- G_PARAM_CONSTRUCT)));
|
||||
+ G_PARAM_CONSTRUCT | G_PARAM_DEPRECATED)));
|
||||
|
||||
g_object_class_install_property (gobject_class,
|
||||
PROP_NOISE_SUPPRESSION,
|
||||
@@ -1026,7 +954,7 @@ gst_webrtc_dsp_class_init (GstWebrtcDspClass * klass)
|
||||
"Controls the aggressiveness of the suppression. Increasing the "
|
||||
"level will reduce the noise level at the expense of a higher "
|
||||
"speech distortion.", GST_TYPE_WEBRTC_NOISE_SUPPRESSION_LEVEL,
|
||||
- webrtc::EchoCancellation::kModerateSuppression,
|
||||
+ webrtc::AudioProcessing::Config::NoiseSuppression::Level::kModerate,
|
||||
(GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
|
||||
G_PARAM_CONSTRUCT)));
|
||||
|
||||
@@ -1039,24 +967,26 @@ gst_webrtc_dsp_class_init (GstWebrtcDspClass * klass)
|
||||
|
||||
g_object_class_install_property (gobject_class,
|
||||
PROP_EXPERIMENTAL_AGC,
|
||||
- g_param_spec_boolean ("experimental-agc", "Experimental AGC",
|
||||
+ g_param_spec_boolean ("experimental-agc",
|
||||
+ "Experimental AGC (does nothing)",
|
||||
"Enable or disable experimental automatic gain control.",
|
||||
FALSE, (GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
|
||||
- G_PARAM_CONSTRUCT)));
|
||||
+ G_PARAM_CONSTRUCT | G_PARAM_DEPRECATED)));
|
||||
|
||||
g_object_class_install_property (gobject_class,
|
||||
PROP_EXTENDED_FILTER,
|
||||
g_param_spec_boolean ("extended-filter", "Extended Filter",
|
||||
"Enable or disable the extended filter.",
|
||||
TRUE, (GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
|
||||
- G_PARAM_CONSTRUCT)));
|
||||
+ G_PARAM_CONSTRUCT | G_PARAM_DEPRECATED)));
|
||||
|
||||
g_object_class_install_property (gobject_class,
|
||||
PROP_DELAY_AGNOSTIC,
|
||||
- g_param_spec_boolean ("delay-agnostic", "Delay Agnostic",
|
||||
+ g_param_spec_boolean ("delay-agnostic",
|
||||
+ "Delay agnostic mode (does nothing)",
|
||||
"Enable or disable the delay agnostic mode.",
|
||||
FALSE, (GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
|
||||
- G_PARAM_CONSTRUCT)));
|
||||
+ G_PARAM_CONSTRUCT | G_PARAM_DEPRECATED)));
|
||||
|
||||
g_object_class_install_property (gobject_class,
|
||||
PROP_TARGET_LEVEL_DBFS,
|
||||
@@ -1111,24 +1041,23 @@ gst_webrtc_dsp_class_init (GstWebrtcDspClass * klass)
|
||||
g_object_class_install_property (gobject_class,
|
||||
PROP_VOICE_DETECTION_FRAME_SIZE_MS,
|
||||
g_param_spec_int ("voice-detection-frame-size-ms",
|
||||
- "Voice Detection Frame Size Milliseconds",
|
||||
+ "Voice detection frame size in milliseconds (does nothing)",
|
||||
"Sets the |size| of the frames in ms on which the VAD will operate. "
|
||||
"Larger frames will improve detection accuracy, but reduce the "
|
||||
"frequency of updates",
|
||||
10, 30, DEFAULT_VOICE_DETECTION_FRAME_SIZE_MS,
|
||||
(GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
|
||||
- G_PARAM_CONSTRUCT)));
|
||||
+ G_PARAM_CONSTRUCT | G_PARAM_DEPRECATED)));
|
||||
|
||||
g_object_class_install_property (gobject_class,
|
||||
PROP_VOICE_DETECTION_LIKELIHOOD,
|
||||
g_param_spec_enum ("voice-detection-likelihood",
|
||||
- "Voice Detection Likelihood",
|
||||
+ "Voice detection likelihood (does nothing)",
|
||||
"Specifies the likelihood that a frame will be declared to contain "
|
||||
"voice.",
|
||||
- GST_TYPE_WEBRTC_VOICE_DETECTION_LIKELIHOOD,
|
||||
- DEFAULT_VOICE_DETECTION_LIKELIHOOD,
|
||||
+ GST_TYPE_WEBRTC_VOICE_DETECTION_LIKELIHOOD, 2,
|
||||
(GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS |
|
||||
- G_PARAM_CONSTRUCT)));
|
||||
+ G_PARAM_CONSTRUCT | G_PARAM_DEPRECATED)));
|
||||
|
||||
gst_type_mark_as_plugin_api (GST_TYPE_WEBRTC_GAIN_CONTROL_MODE, (GstPluginAPIFlags) 0);
|
||||
gst_type_mark_as_plugin_api (GST_TYPE_WEBRTC_NOISE_SUPPRESSION_LEVEL, (GstPluginAPIFlags) 0);
|
||||
diff --git a/ext/webrtcdsp/gstwebrtcechoprobe.cpp b/ext/webrtcdsp/gstwebrtcechoprobe.cpp
|
||||
index acdb3d8a7d..8e8ca064c4 100644
|
||||
--- a/ext/webrtcdsp/gstwebrtcechoprobe.cpp
|
||||
+++ b/ext/webrtcdsp/gstwebrtcechoprobe.cpp
|
||||
@@ -33,7 +33,8 @@
|
||||
|
||||
#include "gstwebrtcechoprobe.h"
|
||||
|
||||
-#include <webrtc/modules/interface/module_common_types.h>
|
||||
+#include <modules/audio_processing/include/audio_processing.h>
|
||||
+
|
||||
#include <gst/audio/audio.h>
|
||||
|
||||
GST_DEBUG_CATEGORY_EXTERN (webrtc_dsp_debug);
|
||||
@@ -102,7 +103,7 @@ gst_webrtc_echo_probe_setup (GstAudioFilter * filter, const GstAudioInfo * info)
|
||||
self->period_size = self->period_samples * info->bpf;
|
||||
|
||||
if (self->interleaved &&
|
||||
- (webrtc::AudioFrame::kMaxDataSizeSamples * 2) < self->period_size)
|
||||
+ (MAX_DATA_SIZE_SAMPLES * 2) < self->period_size)
|
||||
goto period_too_big;
|
||||
|
||||
GST_WEBRTC_ECHO_PROBE_UNLOCK (self);
|
||||
@@ -112,9 +113,9 @@ gst_webrtc_echo_probe_setup (GstAudioFilter * filter, const GstAudioInfo * info)
|
||||
period_too_big:
|
||||
GST_WEBRTC_ECHO_PROBE_UNLOCK (self);
|
||||
GST_WARNING_OBJECT (self, "webrtcdsp format produce too big period "
|
||||
- "(maximum is %" G_GSIZE_FORMAT " samples and we have %u samples), "
|
||||
+ "(maximum is %d samples and we have %u samples), "
|
||||
"reduce the number of channels or the rate.",
|
||||
- webrtc::AudioFrame::kMaxDataSizeSamples, self->period_size / 2);
|
||||
+ MAX_DATA_SIZE_SAMPLES, self->period_size / 2);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -303,18 +304,20 @@ gst_webrtc_release_echo_probe (GstWebrtcEchoProbe * probe)
|
||||
|
||||
gint
|
||||
gst_webrtc_echo_probe_read (GstWebrtcEchoProbe * self, GstClockTime rec_time,
|
||||
- gpointer _frame, GstBuffer ** buf)
|
||||
+ GstBuffer ** buf)
|
||||
{
|
||||
- webrtc::AudioFrame * frame = (webrtc::AudioFrame *) _frame;
|
||||
GstClockTimeDiff diff;
|
||||
- gsize avail, skip, offset, size;
|
||||
+ gsize avail, skip, offset, size = 0;
|
||||
gint delay = -1;
|
||||
|
||||
GST_WEBRTC_ECHO_PROBE_LOCK (self);
|
||||
|
||||
+ /* We always return a buffer -- if don't have data (size == 0), we generate a
|
||||
+ * silence buffer */
|
||||
+
|
||||
if (!GST_CLOCK_TIME_IS_VALID (self->latency) ||
|
||||
!GST_AUDIO_INFO_IS_VALID (&self->info))
|
||||
- goto done;
|
||||
+ goto copy;
|
||||
|
||||
if (self->interleaved)
|
||||
avail = gst_adapter_available (self->adapter) / self->info.bpf;
|
||||
@@ -324,7 +327,7 @@ gst_webrtc_echo_probe_read (GstWebrtcEchoProbe * self, GstClockTime rec_time,
|
||||
/* In delay agnostic mode, just return 10ms of data */
|
||||
if (!GST_CLOCK_TIME_IS_VALID (rec_time)) {
|
||||
if (avail < self->period_samples)
|
||||
- goto done;
|
||||
+ goto copy;
|
||||
|
||||
size = self->period_samples;
|
||||
skip = 0;
|
||||
@@ -371,23 +374,51 @@ gst_webrtc_echo_probe_read (GstWebrtcEchoProbe * self, GstClockTime rec_time,
|
||||
size = MIN (avail - offset, self->period_samples - skip);
|
||||
|
||||
copy:
|
||||
- if (self->interleaved) {
|
||||
- skip *= self->info.bpf;
|
||||
- offset *= self->info.bpf;
|
||||
- size *= self->info.bpf;
|
||||
-
|
||||
- if (size < self->period_size)
|
||||
- memset (frame->data_, 0, self->period_size);
|
||||
-
|
||||
- if (size) {
|
||||
- gst_adapter_copy (self->adapter, (guint8 *) frame->data_ + skip,
|
||||
- offset, size);
|
||||
- gst_adapter_flush (self->adapter, offset + size);
|
||||
- }
|
||||
+ if (!size) {
|
||||
+ /* No data, provide a period's worth of silence */
|
||||
+ *buf = gst_buffer_new_allocate (NULL, self->period_size, NULL);
|
||||
+ gst_buffer_memset (*buf, 0, 0, self->period_size);
|
||||
+ gst_buffer_add_audio_meta (*buf, &self->info, self->period_samples,
|
||||
+ NULL);
|
||||
} else {
|
||||
+ /* We have some actual data, pop period_samples' worth if have it, else pad
|
||||
+ * with silence and provide what we do have */
|
||||
GstBuffer *ret, *taken, *tmp;
|
||||
|
||||
- if (size) {
|
||||
+ if (self->interleaved) {
|
||||
+ skip *= self->info.bpf;
|
||||
+ offset *= self->info.bpf;
|
||||
+ size *= self->info.bpf;
|
||||
+
|
||||
+ gst_adapter_flush (self->adapter, offset);
|
||||
+
|
||||
+ /* we need to fill silence at the beginning and/or the end of the
|
||||
+ * buffer in order to have period_samples in the buffer */
|
||||
+ if (size < self->period_size) {
|
||||
+ gsize padding = self->period_size - (skip + size);
|
||||
+
|
||||
+ taken = gst_adapter_take_buffer (self->adapter, size);
|
||||
+ ret = gst_buffer_new ();
|
||||
+
|
||||
+ /* need some silence at the beginning */
|
||||
+ if (skip) {
|
||||
+ tmp = gst_buffer_new_allocate (NULL, skip, NULL);
|
||||
+ gst_buffer_memset (tmp, 0, 0, skip);
|
||||
+ ret = gst_buffer_append (ret, tmp);
|
||||
+ }
|
||||
+
|
||||
+ ret = gst_buffer_append (ret, taken);
|
||||
+
|
||||
+ /* need some silence at the end */
|
||||
+ if (padding) {
|
||||
+ tmp = gst_buffer_new_allocate (NULL, padding, NULL);
|
||||
+ gst_buffer_memset (tmp, 0, 0, padding);
|
||||
+ ret = gst_buffer_append (ret, tmp);
|
||||
+ }
|
||||
+ } else {
|
||||
+ ret = gst_adapter_take_buffer (self->adapter, size);
|
||||
+ }
|
||||
+ } else {
|
||||
gst_planar_audio_adapter_flush (self->padapter, offset);
|
||||
|
||||
/* we need to fill silence at the beginning and/or the end of each
|
||||
@@ -430,23 +461,13 @@ copy:
|
||||
ret = gst_planar_audio_adapter_take_buffer (self->padapter, size,
|
||||
GST_MAP_READWRITE);
|
||||
}
|
||||
- } else {
|
||||
- ret = gst_buffer_new_allocate (NULL, self->period_size, NULL);
|
||||
- gst_buffer_memset (ret, 0, 0, self->period_size);
|
||||
- gst_buffer_add_audio_meta (ret, &self->info, self->period_samples,
|
||||
- NULL);
|
||||
}
|
||||
|
||||
*buf = ret;
|
||||
}
|
||||
|
||||
- frame->num_channels_ = self->info.channels;
|
||||
- frame->sample_rate_hz_ = self->info.rate;
|
||||
- frame->samples_per_channel_ = self->period_samples;
|
||||
-
|
||||
delay = self->delay;
|
||||
|
||||
-done:
|
||||
GST_WEBRTC_ECHO_PROBE_UNLOCK (self);
|
||||
|
||||
return delay;
|
||||
diff --git a/ext/webrtcdsp/gstwebrtcechoprobe.h b/ext/webrtcdsp/gstwebrtcechoprobe.h
|
||||
index 36fd34f179..488c0e958f 100644
|
||||
--- a/ext/webrtcdsp/gstwebrtcechoprobe.h
|
||||
+++ b/ext/webrtcdsp/gstwebrtcechoprobe.h
|
||||
@@ -45,6 +45,12 @@ G_BEGIN_DECLS
|
||||
#define GST_WEBRTC_ECHO_PROBE_LOCK(obj) g_mutex_lock (&GST_WEBRTC_ECHO_PROBE (obj)->lock)
|
||||
#define GST_WEBRTC_ECHO_PROBE_UNLOCK(obj) g_mutex_unlock (&GST_WEBRTC_ECHO_PROBE (obj)->lock)
|
||||
|
||||
+/* From the webrtc audio_frame.h definition of kMaxDataSizeSamples:
|
||||
+ * Stereo, 32 kHz, 120 ms (2 * 32 * 120)
|
||||
+ * Stereo, 192 kHz, 20 ms (2 * 192 * 20)
|
||||
+ */
|
||||
+#define MAX_DATA_SIZE_SAMPLES 7680
|
||||
+
|
||||
typedef struct _GstWebrtcEchoProbe GstWebrtcEchoProbe;
|
||||
typedef struct _GstWebrtcEchoProbeClass GstWebrtcEchoProbeClass;
|
||||
|
||||
@@ -71,6 +77,7 @@ struct _GstWebrtcEchoProbe
|
||||
GstClockTime latency;
|
||||
gint delay;
|
||||
gboolean interleaved;
|
||||
+ gint extra_delay;
|
||||
|
||||
GstSegment segment;
|
||||
GstAdapter *adapter;
|
||||
@@ -92,7 +99,7 @@ GST_ELEMENT_REGISTER_DECLARE (webrtcechoprobe);
|
||||
GstWebrtcEchoProbe *gst_webrtc_acquire_echo_probe (const gchar * name);
|
||||
void gst_webrtc_release_echo_probe (GstWebrtcEchoProbe * probe);
|
||||
gint gst_webrtc_echo_probe_read (GstWebrtcEchoProbe * self,
|
||||
- GstClockTime rec_time, gpointer frame, GstBuffer ** buf);
|
||||
+ GstClockTime rec_time, GstBuffer ** buf);
|
||||
|
||||
G_END_DECLS
|
||||
#endif /* __GST_WEBRTC_ECHO_PROBE_H__ */
|
||||
diff --git a/ext/webrtcdsp/meson.build b/ext/webrtcdsp/meson.build
|
||||
index 5aeae69a44..09565e27c7 100644
|
||||
--- a/ext/webrtcdsp/meson.build
|
||||
+++ b/ext/webrtcdsp/meson.build
|
||||
@@ -4,7 +4,7 @@ webrtc_sources = [
|
||||
'gstwebrtcdspplugin.cpp'
|
||||
]
|
||||
|
||||
-webrtc_dep = dependency('webrtc-audio-processing', version : ['>= 0.2', '< 0.4'],
|
||||
+webrtc_dep = dependency('webrtc-audio-processing-1', version : ['>= 1.0'],
|
||||
required : get_option('webrtcdsp'))
|
||||
|
||||
if not gnustl_dep.found() and get_option('webrtcdsp').enabled()
|
||||
@@ -20,7 +20,7 @@ if webrtc_dep.found() and gnustl_dep.found()
|
||||
dependencies : [gstbase_dep, gstaudio_dep, gstbadaudio_dep, webrtc_dep, gnustl_dep],
|
||||
install : true,
|
||||
install_dir : plugins_install_dir,
|
||||
- override_options : ['cpp_std=c++11'],
|
||||
+ override_options : ['cpp_std=c++17'],
|
||||
)
|
||||
plugins += [gstwebrtcdsp]
|
||||
endif
|
||||
--
|
||||
2.34.1
|
||||
|
||||
@@ -652,6 +652,7 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WAYLAND
|
||||
config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBP
|
||||
bool "webp"
|
||||
select BR2_PACKAGE_WEBP
|
||||
select BR2_PACKAGE_WEBP_MUX
|
||||
help
|
||||
Webp image format plugin
|
||||
|
||||
@@ -660,6 +661,9 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBRTC
|
||||
depends on !BR2_STATIC_LIBS # libnice -> gnutls
|
||||
select BR2_PACKAGE_GST1_PLUGINS_BASE # libgstsdp
|
||||
select BR2_PACKAGE_LIBNICE
|
||||
select BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DTLS
|
||||
select BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SCTP
|
||||
select BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SRTP
|
||||
help
|
||||
WebRTC plugins (webrtcbin - a bin for webrtc connections)
|
||||
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# From https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.22.12.tar.xz.sha256sum
|
||||
sha256 388b4c4412f42e36a38b17cc34119bc11879bd4d9fbd4ff6d03b2c7fc6b4d494 gst-plugins-bad-1.22.12.tar.xz
|
||||
# From https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.24.11.tar.xz.sha256sum
|
||||
sha256 9126c2b7053a5f059db958f43c6a5230d2e843ff9adff8c8c2477ea2457e3315 gst-plugins-bad-1.24.11.tar.xz
|
||||
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GST1_PLUGINS_BAD_VERSION = 1.22.12
|
||||
GST1_PLUGINS_BAD_VERSION = 1.24.11
|
||||
GST1_PLUGINS_BAD_SOURCE = gst-plugins-bad-$(GST1_PLUGINS_BAD_VERSION).tar.xz
|
||||
GST1_PLUGINS_BAD_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-bad
|
||||
GST1_PLUGINS_BAD_INSTALL_STAGING = YES
|
||||
@@ -34,6 +34,7 @@ GST1_PLUGINS_BAD_CONF_OPTS = \
|
||||
|
||||
# Options which require currently unpackaged libraries
|
||||
GST1_PLUGINS_BAD_CONF_OPTS += \
|
||||
-Daja=disabled \
|
||||
-Dasio=disabled \
|
||||
-Davtp=disabled \
|
||||
-Dopensles=disabled \
|
||||
@@ -42,18 +43,22 @@ GST1_PLUGINS_BAD_CONF_OPTS += \
|
||||
-Dbs2b=disabled \
|
||||
-Dchromaprint=disabled \
|
||||
-Dd3d11=disabled \
|
||||
-Dd3d12=disabled \
|
||||
-Ddc1394=disabled \
|
||||
-Ddts=disabled \
|
||||
-Ddwrite=disabled \
|
||||
-Dresindvd=disabled \
|
||||
-Dfaac=disabled \
|
||||
-Dflite=disabled \
|
||||
-Dgs=disabled \
|
||||
-Dgsm=disabled \
|
||||
-Dkate=disabled \
|
||||
-Dinsertbin=disabled \
|
||||
-Dladspa=disabled \
|
||||
-Dlc3=disabled \
|
||||
-Dldac=disabled \
|
||||
-Dlv2=disabled \
|
||||
-Dmediafoundation=disabled \
|
||||
-Dmse=disabled \
|
||||
-Dmicrodns=disabled \
|
||||
-Dlibde265=disabled \
|
||||
-Dmodplug=disabled \
|
||||
@@ -65,10 +70,16 @@ GST1_PLUGINS_BAD_CONF_OPTS += \
|
||||
-Dwildmidi=disabled \
|
||||
-Dsmoothstreaming=disabled \
|
||||
-Dsoundtouch=disabled \
|
||||
-Dsvtav1=disabled \
|
||||
-Dgme=disabled \
|
||||
-Dspandsp=disabled \
|
||||
-Dsvthevcenc=disabled \
|
||||
-Dtranscode=disabled \
|
||||
-Dunixfd=disabled \
|
||||
-Dudev=disabled \
|
||||
-Duvcgadget=disabled \
|
||||
-Dvulkan=disabled \
|
||||
-Dx11=disabled \
|
||||
-Dwasapi2=disabled \
|
||||
-Dmagicleap=disabled \
|
||||
-Disac=disabled \
|
||||
@@ -742,10 +753,13 @@ ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VA),y)
|
||||
GST1_PLUGINS_BAD_CONF_OPTS += -Dva=enabled
|
||||
GST1_PLUGINS_BAD_DEPENDENCIES += libva
|
||||
ifeq ($(BR2_PACKAGE_LIBDRM),y)
|
||||
GST1_PLUGINS_BAD_CONF_OPTS += -Ddrm=enabled
|
||||
GST1_PLUGINS_BAD_DEPENDENCIES += libdrm
|
||||
endif
|
||||
else
|
||||
GST1_PLUGINS_BAD_CONF_OPTS += -Dva=disabled
|
||||
GST1_PLUGINS_BAD_CONF_OPTS += \
|
||||
-Ddrm=disabled \
|
||||
-Dva=disabled
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VOAACENC),y)
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# From https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.22.12.tar.xz.sha256sum
|
||||
sha256 73cfadc3a6ffe77ed974cfd6fb391c605e4531f48db21dd6b9f42b8cb69bd8c1 gst-plugins-base-1.22.12.tar.xz
|
||||
# From https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.24.11.tar.xz.sha256sum
|
||||
sha256 98572c1f8b710e52673e250cd96e4f2660d79bd66aa172c5dde5f690c1231e1d gst-plugins-base-1.24.11.tar.xz
|
||||
sha256 ad2eec519ebd4b5df86ea84dff24ae3bfa2edea846a703b58902dd221ae375db COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GST1_PLUGINS_BASE_VERSION = 1.22.12
|
||||
GST1_PLUGINS_BASE_VERSION = 1.24.11
|
||||
GST1_PLUGINS_BASE_SOURCE = gst-plugins-base-$(GST1_PLUGINS_BASE_VERSION).tar.xz
|
||||
GST1_PLUGINS_BASE_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-base
|
||||
GST1_PLUGINS_BASE_INSTALL_STAGING = YES
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# From https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.22.12.tar.xz.sha256sum
|
||||
sha256 9c1913f981900bd8867182639b20907b28ed78ef7a222cfbf2d8ba9dab992fa7 gst-plugins-good-1.22.12.tar.xz
|
||||
# From https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.24.11.tar.xz.sha256sum
|
||||
sha256 94bf3b5118dd4213af66048faac830569cc9a94a8c8e59e8a6d33b315f518462 gst-plugins-good-1.24.11.tar.xz
|
||||
sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GST1_PLUGINS_GOOD_VERSION = 1.22.12
|
||||
GST1_PLUGINS_GOOD_VERSION = 1.24.11
|
||||
GST1_PLUGINS_GOOD_SOURCE = gst-plugins-good-$(GST1_PLUGINS_GOOD_VERSION).tar.xz
|
||||
GST1_PLUGINS_GOOD_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-good
|
||||
GST1_PLUGINS_GOOD_LICENSE_FILES = COPYING
|
||||
@@ -27,6 +27,10 @@ GST1_PLUGINS_GOOD_CONF_OPTS = \
|
||||
-Dosxvideo=disabled \
|
||||
-Daalib=disabled \
|
||||
-Dlibcaca=disabled \
|
||||
-Damrnb=disabled \
|
||||
-Damrwbdec=disabled \
|
||||
-Dsoup=disabled \
|
||||
-Dximagesrc-navigation=disabled \
|
||||
-Ddoc=disabled
|
||||
|
||||
# Options which require currently unpackaged libraries
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# From https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.22.12.tar.xz.sha256sum
|
||||
sha256 d59a1aaf8dd2cc416dc5b5c0b7aecd02b1811bf1229aa724e6c2a503d3799083 gst-plugins-ugly-1.22.12.tar.xz
|
||||
# From https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.24.11.tar.xz.sha256sum
|
||||
sha256 3a1f58a33aee8d13522865bcb564007a6837ef5711d7dfff8ce4260921013f8a gst-plugins-ugly-1.24.11.tar.xz
|
||||
sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GST1_PLUGINS_UGLY_VERSION = 1.22.12
|
||||
GST1_PLUGINS_UGLY_VERSION = 1.24.11
|
||||
GST1_PLUGINS_UGLY_SOURCE = gst-plugins-ugly-$(GST1_PLUGINS_UGLY_VERSION).tar.xz
|
||||
GST1_PLUGINS_UGLY_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-ugly
|
||||
GST1_PLUGINS_UGLY_LICENSE_FILES = COPYING
|
||||
@@ -19,8 +19,6 @@ GST1_PLUGINS_UGLY_CONF_OPTS += \
|
||||
|
||||
GST1_PLUGINS_UGLY_CONF_OPTS += \
|
||||
-Da52dec=disabled \
|
||||
-Damrnb=disabled \
|
||||
-Damrwbdec=disabled \
|
||||
-Dcdio=disabled \
|
||||
-Dsidplay=disabled
|
||||
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# From https://gstreamer.freedesktop.org/src/gst-python/gst-python-1.22.12.tar.xz.sha256sum
|
||||
sha256 d98d3226efea20d5c440a28988a20319a953f7c594895df2bba4538633108e9f gst-python-1.22.12.tar.xz
|
||||
# From https://gstreamer.freedesktop.org/src/gst-python/gst-python-1.24.11.tar.xz.sha256sum
|
||||
sha256 f4c8761bfee98508f57e2efd738ef36a99e2f7644860877d54d235a7092cf056 gst-python-1.24.11.tar.xz
|
||||
sha256 ea3ad127610e5ded2210b3a86a46314f2b3b28e438eccffdae19a4d6fbcdb0c2 COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GST1_PYTHON_VERSION = 1.22.12
|
||||
GST1_PYTHON_VERSION = 1.24.11
|
||||
GST1_PYTHON_SOURCE = gst-python-$(GST1_PYTHON_VERSION).tar.xz
|
||||
GST1_PYTHON_SITE = https://gstreamer.freedesktop.org/src/gst-python
|
||||
GST1_PYTHON_INSTALL_STAGING = YES
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# From https://gstreamer.freedesktop.org/src/gst-rtsp-server/gst-rtsp-server-1.22.12.tar.xz.sha256sum
|
||||
sha256 bf6c7871e7cf3528e4ec87ddc2f2949691cd269f98e536482ae744c1405cf451 gst-rtsp-server-1.22.12.tar.xz
|
||||
# From https://gstreamer.freedesktop.org/src/gst-rtsp-server/gst-rtsp-server-1.24.11.tar.xz.sha256sum
|
||||
sha256 d147ff75bc445235fe0a4a4714c26d6b7bf9a485a1ae3a722bd530ab28f98bd3 gst-rtsp-server-1.24.11.tar.xz
|
||||
sha256 ad2eec519ebd4b5df86ea84dff24ae3bfa2edea846a703b58902dd221ae375db COPYING
|
||||
sha256 ad2eec519ebd4b5df86ea84dff24ae3bfa2edea846a703b58902dd221ae375db COPYING.LIB
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GST1_RTSP_SERVER_VERSION = 1.22.12
|
||||
GST1_RTSP_SERVER_VERSION = 1.24.11
|
||||
GST1_RTSP_SERVER_SOURCE = gst-rtsp-server-$(GST1_RTSP_SERVER_VERSION).tar.xz
|
||||
GST1_RTSP_SERVER_SITE = http://gstreamer.freedesktop.org/src/gst-rtsp-server
|
||||
GST1_RTSP_SERVER_LICENSE = LGPL-2.1+
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# From https://gstreamer.freedesktop.org/src/gstreamer-vaapi/gstreamer-vaapi-1.22.12.tar.xz.sha256sum
|
||||
sha256 013ad729b2fe4fccda559bddc626bcb14230cfb90a2271049f8466bfec5d80df gstreamer-vaapi-1.22.12.tar.xz
|
||||
# From https://gstreamer.freedesktop.org/src/gstreamer-vaapi/gstreamer-vaapi-1.24.11.tar.xz.sha256sum
|
||||
sha256 e85904a47d9ecb41d7f76b1d3fe887fa18c0b81a3793e7d7f61361ea7e90420d gstreamer-vaapi-1.24.11.tar.xz
|
||||
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GST1_VAAPI_VERSION = 1.22.12
|
||||
GST1_VAAPI_VERSION = 1.24.11
|
||||
GST1_VAAPI_SITE = https://gstreamer.freedesktop.org/src/gstreamer-vaapi
|
||||
GST1_VAAPI_SOURCE = gstreamer-vaapi-$(GST1_VAAPI_VERSION).tar.xz
|
||||
GST1_VAAPI_LICENSE = LGPL-2.1+
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# From https://gstreamer.freedesktop.org/src/gstreamer-editing-services/gst-editing-services-1.22.12.tar.xz.sha256sum
|
||||
sha256 792339135ce713088663cc5d44e0aea8217793e88fabfd11571e7abf4a429f2c gst-editing-services-1.22.12.tar.xz
|
||||
# From https://gstreamer.freedesktop.org/src/gstreamer-editing-services/gst-editing-services-1.24.11.tar.xz.sha256sum
|
||||
sha256 85fd74dab259e137a95ab4427e009dd853f4ca82874500cb5493c33bcef1ef08 gst-editing-services-1.24.11.tar.xz
|
||||
|
||||
# Hashes for license files:
|
||||
sha256 f445dc78b88496f7e20c7a2a461b95baba5865c8919b8289ac24ac0a80c6ce7a COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GSTREAMER1_EDITING_SERVICES_VERSION = 1.22.12
|
||||
GSTREAMER1_EDITING_SERVICES_VERSION = 1.24.11
|
||||
GSTREAMER1_EDITING_SERVICES_SOURCE = gst-editing-services-$(GSTREAMER1_EDITING_SERVICES_VERSION).tar.xz
|
||||
GSTREAMER1_EDITING_SERVICES_SITE = https://gstreamer.freedesktop.org/src/gstreamer-editing-services
|
||||
GSTREAMER1_EDITING_SERVICES_LICENSE = LGPL-2.0+
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# From https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.22.12.tar.xz.sha256sum
|
||||
sha256 ac352f3d02caa67f3b169daa9aa78b04dea0fc08a727de73cb28d89bd54c6f61 gstreamer-1.22.12.tar.xz
|
||||
# From https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.24.11.tar.xz.sha256sum
|
||||
sha256 093a379602a250d5cd33b88e723757c80198317efde33893edf3c87b6e53b907 gstreamer-1.24.11.tar.xz
|
||||
sha256 ad2eec519ebd4b5df86ea84dff24ae3bfa2edea846a703b58902dd221ae375db COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GSTREAMER1_VERSION = 1.22.12
|
||||
GSTREAMER1_VERSION = 1.24.11
|
||||
GSTREAMER1_SOURCE = gstreamer-$(GSTREAMER1_VERSION).tar.xz
|
||||
GSTREAMER1_SITE = https://gstreamer.freedesktop.org/src/gstreamer
|
||||
GSTREAMER1_INSTALL_STAGING = YES
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# Locally computed
|
||||
sha256 6c11cfe1b9012011d0354b010d191a527fa3a4086152726ba642ca51808029bb intel-media-25.1.2.tar.gz
|
||||
sha256 6339bba3168102f5a608f447076c9efb2a8194e847a9dac219fbc13324192a76 intel-media-25.1.4.tar.gz
|
||||
sha256 74979d5aaee78b8da82e3aafd415a216b6131dfff6d95d6930927c8a4e3bded3 LICENSE.md
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# based on https://software.intel.com/en-us/articles/build-and-debug-open-source-media-stack
|
||||
|
||||
INTEL_MEDIADRIVER_VERSION = 25.1.2
|
||||
INTEL_MEDIADRIVER_VERSION = 25.1.4
|
||||
INTEL_MEDIADRIVER_SITE = https://github.com/intel/media-driver/archive
|
||||
INTEL_MEDIADRIVER_SOURCE= intel-media-$(INTEL_MEDIADRIVER_VERSION).tar.gz
|
||||
INTEL_MEDIADRIVER_LICENSE = MIT, BSD-3-Clause
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# Locally computed
|
||||
sha256 02a9e9ddc9dd75e87ac3902a7c987b49eff6afe59531bf7ebb90cfcd9a2d7ee3 intel-vpl-gpu-rt-25.1.2.tar.gz
|
||||
sha256 2ee59a47c281f402cd77118eed1ec7cef703d25432e9a71b4be6b91e8c304d72 intel-vpl-gpu-rt-25.1.4.tar.gz
|
||||
sha256 c31c3cc5fd66d1250dbca1c3d9011a9f874537442ac71c8de80f2f0fed13f297 LICENSE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
INTEL_VPL_GPU_RT_VERSION = 25.1.2
|
||||
INTEL_VPL_GPU_RT_VERSION = 25.1.4
|
||||
INTEL_VPL_GPU_RT_SITE = $(call github,intel,vpl-gpu-rt,intel-onevpl-$(INTEL_VPL_GPU_RT_VERSION))
|
||||
INTEL_VPL_GPU_RT_LICENSE = MIT
|
||||
INTEL_VPL_GPU_RT_LICENSE_FILES = LICENSE
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# Locally computed
|
||||
sha256 9604bf46ef5502306c59d93cd7f9a7ec298e30a17197dd2d8d49300c6ee51a9c kodi-pvr-waipu-21.9.1-Omega.tar.gz
|
||||
sha256 93b9fc17660a70e7cccf02a8845db3cd5dbd044ae3ef35d3bb052bfa13b9de15 kodi-pvr-waipu-21.9.2-Omega.tar.gz
|
||||
sha256 4202d4fb329f58c83ba921b56d7071e37f7df3f15b3820a3a04ef8eee49f54d2 pvr.waipu/LICENSE.txt
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
KODI_PVR_WAIPU_VERSION = 21.9.1-Omega
|
||||
KODI_PVR_WAIPU_VERSION = 21.9.2-Omega
|
||||
KODI_PVR_WAIPU_SITE = $(call github,flubshi,pvr.waipu,$(KODI_PVR_WAIPU_VERSION))
|
||||
KODI_PVR_WAIPU_LICENSE = GPL-2.0+
|
||||
KODI_PVR_WAIPU_LICENSE_FILES = pvr.waipu/LICENSE.txt
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# From https://www.libarchive.de/downloads/sha256sums
|
||||
sha256 879acd83c3399c7caaee73fe5f7418e06087ab2aaf40af3e99b9e29beb29faee libarchive-3.7.7.tar.xz
|
||||
sha256 ed8b5732e4cd6e30fae909fb945cad8ff9cb7be5c6cdaa3944ec96e4a200c04c libarchive-3.7.9.tar.xz
|
||||
# Locally computed:
|
||||
sha256 b2cdf763345de2de34cebf54394df3c61a105c3b71288603c251f2fa638200ba COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBARCHIVE_VERSION = 3.7.7
|
||||
LIBARCHIVE_VERSION = 3.7.9
|
||||
LIBARCHIVE_SOURCE = libarchive-$(LIBARCHIVE_VERSION).tar.xz
|
||||
LIBARCHIVE_SITE = https://www.libarchive.de/downloads
|
||||
LIBARCHIVE_INSTALL_STAGING = YES
|
||||
|
||||
@@ -64,8 +64,11 @@ define HOST_LIBCAP_BUILD_CMDS
|
||||
$(HOST_LIBCAP_MAKE_FLAGS)
|
||||
endef
|
||||
|
||||
# Set DESTDIR to a non-empty path, so that libcap's Makefile
|
||||
# does not trigger calls to ldconfig
|
||||
define HOST_LIBCAP_INSTALL_CMDS
|
||||
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_LIBCAP_MAKE_FLAGS) install
|
||||
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_LIBCAP_MAKE_FLAGS) \
|
||||
DESTDIR=/ install
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
||||
|
||||
@@ -1,38 +0,0 @@
|
||||
From 2b28d8b0e9607e71a145345b4fe49517e052b7d9 Mon Sep 17 00:00:00 2001
|
||||
From: Jon Shallow <supjps-libcoap@jpshallow.com>
|
||||
Date: Thu, 25 Jan 2024 18:03:17 +0000
|
||||
Subject: [PATCH] coap_oscore.c: Fix parsing OSCORE configuration information
|
||||
|
||||
Upstream: https://github.com/obgm/libcoap/commit/2b28d8b0e9607e71a145345b4fe49517e052b7d9
|
||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
---
|
||||
src/coap_oscore.c | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/coap_oscore.c b/src/coap_oscore.c
|
||||
index 83f785c92..e0fb22947 100644
|
||||
--- a/src/coap_oscore.c
|
||||
+++ b/src/coap_oscore.c
|
||||
@@ -1678,11 +1678,12 @@ get_split_entry(const char **start,
|
||||
oscore_value_t *value) {
|
||||
const char *begin = *start;
|
||||
const char *end;
|
||||
+ const char *kend;
|
||||
const char *split;
|
||||
size_t i;
|
||||
|
||||
retry:
|
||||
- end = memchr(begin, '\n', size);
|
||||
+ kend = end = memchr(begin, '\n', size);
|
||||
if (end == NULL)
|
||||
return 0;
|
||||
|
||||
@@ -1693,7 +1694,7 @@ get_split_entry(const char **start,
|
||||
|
||||
if (begin[0] == '#' || (end - begin) == 0) {
|
||||
/* Skip comment / blank line */
|
||||
- size -= end - begin + 1;
|
||||
+ size -= kend - begin + 1;
|
||||
begin = *start;
|
||||
goto retry;
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
# Locally calculated
|
||||
sha256 ae61a48c21f7b40e1442c9e1da9aab9e6f2cf0deccb02f3fed4de232a0b0522e libcoap-4.3.4.tar.gz
|
||||
sha256 a417ed26ec6c95c041b42353b5b6fad1602e2bf42a6e26c09863450e227b7b5f libcoap-4.3.5.tar.gz
|
||||
sha256 09dd86a017bad210527085008cbf706609c58210897b69845af14099577e7eb7 COPYING
|
||||
sha256 bdd94ddd8e75010aebd045ead1c951110788003395c708811d6960248acb3891 LICENSE
|
||||
sha256 ecff7aa3af994b008dbb57c180753bd2a6c53fa6f8265a2486740f4cfd45280c LICENSE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBCOAP_VERSION = 4.3.4
|
||||
LIBCOAP_VERSION = 4.3.5
|
||||
LIBCOAP_SITE = $(call github,obgm,libcoap,v$(LIBCOAP_VERSION))
|
||||
LIBCOAP_INSTALL_STAGING = YES
|
||||
LIBCOAP_LICENSE = BSD-2-Clause
|
||||
@@ -15,9 +15,6 @@ LIBCOAP_CONF_OPTS = \
|
||||
--disable-examples --disable-examples-source --without-tinydtls
|
||||
LIBCOAP_AUTORECONF = YES
|
||||
|
||||
# 0001-coap_oscore-c-Fix-parsing-OSCORE-configuration-information.patch
|
||||
LIBCOAP_IGNORE_CVES += CVE-2024-0962
|
||||
|
||||
ifeq ($(BR2_PACKAGE_GNUTLS),y)
|
||||
LIBCOAP_DEPENDENCIES += gnutls
|
||||
LIBCOAP_CONF_OPTS += \
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
From 9ad320c1ad1a25558998ddfe47674511567fec57 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Rasmussen <sebras@gmail.com>
|
||||
Date: Mon, 12 Feb 2024 14:46:22 +0800
|
||||
Subject: [PATCH] Plug memory leak that happens upon error.
|
||||
|
||||
If fgStructure.CurrentMenu is set when glutAddMenuEntry() or
|
||||
glutAddSubMenu() is called the allocated menuEntry variable will
|
||||
leak. This commit postpones allocating menuEntry until after the
|
||||
error checks, thereby plugging the memory leak.
|
||||
|
||||
This fixes CVE-2024-24258 and CVE-2024-24259.
|
||||
Upstream: https://github.com/freeglut/freeglut/commit/9ad320c1ad1a25558998ddfe47674511567fec57
|
||||
Signed-off-by: Raphaël Mélotte <raphael.melotte@mind.be>
|
||||
---
|
||||
src/fg_menu.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/fg_menu.c b/src/fg_menu.c
|
||||
index 53112dc2..0da88901 100644
|
||||
--- a/src/fg_menu.c
|
||||
+++ b/src/fg_menu.c
|
||||
@@ -864,12 +864,12 @@ void FGAPIENTRY glutAddMenuEntry( const char* label, int value )
|
||||
{
|
||||
SFG_MenuEntry* menuEntry;
|
||||
FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutAddMenuEntry" );
|
||||
- menuEntry = (SFG_MenuEntry *)calloc( sizeof(SFG_MenuEntry), 1 );
|
||||
|
||||
freeglut_return_if_fail( fgStructure.CurrentMenu );
|
||||
if (fgState.ActiveMenus)
|
||||
fgError("Menu manipulation not allowed while menus in use.");
|
||||
|
||||
+ menuEntry = (SFG_MenuEntry *)calloc( sizeof(SFG_MenuEntry), 1 );
|
||||
menuEntry->Text = strdup( label );
|
||||
menuEntry->ID = value;
|
||||
|
||||
@@ -888,7 +888,6 @@ void FGAPIENTRY glutAddSubMenu( const char *label, int subMenuID )
|
||||
SFG_Menu *subMenu;
|
||||
|
||||
FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutAddSubMenu" );
|
||||
- menuEntry = ( SFG_MenuEntry * )calloc( sizeof( SFG_MenuEntry ), 1 );
|
||||
subMenu = fgMenuByID( subMenuID );
|
||||
|
||||
freeglut_return_if_fail( fgStructure.CurrentMenu );
|
||||
@@ -897,6 +896,7 @@ void FGAPIENTRY glutAddSubMenu( const char *label, int subMenuID )
|
||||
|
||||
freeglut_return_if_fail( subMenu );
|
||||
|
||||
+ menuEntry = ( SFG_MenuEntry * )calloc( sizeof( SFG_MenuEntry ), 1 );
|
||||
menuEntry->Text = strdup( label );
|
||||
menuEntry->SubMenu = subMenu;
|
||||
menuEntry->ID = -1;
|
||||
--
|
||||
2.48.1
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# Locally calculated
|
||||
sha256 47ec83ff334d672b9e4426695f15da6e6368244214971fabf386ff8ef6df39e4 geos-3.13.0.tar.bz2
|
||||
sha256 df2c50503295f325e7c8d7b783aca8ba4773919cde984193850cf9e361dfd28c geos-3.13.1.tar.bz2
|
||||
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBGEOS_VERSION = 3.13.0
|
||||
LIBGEOS_VERSION = 3.13.1
|
||||
LIBGEOS_SITE = http://download.osgeo.org/geos
|
||||
LIBGEOS_SOURCE = geos-$(LIBGEOS_VERSION).tar.bz2
|
||||
LIBGEOS_LICENSE = LGPL-2.1
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
# From https://github.com/owasp-modsecurity/ModSecurity/releases/download/v3.0.13/modsecurity-v3.0.13.tar.gz.sha256
|
||||
sha256 86b4881164a161b822a49df3501e83b254323206906134bdc34a6f3338f4d3f2 modsecurity-v3.0.13.tar.gz
|
||||
|
||||
# From https://github.com/owasp-modsecurity/ModSecurity/releases/download/v3.0.14/modsecurity-v3.0.14.tar.gz.sha256
|
||||
sha256 f7599057b35e67ab61764265daddf9ab03c35cee1e55527547afb073ce8f04e8 modsecurity-v3.0.14.tar.gz
|
||||
# Locally calculated
|
||||
sha256 c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 LICENSE
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBMODSECURITY_VERSION = 3.0.13
|
||||
LIBMODSECURITY_VERSION = 3.0.14
|
||||
LIBMODSECURITY_SOURCE = modsecurity-v$(LIBMODSECURITY_VERSION).tar.gz
|
||||
LIBMODSECURITY_SITE = https://github.com/owasp-modsecurity/ModSecurity/releases/download/v$(LIBMODSECURITY_VERSION)
|
||||
LIBMODSECURITY_INSTALL_STAGING = YES
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# Locally calculated
|
||||
sha256 c3ea76e253def89869651686a827da75b56896fe94fabd87d8c14b1d4588fd05 libndp-1.8.tar.gz
|
||||
sha256 e564f5914a6b1b799c3afa64c258824a801c1b79a29e2fe6525b682249c65261 libndp-1.9.tar.gz
|
||||
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBNDP_VERSION = 1.8
|
||||
LIBNDP_VERSION = 1.9
|
||||
LIBNDP_SITE = $(call github,jpirko,libndp,v$(LIBNDP_VERSION))
|
||||
LIBNDP_LICENSE = LGPL-2.1+
|
||||
LIBNDP_LICENSE_FILES = COPYING
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# Locally calculated
|
||||
sha256 8ffbe944e74043d0d3fb53d4a2a14c94de71f58dbea6a06d0dc92369542958ea libopenh264-2.4.1.tar.gz
|
||||
sha256 a1b5c88bfb31c4d2251835e57a7df99f91181955cea6ec3ddd4ab82aa54ae9f1 libopenh264-2.5.1.tar.gz
|
||||
sha256 dd5c1c9668512530fa5a96e4c29ac4033d70a7eeb0eed7a42fddb6dd794ebdbb LICENSE
|
||||
|
||||
@@ -4,8 +4,8 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBOPENH264_VERSION = 2.4.1
|
||||
LIBOPENH264_SITE = $(call github,cisco,openh264,v$(LIBOPENH264_VERSION))
|
||||
LIBOPENH264_VERSION = 2.5.1
|
||||
LIBOPENH264_SITE = $(call github,cisco,openh264,$(LIBOPENH264_VERSION))
|
||||
LIBOPENH264_LICENSE = BSD-2-Clause
|
||||
LIBOPENH264_LICENSE_FILES = LICENSE
|
||||
LIBOPENH264_CPE_ID_VENDOR = cisco
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
From 4562b002366535b3d387fae7fa1dbd8e315ae142 Mon Sep 17 00:00:00 2001
|
||||
From: Neil Horman <nhorman@openssl.org>
|
||||
Date: Mon, 14 Apr 2025 12:23:15 -0400
|
||||
Subject: [PATCH] Serialize install process to avoid multiple make depend
|
||||
operations
|
||||
|
||||
If make install is run with a large -j value (make install -j N , where
|
||||
N > 1)
|
||||
|
||||
We can run into a situation in which the install fails because multiple
|
||||
make depend operations are running in parallel, which will fail due to
|
||||
makefile rewriting.
|
||||
|
||||
Serialize the install process to guarantee that those operations don't
|
||||
step on one another
|
||||
|
||||
Fixes # 27074
|
||||
|
||||
Upstream: https://github.com/openssl/openssl/pull/27388
|
||||
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
||||
---
|
||||
Configurations/unix-Makefile.tmpl | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Configurations/unix-Makefile.tmpl b/Configurations/unix-Makefile.tmpl
|
||||
index e85763ccf8..b671723813 100644
|
||||
--- a/Configurations/unix-Makefile.tmpl
|
||||
+++ b/Configurations/unix-Makefile.tmpl
|
||||
@@ -650,7 +650,11 @@ depend: Makefile
|
||||
# Install helper targets #############################################
|
||||
##@ Installation
|
||||
|
||||
-install: install_sw install_ssldirs {- "install_docs" if !$disabled{docs}; -} {- $disabled{fips} ? "" : "install_fips" -} ## Install software and documentation, create OpenSSL directories
|
||||
+install: Makefile ## Install software and documentation, create OpenSSL directories
|
||||
+ $(MAKE) install_sw
|
||||
+ $(MAKE) install_ssldirs
|
||||
+ {- "\$(MAKE) install_docs" if !$disabled{docs} -}
|
||||
+ {- "\$(MAKE) install_fips" if !$disabled{fips} -}
|
||||
|
||||
uninstall: {- "uninstall_docs" if !$disabled{docs}; -} uninstall_sw {- $disabled{fips} ? "" : "uninstall_fips" -} ## Uninstall software and documentation
|
||||
|
||||
--
|
||||
2.39.5
|
||||
|
||||
@@ -132,26 +132,24 @@ endef
|
||||
LIBOPENSSL_POST_CONFIGURE_HOOKS += LIBOPENSSL_FIXUP_STATIC_MAKEFILE
|
||||
endif
|
||||
|
||||
# Parallel build broken: https://github.com/openssl/openssl/issues/27074
|
||||
define HOST_LIBOPENSSL_BUILD_CMDS
|
||||
$(HOST_MAKE_ENV) $(MAKE1) -C $(@D)
|
||||
$(HOST_MAKE_ENV) $(MAKE) -C $(@D)
|
||||
endef
|
||||
|
||||
# Parallel build broken: https://github.com/openssl/openssl/issues/27074
|
||||
define LIBOPENSSL_BUILD_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE1) -C $(@D)
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
|
||||
endef
|
||||
|
||||
define LIBOPENSSL_INSTALL_STAGING_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR=$(STAGING_DIR) install
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install
|
||||
endef
|
||||
|
||||
define HOST_LIBOPENSSL_INSTALL_CMDS
|
||||
$(HOST_MAKE_ENV) $(MAKE1) -C $(@D) install
|
||||
$(HOST_MAKE_ENV) $(MAKE) -C $(@D) install
|
||||
endef
|
||||
|
||||
define LIBOPENSSL_INSTALL_TARGET_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR=$(TARGET_DIR) install
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
|
||||
$(RM) -rf $(TARGET_DIR)/usr/lib/ssl
|
||||
$(RM) -f $(TARGET_DIR)/usr/bin/c_rehash
|
||||
endef
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user