* add various missing patches
This commit is contained in:
parent
3470cfe83c
commit
bbd4c91bad
29
amf-headers/PKGBUILD
Normal file
29
amf-headers/PKGBUILD
Normal file
@ -0,0 +1,29 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
|
||||
# Contributor: Daniel Bermond <dbermond@archlinux.org>
|
||||
|
||||
pkgname=amf-headers
|
||||
pkgver=1.4.23
|
||||
pkgrel=2
|
||||
pkgdesc='Header files for AMD Advanced Media Framework'
|
||||
arch=(any)
|
||||
url=https://github.com/GPUOpen-LibrariesAndSDKs/AMF/
|
||||
license=(MIT)
|
||||
makedepends=(git)
|
||||
_tag=55e4d844b77885cc3f7832bdb3cf41a1f16950ef
|
||||
source=(git+https://github.com/GPUOpen-LibrariesAndSDKs/AMF.git#tag=${_tag})
|
||||
b2sums=(SKIP)
|
||||
|
||||
pkgver() {
|
||||
cd AMF
|
||||
|
||||
git describe --tags | sed 's/^v//'
|
||||
}
|
||||
|
||||
package() {
|
||||
install -dm 755 "${pkgdir}"/usr/include
|
||||
cp -dr --no-preserve=ownership AMF/amf/public/include "${pkgdir}"/usr/include/AMF
|
||||
install -Dm 644 AMF/LICENSE.txt -t "${pkgdir}"/usr/share/licenses/amf-headers/
|
||||
}
|
||||
|
||||
# vim: ts=2 sw=2 et:
|
43
avisynthplus/PKGBUILD
Normal file
43
avisynthplus/PKGBUILD
Normal file
@ -0,0 +1,43 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Daniel Bermond <dbermond@archlinux.org>
|
||||
|
||||
pkgname=avisynthplus
|
||||
pkgver=3.7.2
|
||||
pkgrel=1
|
||||
pkgdesc='An improved version of the AviSynth frameserver'
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url='https://avs-plus.net/'
|
||||
license=('GPL')
|
||||
depends=('gcc-libs' 'hicolor-icon-theme')
|
||||
optdepends=('devil: for ImageSeq plugin')
|
||||
makedepends=('cmake' 'devil')
|
||||
source=("https://github.com/AviSynth/AviSynthPlus/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz"
|
||||
'avisynthplus.xml')
|
||||
sha256sums=('6159fd976dffa62d5db5277cbb0b3b7f7a4ee92fc8667edd32da9840a669ccc1'
|
||||
'c4b270a3df7fbe1c153400215169c4ae4cae3b7a8710c843393e3a6ed0fd8a3e')
|
||||
|
||||
build() {
|
||||
case "${CARCH}" in
|
||||
powerpc|riscv64) _cmake_options+=(-DCMAKE_CXX_FLAGS="-latomic") ;;
|
||||
esac
|
||||
|
||||
cmake -B build -S "AviSynthPlus-${pkgver}" \
|
||||
-DCMAKE_BUILD_TYPE:STRING='None' \
|
||||
-DCMAKE_INSTALL_PREFIX:PATH='/usr' \
|
||||
-Wno-dev ${_cmake_options[@]}
|
||||
make -C build
|
||||
}
|
||||
|
||||
package() {
|
||||
make -C build DESTDIR="$pkgdir" install
|
||||
install -D -m644 avisynthplus.xml -t "${pkgdir}/usr/share/mime/packages"
|
||||
|
||||
local _icon
|
||||
local _res
|
||||
while read -r -d '' _icon
|
||||
do
|
||||
_res="$(sed 's/[[:alpha:]]*\([0-9]\+\)\.png/\1/' <<< "${_icon##*/}")"
|
||||
[ -n "$_res" ] && install -D -m644 "$_icon" \
|
||||
"${pkgdir}/usr/share/icons/hicolor/${_res}x${_res}/mimetypes/avisynthplus-script.png"
|
||||
done < <(find "AviSynthPlus-${pkgver}/distrib/Icons/Rastered" -type f -name 'AvsPlusIcon*.png' -print0)
|
||||
}
|
9
avisynthplus/avisynthplus.xml
Normal file
9
avisynthplus/avisynthplus.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
|
||||
<mime-type type="text/x-avs">
|
||||
<glob pattern="*.avs"/>
|
||||
<glob pattern="*.avsi"/>
|
||||
<icon name="avisynthplus-script"/>
|
||||
<comment>AviSynthPlus script</comment>
|
||||
</mime-type>
|
||||
</mime-info>
|
@ -8,9 +8,10 @@
|
||||
|
||||
pkgname=binutils
|
||||
pkgver=2.38
|
||||
pkgrel=3.3
|
||||
pkgrel=3.6
|
||||
pkgdesc='A set of programs to assemble and manipulate binary and object files'
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
arch=(riscv64)
|
||||
url='https://www.gnu.org/software/binutils/'
|
||||
license=('GPL3' 'GPL' 'FDL1.3' 'custom:FSFAP')
|
||||
groups=(base-devel)
|
||||
@ -118,6 +119,10 @@ package() {
|
||||
cd binutils-build
|
||||
make prefix="$pkgdir/usr" tooldir="$pkgdir/usr" install
|
||||
|
||||
for _bin in bin addr2line ar as c++filt elfedit gprof ld ld.bfd nm objcopy objdump ranlib readelf size strings strip; do
|
||||
ln -s ${_bin} ${pkgdir}/usr/bin/${CHOST}-${_bin}
|
||||
done
|
||||
|
||||
# install PIC version of libiberty
|
||||
install -m644 libiberty/pic/libiberty.a "$pkgdir/usr/lib"
|
||||
|
||||
@ -131,4 +136,6 @@ package() {
|
||||
|
||||
# install FSF All Permissive License
|
||||
install -Dm644 -t "${pkgdir}"/usr/share/licenses/${pkgname}/ FSFAP
|
||||
|
||||
|
||||
}
|
||||
|
@ -13,7 +13,7 @@ makedepends=('imake')
|
||||
conflicts=('cdrkit')
|
||||
provides=('cdrkit')
|
||||
replaces=('cdrkit')
|
||||
options=(!makeflags)
|
||||
options=(!distcc !makeflags !ccache)
|
||||
backup=('etc/default/cdrecord' 'etc/default/rscsi')
|
||||
source=(https://downloads.sourceforge.net/cdrtools/cdrtools-$pkgver.tar.bz2)
|
||||
sha256sums=('aa28438f458ef3f314b79f2029db27679dae1d5ffe1569b6de57742511915e81')
|
||||
@ -26,11 +26,16 @@ build() {
|
||||
# install rscsi to /usr/bin instead of /usr/sbin
|
||||
sed -i 's|INSDIR=.*|INSDIR=bin|' rscsi/Makefile
|
||||
|
||||
[ "${CARCH}" = 'riscv64' ] && \
|
||||
ln -s RULES/i586-linux-cc.rul RULES/riscv64-linux-cc.rul
|
||||
case "${CARCH}" in
|
||||
riscv64)
|
||||
ln -s RULES/i586-linux-cc.rul RULES/riscv-linux-cc.rul
|
||||
ln -s RULES/i586-linux-cc.rul RULES/riscv64-linux-cc.rul
|
||||
export CC=gcc
|
||||
;;
|
||||
esac
|
||||
|
||||
export GMAKE_NOWARN=true
|
||||
make INS_BASE=/usr INS_RBASE=/ VERSION_OS="_ArchPOWER" LDOPTX="$LDFLAGS"
|
||||
make INS_BASE=/usr INS_RBASE=/ VERSION_OS="_ArchPOWER" CCOPTX="${CFLAGS}" LDOPTX="$LDFLAGS"
|
||||
}
|
||||
|
||||
check() {
|
||||
|
@ -2,21 +2,20 @@
|
||||
# Maintainer: Antonio Rojas <arojas@archlinux.org>
|
||||
|
||||
pkgname=coin-or-osi
|
||||
pkgver=0.108.6
|
||||
pkgver=0.108.7
|
||||
pkgrel=1
|
||||
pkgdesc="COIN-OR Open Solver Interface"
|
||||
arch=(x86_64 powerpc64le)
|
||||
url="https://projects.coin-or.org/Osi"
|
||||
pkgdesc='COIN-OR Open Solver Interface'
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
url='https://github.com/coin-or/Osi'
|
||||
license=(EPL)
|
||||
groups=(coin-or)
|
||||
depends=(coin-or-coinutils)
|
||||
makedepends=(gcc-fortran)
|
||||
source=("https://www.coin-or.org/download/source/Osi/Osi-${pkgver}.tgz")
|
||||
sha256sums=('57ef3f0c97995bac647504aee0ed34d31f79033ece04cd2cb86b4645f0a552d8')
|
||||
source=($pkgname-$pkgver.tar.gz::https://github.com/coin-or/Osi/archive/refs/tags/releases/$pkgver.tar.gz)
|
||||
sha256sums=('f1bc53a498585f508d3f8d74792440a30a83c8bc934d0c8ecf8cd8bc0e486228')
|
||||
|
||||
build() {
|
||||
cd Osi-$pkgver
|
||||
COIN_SKIP_PROJECTS="Sample" \
|
||||
cd Osi-releases-$pkgver
|
||||
./configure --prefix=/usr --enable-dependency-linking \
|
||||
--with-coinutils-lib="$(pkg-config --libs coinutils)" \
|
||||
--with-coinutils-incdir="/usr/include/coin/" \
|
||||
@ -25,7 +24,6 @@ build() {
|
||||
}
|
||||
|
||||
package() {
|
||||
cd Osi-$pkgver
|
||||
PKG_CONFIG_LIBDIR="${pkgdir}/usr/lib/pkgconfig/" \
|
||||
cd Osi-releases-$pkgver
|
||||
make DESTDIR="$pkgdir" install
|
||||
}
|
||||
|
21
cronie/0001-fix-range-entries.patch
Normal file
21
cronie/0001-fix-range-entries.patch
Normal file
@ -0,0 +1,21 @@
|
||||
From 62e53f1cdb9c1e12a01ee7814c92cd937d50328d Mon Sep 17 00:00:00 2001
|
||||
From: w30023233 <wangyuhang27@huawei.com>
|
||||
Date: Wed, 23 Mar 2022 15:40:01 +0800
|
||||
Subject: Fix regression in handling 1-5 crontab entries
|
||||
|
||||
---
|
||||
src/entry.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/entry.c b/src/entry.c
|
||||
index e9e258b..bb7cb62 100644
|
||||
--- a/src/entry.c
|
||||
+++ b/src/entry.c
|
||||
@@ -595,6 +595,7 @@ get_range(bitstr_t * bits, int low, int high, const char *names[],
|
||||
return (EOF);
|
||||
|
||||
case R_RANGE:
|
||||
+ unget_char(ch, file);
|
||||
if (get_number(&num2, low, names, file) != EOF) {
|
||||
state = R_RANGE_NUM2;
|
||||
break;
|
@ -7,7 +7,7 @@
|
||||
pkgbase=dbus
|
||||
pkgname=(dbus dbus-docs)
|
||||
pkgver=1.14.0
|
||||
pkgrel=1
|
||||
pkgrel=1.1
|
||||
pkgdesc="Freedesktop.org message bus system"
|
||||
url="https://wiki.freedesktop.org/www/Software/dbus/"
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
|
19
devil/FS70085.patch
Normal file
19
devil/FS70085.patch
Normal file
@ -0,0 +1,19 @@
|
||||
diff -ru DevIL/DevIL/src-IL/src/il_jp2.cpp DevILb/DevIL/src-IL/src/il_jp2.cpp
|
||||
--- DevIL/DevIL/src-IL/src/il_jp2.cpp 2017-01-02 01:03:56.000000000 +0100
|
||||
+++ DevILb/DevIL/src-IL/src/il_jp2.cpp 2021-03-20 09:25:11.500686387 +0100
|
||||
@@ -314,13 +314,13 @@
|
||||
|
||||
|
||||
|
||||
-static int iJp2_file_read(jas_stream_obj_t *obj, char *buf, int cnt)
|
||||
+static int iJp2_file_read(jas_stream_obj_t *obj, char *buf, unsigned int cnt)
|
||||
{
|
||||
obj;
|
||||
return iread(buf, 1, cnt);
|
||||
}
|
||||
|
||||
-static int iJp2_file_write(jas_stream_obj_t *obj, char *buf, int cnt)
|
||||
+static int iJp2_file_write(jas_stream_obj_t *obj, const char *buf, unsigned int cnt)
|
||||
{
|
||||
obj;
|
||||
return iwrite(buf, 1, cnt);
|
48
devil/PKGBUILD
Normal file
48
devil/PKGBUILD
Normal file
@ -0,0 +1,48 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Laurent Carlier <lordheavym@gmail.org>
|
||||
# Contributor: damir <damir@archlinux.org>
|
||||
# Contributor: TheHoff <forums>
|
||||
|
||||
pkgname=devil
|
||||
pkgver=1.8.0
|
||||
pkgrel=5
|
||||
pkgdesc="Library for reading several different image formats"
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="https://sourceforge.net/projects/openil/"
|
||||
depends=('libpng' 'jasper' 'lcms2' 'libjpeg-turbo')
|
||||
makedepends=('cmake')
|
||||
options=('!docs' '!emptydirs')
|
||||
license=('GPL')
|
||||
source=(https://downloads.sourceforge.net/openil/DevIL-$pkgver.tar.gz
|
||||
soversion.patch
|
||||
FS70085.patch)
|
||||
sha256sums=('0075973ee7dd89f0507873e2580ac78336452d29d34a07134b208f44e2feb709'
|
||||
'f6ef4b428fd68f0fb837af548d20ffa5ca96f3e8e4f57faca8f5a90dc48b0377'
|
||||
'8cc6dedc65d46b2afd6364c55bdb29e259ad6df32529f2cb515998051fd8f35a')
|
||||
|
||||
prepare() {
|
||||
cd "${srcdir}/DevIL"
|
||||
|
||||
# Add solib version number to CMakeLists.txt
|
||||
# https://github.com/DentonW/DevIL/pull/50
|
||||
patch -Np1 -i "${srcdir}/soversion.patch"
|
||||
|
||||
patch -Np1 -i "${srcdir}/FS70085.patch"
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "${srcdir}/DevIL/DevIL"
|
||||
|
||||
rm -rf build && mkdir build
|
||||
cd build
|
||||
cmake .. \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_INSTALL_LIBDIR=lib
|
||||
make
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "${srcdir}/DevIL/DevIL/build"
|
||||
|
||||
make DESTDIR="$pkgdir" install
|
||||
}
|
47
devil/soversion.patch
Normal file
47
devil/soversion.patch
Normal file
@ -0,0 +1,47 @@
|
||||
From 1763633e5f7a8b86c293bd9a2f030961e77b0067 Mon Sep 17 00:00:00 2001
|
||||
From: Juergen Buchmueller <pullmoll@t-online.de>
|
||||
Date: Mon, 2 Jan 2017 16:48:55 +0100
|
||||
Subject: [PATCH] Add solib version number to CMakeLists.txt
|
||||
|
||||
---
|
||||
DevIL/src-IL/CMakeLists.txt | 1 +
|
||||
DevIL/src-ILU/CMakeLists.txt | 1 +
|
||||
DevIL/src-ILUT/CMakeLists.txt | 1 +
|
||||
3 files changed, 3 insertions(+)
|
||||
|
||||
diff --git a/DevIL/src-IL/CMakeLists.txt b/DevIL/src-IL/CMakeLists.txt
|
||||
index 02e4f033..095f43e7 100644
|
||||
--- a/DevIL/src-IL/CMakeLists.txt
|
||||
+++ b/DevIL/src-IL/CMakeLists.txt
|
||||
@@ -58,6 +58,7 @@ source_group("Text Files" FILES ${DevIL_TXT} )
|
||||
|
||||
if(BUILD_SHARED_LIBS)
|
||||
add_library(IL SHARED ${DevIL_SRCS} ${DevIL_INC} ${DevIL_RSRC} ${DevIL_TXT})
|
||||
+ set_target_properties(IL PROPERTIES SOVERSION 1)
|
||||
else(BUILD_SHARED_LIBS)
|
||||
add_library(IL ${DevIL_SRCS} ${DevIL_INC} ${DevIL_RSRC} ${DevIL_TXT})
|
||||
endif(BUILD_SHARED_LIBS)
|
||||
diff --git a/DevIL/src-ILU/CMakeLists.txt b/DevIL/src-ILU/CMakeLists.txt
|
||||
index 17a3afe7..44b9531b 100644
|
||||
--- a/DevIL/src-ILU/CMakeLists.txt
|
||||
+++ b/DevIL/src-ILU/CMakeLists.txt
|
||||
@@ -44,6 +44,7 @@ source_group("Resource Files" FILES ${ILU_RSRC} )
|
||||
|
||||
# Remove SHARED to create a static library
|
||||
add_library(ILU SHARED ${ILU_SRCS} ${ILU_INC} ${ILU_RSRC})
|
||||
+set_target_properties(ILU PROPERTIES SOVERSION 1)
|
||||
|
||||
|
||||
## ILU requires IL
|
||||
diff --git a/DevIL/src-ILUT/CMakeLists.txt b/DevIL/src-ILUT/CMakeLists.txt
|
||||
index 21470cbc..296f9955 100644
|
||||
--- a/DevIL/src-ILUT/CMakeLists.txt
|
||||
+++ b/DevIL/src-ILUT/CMakeLists.txt
|
||||
@@ -44,6 +44,7 @@ source_group("Resource Files" FILES ${ILUT_RSRC} )
|
||||
|
||||
# Remove SHARED to create a static library
|
||||
add_library(ILUT SHARED ${ILUT_SRCS} ${ILUT_INC} ${ILUT_RSRC})
|
||||
+set_target_properties(ILUT PROPERTIES SOVERSION 1)
|
||||
|
||||
## add link sub library info
|
||||
target_link_libraries(ILUT
|
15
distcc/python-3.10.patch
Normal file
15
distcc/python-3.10.patch
Normal file
@ -0,0 +1,15 @@
|
||||
diff --git a/include_server/c_extensions/distcc_pump_c_extensions_module.c b/include_server/c_extensions/distcc_pump_c_extensions_module.c
|
||||
index 763dd42..b00ffec 100644
|
||||
--- a/include_server/c_extensions/distcc_pump_c_extensions_module.c
|
||||
+++ b/include_server/c_extensions/distcc_pump_c_extensions_module.c
|
||||
@@ -33,6 +33,10 @@ const char *rs_program_name = "distcc_include_server";
|
||||
#include "distcc.h"
|
||||
#include "rpc.h"
|
||||
|
||||
+#ifndef PY_SSIZE_T_CLEAN
|
||||
+#define PY_SSIZE_T_CLEAN
|
||||
+#endif /* PY_SSIZE_T_CLEAN */
|
||||
+
|
||||
static PyObject *distcc_pump_c_extensionsError;
|
||||
void initdistcc_pump_c_extensions(void);
|
||||
|
@ -5,9 +5,10 @@
|
||||
pkgbase=e2fsprogs
|
||||
pkgname=('e2fsprogs' 'fuse2fs')
|
||||
pkgver=1.46.5
|
||||
pkgrel=3
|
||||
pkgrel=3.1
|
||||
pkgdesc='Ext2/3/4 filesystem utilities'
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
arch=(powerpc)
|
||||
license=('GPL' 'LGPL' 'MIT')
|
||||
url='http://e2fsprogs.sourceforge.net'
|
||||
options=('debug')
|
||||
@ -30,6 +31,8 @@ prepare() {
|
||||
build() {
|
||||
cd "${srcdir}/${pkgbase}-${pkgver}"
|
||||
|
||||
[ "${CARCH}" = 'powerpc' ] && PLATFORM_FLAGS="--enable-static"
|
||||
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--with-root-prefix='' \
|
||||
@ -39,7 +42,7 @@ build() {
|
||||
--disable-fsck \
|
||||
--disable-uuidd \
|
||||
--disable-libuuid \
|
||||
--disable-libblkid
|
||||
--disable-libblkid ${PLATFORM_FLAGS}
|
||||
make
|
||||
|
||||
# regenerate locale files
|
||||
@ -69,7 +72,10 @@ package_e2fsprogs() {
|
||||
sed -i -e 's#^ET_DIR=.*#ET_DIR="/usr/share/et"#' "${pkgdir}/usr/bin/compile_et"
|
||||
|
||||
# remove static libraries with a shared counterpart
|
||||
rm "${pkgdir}"/usr/lib/lib{com_err,e2p,ext2fs,ss}.a
|
||||
rm -v "${pkgdir}"/usr/lib/lib{com_err,e2p,ss}.a
|
||||
|
||||
# yaboot needs this
|
||||
[ "${CARCH}" != 'powerpc' ] && rm "${pkgdir}"/usr/lib/libext2fs.a
|
||||
|
||||
# remove fuse2fs which will be packaged separately
|
||||
rm "${pkgdir}"/usr/{bin/fuse2fs,share/man/man1/fuse2fs.1}
|
||||
|
@ -6,9 +6,9 @@
|
||||
|
||||
pkgname=editorconfig-core-c
|
||||
pkgver=0.12.5
|
||||
pkgrel=1
|
||||
pkgrel=1.1
|
||||
pkgdesc='EditorConfig core code written in C (for use by plugins supporting EditorConfig parsing)'
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url='https://github.com/editorconfig/editorconfig-core-c'
|
||||
license=(BSD)
|
||||
depends=(pcre2)
|
||||
@ -18,7 +18,8 @@ sha256sums=('b2b212e52e7ea6245e21eaf818ee458ba1c16117811a41e4998f3f2a1df298d2')
|
||||
|
||||
build() {
|
||||
cmake -B build -S $pkgname-$pkgver \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_C_FLAGS="$CFLAGS -ffat-lto-objects"
|
||||
cmake --build build
|
||||
}
|
||||
|
||||
|
39
emacs/glibc-2.34.patch
Normal file
39
emacs/glibc-2.34.patch
Normal file
@ -0,0 +1,39 @@
|
||||
From f97e07ea807cc6d38774a3888a15091b20645ac6 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Date: Tue, 9 Mar 2021 11:22:59 -0800
|
||||
Subject: [PATCH] Port alternate signal stack to upcoming glibc 2.34
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
* src/sysdep.c (sigsegv_stack): Increase size to 64 KiB and align
|
||||
it to max_align_t. This copies from Gnulib’s c-stack.c, and works
|
||||
around a portability bug in draft glibc 2.34, which no longer
|
||||
defines SIGSTKSZ when _GNU_SOURCE is defined.
|
||||
---
|
||||
src/sysdep.c | 10 +++++++++-
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/sysdep.c b/src/sysdep.c
|
||||
index 941b4e2fa2..24d8832b2f 100644
|
||||
--- a/src/sysdep.c
|
||||
+++ b/src/sysdep.c
|
||||
@@ -1785,7 +1785,15 @@ handle_arith_signal (int sig)
|
||||
|
||||
/* Alternate stack used by SIGSEGV handler below. */
|
||||
|
||||
-static unsigned char sigsegv_stack[SIGSTKSZ];
|
||||
+/* Storage for the alternate signal stack.
|
||||
+ 64 KiB is not too large for Emacs, and is large enough
|
||||
+ for all known platforms. Smaller sizes may run into trouble.
|
||||
+ For example, libsigsegv 2.6 through 2.8 have a bug where some
|
||||
+ architectures use more than the Linux default of an 8 KiB alternate
|
||||
+ stack when deciding if a fault was caused by stack overflow. */
|
||||
+static max_align_t sigsegv_stack[(64 * 1024
|
||||
+ + sizeof (max_align_t) - 1)
|
||||
+ / sizeof (max_align_t)];
|
||||
|
||||
|
||||
/* Return true if SIGINFO indicates a stack overflow. */
|
||||
--
|
||||
2.29.2
|
955
ffmpeg/ffmpeg-vmaf2.x.patch
Normal file
955
ffmpeg/ffmpeg-vmaf2.x.patch
Normal file
@ -0,0 +1,955 @@
|
||||
diff --git a/configure b/configure
|
||||
index 94f513288a..493493b4c5 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -3751,7 +3751,7 @@ vaguedenoiser_filter_deps="gpl"
|
||||
vflip_vulkan_filter_deps="vulkan spirv_compiler"
|
||||
vidstabdetect_filter_deps="libvidstab"
|
||||
vidstabtransform_filter_deps="libvidstab"
|
||||
-libvmaf_filter_deps="libvmaf pthreads"
|
||||
+libvmaf_filter_deps="libvmaf"
|
||||
zmq_filter_deps="libzmq"
|
||||
zoompan_filter_deps="swscale"
|
||||
zscale_filter_deps="libzimg const_nan"
|
||||
@@ -6626,7 +6626,7 @@ enabled libtwolame && require libtwolame twolame.h twolame_init -ltwolame
|
||||
enabled libuavs3d && require_pkg_config libuavs3d "uavs3d >= 1.1.41" uavs3d.h uavs3d_decode
|
||||
enabled libv4l2 && require_pkg_config libv4l2 libv4l2 libv4l2.h v4l2_ioctl
|
||||
enabled libvidstab && require_pkg_config libvidstab "vidstab >= 0.98" vid.stab/libvidstab.h vsMotionDetectInit
|
||||
-enabled libvmaf && require_pkg_config libvmaf "libvmaf >= 1.5.2" libvmaf.h compute_vmaf
|
||||
+enabled libvmaf && require_pkg_config libvmaf "libvmaf >= 2.0.0" libvmaf.h vmaf_init
|
||||
enabled libvo_amrwbenc && require libvo_amrwbenc vo-amrwbenc/enc_if.h E_IF_init -lvo-amrwbenc
|
||||
enabled libvorbis && require_pkg_config libvorbis vorbis vorbis/codec.h vorbis_info_init &&
|
||||
require_pkg_config libvorbisenc vorbisenc vorbis/vorbisenc.h vorbis_encode_init
|
||||
diff --git a/doc/filters.texi b/doc/filters.texi
|
||||
index 248c09caf8..9a890d1555 100644
|
||||
--- a/doc/filters.texi
|
||||
+++ b/doc/filters.texi
|
||||
@@ -14666,68 +14666,60 @@ ffmpeg -i input.mov -vf lensfun=make=Canon:model="Canon EOS 100D":lens_model="Ca
|
||||
|
||||
@section libvmaf
|
||||
|
||||
-Obtain the VMAF (Video Multi-Method Assessment Fusion)
|
||||
-score between two input videos.
|
||||
+Calulate the VMAF (Video Multi-Method Assessment Fusion) score for a
|
||||
+reference/distorted pair of input videos.
|
||||
|
||||
-The first input is the encoded video, and the second input is the reference video.
|
||||
+The first input is the distorted video, and the second input is the reference video.
|
||||
|
||||
The obtained VMAF score is printed through the logging system.
|
||||
|
||||
It requires Netflix's vmaf library (libvmaf) as a pre-requisite.
|
||||
After installing the library it can be enabled using:
|
||||
@code{./configure --enable-libvmaf}.
|
||||
-If no model path is specified it uses the default model: @code{vmaf_v0.6.1.pkl}.
|
||||
|
||||
The filter has following options:
|
||||
|
||||
@table @option
|
||||
-@item model_path
|
||||
-Set the model path which is to be used for SVM.
|
||||
-Default value: @code{"/usr/local/share/model/vmaf_v0.6.1.pkl"}
|
||||
-
|
||||
-@item log_path
|
||||
-Set the file path to be used to store logs.
|
||||
+@item model
|
||||
+A `|` delimited list of vmaf models. Each model can be configured with a number of parameters.
|
||||
+Default value: @code{"version=vmaf_v0.6.1"}
|
||||
|
||||
-@item log_fmt
|
||||
-Set the format of the log file (csv, json or xml).
|
||||
+@item model_path
|
||||
+Deprecated, use model='path=...'.
|
||||
|
||||
@item enable_transform
|
||||
-This option can enable/disable the @code{score_transform} applied to the final predicted VMAF score,
|
||||
-if you have specified score_transform option in the input parameter file passed to @code{run_vmaf_training.py}
|
||||
-Default value: @code{false}
|
||||
+Deprecated, use model='enable_transform=true'.
|
||||
|
||||
@item phone_model
|
||||
-Invokes the phone model which will generate VMAF scores higher than in the
|
||||
-regular model, which is more suitable for laptop, TV, etc. viewing conditions.
|
||||
-Default value: @code{false}
|
||||
+Deprecated, use model='enable_transform=true'.
|
||||
+
|
||||
+@item enable_conf_interval
|
||||
+Deprecated, use model='enable_conf_interval=true'.
|
||||
+
|
||||
+@item feature
|
||||
+A `|` delimited list of features. Each feature can be configured with a number of parameters.
|
||||
|
||||
@item psnr
|
||||
-Enables computing psnr along with vmaf.
|
||||
-Default value: @code{false}
|
||||
+Deprecated, use feature='name=psnr'.
|
||||
|
||||
@item ssim
|
||||
-Enables computing ssim along with vmaf.
|
||||
-Default value: @code{false}
|
||||
+Deprecated, use feature='name=ssim'.
|
||||
|
||||
@item ms_ssim
|
||||
-Enables computing ms_ssim along with vmaf.
|
||||
-Default value: @code{false}
|
||||
+Deprecated, use feature='name=ms_ssim'.
|
||||
|
||||
-@item pool
|
||||
-Set the pool method to be used for computing vmaf.
|
||||
-Options are @code{min}, @code{harmonic_mean} or @code{mean} (default).
|
||||
+@item log_path
|
||||
+Set the file path to be used to store log files.
|
||||
+
|
||||
+@item log_fmt
|
||||
+Set the format of the log file (xml, json, csv, or sub).
|
||||
|
||||
@item n_threads
|
||||
-Set number of threads to be used when computing vmaf.
|
||||
-Default value: @code{0}, which makes use of all available logical processors.
|
||||
+Set number of threads to be used when initializing libvmaf.
|
||||
+Default value: @code{0}, no threads.
|
||||
|
||||
@item n_subsample
|
||||
-Set interval for frame subsampling used when computing vmaf.
|
||||
-Default value: @code{1}
|
||||
-
|
||||
-@item enable_conf_interval
|
||||
-Enables confidence interval.
|
||||
-Default value: @code{false}
|
||||
+Set frame subsampling interval to be used.
|
||||
@end table
|
||||
|
||||
This filter also supports the @ref{framesync} options.
|
||||
@@ -14735,23 +14727,31 @@ This filter also supports the @ref{framesync} options.
|
||||
@subsection Examples
|
||||
@itemize
|
||||
@item
|
||||
-On the below examples the input file @file{main.mpg} being processed is
|
||||
-compared with the reference file @file{ref.mpg}.
|
||||
+In the examples below, a distorted video @file{distorted.mpg} is
|
||||
+compared with a reference file @file{reference.mpg}.
|
||||
|
||||
+@item
|
||||
+Basic usage:
|
||||
+@example
|
||||
+ffmpeg -i distorted.mpg -i reference.mpg -lavfi libvmaf=log_path=output.xml -f null -
|
||||
+@end example
|
||||
+
|
||||
+@item
|
||||
+Example with multiple models:
|
||||
@example
|
||||
-ffmpeg -i main.mpg -i ref.mpg -lavfi libvmaf -f null -
|
||||
+ffmpeg -i distorted.mpg -i reference.mpg -lavfi libvmaf='model=version=vmaf_v0.6.1\\:name=vmaf|version=vmaf_v0.6.1neg\\:name=vmaf_neg' -f null -
|
||||
@end example
|
||||
|
||||
@item
|
||||
-Example with options:
|
||||
+Example with multiple addtional features:
|
||||
@example
|
||||
-ffmpeg -i main.mpg -i ref.mpg -lavfi libvmaf="psnr=1:log_fmt=json" -f null -
|
||||
+ffmpeg -i distorted.mpg -i reference.mpg -lavfi libvmaf='feature=name=psnr|name=ciede' -f null -
|
||||
@end example
|
||||
|
||||
@item
|
||||
Example with options and different containers:
|
||||
@example
|
||||
-ffmpeg -i main.mpg -i ref.mkv -lavfi "[0:v]settb=AVTB,setpts=PTS-STARTPTS[main];[1:v]settb=AVTB,setpts=PTS-STARTPTS[ref];[main][ref]libvmaf=psnr=1:log_fmt=json" -f null -
|
||||
+ffmpeg -i distorted.mpg -i reference.mkv -lavfi "[0:v]settb=AVTB,setpts=PTS-STARTPTS[main];[1:v]settb=AVTB,setpts=PTS-STARTPTS[ref];[main][ref]libvmaf=log_fmt=json:log_path=output.json" -f null -
|
||||
@end example
|
||||
@end itemize
|
||||
|
||||
diff --git a/libavfilter/vf_libvmaf.c b/libavfilter/vf_libvmaf.c
|
||||
index 5d492126eb..eee1c280ef 100644
|
||||
--- a/libavfilter/vf_libvmaf.c
|
||||
+++ b/libavfilter/vf_libvmaf.c
|
||||
@@ -24,8 +24,8 @@
|
||||
* Calculate the VMAF between two input videos.
|
||||
*/
|
||||
|
||||
-#include <pthread.h>
|
||||
#include <libvmaf.h>
|
||||
+
|
||||
#include "libavutil/avstring.h"
|
||||
#include "libavutil/opt.h"
|
||||
#include "libavutil/pixdesc.h"
|
||||
@@ -39,23 +39,9 @@
|
||||
typedef struct LIBVMAFContext {
|
||||
const AVClass *class;
|
||||
FFFrameSync fs;
|
||||
- const AVPixFmtDescriptor *desc;
|
||||
- int width;
|
||||
- int height;
|
||||
- double vmaf_score;
|
||||
- int vmaf_thread_created;
|
||||
- pthread_t vmaf_thread;
|
||||
- pthread_mutex_t lock;
|
||||
- pthread_cond_t cond;
|
||||
- int eof;
|
||||
- AVFrame *gmain;
|
||||
- AVFrame *gref;
|
||||
- int frame_set;
|
||||
char *model_path;
|
||||
char *log_path;
|
||||
char *log_fmt;
|
||||
- int disable_clip;
|
||||
- int disable_avx;
|
||||
int enable_transform;
|
||||
int phone_model;
|
||||
int psnr;
|
||||
@@ -65,184 +51,487 @@ typedef struct LIBVMAFContext {
|
||||
int n_threads;
|
||||
int n_subsample;
|
||||
int enable_conf_interval;
|
||||
- int error;
|
||||
+ char *model_cfg;
|
||||
+ char *feature_cfg;
|
||||
+ VmafContext *vmaf;
|
||||
+ VmafModel **model;
|
||||
+ unsigned model_cnt;
|
||||
+ unsigned frame_cnt;
|
||||
+ unsigned bpc;
|
||||
} LIBVMAFContext;
|
||||
|
||||
#define OFFSET(x) offsetof(LIBVMAFContext, x)
|
||||
#define FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM
|
||||
|
||||
static const AVOption libvmaf_options[] = {
|
||||
- {"model_path", "Set the model to be used for computing vmaf.", OFFSET(model_path), AV_OPT_TYPE_STRING, {.str="/usr/local/share/model/vmaf_v0.6.1.pkl"}, 0, 1, FLAGS},
|
||||
- {"log_path", "Set the file path to be used to store logs.", OFFSET(log_path), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS},
|
||||
- {"log_fmt", "Set the format of the log (csv, json or xml).", OFFSET(log_fmt), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS},
|
||||
- {"enable_transform", "Enables transform for computing vmaf.", OFFSET(enable_transform), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS},
|
||||
- {"phone_model", "Invokes the phone model that will generate higher VMAF scores.", OFFSET(phone_model), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS},
|
||||
- {"psnr", "Enables computing psnr along with vmaf.", OFFSET(psnr), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS},
|
||||
- {"ssim", "Enables computing ssim along with vmaf.", OFFSET(ssim), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS},
|
||||
- {"ms_ssim", "Enables computing ms-ssim along with vmaf.", OFFSET(ms_ssim), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS},
|
||||
+ {"model_path", "use model='path=...'.", OFFSET(model_path), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS|AV_OPT_FLAG_DEPRECATED},
|
||||
+ {"log_path", "Set the file path to be used to write log.", OFFSET(log_path), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS},
|
||||
+ {"log_fmt", "Set the format of the log (csv, json, xml, or sub).", OFFSET(log_fmt), AV_OPT_TYPE_STRING, {.str="xml"}, 0, 1, FLAGS},
|
||||
+ {"enable_transform", "use model='enable_transform=true'.", OFFSET(enable_transform), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS|AV_OPT_FLAG_DEPRECATED},
|
||||
+ {"phone_model", "use model='enable_transform=true'.", OFFSET(phone_model), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS|AV_OPT_FLAG_DEPRECATED},
|
||||
+ {"psnr", "use feature='name=psnr'.", OFFSET(psnr), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS|AV_OPT_FLAG_DEPRECATED},
|
||||
+ {"ssim", "use feature='name=ssim'.", OFFSET(ssim), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS|AV_OPT_FLAG_DEPRECATED},
|
||||
+ {"ms_ssim", "use feature='name=ms_ssim'.", OFFSET(ms_ssim), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS|AV_OPT_FLAG_DEPRECATED},
|
||||
{"pool", "Set the pool method to be used for computing vmaf.", OFFSET(pool), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS},
|
||||
{"n_threads", "Set number of threads to be used when computing vmaf.", OFFSET(n_threads), AV_OPT_TYPE_INT, {.i64=0}, 0, UINT_MAX, FLAGS},
|
||||
{"n_subsample", "Set interval for frame subsampling used when computing vmaf.", OFFSET(n_subsample), AV_OPT_TYPE_INT, {.i64=1}, 1, UINT_MAX, FLAGS},
|
||||
- {"enable_conf_interval", "Enables confidence interval.", OFFSET(enable_conf_interval), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS},
|
||||
+ {"enable_conf_interval", "model='enable_conf_interval=true'.", OFFSET(enable_conf_interval), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1, FLAGS|AV_OPT_FLAG_DEPRECATED},
|
||||
+ {"model", "Set the model to be used for computing vmaf.", OFFSET(model_cfg), AV_OPT_TYPE_STRING, {.str="version=vmaf_v0.6.1"}, 0, 1, FLAGS},
|
||||
+ {"feature", "Set the feature to be used for computing vmaf.", OFFSET(feature_cfg), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 1, FLAGS},
|
||||
{ NULL }
|
||||
};
|
||||
|
||||
FRAMESYNC_DEFINE_CLASS(libvmaf, LIBVMAFContext, fs);
|
||||
|
||||
-#define read_frame_fn(type, bits) \
|
||||
- static int read_frame_##bits##bit(float *ref_data, float *main_data, \
|
||||
- float *temp_data, int stride, void *ctx) \
|
||||
-{ \
|
||||
- LIBVMAFContext *s = (LIBVMAFContext *) ctx; \
|
||||
- int ret; \
|
||||
- \
|
||||
- pthread_mutex_lock(&s->lock); \
|
||||
- \
|
||||
- while (!s->frame_set && !s->eof) { \
|
||||
- pthread_cond_wait(&s->cond, &s->lock); \
|
||||
- } \
|
||||
- \
|
||||
- if (s->frame_set) { \
|
||||
- int ref_stride = s->gref->linesize[0]; \
|
||||
- int main_stride = s->gmain->linesize[0]; \
|
||||
- \
|
||||
- const type *ref_ptr = (const type *) s->gref->data[0]; \
|
||||
- const type *main_ptr = (const type *) s->gmain->data[0]; \
|
||||
- \
|
||||
- float *ptr = ref_data; \
|
||||
- float factor = 1.f / (1 << (bits - 8)); \
|
||||
- \
|
||||
- int h = s->height; \
|
||||
- int w = s->width; \
|
||||
- \
|
||||
- int i,j; \
|
||||
- \
|
||||
- for (i = 0; i < h; i++) { \
|
||||
- for ( j = 0; j < w; j++) { \
|
||||
- ptr[j] = ref_ptr[j] * factor; \
|
||||
- } \
|
||||
- ref_ptr += ref_stride / sizeof(*ref_ptr); \
|
||||
- ptr += stride / sizeof(*ptr); \
|
||||
- } \
|
||||
- \
|
||||
- ptr = main_data; \
|
||||
- \
|
||||
- for (i = 0; i < h; i++) { \
|
||||
- for (j = 0; j < w; j++) { \
|
||||
- ptr[j] = main_ptr[j] * factor; \
|
||||
- } \
|
||||
- main_ptr += main_stride / sizeof(*main_ptr); \
|
||||
- ptr += stride / sizeof(*ptr); \
|
||||
- } \
|
||||
- } \
|
||||
- \
|
||||
- ret = !s->frame_set; \
|
||||
- \
|
||||
- av_frame_unref(s->gref); \
|
||||
- av_frame_unref(s->gmain); \
|
||||
- s->frame_set = 0; \
|
||||
- \
|
||||
- pthread_cond_signal(&s->cond); \
|
||||
- pthread_mutex_unlock(&s->lock); \
|
||||
- \
|
||||
- if (ret) { \
|
||||
- return 2; \
|
||||
- } \
|
||||
- \
|
||||
- return 0; \
|
||||
+static enum VmafPixelFormat pix_fmt_map(enum AVPixelFormat av_pix_fmt)
|
||||
+{
|
||||
+ switch (av_pix_fmt) {
|
||||
+ case AV_PIX_FMT_YUV420P:
|
||||
+ case AV_PIX_FMT_YUV420P10LE:
|
||||
+ case AV_PIX_FMT_YUV420P12LE:
|
||||
+ case AV_PIX_FMT_YUV420P16LE:
|
||||
+ return VMAF_PIX_FMT_YUV420P;
|
||||
+ case AV_PIX_FMT_YUV422P:
|
||||
+ case AV_PIX_FMT_YUV422P10LE:
|
||||
+ case AV_PIX_FMT_YUV422P12LE:
|
||||
+ case AV_PIX_FMT_YUV422P16LE:
|
||||
+ return VMAF_PIX_FMT_YUV422P;
|
||||
+ case AV_PIX_FMT_YUV444P:
|
||||
+ case AV_PIX_FMT_YUV444P10LE:
|
||||
+ case AV_PIX_FMT_YUV444P12LE:
|
||||
+ case AV_PIX_FMT_YUV444P16LE:
|
||||
+ return VMAF_PIX_FMT_YUV444P;
|
||||
+ default:
|
||||
+ return VMAF_PIX_FMT_UNKNOWN;
|
||||
+ }
|
||||
}
|
||||
|
||||
-read_frame_fn(uint8_t, 8);
|
||||
-read_frame_fn(uint16_t, 10);
|
||||
+static int copy_picture_data(AVFrame *src, VmafPicture *dst, unsigned bpc)
|
||||
+{
|
||||
+ int err = vmaf_picture_alloc(dst, pix_fmt_map(src->format), bpc,
|
||||
+ src->width, src->height);
|
||||
+ if (err)
|
||||
+ return AVERROR(ENOMEM);
|
||||
+
|
||||
+ for (unsigned i = 0; i < 3; i++) {
|
||||
+ uint8_t *src_data = src->data[i];
|
||||
+ uint8_t *dst_data = dst->data[i];
|
||||
+ for (unsigned j = 0; j < dst->h[i]; j++) {
|
||||
+ memcpy(dst_data, src_data, sizeof(*dst_data) * dst->w[i]);
|
||||
+ src_data += src->linesize[i];
|
||||
+ dst_data += dst->stride[i];
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
|
||||
-static void compute_vmaf_score(LIBVMAFContext *s)
|
||||
+static int do_vmaf(FFFrameSync *fs)
|
||||
{
|
||||
- int (*read_frame)(float *ref_data, float *main_data, float *temp_data,
|
||||
- int stride, void *ctx);
|
||||
- char *format;
|
||||
+ AVFilterContext *ctx = fs->parent;
|
||||
+ LIBVMAFContext *s = ctx->priv;
|
||||
+ VmafPicture pic_ref, pic_dist;
|
||||
+ AVFrame *ref, *dist;
|
||||
+ int err = 0;
|
||||
|
||||
- if (s->desc->comp[0].depth <= 8) {
|
||||
- read_frame = read_frame_8bit;
|
||||
- } else {
|
||||
- read_frame = read_frame_10bit;
|
||||
+ int ret = ff_framesync_dualinput_get(fs, &dist, &ref);
|
||||
+ if (ret < 0)
|
||||
+ return ret;
|
||||
+ if (ctx->is_disabled || !ref)
|
||||
+ return ff_filter_frame(ctx->outputs[0], dist);
|
||||
+
|
||||
+ err = copy_picture_data(ref, &pic_ref, s->bpc);
|
||||
+ if (err) {
|
||||
+ av_log(s, AV_LOG_ERROR, "problem during vmaf_picture_alloc.\n");
|
||||
+ return AVERROR(ENOMEM);
|
||||
+ }
|
||||
+
|
||||
+ err = copy_picture_data(dist, &pic_dist, s->bpc);
|
||||
+ if (err) {
|
||||
+ av_log(s, AV_LOG_ERROR, "problem during vmaf_picture_alloc.\n");
|
||||
+ vmaf_picture_unref(&pic_ref);
|
||||
+ return AVERROR(ENOMEM);
|
||||
}
|
||||
|
||||
- format = (char *) s->desc->name;
|
||||
+ err = vmaf_read_pictures(s->vmaf, &pic_ref, &pic_dist, s->frame_cnt++);
|
||||
+ if (err) {
|
||||
+ av_log(s, AV_LOG_ERROR, "problem during vmaf_read_pictures.\n");
|
||||
+ return AVERROR(EINVAL);
|
||||
+ }
|
||||
|
||||
- s->error = compute_vmaf(&s->vmaf_score, format, s->width, s->height,
|
||||
- read_frame, s, s->model_path, s->log_path,
|
||||
- s->log_fmt, 0, 0, s->enable_transform,
|
||||
- s->phone_model, s->psnr, s->ssim,
|
||||
- s->ms_ssim, s->pool,
|
||||
- s->n_threads, s->n_subsample, s->enable_conf_interval);
|
||||
+ return ff_filter_frame(ctx->outputs[0], dist);
|
||||
}
|
||||
|
||||
-static void *call_vmaf(void *ctx)
|
||||
+
|
||||
+static AVDictionary **delimited_dict_parse(char *str, unsigned *cnt)
|
||||
{
|
||||
- LIBVMAFContext *s = (LIBVMAFContext *) ctx;
|
||||
- compute_vmaf_score(s);
|
||||
- if (!s->error) {
|
||||
- av_log(ctx, AV_LOG_INFO, "VMAF score: %f\n",s->vmaf_score);
|
||||
- } else {
|
||||
- pthread_mutex_lock(&s->lock);
|
||||
- pthread_cond_signal(&s->cond);
|
||||
- pthread_mutex_unlock(&s->lock);
|
||||
+ AVDictionary **dict = NULL;
|
||||
+ char *str_copy = NULL;
|
||||
+ char *saveptr = NULL;
|
||||
+ unsigned cnt2;
|
||||
+ int err = 0;
|
||||
+
|
||||
+ if (!str)
|
||||
+ return NULL;
|
||||
+
|
||||
+ cnt2 = 1;
|
||||
+ for (char *p = str; *p; p++) {
|
||||
+ if (*p == '|')
|
||||
+ cnt2++;
|
||||
+ }
|
||||
+
|
||||
+ dict = av_calloc(cnt2, sizeof(*dict));
|
||||
+ if (!dict)
|
||||
+ goto fail;
|
||||
+
|
||||
+ str_copy = av_strdup(str);
|
||||
+ if (!str_copy)
|
||||
+ goto fail;
|
||||
+
|
||||
+ *cnt = 0;
|
||||
+ for (unsigned i = 0; i < cnt2; i++) {
|
||||
+ char *s = av_strtok(i == 0 ? str_copy : NULL, "|", &saveptr);
|
||||
+ if (!s)
|
||||
+ continue;
|
||||
+ err = av_dict_parse_string(&dict[(*cnt)++], s, "=", ":", 0);
|
||||
+ if (err)
|
||||
+ goto fail;
|
||||
+ }
|
||||
+
|
||||
+ av_free(str_copy);
|
||||
+ return dict;
|
||||
+
|
||||
+fail:
|
||||
+ if (dict) {
|
||||
+ for (unsigned i = 0; i < *cnt; i++) {
|
||||
+ if (dict[i])
|
||||
+ av_dict_free(&dict[i]);
|
||||
+ }
|
||||
+ av_free(dict);
|
||||
}
|
||||
- pthread_exit(NULL);
|
||||
+
|
||||
+ av_free(str_copy);
|
||||
+ *cnt = 0;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
-static int do_vmaf(FFFrameSync *fs)
|
||||
+static int parse_features(AVFilterContext *ctx)
|
||||
{
|
||||
- AVFilterContext *ctx = fs->parent;
|
||||
LIBVMAFContext *s = ctx->priv;
|
||||
- AVFrame *master, *ref;
|
||||
- int ret;
|
||||
+ AVDictionary **dict = NULL;
|
||||
+ unsigned dict_cnt;
|
||||
+ int err = 0;
|
||||
|
||||
- ret = ff_framesync_dualinput_get(fs, &master, &ref);
|
||||
- if (ret < 0)
|
||||
- return ret;
|
||||
- if (!ref)
|
||||
- return ff_filter_frame(ctx->outputs[0], master);
|
||||
+ if (!s->feature_cfg)
|
||||
+ return 0;
|
||||
+
|
||||
+ dict = delimited_dict_parse(s->feature_cfg, &dict_cnt);
|
||||
+ if (!dict) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "could not parse feature config: %s\n", s->feature_cfg);
|
||||
+ return AVERROR(EINVAL);
|
||||
+ }
|
||||
|
||||
- pthread_mutex_lock(&s->lock);
|
||||
+ for (unsigned i = 0; i < dict_cnt; i++) {
|
||||
+ char *feature_name = NULL;
|
||||
+ VmafFeatureDictionary *feature_opts_dict = NULL;
|
||||
+ AVDictionaryEntry *e = NULL;
|
||||
+
|
||||
+ while (e = av_dict_get(dict[i], "", e, AV_DICT_IGNORE_SUFFIX)) {
|
||||
+ if (av_stristr(e->key, "name")) {
|
||||
+ feature_name = e->value;
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
+ err = vmaf_feature_dictionary_set(&feature_opts_dict, e->key,
|
||||
+ e->value);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "could not set feature option: %s.%s=%s\n",
|
||||
+ feature_name, e->key, e->value);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ err = vmaf_use_feature(s->vmaf, feature_name, feature_opts_dict);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "problem during vmaf_use_feature: %s\n", feature_name);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ }
|
||||
|
||||
- while (s->frame_set && !s->error) {
|
||||
- pthread_cond_wait(&s->cond, &s->lock);
|
||||
+exit:
|
||||
+ for (unsigned i = 0; i < dict_cnt; i++) {
|
||||
+ if (dict[i])
|
||||
+ av_dict_free(&dict[i]);
|
||||
}
|
||||
+ av_free(dict);
|
||||
+ return err;
|
||||
+}
|
||||
+
|
||||
+static int parse_models(AVFilterContext *ctx)
|
||||
+{
|
||||
+ LIBVMAFContext *s = ctx->priv;
|
||||
+ AVDictionary **dict;
|
||||
+ unsigned dict_cnt;
|
||||
+ int err = 0;
|
||||
+
|
||||
+ if (!s->model_cfg) return 0;
|
||||
|
||||
- if (s->error) {
|
||||
+ dict_cnt = 0;
|
||||
+ dict = delimited_dict_parse(s->model_cfg, &dict_cnt);
|
||||
+ if (!dict) {
|
||||
av_log(ctx, AV_LOG_ERROR,
|
||||
- "libvmaf encountered an error, check log for details\n");
|
||||
- pthread_mutex_unlock(&s->lock);
|
||||
+ "could not parse model config: %s\n", s->model_cfg);
|
||||
return AVERROR(EINVAL);
|
||||
}
|
||||
|
||||
- av_frame_ref(s->gref, ref);
|
||||
- av_frame_ref(s->gmain, master);
|
||||
+ s->model_cnt = dict_cnt;
|
||||
+ s->model = av_calloc(s->model_cnt, sizeof(*s->model));
|
||||
+ if (!s->model)
|
||||
+ return AVERROR(ENOMEM);
|
||||
+
|
||||
+ for (unsigned i = 0; i < dict_cnt; i++) {
|
||||
+ VmafModelConfig model_cfg = { 0 };
|
||||
+ AVDictionaryEntry *e = NULL;
|
||||
+ char *version = NULL;
|
||||
+ char *path = NULL;
|
||||
+
|
||||
+ while (e = av_dict_get(dict[i], "", e, AV_DICT_IGNORE_SUFFIX)) {
|
||||
+ if (av_stristr(e->key, "disable_clip")) {
|
||||
+ model_cfg.flags |= av_stristr(e->value, "true") ?
|
||||
+ VMAF_MODEL_FLAG_DISABLE_CLIP : 0;
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
+ if (av_stristr(e->key, "enable_transform")) {
|
||||
+ model_cfg.flags |= av_stristr(e->value, "true") ?
|
||||
+ VMAF_MODEL_FLAG_ENABLE_TRANSFORM : 0;
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
+ if (av_stristr(e->key, "name")) {
|
||||
+ model_cfg.name = e->value;
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
+ if (av_stristr(e->key, "version")) {
|
||||
+ version = e->value;
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
+ if (av_stristr(e->key, "path")) {
|
||||
+ path = e->value;
|
||||
+ continue;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (version) {
|
||||
+ err = vmaf_model_load(&s->model[i], &model_cfg, version);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "could not load libvmaf model with version: %s\n",
|
||||
+ version);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (path && !s->model[i]) {
|
||||
+ err = vmaf_model_load_from_path(&s->model[i], &model_cfg, path);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "could not load libvmaf model with path: %s\n",
|
||||
+ path);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (!s->model[i]) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "could not load libvmaf model with config: %s\n",
|
||||
+ s->model_cfg);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+
|
||||
+ while (e = av_dict_get(dict[i], "", e, AV_DICT_IGNORE_SUFFIX)) {
|
||||
+ VmafFeatureDictionary *feature_opts_dict = NULL;
|
||||
+ char *feature_opt = NULL;
|
||||
+
|
||||
+ char *feature_name = av_strtok(e->key, ".", &feature_opt);
|
||||
+ if (!feature_opt)
|
||||
+ continue;
|
||||
+
|
||||
+ err = vmaf_feature_dictionary_set(&feature_opts_dict,
|
||||
+ feature_opt, e->value);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "could not set feature option: %s.%s=%s\n",
|
||||
+ feature_name, feature_opt, e->value);
|
||||
+ err = AVERROR(EINVAL);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+
|
||||
+ err = vmaf_model_feature_overload(s->model[i], feature_name,
|
||||
+ feature_opts_dict);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "could not overload feature: %s\n", feature_name);
|
||||
+ err = AVERROR(EINVAL);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ for (unsigned i = 0; i < s->model_cnt; i++) {
|
||||
+ err = vmaf_use_features_from_model(s->vmaf, s->model[i]);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "problem during vmaf_use_features_from_model\n");
|
||||
+ err = AVERROR(EINVAL);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+exit:
|
||||
+ for (unsigned i = 0; i < dict_cnt; i++) {
|
||||
+ if (dict[i])
|
||||
+ av_dict_free(&dict[i]);
|
||||
+ }
|
||||
+ av_free(dict);
|
||||
+ return err;
|
||||
+}
|
||||
+
|
||||
+static enum VmafLogLevel log_level_map(int log_level)
|
||||
+{
|
||||
+ switch (log_level) {
|
||||
+ case AV_LOG_QUIET:
|
||||
+ return VMAF_LOG_LEVEL_NONE;
|
||||
+ case AV_LOG_ERROR:
|
||||
+ return VMAF_LOG_LEVEL_ERROR;
|
||||
+ case AV_LOG_WARNING:
|
||||
+ return VMAF_LOG_LEVEL_WARNING;
|
||||
+ case AV_LOG_INFO:
|
||||
+ return VMAF_LOG_LEVEL_INFO;
|
||||
+ case AV_LOG_DEBUG:
|
||||
+ return VMAF_LOG_LEVEL_DEBUG;
|
||||
+ default:
|
||||
+ return VMAF_LOG_LEVEL_INFO;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static int parse_deprecated_options(AVFilterContext *ctx)
|
||||
+{
|
||||
+ LIBVMAFContext *s = ctx->priv;
|
||||
+ VmafModel *model = NULL;
|
||||
+ VmafModelCollection *model_collection = NULL;
|
||||
+ enum VmafModelFlags flags = VMAF_MODEL_FLAGS_DEFAULT;
|
||||
+ int err = 0;
|
||||
+
|
||||
+ VmafModelConfig model_cfg = {
|
||||
+ .name = "vmaf",
|
||||
+ .flags = flags,
|
||||
+ };
|
||||
+
|
||||
+ if (s->enable_transform || s->phone_model)
|
||||
+ flags |= VMAF_MODEL_FLAG_ENABLE_TRANSFORM;
|
||||
+
|
||||
+ if (!s->model_path)
|
||||
+ goto extra_metrics_only;
|
||||
+
|
||||
+ if (s->enable_conf_interval) {
|
||||
+ err = vmaf_model_collection_load_from_path(&model, &model_collection,
|
||||
+ &model_cfg, s->model_path);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "problem loading model file: %s\n", s->model_path);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+
|
||||
+ err = vmaf_use_features_from_model_collection(s->vmaf, model_collection);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "problem loading feature extractors from model file: %s\n",
|
||||
+ s->model_path);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ } else {
|
||||
+ err = vmaf_model_load_from_path(&model, &model_cfg, s->model_path);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "problem loading model file: %s\n", s->model_path);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ err = vmaf_use_features_from_model(s->vmaf, model);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "problem loading feature extractors from model file: %s\n",
|
||||
+ s->model_path);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+extra_metrics_only:
|
||||
+ if (s->psnr) {
|
||||
+ VmafFeatureDictionary *d = NULL;
|
||||
+ vmaf_feature_dictionary_set(&d, "enable_chroma", "false");
|
||||
+
|
||||
+ err = vmaf_use_feature(s->vmaf, "psnr", d);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "problem loading feature extractor: psnr\n");
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ }
|
||||
|
||||
- s->frame_set = 1;
|
||||
+ if (s->ssim) {
|
||||
+ err = vmaf_use_feature(s->vmaf, "float_ssim", NULL);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "problem loading feature extractor: ssim\n");
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ }
|
||||
|
||||
- pthread_cond_signal(&s->cond);
|
||||
- pthread_mutex_unlock(&s->lock);
|
||||
+ if (s->ms_ssim) {
|
||||
+ err = vmaf_use_feature(s->vmaf, "float_ms_ssim", NULL);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "problem loading feature extractor: ms_ssim\n");
|
||||
+ goto exit;
|
||||
+ }
|
||||
+ }
|
||||
|
||||
- return ff_filter_frame(ctx->outputs[0], master);
|
||||
+exit:
|
||||
+ return err;
|
||||
}
|
||||
|
||||
static av_cold int init(AVFilterContext *ctx)
|
||||
{
|
||||
LIBVMAFContext *s = ctx->priv;
|
||||
+ int err = 0;
|
||||
|
||||
- s->gref = av_frame_alloc();
|
||||
- s->gmain = av_frame_alloc();
|
||||
- if (!s->gref || !s->gmain)
|
||||
- return AVERROR(ENOMEM);
|
||||
+ VmafConfiguration cfg = {
|
||||
+ .log_level = log_level_map(av_log_get_level()),
|
||||
+ .n_subsample = s->n_subsample,
|
||||
+ .n_threads = s->n_threads,
|
||||
+ };
|
||||
+
|
||||
+ err = vmaf_init(&s->vmaf, cfg);
|
||||
+ if (err)
|
||||
+ return AVERROR(EINVAL);
|
||||
+
|
||||
+ err = parse_deprecated_options(ctx);
|
||||
+ if (err)
|
||||
+ return err;
|
||||
|
||||
- s->error = 0;
|
||||
+ err = parse_models(ctx);
|
||||
+ if (err)
|
||||
+ return err;
|
||||
|
||||
- s->vmaf_thread_created = 0;
|
||||
- pthread_mutex_init(&s->lock, NULL);
|
||||
- pthread_cond_init (&s->cond, NULL);
|
||||
+ err = parse_features(ctx);
|
||||
+ if (err)
|
||||
+ return err;
|
||||
|
||||
s->fs.on_event = do_vmaf;
|
||||
return 0;
|
||||
@@ -256,26 +545,31 @@ static const enum AVPixelFormat pix_fmts[] = {
|
||||
|
||||
static int config_input_ref(AVFilterLink *inlink)
|
||||
{
|
||||
- AVFilterContext *ctx = inlink->dst;
|
||||
+ AVFilterContext *ctx = inlink->dst;
|
||||
LIBVMAFContext *s = ctx->priv;
|
||||
- int th;
|
||||
+ const AVPixFmtDescriptor *desc;
|
||||
+ int err = 0;
|
||||
|
||||
- if (ctx->inputs[0]->w != ctx->inputs[1]->w ||
|
||||
- ctx->inputs[0]->h != ctx->inputs[1]->h) {
|
||||
- av_log(ctx, AV_LOG_ERROR, "Width and height of input videos must be same.\n");
|
||||
- return AVERROR(EINVAL);
|
||||
+ if (ctx->inputs[0]->w != ctx->inputs[1]->w) {
|
||||
+ av_log(ctx, AV_LOG_ERROR, "input width must match.\n");
|
||||
+ err |= AVERROR(EINVAL);
|
||||
}
|
||||
|
||||
- s->desc = av_pix_fmt_desc_get(inlink->format);
|
||||
- s->width = ctx->inputs[0]->w;
|
||||
- s->height = ctx->inputs[0]->h;
|
||||
+ if (ctx->inputs[0]->h != ctx->inputs[1]->h) {
|
||||
+ av_log(ctx, AV_LOG_ERROR, "input height must match.\n");
|
||||
+ err |= AVERROR(EINVAL);
|
||||
+ }
|
||||
|
||||
- th = pthread_create(&s->vmaf_thread, NULL, call_vmaf, (void *) s);
|
||||
- if (th) {
|
||||
- av_log(ctx, AV_LOG_ERROR, "Thread creation failed.\n");
|
||||
- return AVERROR(EINVAL);
|
||||
+ if (ctx->inputs[0]->format != ctx->inputs[1]->format) {
|
||||
+ av_log(ctx, AV_LOG_ERROR, "input pix_fmt must match.\n");
|
||||
+ err |= AVERROR(EINVAL);
|
||||
}
|
||||
- s->vmaf_thread_created = 1;
|
||||
+
|
||||
+ if (err)
|
||||
+ return err;
|
||||
+
|
||||
+ desc = av_pix_fmt_desc_get(inlink->format);
|
||||
+ s->bpc = desc->comp[0].depth;
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -307,28 +601,80 @@ static int activate(AVFilterContext *ctx)
|
||||
return ff_framesync_activate(&s->fs);
|
||||
}
|
||||
|
||||
+static enum VmafOutputFormat log_fmt_map(const char *log_fmt)
|
||||
+{
|
||||
+ if (log_fmt) {
|
||||
+ if (av_stristr(log_fmt, "xml"))
|
||||
+ return VMAF_OUTPUT_FORMAT_XML;
|
||||
+ if (av_stristr(log_fmt, "json"))
|
||||
+ return VMAF_OUTPUT_FORMAT_JSON;
|
||||
+ if (av_stristr(log_fmt, "csv"))
|
||||
+ return VMAF_OUTPUT_FORMAT_CSV;
|
||||
+ if (av_stristr(log_fmt, "sub"))
|
||||
+ return VMAF_OUTPUT_FORMAT_SUB;
|
||||
+ }
|
||||
+
|
||||
+ return VMAF_OUTPUT_FORMAT_XML;
|
||||
+}
|
||||
+
|
||||
+static enum VmafPoolingMethod pool_method_map(const char *pool_method)
|
||||
+{
|
||||
+ if (pool_method) {
|
||||
+ if (av_stristr(pool_method, "min"))
|
||||
+ return VMAF_POOL_METHOD_MIN;
|
||||
+ if (av_stristr(pool_method, "mean"))
|
||||
+ return VMAF_POOL_METHOD_MEAN;
|
||||
+ if (av_stristr(pool_method, "harmonic_mean"))
|
||||
+ return VMAF_POOL_METHOD_HARMONIC_MEAN;
|
||||
+ }
|
||||
+
|
||||
+ return VMAF_POOL_METHOD_MEAN;
|
||||
+}
|
||||
+
|
||||
static av_cold void uninit(AVFilterContext *ctx)
|
||||
{
|
||||
LIBVMAFContext *s = ctx->priv;
|
||||
+ int err = 0;
|
||||
|
||||
ff_framesync_uninit(&s->fs);
|
||||
|
||||
- pthread_mutex_lock(&s->lock);
|
||||
- s->eof = 1;
|
||||
- pthread_cond_signal(&s->cond);
|
||||
- pthread_mutex_unlock(&s->lock);
|
||||
+ if (!s->frame_cnt)
|
||||
+ goto clean_up;
|
||||
|
||||
- if (s->vmaf_thread_created)
|
||||
- {
|
||||
- pthread_join(s->vmaf_thread, NULL);
|
||||
- s->vmaf_thread_created = 0;
|
||||
+ err = vmaf_read_pictures(s->vmaf, NULL, NULL, 0);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "problem flushing libvmaf context.\n");
|
||||
}
|
||||
|
||||
- av_frame_free(&s->gref);
|
||||
- av_frame_free(&s->gmain);
|
||||
+ for (unsigned i = 0; i < s->model_cnt; i++) {
|
||||
+ double vmaf_score;
|
||||
+ err = vmaf_score_pooled(s->vmaf, s->model[i], pool_method_map(s->pool),
|
||||
+ &vmaf_score, 0, s->frame_cnt - 1);
|
||||
+ if (err) {
|
||||
+ av_log(ctx, AV_LOG_ERROR,
|
||||
+ "problem getting pooled vmaf score.\n");
|
||||
+ }
|
||||
+
|
||||
+ av_log(ctx, AV_LOG_INFO, "VMAF score: %f\n", vmaf_score);
|
||||
+ }
|
||||
+
|
||||
+ if (s->vmaf) {
|
||||
+ if (s->log_path && !err)
|
||||
+ vmaf_write_output(s->vmaf, s->log_path, log_fmt_map(s->log_fmt));
|
||||
+ }
|
||||
+
|
||||
+clean_up:
|
||||
+ if (s->model) {
|
||||
+ for (unsigned i = 0; i < s->model_cnt; i++) {
|
||||
+ if (s->model[i])
|
||||
+ vmaf_model_destroy(s->model[i]);
|
||||
+ }
|
||||
+ av_free(s->model);
|
||||
+ }
|
||||
|
||||
- pthread_mutex_destroy(&s->lock);
|
||||
- pthread_cond_destroy(&s->cond);
|
||||
+ if (s->vmaf)
|
||||
+ vmaf_close(s->vmaf);
|
||||
}
|
||||
|
||||
static const AVFilterPad libvmaf_inputs[] = {
|
||||
--
|
||||
2.20.1
|
||||
|
@ -3,19 +3,20 @@
|
||||
# Contributor: Ionut Biru <ibiru@archlinux.org>
|
||||
|
||||
pkgname=gjs
|
||||
pkgver=1.70.1
|
||||
pkgrel=2
|
||||
pkgver=1.72.0
|
||||
pkgrel=1
|
||||
epoch=2
|
||||
pkgdesc="Javascript Bindings for GNOME"
|
||||
url="https://wiki.gnome.org/Projects/Gjs"
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
license=(GPL)
|
||||
depends=(cairo gobject-introspection-runtime js78 dconf readline
|
||||
depends=(cairo gobject-introspection-runtime js91 dconf readline
|
||||
libsysprof-capture)
|
||||
makedepends=(gobject-introspection git meson dbus)
|
||||
checkdepends=(xorg-server-xvfb gtk3 gtk4)
|
||||
provides=(libgjs.so)
|
||||
_commit=f17afbffec385030c1b47dab992f7e08232fea50 # tags/1.70.1^0
|
||||
options=(debug)
|
||||
_commit=f0341aaa64318752272c4c6a3aef335401f1b3c9 # tags/1.72.0^0
|
||||
source=("git+https://gitlab.gnome.org/GNOME/gjs.git#commit=$_commit")
|
||||
sha256sums=('SKIP')
|
||||
|
||||
|
@ -4,15 +4,15 @@
|
||||
|
||||
pkgbase=glib2
|
||||
pkgname=(glib2 glib2-docs)
|
||||
pkgver=2.72.0
|
||||
pkgrel=1.1
|
||||
pkgver=2.72.1
|
||||
pkgrel=1
|
||||
pkgdesc="Low level core library"
|
||||
url="https://wiki.gnome.org/Projects/GLib"
|
||||
license=(LGPL)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
depends=(pcre libffi util-linux-libs zlib libsysprof-capture)
|
||||
makedepends=(gettext gtk-doc shared-mime-info python libelf git util-linux
|
||||
meson )
|
||||
meson dbus)
|
||||
checkdepends=(desktop-file-utils)
|
||||
options=(debug)
|
||||
source=("git+https://gitlab.gnome.org/GNOME/glib.git?signed#tag=$pkgver"
|
||||
|
167
go/podman/log
167
go/podman/log
@ -1,167 +0,0 @@
|
||||
[1m[32m==>[m[1m Skipping x86_64, no available buildbot for this architecture.[m
|
||||
[?25l:: Synchronizing package databases...
|
||||
repo-local
|
||||
[1F repo-local is up to date[K[1E testing
|
||||
[1F testing 3.4 KiB 0.00 B/s --:-- [#---------------------] 5%
testing 56.8 KiB 237 KiB/s 00:00 [######################] 100%
[1E base
|
||||
[1F base 20.3 KiB 0.00 B/s --:-- [----------------------] 1%
base 1762.4 KiB 21.5 MiB/s 00:00 [######################] 100%
[1E:: Starting full system upgrade...
|
||||
there is nothing to do
|
||||
[?25h==> Making package: podman 3.2.2-2 (Fri Aug 6 06:52:32 2021)
|
||||
==> Retrieving sources...
|
||||
-> Updating libpod git repo...
|
||||
Fetching origin
|
||||
==> Validating source files with sha256sums...
|
||||
==> Verifying source file signatures with gpg...
|
||||
[1m[32m==>[0m[1m Making package: podman 3.2.2-2 (Fri 06 Aug 2021 06:53:04 AM UTC)[0m
|
||||
[1m[32m==>[0m[1m Checking runtime dependencies...[0m
|
||||
[1m[32m==>[0m[1m Installing missing dependencies...[0m
|
||||
error: target not found: conmon
|
||||
error: target not found: crun
|
||||
error: target not found: slirp4netns
|
||||
error: target not found: fuse-overlayfs
|
||||
[?25l[?25h[1m[31m==> ERROR:[0m[1m 'pacman' failed to install missing dependencies.[0m
|
||||
[1m[32m==>[0m[1m Missing dependencies:[0m
|
||||
[1m[34m ->[0m[1m cni-plugins[0m
|
||||
[1m[34m ->[0m[1m conmon[0m
|
||||
[1m[34m ->[0m[1m containers-common[0m
|
||||
[1m[34m ->[0m[1m device-mapper[0m
|
||||
[1m[34m ->[0m[1m iptables[0m
|
||||
[1m[34m ->[0m[1m crun[0m
|
||||
[1m[34m ->[0m[1m slirp4netns[0m
|
||||
[1m[34m ->[0m[1m fuse-overlayfs[0m
|
||||
[1m[32m==>[0m[1m Checking buildtime dependencies...[0m
|
||||
[1m[32m==>[0m[1m Installing missing dependencies...[0m
|
||||
[?25lresolving dependencies...
|
||||
looking for conflicting packages...
|
||||
|
||||
Packages (21) argon2-20190702-3 cryptsetup-2.3.6-1 dbus-1.12.20-1
|
||||
device-mapper-2.03.12-1 hwids-20210613-1 iptables-1:1.8.7-1
|
||||
json-c-0.15-1 kbd-2.4.0-2 kmod-29-1 libmnl-1.0.4-4
|
||||
libnetfilter_conntrack-1.0.8-1 libnfnetlink-1.0.1-4
|
||||
libnftnl-1.2.0-1 libnl-3.5.0-3 libpcap-1.10.1-1 lzo-2.10-4
|
||||
popt-1.18-1 btrfs-progs-5.13-1 go-2:1.16.6-1 go-md2man-2.0.1-1
|
||||
systemd-249.2-1
|
||||
|
||||
Total Installed Size: 665.30 MiB
|
||||
|
||||
:: Proceed with installation? [Y/n]
|
||||
checking keyring...
|
||||
checking package integrity...
|
||||
loading package files...
|
||||
checking for file conflicts...
|
||||
checking available disk space...
|
||||
:: Processing package changes...
|
||||
installing lzo...
|
||||
installing btrfs-progs...
|
||||
Optional dependencies for btrfs-progs
|
||||
python: libbtrfsutil python bindings
|
||||
e2fsprogs: btrfs-convert [installed]
|
||||
reiserfsprogs: btrfs-convert
|
||||
installing go...
|
||||
installing go-md2man...
|
||||
installing device-mapper...
|
||||
installing popt...
|
||||
installing json-c...
|
||||
installing argon2...
|
||||
installing cryptsetup...
|
||||
installing dbus...
|
||||
installing libmnl...
|
||||
installing libnftnl...
|
||||
installing libnl...
|
||||
installing libpcap...
|
||||
installing libnfnetlink...
|
||||
installing libnetfilter_conntrack...
|
||||
installing iptables...
|
||||
installing kbd...
|
||||
installing kmod...
|
||||
installing hwids...
|
||||
installing systemd...
|
||||
warning: directory permissions differ on /var/log/journal/
|
||||
filesystem: 755 package: 2755
|
||||
Creating group sys with gid 3.
|
||||
Creating group mem with gid 8.
|
||||
Creating group ftp with gid 11.
|
||||
Creating group mail with gid 12.
|
||||
Creating group log with gid 19.
|
||||
Creating group smmsp with gid 25.
|
||||
Creating group proc with gid 26.
|
||||
Creating group games with gid 50.
|
||||
Creating group lock with gid 54.
|
||||
Creating group network with gid 90.
|
||||
Creating group floppy with gid 94.
|
||||
Creating group scanner with gid 96.
|
||||
Creating group power with gid 98.
|
||||
Creating group adm with gid 999.
|
||||
Creating group wheel with gid 998.
|
||||
Creating group utmp with gid 997.
|
||||
Creating group audio with gid 996.
|
||||
Creating group disk with gid 995.
|
||||
Creating group input with gid 994.
|
||||
Creating group kmem with gid 993.
|
||||
Creating group kvm with gid 992.
|
||||
Creating group lp with gid 991.
|
||||
Creating group optical with gid 990.
|
||||
Creating group render with gid 989.
|
||||
Creating group sgx with gid 988.
|
||||
Creating group storage with gid 987.
|
||||
Creating group tty with gid 5.
|
||||
Creating group uucp with gid 986.
|
||||
Creating group video with gid 985.
|
||||
Creating group users with gid 984.
|
||||
Creating group systemd-journal with gid 983.
|
||||
Creating group rfkill with gid 982.
|
||||
Creating group bin with gid 1.
|
||||
Creating user bin (n/a) with uid 1 and gid 1.
|
||||
Creating group daemon with gid 2.
|
||||
Creating user daemon (n/a) with uid 2 and gid 2.
|
||||
Creating user mail (n/a) with uid 8 and gid 12.
|
||||
Creating user ftp (n/a) with uid 14 and gid 11.
|
||||
Creating group http with gid 33.
|
||||
Creating user http (n/a) with uid 33 and gid 33.
|
||||
Creating group nobody with gid 65534.
|
||||
Creating user nobody (Nobody) with uid 65534 and gid 65534.
|
||||
Creating group dbus with gid 81.
|
||||
Creating user dbus (System Message Bus) with uid 81 and gid 81.
|
||||
Creating group git with gid 981.
|
||||
Creating user git (git daemon user) with uid 981 and gid 981.
|
||||
Creating group systemd-journal-remote with gid 980.
|
||||
Creating user systemd-journal-remote (systemd Journal Remote) with uid 980 and gid 980.
|
||||
Creating group systemd-network with gid 979.
|
||||
Creating user systemd-network (systemd Network Management) with uid 979 and gid 979.
|
||||
Creating group systemd-oom with gid 978.
|
||||
Creating user systemd-oom (systemd Userspace OOM Killer) with uid 978 and gid 978.
|
||||
Creating group systemd-resolve with gid 977.
|
||||
Creating user systemd-resolve (systemd Resolver) with uid 977 and gid 977.
|
||||
Creating group systemd-timesync with gid 976.
|
||||
Creating user systemd-timesync (systemd Time Synchronization) with uid 976 and gid 976.
|
||||
Creating group systemd-coredump with gid 975.
|
||||
Creating user systemd-coredump (systemd Core Dumper) with uid 975 and gid 975.
|
||||
Creating group uuidd with gid 68.
|
||||
Creating user uuidd (n/a) with uid 68 and gid 68.
|
||||
Created symlink /etc/systemd/system/getty.target.wants/getty@tty1.service → /usr/lib/systemd/system/getty@.service.
|
||||
Created symlink /etc/systemd/system/multi-user.target.wants/remote-fs.target → /usr/lib/systemd/system/remote-fs.target.
|
||||
Created symlink /etc/systemd/system/dbus-org.freedesktop.resolve1.service → /usr/lib/systemd/system/systemd-resolved.service.
|
||||
Created symlink /etc/systemd/system/multi-user.target.wants/systemd-resolved.service → /usr/lib/systemd/system/systemd-resolved.service.
|
||||
:: Append 'init=/usr/lib/systemd/systemd' to your kernel command line in your
|
||||
bootloader to replace sysvinit with systemd, or install systemd-sysvcompat
|
||||
Optional dependencies for systemd
|
||||
libmicrohttpd: remote journald capabilities [installed]
|
||||
quota-tools: kernel-level quota management
|
||||
systemd-sysvcompat: symlink package to provide sysvinit binaries
|
||||
polkit: allow administration as unprivileged user
|
||||
curl: machinectl pull-tar and pull-raw [installed]
|
||||
libfido2: unlocking LUKS2 volumes with FIDO2 token
|
||||
:: Running post-transaction hooks...
|
||||
(1/9) Creating system user accounts...
|
||||
(2/9) Updating journal message catalog...
|
||||
(3/9) Reloading system manager configuration...
|
||||
Skipped: Current root is not booted.
|
||||
(4/9) Updating udev hardware database...
|
||||
(5/9) Applying kernel sysctl settings...
|
||||
Skipped: Current root is not booted.
|
||||
(6/9) Creating temporary files...
|
||||
(7/9) Reloading device manager configuration...
|
||||
Skipped: Device manager is not running.
|
||||
(8/9) Arming ConditionNeedsUpdate...
|
||||
(9/9) Reloading system bus configuration...
|
||||
Skipped: Current root is not booted.
|
||||
[?25h[1m[31m==> ERROR:[0m[1m Could not resolve all dependencies.[0m
|
15
graphene/no-installed-tests.diff
Normal file
15
graphene/no-installed-tests.diff
Normal file
@ -0,0 +1,15 @@
|
||||
diff --git i/tests/meson.build w/tests/meson.build
|
||||
index 0a6a355..0120c29 100644
|
||||
--- i/tests/meson.build
|
||||
+++ w/tests/meson.build
|
||||
@@ -67,7 +67,9 @@ src_build_path = meson.current_build_dir() / '../src'
|
||||
|
||||
if build_gir and host_system == 'linux' and not meson.is_cross_build()
|
||||
foreach unit: ['introspection.py']
|
||||
- install_data(unit, install_dir: installed_test_bindir)
|
||||
+ if get_option('installed_tests')
|
||||
+ install_data(unit, install_dir: installed_test_bindir)
|
||||
+ endif
|
||||
|
||||
wrapper = '@0@.test'.format(unit)
|
||||
custom_target(wrapper,
|
@ -87,7 +87,8 @@ source=("git+https://git.savannah.gnu.org/git/grub.git#tag=${_tag}?signed"
|
||||
'0001-00_header-add-GRUB_COLOR_-variables.patch'
|
||||
'0002-10_linux-detect-archlinux-initramfs.patch'
|
||||
'grub.default'
|
||||
'sbat.csv')
|
||||
'sbat.csv'
|
||||
'default.cfg')
|
||||
sha256sums=('SKIP'
|
||||
'SKIP'
|
||||
'391d194f6307fcd0915daafd360509a734e26f3e4013e63d47deb2530d59e66e'
|
||||
@ -316,6 +317,8 @@ _package_grub-efi() {
|
||||
rm -f "${pkgdir}/usr/lib/grub/${_EFI_ARCH}-efi"/{kernel.exec,gdb_grub,gmodule.pl} || true
|
||||
|
||||
sed -e "s/%PKGVER%/${pkgver}/" < "${srcdir}/sbat.csv" > "${pkgdir}/usr/share/grub/sbat.csv"
|
||||
|
||||
install -m644 "${srcdir}/default.cfg" "${pkgdir}/usr/share/grub/default.cfg"
|
||||
}
|
||||
|
||||
_package_grub-emu() {
|
||||
|
3
grub/default.cfg
Normal file
3
grub/default.cfg
Normal file
@ -0,0 +1,3 @@
|
||||
search -f /grub/grub.cfg -s root
|
||||
set prefix=($root)
|
||||
configfile ($root)/grub/grub.cfg
|
@ -13,9 +13,7 @@ mongo-c-driver
|
||||
qt5-base
|
||||
qt5-webengine
|
||||
qt5-webkit
|
||||
qt5-location
|
||||
xerces-c
|
||||
gdal
|
||||
m17n-lib
|
||||
libe-book
|
||||
vte3
|
||||
|
90
itstool/0001-Fix-the-crash-from-912099.patch
Normal file
90
itstool/0001-Fix-the-crash-from-912099.patch
Normal file
@ -0,0 +1,90 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Tanguy Ortolo <tanguy+debian@ortolo.eu>
|
||||
Date: Fri, 7 Dec 2018 00:00:00 +0000
|
||||
Subject: [PATCH] Fix the crash from #912099
|
||||
|
||||
ITS Tool 2.0.4 crashes when building some documentation, as reported in #912099.
|
||||
This comes from translations with invalid XML markup, which ITS Tool fails to
|
||||
merge (which is not abnormal), and to report these issues, needlessly encodes
|
||||
the original msgstr from unicode to bytes, causing it to be recoded using the
|
||||
default ascii codec, which fails when the msgstr contains anything out of ascii.
|
||||
|
||||
This patch removes the useless decoding, avoiding the failing subsequent
|
||||
recoding. It also explicitly encodes the output strings to be able to print them
|
||||
in all cases, even when the output encoding cannot be detected.
|
||||
|
||||
Bug: https://github.com/itstool/itstool/issues/25
|
||||
Bug-Debian: https://bugs.debian.org/912099
|
||||
Forwarded: https://github.com/itstool/itstool/issues/25
|
||||
---
|
||||
itstool.in | 21 +++++++++++++++++----
|
||||
1 file changed, 17 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/itstool.in b/itstool.in
|
||||
index c21ad4bfeb86..f34673581c88 100755
|
||||
--- a/itstool.in
|
||||
+++ b/itstool.in
|
||||
@@ -44,9 +44,22 @@ if PY3:
|
||||
else:
|
||||
return str(s)
|
||||
ustr_type = str
|
||||
+ def pr_str(s):
|
||||
+ """Return a string that can be safely print()ed"""
|
||||
+ # Since print works on both bytes and unicode, just return the argument
|
||||
+ return s
|
||||
else:
|
||||
string_types = basestring,
|
||||
ustr = ustr_type = unicode
|
||||
+ def pr_str(s):
|
||||
+ """Return a string that can be safely print()ed"""
|
||||
+ if isinstance(s, str):
|
||||
+ # Since print works on str, just return the argument
|
||||
+ return s
|
||||
+ else:
|
||||
+ # print may not work on unicode if the output encoding cannot be
|
||||
+ # detected, so just encode with UTF-8
|
||||
+ return unicode.encode(s, 'utf-8')
|
||||
|
||||
NS_ITS = 'http://www.w3.org/2005/11/its'
|
||||
NS_ITST = 'http://itstool.org/extensions/'
|
||||
@@ -1077,36 +1090,36 @@ class Document (object):
|
||||
if strict:
|
||||
raise
|
||||
else:
|
||||
- sys.stderr.write('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
|
||||
+ sys.stderr.write(pr_str('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
|
||||
(lang + ' ') if lang is not None else '',
|
||||
- msgstr.encode('utf-8')))
|
||||
+ msgstr)))
|
||||
self._xml_err = ''
|
||||
return node
|
||||
def scan_node(node):
|
||||
children = [child for child in xml_child_iter(node)]
|
||||
for child in children:
|
||||
if child.type != 'element':
|
||||
continue
|
||||
if child.ns() is not None and child.ns().content == NS_BLANK:
|
||||
ph_node = msg.get_placeholder(child.name).node
|
||||
if self.has_child_elements(ph_node):
|
||||
self.merge_translations(translations, None, ph_node, strict=strict)
|
||||
newnode = ph_node.copyNode(1)
|
||||
newnode.setTreeDoc(self._doc)
|
||||
child.replaceNode(newnode)
|
||||
else:
|
||||
repl = self.get_translated(ph_node, translations, strict=strict, lang=lang)
|
||||
child.replaceNode(repl)
|
||||
scan_node(child)
|
||||
try:
|
||||
scan_node(trnode)
|
||||
except:
|
||||
if strict:
|
||||
raise
|
||||
else:
|
||||
- sys.stderr.write('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
|
||||
+ sys.stderr.write(pr_str('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
|
||||
(lang + ' ') if lang is not None else '',
|
||||
- msgstr.encode('utf-8')))
|
||||
+ msgstr)))
|
||||
self._xml_err = ''
|
||||
ctxt.doc().freeDoc()
|
||||
return node
|
@ -13,7 +13,7 @@ _securityver=3
|
||||
_updatever=3
|
||||
pkgver=${_majorver}.${_minorver}.${_securityver}.u${_updatever}
|
||||
#pkgver=${_majorver}.u${_updatever}
|
||||
pkgrel=1
|
||||
pkgrel=1.1
|
||||
pkgver=${_majorver}.${_minorver}.${_securityver}.u${_updatever}
|
||||
_git_tag=jdk-${_majorver}.${_minorver}.${_securityver}+${_updatever}
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
|
@ -1,4 +1,4 @@
|
||||
THIS_JDK='java-16-openjdk'
|
||||
THIS_JDK='java-18-openjdk'
|
||||
|
||||
fix_default() {
|
||||
if [ ! -x /usr/bin/java ]; then
|
||||
|
@ -1,4 +1,4 @@
|
||||
THIS_JRE='java-16-openjdk'
|
||||
THIS_JRE='java-18-openjdk'
|
||||
|
||||
fix_default() {
|
||||
if [ ! -x /usr/bin/java ]; then
|
||||
|
@ -1,4 +1,4 @@
|
||||
THIS_JRE='java-16-openjdk'
|
||||
THIS_JRE='java-18-openjdk'
|
||||
|
||||
fix_default() {
|
||||
if [ ! -x /usr/bin/java ]; then
|
||||
|
@ -4,10 +4,10 @@
|
||||
# Contributor: Andrea Scarpino <andrea@archlinux.org>
|
||||
|
||||
pkgname=ark
|
||||
pkgver=21.12.1
|
||||
pkgver=21.12.3
|
||||
pkgrel=1
|
||||
pkgdesc='Archiving Tool'
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url='https://apps.kde.org/ark/'
|
||||
license=(GPL)
|
||||
depends=(kparts kpty libarchive libzip kitemmodels hicolor-icon-theme)
|
||||
@ -16,11 +16,12 @@ optdepends=('p7zip: 7Z format support' 'unrar: RAR decompression support' 'unarc
|
||||
'lzop: LZO format support' 'lrzip: LRZ format support')
|
||||
groups=(kde-applications kde-utilities)
|
||||
source=(https://download.kde.org/stable/release-service/$pkgver/src/$pkgname-$pkgver.tar.xz{,.sig})
|
||||
sha256sums=('a07654af5a3d7714a485027765ea29a94f62b3aef670cb78532a1561afb978d6'
|
||||
sha256sums=('4817458000a8f0c241cc59aed1c52ae4338c9d3c5f4f65a57080abb1ec5b60dc'
|
||||
'SKIP')
|
||||
validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7 # Albert Astals Cid <aacid@kde.org>
|
||||
F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87 # Christoph Feck <cfeck@kde.org>
|
||||
D81C0CB38EB725EF6691C385BB463350D6EF31EF) # Heiko Becker <heiko.becker@kde.org>
|
||||
options=(debug)
|
||||
|
||||
build() {
|
||||
cmake -B build -S $pkgname-$pkgver \
|
||||
|
@ -4,21 +4,22 @@
|
||||
# Contributor: Andrea Scarpino <andrea@archlinux.org>
|
||||
|
||||
pkgname=dragon
|
||||
pkgver=21.12.1
|
||||
pkgver=21.12.3
|
||||
pkgrel=1
|
||||
pkgdesc='A multimedia player where the focus is on simplicity, instead of features'
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url='https://apps.kde.org/dragonplayer/'
|
||||
license=(GPL)
|
||||
depends=(hicolor-icon-theme kparts phonon-qt5)
|
||||
makedepends=(extra-cmake-modules kdoctools)
|
||||
groups=(kde-applications kde-multimedia)
|
||||
source=(https://download.kde.org/stable/release-service/$pkgver/src/$pkgname-$pkgver.tar.xz{,.sig})
|
||||
sha256sums=('3f94ceaf4560b1d5fdf58c2a10daf6a4d94924470f08fd2df1387f65ea0d3f13'
|
||||
sha256sums=('e1bae79adf88ae980a41ff475260c4d6e9f0b04b1f88df44d2bd4ab217e53c26'
|
||||
'SKIP')
|
||||
validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7 # Albert Astals Cid <aacid@kde.org>
|
||||
F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87 # Christoph Feck <cfeck@kde.org>
|
||||
D81C0CB38EB725EF6691C385BB463350D6EF31EF) # Heiko Becker <heiko.becker@kde.org>
|
||||
options=(debug)
|
||||
|
||||
build() {
|
||||
cmake -B build -S $pkgname-$pkgver \
|
||||
|
10
kde/kde.list
10
kde/kde.list
@ -10,20 +10,21 @@ ksmtp
|
||||
akonadi
|
||||
kmime
|
||||
akonadi-mime
|
||||
grantleetheme
|
||||
kpimtextedit
|
||||
libkleo
|
||||
akonadi-contacts
|
||||
libkgapi
|
||||
kmailtransport
|
||||
kpimtextedit
|
||||
kidentitymanagement
|
||||
kcalutils
|
||||
akonadi-calendar
|
||||
libkleo
|
||||
akonadi-search
|
||||
kldap
|
||||
libkdepim
|
||||
kimap
|
||||
grantleetheme
|
||||
pimcommon
|
||||
akonadi-notes
|
||||
calendarsupport
|
||||
akonadi-calendar-tools
|
||||
mailimporter
|
||||
@ -32,7 +33,6 @@ kmbox
|
||||
messagelib
|
||||
mailcommon
|
||||
akonadi-import-wizard
|
||||
akonadi-notes
|
||||
analitza
|
||||
artikulate
|
||||
cantor
|
||||
@ -154,6 +154,8 @@ kdevelop
|
||||
umbrello
|
||||
yakuake
|
||||
zeroconf-ioslave
|
||||
telepathy-glib
|
||||
telepathy-farstream
|
||||
telepathy-kde-accounts-kcm
|
||||
telepathy-kde-approver
|
||||
telepathy-kde-common-internals
|
||||
|
@ -4,21 +4,22 @@
|
||||
# Contributor: Andrea Scarpino <andrea@archlinux.org>
|
||||
|
||||
pkgname=kgpg
|
||||
pkgver=21.12.1
|
||||
pkgver=21.12.3
|
||||
pkgrel=1
|
||||
pkgdesc='A GnuPG frontend'
|
||||
url='https://apps.kde.org/kgpg/'
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
license=(GPL LGPL FDL)
|
||||
depends=(akonadi-contacts)
|
||||
makedepends=(extra-cmake-modules kdoctools boost)
|
||||
groups=(kde-applications kde-utilities)
|
||||
source=(https://download.kde.org/stable/release-service/$pkgver/src/$pkgname-$pkgver.tar.xz{,.sig})
|
||||
sha256sums=('1178d8637f1bfa9228b99164d2c515bae3e9cb04d2806d583fa33b52dd0dad63'
|
||||
sha256sums=('632bcf685fc9604ecc09933d0257533fd208177abba75bc14c853cdec91bf8d7'
|
||||
'SKIP')
|
||||
validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7 # Albert Astals Cid <aacid@kde.org>
|
||||
F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87 # Christoph Feck <cfeck@kde.org>
|
||||
D81C0CB38EB725EF6691C385BB463350D6EF31EF) # Heiko Becker <heiko.becker@kde.org>
|
||||
options=(debug)
|
||||
|
||||
build() {
|
||||
cmake -B build -S $pkgname-$pkgver \
|
||||
|
@ -1,18 +1,20 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Jan de Groot <jgc@archlinux.org>
|
||||
# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
|
||||
# Contributor: Jan de Groot <jgc@archlinux.org>
|
||||
|
||||
pkgname=libcanberra
|
||||
pkgver=0.30+2+gc0620e4
|
||||
pkgrel=5
|
||||
pkgver=0.30+r2+gc0620e4
|
||||
pkgrel=1
|
||||
epoch=1
|
||||
pkgdesc="A small and lightweight implementation of the XDG Sound Theme Specification"
|
||||
url="http://0pointer.de/lennart/projects/libcanberra"
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
license=(LGPL)
|
||||
depends=(libvorbis libltdl alsa-lib libpulse tdb sound-theme-freedesktop)
|
||||
makedepends=(gtk-doc gtk2 gtk3 git)
|
||||
provides=("libcanberra-pulse=$pkgver-$pkgrel" libcanberra{,-gtk,-gtk3}.so)
|
||||
provides=(libcanberra-pulse libcanberra{,-gtk,-gtk3}.so)
|
||||
replaces=("libcanberra-pulse<0.30+2+gc0620e4-4")
|
||||
options=(libtool)
|
||||
options=(libtool debug)
|
||||
_commit=c0620e432650e81062c1967cc669829dbd29b310 # master
|
||||
source=("git+http://git.0pointer.net/clone/libcanberra.git#commit=$_commit"
|
||||
40-libcanberra-gtk-module.sh
|
||||
@ -23,7 +25,7 @@ sha256sums=('SKIP'
|
||||
|
||||
pkgver() {
|
||||
cd libcanberra
|
||||
git describe --tags | sed 's/^v//;s/-/+/g'
|
||||
git describe --tags | sed 's/^v//;s/[^-]*-g/r&/;s/-/+/g'
|
||||
}
|
||||
|
||||
prepare() {
|
||||
@ -31,7 +33,7 @@ prepare() {
|
||||
|
||||
# https://bugs.archlinux.org/task/71341
|
||||
# https://bugs.freedesktop.org/show_bug.cgi?id=51662
|
||||
patch -Np1 -i ../libcanberra-multi-backend.patch
|
||||
git apply -3 ../libcanberra-multi-backend.patch
|
||||
|
||||
./autogen.sh
|
||||
}
|
||||
|
@ -1,56 +0,0 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
|
||||
# Contributor: Piotr Balcerowski <piotr@balcerowski.org>
|
||||
|
||||
pkgname=libcurl-compat
|
||||
pkgver=7.78.0
|
||||
pkgrel=1
|
||||
pkgdesc='An URL retrieval library (without versioned symbols)'
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
url='https://curl.haxx.se'
|
||||
license=('MIT')
|
||||
depends=('curl' 'glibc' 'libidn2' 'libidn2.so' 'krb5' 'openssl' 'libnghttp2'
|
||||
'libpsl' 'libpsl.so' 'libssh' 'libssh2.so' 'zlib' 'zstd')
|
||||
options=('strip')
|
||||
source=("https://curl.haxx.se/download/curl-${pkgver}.tar.gz"{,.asc})
|
||||
sha512sums=('3d74343e06dd3d699f4c883758775554956f7f27de470b71f4af0d7f56ff5e4d7c534ab958c8926fae69cd0ded90c173ac3d5a6ad5518d88c2f39f31f8bba2f3'
|
||||
'SKIP')
|
||||
validpgpkeys=('27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2') # Daniel Stenberg
|
||||
|
||||
build() {
|
||||
cd curl-${pkgver}
|
||||
|
||||
./configure \
|
||||
--prefix='/usr' \
|
||||
--disable-ldap \
|
||||
--disable-ldaps \
|
||||
--disable-manual \
|
||||
--disable-versioned-symbols \
|
||||
--enable-ipv6 \
|
||||
--enable-threaded-resolver \
|
||||
--with-gssapi \
|
||||
--with-libssh2 \
|
||||
--with-openssl \
|
||||
--with-random='/dev/urandom' \
|
||||
--with-ca-bundle='/etc/ssl/certs/ca-certificates.crt'
|
||||
|
||||
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
|
||||
make -C lib
|
||||
}
|
||||
|
||||
package() {
|
||||
cd curl-${pkgver}
|
||||
|
||||
make -C lib DESTDIR="${pkgdir}" install
|
||||
|
||||
mv "${pkgdir}"/usr/lib/libcurl{,-compat}.so.4.7.0
|
||||
rm "${pkgdir}"/usr/lib/libcurl.{a,so}*
|
||||
for version in 3 4.0.0 4.1.0 4.2.0 4.3.0 4.4.0 4.5.0 4.6.0; do
|
||||
ln -s libcurl-compat.so.4.7.0 "${pkgdir}"/usr/lib/libcurl.so.${version}
|
||||
done
|
||||
|
||||
install -dm 755 "${pkgdir}"/usr/share/licenses
|
||||
ln -s curl "${pkgdir}"/usr/share/licenses/libcurl-compat
|
||||
}
|
||||
|
||||
# vim: ts=2 sw=2 et:
|
@ -4,9 +4,9 @@
|
||||
|
||||
pkgname=libe-book
|
||||
pkgver=0.1.3
|
||||
pkgrel=10
|
||||
pkgrel=11
|
||||
pkgdesc="Library for import of reflowable e-book formats."
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="https://sourceforge.net/projects/libebook/"
|
||||
license=('LGPL2.1' 'MPL')
|
||||
depends=('librevenge' 'libxml2' 'liblangtag')
|
||||
|
24
libebml/libebml-limits.patch
Normal file
24
libebml/libebml-limits.patch
Normal file
@ -0,0 +1,24 @@
|
||||
diff --git a/src/EbmlString.cpp b/src/EbmlString.cpp
|
||||
index 27e55fd..4c05fcf 100644
|
||||
--- a/src/EbmlString.cpp
|
||||
+++ b/src/EbmlString.cpp
|
||||
@@ -34,6 +34,7 @@
|
||||
\author Steve Lhomme <robux4 @ users.sf.net>
|
||||
*/
|
||||
#include <cassert>
|
||||
+#include <limits>
|
||||
|
||||
#include "ebml/EbmlString.h"
|
||||
|
||||
diff --git a/src/EbmlUnicodeString.cpp b/src/EbmlUnicodeString.cpp
|
||||
index 496a16a..99fc073 100644
|
||||
--- a/src/EbmlUnicodeString.cpp
|
||||
+++ b/src/EbmlUnicodeString.cpp
|
||||
@@ -36,6 +36,7 @@
|
||||
*/
|
||||
|
||||
#include <cassert>
|
||||
+#include <limits>
|
||||
|
||||
#include "ebml/EbmlUnicodeString.h"
|
||||
|
@ -5,66 +5,51 @@
|
||||
# Contributor: Jon Kristian Nilsen <jokr.nilsen@gmail.com>
|
||||
|
||||
pkgname=libffado
|
||||
pkgver=2.4.4
|
||||
pkgrel=4
|
||||
pkgver=2.4.5
|
||||
pkgrel=1
|
||||
pkgdesc="Driver for FireWire audio devices"
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="http://www.ffado.org/"
|
||||
license=('GPL3')
|
||||
depends=('gcc-libs' 'glibc' 'glibmm' 'hicolor-icon-theme' 'libavc1394'
|
||||
'libiec61883' 'libxml++' 'python-dbus')
|
||||
makedepends=('alsa-lib' 'dbus-c++' 'jack' 'libconfig' 'scons')
|
||||
makedepends_powerpc=('python-pyqt5')
|
||||
makedepends_powerpc64le=('python-pyqt5')
|
||||
makedepends_x86_64=('python-pyqt5')
|
||||
optdepends_powerpc=('python-pyqt5: ffado-mixer')
|
||||
optdepends_powerpc64le=('python-pyqt5: ffado-mixer')
|
||||
optdepends_x86_64=('python-pyqt5: ffado-mixer')
|
||||
provides=('libffado.so')
|
||||
source=("http://www.ffado.org/files/${pkgname}-${pkgver}.tgz")
|
||||
sha512sums=('065b7f9ce9bf58320c02353b63ed17b3610d0ee8a2de58de27159b2190e39c779094b01ae1123c087387e6077375e646b564b9e7717b192865b2f1f22a3acc80')
|
||||
b2sums=('70d3b17f7d7317acc63351faaefb27fa850664015134887f0508b4a76aabbf6e9573f87eb2dd9792ac5f4f4b06ac7c872afa33af6af0341e6cceeb43e7a79526')
|
||||
license=(GPL3)
|
||||
depends=(gcc-libs glibc glibmm hicolor-icon-theme libavc1394
|
||||
libiec61883 libxml++ python-dbus)
|
||||
makedepends=(alsa-lib dbus-c++ jack libconfig python-pyqt5 scons)
|
||||
optdepends=('python-pyqt5: ffado-mixer')
|
||||
provides=(libffado.so)
|
||||
options=(debug)
|
||||
source=(http://www.ffado.org/files/$pkgname-$pkgver.tgz)
|
||||
sha512sums=('a2c1d0515e14015b7803c4d52d67605afec27ae2569888dec085375ed4a488f4885b5033369e52305e668a35289d3bd749a9babb5778df339fa93553c23af30f')
|
||||
b2sums=('18c260b782c9a97e3f2c8689a218f7a4925158c3e3cb14987182bf04043438d1325a9ababfe29860f6769a5eeabb49a843a8d15072b24b914334c447b5c7238d')
|
||||
|
||||
prepare() {
|
||||
cd "${pkgname}-${pkgver}"
|
||||
cd $pkgname-$pkgver
|
||||
# fix icon name, so it's coherent with XDG desktop file name
|
||||
sed -e 's/hi64-apps-ffado/ffado-mixer/g' \
|
||||
-i support/xdg/ffado.org-ffadomixer.desktop
|
||||
sed -e 's/hi64-apps-ffado/ffado-mixer/g' -i support/xdg/ffado.org-ffadomixer.desktop
|
||||
# fix id, so it's coherent with XDG desktop file name
|
||||
sed -e 's/ffado.org-ffadomixer.desktop/ffado-mixer.desktop/g' \
|
||||
-i support/xdg/ffado-mixer.appdata.xml
|
||||
sed -e 's/ffado.org-ffadomixer.desktop/ffado-mixer.desktop/g' -i support/xdg/ffado-mixer.appdata.xml
|
||||
}
|
||||
|
||||
build() {
|
||||
local python_version=$(python -c 'import sys; print(".".join(map(str, sys.version_info[:2])))')
|
||||
cd "${pkgname}-${pkgver}"
|
||||
|
||||
case "${CARCH}" in
|
||||
powerpc64le) SCONS_FLAGS="DETECT_USERSPACE_ENV=false" ;;
|
||||
esac
|
||||
|
||||
cd $pkgname-$pkgver
|
||||
scons PREFIX=/usr \
|
||||
DEBUG=no \
|
||||
CUSTOM_ENV=True \
|
||||
MANDIR='/usr/share/man' \
|
||||
PYTHON_INTERPRETER='/usr/bin/python3' \
|
||||
PYPKGDIR="/usr/lib/python${python_version}/site-packages" \
|
||||
UDEVDIR='/usr/lib/udev/rules.d' ${SCONS_FLAGS}
|
||||
MANDIR=/usr/share/man \
|
||||
PYTHON_INTERPRETER=/usr/bin/python3 \
|
||||
PYPKGDIR=/usr/lib/python$python_version/site-packages \
|
||||
UDEVDIR=/usr/lib/udev/rules.d
|
||||
}
|
||||
|
||||
package() {
|
||||
depends+=('libasound.so' 'libconfig++.so' 'libdbus-c++-1.so' )
|
||||
cd "${pkgname}-${pkgver}"
|
||||
scons DESTDIR="${pkgdir}" WILL_DEAL_WITH_XDG_MYSELF="True" install
|
||||
depends+=(libasound.so libconfig++.so libdbus-c++-1.so)
|
||||
|
||||
# XDG
|
||||
install -vDm 644 support/xdg/ffado.org-ffadomixer.desktop \
|
||||
"${pkgdir}/usr/share/applications/ffado-mixer.desktop"
|
||||
install -vDm 644 support/xdg/hi64-apps-ffado.png \
|
||||
"${pkgdir}/usr/share/icons/hicolor/64x64/apps/ffado-mixer.png"
|
||||
|
||||
# docs
|
||||
install -t "${pkgdir}/usr/share/doc/${pkgname}" -vDm 644 {AUTHORS,README}
|
||||
cd $pkgname-$pkgver
|
||||
scons DESTDIR="$pkgdir" WILL_DEAL_WITH_XDG_MYSELF=True install
|
||||
install -vDm 644 support/xdg/ffado.org-ffadomixer.desktop "$pkgdir/usr/share/applications/ffado-mixer.desktop"
|
||||
install -vDm 644 support/xdg/hi64-apps-ffado.png "$pkgdir/usr/share/icons/hicolor/64x64/apps/ffado-mixer.png"
|
||||
install -vDm 644 {AUTHORS,README} -t "$pkgdir/usr/share/doc/$pkgname/"
|
||||
}
|
||||
|
||||
# vim:set ts=2 sw=2 et:
|
||||
|
83
libphonenumber/absl.diff
Normal file
83
libphonenumber/absl.diff
Normal file
@ -0,0 +1,83 @@
|
||||
diff --git i/cpp/CMakeLists.txt w/cpp/CMakeLists.txt
|
||||
index 588b97177..e3231825f 100644
|
||||
--- i/cpp/CMakeLists.txt
|
||||
+++ w/cpp/CMakeLists.txt
|
||||
@@ -18,7 +18,7 @@ cmake_minimum_required (VERSION 3.11)
|
||||
|
||||
# Pick the C++ standard to compile with.
|
||||
# Abseil currently supports C++11, C++14, and C++17.
|
||||
-set(CMAKE_CXX_STANDARD 11)
|
||||
+set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
project (libphonenumber)
|
||||
@@ -126,6 +126,8 @@ if (${USE_BOOST} STREQUAL "OFF" AND ${USE_STDMUTEX} STREQUAL "OFF")
|
||||
find_package (Threads)
|
||||
endif()
|
||||
|
||||
+find_package (absl REQUIRED)
|
||||
+
|
||||
find_or_build_gtest ()
|
||||
|
||||
if (${USE_RE2} STREQUAL "ON")
|
||||
@@ -477,7 +479,7 @@ endif ()
|
||||
# Safeguarding against any potential link errors as mentioned in
|
||||
# https://github.com/abseil/abseil-cpp/issues/225
|
||||
set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
|
||||
-list (APPEND LIBRARY_DEPS absl::strings)
|
||||
+list (APPEND LIBRARY_DEPS absl::strings absl::node_hash_set)
|
||||
list (APPEND COMMON_DEPS absl::synchronization)
|
||||
|
||||
if (APPLE)
|
||||
@@ -570,7 +572,7 @@ if (NOT WIN32)
|
||||
list (APPEND TEST_LIBS pthread)
|
||||
endif ()
|
||||
|
||||
-target_link_libraries (libphonenumber_test ${TEST_LIBS} absl::node_hash_set)
|
||||
+target_link_libraries (libphonenumber_test ${TEST_LIBS})
|
||||
|
||||
# Unfortunately add_custom_target() can't accept a single command provided as a
|
||||
# list of commands.
|
||||
@@ -677,7 +679,7 @@ if (${BUILD_GEOCODER} STREQUAL "ON")
|
||||
geocoding_test_program
|
||||
"test/phonenumbers/geocoding/geocoding_test_program.cc"
|
||||
)
|
||||
- target_link_libraries (geocoding_test_program geocoding phonenumber absl::node_hash_set)
|
||||
+ target_link_libraries (geocoding_test_program geocoding phonenumber)
|
||||
endif ()
|
||||
|
||||
# Build an RPM
|
||||
diff --git i/tools/cpp/CMakeLists.txt w/tools/cpp/CMakeLists.txt
|
||||
index b09416569..58a9b3ba0 100644
|
||||
--- i/tools/cpp/CMakeLists.txt
|
||||
+++ w/tools/cpp/CMakeLists.txt
|
||||
@@ -26,29 +26,6 @@ project (generate_geocoding_data)
|
||||
# Helper functions dealing with finding libraries and programs this library
|
||||
# depends on.
|
||||
include (gtest.cmake)
|
||||
-include (FetchContent)
|
||||
-
|
||||
-# Downloading the abseil sources.
|
||||
-FetchContent_Declare(
|
||||
- abseil-cpp
|
||||
- GIT_REPOSITORY https://github.com/abseil/abseil-cpp.git
|
||||
- GIT_TAG origin/master
|
||||
-)
|
||||
-
|
||||
-# Building the abseil binaries
|
||||
-FetchContent_GetProperties(abseil-cpp)
|
||||
-if (NOT abseil-cpp_POPULATED)
|
||||
- FetchContent_Populate(abseil-cpp)
|
||||
-endif ()
|
||||
-
|
||||
-if (NOT abseil-cpp_POPULATED)
|
||||
- message (FATAL_ERROR "Could not build abseil-cpp binaries.")
|
||||
-endif ()
|
||||
-
|
||||
-# Safeguarding against any potential link errors as mentioned in
|
||||
-# https://github.com/abseil/abseil-cpp/issues/225
|
||||
-set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
|
||||
-add_subdirectory(${abseil-cpp_SOURCE_DIR} ${abseil-cpp_BINARY_DIR})
|
||||
|
||||
find_or_build_gtest ()
|
||||
set (
|
@ -11,10 +11,10 @@ _google_default_client_secret=0ZChLK6AxeA3Isu96MkwqDR4
|
||||
|
||||
pkgbase=libreoffice-fresh
|
||||
pkgname=('libreoffice-fresh-sdk' 'libreoffice-fresh')
|
||||
_LOver=7.2.5.2
|
||||
pkgver=7.2.5
|
||||
pkgrel=4
|
||||
arch=(x86_64 powerpc64le)
|
||||
_LOver=7.3.2.2
|
||||
pkgver=7.3.2
|
||||
pkgrel=2
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
license=('LGPL3')
|
||||
url="https://www.libreoffice.org/"
|
||||
makedepends=('curl>=7.20.0' 'hunspell>=1.2.8' 'python>=3.7' 'libwpd>=0.9.2' 'libwps'
|
||||
@ -33,6 +33,7 @@ makedepends=('curl>=7.20.0' 'hunspell>=1.2.8' 'python>=3.7' 'libwpd>=0.9.2' 'lib
|
||||
'libexttextcat' 'gobject-introspection' # 'libfbclient'
|
||||
'libtommath' 'libzmf' 'gpgme' 'xmlsec' 'rxvt-unicode'
|
||||
'libepubgen' 'libfreehand' 'libqxp' 'libstaroffice' 'boost' 'libnumbertext'
|
||||
'libcuckoo' 'abseil-cpp' 'zxing-cpp' 'clang'
|
||||
'libffi' 'box2d' 'git'
|
||||
)
|
||||
options=('!lto') # using --enable-lto (for parallel link-time optimization)
|
||||
@ -49,17 +50,17 @@ source=(${_mirror}/libreoffice{,-help,-translations}-${_LOver}.tar.xz{,.asc}
|
||||
${_additional_source_url}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip
|
||||
${_additional_source_url}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip
|
||||
${_additional_source_url}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip
|
||||
${_additional_source_url}/pdfium-4500.tar.bz2
|
||||
${_additional_source_url}/pdfium-4699.tar.bz2
|
||||
${_additional_source_url}/dtoa-20180411.tgz
|
||||
${_additional_source_url}/lxml-4.1.1.tgz
|
||||
${_additional_source_url}/Firebird-3.0.7.33374-0.tar.bz2
|
||||
${_additional_source_url}/zxing-cpp-1.1.1.tar.gz
|
||||
${_additional_source_url}/skia-m90-45c57e116ee0ce214bdf78405a4762722e4507d9.tar.xz
|
||||
${_additional_source_url}/skia-m97-a7230803d64ae9d44f4e1282444801119a3ae967.tar.xz
|
||||
${_additional_source_url}/libcmis-0.5.2.tar.xz
|
||||
${_additional_source_url2}/8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar # for test suite
|
||||
${_additional_source_url2}/odfvalidator-1.2.0-incubating-SNAPSHOT-jar-with-dependencies-971c54fd38a968f5860014b44301872706f9e540.jar # for test suite
|
||||
${_additional_source_url2}/f543e6e2d7275557a839a164941c0a86e5f2c3f2a0042bfc434c88c6dde9e140-opens___.ttf
|
||||
${_additional_source_url2}/185d60944ea767075d27247c3162b3bc-unowinreg.dll
|
||||
poppler-22.03.0.patch
|
||||
make-pyuno-work-with-system-wide-module-install.diff
|
||||
soffice-template.desktop.in
|
||||
libreoffice-fresh.sh libreoffice-fresh.csh)
|
||||
@ -71,12 +72,11 @@ noextract=(35c94d2df8893241173de1d16b6034c0-swingExSrc.zip
|
||||
17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip
|
||||
d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip
|
||||
ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip
|
||||
pdfium-4500.tar.bz2
|
||||
pdfium-4699.tar.bz2
|
||||
dtoa-20180411.tgz
|
||||
lxml-4.1.1.tgz
|
||||
Firebird-3.0.7.33374-0.tar.bz2
|
||||
zxing-cpp-1.1.1.tar.gz
|
||||
skia-m90-45c57e116ee0ce214bdf78405a4762722e4507d9.tar.xz
|
||||
skia-m97-a7230803d64ae9d44f4e1282444801119a3ae967.tar.xz
|
||||
libcmis-0.5.2.tar.xz
|
||||
8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar # for test suite
|
||||
odfvalidator-1.2.0-incubating-SNAPSHOT-jar-with-dependencies-971c54fd38a968f5860014b44301872706f9e540.jar # for test suite
|
||||
@ -84,11 +84,11 @@ noextract=(35c94d2df8893241173de1d16b6034c0-swingExSrc.zip
|
||||
185d60944ea767075d27247c3162b3bc-unowinreg.dll
|
||||
)
|
||||
validpgpkeys=('C2839ECAD9408FBE9531C3E9F434A1EFAFEEAEA3') # LibreOffice Build Team (CODE SIGNING KEY) <build@documentfoundation.org>
|
||||
sha256sums=('67c1bfb059d433286b0252a915627b33af63bb5f4b6ec9509d13b9dd475512a7'
|
||||
sha256sums=('be96b0c9c7af7e24564729281ca6cef4eadfb06c9b30131a6fc94fa3e43b46a8'
|
||||
'SKIP'
|
||||
'eaf1112d68747e441c491902dfb7f0d8706ac55b5bafd90f1213b25978ccadf3'
|
||||
'addb19304e3330f49614eb979541cf1bdf93b481dcce22fdee20fbb193066aec'
|
||||
'SKIP'
|
||||
'f6b9ee4627ec117ed101476c5fa555c3fc504ba759792dd16ca9e80b7f6e31df'
|
||||
'c2588507b425bc7047b6325fcde8a2fcc9a927cee5b76065f42ddb68bad0fd71'
|
||||
'SKIP'
|
||||
'64585ac36a81291a58269ec5347e7e3e2e8596dbacb9221015c208191333c6e1'
|
||||
'1fb458d6aab06932693cc8a9b6e4e70944ee1ff052fa63606e3131df34e21753'
|
||||
@ -98,17 +98,17 @@ sha256sums=('67c1bfb059d433286b0252a915627b33af63bb5f4b6ec9509d13b9dd475512a7'
|
||||
'd30b13f4ba2e3b6a2d4f020c0dee0a9fb9fc6fbcc2d561f36b78da4bf3802370'
|
||||
'1b5b24f7bc543c0362b667692f78db8bab4ed6dafc6172f104d0bd3757d8a133'
|
||||
'233f66e8d25c5dd971716d4200203a612a407649686ef3b52075d04b4c9df0dd'
|
||||
'26a03dd60e5ed0979cdaba9cc848242895110ddfdf347d40989ce2f14020f304'
|
||||
'ee80fe0a3b20ef5c5babc494cd655d1b1a0bdec710acb04524789df500c563bf'
|
||||
'0082d0684f7db6f62361b76c4b7faba19e0c7ce5cb8e36c4b65fea8281e711b4'
|
||||
'940caef1ec7c78e0c34b0f6b94fe42d0f2022915ffc78643d28538a5cfd0f40e'
|
||||
'acb85cedafa10ce106b1823fb236b1b3e5d942a5741e8f8435cc8ccfec0afe76'
|
||||
'e595b3fa2ec320beb0b28f6af56b1141853257c2611686685639cebb3b248c86'
|
||||
'abe0b94d54edb717c58d74263f4ed3d27824d2ce9e9f2ce85a21ab38d993f94d'
|
||||
'97e859e8467eca9d2441cd23079b61c2c3863b5687620f18cc31a9f966740177'
|
||||
'd7b18d9602190e10d437f8a964a32e983afd57e2db316a07d87477a79f5000a2'
|
||||
'f2443f27561af52324eee03a1892d9f569adc8db9e7bca55614898bc2a13a770'
|
||||
'984f2a479df79e27e7b01a5815ac53ae64e07746b882262d8a64566494515504'
|
||||
'f543e6e2d7275557a839a164941c0a86e5f2c3f2a0042bfc434c88c6dde9e140'
|
||||
'eafde646a7dbe46d20c291685b0beac2382174d78d66ee990e229a1bf6e6cec6'
|
||||
'e61e2a266c7a4374377475254a2f095c1ce2376980b301955a4e5a0d32d3c25b'
|
||||
'c463654a73ecfbc242ff109726fb4faecdbfb3d91affafe919b24bea65afb563'
|
||||
'd0be8099cbee3c9dfda694a828149b881c345b204ab68826f317580aafb50879'
|
||||
'cd1b25ff390e436c6bffa65c6e12382236e3ccbf8d3aae51b1b59bcaed79fd8a'
|
||||
@ -130,6 +130,8 @@ prepare() {
|
||||
rm "${srcdir}"/ext_sources/185d60944ea767075d27247c3162b3bc-unowinreg.dll
|
||||
cp -f "${srcdir}"/185d60944ea767075d27247c3162b3bc-unowinreg.dll "${srcdir}"/ext_sources
|
||||
|
||||
patch -Np1 -i "${srcdir}"/poppler-22.03.0.patch
|
||||
|
||||
# fix not upstreamable pyuno paths - FS#54250
|
||||
patch -Np1 -i "${srcdir}"/make-pyuno-work-with-system-wide-module-install.diff
|
||||
|
||||
@ -152,7 +154,7 @@ build() {
|
||||
CPPFLAGS+=' -DU_USING_ICU_NAMESPACE=1'
|
||||
|
||||
./autogen.sh --with-extra-buildid="${pkgver}-${pkgrel}" \
|
||||
--with-vendor="Arch Linux" \
|
||||
--with-vendor="Arch POWER" \
|
||||
--enable-split-app-modules \
|
||||
--with-parallelism=${_MAKEFLAGS/-j/} \
|
||||
--with-external-tar="${srcdir}/ext_sources" \
|
||||
@ -197,7 +199,7 @@ build() {
|
||||
--with-system-libetonyek \
|
||||
--with-system-libfreehand \
|
||||
--without-system-firebird \
|
||||
--without-system-zxing \
|
||||
--with-system-zxing \
|
||||
--with-system-libtommath \
|
||||
--with-system-libatomic-ops \
|
||||
--with-system-libebook \
|
||||
@ -218,6 +220,7 @@ build() {
|
||||
--with-system-libzmf \
|
||||
--with-system-gpgmepp \
|
||||
--with-system-libstaroffice \
|
||||
--with-system-cuckoo \
|
||||
--with-system-serf \
|
||||
--with-jdk-home="/usr/lib/jvm/default" \
|
||||
--with-ant-home="/usr/share/ant"\
|
||||
@ -286,6 +289,7 @@ package_libreoffice-fresh() {
|
||||
'liblangtag' 'libexttextcat' 'liborcus' # 'libfbclient'
|
||||
'libtommath' 'libzmf' 'libatomic_ops' 'xmlsec' 'gpgme' 'libnumbertext'
|
||||
'libfreehand' 'libstaroffice' 'libepubgen' 'libqxp' 'libepoxy' 'box2d'
|
||||
'zxing-cpp'
|
||||
'xdg-utils')
|
||||
optdepends=('java-runtime: adds java support'
|
||||
'java-environment: required by extension-wiki-publisher and extension-nlpsolver'
|
||||
|
@ -1,70 +0,0 @@
|
||||
From 701008631ee257b4c7714ac9e2689c5ecc45bff8 Mon Sep 17 00:00:00 2001
|
||||
From: Eike Rathke <erack@redhat.com>
|
||||
Date: Tue, 13 Oct 2020 23:56:28 +0200
|
||||
Subject: Resolves: tdf#137248 Fix wrong condition breaking non-group interpret
|
||||
|
||||
Regression from
|
||||
|
||||
commit 4f36f2ccab6286ec09480caea602c0fa19195736
|
||||
CommitDate: Thu Sep 10 11:15:47 2020 +0200
|
||||
|
||||
detect if a cell still needs interpreting after Interpret()
|
||||
|
||||
The bool return from ScFormulaCell::Interpret() does not indicate
|
||||
if it was succesful but whether a group interpret was done. As
|
||||
both calls here happen in a non-group context bailing out on that
|
||||
if false (no group interpret) is wrong. Instead, ask the cell if
|
||||
it still needs to be interpreted after having been interpreted.
|
||||
|
||||
Change-Id: I40eeeef65e1da3d729cb3fef550620b1ea0a5741
|
||||
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104261
|
||||
Tested-by: Jenkins
|
||||
Reviewed-by: Eike Rathke <erack@redhat.com>
|
||||
(cherry picked from commit 59f86333f3fce091177d1cfb9363aa81686aa497)
|
||||
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104289
|
||||
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
||||
---
|
||||
sc/source/core/data/column4.cxx | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/sc/source/core/data/column4.cxx b/sc/source/core/data/column4.cxx
|
||||
index 73adaf72dd71..950b38766c44 100644
|
||||
--- a/sc/source/core/data/column4.cxx
|
||||
+++ b/sc/source/core/data/column4.cxx
|
||||
@@ -1690,14 +1690,14 @@ static bool lcl_InterpretSpan(sc::formula_block::const_iterator& rSpanIter, SCRO
|
||||
++itSpanStart;
|
||||
for (SCROW nIdx = nSpanStart+1; nIdx <= nSpanEnd; ++nIdx, ++itSpanStart)
|
||||
{
|
||||
- if( !(*itSpanStart)->Interpret()) // We know for sure that this cell is dirty so directly call Interpret().
|
||||
+ (*itSpanStart)->Interpret(); // We know for sure that this cell is dirty so directly call Interpret().
|
||||
+ if ((*itSpanStart)->NeedsInterpret())
|
||||
{
|
||||
SAL_WARN("sc.core.formulagroup", "Internal error, cell " << (*itSpanStart)->aPos
|
||||
<< " failed running Interpret(), not allowing threading");
|
||||
bAllowThreading = false;
|
||||
return bAnyDirty;
|
||||
}
|
||||
- assert(!(*itSpanStart)->NeedsInterpret());
|
||||
|
||||
// Allow early exit like above.
|
||||
if ((mxParentGroup && mxParentGroup->mbPartOfCycle) || !rRecursionHelper.AreGroupsIndependent())
|
||||
@@ -1804,14 +1804,14 @@ static void lcl_EvalDirty(sc::CellStoreType& rCells, SCROW nRow1, SCROW nRow2, S
|
||||
if( (*itCell)->NeedsInterpret())
|
||||
{
|
||||
bDirtyFlag = true;
|
||||
- if(!(*itCell)->Interpret())
|
||||
+ (*itCell)->Interpret();
|
||||
+ if ((*itCell)->NeedsInterpret())
|
||||
{
|
||||
SAL_WARN("sc.core.formulagroup", "Internal error, cell " << (*itCell)->aPos
|
||||
<< " failed running Interpret(), not allowing threading");
|
||||
bAllowThreading = false;
|
||||
return;
|
||||
}
|
||||
- assert(!(*itCell)->NeedsInterpret());
|
||||
}
|
||||
bIsDirty = bIsDirty || bDirtyFlag;
|
||||
|
||||
--
|
||||
cgit v1.2.1
|
||||
|
@ -1,79 +0,0 @@
|
||||
From f0b74640137f07ed74027f98fbf6d1c0d98939bf Mon Sep 17 00:00:00 2001
|
||||
From: Stephan Bergmann <sbergman@redhat.com>
|
||||
Date: Mon, 20 Apr 2020 11:40:24 +0200
|
||||
Subject: Add --with-latest-c++ to explicitly opt in for
|
||||
-std=c++20/-std:c++latest
|
||||
|
||||
Adaptation of this change to this branch. The point is to avoid
|
||||
compiling as C++2a as the code for externals has not been patched
|
||||
properly for that here. Here is the original commit message even if I
|
||||
assume it is a bit misleading in this branch:
|
||||
|
||||
cd472d1d8489f30797f47d3f6dafede28c1feb90 "Compile as C++2a, where available" had
|
||||
started to unconditionally check for support of -std=c++2a (and later also
|
||||
-std=c++20) for Clang and GCC, but that can cause occasional issues especially
|
||||
for Linux distros, see e.g. 55c724b93dfd4c9a1afb10d60fbc2d7a9a66cf61 "replace
|
||||
boost::bimap in sdext pdfimport" or
|
||||
<https://bugzilla.redhat.com/show_bug.cgi?id=1818723>
|
||||
"/usr/include/boost/format/alt_sstream_impl.hpp incompatible with -std=c++20
|
||||
(std::allocator::allocate hint argument)" (where
|
||||
677c8de4fa79cd9b278b142013ba7f1c9e4e41c3 "external/boost: Adapt to
|
||||
std::allocator parts removed in C++20" is not picked up due to
|
||||
--with-system-boost).
|
||||
|
||||
So better require an explicit opt-in via a new --with-latest-c++. And while at
|
||||
it, also make that enable -std:c++latest for MSVC.
|
||||
|
||||
Change-Id: I2d1f03144fad9a7884562e56b1b76cab5eb8f080
|
||||
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92555
|
||||
Tested-by: Jenkins
|
||||
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
||||
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93204
|
||||
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
|
||||
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
||||
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93692
|
||||
Tested-by: Tor Lillqvist <tml@collabora.com>
|
||||
---
|
||||
configure.ac | 18 ++++++++++++++++--
|
||||
1 file changed, 16 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 78080305f3d6..8364138bdc96 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2143,6 +2143,12 @@ libo_FUZZ_ARG_WITH(lxml,
|
||||
report widget classes and ids.]),
|
||||
,)
|
||||
|
||||
+libo_FUZZ_ARG_WITH(latest-c++,
|
||||
+ AS_HELP_STRING([--with-latest-c++],
|
||||
+ [Try to enable the latest features of the C++ compiler, even if they are not yet part of a
|
||||
+ published standard.]),,
|
||||
+ [$with_latest_c__=no])
|
||||
+
|
||||
dnl ===================================================================
|
||||
dnl Branding
|
||||
dnl ===================================================================
|
||||
@@ -6456,9 +6462,17 @@ dnl ===================================================================
|
||||
AC_MSG_CHECKING([whether $CXX_BASE supports C++17])
|
||||
CXXFLAGS_CXX11=
|
||||
if test "$COM" = MSC -a "$COM_IS_CLANG" != TRUE; then
|
||||
- CXXFLAGS_CXX11='-std:c++17 -Zc:__cplusplus'
|
||||
+ if test "$with_latest_c__" = yes; then
|
||||
+ CXXFLAGS_CXX11=-std:c++latest
|
||||
+ else
|
||||
+ CXXFLAGS_CXX11=-std:c++17
|
||||
+ fi
|
||||
+ CXXFLAGS_CXX11="$CXXFLAGS_CXX11 -Zc:__cplusplus"
|
||||
elif test "$GCC" = "yes" -o "$COM_IS_CLANG" = TRUE; then
|
||||
- my_flags='-std=c++2a -std=c++17 -std=c++1z'
|
||||
+ my_flags='-std=c++17 -std=c++1z'
|
||||
+ if test "$with_latest_c__" = yes; then
|
||||
+ my_flags="-std=gnu++2a -std=c++2a $my_flags"
|
||||
+ fi
|
||||
for flag in $my_flags; do
|
||||
if test "$COM" = MSC; then
|
||||
flag="-Xclang $flag"
|
||||
--
|
||||
cgit v1.2.1
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,11 +0,0 @@
|
||||
--- libreoffice-7.0.3.1/i18npool/source/calendar/calendar_gregorian.cxx.orig 2020-11-07 13:11:35.764453207 +0100
|
||||
+++ libreoffice-7.0.3.1/i18npool/source/calendar/calendar_gregorian.cxx 2020-11-07 13:11:56.125401559 +0100
|
||||
@@ -347,7 +347,7 @@
|
||||
"Calendar_gregorian::setLocalDateTime: " << std::fixed << fM << " rounded to " << fR);
|
||||
int32_t nZoneOffset, nDSTOffset;
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
- body->getTimeZone().getOffset( fR, TRUE, nZoneOffset, nDSTOffset, status );
|
||||
+ body->getTimeZone().getOffset( fR, true, nZoneOffset, nDSTOffset, status );
|
||||
if ( !U_SUCCESS(status) ) throw ERROR;
|
||||
status = U_ZERO_ERROR;
|
||||
body->setTime( fR - (nZoneOffset + nDSTOffset), status );
|
@ -1,15 +0,0 @@
|
||||
diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
|
||||
index e9c2a407c279..16ad04bf660a 100644
|
||||
--- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
|
||||
+++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx
|
||||
@@ -563,7 +563,9 @@ void PDFOutDev::processLink(Link* link, Catalog*)
|
||||
if (!(pAction && pAction->getKind() == actionURI))
|
||||
return;
|
||||
|
||||
-#if POPPLER_CHECK_VERSION(0, 72, 0)
|
||||
+#if POPPLER_CHECK_VERSION(0, 86, 0)
|
||||
+ const char* pURI = static_cast<LinkURI*>(pAction)->getURI().c_str();
|
||||
+#elif POPPLER_CHECK_VERSION(0, 72, 0)
|
||||
const char* pURI = static_cast<LinkURI*>(pAction)->getURI()->c_str();
|
||||
#else
|
||||
const char* pURI = static_cast<LinkURI*>(pAction)->getURI()->getCString();
|
28
libreoffice-fresh/poppler-22.03.0.patch
Normal file
28
libreoffice-fresh/poppler-22.03.0.patch
Normal file
@ -0,0 +1,28 @@
|
||||
diff --git a/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
|
||||
index ad6320139..e5f6d9c68 100644
|
||||
--- a/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
|
||||
+++ b/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
|
||||
@@ -138,6 +138,15 @@ int main(int argc, char **argv)
|
||||
_setmode( _fileno( g_binary_out ), _O_BINARY );
|
||||
#endif
|
||||
|
||||
+#if POPPLER_CHECK_VERSION(22, 3, 0)
|
||||
+ PDFDoc aDoc( std::make_unique<GooString>(pFileName),
|
||||
+ GooString(pOwnerPasswordStr),
|
||||
+ GooString(pUserPasswordStr) );
|
||||
+
|
||||
+ PDFDoc aErrDoc( std::make_unique<GooString>(pErrFileName),
|
||||
+ GooString(pOwnerPasswordStr),
|
||||
+ GooString(pUserPasswordStr) );
|
||||
+#else
|
||||
PDFDoc aDoc( pFileName,
|
||||
pOwnerPasswordStr,
|
||||
pUserPasswordStr );
|
||||
@@ -145,6 +154,7 @@ int main(int argc, char **argv)
|
||||
PDFDoc aErrDoc( pErrFileName,
|
||||
pOwnerPasswordStr,
|
||||
pUserPasswordStr );
|
||||
+#endif
|
||||
|
||||
// Check various permissions for aDoc.
|
||||
PDFDoc &rDoc = aDoc.isOk()? aDoc: aErrDoc;
|
@ -1,19 +1,22 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Sven-Hendrik Haase <svenstaro@archlinux.org>
|
||||
# Maintainer: Robin Broda <robin@broda.me>
|
||||
# Contributor: Christian Rebischke <chris.rebischke@archlinux.org>
|
||||
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
|
||||
# Contributor: Jonathan Wiersma <archaur at jonw dot org>
|
||||
|
||||
pkgname=(libvirt libvirt-storage-gluster libvirt-storage-iscsi-direct)
|
||||
[ "${CARCH}" != 'powerpc' ] && pkgname+=(libvirt-storage-rbd)
|
||||
case "${CARCH}" in
|
||||
powerpc64le|x86_64) pkgname+=(libvirt-storage-rbd) ;;
|
||||
esac
|
||||
epoch=1
|
||||
pkgver=8.1.0
|
||||
pkgrel=1.1
|
||||
pkgver=8.2.0
|
||||
pkgrel=4
|
||||
pkgdesc="API for controlling virtualization engines (openvz,kvm,qemu,virtualbox,xen,etc)"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="https://libvirt.org/"
|
||||
license=('LGPL' 'GPL3') #libvirt_parthelper links to libparted which is GPL3 only
|
||||
depends=('libpciaccess' 'yajl' 'fuse2' 'gnutls' 'parted' 'libssh' 'libxml2' 'numactl' 'polkit')
|
||||
depends=('libpciaccess' 'yajl' 'fuse3' 'gnutls' 'parted' 'libssh' 'libxml2' 'numactl' 'polkit')
|
||||
makedepends=('meson' 'libxslt' 'python-docutils' 'lvm2' 'open-iscsi' 'libiscsi' 'glusterfs'
|
||||
'bash-completion' 'rpcsvc-proto' 'dnsmasq' 'iproute2' 'qemu-headless')
|
||||
makedepends_powerpc64le=('ceph-libs')
|
||||
@ -28,25 +31,12 @@ optdepends=('libvirt-storage-gluster: Gluster storage backend'
|
||||
'ebtables: required for default NAT networking'
|
||||
'qemu: QEMU/KVM support'
|
||||
'lvm2: Logical Volume Manager support'
|
||||
'open-iscsi: iSCSI support via iscsiadm')
|
||||
'open-iscsi: iSCSI support via iscsiadm'
|
||||
'swtpm: TPM emulator support')
|
||||
optdepends_powerpc64le=('libvirt-storage-rbd: RBD storage backend')
|
||||
optdepends_x86_64=('libvirt-storage-rbd: RBD storage backend')
|
||||
|
||||
backup=(
|
||||
'etc/conf.d/libvirtd'
|
||||
'etc/conf.d/libvirt-guests'
|
||||
'etc/conf.d/virtchd'
|
||||
'etc/conf.d/virtinterfaced'
|
||||
'etc/conf.d/virtlockd'
|
||||
'etc/conf.d/virtlogd'
|
||||
'etc/conf.d/virtlxcd'
|
||||
'etc/conf.d/virtnetworkd'
|
||||
'etc/conf.d/virtnodedevd'
|
||||
'etc/conf.d/virtnwfilterd'
|
||||
'etc/conf.d/virtproxyd'
|
||||
'etc/conf.d/virtqemud'
|
||||
'etc/conf.d/virtsecretd'
|
||||
'etc/conf.d/virtstoraged'
|
||||
'etc/conf.d/virtvboxd'
|
||||
'etc/libvirt/libvirt-admin.conf'
|
||||
'etc/libvirt/libvirt.conf'
|
||||
'etc/libvirt/libvirtd.conf'
|
||||
@ -97,8 +87,9 @@ backup=(
|
||||
'etc/logrotate.d/libvirtd.qemu'
|
||||
'etc/sasl2/libvirt.conf'
|
||||
)
|
||||
options=(debug)
|
||||
source=("https://libvirt.org/sources/$pkgname-$pkgver.tar.xz"{,.asc})
|
||||
sha256sums=('3c6c43becffeb34a3f397c616206aa69a893ff8bf5e8208393c84e8e75352934'
|
||||
sha256sums=('0ecd9c7dd52db7a2d124155ffa5e11de2fbd05014eceffbd1972b022d21becba'
|
||||
'SKIP')
|
||||
validpgpkeys=('453B65310595562855471199CA68BE8010084C9C') # Jiří Denemark <jdenemar@redhat.com>
|
||||
|
||||
@ -126,8 +117,8 @@ build() {
|
||||
arch-meson build \
|
||||
--libexecdir=lib/libvirt \
|
||||
-Drunstatedir=/run \
|
||||
-Dqemu_user=kvm \
|
||||
-Dqemu_group=kvm \
|
||||
-Dqemu_user=libvirt-qemu \
|
||||
-Dqemu_group=libvirt-qemu \
|
||||
-Dnetcf=disabled \
|
||||
-Dopenwsman=disabled \
|
||||
-Dapparmor=disabled \
|
||||
@ -145,7 +136,7 @@ build() {
|
||||
-Dstorage_vstorage=disabled \
|
||||
-Ddtrace=disabled \
|
||||
-Dnumad=disabled \
|
||||
-Dstorage_zfs=enabled ${EXTRA_MESON_FLAGS}
|
||||
-Dstorage_zfs=enabled ${EXTRA_MESON_FLAGS}
|
||||
|
||||
ninja -C build
|
||||
}
|
||||
@ -162,13 +153,16 @@ package_libvirt() {
|
||||
DESTDIR="$pkgdir" ninja -C build install
|
||||
|
||||
mkdir "$pkgdir"/usr/lib/{sysusers,tmpfiles}.d
|
||||
echo "g libvirt - -" > "$pkgdir/usr/lib/sysusers.d/libvirt.conf"
|
||||
echo "z /var/lib/libvirt/qemu 0751" > "$pkgdir/usr/lib/tmpfiles.d/libvirt.conf"
|
||||
echo 'g libvirt - -' > "$pkgdir/usr/lib/sysusers.d/libvirt.conf"
|
||||
echo 'u libvirt-qemu /var/lib/libvirt "Libvirt QEMU user"' >> "$pkgdir/usr/lib/sysusers.d/libvirt.conf"
|
||||
echo 'm libvirt-qemu kvm' >> "$pkgdir/usr/lib/sysusers.d/libvirt.conf"
|
||||
echo 'z /var/lib/libvirt/qemu 0751' > "$pkgdir/usr/lib/tmpfiles.d/libvirt.conf"
|
||||
|
||||
chown 0:102 "$pkgdir/usr/share/polkit-1/rules.d"
|
||||
chmod 0750 "$pkgdir/usr/share/polkit-1/rules.d"
|
||||
chmod 600 "$pkgdir"/etc/libvirt/nwfilter/*.xml \
|
||||
"$pkgdir/etc/libvirt/qemu/networks/default.xml"
|
||||
chmod 700 "$pkgdir"/etc/libvirt/secrets
|
||||
|
||||
rm -rf \
|
||||
"$pkgdir/run" \
|
||||
@ -180,7 +174,9 @@ package_libvirt() {
|
||||
|
||||
# move split modules
|
||||
mv "$pkgdir"/usr/lib/libvirt/storage-backend/libvirt_storage_backend_gluster.so "$pkgdir/../"
|
||||
[ "${CARCH}" != 'powerpc' ] && mv "$pkgdir"/usr/lib/libvirt/storage-backend/libvirt_storage_backend_rbd.so "$pkgdir/../"
|
||||
case "${CARCH}" in
|
||||
powerpc64le|x86_64) mv "$pkgdir"/usr/lib/libvirt/storage-backend/libvirt_storage_backend_rbd.so "$pkgdir/../" ;;
|
||||
esac
|
||||
mv "$pkgdir/usr/lib/libvirt/storage-backend/libvirt_storage_backend_iscsi-direct.so" "$pkgdir/../"
|
||||
mv "$pkgdir/usr/lib/libvirt/storage-file/libvirt_storage_file_gluster.so" "$pkgdir/../"
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=libwpe
|
||||
pkgver=1.12.0
|
||||
pkgrel=1
|
||||
pkgrel=2
|
||||
pkgdesc="General-purpose library for WPE WebKit"
|
||||
url="https://wpewebkit.org"
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
@ -11,22 +11,23 @@ license=(custom)
|
||||
depends=(libxkbcommon gcc-libs)
|
||||
makedepends=(mesa git meson)
|
||||
provides=(libwpe-1.0.so)
|
||||
options=(debug)
|
||||
_commit=c785ad5fad51c20bd47f648a05279ec34b08848d # tags/1.12.0^0
|
||||
source=("git+https://github.com/WebPlatformForEmbedded/libwpe?signed#commit=$_commit")
|
||||
sha256sums=('SKIP')
|
||||
validpgpkeys=('5AA3BC334FD7E3369E7C77B291C559DBE4C9123B') # Adrián Pérez de Castro <aperez@igalia.com>
|
||||
|
||||
pkgver() {
|
||||
cd $pkgname
|
||||
git describe --tags | sed 's/-/+/g'
|
||||
cd libwpe
|
||||
git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g'
|
||||
}
|
||||
|
||||
prepare() {
|
||||
cd $pkgname
|
||||
cd libwpe
|
||||
}
|
||||
|
||||
build() {
|
||||
arch-meson $pkgname build
|
||||
arch-meson libwpe build
|
||||
meson compile -C build
|
||||
}
|
||||
|
||||
@ -36,7 +37,7 @@ check() {
|
||||
|
||||
package() {
|
||||
meson install -C build --destdir "$pkgdir"
|
||||
install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 $pkgname/COPYING
|
||||
install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 libwpe/COPYING
|
||||
}
|
||||
|
||||
# vim:set sw=2 et:
|
||||
|
78
lirc/python-yaml-6.patch
Normal file
78
lirc/python-yaml-6.patch
Normal file
@ -0,0 +1,78 @@
|
||||
From bb6a390633f32942ac10f9b7b7fc01dfbd395a48 Mon Sep 17 00:00:00 2001
|
||||
From: Alec Leamas <leamas.alec@nowhere.net>
|
||||
Date: Fri, 21 Jan 2022 14:00:54 +0100
|
||||
Subject: [PATCH] database.py: Handle new PyYAML interface.
|
||||
|
||||
---
|
||||
python-pkg/lirc/database.py | 12 ++++++++----
|
||||
tools/check_configs.py | 4 ++++
|
||||
2 files changed, 12 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/python-pkg/lirc/database.py b/python-pkg/lirc/database.py
|
||||
index d464c2ab..d1f42c64 100644
|
||||
--- a/python-pkg/lirc/database.py
|
||||
+++ b/python-pkg/lirc/database.py
|
||||
@@ -44,6 +44,10 @@ import sys
|
||||
|
||||
try:
|
||||
import yaml
|
||||
+ try:
|
||||
+ from yaml import CLoader as Loader, CDumper as Dumper
|
||||
+ except ImportError:
|
||||
+ from yaml import Loader, Dumper
|
||||
except ImportError:
|
||||
_YAML_MSG = '''
|
||||
"Cannot import the yaml library. Please install the python3
|
||||
@@ -66,7 +70,7 @@ def _load_kerneldrivers(configdir):
|
||||
'''
|
||||
|
||||
with open(os.path.join(configdir, "kernel-drivers.yaml")) as f:
|
||||
- cf = yaml.load(f.read())
|
||||
+ cf = yaml.load(f.read(), Loader = Loader)
|
||||
drivers = cf['drivers'].copy()
|
||||
for driver in cf['drivers']:
|
||||
if driver == 'default':
|
||||
@@ -132,14 +136,14 @@ class Database(object):
|
||||
yamlpath = configdir
|
||||
db = {}
|
||||
with open(os.path.join(yamlpath, "confs_by_driver.yaml")) as f:
|
||||
- cf = yaml.load(f.read())
|
||||
+ cf = yaml.load(f.read(), Loader = Loader)
|
||||
db['lircd_by_driver'] = cf['lircd_by_driver'].copy()
|
||||
db['lircmd_by_driver'] = cf['lircmd_by_driver'].copy()
|
||||
|
||||
db['kernel-drivers'] = _load_kerneldrivers(configdir)
|
||||
db['drivers'] = db['kernel-drivers'].copy()
|
||||
with open(os.path.join(yamlpath, "drivers.yaml")) as f:
|
||||
- cf = yaml.load(f.read())
|
||||
+ cf = yaml.load(f.read(), Loader = Loader)
|
||||
db['drivers'].update(cf['drivers'].copy())
|
||||
for key, d in db['drivers'].items():
|
||||
d['id'] = key
|
||||
@@ -158,7 +162,7 @@ class Database(object):
|
||||
configs = {}
|
||||
for path in glob.glob(configdir + '/*.conf'):
|
||||
with open(path) as f:
|
||||
- cf = yaml.load(f.read())
|
||||
+ cf = yaml.load(f.read(), Loader = Loader)
|
||||
configs[cf['config']['id']] = cf['config']
|
||||
db['configs'] = configs
|
||||
self.db = db
|
||||
diff --git a/tools/check_configs.py b/tools/check_configs.py
|
||||
index 1e0d831b..5e458de7 100755
|
||||
--- a/tools/check_configs.py
|
||||
+++ b/tools/check_configs.py
|
||||
@@ -4,6 +4,10 @@
|
||||
|
||||
import glob
|
||||
import yaml
|
||||
+try:
|
||||
+ from yaml import CLoader as Loader, CDumper as Dumper
|
||||
+except ImportError:
|
||||
+ from yaml import Loader, Dumper
|
||||
|
||||
def main():
|
||||
configs = {}
|
||||
--
|
||||
2.34.1
|
||||
|
91
llvm/don-t-move-DBG_VALUE-instructions.patch
Normal file
91
llvm/don-t-move-DBG_VALUE-instructions.patch
Normal file
@ -0,0 +1,91 @@
|
||||
From e7c9a6cae09d99388d8384ca7c0fb5b24b353975 Mon Sep 17 00:00:00 2001
|
||||
From: Nikita Popov <npopov@redhat.com>
|
||||
Date: Mon, 17 Jan 2022 15:48:01 +0100
|
||||
Subject: [PATCH] [SDAG] Don't move DBG_VALUE instructions after insertion
|
||||
point during scheduling (PR53243)
|
||||
|
||||
EmitSchedule() shouldn't be touching instructions after the provided
|
||||
insertion point. The change introduced in D83561 performs a scan to
|
||||
the end of the block, and thus may move unrelated instructions. In
|
||||
particular, this ends up moving instructions that have been produced
|
||||
by FastISel and will later be deleted. Moving them means that more
|
||||
instructions than intended are removed.
|
||||
|
||||
Fix this by stopping the iteration when the insertion point is
|
||||
reached.
|
||||
|
||||
Fixes https://github.com/llvm/llvm-project/issues/53243.
|
||||
|
||||
Differential Revision: https://reviews.llvm.org/D117489
|
||||
---
|
||||
.../SelectionDAG/ScheduleDAGSDNodes.cpp | 7 ++--
|
||||
.../CodeGen/X86/pr53243-tail-call-fastisel.ll | 39 +++++++++++++++++++
|
||||
2 files changed, 43 insertions(+), 3 deletions(-)
|
||||
create mode 100644 llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll
|
||||
|
||||
diff --git a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
|
||||
index bec240d6c4d4..403f34573899 100644
|
||||
--- a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
|
||||
+++ b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
|
||||
@@ -1057,12 +1057,13 @@ EmitSchedule(MachineBasicBlock::iterator &InsertPos) {
|
||||
"first terminator cannot be a debug value");
|
||||
for (MachineInstr &MI : make_early_inc_range(
|
||||
make_range(std::next(FirstTerm), InsertBB->end()))) {
|
||||
+ // Only scan up to insertion point.
|
||||
+ if (&MI == InsertPos)
|
||||
+ break;
|
||||
+
|
||||
if (!MI.isDebugValue())
|
||||
continue;
|
||||
|
||||
- if (&MI == InsertPos)
|
||||
- InsertPos = std::prev(InsertPos->getIterator());
|
||||
-
|
||||
// The DBG_VALUE was referencing a value produced by a terminator. By
|
||||
// moving the DBG_VALUE, the referenced value also needs invalidating.
|
||||
MI.getOperand(0).ChangeToRegister(0, false);
|
||||
diff --git a/llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll b/llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll
|
||||
new file mode 100644
|
||||
index 000000000000..333eff8fb008
|
||||
--- /dev/null
|
||||
+++ b/llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll
|
||||
@@ -0,0 +1,39 @@
|
||||
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
|
||||
+; RUN: llc -O0 -fast-isel -mtriple=x86_64-- < %s | FileCheck %s
|
||||
+
|
||||
+define void @test() {
|
||||
+; CHECK-LABEL: test:
|
||||
+; CHECK: # %bb.0:
|
||||
+; CHECK-NEXT: jmp set_state@PLT # TAILCALL
|
||||
+ tail call void @set_state()
|
||||
+ call void @llvm.dbg.value(metadata i64 0, metadata !10, metadata !DIExpression()), !dbg !16
|
||||
+ ret void
|
||||
+}
|
||||
+
|
||||
+declare void @set_state()
|
||||
+
|
||||
+; Function Attrs: nofree nosync nounwind readnone speculatable willreturn
|
||||
+declare void @llvm.dbg.value(metadata, metadata, metadata) #0
|
||||
+
|
||||
+attributes #0 = { nofree nosync nounwind readnone speculatable willreturn }
|
||||
+
|
||||
+!llvm.module.flags = !{!0}
|
||||
+!llvm.dbg.cu = !{!1}
|
||||
+
|
||||
+!0 = !{i32 2, !"Debug Info Version", i32 3}
|
||||
+!1 = distinct !DICompileUnit(language: DW_LANG_Rust, file: !2, producer: "clang LLVM (rustc version 1.60.0-nightly (ec4bcaac4 2022-01-15))", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !3)
|
||||
+!2 = !DIFile(filename: "src/lib.rs/@/bug.63e521cd-cgu.0", directory: "/tmp/rust-bug")
|
||||
+!3 = !{!4}
|
||||
+!4 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "Option", file: !5, baseType: !6, size: 8, align: 8, flags: DIFlagEnumClass, elements: !7)
|
||||
+!5 = !DIFile(filename: "<unknown>", directory: "")
|
||||
+!6 = !DIBasicType(name: "u8", size: 8, encoding: DW_ATE_unsigned)
|
||||
+!7 = !{!8, !9}
|
||||
+!8 = !DIEnumerator(name: "None", value: 0)
|
||||
+!9 = !DIEnumerator(name: "Some", value: 1)
|
||||
+!10 = !DILocalVariable(name: "msg", arg: 2, scope: !11, file: !12, line: 689, type: !6)
|
||||
+!11 = distinct !DISubprogram(name: "expect<()>", linkageName: "_ZN4core6option15Option$LT$T$GT$6expect17h9a574c18f194c213E", scope: !4, file: !12, line: 689, type: !13, scopeLine: 689, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !1, templateParams: !15, retainedNodes: !15)
|
||||
+!12 = !DIFile(filename: "/rustc/ec4bcaac450279b029f3480b8b8f1b82ab36a5eb/library/core/src/option.rs", directory: "", checksumkind: CSK_MD5, checksum: "4120c8557937a0772190a676ec193800")
|
||||
+!13 = !DISubroutineType(types: !14)
|
||||
+!14 = !{null, !4}
|
||||
+!15 = !{}
|
||||
+!16 = !DILocation(line: 0, scope: !11)
|
6
mesa-demos/mesa-demos.install
Normal file
6
mesa-demos/mesa-demos.install
Normal file
@ -0,0 +1,6 @@
|
||||
post_upgrade() {
|
||||
if [ "`vercmp $2 8.4.0-5`" -lt 0 ]; then
|
||||
echo ">>> glxinfo, eglinfo and glxgears are now part of"
|
||||
echo ">>> the new \"mesa-utils\" package."
|
||||
fi
|
||||
}
|
@ -4,7 +4,7 @@
|
||||
pkgname=monero
|
||||
pkgver=0.17.3.0
|
||||
_commit=ab18fea3500841fc312630d49ed6840b3aedb34d
|
||||
pkgrel=3
|
||||
pkgrel=4
|
||||
pkgdesc="Monero: the secure, private, untraceable peer-to-peer currency"
|
||||
license=('BSD')
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
pkgbase=networkmanager
|
||||
pkgname=(networkmanager libnm nm-cloud-setup)
|
||||
pkgver=1.36.2
|
||||
pkgver=1.36.4
|
||||
pkgrel=1
|
||||
pkgdesc="Network connection manager and user applications"
|
||||
url="https://networkmanager.dev/"
|
||||
@ -21,7 +21,8 @@ makedepends=(intltool dhclient dhcpcd iptables-nft gobject-introspection gtk-doc
|
||||
python-gobject git vala jansson bluez-libs glib2-docs iwd dnsmasq
|
||||
openresolv libpsl audit meson)
|
||||
checkdepends=(libx11 python-dbus)
|
||||
_commit=ae06ec5207cec126ca767020238c32598b8bfc5d # tags/1.36.2^0
|
||||
options=(debug)
|
||||
_commit=4e8e5bdfc2ab6b51b9f8626512089a1f0c94cce6 # tags/1.36.4^0
|
||||
source=("git+https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git#commit=$_commit")
|
||||
b2sums=('SKIP')
|
||||
|
||||
@ -69,6 +70,13 @@ build() {
|
||||
-D qt=false
|
||||
)
|
||||
|
||||
# drastically reduce build-time on slow systems
|
||||
if [ check_option check n ]; then
|
||||
echo ":: Checks disabled"
|
||||
meson_options+=(-D tests=no)
|
||||
exit 1
|
||||
fi
|
||||
|
||||
arch-meson NetworkManager build "${meson_options[@]}"
|
||||
meson compile -C build
|
||||
}
|
||||
|
@ -0,0 +1,249 @@
|
||||
From 86379195b835eae2dee93bcbcad47028ba440560 Mon Sep 17 00:00:00 2001
|
||||
From: "Carsten Haitzler (Rasterman)" <raster@rasterman.com>
|
||||
Date: Sat, 22 May 2021 16:30:33 +0100
|
||||
Subject: [PATCH 1/1] build - fix overall sysconfdir handling so it can work
|
||||
out of the box
|
||||
|
||||
sysconfdir is "etc" by default in meson, this means paths are like
|
||||
"etc/PackageKit/xxxx" ... which is not a path. missing a / to begin
|
||||
with. not to mention packagekit installs its own etc files in prefix/etc
|
||||
(eg /usr/local/etc) by default. so differentiate files installed by
|
||||
pkgkit (pk_sysconfdir)) and other system files (sysconfdir) and use
|
||||
approplriately in the build. if the default etc is used then fix it to be
|
||||
/etc for system and prefix/etc for pk installed files. at least things can
|
||||
work out of the box then when you ninja install and dont provide a
|
||||
custom sysconfidr on the cmdline.
|
||||
---
|
||||
backends/alpm/meson.build | 8 ++++----
|
||||
backends/aptcc/meson.build | 2 +-
|
||||
backends/slack/meson.build | 5 +++--
|
||||
backends/slack/pk-backend-slack.cc | 2 +-
|
||||
backends/slack/tests/meson.build | 3 ++-
|
||||
contrib/command-not-found/meson.build | 7 ++++---
|
||||
contrib/command-not-found/pk-command-not-found.c | 2 +-
|
||||
contrib/cron/meson.build | 4 ++--
|
||||
data/meson.build | 2 +-
|
||||
etc/meson.build | 2 +-
|
||||
meson.build | 10 +++++++++-
|
||||
src/meson.build | 3 ++-
|
||||
src/pk-shared.c | 2 +-
|
||||
13 files changed, 32 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/backends/alpm/meson.build b/backends/alpm/meson.build
|
||||
index eb4d5b373..fc7972128 100644
|
||||
--- a/backends/alpm/meson.build
|
||||
+++ b/backends/alpm/meson.build
|
||||
@@ -34,9 +34,9 @@ shared_module(
|
||||
c_args: [
|
||||
'-DPK_LOG_PREFIX="PACKAGEKIT"',
|
||||
'-DG_LOG_DOMAIN="PackageKit-alpm"',
|
||||
- '-DPK_BACKEND_CONFIG_FILE="@0@"'.format(join_paths(get_option('sysconfdir'), 'PackageKit', 'alpm.d', 'pacman.conf')),
|
||||
- '-DPK_BACKEND_GROUP_FILE="@0@"'.format(join_paths(get_option('sysconfdir'), 'PackageKit', 'alpm.d', 'groups.list')),
|
||||
- '-DPK_BACKEND_REPO_FILE="@0@"'.format(join_paths(get_option('sysconfdir'), 'PackageKit', 'alpm.d', 'repos.list')),
|
||||
+ '-DPK_BACKEND_CONFIG_FILE="@0@"'.format(join_paths(pk_sysconfdir, 'PackageKit', 'alpm.d', 'pacman.conf')),
|
||||
+ '-DPK_BACKEND_GROUP_FILE="@0@"'.format(join_paths(pk_sysconfdir, 'PackageKit', 'alpm.d', 'groups.list')),
|
||||
+ '-DPK_BACKEND_REPO_FILE="@0@"'.format(join_paths(pk_sysconfdir, 'PackageKit', 'alpm.d', 'repos.list')),
|
||||
'-DPK_BACKEND_DEFAULT_PATH="/bin:/usr/bin:/sbin:/usr/sbin"',
|
||||
],
|
||||
install: true,
|
||||
@@ -52,5 +52,5 @@ install_data(
|
||||
'groups.list',
|
||||
'pacman.conf',
|
||||
'repos.list',
|
||||
- install_dir: join_paths(get_option('sysconfdir'), 'PackageKit', 'alpm.d')
|
||||
+ install_dir: join_paths(pk_sysconfdir, 'PackageKit', 'alpm.d')
|
||||
)
|
||||
diff --git a/backends/aptcc/meson.build b/backends/aptcc/meson.build
|
||||
index 5df8f29e2..b29af882b 100644
|
||||
--- a/backends/aptcc/meson.build
|
||||
+++ b/backends/aptcc/meson.build
|
||||
@@ -75,7 +75,7 @@ shared_module(
|
||||
|
||||
install_data(
|
||||
'20packagekit',
|
||||
- install_dir: join_paths(get_option('sysconfdir'), 'apt', 'apt.conf.d'),
|
||||
+ install_dir: join_paths(sysconfdir, 'apt', 'apt.conf.d'),
|
||||
)
|
||||
|
||||
install_data(
|
||||
diff --git a/backends/slack/meson.build b/backends/slack/meson.build
|
||||
index f44eea193..c6fdee49f 100644
|
||||
--- a/backends/slack/meson.build
|
||||
+++ b/backends/slack/meson.build
|
||||
@@ -24,7 +24,8 @@ packagekit_backend_slack_module = shared_module(
|
||||
'-DPK_COMPILATION=1',
|
||||
'-DLOCALSTATEDIR="@0@"'.format(join_paths(get_option('prefix'), get_option('localstatedir'))),
|
||||
'-DLIBDIR="@0@"'.format(join_paths(get_option('prefix'), get_option('libdir'))),
|
||||
- '-DSYSCONFDIR="@0@"'.format(get_option('sysconfdir')),
|
||||
+ '-DSYSCONFDIR="@0@"'.format(sysconfdir),
|
||||
+ '-DPK_SYSCONFDIR="@0@"'.format(pk_sysconfdir),
|
||||
],
|
||||
override_options: ['c_std=c14', 'cpp_std=c++14'],
|
||||
install: true,
|
||||
@@ -45,7 +46,7 @@ configure_file(
|
||||
output: 'Slackware.conf',
|
||||
configuration: slackware_config_data,
|
||||
install: true,
|
||||
- install_dir: join_paths(get_option('sysconfdir'), 'PackageKit'),
|
||||
+ install_dir: join_paths(sysconfdir, 'PackageKit'),
|
||||
)
|
||||
|
||||
install_data(
|
||||
diff --git a/backends/slack/pk-backend-slack.cc b/backends/slack/pk-backend-slack.cc
|
||||
index 46e233d9a..4dbce8a50 100644
|
||||
--- a/backends/slack/pk-backend-slack.cc
|
||||
+++ b/backends/slack/pk-backend-slack.cc
|
||||
@@ -44,7 +44,7 @@ void pk_backend_initialize(GKeyFile *conf, PkBackend *backend)
|
||||
|
||||
/* Read the configuration file */
|
||||
key_conf = g_key_file_new();
|
||||
- path = g_build_filename(SYSCONFDIR, "PackageKit", "Slackware.conf", NULL);
|
||||
+ path = g_build_filename(PK_SYSCONFDIR, "PackageKit", "Slackware.conf", NULL);
|
||||
g_key_file_load_from_file(key_conf, path, G_KEY_FILE_NONE, &err);
|
||||
if (err)
|
||||
{
|
||||
diff --git a/backends/slack/tests/meson.build b/backends/slack/tests/meson.build
|
||||
index c5235227c..49e6161e1 100644
|
||||
--- a/backends/slack/tests/meson.build
|
||||
+++ b/backends/slack/tests/meson.build
|
||||
@@ -13,7 +13,8 @@ pk_slack_test_cpp_args = [
|
||||
'-DPK_COMPILATION=1',
|
||||
'-DLOCALSTATEDIR="@0@"'.format(join_paths(get_option('prefix'), get_option('localstatedir'))),
|
||||
'-DLIBDIR="@0@"'.format(join_paths(get_option('prefix'), get_option('libdir'))),
|
||||
- '-DSYSCONFDIR="@0@"'.format(get_option('sysconfdir')),
|
||||
+ '-DSYSCONFDIR="@0@"'.format(sysconfdir),
|
||||
+ '-DPK_SYSCONFDIR="@0@"'.format(pk_sysconfdir),
|
||||
'-DGETTEXT_PACKAGE="@0@"'.format(meson.project_name()),
|
||||
'-DLIBEXECDIR="@0@"'.format(join_paths(get_option('prefix'), get_option('libexecdir'))),
|
||||
'-DPK_DB_DIR="."',
|
||||
diff --git a/contrib/command-not-found/meson.build b/contrib/command-not-found/meson.build
|
||||
index c1fba7a95..b1f0e88d8 100644
|
||||
--- a/contrib/command-not-found/meson.build
|
||||
+++ b/contrib/command-not-found/meson.build
|
||||
@@ -8,7 +8,8 @@ executable(
|
||||
'-DGETTEXT_PACKAGE="@0@"'.format(meson.project_name()),
|
||||
'-DG_LOG_DOMAIN="PackageKit"',
|
||||
'-DPACKAGE_LOCALE_DIR="@0@"'.format(join_paths(get_option('prefix'), get_option('localedir'))),
|
||||
- '-DSYSCONFDIR="@0@"'.format(get_option('sysconfdir')),
|
||||
+ '-DSYSCONFDIR="@0@"'.format(sysconfdir),
|
||||
+ '-DPK_SYSCONFDIR="@0@"'.format(pk_sysconfdir),
|
||||
]
|
||||
)
|
||||
|
||||
@@ -19,10 +20,10 @@ configure_file(
|
||||
output: 'PackageKit.sh',
|
||||
configuration: bashprofile_config_data,
|
||||
install: true,
|
||||
- install_dir: join_paths(get_option('sysconfdir'), 'profile.d'),
|
||||
+ install_dir: join_paths(sysconfdir, 'profile.d'),
|
||||
)
|
||||
|
||||
install_data(
|
||||
'CommandNotFound.conf',
|
||||
- install_dir: join_paths(get_option('sysconfdir'), 'PackageKit'),
|
||||
+ install_dir: join_paths(pk_sysconfdir, 'PackageKit'),
|
||||
)
|
||||
diff --git a/contrib/command-not-found/pk-command-not-found.c b/contrib/command-not-found/pk-command-not-found.c
|
||||
index 8bedb081c..f7c5005b7 100644
|
||||
--- a/contrib/command-not-found/pk-command-not-found.c
|
||||
+++ b/contrib/command-not-found/pk-command-not-found.c
|
||||
@@ -591,7 +591,7 @@ pk_cnf_get_config (void)
|
||||
|
||||
/* load file */
|
||||
file = g_key_file_new ();
|
||||
- path = g_build_filename (SYSCONFDIR, "PackageKit", "CommandNotFound.conf", NULL);
|
||||
+ path = g_build_filename (PK_SYSCONFDIR, "PackageKit", "CommandNotFound.conf", NULL);
|
||||
ret = g_key_file_load_from_file (file, path, G_KEY_FILE_NONE, &error);
|
||||
if (!ret) {
|
||||
g_printerr ("failed to load config file: %s\n", error->message);
|
||||
diff --git a/contrib/cron/meson.build b/contrib/cron/meson.build
|
||||
index bff5eec27..5c1926e4b 100644
|
||||
--- a/contrib/cron/meson.build
|
||||
+++ b/contrib/cron/meson.build
|
||||
@@ -1,9 +1,9 @@
|
||||
install_data(
|
||||
'packagekit-background.cron',
|
||||
- install_dir: join_paths(get_option('sysconfdir'), 'cron.daily')
|
||||
+ install_dir: join_paths(sysconfdir, 'cron.daily')
|
||||
)
|
||||
|
||||
install_data(
|
||||
'packagekit-background',
|
||||
- install_dir: join_paths(get_option('sysconfdir'), 'sysconfig')
|
||||
+ install_dir: join_paths(sysconfdir, 'sysconfig')
|
||||
)
|
||||
diff --git a/data/meson.build b/data/meson.build
|
||||
index a953f6280..11d115204 100644
|
||||
--- a/data/meson.build
|
||||
+++ b/data/meson.build
|
||||
@@ -9,7 +9,7 @@ dbus_config_data.set('libexecdir', join_paths(get_option('prefix'), get_option('
|
||||
|
||||
dbus_sys_dir = get_option('dbus_sys')
|
||||
if dbus_sys_dir == ''
|
||||
- dbus_sys_dir = join_paths(get_option('sysconfdir'), 'dbus-1', 'system.d')
|
||||
+ dbus_sys_dir = join_paths(sysconfdir, 'dbus-1', 'system.d')
|
||||
endif
|
||||
|
||||
configure_file(
|
||||
diff --git a/etc/meson.build b/etc/meson.build
|
||||
index d3687f820..5094d93b3 100644
|
||||
--- a/etc/meson.build
|
||||
+++ b/etc/meson.build
|
||||
@@ -1,5 +1,5 @@
|
||||
install_data(
|
||||
'PackageKit.conf',
|
||||
'Vendor.conf',
|
||||
- install_dir: join_paths(get_option('sysconfdir'), 'PackageKit')
|
||||
+ install_dir: join_paths(pk_sysconfdir, 'PackageKit')
|
||||
)
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 98587c6ec..8eba1544f 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -73,7 +73,15 @@ add_project_arguments ('-DPK_COMPILATION', language: 'c')
|
||||
conf = configuration_data()
|
||||
conf.set_quoted('DATADIR', join_paths(get_option('prefix'), get_option('datadir')))
|
||||
conf.set_quoted('LIBDIR', join_paths(get_option('prefix'), get_option('libdir')))
|
||||
-conf.set_quoted('SYSCONFDIR', get_option('sysconfdir'))
|
||||
+if get_option('sysconfdir') == 'etc'
|
||||
+ pk_sysconfdir = join_paths(get_option('prefix'), get_option('sysconfdir'))
|
||||
+ sysconfdir = '/etc'
|
||||
+else
|
||||
+ pk_sysconfdir = get_option('sysconfdir')
|
||||
+ sysconfdir = get_option('sysconfdir')
|
||||
+endif
|
||||
+conf.set_quoted('SYSCONFDIR', sysconfdir)
|
||||
+conf.set_quoted('PK_SYSCONFDIR', pk_sysconfdir)
|
||||
|
||||
conf.set_quoted('PROJECT_NAME', meson.project_name())
|
||||
conf.set_quoted('PROJECT_VERSION', meson.project_version())
|
||||
diff --git a/src/meson.build b/src/meson.build
|
||||
index cae73380e..505e9491d 100644
|
||||
--- a/src/meson.build
|
||||
+++ b/src/meson.build
|
||||
@@ -54,7 +54,8 @@ packagekit_direct_exec = executable(
|
||||
c_args: [
|
||||
'-DG_LOG_DOMAIN="PackageKit"',
|
||||
'-DLIBDIR="@0@"'.format(join_paths(get_option('prefix'), get_option('libdir'))),
|
||||
- '-DSYSCONFDIR="@0@"'.format(get_option('sysconfdir')),
|
||||
+ '-DSYSCONFDIR="@0@"'.format(sysconfdir),
|
||||
+ '-DPK_SYSCONFDIR="@0@"'.format(pk_sysconfdir),
|
||||
'-DVERSION="@0@"'.format(meson.project_version()),
|
||||
'-DGETTEXT_PACKAGE="@0@"'.format(meson.project_name()),
|
||||
'-DPACKAGE_LOCALE_DIR="@0@"'.format(package_locale_dir),
|
||||
diff --git a/src/pk-shared.c b/src/pk-shared.c
|
||||
index ca825dee9..a9fc623f4 100644
|
||||
--- a/src/pk-shared.c
|
||||
+++ b/src/pk-shared.c
|
||||
@@ -326,7 +326,7 @@ pk_util_get_config_filename (void)
|
||||
g_free (path);
|
||||
#endif
|
||||
/* check the prefix path */
|
||||
- path = g_build_filename (SYSCONFDIR, "PackageKit", "PackageKit.conf", NULL);
|
||||
+ path = g_build_filename (PK_SYSCONFDIR, "PackageKit", "PackageKit.conf", NULL);
|
||||
if (g_file_test (path, G_FILE_TEST_EXISTS))
|
||||
goto out;
|
||||
|
||||
--
|
||||
2.35.1
|
||||
|
@ -6,7 +6,7 @@
|
||||
pkgbase=qca
|
||||
pkgname=(qca-qt5 qca-qt6)
|
||||
pkgver=2.3.4
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc='Qt Cryptographic Architecture'
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url='https://userbase.kde.org/QCA'
|
||||
@ -17,6 +17,7 @@ source=(https://download.kde.org/stable/$pkgbase/$pkgver/$pkgbase-$pkgver.tar.xz
|
||||
sha256sums=('6b695881a7e3fd95f73aaee6eaeab96f6ad17e515e9c2b3d4b3272d7862ff5c4'
|
||||
'SKIP')
|
||||
validpgpkeys=(CB9387521E1EE0127DA804843FDBB55084CC5D84) # Harald Sitter <sitter@kde.org>
|
||||
options=(debug)
|
||||
|
||||
build() {
|
||||
cmake -B build-qt5 -S $pkgbase-$pkgver \
|
||||
|
@ -14,8 +14,8 @@ pkgname=(
|
||||
)
|
||||
[ "${CARCH}" != 'powerpc' ] && pkgname+=(qemu-block-rbd)
|
||||
pkgdesc="A generic and open source machine emulator and virtualizer"
|
||||
pkgver=6.2.0
|
||||
pkgrel=4
|
||||
pkgver=7.0.0
|
||||
pkgrel=1
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
license=(GPL2 LGPL2.1)
|
||||
url="https://wiki.qemu.org/"
|
||||
@ -83,12 +83,10 @@ makedepends_powerpc64le=(ceph)
|
||||
makedepends_x86_64=(ceph)
|
||||
options=(debug)
|
||||
source=(https://download.qemu.org/qemu-$pkgver.tar.xz{,.sig}
|
||||
virtiofsd-glibc235.patch::https://github.com/qemu/qemu/commit/7b223e38603de3a75602e14914d26f9d4baf52eb.patch
|
||||
qemu-guest-agent.service
|
||||
65-kvm.rules)
|
||||
sha512sums=('e9f8231c9e1cfcc41cb47f10a55d63f6b8aee307af00cf6acf64acb7aa4f49fa7e9d6330703a2abea15d8b7bbaba7d3cb08c83edd98d82642367b527df730817'
|
||||
'SKIP'
|
||||
'3b8b1e346d02516195c8ba4a1e88a2f0d69639b75cdd5e57185db624ba514f49b6d373a7fb2ec77133fb75cd43a11ce0e96b7a948ec9fc7140ae7ef26c203cb6'
|
||||
'269c0f0bacbd06a3d817fde02dce26c99d9f55c9e3b74bb710bd7e5cdde7a66b904d2eb794c8a605bf9305e4e3dee261a6e7d4ec9d9134144754914039f176e4'
|
||||
'bdf05f99407491e27a03aaf845b7cc8acfa2e0e59968236f10ffc905e5e3d5e8569df496fd71c887da2b5b8d1902494520c7da2d3a8258f7fd93a881dd610c99')
|
||||
validpgpkeys=('CEACC9E15534EBABB82D3FA03353C9CEF108B584') # Michael Roth <flukshun@gmail.com>
|
||||
@ -104,9 +102,6 @@ esac
|
||||
prepare() {
|
||||
mkdir build-{full,headless}
|
||||
mkdir -p extra-arch-{full,headless}/usr/{bin,share/qemu}
|
||||
|
||||
cd ${pkgname}-${pkgver}
|
||||
patch -p1 < ../virtiofsd-glibc235.patch # FS#73856
|
||||
}
|
||||
|
||||
build() {
|
||||
@ -138,7 +133,6 @@ _build() (
|
||||
--enable-modules \
|
||||
--enable-sdl \
|
||||
--enable-slirp=system \
|
||||
--enable-xfsctl \
|
||||
"${@:2}"
|
||||
|
||||
ninja
|
||||
@ -440,3 +434,7 @@ package_qemu-guest-agent() {
|
||||
}
|
||||
|
||||
# vim:set ts=2 sw=2 et:
|
||||
sha512sums=('44ecd10c018a3763e1bc87d1d35b98890d0d5636acd69fe9b5cadf5024d5af6a31684d60cbe1c3370e02986434c1fb0ad99224e0e6f6fe7eda169992508157b1'
|
||||
'SKIP'
|
||||
'269c0f0bacbd06a3d817fde02dce26c99d9f55c9e3b74bb710bd7e5cdde7a66b904d2eb794c8a605bf9305e4e3dee261a6e7d4ec9d9134144754914039f176e4'
|
||||
'bdf05f99407491e27a03aaf845b7cc8acfa2e0e59968236f10ffc905e5e3d5e8569df496fd71c887da2b5b8d1902494520c7da2d3a8258f7fd93a881dd610c99')
|
||||
|
@ -1,9 +1,10 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
pkgbase=linux-visionfive
|
||||
pkgver=5.17.0.rc8
|
||||
pkgver=5.17
|
||||
pkgrel=1
|
||||
epoch=1
|
||||
pkgdesc='Linux kernel for the StarFive VisionFive V1'
|
||||
_commit="ab93b1bae004d1d7f4c795e15ea6ed6478d2789c"
|
||||
_commit="243ce759ed5821edf38bf93ce7325e232b805547"
|
||||
url="https://git.archlinux.org/linux.git/log/?h=$_srctag"
|
||||
arch=(any)
|
||||
license=(GPL2)
|
||||
@ -23,14 +24,13 @@ validpgpkeys=(
|
||||
'C7E7849466FE2358343588377258734B41C31549' # David Runge <dvzrv@archlinux.org>
|
||||
)
|
||||
sha256sums=('SKIP'
|
||||
'48b0e9c91d475073d6884a2390ecf7dcdb36393e3af79887235fc09fe325b5f5')
|
||||
'011ade0cbc4303fc669aee384a559d3f5d62b13f6dfdb9aa9508fe188fe133c0')
|
||||
|
||||
export KBUILD_BUILD_HOST=archpower
|
||||
export KBUILD_BUILD_USER=$pkgbase
|
||||
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
|
||||
|
||||
export MYARCH="riscv"
|
||||
export CFLAGS="-O2 -pipe"
|
||||
|
||||
prepare() {
|
||||
cd $pkgbase
|
||||
|
@ -1,6 +1,6 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/riscv 5.17.0-rc8 Kernel Configuration
|
||||
# Linux/riscv 5.17.0 Kernel Configuration
|
||||
#
|
||||
CONFIG_CC_VERSION_TEXT="gcc (Arch POWER) 11.2.0"
|
||||
CONFIG_CC_IS_GCC=y
|
||||
@ -1307,6 +1307,7 @@ CONFIG_HAVE_PCI=y
|
||||
#
|
||||
# Generic Driver Options
|
||||
#
|
||||
CONFIG_AUXILIARY_BUS=y
|
||||
# CONFIG_UEVENT_HELPER is not set
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
@ -2524,6 +2525,7 @@ CONFIG_POWER_SUPPLY_HWMON=y
|
||||
# CONFIG_CHARGER_DETECTOR_MAX14656 is not set
|
||||
# CONFIG_CHARGER_MAX77976 is not set
|
||||
# CONFIG_CHARGER_BQ2415X is not set
|
||||
# CONFIG_CHARGER_BQ24190 is not set
|
||||
# CONFIG_CHARGER_BQ24257 is not set
|
||||
# CONFIG_CHARGER_BQ24735 is not set
|
||||
# CONFIG_CHARGER_BQ2515X is not set
|
||||
@ -3189,7 +3191,6 @@ CONFIG_VIDEO_CX25840=m
|
||||
# CONFIG_VIDEO_ADV7175 is not set
|
||||
# CONFIG_VIDEO_ADV7343 is not set
|
||||
# CONFIG_VIDEO_ADV7393 is not set
|
||||
# CONFIG_VIDEO_ADV7511 is not set
|
||||
# CONFIG_VIDEO_AD9389B is not set
|
||||
# CONFIG_VIDEO_AK881X is not set
|
||||
# CONFIG_VIDEO_THS8200 is not set
|
||||
@ -3536,7 +3537,9 @@ CONFIG_DVB_SP2=m
|
||||
# Graphics support
|
||||
#
|
||||
CONFIG_DRM=y
|
||||
CONFIG_DRM_MIPI_DBI=m
|
||||
CONFIG_DRM_MIPI_DSI=y
|
||||
CONFIG_DRM_DP_AUX_BUS=m
|
||||
# CONFIG_DRM_DP_AUX_CHARDEV is not set
|
||||
# CONFIG_DRM_DEBUG_MM is not set
|
||||
# CONFIG_DRM_DEBUG_SELFTEST is not set
|
||||
@ -3549,6 +3552,7 @@ CONFIG_DRM_FBDEV_OVERALLOC=100
|
||||
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
|
||||
CONFIG_DRM_DP_CEC=y
|
||||
CONFIG_DRM_GEM_CMA_HELPER=y
|
||||
CONFIG_DRM_GEM_SHMEM_HELPER=m
|
||||
|
||||
#
|
||||
# I2C encoder or helper chips
|
||||
@ -3577,21 +3581,71 @@ CONFIG_DRM_PANEL=y
|
||||
#
|
||||
# Display Panels
|
||||
#
|
||||
# CONFIG_DRM_PANEL_ABT_Y030XX067A is not set
|
||||
# CONFIG_DRM_PANEL_ARM_VERSATILE is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
|
||||
# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
|
||||
# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
|
||||
# CONFIG_DRM_PANEL_LG_LG4573 is not set
|
||||
# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set
|
||||
# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
|
||||
# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set
|
||||
# CONFIG_DRM_PANEL_VISIONOX_RM69299 is not set
|
||||
CONFIG_DRM_PANEL_ABT_Y030XX067A=m
|
||||
CONFIG_DRM_PANEL_ARM_VERSATILE=m
|
||||
# CONFIG_DRM_PANEL_ASUS_Z00T_TM5P5_NT35596 is not set
|
||||
# CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0 is not set
|
||||
# CONFIG_DRM_PANEL_BOE_HIMAX8279D is not set
|
||||
# CONFIG_DRM_PANEL_BOE_TV101WUM_NL6 is not set
|
||||
# CONFIG_DRM_PANEL_DSI_CM is not set
|
||||
# CONFIG_DRM_PANEL_LVDS is not set
|
||||
# CONFIG_DRM_PANEL_ELIDA_KD35T133 is not set
|
||||
# CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02 is not set
|
||||
# CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set
|
||||
CONFIG_DRM_PANEL_ILITEK_IL9322=m
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set
|
||||
# CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set
|
||||
CONFIG_DRM_PANEL_INNOLUX_EJ030NA=m
|
||||
# CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set
|
||||
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
|
||||
# CONFIG_DRM_PANEL_JDI_R63452 is not set
|
||||
# CONFIG_DRM_PANEL_KHADAS_TS050 is not set
|
||||
# CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04 is not set
|
||||
# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
|
||||
# CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 is not set
|
||||
CONFIG_DRM_PANEL_SAMSUNG_LD9040=m
|
||||
CONFIG_DRM_PANEL_LG_LB035Q02=m
|
||||
CONFIG_DRM_PANEL_LG_LG4573=m
|
||||
CONFIG_DRM_PANEL_NEC_NL8048HL11=m
|
||||
# CONFIG_DRM_PANEL_NOVATEK_NT35510 is not set
|
||||
# CONFIG_DRM_PANEL_NOVATEK_NT35950 is not set
|
||||
# CONFIG_DRM_PANEL_NOVATEK_NT36672A is not set
|
||||
# CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set
|
||||
# CONFIG_DRM_PANEL_MANTIX_MLAF057WE51 is not set
|
||||
# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set
|
||||
# CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set
|
||||
# CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS is not set
|
||||
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
|
||||
CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
|
||||
# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
|
||||
# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
|
||||
# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set
|
||||
CONFIG_DRM_PANEL_SAMSUNG_S6D16D0=m
|
||||
CONFIG_DRM_PANEL_SAMSUNG_S6D27A1=m
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 is not set
|
||||
CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01=m
|
||||
CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=m
|
||||
# CONFIG_DRM_PANEL_SAMSUNG_SOFEF00 is not set
|
||||
# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set
|
||||
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
|
||||
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
|
||||
# CONFIG_DRM_PANEL_SHARP_LS060T1SX01 is not set
|
||||
# CONFIG_DRM_PANEL_SITRONIX_ST7701 is not set
|
||||
# CONFIG_DRM_PANEL_SITRONIX_ST7703 is not set
|
||||
# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
|
||||
# CONFIG_DRM_PANEL_SONY_ACX424AKP is not set
|
||||
# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
|
||||
# CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521 is not set
|
||||
# CONFIG_DRM_PANEL_TDO_TL070WSH30 is not set
|
||||
# CONFIG_DRM_PANEL_TPO_TD028TTEC1 is not set
|
||||
# CONFIG_DRM_PANEL_TPO_TPG110 is not set
|
||||
CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA=m
|
||||
CONFIG_DRM_PANEL_VISIONOX_RM69299=m
|
||||
# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set
|
||||
# CONFIG_DRM_PANEL_XINPENG_XPP055C272 is not set
|
||||
# end of Display Panels
|
||||
|
||||
CONFIG_DRM_BRIDGE=y
|
||||
@ -3600,46 +3654,49 @@ CONFIG_DRM_PANEL_BRIDGE=y
|
||||
#
|
||||
# Display Interface Bridges
|
||||
#
|
||||
# CONFIG_DRM_CDNS_DSI is not set
|
||||
# CONFIG_DRM_CHIPONE_ICN6211 is not set
|
||||
# CONFIG_DRM_CHRONTEL_CH7033 is not set
|
||||
# CONFIG_DRM_DISPLAY_CONNECTOR is not set
|
||||
# CONFIG_DRM_LONTIUM_LT8912B is not set
|
||||
# CONFIG_DRM_LONTIUM_LT9611 is not set
|
||||
# CONFIG_DRM_LONTIUM_LT9611UXC is not set
|
||||
# CONFIG_DRM_ITE_IT66121 is not set
|
||||
# CONFIG_DRM_LVDS_CODEC is not set
|
||||
# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
|
||||
# CONFIG_DRM_NWL_MIPI_DSI is not set
|
||||
# CONFIG_DRM_NXP_PTN3460 is not set
|
||||
# CONFIG_DRM_PARADE_PS8622 is not set
|
||||
# CONFIG_DRM_PARADE_PS8640 is not set
|
||||
# CONFIG_DRM_SIL_SII8620 is not set
|
||||
# CONFIG_DRM_SII902X is not set
|
||||
# CONFIG_DRM_SII9234 is not set
|
||||
# CONFIG_DRM_SIMPLE_BRIDGE is not set
|
||||
# CONFIG_DRM_THINE_THC63LVD1024 is not set
|
||||
# CONFIG_DRM_TOSHIBA_TC358762 is not set
|
||||
# CONFIG_DRM_TOSHIBA_TC358764 is not set
|
||||
# CONFIG_DRM_TOSHIBA_TC358767 is not set
|
||||
# CONFIG_DRM_TOSHIBA_TC358768 is not set
|
||||
# CONFIG_DRM_TOSHIBA_TC358775 is not set
|
||||
# CONFIG_DRM_TI_TFP410 is not set
|
||||
# CONFIG_DRM_TI_SN65DSI83 is not set
|
||||
# CONFIG_DRM_TI_SN65DSI86 is not set
|
||||
# CONFIG_DRM_TI_TPD12S015 is not set
|
||||
# CONFIG_DRM_ANALOGIX_ANX6345 is not set
|
||||
# CONFIG_DRM_ANALOGIX_ANX78XX is not set
|
||||
# CONFIG_DRM_ANALOGIX_ANX7625 is not set
|
||||
# CONFIG_DRM_I2C_ADV7511 is not set
|
||||
# CONFIG_DRM_CDNS_MHDP8546 is not set
|
||||
CONFIG_DRM_CDNS_DSI=m
|
||||
CONFIG_DRM_CHIPONE_ICN6211=m
|
||||
CONFIG_DRM_CHRONTEL_CH7033=m
|
||||
CONFIG_DRM_DISPLAY_CONNECTOR=m
|
||||
CONFIG_DRM_LONTIUM_LT8912B=m
|
||||
CONFIG_DRM_LONTIUM_LT9611=m
|
||||
CONFIG_DRM_LONTIUM_LT9611UXC=m
|
||||
CONFIG_DRM_ITE_IT66121=m
|
||||
CONFIG_DRM_LVDS_CODEC=m
|
||||
CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW=m
|
||||
CONFIG_DRM_NWL_MIPI_DSI=m
|
||||
CONFIG_DRM_NXP_PTN3460=m
|
||||
CONFIG_DRM_PARADE_PS8622=m
|
||||
CONFIG_DRM_PARADE_PS8640=m
|
||||
CONFIG_DRM_SIL_SII8620=m
|
||||
CONFIG_DRM_SII902X=m
|
||||
CONFIG_DRM_SII9234=m
|
||||
CONFIG_DRM_SIMPLE_BRIDGE=m
|
||||
CONFIG_DRM_THINE_THC63LVD1024=m
|
||||
CONFIG_DRM_TOSHIBA_TC358762=m
|
||||
CONFIG_DRM_TOSHIBA_TC358764=m
|
||||
CONFIG_DRM_TOSHIBA_TC358767=m
|
||||
CONFIG_DRM_TOSHIBA_TC358768=m
|
||||
CONFIG_DRM_TOSHIBA_TC358775=m
|
||||
CONFIG_DRM_TI_TFP410=m
|
||||
CONFIG_DRM_TI_SN65DSI83=m
|
||||
CONFIG_DRM_TI_SN65DSI86=m
|
||||
CONFIG_DRM_TI_TPD12S015=m
|
||||
CONFIG_DRM_ANALOGIX_ANX6345=m
|
||||
CONFIG_DRM_ANALOGIX_ANX78XX=m
|
||||
CONFIG_DRM_ANALOGIX_DP=m
|
||||
CONFIG_DRM_ANALOGIX_ANX7625=m
|
||||
CONFIG_DRM_I2C_ADV7511=m
|
||||
CONFIG_DRM_I2C_ADV7511_AUDIO=y
|
||||
CONFIG_DRM_I2C_ADV7511_CEC=y
|
||||
CONFIG_DRM_CDNS_MHDP8546=m
|
||||
# end of Display Interface Bridges
|
||||
|
||||
# CONFIG_DRM_ETNAVIV is not set
|
||||
# CONFIG_DRM_MXSFB is not set
|
||||
# CONFIG_DRM_ARCPGU is not set
|
||||
# CONFIG_DRM_GM12U320 is not set
|
||||
# CONFIG_DRM_SIMPLEDRM is not set
|
||||
CONFIG_DRM_GM12U320=m
|
||||
CONFIG_DRM_SIMPLEDRM=m
|
||||
# CONFIG_TINYDRM_HX8357D is not set
|
||||
# CONFIG_TINYDRM_ILI9163 is not set
|
||||
# CONFIG_TINYDRM_ILI9225 is not set
|
||||
@ -3677,7 +3734,7 @@ CONFIG_FB_TILEBLITTING=y
|
||||
# Frame buffer hardware drivers
|
||||
#
|
||||
# CONFIG_FB_UVESA is not set
|
||||
# CONFIG_FB_EFI is not set
|
||||
CONFIG_FB_EFI=y
|
||||
# CONFIG_FB_OPENCORES is not set
|
||||
# CONFIG_FB_S1D13XXX is not set
|
||||
# CONFIG_FB_SMSCUFX is not set
|
||||
@ -3685,17 +3742,43 @@ CONFIG_FB_UDL=m
|
||||
# CONFIG_FB_IBM_GXT4500 is not set
|
||||
# CONFIG_FB_VIRTUAL is not set
|
||||
# CONFIG_FB_METRONOME is not set
|
||||
# CONFIG_FB_SIMPLE is not set
|
||||
CONFIG_FB_SIMPLE=m
|
||||
# CONFIG_FB_SSD1307 is not set
|
||||
# end of Frame buffer Devices
|
||||
|
||||
#
|
||||
# Backlight & LCD device support
|
||||
#
|
||||
# CONFIG_LCD_CLASS_DEVICE is not set
|
||||
# CONFIG_BACKLIGHT_CLASS_DEVICE is not set
|
||||
CONFIG_LCD_CLASS_DEVICE=m
|
||||
CONFIG_LCD_L4F00242T03=m
|
||||
CONFIG_LCD_LMS283GF05=m
|
||||
CONFIG_LCD_LTV350QV=m
|
||||
CONFIG_LCD_ILI922X=m
|
||||
CONFIG_LCD_ILI9320=m
|
||||
CONFIG_LCD_TDO24M=m
|
||||
CONFIG_LCD_VGG2432A4=m
|
||||
CONFIG_LCD_PLATFORM=m
|
||||
CONFIG_LCD_AMS369FG06=m
|
||||
CONFIG_LCD_LMS501KF03=m
|
||||
CONFIG_LCD_HX8357=m
|
||||
CONFIG_LCD_OTM3225A=m
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=m
|
||||
CONFIG_BACKLIGHT_KTD253=m
|
||||
CONFIG_BACKLIGHT_PWM=m
|
||||
CONFIG_BACKLIGHT_QCOM_WLED=m
|
||||
CONFIG_BACKLIGHT_ADP8860=m
|
||||
CONFIG_BACKLIGHT_ADP8870=m
|
||||
CONFIG_BACKLIGHT_LM3630A=m
|
||||
CONFIG_BACKLIGHT_LM3639=m
|
||||
CONFIG_BACKLIGHT_LP855X=m
|
||||
CONFIG_BACKLIGHT_GPIO=m
|
||||
CONFIG_BACKLIGHT_LV5207LP=m
|
||||
CONFIG_BACKLIGHT_BD6107=m
|
||||
CONFIG_BACKLIGHT_ARCXCNN=m
|
||||
CONFIG_BACKLIGHT_LED=m
|
||||
# end of Backlight & LCD device support
|
||||
|
||||
CONFIG_VIDEOMODE_HELPERS=y
|
||||
CONFIG_HDMI=y
|
||||
|
||||
#
|
||||
@ -4074,6 +4157,8 @@ CONFIG_HID_PENMOUNT=m
|
||||
CONFIG_HID_PETALYNX=m
|
||||
CONFIG_HID_PICOLCD=m
|
||||
CONFIG_HID_PICOLCD_FB=y
|
||||
# CONFIG_HID_PICOLCD_BACKLIGHT is not set
|
||||
# CONFIG_HID_PICOLCD_LCD is not set
|
||||
CONFIG_HID_PICOLCD_LEDS=y
|
||||
CONFIG_HID_PLANTRONICS=m
|
||||
CONFIG_HID_PRIMAX=m
|
||||
@ -4559,7 +4644,19 @@ CONFIG_SIFIVE_L2_IRQ_DISABLE=y
|
||||
# end of SOC (System On Chip) specific Drivers
|
||||
|
||||
# CONFIG_PM_DEVFREQ is not set
|
||||
# CONFIG_EXTCON is not set
|
||||
CONFIG_EXTCON=m
|
||||
|
||||
#
|
||||
# Extcon Device Drivers
|
||||
#
|
||||
# CONFIG_EXTCON_FSA9480 is not set
|
||||
# CONFIG_EXTCON_GPIO is not set
|
||||
# CONFIG_EXTCON_MAX3355 is not set
|
||||
# CONFIG_EXTCON_PTN5150 is not set
|
||||
# CONFIG_EXTCON_RT8973A is not set
|
||||
# CONFIG_EXTCON_SM5502 is not set
|
||||
# CONFIG_EXTCON_USB_GPIO is not set
|
||||
# CONFIG_EXTCON_USBC_TUSB320 is not set
|
||||
# CONFIG_MEMORY is not set
|
||||
# CONFIG_IIO is not set
|
||||
CONFIG_PWM=y
|
||||
@ -4590,6 +4687,7 @@ CONFIG_RESET_STARFIVE_JH7100_AUDIO=y
|
||||
# PHY Subsystem
|
||||
#
|
||||
# CONFIG_GENERIC_PHY is not set
|
||||
CONFIG_GENERIC_PHY_MIPI_DPHY=y
|
||||
# CONFIG_PHY_CAN_TRANSCEIVER is not set
|
||||
|
||||
#
|
||||
|
@ -8,10 +8,10 @@ Subject: [PATCH] bootstrap: Change libexec dir
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs
|
||||
index d4875cfe1b06..798c45506373 100644
|
||||
index f5ae8103cb05..a41a80a6c359 100644
|
||||
--- a/src/bootstrap/dist.rs
|
||||
+++ b/src/bootstrap/dist.rs
|
||||
@@ -1004,7 +1004,7 @@ fn run(self, builder: &Builder<'_>) -> Option<GeneratedTarball> {
|
||||
@@ -981,7 +981,7 @@ fn run(self, builder: &Builder<'_>) -> Option<GeneratedTarball> {
|
||||
for dirent in fs::read_dir(cargo.parent().unwrap()).expect("read_dir") {
|
||||
let dirent = dirent.expect("read dir entry");
|
||||
if dirent.file_name().to_str().expect("utf8").starts_with("cargo-credential-") {
|
||||
|
@ -24,10 +24,10 @@ targets, as things break when this is done:
|
||||
4 files changed, 12 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/compiler/rustc_session/src/config.rs b/compiler/rustc_session/src/config.rs
|
||||
index fdedb7e6a4af..c12568e77d83 100644
|
||||
index 7a0d9a212c9d..a53bd70b224a 100644
|
||||
--- a/compiler/rustc_session/src/config.rs
|
||||
+++ b/compiler/rustc_session/src/config.rs
|
||||
@@ -1512,7 +1512,7 @@ pub fn parse_target_triple(
|
||||
@@ -1741,7 +1741,7 @@ pub fn parse_target_triple(
|
||||
early_error(error_format, &format!("target file {:?} does not exist", path))
|
||||
})
|
||||
}
|
||||
@ -50,10 +50,10 @@ index 165505ee7313..00a7f5c2f8c1 100644
|
||||
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||
f64:32:64-f80:32-n8:16:32-S128"
|
||||
diff --git a/compiler/rustc_target/src/spec/mod.rs b/compiler/rustc_target/src/spec/mod.rs
|
||||
index 273221360b8b..4bbfad8441f3 100644
|
||||
index 92678aed5b1a..52714d175dcc 100644
|
||||
--- a/compiler/rustc_target/src/spec/mod.rs
|
||||
+++ b/compiler/rustc_target/src/spec/mod.rs
|
||||
@@ -2296,6 +2296,15 @@ pub fn from_path(path: &Path) -> Result<Self, io::Error> {
|
||||
@@ -2392,6 +2392,15 @@ pub fn from_path(path: &Path) -> Result<Self, io::Error> {
|
||||
Ok(TargetTriple::TargetPath(canonicalized_path))
|
||||
}
|
||||
|
||||
@ -70,11 +70,11 @@ index 273221360b8b..4bbfad8441f3 100644
|
||||
///
|
||||
/// If this target is a path, the file name (without extension) is returned.
|
||||
diff --git a/compiler/rustc_target/src/spec/x86_64_unknown_linux_gnu.rs b/compiler/rustc_target/src/spec/x86_64_unknown_linux_gnu.rs
|
||||
index 085079e06e57..2dfa6a040b10 100644
|
||||
index aefbb398286a..6d902647eeea 100644
|
||||
--- a/compiler/rustc_target/src/spec/x86_64_unknown_linux_gnu.rs
|
||||
+++ b/compiler/rustc_target/src/spec/x86_64_unknown_linux_gnu.rs
|
||||
@@ -11,7 +11,7 @@ pub fn target() -> Target {
|
||||
SanitizerSet::ADDRESS | SanitizerSet::LEAK | SanitizerSet::MEMORY | SanitizerSet::THREAD;
|
||||
@@ -15,7 +15,7 @@ pub fn target() -> Target {
|
||||
| SanitizerSet::THREAD;
|
||||
|
||||
Target {
|
||||
- llvm_target: "x86_64-unknown-linux-gnu".to_string(),
|
||||
|
@ -9,7 +9,7 @@ We don't ship rust-lld.
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
diff --git a/compiler/rustc_target/src/spec/wasm_base.rs b/compiler/rustc_target/src/spec/wasm_base.rs
|
||||
index 4c954a1e567c..f1d5fbf83748 100644
|
||||
index 71aa279144bb..6ea5b5fa602c 100644
|
||||
--- a/compiler/rustc_target/src/spec/wasm_base.rs
|
||||
+++ b/compiler/rustc_target/src/spec/wasm_base.rs
|
||||
@@ -99,8 +99,7 @@ pub fn options() -> TargetOptions {
|
||||
|
273
rust/PKGBUILD
273
rust/PKGBUILD
@ -1,52 +1,73 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Johannes Löthberg <johannes@kyriasis.com>
|
||||
# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
|
||||
# Contributor: Alexander F Rødseth <xyproto@archlinux.org>
|
||||
# Contributor: Daniel Micay <danielmicay@gmail.com>
|
||||
# Contributor: userwithuid <userwithuid@gmail.com>
|
||||
|
||||
pkgname=('rust' 'rust-docs')
|
||||
pkgbase=rust
|
||||
pkgname=(rust rust-wasm rust-src)
|
||||
[ "${CARCH}" = 'x86_64' ] && pkgname+=(lib32-rust-libs rust-musl)
|
||||
epoch=1
|
||||
pkgver=1.59.0
|
||||
pkgver=1.60.0
|
||||
pkgrel=1
|
||||
|
||||
pkgdesc="Systems programming language focused on safety, speed and concurrency"
|
||||
url=https://www.rust-lang.org/
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
license=(MIT Apache)
|
||||
options=(!emptydirs !strip !lto)
|
||||
_llvm_ver=13.0.1
|
||||
|
||||
pkgdesc='Systems programming language focused on safety, speed and concurrency'
|
||||
url='https://www.rust-lang.org/'
|
||||
arch=(powerpc64le powerpc)
|
||||
license=('MIT' 'Apache')
|
||||
|
||||
makedepends=("llvm=$_llvm_ver" 'libffi' 'perl' 'python'
|
||||
'curl' 'cmake' 'ninja' 'rust')
|
||||
makedepends_powerpc64le=('rust')
|
||||
makedepends_x86_64=('rust')
|
||||
checkdepends=('procps-ng' 'gdb')
|
||||
|
||||
options=('!emptydirs' '!strip')
|
||||
|
||||
depends=(gcc-libs llvm-libs curl libssh2 gcc)
|
||||
makedepends=(rust "llvm=$_llvm_ver" libffi perl python cmake ninja wasi-libc lld)
|
||||
makedepends_x86_64=(lib32-gcc-libs musl)
|
||||
checkdepends=(procps-ng gdb)
|
||||
source=(
|
||||
"https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.gz"{,.asc}
|
||||
"https://github.com/llvm/llvm-project/releases/download/llvmorg-$_llvm_ver/compiler-rt-$_llvm_ver.src.tar.xz"{,.sig}
|
||||
0001-bootstrap-Change-libexec-dir.patch
|
||||
0001-cargo-Change-libexec-dir.patch
|
||||
0001-bootstrap-Change-libexec-dir.patch
|
||||
0002-compiler-Change-LLVM-targets.patch
|
||||
0003-compiler-Use-wasm-ld-for-wasm-targets.patch
|
||||
)
|
||||
sha256sums=('a7c8eeaee85bfcef84c96b02b3171d1e6540d15179ff83dddd9eafba185f85f9'
|
||||
sha256sums=('20ca826d1cf674daf8e22c4f8c4b9743af07973211c839b85839742314c838b7'
|
||||
'SKIP'
|
||||
'7b33955031f9a9c5d63077dedb0f99d77e4e7c996266952c1cec55626dca5dfc'
|
||||
'SKIP'
|
||||
'a2a8a7c6a5732f79cc92f81d3c8380589c4e2b9a996fb565bbefe42f66b62597'
|
||||
'0f8cfbe0387dd62909fe9cb9523223ae1c2319494e2caf5fa4d0592198631b3e'
|
||||
'977da945985dce4484ace8794cbc91241b1f3c27311c1a8b201231db6e1d19e5'
|
||||
'fcf3c4442ba6a9e59415652ce8514428b2e37b80c5fe7d07fb44259ad37abafb')
|
||||
validpgpkeys=('108F66205EAEB0AAA8DD5E1C85AB96E6FA1BE5FE' # Rust Language (Tag and Release Signing Key) <rust-key@rust-lang.org>
|
||||
'474E22316ABF4785A88C6E8EA2C794A986419D8A' # Tom Stellard <tstellar@redhat.com>
|
||||
'B6C8F98282B944E3B0D5C2530FC3042E345AD05D') # Hans Wennborg <hans@chromium.org>
|
||||
'7a69e38716957ff074c5f932a82bbea1d9a3713a3f39d9085977cdc8df336c43'
|
||||
'2ef851be0562d13431c5c81df0161f92984e79845fe986182225f2dae58a9452'
|
||||
'f8ea25693ba42c7e185aa8677218783fe0cd60a3370926cb6996ec898b43d691')
|
||||
validpgpkeys=(108F66205EAEB0AAA8DD5E1C85AB96E6FA1BE5FE # Rust Language (Tag and Release Signing Key) <rust-key@rust-lang.org>
|
||||
474E22316ABF4785A88C6E8EA2C794A986419D8A # Tom Stellard <tstellar@redhat.com>
|
||||
B6C8F98282B944E3B0D5C2530FC3042E345AD05D) # Hans Wennborg <hans@chromium.org>
|
||||
|
||||
case "${CARCH}" in
|
||||
powerpc64le)
|
||||
_rust_target='powerpc64le-unknown-linux-gnu'
|
||||
_config_targets='"powerpc64le-unknown-linux-gnu","wasm32-unknown-unknown","wasm32-wasi"'
|
||||
_config_target_extras=''
|
||||
;;
|
||||
powerpc)
|
||||
_rust_target='powerpc-unknown-linux-gnu'
|
||||
_config_targets='"powerpc-unknown-linux-gnu","wasm32-unknown-unknown","wasm32-wasi"'
|
||||
_config_target_extras=''
|
||||
;;
|
||||
riscv64)
|
||||
_rust_target='riscv64gc-unknown-linux-gnu'
|
||||
_config_targets='"riscv64gc-unknown-linux-gnu","wasm32-unknown-unknown","wasm32-wasi"'
|
||||
_config_target_extras=''
|
||||
;;
|
||||
x86_64)
|
||||
_rust_target="${CHOST}"
|
||||
_config_targets='"x86_64-unknown-linux-gnu","i686-unknown-linux-gnu","x86_64-unknown-linux-musl","wasm32-unknown-unknown","wasm32-wasi"'
|
||||
_config_target_extras='[target.x86_64-unknown-linux-musl]
|
||||
sanitizers = false
|
||||
musl-root = "/usr/lib/musl"'
|
||||
;;
|
||||
*) echo ":: Architecture is unsupported!"; return 1 ;;
|
||||
esac
|
||||
|
||||
prepare() {
|
||||
cd "rustc-$pkgver-src"
|
||||
cd rustc-$pkgver-src
|
||||
|
||||
# Patch bootstrap and cargo so credential helpers
|
||||
# are in /usr/lib instead of /usr/libexec
|
||||
@ -59,16 +80,6 @@ prepare() {
|
||||
# Use our wasm-ld
|
||||
patch -Np1 -i ../0003-compiler-Use-wasm-ld-for-wasm-targets.patch
|
||||
|
||||
BOOTSTRAP_PATH="/usr/bin"
|
||||
case "${CARCH}" in
|
||||
powerpc)
|
||||
BUILD_TOOLS='"cargo", "clippy", "rustfmt", "analysis", "src", "rust-demangler"'
|
||||
;;
|
||||
*)
|
||||
BUILD_TOOLS='"cargo", "rls", "clippy", "rustfmt", "analysis", "src", "rust-demangler"'
|
||||
;;
|
||||
esac
|
||||
|
||||
cat >config.toml <<END
|
||||
changelog-seen = 2
|
||||
profile = "user"
|
||||
@ -77,108 +88,162 @@ profile = "user"
|
||||
link-shared = true
|
||||
|
||||
[build]
|
||||
target = ["${CHOST}"]
|
||||
cargo = "${BOOTSTRAP_PATH}/cargo"
|
||||
rustc = "${BOOTSTRAP_PATH}/rustc"
|
||||
rustfmt = "${BOOTSTRAP_PATH}/rustfmt"
|
||||
target = [
|
||||
${_config_targets}
|
||||
]
|
||||
cargo = "/usr/bin/cargo"
|
||||
rustc = "/usr/bin/rustc"
|
||||
rustfmt = "/usr/bin/rustfmt"
|
||||
locked-deps = true
|
||||
vendor = true
|
||||
tools = [${BUILD_TOOLS}]
|
||||
tools = ["cargo", "rls", "clippy", "rustfmt", "analysis", "src", "rust-demangler"]
|
||||
sanitizers = true
|
||||
profiler = true
|
||||
|
||||
# Generating docs fails with the wasm32-* targets
|
||||
docs = false
|
||||
|
||||
[install]
|
||||
prefix = "/usr"
|
||||
|
||||
[rust]
|
||||
debuginfo-level-std = 2
|
||||
channel = "stable"
|
||||
description = "Arch POWER $pkgbase $epoch:$pkgver-$pkgrel"
|
||||
rpath = false
|
||||
backtrace-on-ice = true
|
||||
remap-debuginfo = true
|
||||
jemalloc = true
|
||||
|
||||
# LLVM crashes when passing an object through ThinLTO twice. This is triggered
|
||||
# when using rust code in cross-language LTO if libstd was built using ThinLTO.
|
||||
# http://blog.llvm.org/2019/09/closing-gap-cross-language-lto-between.html
|
||||
# https://github.com/rust-lang/rust/issues/54872
|
||||
codegen-units-std = 1
|
||||
|
||||
debuginfo-level-std = 2
|
||||
channel = "stable"
|
||||
rpath = false
|
||||
[dist]
|
||||
compression-formats = ["gz"]
|
||||
|
||||
[target.${CHOST}]
|
||||
[target.${_rust_target}]
|
||||
llvm-config = "/usr/bin/llvm-config"
|
||||
|
||||
${_config_target_extras}
|
||||
|
||||
[target.wasm32-unknown-unknown]
|
||||
sanitizers = false
|
||||
profiler = false
|
||||
|
||||
[target.wasm32-wasi]
|
||||
sanitizers = false
|
||||
profiler = false
|
||||
wasi-root = "/usr/share/wasi-sysroot"
|
||||
END
|
||||
}
|
||||
|
||||
_pick() {
|
||||
local p="$1" f d; shift
|
||||
for f; do
|
||||
d="$srcdir/$p/$f"
|
||||
mkdir -p "$(dirname "$d")"
|
||||
mv "$f" "$d"
|
||||
rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
|
||||
done
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "rustc-$pkgver-src"
|
||||
cd rustc-$pkgver-src
|
||||
|
||||
export RUST_BACKTRACE=1
|
||||
export RUST_COMPILER_RT_ROOT="$srcdir/compiler-rt-$_llvm_ver.src"
|
||||
[[ -d $RUST_COMPILER_RT_ROOT ]]
|
||||
|
||||
DESTDIR="$PWD"/dest-rust python ./x.py install -j "$(nproc)"
|
||||
DESTDIR="$srcdir/dest-rust" python ./x.py install -j "$(nproc)"
|
||||
|
||||
# Remove analysis data for libs that weren't installed
|
||||
# TODO: Find out where these come from
|
||||
local file lib
|
||||
while read -rd '' file; do
|
||||
lib="${file%.json}.rlib"
|
||||
lib="${lib/\/analysis\///lib/}"
|
||||
if [[ ! -e $lib ]]; then
|
||||
echo "missing '$lib'"
|
||||
rm -v "$file"
|
||||
fi
|
||||
done < <(find "dest-rust/usr/lib/rustlib" -path '*/analysis/*.json' -print0)
|
||||
cd ../dest-rust
|
||||
|
||||
# move docs and cross targets out of the way for splitting
|
||||
mv dest-rust/usr/share/doc dest-doc
|
||||
}
|
||||
|
||||
package_rust() {
|
||||
depends=('gcc-libs' 'llvm-libs' 'curl' 'libssh2')
|
||||
optdepends=('lldb: rust-lldb script'
|
||||
'gdb: rust-gdb script')
|
||||
provides=('cargo' 'rustfmt')
|
||||
conflicts=('cargo' 'rustfmt')
|
||||
replaces=('cargo' 'rustfmt' 'cargo-tree')
|
||||
|
||||
cd "rustc-$pkgver-src"
|
||||
|
||||
cp -a dest-rust/* "$pkgdir"
|
||||
install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE*
|
||||
|
||||
# delete unnecesary files, e.g. components and manifest files only used for the uninstall script
|
||||
cd "$pkgdir"/usr/lib/rustlib
|
||||
rm components install.log manifest-* rust-installer-version uninstall.sh
|
||||
# delete unnecessary files, e.g. files only used for the uninstall script
|
||||
rm usr/lib/rustlib/{components,install.log,rust-installer-version,uninstall.sh}
|
||||
rm usr/lib/rustlib/manifest-*
|
||||
|
||||
# rustbuild always installs copies of the shared libraries to /usr/lib,
|
||||
# overwrite them with symlinks to the per-architecture versions
|
||||
ln -srft "$pkgdir"/usr/lib x86_64-unknown-linux-gnu/lib/*.so
|
||||
ln -srft usr/lib usr/lib/rustlib/${_rust_target}/lib/*.so
|
||||
|
||||
install -d "$pkgdir"/usr/share/bash-completion/
|
||||
mv "$pkgdir"/etc/bash_completion.d "$pkgdir"/usr/share/bash-completion/completions
|
||||
case "${CARCH}" in
|
||||
x86_64)
|
||||
mkdir -p usr/lib32
|
||||
ln -srft usr/lib32 usr/lib/rustlib/i686-unknown-linux-gnu/lib/*.so
|
||||
;;
|
||||
esac
|
||||
|
||||
mkdir -p usr/share/bash-completion
|
||||
mv etc/bash_completion.d usr/share/bash-completion/completions
|
||||
|
||||
mkdir -p usr/share/licenses/rust
|
||||
mv -t usr/share/licenses/rust usr/share/doc/rust/{COPYRIGHT,LICENSE*}
|
||||
|
||||
case "${CARCH}" in
|
||||
x86_64)
|
||||
_pick dest-i686 usr/lib/rustlib/i686-unknown-linux-gnu usr/lib32
|
||||
_pick dest-musl usr/lib/rustlib/x86_64-unknown-linux-musl
|
||||
;;
|
||||
esac
|
||||
|
||||
_pick dest-wasm usr/lib/rustlib/wasm32-*
|
||||
_pick dest-src usr/lib/rustlib/src
|
||||
}
|
||||
|
||||
package_rust-docs() {
|
||||
pkgdesc='Documentation for the Rust programming language'
|
||||
package_rust() {
|
||||
optdepends=('lldb: rust-lldb script'
|
||||
'gdb: rust-gdb script')
|
||||
provides=(cargo rustfmt)
|
||||
conflicts=(cargo rustfmt 'rust-docs<1:1.56.1-3')
|
||||
replaces=(cargo rustfmt cargo-tree 'rust-docs<1:1.56.1-3')
|
||||
|
||||
cd "rustc-$pkgver-src"
|
||||
install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE*
|
||||
cp -a dest-rust/* "$pkgdir"
|
||||
}
|
||||
|
||||
install -d "$pkgdir"/usr/share/
|
||||
cp -a dest-doc "$pkgdir"/usr/share/doc
|
||||
package_lib32-rust-libs() {
|
||||
pkgdesc="32-bit target and libraries for Rust"
|
||||
depends=(rust lib32-gcc-libs)
|
||||
provides=(lib32-rust)
|
||||
conflicts=(lib32-rust)
|
||||
replaces=(lib32-rust)
|
||||
|
||||
cp -a dest-i686/* "$pkgdir"
|
||||
|
||||
mkdir -p "$pkgdir/usr/share/licenses"
|
||||
ln -s rust "$pkgdir/usr/share/licenses/$pkgname"
|
||||
}
|
||||
|
||||
package_rust-musl() {
|
||||
pkgdesc="Musl target for Rust"
|
||||
depends=(rust)
|
||||
|
||||
cp -a dest-musl/* "$pkgdir"
|
||||
|
||||
mkdir -p "$pkgdir/usr/share/licenses"
|
||||
ln -s rust "$pkgdir/usr/share/licenses/$pkgname"
|
||||
}
|
||||
|
||||
package_rust-wasm() {
|
||||
pkgdesc="WebAssembly targets for Rust"
|
||||
depends=(rust lld)
|
||||
|
||||
cp -a dest-wasm/* "$pkgdir"
|
||||
|
||||
mkdir -p "$pkgdir/usr/share/licenses"
|
||||
ln -s rust "$pkgdir/usr/share/licenses/$pkgname"
|
||||
}
|
||||
|
||||
package_rust-src() {
|
||||
pkgdesc="Source code for the Rust standard library"
|
||||
depends=(rust)
|
||||
|
||||
cp -a dest-src/* "$pkgdir"
|
||||
|
||||
mkdir -p "$pkgdir/usr/share/licenses"
|
||||
ln -s rust "$pkgdir/usr/share/licenses/$pkgname"
|
||||
}
|
||||
|
||||
# vim:set ts=2 sw=2 et:
|
||||
sha256sums=('0ad531a32f3c2e996b9322c6b7262a9cfe557e49ff3363adea07b575106cd770'
|
||||
'SKIP'
|
||||
'7b33955031f9a9c5d63077dedb0f99d77e4e7c996266952c1cec55626dca5dfc'
|
||||
'SKIP'
|
||||
'a2a8a7c6a5732f79cc92f81d3c8380589c4e2b9a996fb565bbefe42f66b62597'
|
||||
'0f8cfbe0387dd62909fe9cb9523223ae1c2319494e2caf5fa4d0592198631b3e'
|
||||
'977da945985dce4484ace8794cbc91241b1f3c27311c1a8b201231db6e1d19e5'
|
||||
'fcf3c4442ba6a9e59415652ce8514428b2e37b80c5fe7d07fb44259ad37abafb')
|
||||
sha256sums=('a7c8eeaee85bfcef84c96b02b3171d1e6540d15179ff83dddd9eafba185f85f9'
|
||||
'SKIP'
|
||||
'7b33955031f9a9c5d63077dedb0f99d77e4e7c996266952c1cec55626dca5dfc'
|
||||
'SKIP'
|
||||
'a2a8a7c6a5732f79cc92f81d3c8380589c4e2b9a996fb565bbefe42f66b62597'
|
||||
'0f8cfbe0387dd62909fe9cb9523223ae1c2319494e2caf5fa4d0592198631b3e'
|
||||
'977da945985dce4484ace8794cbc91241b1f3c27311c1a8b201231db6e1d19e5'
|
||||
'fcf3c4442ba6a9e59415652ce8514428b2e37b80c5fe7d07fb44259ad37abafb')
|
||||
|
130
shared-mime-info/MR_162.patch
Normal file
130
shared-mime-info/MR_162.patch
Normal file
@ -0,0 +1,130 @@
|
||||
From 5a406b06792e26a83c7346b3c2443c0bd8d4cdb2 Mon Sep 17 00:00:00 2001
|
||||
From: Eli Schwartz <eschwartz@archlinux.org>
|
||||
Date: Mon, 8 Nov 2021 18:22:47 -0500
|
||||
Subject: [PATCH] migrate from custom itstool to builtin msgfmt for creating
|
||||
translated XML
|
||||
|
||||
gettext upstream has supported this for a very long time (since 0.19.7
|
||||
via commit b3c2a5a242c36fbbaa0c5b17f975d6c638598a23, released in 2015),
|
||||
and itstool is (mostly) a legacy of the time before gettext had proper
|
||||
support for these sorts of use cases.
|
||||
|
||||
This is similar to the state of intltool, which is described at
|
||||
https://wiki.gnome.org/MigratingFromIntltoolToGettext
|
||||
|
||||
During the port from autotools to meson, the legacy use of itstool was
|
||||
faithfully translated to meson in the only way possible: by jumping
|
||||
through hoops to run ninja inside ninja in order to generate the .mo
|
||||
files for itstool, because meson's i18n module used a flawed design and
|
||||
there was no "real" target to create those files, only a .PHONY
|
||||
run_target which other rules cannot depend on.
|
||||
|
||||
Although meson 0.60.0 added support for real targets for the built .mo
|
||||
files, this changed the rules for output filenames, breaking the script.
|
||||
|
||||
But msgfmt does not care, and anyways comes with builtin meson functions
|
||||
for convenient use with XML files. So let's take this opportunity to
|
||||
drop legacy dependencies and use the modern, builtin tooling, which
|
||||
fixes this bug as a side effect.
|
||||
|
||||
Fixes #170
|
||||
---
|
||||
.gitlab-ci.yml | 2 --
|
||||
README.md | 2 +-
|
||||
data/freedesktop_generate.sh | 12 ------------
|
||||
data/meson.build | 16 +++++-----------
|
||||
meson.build | 1 -
|
||||
5 files changed, 6 insertions(+), 27 deletions(-)
|
||||
delete mode 100755 data/freedesktop_generate.sh
|
||||
|
||||
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
|
||||
index 985dfe9..345e1ce 100644
|
||||
--- a/.gitlab-ci.yml
|
||||
+++ b/.gitlab-ci.yml
|
||||
@@ -9,7 +9,6 @@ variables:
|
||||
glib2-devel
|
||||
gettext
|
||||
git
|
||||
- itstool
|
||||
xmlto
|
||||
findutils
|
||||
gettext-devel
|
||||
@@ -34,4 +33,3 @@ build:meson:
|
||||
paths:
|
||||
- _build/meson-logs/*.txt
|
||||
- _build/meson-dist/*.*
|
||||
-
|
||||
diff --git a/README.md b/README.md
|
||||
index c23d9d5..b2fb0ac 100644
|
||||
--- a/README.md
|
||||
+++ b/README.md
|
||||
@@ -19,7 +19,7 @@ $ ninja -v -C _build install
|
||||
```
|
||||
|
||||
It requires the glib development package to be installed as well as
|
||||
-gettext and itstool.
|
||||
+gettext.
|
||||
This database is translated at Transifex.
|
||||
|
||||
|
||||
diff --git a/data/freedesktop_generate.sh b/data/freedesktop_generate.sh
|
||||
deleted file mode 100755
|
||||
index 62ccffa..0000000
|
||||
--- a/data/freedesktop_generate.sh
|
||||
+++ /dev/null
|
||||
@@ -1,12 +0,0 @@
|
||||
-#!/bin/sh -e
|
||||
-
|
||||
-src_root="$1"
|
||||
-build_root="$2"
|
||||
-
|
||||
-${NINJA:-ninja} -C "${build_root}" shared-mime-info-gmo
|
||||
-
|
||||
-itstool \
|
||||
- --its "${src_root}/data/its/shared-mime-info.its" \
|
||||
- --join "${src_root}/data/freedesktop.org.xml.in" \
|
||||
- -o "${build_root}/data/freedesktop.org.xml" \
|
||||
- "${build_root}/po/"*".gmo"
|
||||
diff --git a/data/meson.build b/data/meson.build
|
||||
index 24361c9..09ed7a9 100644
|
||||
--- a/data/meson.build
|
||||
+++ b/data/meson.build
|
||||
@@ -1,18 +1,12 @@
|
||||
|
||||
install_man('update-mime-database.1')
|
||||
|
||||
-freedesktop_org_xml = custom_target('freedesktop.org.xml',
|
||||
- input : files(
|
||||
- 'freedesktop.org.xml.in',
|
||||
- 'its/shared-mime-info.its',
|
||||
- 'its/shared-mime-info.loc',
|
||||
- ),
|
||||
+freedesktop_org_xml = i18n.merge_file(
|
||||
+ input: 'freedesktop.org.xml.in',
|
||||
output: 'freedesktop.org.xml',
|
||||
- command: [
|
||||
- find_program('freedesktop_generate.sh'),
|
||||
- meson.source_root(),
|
||||
- meson.build_root()
|
||||
- ],
|
||||
+ data_dirs: '.',
|
||||
+ po_dir: '../po',
|
||||
+ type: 'xml',
|
||||
install: true,
|
||||
install_dir: get_option('datadir') / 'mime' / 'packages',
|
||||
)
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 0d08c8a..60f17ae 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -20,7 +20,6 @@ config.set_quoted('VERSION', meson.project_version())
|
||||
###############################################################################
|
||||
# Find tools
|
||||
|
||||
-itstool = find_program('itstool')
|
||||
xmllint = find_program('xmllint')
|
||||
xmlto = find_program('xmlto', required: false)
|
||||
|
||||
--
|
||||
GitLab
|
||||
|
@ -6,8 +6,7 @@ pkgname=spice
|
||||
pkgver=0.15.0
|
||||
pkgrel=1
|
||||
pkgdesc="SPICE server"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(riscv64)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="https://www.spice-space.org"
|
||||
license=('LGPL2.1')
|
||||
depends=('pixman' 'opus' 'libjpeg-turbo' 'glib2' 'libsasl' 'lz4')
|
||||
|
34
spice/build-Correctly-check-for-Python-modules.patch
Normal file
34
spice/build-Correctly-check-for-Python-modules.patch
Normal file
@ -0,0 +1,34 @@
|
||||
From a7b5474bf808934cf0ee1107a58d5f4d97b9afbf Mon Sep 17 00:00:00 2001
|
||||
From: Frediano Ziglio <freddy77@gmail.com>
|
||||
Date: Thu, 28 Oct 2021 16:45:34 +0100
|
||||
Subject: build: Correctly check for Python modules
|
||||
|
||||
Currently using Meson the command "python -m <MODULE_NAME>" is
|
||||
run. However this command instead of trying to import the module
|
||||
tried to execute it as a script failing for the updated pyparsing
|
||||
with:
|
||||
|
||||
/usr/bin/python3: No module named pyparsing.__main__; 'pyparsing' is a package and cannot be directly executed
|
||||
|
||||
So instead use "python -c 'import <MODULE_NAME>".
|
||||
Autoconf is already using that command (see m4/ax_python_module.m4).
|
||||
|
||||
Signed-off-by: Frediano Ziglio <freddy77@gmail.com>
|
||||
---
|
||||
subprojects/spice-common/meson.build | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/subprojects/spice-common/meson.build b/subprojects/spice-common/meson.build
|
||||
index aff6243..eeccecd 100644
|
||||
--- a/subprojects/spice-common/meson.build
|
||||
+++ b/subprojects/spice-common/meson.build
|
||||
@@ -132,7 +132,7 @@ if spice_common_generate_client_code or spice_common_generate_server_code
|
||||
if get_option('python-checks')
|
||||
foreach module : ['six', 'pyparsing']
|
||||
message('Checking for python module @0@'.format(module))
|
||||
- cmd = run_command(python, '-m', module)
|
||||
+ cmd = run_command(python, '-c', 'import @0@'.format(module))
|
||||
if cmd.returncode() != 0
|
||||
error('Python module @0@ not found'.format(module))
|
||||
endif
|
||||
--
|
49
svt-av1/PKGBUILD
Normal file
49
svt-av1/PKGBUILD
Normal file
@ -0,0 +1,49 @@
|
||||
# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
|
||||
# Contributor: Daniel Bermond <dbermond@archlinux.org>
|
||||
# Contributor: Thomas Schneider <maxmusterm@gmail.com>
|
||||
|
||||
pkgname=svt-av1
|
||||
pkgver=0.9.0
|
||||
pkgrel=2
|
||||
pkgdesc='Scalable Video Technology AV1 encoder and decoder'
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url=https://gitlab.com/AOMediaCodec/SVT-AV1
|
||||
license=(
|
||||
BSD
|
||||
'custom: Alliance for Open Media Patent License 1.0'
|
||||
)
|
||||
depends=(glibc)
|
||||
makedepends=(
|
||||
cmake
|
||||
git
|
||||
ninja
|
||||
)
|
||||
makedepends_x86_64=(nasm)
|
||||
_tag=fdf4f36867bba068e221965d12c5975c509845da
|
||||
source=(git+https://gitlab.com/AOMediaCodec/SVT-AV1.git#tag=${_tag})
|
||||
b2sums=(SKIP)
|
||||
|
||||
prepare() {
|
||||
sed '/CMAKE_BUILD_TYPE Release/d' -i SVT-AV1/CMakeLists.txt
|
||||
}
|
||||
|
||||
pkgver() {
|
||||
cd SVT-AV1
|
||||
git describe --tags | sed 's/^v//'
|
||||
}
|
||||
|
||||
build() {
|
||||
export LDFLAGS="$LDFLAGS -Wl,-z,noexecstack"
|
||||
cmake -S SVT-AV1 -B build -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DNATIVE=OFF
|
||||
ninja -C build
|
||||
}
|
||||
|
||||
package() {
|
||||
DESTDIR="${pkgdir}" ninja -C build install
|
||||
install -Dm 644 SVT-AV1/{LICENSE,PATENTS}.md -t "${pkgdir}"/usr/share/licenses/svt-av1/
|
||||
}
|
||||
|
||||
# vim: ts=2 sw=2 et:
|
@ -1,28 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Kevin Daudt <kdaudt@alpinelinux.org>
|
||||
Date: Sun, 12 Dec 2021 13:38:48 +0000
|
||||
Subject: [PATCH] Bug 1745560 - Add missing stub for wl_proxy_marshal_flags,
|
||||
r=stransky
|
||||
|
||||
Firefox fails to build against wayland 1.20 because this symbol is missing
|
||||
|
||||
Differential Revision: https://phabricator.services.mozilla.com/D133583
|
||||
---
|
||||
widget/gtk/mozwayland/mozwayland.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/widget/gtk/mozwayland/mozwayland.c b/widget/gtk/mozwayland/mozwayland.c
|
||||
index 7a448e6321e2..1a86468b4f3d 100644
|
||||
--- a/widget/gtk/mozwayland/mozwayland.c
|
||||
+++ b/widget/gtk/mozwayland/mozwayland.c
|
||||
@@ -200,3 +200,10 @@ MOZ_EXPORT int wl_list_empty(const struct wl_list* list) { return -1; }
|
||||
|
||||
MOZ_EXPORT void wl_list_insert_list(struct wl_list* list,
|
||||
struct wl_list* other) {}
|
||||
+
|
||||
+MOZ_EXPORT struct wl_proxy* wl_proxy_marshal_flags(
|
||||
+ struct wl_proxy* proxy, uint32_t opcode,
|
||||
+ const struct wl_interface* interface, uint32_t version, uint32_t flags,
|
||||
+ ...) {
|
||||
+ return NULL;
|
||||
+}
|
@ -8,7 +8,7 @@
|
||||
|
||||
pkgbase=thunderbird
|
||||
pkgname=(thunderbird)
|
||||
pkgver=91.5.0
|
||||
pkgver=91.8.1
|
||||
pkgrel=1
|
||||
pkgdesc='Standalone mail and news reader from mozilla.org'
|
||||
url='https://www.mozilla.org/thunderbird/'
|
||||
@ -44,8 +44,7 @@ source=(https://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/$pkgver/sou
|
||||
flac-no-ffvpx.patch
|
||||
skia-sucks1.patch
|
||||
skia-sucks2.patch
|
||||
skia-sucks3.patch
|
||||
Add-missing-stub-for-wl_proxy_marshal_fl.patch)
|
||||
skia-sucks3.patch)
|
||||
validpgpkeys=(
|
||||
14F26682D0916CDD81E37B6D61B7B526D98F0353 # Mozilla Software Releases <release@mozilla.com>
|
||||
4360FE2109C49763186F8E21EBE41E90F6F12F6D # Mozilla Software Releases <release@mozilla.com>
|
||||
@ -155,7 +154,7 @@ END
|
||||
"$pkgdir/usr/lib/$pkgname/thunderbird-bin"
|
||||
}
|
||||
|
||||
sha256sums=('425dacc0ae227a4209b77daf674b33295262f2ecf36022216cd07724954e9e6d'
|
||||
sha256sums=('82737d29b89f39620fbdfc47e84d053edad903c72057526ff2a8215fd73e283d'
|
||||
'SKIP'
|
||||
'e44c55501f650a4e80b9c353b81f33e07ca65808db831eff6ca616aded233827'
|
||||
'fa11b4736bbf53ec015f71cd42b1040b22d1a855c562b76927b3f0eccb925c85'
|
||||
@ -171,24 +170,4 @@ sha256sums=('425dacc0ae227a4209b77daf674b33295262f2ecf36022216cd07724954e9e6d'
|
||||
'944fc690a0b344ea56ff2b0880ba492ba80338a68f31d0fb205b891a5de42cee'
|
||||
'9cdffb3f91e0956f4147c8556c80b97bcae448b84ce0d0a0e009a231a9915396'
|
||||
'd98af26b723a8b590822a3d1ab925841b99882c158d3dec7514288c968f2428e'
|
||||
'851503764a3068d36659b9231c9aaa40fe8a15680f7d0a378e9009ae1a776dae')
|
||||
|
||||
# vim:set sw=2 et:
|
||||
sha256sums=('b89a8e1b57d5be828a7346e817120d7c763a258a2397a23393b7ceb3ce810ab2'
|
||||
'SKIP'
|
||||
'e44c55501f650a4e80b9c353b81f33e07ca65808db831eff6ca616aded233827'
|
||||
'fa11b4736bbf53ec015f71cd42b1040b22d1a855c562b76927b3f0eccb925c85'
|
||||
'bc3aae2cc00dc9806f54606f98d967366a2ba7223f6a3ad1c658a653ebff5569'
|
||||
'1c5d830f2dd4e8c988fcc038121e7563a44af866d6283ee24274d16f8414d1b6'
|
||||
'ace80afd8dadb000e324e400d5a8f9f2e4ad214b32844bf23236f604c5f88db1'
|
||||
'd1a81bdadc6cc1b96aeb7898e986efbb132a1ce142611b7af2cf744f00cad601'
|
||||
'3ebba6c6c59dbf754b522d2535c27eae3e724aab575b8e7be9658e0d33183bcf'
|
||||
'0df637d44218524e213814d15d623f27724d8e405390173f6cc385e145110bfe'
|
||||
'cd9baa74c6dd7e2a689b072ac039c3fe4618012dd8f11d4ca422369a842d6441'
|
||||
'ad83c0c6195ab742848941be1d9c8f32c1d4a8bc019d8887b42256bafaefb541'
|
||||
'958cf5016e9845b6ee6e2ed05ad96cc2fc6f74bebbb338a7b7ce29bffd2be716'
|
||||
'944fc690a0b344ea56ff2b0880ba492ba80338a68f31d0fb205b891a5de42cee'
|
||||
'9cdffb3f91e0956f4147c8556c80b97bcae448b84ce0d0a0e009a231a9915396'
|
||||
'd98af26b723a8b590822a3d1ab925841b99882c158d3dec7514288c968f2428e'
|
||||
'851503764a3068d36659b9231c9aaa40fe8a15680f7d0a378e9009ae1a776dae')
|
||||
|
||||
'851503764a3068d36659b9231c9aaa40fe8a15680f7d0a378e9009ae1a776dae')
|
||||
|
@ -5,67 +5,57 @@
|
||||
|
||||
pkgname=x265
|
||||
pkgver=3.5
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc='Open Source H265/HEVC video encoder'
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url=https://bitbucket.org/multicoreware/x265
|
||||
url=https://bitbucket.org/multicoreware/x265_git
|
||||
license=(GPL)
|
||||
depends=(gcc-libs)
|
||||
makedepends=(
|
||||
cmake
|
||||
git
|
||||
git
|
||||
ninja
|
||||
)
|
||||
makedepends_x86_64=(nasm)
|
||||
provides=(libx265.so)
|
||||
_tag=f0c1022b6be121a753ff02853fbe33da71988656
|
||||
source=("x265::git+https://bitbucket.org/multicoreware/x265_git#tag=${_tag}")
|
||||
sha256sums=(SKIP)
|
||||
source=(git+https://bitbucket.org/multicoreware/x265_git#tag=${_tag})
|
||||
sha256sums=('SKIP')
|
||||
|
||||
prepare() {
|
||||
cd x265
|
||||
pkgver() {
|
||||
cd x265_git
|
||||
|
||||
for d in 8 10 12; do
|
||||
if [[ -d build-$d ]]; then
|
||||
rm -rf build-$d
|
||||
fi
|
||||
mkdir build-$d
|
||||
done
|
||||
git describe --tags
|
||||
}
|
||||
|
||||
build() {
|
||||
export CFLAGS=${CFLAGS/-mabi=altivec -maltivec/}
|
||||
export CXXFLAGS=${CXXFLAGS/-mabi=altivec -maltivec/}
|
||||
case "${CARCH}" in
|
||||
powerpc) PLATFORM_FLAGS="-DENABLE_ALTIVEC=ON" ;;
|
||||
powerpc64e) PLATFORM_FLAGS="-DENABLE_ALTIVEC=ON -DENABLE_PIC=ON" ;;
|
||||
*) PLATFORM_FLAGS="" ;;
|
||||
esac
|
||||
|
||||
cd x265/build-12
|
||||
|
||||
cmake ../source \
|
||||
cmake -S x265_git/source -B build-12 -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DHIGH_BIT_DEPTH=TRUE \
|
||||
-DMAIN12=TRUE \
|
||||
-DEXPORT_C_API=FALSE \
|
||||
-DENABLE_CLI=FALSE \
|
||||
-DENABLE_SHARED=FALSE \
|
||||
-DENABLE_ALTIVEC='OFF' \
|
||||
-DENABLE_PIC='ON'
|
||||
make
|
||||
-Wno-dev ${PLATFORM_FLAGS}
|
||||
ninja -C build-12
|
||||
|
||||
cd ../build-10
|
||||
|
||||
cmake ../source \
|
||||
cmake -S x265_git/source -B build-10 -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DHIGH_BIT_DEPTH=TRUE \
|
||||
-DEXPORT_C_API=FALSE \
|
||||
-DENABLE_CLI=FALSE \
|
||||
-DENABLE_SHARED=FALSE \
|
||||
-DENABLE_ALTIVEC='OFF' \
|
||||
-DENABLE_PIC='ON'
|
||||
make
|
||||
-Wno-dev ${PLATFORM_FLAGS}
|
||||
ninja -C build-10
|
||||
|
||||
cd ../build-8
|
||||
|
||||
ln -s ../build-10/libx265.a libx265_main10.a
|
||||
ln -s ../build-12/libx265.a libx265_main12.a
|
||||
|
||||
cmake ../source \
|
||||
cmake -S x265_git/source -B build -G Ninja \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DENABLE_SHARED=TRUE \
|
||||
-DENABLE_HDR10_PLUS=TRUE \
|
||||
@ -73,15 +63,14 @@ build() {
|
||||
-DEXTRA_LINK_FLAGS='-L .' \
|
||||
-DLINKED_10BIT=TRUE \
|
||||
-DLINKED_12BIT=TRUE \
|
||||
-DENABLE_ALTIVEC='OFF' \
|
||||
-DENABLE_PIC='ON'
|
||||
make
|
||||
-Wno-dev ${PLATFORM_FLAGS}
|
||||
ln -s ../build-10/libx265.a build/libx265_main10.a
|
||||
ln -s ../build-12/libx265.a build/libx265_main12.a
|
||||
ninja -C build
|
||||
}
|
||||
|
||||
package() {
|
||||
cd x265/build-8
|
||||
|
||||
make DESTDIR="${pkgdir}" install
|
||||
DESTDIR="${pkgdir}" ninja -C build install
|
||||
}
|
||||
|
||||
# vim: ts=2 sw=2 et:
|
||||
|
11
x265/x265-3.5-ppc64.patch
Normal file
11
x265/x265-3.5-ppc64.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- source/CMakeLists.txt.orig 2022-04-04 20:03:06.107355488 +0200
|
||||
+++ source/CMakeLists.txt 2022-04-04 20:03:18.450147724 +0200
|
||||
@@ -43,7 +43,7 @@
|
||||
set(ARM_ALIASES armv6l armv7l aarch64)
|
||||
list(FIND X86_ALIASES "${SYSPROC}" X86MATCH)
|
||||
list(FIND ARM_ALIASES "${SYSPROC}" ARMMATCH)
|
||||
-set(POWER_ALIASES ppc64 ppc64le)
|
||||
+set(POWER_ALIASES ppc64 ppc64le powerpc64 powerpc64le)
|
||||
list(FIND POWER_ALIASES "${SYSPROC}" POWERMATCH)
|
||||
if("${SYSPROC}" STREQUAL "" OR X86MATCH GREATER "-1")
|
||||
set(X86 1)
|
@ -0,0 +1,44 @@
|
||||
From 0f007b28a8c3d59ff227483359a37ac29aa08648 Mon Sep 17 00:00:00 2001
|
||||
From: fulalas <rcd99@zipmail.com.br>
|
||||
Date: Fri, 18 Feb 2022 20:19:48 +0100
|
||||
Subject: [PATCH] Fixed some window buttons not appearing in the panel (Issue
|
||||
#188)
|
||||
|
||||
---
|
||||
plugins/tasklist/tasklist-widget.c | 16 ----------------
|
||||
1 file changed, 16 deletions(-)
|
||||
|
||||
diff --git a/plugins/tasklist/tasklist-widget.c b/plugins/tasklist/tasklist-widget.c
|
||||
index 83d1f09d..eb78f882 100644
|
||||
--- a/plugins/tasklist/tasklist-widget.c
|
||||
+++ b/plugins/tasklist/tasklist-widget.c
|
||||
@@ -2872,20 +2872,6 @@ xfce_tasklist_button_geometry_changed2 (WnckWindow *window,
|
||||
|
||||
|
||||
|
||||
-static gboolean
|
||||
-xfce_tasklist_button_size_allocate (GtkWidget *widget,
|
||||
- GdkRectangle *allocation,
|
||||
- gpointer user_data)
|
||||
-{
|
||||
- XfceTasklistChild *child = user_data;
|
||||
- /* Make sure the icons have the correct size */
|
||||
- xfce_tasklist_button_icon_changed (child->window, child);
|
||||
-
|
||||
- return TRUE;
|
||||
-}
|
||||
-
|
||||
-
|
||||
-
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
static void
|
||||
xfce_tasklist_button_geometry_changed (WnckWindow *window,
|
||||
@@ -3561,8 +3547,6 @@ xfce_tasklist_button_new (WnckWindow *window,
|
||||
G_CALLBACK (xfce_tasklist_button_button_release_event), child);
|
||||
|
||||
/* monitor window changes */
|
||||
- g_signal_connect (G_OBJECT (child->button), "size-allocate",
|
||||
- G_CALLBACK (xfce_tasklist_button_size_allocate), child);
|
||||
g_signal_connect (G_OBJECT (window), "icon-changed",
|
||||
G_CALLBACK (xfce_tasklist_button_icon_changed), child);
|
||||
g_signal_connect (G_OBJECT (window), "name-changed",
|
Loading…
x
Reference in New Issue
Block a user