* updates & rebuilds for:
* Python 3.10 * Protobuf 3.19 * ICU 70.1 * boost 1.78.0 * FFMPEG 5.0
This commit is contained in:
parent
22e9d90548
commit
257c394be0
@ -4,8 +4,8 @@
|
||||
# Contributor: Wieland Hoffmann <the_mineo@web.de>
|
||||
|
||||
pkgname=chromaprint
|
||||
pkgver=1.5.0
|
||||
pkgrel=3
|
||||
pkgver=1.5.1
|
||||
pkgrel=3.1
|
||||
pkgdesc="Library for extracting fingerprints from any audio source"
|
||||
url="https://acoustid.org/chromaprint"
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
@ -14,14 +14,15 @@ depends=('gcc-libs' 'glibc')
|
||||
makedepends=('cmake' 'ffmpeg' 'gtest')
|
||||
provides=('libchromaprint.so')
|
||||
# upstream signs with DSA key: https://github.com/acoustid/chromaprint/issues/81
|
||||
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/acoustid/${pkgname}/archive/v${pkgver}.tar.gz")
|
||||
sha512sums=('333114949928abdf5d4b11aba1db6ec487eebe526324c68d903b3fa80a3af87a28d942af765a2f873e63a1bf222b658b6438cd10cde4446f61b26ea91f537469')
|
||||
b2sums=('930d1a7b8fa30dc726f78e3fc93c4e1aef5036b60ceee003c36ce7ea344523ce8b3abc294a4204e9acb6472600e7cfa5b15b1ca27c2917bd161b59cac1e7120c')
|
||||
source=(https://github.com/acoustid/${pkgname}/archive/v$pkgver/$pkgname-$pkgver.tar.gz
|
||||
ffmpeg5.patch)
|
||||
sha512sums=('ea16e4d2b879c15b1d9b9ec93878da8b893f1834c70942663e1d2d106c2e0a661094fe2dd3bae7a6c2a1f9d5d8fab5e0b0ba493561090cf57b2228606fad1e66'
|
||||
'2d44d4ce2f070e48c1600b8eca386e5610262084aa1de83e46adcd2154fc178faed95a66a3f2d0b8519faa2bae666e6f7337e8a364c04e87cd5c325cbbd2328f')
|
||||
b2sums=('9f7f030e97d3114cf679df298d313ea826c0fb05e7e7d8a10090d0a27ed0811b380b81b29fce973e0493826c478964367396311fd0484619cb2fc4c2d8e0d4c0'
|
||||
'9e67be84d26a69916e1846533e98808044412d495abb7a5725141dd81833ac87992ba4a0a49e804c3c7ffe7b01dc2b9e112d6109643654f7fd33f422042bc3a4')
|
||||
|
||||
prepare() {
|
||||
cd "${pkgname}-${pkgver}"
|
||||
# the vendored cmake module does not find gtest
|
||||
rm -v cmake/modules/FindGTest.cmake
|
||||
patch -d $pkgname-$pkgver -p1 < ffmpeg5.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
|
74
chromaprint/ffmpeg5.patch
Normal file
74
chromaprint/ffmpeg5.patch
Normal file
@ -0,0 +1,74 @@
|
||||
From 6d938d70b1d52634f8b0d88cb29da87f8d5b35a2 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Bernhard=20Rosenkr=C3=A4nzer?= <bero@lindev.ch>
|
||||
Date: Mon, 17 Jan 2022 04:41:33 +0100
|
||||
Subject: [PATCH] Port to ffmpeg 5.0
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Replace removed functionality like accessing the codec context
|
||||
from an AVStream and avcodec_decode_audio4()
|
||||
|
||||
Signed-off-by: Bernhard Rosenkränzer <bero@lindev.ch>
|
||||
---
|
||||
src/audio/ffmpeg_audio_reader.h | 24 ++++++++++++++++++++++--
|
||||
1 file changed, 22 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/audio/ffmpeg_audio_reader.h b/src/audio/ffmpeg_audio_reader.h
|
||||
index 5550164..a3b8de7 100644
|
||||
--- a/src/audio/ffmpeg_audio_reader.h
|
||||
+++ b/src/audio/ffmpeg_audio_reader.h
|
||||
@@ -74,7 +74,7 @@ class FFmpegAudioReader {
|
||||
uint8_t *m_convert_buffer[1] = { nullptr };
|
||||
int m_convert_buffer_nb_samples = 0;
|
||||
|
||||
- AVInputFormat *m_input_fmt = nullptr;
|
||||
+ const AVInputFormat *m_input_fmt = nullptr;
|
||||
AVDictionary *m_input_opts = nullptr;
|
||||
|
||||
AVFormatContext *m_format_ctx = nullptr;
|
||||
@@ -153,7 +153,7 @@ inline bool FFmpegAudioReader::Open(const std::string &file_name) {
|
||||
return false;
|
||||
}
|
||||
|
||||
- AVCodec *codec;
|
||||
+ const AVCodec *codec;
|
||||
ret = av_find_best_stream(m_format_ctx, AVMEDIA_TYPE_AUDIO, -1, -1, &codec, 0);
|
||||
if (ret < 0) {
|
||||
SetError("Could not find any audio stream in the file", ret);
|
||||
@@ -161,7 +161,13 @@ inline bool FFmpegAudioReader::Open(const std::string &file_name) {
|
||||
}
|
||||
m_stream_index = ret;
|
||||
|
||||
+#if LIBAVCODEC_VERSION_MAJOR >= 59
|
||||
+ const AVCodec *streamcodec = avcodec_find_decoder(m_format_ctx->streams[m_stream_index]->codecpar->codec_id);
|
||||
+ m_codec_ctx = avcodec_alloc_context3(streamcodec);
|
||||
+ avcodec_parameters_to_context(m_codec_ctx, m_format_ctx->streams[m_stream_index]->codecpar);
|
||||
+#else
|
||||
m_codec_ctx = m_format_ctx->streams[m_stream_index]->codec;
|
||||
+#endif
|
||||
m_codec_ctx->request_sample_fmt = AV_SAMPLE_FMT_S16;
|
||||
|
||||
ret = avcodec_open2(m_codec_ctx, codec, nullptr);
|
||||
@@ -278,7 +284,21 @@ inline bool FFmpegAudioReader::Read(const int16_t **data, size_t *size) {
|
||||
}
|
||||
}
|
||||
|
||||
+#if LIBAVCODEC_VERSION_MAJOR < 59
|
||||
ret = avcodec_decode_audio4(m_codec_ctx, m_frame, &m_got_frame, &m_packet);
|
||||
+#else
|
||||
+ ret = avcodec_receive_frame(m_codec_ctx, m_frame);
|
||||
+ if (ret == 0)
|
||||
+ m_got_frame = true;
|
||||
+ if(ret == AVERROR(EAGAIN))
|
||||
+ ret = 0;
|
||||
+ if (ret == 0)
|
||||
+ ret = avcodec_send_packet(m_codec_ctx, &m_packet);
|
||||
+ if (ret == AVERROR(EAGAIN))
|
||||
+ ret = 0;
|
||||
+ if (ret >= 0)
|
||||
+ ret = m_packet.size;
|
||||
+#endif
|
||||
if (ret < 0) {
|
||||
if (m_decode_error) {
|
||||
SetError("Error decoding audio frame", m_decode_error);
|
@ -1,196 +0,0 @@
|
||||
From 9d080c0934b848ee4a05013c78641e612fcc1e03 Mon Sep 17 00:00:00 2001
|
||||
From: Dylan Cutler <dylancutler@google.com>
|
||||
Date: Wed, 26 May 2021 16:39:52 +0000
|
||||
Subject: [PATCH] Reland "Replace 'blacklist' with 'ignorelist' in
|
||||
./tools/msan/."
|
||||
|
||||
This is a reland of 3b6263f2eece1264b052dfdcbc03b851d5abfb48
|
||||
|
||||
Relanding now that https://chromium-review.googlesource.com/c/chromiumos/overlays/chromiumos-overlay/+/2897974 is merged
|
||||
|
||||
Original change's description:
|
||||
> Replace 'blacklist' with 'ignorelist' in ./tools/msan/.
|
||||
>
|
||||
> Bug: 1097272, 1097268
|
||||
> Change-Id: Id5c8227a5bfb1ffaec82d3168b609085b10c8297
|
||||
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2867730
|
||||
> Commit-Queue: Dylan Cutler <dylancutler@google.com>
|
||||
> Reviewed-by: Nico Weber <thakis@chromium.org>
|
||||
> Reviewed-by: Jonathan Metzman <metzman@chromium.org>
|
||||
> Cr-Commit-Position: refs/heads/master@{#883035}
|
||||
|
||||
Bug: 1097272
|
||||
Bug: 1097268
|
||||
Change-Id: I11a5bc8972680c95fb1dab95ed3b707ed76f4667
|
||||
Cq-Include-Trybots: luci.chromium.try:chromeos-amd64-generic-cfi-thin-lto-rel
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2911096
|
||||
Commit-Queue: Dylan Cutler <dylancutler@google.com>
|
||||
Reviewed-by: Nico Weber <thakis@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/master@{#886773}
|
||||
---
|
||||
build/config/sanitizers/BUILD.gn | 44 ++++++++++----------
|
||||
build_overrides/build.gni | 14 +++----
|
||||
tools/msan/{blacklist.txt => ignorelist.txt} | 0
|
||||
3 files changed, 29 insertions(+), 29 deletions(-)
|
||||
rename tools/msan/{blacklist.txt => ignorelist.txt} (100%)
|
||||
|
||||
diff --git a/build/config/sanitizers/BUILD.gn b/build/config/sanitizers/BUILD.gn
|
||||
index aaaad023474d1..55b388a437439 100644
|
||||
--- a/build/config/sanitizers/BUILD.gn
|
||||
+++ b/build/config/sanitizers/BUILD.gn
|
||||
@@ -272,11 +272,11 @@ config("asan_flags") {
|
||||
if (is_asan) {
|
||||
cflags += [ "-fsanitize=address" ]
|
||||
if (is_win) {
|
||||
- if (!defined(asan_win_blacklist_path)) {
|
||||
- asan_win_blacklist_path =
|
||||
+ if (!defined(asan_win_blocklist_path)) {
|
||||
+ asan_win_blocklist_path =
|
||||
rebase_path("//tools/memory/asan/blocklist_win.txt", root_build_dir)
|
||||
}
|
||||
- cflags += [ "-fsanitize-blacklist=$asan_win_blacklist_path" ]
|
||||
+ cflags += [ "-fsanitize-ignorelist=$asan_win_blocklist_path" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -306,13 +306,13 @@ config("link_shared_library") {
|
||||
config("cfi_flags") {
|
||||
cflags = []
|
||||
if (is_cfi && current_toolchain == default_toolchain) {
|
||||
- if (!defined(cfi_blacklist_path)) {
|
||||
- cfi_blacklist_path =
|
||||
+ if (!defined(cfi_ignorelist_path)) {
|
||||
+ cfi_ignorelist_path =
|
||||
rebase_path("//tools/cfi/ignores.txt", root_build_dir)
|
||||
}
|
||||
cflags += [
|
||||
"-fsanitize=cfi-vcall",
|
||||
- "-fsanitize-blacklist=$cfi_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$cfi_ignorelist_path",
|
||||
]
|
||||
|
||||
if (use_cfi_cast) {
|
||||
@@ -409,14 +409,14 @@ config("msan_flags") {
|
||||
if (is_msan) {
|
||||
assert(is_linux || is_chromeos,
|
||||
"msan only supported on linux x86_64/ChromeOS")
|
||||
- if (!defined(msan_blacklist_path)) {
|
||||
- msan_blacklist_path =
|
||||
- rebase_path("//tools/msan/blacklist.txt", root_build_dir)
|
||||
+ if (!defined(msan_ignorelist_path)) {
|
||||
+ msan_ignorelist_path =
|
||||
+ rebase_path("//tools/msan/ignorelist.txt", root_build_dir)
|
||||
}
|
||||
cflags = [
|
||||
"-fsanitize=memory",
|
||||
"-fsanitize-memory-track-origins=$msan_track_origins",
|
||||
- "-fsanitize-blacklist=$msan_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$msan_ignorelist_path",
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -424,13 +424,13 @@ config("msan_flags") {
|
||||
config("tsan_flags") {
|
||||
if (is_tsan) {
|
||||
assert(is_linux || is_chromeos, "tsan only supported on linux x86_64")
|
||||
- if (!defined(tsan_blacklist_path)) {
|
||||
- tsan_blacklist_path =
|
||||
+ if (!defined(tsan_ignorelist_path)) {
|
||||
+ tsan_ignorelist_path =
|
||||
rebase_path("//tools/memory/tsan_v2/ignores.txt", root_build_dir)
|
||||
}
|
||||
cflags = [
|
||||
"-fsanitize=thread",
|
||||
- "-fsanitize-blacklist=$tsan_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$tsan_ignorelist_path",
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -438,8 +438,8 @@ config("tsan_flags") {
|
||||
config("ubsan_flags") {
|
||||
cflags = []
|
||||
if (is_ubsan) {
|
||||
- if (!defined(ubsan_blacklist_path)) {
|
||||
- ubsan_blacklist_path =
|
||||
+ if (!defined(ubsan_ignorelist_path)) {
|
||||
+ ubsan_ignorelist_path =
|
||||
rebase_path("//tools/ubsan/ignorelist.txt", root_build_dir)
|
||||
}
|
||||
cflags += [
|
||||
@@ -456,7 +456,7 @@ config("ubsan_flags") {
|
||||
"-fsanitize=signed-integer-overflow",
|
||||
"-fsanitize=unreachable",
|
||||
"-fsanitize=vla-bound",
|
||||
- "-fsanitize-blacklist=$ubsan_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$ubsan_ignorelist_path",
|
||||
]
|
||||
|
||||
# Chromecast ubsan builds fail to compile with these
|
||||
@@ -486,8 +486,8 @@ config("ubsan_no_recover") {
|
||||
|
||||
config("ubsan_security_flags") {
|
||||
if (is_ubsan_security) {
|
||||
- if (!defined(ubsan_security_blacklist_path)) {
|
||||
- ubsan_security_blacklist_path =
|
||||
+ if (!defined(ubsan_security_ignorelist_path)) {
|
||||
+ ubsan_security_ignorelist_path =
|
||||
rebase_path("//tools/ubsan/security_ignorelist.txt", root_build_dir)
|
||||
}
|
||||
cflags = [
|
||||
@@ -495,7 +495,7 @@ config("ubsan_security_flags") {
|
||||
"-fsanitize=shift",
|
||||
"-fsanitize=signed-integer-overflow",
|
||||
"-fsanitize=vla-bound",
|
||||
- "-fsanitize-blacklist=$ubsan_security_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$ubsan_security_ignorelist_path",
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -508,13 +508,13 @@ config("ubsan_null_flags") {
|
||||
|
||||
config("ubsan_vptr_flags") {
|
||||
if (is_ubsan_vptr) {
|
||||
- if (!defined(ubsan_vptr_blacklist_path)) {
|
||||
- ubsan_vptr_blacklist_path =
|
||||
+ if (!defined(ubsan_vptr_ignorelist_path)) {
|
||||
+ ubsan_vptr_ignorelist_path =
|
||||
rebase_path("//tools/ubsan/vptr_ignorelist.txt", root_build_dir)
|
||||
}
|
||||
cflags = [
|
||||
"-fsanitize=vptr",
|
||||
- "-fsanitize-blacklist=$ubsan_vptr_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$ubsan_vptr_ignorelist_path",
|
||||
]
|
||||
}
|
||||
}
|
||||
diff --git a/build_overrides/build.gni b/build_overrides/build.gni
|
||||
index 82627b03653f1..f3e563ab701bf 100644
|
||||
--- a/build_overrides/build.gni
|
||||
+++ b/build_overrides/build.gni
|
||||
@@ -42,15 +42,15 @@ declare_args() {
|
||||
# Allows different projects to specify their own suppression/ignore lists for
|
||||
# sanitizer tools.
|
||||
# asan_suppressions_file = "path/to/asan_suppressions.cc"
|
||||
-# asan_win_blacklist_path = "path/to/asan/blocklist_win.txt"
|
||||
+# asan_win_ignorelist_path = "path/to/asan/blocklist_win.txt"
|
||||
# lsan_suppressions_file = "path/to/lsan_suppressions.cc"
|
||||
# tsan_suppressions_file = "path/to/tsan_suppressions.cc"
|
||||
-# tsan_blacklist_path = "path/to/tsan/ignores.txt"
|
||||
-# msan_blacklist_path = "path/to/msan/blacklist.txt"
|
||||
-# ubsan_blacklist_path = "path/to/ubsan/blacklist.txt"
|
||||
-# ubsan_vptr_blacklist_path = "path/to/ubsan/vptr_blacklist.txt"
|
||||
-# ubsan_security_blacklist_path = "path/to/ubsan/security_blacklist.txt"
|
||||
-# cfi_blacklist_path = "path/to/cfi/ignores.txt"
|
||||
+# tsan_ignorelist_path = "path/to/tsan/ignores.txt"
|
||||
+# msan_ignorelist_path = "path/to/msan/ignorelist.txt"
|
||||
+# ubsan_ignorelist_path = "path/to/ubsan/ignorelist.txt"
|
||||
+# ubsan_vptr_ignorelist_path = "path/to/ubsan/vptr_ignorelist.txt"
|
||||
+# ubsan_security_ignorelist_path = "path/to/ubsan/security_ignorelist.txt"
|
||||
+# cfi_ignorelist_path = "path/to/cfi/ignores.txt"
|
||||
|
||||
declare_args() {
|
||||
# Android 32-bit non-component, non-clang builds cannot have symbol_level=2
|
||||
diff --git a/tools/msan/blacklist.txt b/tools/msan/ignorelist.txt
|
||||
similarity index 100%
|
||||
rename from tools/msan/blacklist.txt
|
||||
rename to tools/msan/ignorelist.txt
|
@ -1,71 +1,53 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Evangelos Foutras <evangelos@foutrelis.com>
|
||||
# Contributor: Pierre Schmitz <pierre@archlinux.de>
|
||||
# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com>
|
||||
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
|
||||
|
||||
pkgname=chromium
|
||||
pkgver=94.0.4606.81
|
||||
pkgrel=1
|
||||
pkgver=97.0.4692.99
|
||||
pkgrel=3
|
||||
_launcher_ver=8
|
||||
_gcc_patchset=3
|
||||
_gcc_patchset=4
|
||||
pkgdesc="A web browser built for speed, simplicity, and security"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le)
|
||||
url="https://www.chromium.org/Home"
|
||||
license=('BSD')
|
||||
depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt'
|
||||
'ttf-liberation' 'systemd' 'dbus' 'libpulse' 'pciutils' 'libva'
|
||||
'desktop-file-utils' 'hicolor-icon-theme')
|
||||
makedepends=('python' 'gn' 'ninja' 'clang' 'lld' 'gperf' 'nodejs' 'pipewire'
|
||||
'java-runtime-headless' 'lld')
|
||||
'java-runtime-headless')
|
||||
optdepends=('pipewire: WebRTC desktop sharing under Wayland'
|
||||
'kdialog: support for native dialogs in Plasma'
|
||||
'org.freedesktop.secrets: password storage backend on GNOME / Xfce'
|
||||
'kwallet: support for storing passwords in KWallet on Plasma')
|
||||
options=('!lto') # Chromium adds its own flags for ThinLTO
|
||||
source=(https://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.xz
|
||||
https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver/chromium-launcher-$_launcher_ver.tar.gz
|
||||
https://github.com/stha09/chromium-patches/releases/download/chromium-${pkgver%%.*}-patchset-$_gcc_patchset/chromium-${pkgver%%.*}-patchset-$_gcc_patchset.tar.xz
|
||||
replace-blacklist-with-ignorelist.patch
|
||||
add-a-TODO-about-a-missing-pnacl-flag.patch
|
||||
use-ffile-compilation-dir.patch
|
||||
wayland-fix-binding-to-wrong-version.patch
|
||||
sql-make-VirtualCursor-standard-layout-type.patch
|
||||
chromium-93-ffmpeg-4.4.patch
|
||||
chromium-94-ffmpeg-roll.patch
|
||||
chromium-breakpad-fix-build-with-glibc-2.34.patch
|
||||
unexpire-accelerated-video-decode-flag.patch
|
||||
use-oauth2-client-switches-as-default.patch
|
||||
xxx-ppc64le-support.patch
|
||||
xxx-ppc64le-sandbox-linux-stat.patch
|
||||
chromium-breakpad-fix-build-with-glibc-2.34.patch
|
||||
xxx-ppc64le-4k-pages.patch
|
||||
xxx-ppc64le-libvpx.patch
|
||||
xxx-ppc64le-swiftshader.patch
|
||||
remove-strip_binary.patch
|
||||
no-execinfo.patch
|
||||
no-getcontext.patch
|
||||
fix-narrowing-cast.patch
|
||||
cursed^Uscoped_file.patch
|
||||
9d080c0.patch)
|
||||
sha256sums=('7071aa2b2caf48094c2ae816395948b4daec940606f4982ad5bbf68e5d2de598'
|
||||
xxx-ppc64le-sandbox-linux-stat.patch
|
||||
xxx-ppc64le-support.patch
|
||||
xxx-ppc64le-swiftshader.patch)
|
||||
sha256sums=('c91bae205705b367f2cfc1f72ce1ee99b2ceb5edfc584e15c60a6ab5ff01ecba'
|
||||
'213e50f48b67feb4441078d50b0fd431df34323be15be97c55302d3fdac4483a'
|
||||
'22692bddaf2761c6ddf9ff0bc4722972bca4d4c5b2fd3e5dbdac7eb60d914320'
|
||||
'd3344ba39b8c6ed202334ba7f441c70d81ddf8cdb15af1aa8c16e9a3a75fbb35'
|
||||
'd53da216538f2e741a6e048ed103964a91a98e9a3c10c27fdfa34d4692fdc455'
|
||||
'921010cd8fab5f30be76c68b68c9b39fac9e21f4c4133bb709879592bbdf606e'
|
||||
'7af5c0a55a20c0fb496b2f4448d89203a83bb1914754d864460e55e68731ef0b'
|
||||
'29541840921302060f712838ba460cd7e988148af3ce3c9dc45437fc78442a67'
|
||||
'dd317f85e5abfdcfc89c6f23f4c8edbcdebdd5e083dcec770e5da49ee647d150'
|
||||
'1a9e074f417f8ffd78bcd6874d8e2e74a239905bf662f76a7755fa40dc476b57'
|
||||
'56acb6e743d2ab1ed9f3eb01700ade02521769978d03ac43226dec94659b3ace'
|
||||
'd1ad185e25a62d50bbed0dbf131e52bead8a52ccc63a53642b3a4f62056a5458'
|
||||
'2a97b26c3d6821b15ef4ef1369905c6fa3e9c8da4877eb9af4361452a425290b'
|
||||
'e393174d7695d0bafed69e868c5fbfecf07aa6969f3b64596d0bae8b067e1711'
|
||||
'7f1df92cb984c86e16d3c2e10d606cbe078ca2a2f0d10d0dc2f629f6abb168d3'
|
||||
'16361d737c14135e464bf52e09d0b79c0e9ef84c364253e08f435e8e72d7b5c9'
|
||||
'd1ad185e25a62d50bbed0dbf131e52bead8a52ccc63a53642b3a4f62056a5458'
|
||||
'c77523a0884cd7b821826c42475d10d8576ef5edf1022e2657aaf455317bd293'
|
||||
'6b7ad5cd5d7d61b5441810688fc5bd99cb8198291b2252451d352a620a2e09bb'
|
||||
'be9416182beb25f0835bae1dad5a26786f694dbda2e5106f83714be42add653a'
|
||||
'89c4512db46368809f45f4e092279e87104ba5a7c6a812d001c606b0efd8855b'
|
||||
'a76ec1a929b54d79b1fa643036fcbd9ff2c2cc99e7d7e1573122ca0b5e760347'
|
||||
'26111345b8d9bf87f7336c35aa401ff2f1b2911519e7b725e224c59f33593378'
|
||||
'771395e3e84a4a1627945112b8c100c898221e04d86b76d4cff946530010e1a4'
|
||||
'6cfec4a32160df642ffa4b3c1e10ba19e94f1004bac65a349fa273b0f684b8ac'
|
||||
'0cb44a688430efe6d3b3636d245d5d898fbd918d887938781bd4f3395228d854')
|
||||
'16361d737c14135e464bf52e09d0b79c0e9ef84c364253e08f435e8e72d7b5c9'
|
||||
'796d4c650ab71b6ba0ef043b060398673cb252c96c194e0bbd0a14cb7b8f94c7'
|
||||
'be9416182beb25f0835bae1dad5a26786f694dbda2e5106f83714be42add653a')
|
||||
|
||||
# Possible replacements are listed in build/linux/unbundle/replace_gn_files.py
|
||||
# Keys are the names in the above script; values are the dependencies in Arch
|
||||
@ -112,60 +94,37 @@ prepare() {
|
||||
sed -i -e 's/\<xmlMalloc\>/malloc/' -e 's/\<xmlFree\>/free/' \
|
||||
third_party/blink/renderer/core/xml/*.cc \
|
||||
third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \
|
||||
third_party/libxml/chromium/*.cc
|
||||
third_party/libxml/chromium/*.cc \
|
||||
third_party/maldoca/src/maldoca/ole/oss_utils.h
|
||||
|
||||
# Use the --oauth2-client-id= and --oauth2-client-secret= switches for
|
||||
# setting GOOGLE_DEFAULT_CLIENT_ID and GOOGLE_DEFAULT_CLIENT_SECRET at
|
||||
# runtime -- this allows signing into Chromium without baked-in values
|
||||
patch -Np1 -i ../use-oauth2-client-switches-as-default.patch
|
||||
|
||||
# Fix build with older ffmpeg
|
||||
patch -Np1 -i ../chromium-93-ffmpeg-4.4.patch
|
||||
|
||||
# Revert change to custom function av_stream_get_first_dts; will need to
|
||||
# switch to bundled ffmpeg when we're no longer using ffmpeg 4.4 in Arch
|
||||
# Upstream commit that made first_dts internal causing Chromium to add a
|
||||
# custom function: https://github.com/FFmpeg/FFmpeg/commit/591b88e6787c4
|
||||
# https://crbug.com/1251779
|
||||
patch -Rp1 -i ../chromium-94-ffmpeg-roll.patch
|
||||
|
||||
# https://crbug.com/1207478
|
||||
patch -Np0 -i ../unexpire-accelerated-video-decode-flag.patch
|
||||
|
||||
# Revert transition to -fsanitize-ignorelist (needs newer clang)
|
||||
patch -Rp1 -i ../replace-blacklist-with-ignorelist.patch
|
||||
|
||||
# Revert addition of -ffile-compilation-dir= (needs newer clang)
|
||||
patch -Rp1 -i ../add-a-TODO-about-a-missing-pnacl-flag.patch
|
||||
patch -Rp1 -i ../use-ffile-compilation-dir.patch
|
||||
# Upstream fixes
|
||||
patch -Np1 -i ../wayland-fix-binding-to-wrong-version.patch
|
||||
|
||||
# https://chromium-review.googlesource.com/c/chromium/src/+/2862724
|
||||
patch -Np1 -i ../sql-make-VirtualCursor-standard-layout-type.patch
|
||||
|
||||
# Fixes for building with libstdc++ instead of libc++
|
||||
patch -Np1 -i ../patches/chromium-90-ruy-include.patch
|
||||
patch -Np1 -i ../patches/chromium-94-CustomSpaces-include.patch
|
||||
|
||||
patch -Np2 -i ${srcdir}/chromium-breakpad-fix-build-with-glibc-2.34.patch
|
||||
|
||||
# thanks Voidlinux!
|
||||
patch -Np1 -i ${srcdir}/xxx-ppc64le-support.patch
|
||||
patch -Np1 -i ${srcdir}/xxx-ppc64le-sandbox-linux-stat.patch
|
||||
# powerpc64le stuff
|
||||
patch -Np1 -i ${srcdir}/xxx-ppc64le-4k-pages.patch
|
||||
patch -Np1 -i ${srcdir}/xxx-ppc64le-libvpx.patch
|
||||
patch -Np1 -i ${srcdir}/xxx-ppc64le-sandbox-linux-stat.patch
|
||||
patch -Np1 -i ${srcdir}/xxx-ppc64le-support.patch
|
||||
patch -Np1 -i ${srcdir}/xxx-ppc64le-swiftshader.patch
|
||||
patch -Np1 -i ${srcdir}/remove-strip_binary.patch
|
||||
patch -Np1 -i ${srcdir}/no-execinfo.patch
|
||||
patch -Np1 -i ${srcdir}/no-getcontext.patch
|
||||
patch -Np1 -i ${srcdir}/fix-narrowing-cast.patch
|
||||
patch -Np1 -i ${srcdir}/cursed^Uscoped_file.patch
|
||||
patch -Np1 -i ${srcdir}/9d080c0.patch
|
||||
|
||||
# Link to system tools required by the build
|
||||
mkdir -p third_party/node/linux/node-linux-x64/bin
|
||||
ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/
|
||||
mkdir -p third_party/node/linux/node-linux-ppc64/bin
|
||||
ln -s /usr/bin/node third_party/node/linux/node-linux-ppc64/bin/
|
||||
|
||||
ln -s /usr/bin/java third_party/jdk/current/bin/
|
||||
|
||||
# Remove bundled libraries for which we will use the system copies; this
|
||||
@ -201,8 +160,6 @@ build() {
|
||||
export CXX=clang++
|
||||
export AR=ar
|
||||
export NM=nm
|
||||
export CXXFLAGS=${CFLAGS/-O?/-O2}
|
||||
export CFLAGS=${CFLAGS/-O?/-O2}
|
||||
|
||||
local _flags=(
|
||||
'custom_toolchain="//build/toolchain/linux/unbundle:default"'
|
||||
@ -225,15 +182,6 @@ build() {
|
||||
"google_api_key=\"$_google_api_key\""
|
||||
)
|
||||
|
||||
case "${CARCH}" in
|
||||
powerpc64le)
|
||||
_flags+=('enable_jxl_decoder=false'
|
||||
'target_cpu="ppc64"'
|
||||
'use_lld=true'
|
||||
)
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ -n ${_system_libs[icu]+set} ]]; then
|
||||
_flags+=('icu_use_data_file=false')
|
||||
fi
|
||||
@ -251,6 +199,19 @@ build() {
|
||||
CFLAGS+=' -Wno-unknown-warning-option'
|
||||
CXXFLAGS+=' -Wno-unknown-warning-option'
|
||||
|
||||
# https://github.com/ungoogled-software/ungoogled-chromium-archlinux/issues/123
|
||||
CFLAGS=${CFLAGS/-fexceptions}
|
||||
CFLAGS=${CFLAGS/-fcf-protection}
|
||||
CXXFLAGS=${CXXFLAGS/-fexceptions}
|
||||
CXXFLAGS=${CXXFLAGS/-fcf-protection}
|
||||
|
||||
# This appears to cause random segfaults
|
||||
CFLAGS=${CFLAGS/-fstack-clash-protection}
|
||||
CXXFLAGS=${CXXFLAGS/-fstack-clash-protection}
|
||||
|
||||
# https://crbug.com/957519#c122
|
||||
CXXFLAGS=${CXXFLAGS/-Wp,-D_GLIBCXX_ASSERTIONS}
|
||||
|
||||
gn gen out/Release --args="${_flags[*]}"
|
||||
ninja -C out/Release chrome chrome_sandbox chromedriver ${MAKEFLAGS}
|
||||
}
|
||||
@ -287,9 +248,17 @@ package() {
|
||||
-e '/^<?xml/,$p' \
|
||||
"$pkgdir/usr/share/metainfo/chromium.appdata.xml"
|
||||
|
||||
if [ "${CARCH}" == 'powerpc64le' ]; then
|
||||
cp out/Release/chromedriver{.unstripped,}
|
||||
strip out/Release/chromedriver
|
||||
cp third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json out/Release/
|
||||
fi
|
||||
|
||||
local toplevel_files=(
|
||||
chrome_100_percent.pak
|
||||
chrome_200_percent.pak
|
||||
chrome_crashpad_handler
|
||||
chromedriver
|
||||
resources.pak
|
||||
v8_context_snapshot.bin
|
||||
|
||||
@ -297,8 +266,9 @@ package() {
|
||||
libEGL.so
|
||||
libGLESv2.so
|
||||
|
||||
chromedriver
|
||||
chrome_crashpad_handler
|
||||
# SwiftShader ICD
|
||||
libvk_swiftshader.so
|
||||
vk_swiftshader_icd.json
|
||||
)
|
||||
|
||||
if [[ -z ${_system_libs[icu]+set} ]]; then
|
||||
|
@ -1,28 +0,0 @@
|
||||
From 7a23987acb698c2934958cb42a5e7b1cd73fe142 Mon Sep 17 00:00:00 2001
|
||||
From: Nico Weber <thakis@chromium.org>
|
||||
Date: Tue, 20 Jul 2021 21:54:09 +0000
|
||||
Subject: [PATCH] build: Add a TODO about a missing pnacl flag
|
||||
|
||||
Change-Id: I1700d185a23afe4120e14c755782450b1bf89289
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3041785
|
||||
Commit-Queue: Nico Weber <thakis@chromium.org>
|
||||
Commit-Queue: Hans Wennborg <hans@chromium.org>
|
||||
Auto-Submit: Nico Weber <thakis@chromium.org>
|
||||
Reviewed-by: Hans Wennborg <hans@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/master@{#903659}
|
||||
---
|
||||
build/config/compiler/BUILD.gn | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
|
||||
index b6e095b705..ef6d1dfc12 100644
|
||||
--- a/build/config/compiler/BUILD.gn
|
||||
+++ b/build/config/compiler/BUILD.gn
|
||||
@@ -1217,6 +1217,7 @@ config("compiler_deterministic") {
|
||||
# we build same files with same compile flag.
|
||||
# Other paths are already given in relative, no need to normalize them.
|
||||
if (is_nacl) {
|
||||
+ # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
|
||||
cflags += [
|
||||
"-Xclang",
|
||||
"-fdebug-compilation-dir",
|
@ -1,36 +0,0 @@
|
||||
diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc
|
||||
index ac4713b07268..492a9a37d096 100644
|
||||
--- a/media/filters/ffmpeg_demuxer.cc
|
||||
+++ b/media/filters/ffmpeg_demuxer.cc
|
||||
@@ -427,11 +427,11 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
|
||||
scoped_refptr<DecoderBuffer> buffer;
|
||||
|
||||
if (type() == DemuxerStream::TEXT) {
|
||||
- size_t id_size = 0;
|
||||
+ int id_size = 0;
|
||||
uint8_t* id_data = av_packet_get_side_data(
|
||||
packet.get(), AV_PKT_DATA_WEBVTT_IDENTIFIER, &id_size);
|
||||
|
||||
- size_t settings_size = 0;
|
||||
+ int settings_size = 0;
|
||||
uint8_t* settings_data = av_packet_get_side_data(
|
||||
packet.get(), AV_PKT_DATA_WEBVTT_SETTINGS, &settings_size);
|
||||
|
||||
@@ -443,7 +443,7 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
|
||||
buffer = DecoderBuffer::CopyFrom(packet->data, packet->size,
|
||||
side_data.data(), side_data.size());
|
||||
} else {
|
||||
- size_t side_data_size = 0;
|
||||
+ int side_data_size = 0;
|
||||
uint8_t* side_data = av_packet_get_side_data(
|
||||
packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size);
|
||||
|
||||
@@ -504,7 +504,7 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
|
||||
packet->size - data_offset);
|
||||
}
|
||||
|
||||
- size_t skip_samples_size = 0;
|
||||
+ int skip_samples_size = 0;
|
||||
const uint32_t* skip_samples_ptr =
|
||||
reinterpret_cast<const uint32_t*>(av_packet_get_side_data(
|
||||
packet.get(), AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size));
|
@ -1,49 +0,0 @@
|
||||
From b94755e4633045be96ab5e0bdde0db7e16a804bd Mon Sep 17 00:00:00 2001
|
||||
From: "liberato@chromium.org" <liberato@chromium.org>
|
||||
Date: Fri, 6 Aug 2021 04:25:31 +0000
|
||||
Subject: [PATCH] FFmpeg M94 roll.
|
||||
|
||||
Contains DEPS update + chromium-side fixes.
|
||||
|
||||
Bug: 1227259
|
||||
Change-Id: I61c5eaa789ea12c17d0cbcbf837435b9cf32479b
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3011889
|
||||
Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>
|
||||
Commit-Queue: Frank Liberato <liberato@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/master@{#909174}
|
||||
---
|
||||
media/ffmpeg/ffmpeg_common.h | 1 +
|
||||
media/filters/ffmpeg_demuxer.cc | 4 ++--
|
||||
2 files changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/media/ffmpeg/ffmpeg_common.h b/media/ffmpeg/ffmpeg_common.h
|
||||
index cede8ac5a7..97d6307e28 100644
|
||||
--- a/media/ffmpeg/ffmpeg_common.h
|
||||
+++ b/media/ffmpeg/ffmpeg_common.h
|
||||
@@ -29,6 +29,7 @@ extern "C" {
|
||||
#include <libavformat/avformat.h>
|
||||
#include <libavformat/avio.h>
|
||||
#include <libavutil/avutil.h>
|
||||
+#include <libavutil/channel_layout.h>
|
||||
#include <libavutil/imgutils.h>
|
||||
#include <libavutil/log.h>
|
||||
#include <libavutil/mastering_display_metadata.h>
|
||||
diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc
|
||||
index ac4713b072..605001d935 100644
|
||||
--- a/media/filters/ffmpeg_demuxer.cc
|
||||
+++ b/media/filters/ffmpeg_demuxer.cc
|
||||
@@ -106,12 +106,12 @@ static base::TimeDelta ExtractStartTime(AVStream* stream) {
|
||||
|
||||
// Next try to use the first DTS value, for codecs where we know PTS == DTS
|
||||
// (excludes all H26x codecs). The start time must be returned in PTS.
|
||||
- if (stream->first_dts != kNoFFmpegTimestamp &&
|
||||
+ if (av_stream_get_first_dts(stream) != kNoFFmpegTimestamp &&
|
||||
stream->codecpar->codec_id != AV_CODEC_ID_HEVC &&
|
||||
stream->codecpar->codec_id != AV_CODEC_ID_H264 &&
|
||||
stream->codecpar->codec_id != AV_CODEC_ID_MPEG4) {
|
||||
const base::TimeDelta first_pts =
|
||||
- ConvertFromTimeBase(stream->time_base, stream->first_dts);
|
||||
+ ConvertFromTimeBase(stream->time_base, av_stream_get_first_dts(stream));
|
||||
if (first_pts < start_time)
|
||||
start_time = first_pts;
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
--- a/base/files/scoped_file_linux.cc.orig
|
||||
+++ b/base/files/scoped_file_linux.cc
|
||||
@@ -77,15 +77,3 @@
|
||||
}
|
||||
|
||||
} // namespace base
|
||||
-
|
||||
-extern "C" {
|
||||
-
|
||||
-int __close(int);
|
||||
-
|
||||
-__attribute__((visibility("default"), noinline)) int close(int fd) {
|
||||
- if (base::IsFDOwned(fd) && g_is_ownership_enforced)
|
||||
- CrashOnFdOwnershipViolation();
|
||||
- return __close(fd);
|
||||
-}
|
||||
-
|
||||
-} // extern "C"
|
@ -1,53 +0,0 @@
|
||||
--- a/base/files/file_util_linux.cc
|
||||
+++ b/base/files/file_util_linux.cc
|
||||
@@ -23,14 +23,14 @@
|
||||
|
||||
// Not all possible |statfs_buf.f_type| values are in linux/magic.h.
|
||||
// Missing values are copied from the statfs man page.
|
||||
- switch (statfs_buf.f_type) {
|
||||
+ switch (static_cast<uintmax_t>(statfs_buf.f_type)) {
|
||||
case 0:
|
||||
*type = FILE_SYSTEM_0;
|
||||
break;
|
||||
case EXT2_SUPER_MAGIC: // Also ext3 and ext4
|
||||
case MSDOS_SUPER_MAGIC:
|
||||
case REISERFS_SUPER_MAGIC:
|
||||
- case static_cast<int>(BTRFS_SUPER_MAGIC):
|
||||
+ case BTRFS_SUPER_MAGIC:
|
||||
case 0x5346544E: // NTFS
|
||||
case 0x58465342: // XFS
|
||||
case 0x3153464A: // JFS
|
||||
@@ -40,14 +40,14 @@
|
||||
*type = FILE_SYSTEM_NFS;
|
||||
break;
|
||||
case SMB_SUPER_MAGIC:
|
||||
- case static_cast<int>(0xFF534D42): // CIFS
|
||||
+ case 0xFF534D42: // CIFS
|
||||
*type = FILE_SYSTEM_SMB;
|
||||
break;
|
||||
case CODA_SUPER_MAGIC:
|
||||
*type = FILE_SYSTEM_CODA;
|
||||
break;
|
||||
- case static_cast<int>(HUGETLBFS_MAGIC):
|
||||
- case static_cast<int>(RAMFS_MAGIC):
|
||||
+ case HUGETLBFS_MAGIC:
|
||||
+ case RAMFS_MAGIC:
|
||||
case TMPFS_MAGIC:
|
||||
*type = FILE_SYSTEM_MEMORY;
|
||||
break;
|
||||
--- a/base/system/sys_info_posix.cc
|
||||
+++ b/base/system/sys_info_posix.cc
|
||||
@@ -100,10 +100,10 @@
|
||||
if (HANDLE_EINTR(statfs(path.value().c_str(), &stats)) != 0)
|
||||
return false;
|
||||
|
||||
- switch (stats.f_type) {
|
||||
+ switch (static_cast<uintmax_t>(stats.f_type)) {
|
||||
case TMPFS_MAGIC:
|
||||
- case static_cast<int>(HUGETLBFS_MAGIC):
|
||||
- case static_cast<int>(RAMFS_MAGIC):
|
||||
+ case HUGETLBFS_MAGIC:
|
||||
+ case RAMFS_MAGIC:
|
||||
return true;
|
||||
}
|
||||
return false;
|
@ -1,75 +0,0 @@
|
||||
--- a/base/debug/stack_trace_posix.cc
|
||||
+++ b/base/debug/stack_trace_posix.cc
|
||||
@@ -27,7 +27,7 @@
|
||||
#if !defined(USE_SYMBOLIZE)
|
||||
#include <cxxabi.h>
|
||||
#endif
|
||||
-#if !defined(__UCLIBC__) && !defined(_AIX)
|
||||
+#if defined(__GLIBC__) && !defined(_AIX)
|
||||
#include <execinfo.h>
|
||||
#endif
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
// Note: code in this function is NOT async-signal safe (std::string uses
|
||||
// malloc internally).
|
||||
|
||||
-#if !defined(__UCLIBC__) && !defined(_AIX)
|
||||
+#if defined(__GLIBC__) && !defined(_AIX)
|
||||
std::string::size_type search_from = 0;
|
||||
while (search_from < text->size()) {
|
||||
// Look for the start of a mangled symbol, from search_from.
|
||||
@@ -136,7 +136,7 @@
|
||||
virtual ~BacktraceOutputHandler() = default;
|
||||
};
|
||||
|
||||
-#if !defined(__UCLIBC__) && !defined(_AIX)
|
||||
+#if defined(__GLIBC__) && !defined(_AIX)
|
||||
void OutputPointer(void* pointer, BacktraceOutputHandler* handler) {
|
||||
// This should be more than enough to store a 64-bit number in hex:
|
||||
// 16 hex digits + 1 for null-terminator.
|
||||
@@ -839,7 +839,7 @@
|
||||
// If we do not have unwind tables, then try tracing using frame pointers.
|
||||
return base::debug::TraceStackFramePointers(const_cast<const void**>(trace),
|
||||
count, 0);
|
||||
-#elif !defined(__UCLIBC__) && !defined(_AIX)
|
||||
+#elif defined(__GLIBC__) && !defined(_AIX)
|
||||
// Though the backtrace API man page does not list any possible negative
|
||||
// return values, we take no chance.
|
||||
return base::saturated_cast<size_t>(backtrace(trace, count));
|
||||
@@ -852,13 +852,13 @@
|
||||
// NOTE: This code MUST be async-signal safe (it's used by in-process
|
||||
// stack dumping signal handler). NO malloc or stdio is allowed here.
|
||||
|
||||
-#if !defined(__UCLIBC__) && !defined(_AIX)
|
||||
+#if defined(__GLIBC__) && !defined(_AIX)
|
||||
PrintBacktraceOutputHandler handler;
|
||||
ProcessBacktrace(trace_, count_, prefix_string, &handler);
|
||||
#endif
|
||||
}
|
||||
|
||||
-#if !defined(__UCLIBC__) && !defined(_AIX)
|
||||
+#if defined(__GLIBC__) && !defined(_AIX)
|
||||
void StackTrace::OutputToStreamWithPrefix(std::ostream* os,
|
||||
const char* prefix_string) const {
|
||||
StreamBacktraceOutputHandler handler(os);
|
||||
--- a/v8/src/codegen/external-reference-table.cc.orig
|
||||
+++ b/v8/src/codegen/external-reference-table.cc
|
||||
@@ -11,7 +11,9 @@
|
||||
|
||||
#if defined(DEBUG) && defined(V8_OS_LINUX) && !defined(V8_OS_ANDROID)
|
||||
#define SYMBOLIZE_FUNCTION
|
||||
+#if defined(__GLIBC__)
|
||||
#include <execinfo.h>
|
||||
+#endif
|
||||
|
||||
#include <vector>
|
||||
|
||||
@@ -96,7 +98,7 @@
|
||||
}
|
||||
|
||||
const char* ExternalReferenceTable::ResolveSymbol(void* address) {
|
||||
-#ifdef SYMBOLIZE_FUNCTION
|
||||
+#if defined(SYMBOLIZE_FUNCTION) && defined(__GLIBC__)
|
||||
char** names = backtrace_symbols(&address, 1);
|
||||
const char* name = names[0];
|
||||
// The array of names is malloc'ed. However, each name string is static
|
@ -1,27 +0,0 @@
|
||||
--- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc 2015-12-06 09:59:55.554536646 +0100
|
||||
+++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc 2015-12-06 10:01:16.818238035 +0100
|
||||
@@ -477,7 +477,9 @@ bool ExceptionHandler::SimulateSignalDel
|
||||
siginfo.si_code = SI_USER;
|
||||
siginfo.si_pid = getpid();
|
||||
ucontext_t context;
|
||||
+#if defined(__GLIBC__)
|
||||
getcontext(&context);
|
||||
+#endif
|
||||
return HandleSignal(sig, &siginfo, &context);
|
||||
}
|
||||
|
||||
@@ -647,9 +649,14 @@ bool ExceptionHandler::WriteMinidump() {
|
||||
sys_prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
|
||||
|
||||
CrashContext context;
|
||||
+
|
||||
+#if defined(__GLIBC__)
|
||||
int getcontext_result = getcontext(&context.context);
|
||||
if (getcontext_result)
|
||||
return false;
|
||||
+#else
|
||||
+ return false;
|
||||
+#endif
|
||||
|
||||
#if defined(__i386__)
|
||||
// In CPUFillFromUContext in minidumpwriter.cc the stack pointer is retrieved
|
@ -1,32 +0,0 @@
|
||||
--- a/chrome/test/chromedriver/BUILD.gn.orig
|
||||
+++ b/chrome/test/chromedriver/BUILD.gn
|
||||
@@ -308,11 +308,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
-if (is_linux) {
|
||||
- chromedriver_output = "chromedriver.unstripped"
|
||||
-} else {
|
||||
- chromedriver_output = "chromedriver"
|
||||
-}
|
||||
+chromedriver_output = "chromedriver"
|
||||
|
||||
executable("$chromedriver_output") {
|
||||
testonly = true
|
||||
@@ -336,16 +332,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
-if (is_linux) {
|
||||
- strip_binary("chromedriver") {
|
||||
- testonly = true
|
||||
- binary_input = "$root_out_dir/$chromedriver_output"
|
||||
- symbol_output = "$root_out_dir/chromedriver.debug"
|
||||
- stripped_binary_output = "$root_out_dir/chromedriver"
|
||||
- deps = [ ":$chromedriver_output" ]
|
||||
- }
|
||||
-}
|
||||
-
|
||||
python_library("chromedriver_py_tests") {
|
||||
testonly = true
|
||||
deps = [
|
@ -1,196 +0,0 @@
|
||||
From 9d080c0934b848ee4a05013c78641e612fcc1e03 Mon Sep 17 00:00:00 2001
|
||||
From: Dylan Cutler <dylancutler@google.com>
|
||||
Date: Wed, 26 May 2021 16:39:52 +0000
|
||||
Subject: [PATCH] Reland "Replace 'blacklist' with 'ignorelist' in
|
||||
./tools/msan/."
|
||||
|
||||
This is a reland of 3b6263f2eece1264b052dfdcbc03b851d5abfb48
|
||||
|
||||
Relanding now that https://chromium-review.googlesource.com/c/chromiumos/overlays/chromiumos-overlay/+/2897974 is merged
|
||||
|
||||
Original change's description:
|
||||
> Replace 'blacklist' with 'ignorelist' in ./tools/msan/.
|
||||
>
|
||||
> Bug: 1097272, 1097268
|
||||
> Change-Id: Id5c8227a5bfb1ffaec82d3168b609085b10c8297
|
||||
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2867730
|
||||
> Commit-Queue: Dylan Cutler <dylancutler@google.com>
|
||||
> Reviewed-by: Nico Weber <thakis@chromium.org>
|
||||
> Reviewed-by: Jonathan Metzman <metzman@chromium.org>
|
||||
> Cr-Commit-Position: refs/heads/master@{#883035}
|
||||
|
||||
Bug: 1097272
|
||||
Bug: 1097268
|
||||
Change-Id: I11a5bc8972680c95fb1dab95ed3b707ed76f4667
|
||||
Cq-Include-Trybots: luci.chromium.try:chromeos-amd64-generic-cfi-thin-lto-rel
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2911096
|
||||
Commit-Queue: Dylan Cutler <dylancutler@google.com>
|
||||
Reviewed-by: Nico Weber <thakis@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/master@{#886773}
|
||||
---
|
||||
build/config/sanitizers/BUILD.gn | 44 ++++++++++----------
|
||||
build_overrides/build.gni | 14 +++----
|
||||
tools/msan/{blacklist.txt => ignorelist.txt} | 0
|
||||
3 files changed, 29 insertions(+), 29 deletions(-)
|
||||
rename tools/msan/{blacklist.txt => ignorelist.txt} (100%)
|
||||
|
||||
diff --git a/build/config/sanitizers/BUILD.gn b/build/config/sanitizers/BUILD.gn
|
||||
index aaaad023474d..55b388a43743 100644
|
||||
--- a/build/config/sanitizers/BUILD.gn
|
||||
+++ b/build/config/sanitizers/BUILD.gn
|
||||
@@ -272,11 +272,11 @@ config("asan_flags") {
|
||||
if (is_asan) {
|
||||
cflags += [ "-fsanitize=address" ]
|
||||
if (is_win) {
|
||||
- if (!defined(asan_win_blacklist_path)) {
|
||||
- asan_win_blacklist_path =
|
||||
+ if (!defined(asan_win_blocklist_path)) {
|
||||
+ asan_win_blocklist_path =
|
||||
rebase_path("//tools/memory/asan/blocklist_win.txt", root_build_dir)
|
||||
}
|
||||
- cflags += [ "-fsanitize-blacklist=$asan_win_blacklist_path" ]
|
||||
+ cflags += [ "-fsanitize-ignorelist=$asan_win_blocklist_path" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -306,13 +306,13 @@ config("link_shared_library") {
|
||||
config("cfi_flags") {
|
||||
cflags = []
|
||||
if (is_cfi && current_toolchain == default_toolchain) {
|
||||
- if (!defined(cfi_blacklist_path)) {
|
||||
- cfi_blacklist_path =
|
||||
+ if (!defined(cfi_ignorelist_path)) {
|
||||
+ cfi_ignorelist_path =
|
||||
rebase_path("//tools/cfi/ignores.txt", root_build_dir)
|
||||
}
|
||||
cflags += [
|
||||
"-fsanitize=cfi-vcall",
|
||||
- "-fsanitize-blacklist=$cfi_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$cfi_ignorelist_path",
|
||||
]
|
||||
|
||||
if (use_cfi_cast) {
|
||||
@@ -409,14 +409,14 @@ config("msan_flags") {
|
||||
if (is_msan) {
|
||||
assert(is_linux || is_chromeos,
|
||||
"msan only supported on linux x86_64/ChromeOS")
|
||||
- if (!defined(msan_blacklist_path)) {
|
||||
- msan_blacklist_path =
|
||||
- rebase_path("//tools/msan/blacklist.txt", root_build_dir)
|
||||
+ if (!defined(msan_ignorelist_path)) {
|
||||
+ msan_ignorelist_path =
|
||||
+ rebase_path("//tools/msan/ignorelist.txt", root_build_dir)
|
||||
}
|
||||
cflags = [
|
||||
"-fsanitize=memory",
|
||||
"-fsanitize-memory-track-origins=$msan_track_origins",
|
||||
- "-fsanitize-blacklist=$msan_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$msan_ignorelist_path",
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -424,13 +424,13 @@ config("msan_flags") {
|
||||
config("tsan_flags") {
|
||||
if (is_tsan) {
|
||||
assert(is_linux || is_chromeos, "tsan only supported on linux x86_64")
|
||||
- if (!defined(tsan_blacklist_path)) {
|
||||
- tsan_blacklist_path =
|
||||
+ if (!defined(tsan_ignorelist_path)) {
|
||||
+ tsan_ignorelist_path =
|
||||
rebase_path("//tools/memory/tsan_v2/ignores.txt", root_build_dir)
|
||||
}
|
||||
cflags = [
|
||||
"-fsanitize=thread",
|
||||
- "-fsanitize-blacklist=$tsan_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$tsan_ignorelist_path",
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -438,8 +438,8 @@ config("tsan_flags") {
|
||||
config("ubsan_flags") {
|
||||
cflags = []
|
||||
if (is_ubsan) {
|
||||
- if (!defined(ubsan_blacklist_path)) {
|
||||
- ubsan_blacklist_path =
|
||||
+ if (!defined(ubsan_ignorelist_path)) {
|
||||
+ ubsan_ignorelist_path =
|
||||
rebase_path("//tools/ubsan/ignorelist.txt", root_build_dir)
|
||||
}
|
||||
cflags += [
|
||||
@@ -456,7 +456,7 @@ config("ubsan_flags") {
|
||||
"-fsanitize=signed-integer-overflow",
|
||||
"-fsanitize=unreachable",
|
||||
"-fsanitize=vla-bound",
|
||||
- "-fsanitize-blacklist=$ubsan_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$ubsan_ignorelist_path",
|
||||
]
|
||||
|
||||
# Chromecast ubsan builds fail to compile with these
|
||||
@@ -486,8 +486,8 @@ config("ubsan_no_recover") {
|
||||
|
||||
config("ubsan_security_flags") {
|
||||
if (is_ubsan_security) {
|
||||
- if (!defined(ubsan_security_blacklist_path)) {
|
||||
- ubsan_security_blacklist_path =
|
||||
+ if (!defined(ubsan_security_ignorelist_path)) {
|
||||
+ ubsan_security_ignorelist_path =
|
||||
rebase_path("//tools/ubsan/security_ignorelist.txt", root_build_dir)
|
||||
}
|
||||
cflags = [
|
||||
@@ -495,7 +495,7 @@ config("ubsan_security_flags") {
|
||||
"-fsanitize=shift",
|
||||
"-fsanitize=signed-integer-overflow",
|
||||
"-fsanitize=vla-bound",
|
||||
- "-fsanitize-blacklist=$ubsan_security_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$ubsan_security_ignorelist_path",
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -508,13 +508,13 @@ config("ubsan_null_flags") {
|
||||
|
||||
config("ubsan_vptr_flags") {
|
||||
if (is_ubsan_vptr) {
|
||||
- if (!defined(ubsan_vptr_blacklist_path)) {
|
||||
- ubsan_vptr_blacklist_path =
|
||||
+ if (!defined(ubsan_vptr_ignorelist_path)) {
|
||||
+ ubsan_vptr_ignorelist_path =
|
||||
rebase_path("//tools/ubsan/vptr_ignorelist.txt", root_build_dir)
|
||||
}
|
||||
cflags = [
|
||||
"-fsanitize=vptr",
|
||||
- "-fsanitize-blacklist=$ubsan_vptr_blacklist_path",
|
||||
+ "-fsanitize-ignorelist=$ubsan_vptr_ignorelist_path",
|
||||
]
|
||||
}
|
||||
}
|
||||
diff --git a/build_overrides/build.gni b/build_overrides/build.gni
|
||||
index 82627b03653f..f3e563ab701b 100644
|
||||
--- a/build_overrides/build.gni
|
||||
+++ b/build_overrides/build.gni
|
||||
@@ -42,15 +42,15 @@ declare_args() {
|
||||
# Allows different projects to specify their own suppression/ignore lists for
|
||||
# sanitizer tools.
|
||||
# asan_suppressions_file = "path/to/asan_suppressions.cc"
|
||||
-# asan_win_blacklist_path = "path/to/asan/blocklist_win.txt"
|
||||
+# asan_win_ignorelist_path = "path/to/asan/blocklist_win.txt"
|
||||
# lsan_suppressions_file = "path/to/lsan_suppressions.cc"
|
||||
# tsan_suppressions_file = "path/to/tsan_suppressions.cc"
|
||||
-# tsan_blacklist_path = "path/to/tsan/ignores.txt"
|
||||
-# msan_blacklist_path = "path/to/msan/blacklist.txt"
|
||||
-# ubsan_blacklist_path = "path/to/ubsan/blacklist.txt"
|
||||
-# ubsan_vptr_blacklist_path = "path/to/ubsan/vptr_blacklist.txt"
|
||||
-# ubsan_security_blacklist_path = "path/to/ubsan/security_blacklist.txt"
|
||||
-# cfi_blacklist_path = "path/to/cfi/ignores.txt"
|
||||
+# tsan_ignorelist_path = "path/to/tsan/ignores.txt"
|
||||
+# msan_ignorelist_path = "path/to/msan/ignorelist.txt"
|
||||
+# ubsan_ignorelist_path = "path/to/ubsan/ignorelist.txt"
|
||||
+# ubsan_vptr_ignorelist_path = "path/to/ubsan/vptr_ignorelist.txt"
|
||||
+# ubsan_security_ignorelist_path = "path/to/ubsan/security_ignorelist.txt"
|
||||
+# cfi_ignorelist_path = "path/to/cfi/ignores.txt"
|
||||
|
||||
declare_args() {
|
||||
# Android 32-bit non-component, non-clang builds cannot have symbol_level=2
|
||||
diff --git a/tools/msan/blacklist.txt b/tools/msan/ignorelist.txt
|
||||
similarity index 100%
|
||||
rename from tools/msan/blacklist.txt
|
||||
rename to tools/msan/ignorelist.txt
|
@ -1,65 +0,0 @@
|
||||
From 34a955823630096f5b01c2b01d51c1ea59d22763 Mon Sep 17 00:00:00 2001
|
||||
From: Zequan Wu <zequanwu@google.com>
|
||||
Date: Tue, 20 Jul 2021 14:13:50 +0000
|
||||
Subject: [PATCH] Use -ffile-compilation-dir= instead of
|
||||
-fdebug-compilation-dir=
|
||||
|
||||
Bug: 1010267
|
||||
Change-Id: If2b4ead8535a76490eb466a38e3d8fed6ea91079
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2770738
|
||||
Auto-Submit: Zequan Wu <zequanwu@google.com>
|
||||
Commit-Queue: Nico Weber <thakis@chromium.org>
|
||||
Reviewed-by: Nico Weber <thakis@chromium.org>
|
||||
Cr-Commit-Position: refs/heads/master@{#903456}
|
||||
---
|
||||
build/config/compiler/BUILD.gn | 18 ++++++++++++------
|
||||
build/config/compiler/compiler.gni | 7 ++-----
|
||||
2 files changed, 14 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
|
||||
index ede07d111c..6db16c1cdd 100644
|
||||
--- a/build/config/compiler/BUILD.gn
|
||||
+++ b/build/config/compiler/BUILD.gn
|
||||
@@ -1216,12 +1216,18 @@ config("compiler_deterministic") {
|
||||
# different build directory like "out/feature_a" and "out/feature_b" if
|
||||
# we build same files with same compile flag.
|
||||
# Other paths are already given in relative, no need to normalize them.
|
||||
- cflags += [
|
||||
- "-Xclang",
|
||||
- "-fdebug-compilation-dir",
|
||||
- "-Xclang",
|
||||
- ".",
|
||||
- ]
|
||||
+ if (is_nacl) {
|
||||
+ cflags += [
|
||||
+ "-Xclang",
|
||||
+ "-fdebug-compilation-dir",
|
||||
+ "-Xclang",
|
||||
+ ".",
|
||||
+ ]
|
||||
+ } else {
|
||||
+ # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
|
||||
+ # and -fcoverage-compilation-dir=.
|
||||
+ cflags += [ "-ffile-compilation-dir=." ]
|
||||
+ }
|
||||
if (!is_win) {
|
||||
# We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
|
||||
asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
|
||||
diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni
|
||||
index 8c259c360a..642319b4f4 100644
|
||||
--- a/build/config/compiler/compiler.gni
|
||||
+++ b/build/config/compiler/compiler.gni
|
||||
@@ -225,11 +225,8 @@ declare_args() {
|
||||
# deterministic builds to reduce compile times, so this is less relevant for
|
||||
# official builders.
|
||||
strip_absolute_paths_from_debug_symbols_default =
|
||||
- # TODO(crbug.com/1010267): remove '!use_clang_coverage', coverage build has
|
||||
- # dependency to absolute path of source files.
|
||||
- !use_clang_coverage &&
|
||||
- (is_android || is_fuchsia || is_nacl || (is_win && use_lld) || is_linux ||
|
||||
- is_chromeos || (is_apple && !enable_dsyms))
|
||||
+ is_android || is_fuchsia || is_nacl || (is_win && use_lld) || is_linux ||
|
||||
+ is_chromeos || (is_apple && !enable_dsyms)
|
||||
|
||||
# If the platform uses stripped absolute paths by default, then we don't expose
|
||||
# it as a configuration option. If this is causing problems, please file a bug.
|
683
chromium/wayland-fix-binding-to-wrong-version.patch
Normal file
683
chromium/wayland-fix-binding-to-wrong-version.patch
Normal file
@ -0,0 +1,683 @@
|
||||
From 5e3ed3d015d0ddae5e4d813204616d89d2f859c7 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Dunaev <adunaev@igalia.com>
|
||||
Date: Tue, 14 Dec 2021 09:54:52 +0000
|
||||
Subject: [PATCH 1/2] [linux/wayland] Fixed terminate caused by binding to
|
||||
wrong version.
|
||||
|
||||
The Ozone/Wayland implementation had a few places where the Wayland
|
||||
objects were bound without proper checking for their versions. That was
|
||||
part of the technical debt not addressed before, and ended up causing
|
||||
the issue explained in the linked crbug: the compositor terminates the
|
||||
client that binds to the protocol that it does not actually support.
|
||||
|
||||
This patch fixes the issue by adding the necessary checks in all places
|
||||
where they were missing. Also a convenience macro for validating the
|
||||
version is proposed.
|
||||
|
||||
Bug: 1279574
|
||||
Change-Id: I74efa97f64b480bed47372d8d559593ae84eeb18
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3337037
|
||||
Reviewed-by: Maksim Sisov <msisov@igalia.com>
|
||||
Commit-Queue: Alexander Dunaev <adunaev@igalia.com>
|
||||
Cr-Commit-Position: refs/heads/main@{#951428}
|
||||
|
||||
(cherry picked from commit dd4c3ddadbb9869f59cee201a38e9ca3b9154f4d)
|
||||
---
|
||||
.../platform/wayland/common/wayland_object.cc | 21 +++++++++++++++++++
|
||||
.../platform/wayland/common/wayland_object.h | 11 ++++++++++
|
||||
.../gtk_primary_selection_device_manager.cc | 11 +++++-----
|
||||
ui/ozone/platform/wayland/host/gtk_shell1.cc | 12 ++++++-----
|
||||
.../wayland/host/org_kde_kwin_idle.cc | 9 ++++----
|
||||
.../wayland/host/overlay_prioritizer.cc | 9 ++++----
|
||||
.../wayland/host/surface_augmenter.cc | 11 ++++++----
|
||||
.../host/wayland_data_device_manager.cc | 9 +++++---
|
||||
ui/ozone/platform/wayland/host/wayland_drm.cc | 6 ++++--
|
||||
.../platform/wayland/host/wayland_output.cc | 10 ++++-----
|
||||
ui/ozone/platform/wayland/host/wayland_shm.cc | 9 ++++----
|
||||
.../wayland/host/wayland_zaura_shell.cc | 9 +++++---
|
||||
.../wayland/host/wayland_zcr_cursor_shapes.cc | 10 +++++----
|
||||
.../wayland/host/wayland_zwp_linux_dmabuf.cc | 9 +++++---
|
||||
.../host/wayland_zwp_pointer_constraints.cc | 6 +++---
|
||||
.../host/wayland_zwp_pointer_gestures.cc | 7 ++++---
|
||||
.../wayland_zwp_relative_pointer_manager.cc | 8 ++++---
|
||||
.../wayland/host/xdg_foreign_wrapper.cc | 14 ++++++++-----
|
||||
.../wayland/host/zwp_idle_inhibit_manager.cc | 10 +++++----
|
||||
.../zwp_primary_selection_device_manager.cc | 9 ++++----
|
||||
20 files changed, 131 insertions(+), 69 deletions(-)
|
||||
|
||||
diff --git a/ui/ozone/platform/wayland/common/wayland_object.cc b/ui/ozone/platform/wayland/common/wayland_object.cc
|
||||
index 0374cb9d874..8faa648120d 100644
|
||||
--- a/ui/ozone/platform/wayland/common/wayland_object.cc
|
||||
+++ b/ui/ozone/platform/wayland/common/wayland_object.cc
|
||||
@@ -35,6 +35,8 @@
|
||||
#include <xdg-shell-client-protocol.h>
|
||||
#include <xdg-shell-unstable-v6-client-protocol.h>
|
||||
|
||||
+#include "base/logging.h"
|
||||
+
|
||||
namespace wl {
|
||||
namespace {
|
||||
|
||||
@@ -77,6 +79,25 @@ void delete_touch(wl_touch* touch) {
|
||||
|
||||
} // namespace
|
||||
|
||||
+bool CanBind(const std::string& interface,
|
||||
+ uint32_t available_version,
|
||||
+ uint32_t min_version,
|
||||
+ uint32_t max_version) {
|
||||
+ if (available_version < min_version) {
|
||||
+ LOG(WARNING) << "Unable to bind to " << interface << " version "
|
||||
+ << available_version << ". The minimum supported version is "
|
||||
+ << min_version << ".";
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
+ if (available_version > max_version) {
|
||||
+ LOG(WARNING) << "Binding to " << interface << " version " << max_version
|
||||
+ << " but version " << available_version << " is available.";
|
||||
+ }
|
||||
+
|
||||
+ return true;
|
||||
+}
|
||||
+
|
||||
void (*ObjectTraits<wl_cursor_theme>::deleter)(wl_cursor_theme*) =
|
||||
&wl_cursor_theme_destroy;
|
||||
|
||||
diff --git a/ui/ozone/platform/wayland/common/wayland_object.h b/ui/ozone/platform/wayland/common/wayland_object.h
|
||||
index 3a8bb9e494d..ce787bf8805 100644
|
||||
--- a/ui/ozone/platform/wayland/common/wayland_object.h
|
||||
+++ b/ui/ozone/platform/wayland/common/wayland_object.h
|
||||
@@ -79,6 +79,17 @@ struct ObjectTraits<wl_proxy> {
|
||||
static void (*deleter)(void*);
|
||||
};
|
||||
|
||||
+// Checks the given |available_version| exposed by the server against
|
||||
+// |min_version| and |max_version| supported by the client.
|
||||
+// Returns false (with rendering a warning) if |available_version| is less than
|
||||
+// the minimum supported version.
|
||||
+// Returns true otherwise, renders an info message if |available_version| is
|
||||
+// greater than the maximum supported one.
|
||||
+bool CanBind(const std::string& interface,
|
||||
+ uint32_t available_version,
|
||||
+ uint32_t min_version,
|
||||
+ uint32_t max_version);
|
||||
+
|
||||
} // namespace wl
|
||||
|
||||
// Puts the forward declaration for struct TYPE and declares the template
|
||||
diff --git a/ui/ozone/platform/wayland/host/gtk_primary_selection_device_manager.cc b/ui/ozone/platform/wayland/host/gtk_primary_selection_device_manager.cc
|
||||
index af3087d1891..2991233fe6e 100644
|
||||
--- a/ui/ozone/platform/wayland/host/gtk_primary_selection_device_manager.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/gtk_primary_selection_device_manager.cc
|
||||
@@ -16,7 +16,7 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMaxGtkPrimarySelectionDeviceManagerVersion = 1;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -31,12 +31,13 @@ void GtkPrimarySelectionDeviceManager::Instantiate(
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->gtk_primary_selection_device_manager())
|
||||
+ if (connection->gtk_primary_selection_device_manager() ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
- auto manager = wl::Bind<gtk_primary_selection_device_manager>(
|
||||
- registry, name,
|
||||
- std::min(version, kMaxGtkPrimarySelectionDeviceManagerVersion));
|
||||
+ auto manager = wl::Bind<gtk_primary_selection_device_manager>(registry, name,
|
||||
+ kMinVersion);
|
||||
if (!manager) {
|
||||
LOG(ERROR) << "Failed to bind gtk_primary_selection_device_manager";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/gtk_shell1.cc b/ui/ozone/platform/wayland/host/gtk_shell1.cc
|
||||
index cb3b0c8fa02..26dfd7fbf3f 100644
|
||||
--- a/ui/ozone/platform/wayland/host/gtk_shell1.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/gtk_shell1.cc
|
||||
@@ -17,8 +17,8 @@ namespace {
|
||||
// gtk_shell1 exposes request_focus() since version 3. Below that, it is not
|
||||
// interesting for us, although it provides some shell integration that might be
|
||||
// useful.
|
||||
-constexpr uint32_t kMinGtkShell1Version = 3;
|
||||
-constexpr uint32_t kMaxGtkShell1Version = 4;
|
||||
+constexpr uint32_t kMinVersion = 3;
|
||||
+constexpr uint32_t kMaxVersion = 4;
|
||||
} // namespace
|
||||
|
||||
// static
|
||||
@@ -32,11 +32,13 @@ void GtkShell1::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->gtk_shell1_ || version < kMinGtkShell1Version)
|
||||
+ if (connection->gtk_shell1_ ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMaxVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
- auto gtk_shell1 = wl::Bind<::gtk_shell1>(
|
||||
- registry, name, std::min(version, kMaxGtkShell1Version));
|
||||
+ auto gtk_shell1 =
|
||||
+ wl::Bind<::gtk_shell1>(registry, name, std::min(version, kMaxVersion));
|
||||
if (!gtk_shell1) {
|
||||
LOG(ERROR) << "Failed to bind gtk_shell1";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/org_kde_kwin_idle.cc b/ui/ozone/platform/wayland/host/org_kde_kwin_idle.cc
|
||||
index 4746aa798c0..8b7a7416d95 100644
|
||||
--- a/ui/ozone/platform/wayland/host/org_kde_kwin_idle.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/org_kde_kwin_idle.cc
|
||||
@@ -13,7 +13,7 @@ namespace ui {
|
||||
|
||||
namespace {
|
||||
|
||||
-constexpr uint32_t kMaxOrgKdeKwinIdleVersion = 1;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
|
||||
// After the system has gone idle, it will wait for this time before notifying
|
||||
// us. This reduces "jitter" of the idle/active state, but also adds some lag
|
||||
@@ -58,11 +58,12 @@ void OrgKdeKwinIdle::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->org_kde_kwin_idle_)
|
||||
+ if (connection->org_kde_kwin_idle_ ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
- auto idle = wl::Bind<struct org_kde_kwin_idle>(
|
||||
- registry, name, std::min(version, kMaxOrgKdeKwinIdleVersion));
|
||||
+ auto idle = wl::Bind<struct org_kde_kwin_idle>(registry, name, kMinVersion);
|
||||
if (!idle) {
|
||||
LOG(ERROR) << "Failed to bind to org_kde_kwin_idle global";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/overlay_prioritizer.cc b/ui/ozone/platform/wayland/host/overlay_prioritizer.cc
|
||||
index e8aaf39a337..11496b52324 100644
|
||||
--- a/ui/ozone/platform/wayland/host/overlay_prioritizer.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/overlay_prioritizer.cc
|
||||
@@ -12,7 +12,7 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMaxOverlayPrioritizerVersion = 1;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -26,11 +26,12 @@ void OverlayPrioritizer::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->overlay_prioritizer_)
|
||||
+ if (connection->overlay_prioritizer_ ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
- auto prioritizer = wl::Bind<overlay_prioritizer>(
|
||||
- registry, name, std::min(version, kMaxOverlayPrioritizerVersion));
|
||||
+ auto prioritizer = wl::Bind<overlay_prioritizer>(registry, name, kMinVersion);
|
||||
if (!prioritizer) {
|
||||
LOG(ERROR) << "Failed to bind overlay_prioritizer";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/surface_augmenter.cc b/ui/ozone/platform/wayland/host/surface_augmenter.cc
|
||||
index 8294897bcd5..0589076bcf5 100644
|
||||
--- a/ui/ozone/platform/wayland/host/surface_augmenter.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/surface_augmenter.cc
|
||||
@@ -13,7 +13,8 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMaxSurfaceAugmenterVersion = 1;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
+constexpr uint32_t kMaxVersion = 1;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -27,11 +28,13 @@ void SurfaceAugmenter::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->surface_augmenter_)
|
||||
+ if (connection->surface_augmenter_ ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMaxVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
- auto augmenter = wl::Bind<surface_augmenter>(
|
||||
- registry, name, std::min(version, kMaxSurfaceAugmenterVersion));
|
||||
+ auto augmenter = wl::Bind<surface_augmenter>(registry, name,
|
||||
+ std::min(version, kMaxVersion));
|
||||
if (!augmenter) {
|
||||
LOG(ERROR) << "Failed to bind overlay_prioritizer";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_data_device_manager.cc b/ui/ozone/platform/wayland/host/wayland_data_device_manager.cc
|
||||
index 408cb1c72f4..0f03942e699 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_data_device_manager.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_data_device_manager.cc
|
||||
@@ -14,7 +14,8 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMaxDeviceManagerVersion = 3;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
+constexpr uint32_t kMaxVersion = 3;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -28,11 +29,13 @@ void WaylandDataDeviceManager::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->data_device_manager_)
|
||||
+ if (connection->data_device_manager_ ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMaxVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
auto data_device_manager = wl::Bind<wl_data_device_manager>(
|
||||
- registry, name, std::min(version, kMaxDeviceManagerVersion));
|
||||
+ registry, name, std::min(version, kMaxVersion));
|
||||
if (!data_device_manager) {
|
||||
LOG(ERROR) << "Failed to bind to wl_data_device_manager global";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_drm.cc b/ui/ozone/platform/wayland/host/wayland_drm.cc
|
||||
index d806e8e9f5d..a7ed2e20ffe 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_drm.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_drm.cc
|
||||
@@ -17,7 +17,7 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMinWlDrmVersion = 2;
|
||||
+constexpr uint32_t kMinVersion = 2;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -31,8 +31,10 @@ void WaylandDrm::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->drm_ || version < kMinWlDrmVersion)
|
||||
+ if (connection->drm_ ||
|
||||
+ !!wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
auto wl_drm = wl::Bind<struct wl_drm>(registry, name, version);
|
||||
if (!wl_drm) {
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_output.cc b/ui/ozone/platform/wayland/host/wayland_output.cc
|
||||
index 2d481d1167e..13e2b2ea685 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_output.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_output.cc
|
||||
@@ -16,7 +16,8 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMinWlOutputVersion = 2;
|
||||
+// TODO(crbug.com/1279681): support newer versions.
|
||||
+constexpr uint32_t kMinVersion = 2;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -30,14 +31,11 @@ void WaylandOutput::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (version < kMinWlOutputVersion) {
|
||||
- LOG(ERROR)
|
||||
- << "Unable to bind to the unsupported wl_output object with version= "
|
||||
- << version << ". Minimum supported version is " << kMinWlOutputVersion;
|
||||
+ if (!wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
}
|
||||
|
||||
- auto output = wl::Bind<wl_output>(registry, name, version);
|
||||
+ auto output = wl::Bind<wl_output>(registry, name, kMinVersion);
|
||||
if (!output) {
|
||||
LOG(ERROR) << "Failed to bind to wl_output global";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_shm.cc b/ui/ozone/platform/wayland/host/wayland_shm.cc
|
||||
index 7c6cd40569d..de97ad1c2b2 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_shm.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_shm.cc
|
||||
@@ -10,7 +10,7 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMaxShmVersion = 1;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
constexpr uint32_t kShmFormat = WL_SHM_FORMAT_ARGB8888;
|
||||
} // namespace
|
||||
|
||||
@@ -25,11 +25,12 @@ void WaylandShm::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->shm_)
|
||||
+ if (connection->shm_ ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
- auto shm =
|
||||
- wl::Bind<wl_shm>(registry, name, std::min(version, kMaxShmVersion));
|
||||
+ auto shm = wl::Bind<wl_shm>(registry, name, kMinVersion);
|
||||
if (!shm) {
|
||||
LOG(ERROR) << "Failed to bind to wl_shm global";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_zaura_shell.cc b/ui/ozone/platform/wayland/host/wayland_zaura_shell.cc
|
||||
index b1ae436db08..1b5585f7c18 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_zaura_shell.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_zaura_shell.cc
|
||||
@@ -19,7 +19,8 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMaxAuraShellVersion = 28;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
+constexpr uint32_t kMaxVersion = 28;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -33,11 +34,13 @@ void WaylandZAuraShell::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->zaura_shell_)
|
||||
+ if (connection->zaura_shell_ ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMaxVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
auto zaura_shell = wl::Bind<struct zaura_shell>(
|
||||
- registry, name, std::min(version, kMaxAuraShellVersion));
|
||||
+ registry, name, std::min(version, kMaxVersion));
|
||||
if (!zaura_shell) {
|
||||
LOG(ERROR) << "Failed to bind zaura_shell";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_zcr_cursor_shapes.cc b/ui/ozone/platform/wayland/host/wayland_zcr_cursor_shapes.cc
|
||||
index 094a2f98686..84d847eea16 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_zcr_cursor_shapes.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_zcr_cursor_shapes.cc
|
||||
@@ -16,7 +16,7 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMaxCursorShapesVersion = 1;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
}
|
||||
|
||||
using mojom::CursorType;
|
||||
@@ -32,11 +32,13 @@ void WaylandZcrCursorShapes::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->zcr_cursor_shapes_)
|
||||
+ if (connection->zcr_cursor_shapes_ ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
- auto zcr_cursor_shapes = wl::Bind<zcr_cursor_shapes_v1>(
|
||||
- registry, name, std::min(version, kMaxCursorShapesVersion));
|
||||
+ auto zcr_cursor_shapes =
|
||||
+ wl::Bind<zcr_cursor_shapes_v1>(registry, name, kMinVersion);
|
||||
if (!zcr_cursor_shapes) {
|
||||
LOG(ERROR) << "Failed to bind zcr_cursor_shapes_v1";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.cc b/ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.cc
|
||||
index 7035dc4ed26..cee793b9ae8 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.cc
|
||||
@@ -14,7 +14,8 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMaxLinuxDmabufVersion = 3;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
+constexpr uint32_t kMaxVersion = 3;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -28,11 +29,13 @@ void WaylandZwpLinuxDmabuf::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->zwp_dmabuf())
|
||||
+ if (connection->zwp_dmabuf() ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMaxVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
auto zwp_linux_dmabuf = wl::Bind<zwp_linux_dmabuf_v1>(
|
||||
- registry, name, std::min(version, kMaxLinuxDmabufVersion));
|
||||
+ registry, name, std::min(version, kMaxVersion));
|
||||
if (!zwp_linux_dmabuf) {
|
||||
LOG(ERROR) << "Failed to bind zwp_linux_dmabuf_v1";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_zwp_pointer_constraints.cc b/ui/ozone/platform/wayland/host/wayland_zwp_pointer_constraints.cc
|
||||
index 24e4dacc7ee..c1aca770ff5 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_zwp_pointer_constraints.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_zwp_pointer_constraints.cc
|
||||
@@ -15,7 +15,7 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMinZwpPointerConstraintsVersion = 1;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -30,12 +30,12 @@ void WaylandZwpPointerConstraints::Instantiate(WaylandConnection* connection,
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
if (connection->wayland_zwp_pointer_constraints_ ||
|
||||
- version < kMinZwpPointerConstraintsVersion) {
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
}
|
||||
|
||||
auto zwp_pointer_constraints_v1 =
|
||||
- wl::Bind<struct zwp_pointer_constraints_v1>(registry, name, version);
|
||||
+ wl::Bind<struct zwp_pointer_constraints_v1>(registry, name, kMinVersion);
|
||||
if (!zwp_pointer_constraints_v1) {
|
||||
LOG(ERROR) << "Failed to bind wp_pointer_constraints_v1";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_zwp_pointer_gestures.cc b/ui/ozone/platform/wayland/host/wayland_zwp_pointer_gestures.cc
|
||||
index 5d96c8923fd..31bffb726c6 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_zwp_pointer_gestures.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_zwp_pointer_gestures.cc
|
||||
@@ -19,7 +19,7 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMinZwpPointerGesturesVersion = 1;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -34,11 +34,12 @@ void WaylandZwpPointerGestures::Instantiate(WaylandConnection* connection,
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
if (connection->wayland_zwp_pointer_gestures_ ||
|
||||
- version < kMinZwpPointerGesturesVersion)
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
auto zwp_pointer_gestures_v1 =
|
||||
- wl::Bind<struct zwp_pointer_gestures_v1>(registry, name, version);
|
||||
+ wl::Bind<struct zwp_pointer_gestures_v1>(registry, name, kMinVersion);
|
||||
if (!zwp_pointer_gestures_v1) {
|
||||
LOG(ERROR) << "Failed to bind wp_pointer_gestures_v1";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_zwp_relative_pointer_manager.cc b/ui/ozone/platform/wayland/host/wayland_zwp_relative_pointer_manager.cc
|
||||
index 3a8ef4c7f96..c84a891dfe7 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_zwp_relative_pointer_manager.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_zwp_relative_pointer_manager.cc
|
||||
@@ -14,7 +14,7 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMinZwpRelativePointerManagerVersion = 1;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -30,11 +30,13 @@ void WaylandZwpRelativePointerManager::Instantiate(
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
if (connection->wayland_zwp_relative_pointer_manager_ ||
|
||||
- version < kMinZwpRelativePointerManagerVersion)
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
auto zwp_relative_pointer_manager_v1 =
|
||||
- wl::Bind<struct zwp_relative_pointer_manager_v1>(registry, name, version);
|
||||
+ wl::Bind<struct zwp_relative_pointer_manager_v1>(registry, name,
|
||||
+ kMinVersion);
|
||||
if (!zwp_relative_pointer_manager_v1) {
|
||||
LOG(ERROR) << "Failed to bind zwp_relative_pointer_manager_v1";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/xdg_foreign_wrapper.cc b/ui/ozone/platform/wayland/host/xdg_foreign_wrapper.cc
|
||||
index a34b684d128..2586adf9b85 100644
|
||||
--- a/ui/ozone/platform/wayland/host/xdg_foreign_wrapper.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/xdg_foreign_wrapper.cc
|
||||
@@ -19,6 +19,8 @@ constexpr char XdgForeignWrapper::kInterfaceNameV1[];
|
||||
// static
|
||||
constexpr char XdgForeignWrapper::kInterfaceNameV2[];
|
||||
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
+
|
||||
using OnHandleExported = XdgForeignWrapper::OnHandleExported;
|
||||
|
||||
namespace {
|
||||
@@ -185,15 +187,17 @@ void XdgForeignWrapper::Instantiate(WaylandConnection* connection,
|
||||
uint32_t name,
|
||||
const std::string& interface,
|
||||
uint32_t version) {
|
||||
- if (connection->xdg_foreign_)
|
||||
+ if (connection->xdg_foreign_ ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
if (interface == kInterfaceNameV1) {
|
||||
- connection->xdg_foreign_ =
|
||||
- CreateWrapper<zxdg_exporter_v1>(connection, registry, name, version);
|
||||
+ connection->xdg_foreign_ = CreateWrapper<zxdg_exporter_v1>(
|
||||
+ connection, registry, name, kMinVersion);
|
||||
} else if (interface == kInterfaceNameV2) {
|
||||
- connection->xdg_foreign_ =
|
||||
- CreateWrapper<zxdg_exporter_v2>(connection, registry, name, version);
|
||||
+ connection->xdg_foreign_ = CreateWrapper<zxdg_exporter_v2>(
|
||||
+ connection, registry, name, kMinVersion);
|
||||
} else {
|
||||
NOTREACHED() << " unexpected interface name: " << interface;
|
||||
}
|
||||
diff --git a/ui/ozone/platform/wayland/host/zwp_idle_inhibit_manager.cc b/ui/ozone/platform/wayland/host/zwp_idle_inhibit_manager.cc
|
||||
index 47121293acb..fc05de68778 100644
|
||||
--- a/ui/ozone/platform/wayland/host/zwp_idle_inhibit_manager.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/zwp_idle_inhibit_manager.cc
|
||||
@@ -12,7 +12,7 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMaxZwpIdleInhibitManagerVersion = 1;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -26,11 +26,13 @@ void ZwpIdleInhibitManager::Instantiate(WaylandConnection* connection,
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->zwp_idle_inhibit_manager_)
|
||||
+ if (connection->zwp_idle_inhibit_manager_ ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
- auto manager = wl::Bind<zwp_idle_inhibit_manager_v1>(
|
||||
- registry, name, std::min(version, kMaxZwpIdleInhibitManagerVersion));
|
||||
+ auto manager =
|
||||
+ wl::Bind<zwp_idle_inhibit_manager_v1>(registry, name, kMinVersion);
|
||||
if (!manager) {
|
||||
LOG(ERROR) << "Failed to bind zwp_idle_inhibit_manager_v1";
|
||||
return;
|
||||
diff --git a/ui/ozone/platform/wayland/host/zwp_primary_selection_device_manager.cc b/ui/ozone/platform/wayland/host/zwp_primary_selection_device_manager.cc
|
||||
index f6f9fd23c35..795a09c0565 100644
|
||||
--- a/ui/ozone/platform/wayland/host/zwp_primary_selection_device_manager.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/zwp_primary_selection_device_manager.cc
|
||||
@@ -16,7 +16,7 @@
|
||||
namespace ui {
|
||||
|
||||
namespace {
|
||||
-constexpr uint32_t kMaxGtkPrimarySelectionDeviceManagerVersion = 1;
|
||||
+constexpr uint32_t kMinVersion = 1;
|
||||
} // namespace
|
||||
|
||||
// static
|
||||
@@ -31,12 +31,13 @@ void ZwpPrimarySelectionDeviceManager::Instantiate(
|
||||
uint32_t version) {
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
- if (connection->zwp_primary_selection_device_manager_)
|
||||
+ if (connection->zwp_primary_selection_device_manager_ ||
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
+ }
|
||||
|
||||
auto manager = wl::Bind<zwp_primary_selection_device_manager_v1>(
|
||||
- registry, name,
|
||||
- std::min(version, kMaxGtkPrimarySelectionDeviceManagerVersion));
|
||||
+ registry, name, kMinVersion);
|
||||
if (!manager) {
|
||||
LOG(ERROR) << "Failed to bind zwp_primary_selection_device_manager_v1";
|
||||
return;
|
||||
|
||||
From cd9eae3117ccc930f0cfae6d24bba1d6d66d769c Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Dunaev <adunaev@igalia.com>
|
||||
Date: Tue, 28 Dec 2021 14:02:05 +0000
|
||||
Subject: [PATCH 2/2] [linux/wayland] Fixed terminate caused by binding to
|
||||
wrong version.
|
||||
|
||||
This is a fixup to [1] where a typo creeped in.
|
||||
|
||||
[1] https://chromium-review.googlesource.com/c/chromium/src/+/3337037
|
||||
|
||||
Bug: 1279574
|
||||
Change-Id: If8f1a308ce8d27b51a9cd4d52ad8eec2e29edf95
|
||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3358254
|
||||
Reviewed-by: Antonio Gomes <tonikitoo@igalia.com>
|
||||
Commit-Queue: Alexander Dunaev <adunaev@igalia.com>
|
||||
Auto-Submit: Alexander Dunaev <adunaev@igalia.com>
|
||||
Cr-Commit-Position: refs/heads/main@{#954286}
|
||||
|
||||
(cherry picked from commit a84b79daa8897b822336b8f348ef4daaae07af37)
|
||||
---
|
||||
ui/ozone/platform/wayland/host/wayland_drm.cc | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/ui/ozone/platform/wayland/host/wayland_drm.cc b/ui/ozone/platform/wayland/host/wayland_drm.cc
|
||||
index a7ed2e20ffe..b10b79412e5 100644
|
||||
--- a/ui/ozone/platform/wayland/host/wayland_drm.cc
|
||||
+++ b/ui/ozone/platform/wayland/host/wayland_drm.cc
|
||||
@@ -32,7 +32,7 @@ void WaylandDrm::Instantiate(WaylandConnection* connection,
|
||||
DCHECK_EQ(interface, kInterfaceName);
|
||||
|
||||
if (connection->drm_ ||
|
||||
- !!wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
+ !wl::CanBind(interface, version, kMinVersion, kMinVersion)) {
|
||||
return;
|
||||
}
|
||||
|
56
chromium/xxx-ppc64le-4k-pages.patch
Normal file
56
chromium/xxx-ppc64le-4k-pages.patch
Normal file
@ -0,0 +1,56 @@
|
||||
commit 45809f85bc3524f867e6e954f444fddd2333245a
|
||||
Author: q66 <daniel@octaforge.org>
|
||||
Date: Fri Jan 7 18:18:52 2022 +0100
|
||||
|
||||
switch ppc64 to 4k pages
|
||||
|
||||
since the partition allocator appears to hate larger constants
|
||||
and at this point errors at compile time and i am not willing
|
||||
to wade through this pile of curse and we use 4k kernels anyway,
|
||||
assume 4K pages for ppc64
|
||||
|
||||
diff --git a/base/allocator/partition_allocator/page_allocator_constants.h b/base/allocator/partition_allocator/page_allocator_constants.h
|
||||
index bfd5753..045082b 100644
|
||||
--- a/base/allocator/partition_allocator/page_allocator_constants.h
|
||||
+++ b/base/allocator/partition_allocator/page_allocator_constants.h
|
||||
@@ -40,7 +40,7 @@ namespace base {
|
||||
|
||||
PAGE_ALLOCATOR_CONSTANTS_DECLARE_CONSTEXPR ALWAYS_INLINE size_t
|
||||
PageAllocationGranularityShift() {
|
||||
-#if defined(OS_WIN) || defined(ARCH_CPU_PPC64)
|
||||
+#if defined(OS_WIN)
|
||||
// Modern ppc64 systems support 4kB (shift = 12) and 64kB (shift = 16) page
|
||||
// sizes. Since 64kB is the de facto standard on the platform and binaries
|
||||
// compiled for 64kB are likely to work on 4kB systems, 64kB is a good choice
|
||||
diff --git a/base/allocator/partition_allocator/partition_alloc_constants.h b/base/allocator/partition_allocator/partition_alloc_constants.h
|
||||
index 0b9260d..3e054ec 100644
|
||||
--- a/base/allocator/partition_allocator/partition_alloc_constants.h
|
||||
+++ b/base/allocator/partition_allocator/partition_alloc_constants.h
|
||||
@@ -54,11 +54,6 @@ PAGE_ALLOCATOR_CONSTANTS_DECLARE_CONSTEXPR ALWAYS_INLINE size_t
|
||||
PartitionPageShift() {
|
||||
return 16; // 64 KiB
|
||||
}
|
||||
-#elif defined(ARCH_CPU_PPC64)
|
||||
-PAGE_ALLOCATOR_CONSTANTS_DECLARE_CONSTEXPR ALWAYS_INLINE size_t
|
||||
-PartitionPageShift() {
|
||||
- return 18; // 256 KiB
|
||||
-}
|
||||
#elif defined(OS_APPLE) && defined(ARCH_CPU_64_BITS)
|
||||
PAGE_ALLOCATOR_CONSTANTS_DECLARE_CONSTEXPR ALWAYS_INLINE size_t
|
||||
PartitionPageShift() {
|
||||
diff --git a/base/allocator/partition_allocator/partition_alloc_forward.h b/base/allocator/partition_allocator/partition_alloc_forward.h
|
||||
index 938ea38..9414b41 100644
|
||||
--- a/base/allocator/partition_allocator/partition_alloc_forward.h
|
||||
+++ b/base/allocator/partition_allocator/partition_alloc_forward.h
|
||||
@@ -26,7 +26,10 @@ namespace base {
|
||||
//
|
||||
// __STDCPP_DEFAULT_NEW_ALIGNMENT__ is C++17. As such, it is not defined on all
|
||||
// platforms, as Chrome's requirement is C++14 as of 2020.
|
||||
-#if defined(__STDCPP_DEFAULT_NEW_ALIGNMENT__)
|
||||
+#if defined(__powerpc64__)
|
||||
+/* we want this to be 16 here always */
|
||||
+constexpr size_t kAlignment = 16;
|
||||
+#elif defined(__STDCPP_DEFAULT_NEW_ALIGNMENT__)
|
||||
constexpr size_t kAlignment =
|
||||
std::max(alignof(max_align_t), __STDCPP_DEFAULT_NEW_ALIGNMENT__);
|
||||
#else
|
@ -2125,8 +2125,8 @@ diff --git a/third_party/crashpad/crashpad/minidump/minidump_context_writer.h b/
|
||||
index d4ab936ee..1d22fc59c 100644
|
||||
--- a/third_party/crashpad/crashpad/minidump/minidump_context_writer.h
|
||||
+++ b/third_party/crashpad/crashpad/minidump/minidump_context_writer.h
|
||||
@@ -315,6 +315,45 @@ class MinidumpContextMIPS64Writer final : public MinidumpContextWriter {
|
||||
DISALLOW_COPY_AND_ASSIGN(MinidumpContextMIPS64Writer);
|
||||
@@ -315,6 +315,43 @@ class MinidumpContextMIPS64Writer final : public MinidumpContextWriter {
|
||||
MinidumpContextMIPS64 context_;
|
||||
};
|
||||
|
||||
+class MinidumpContextPPC64Writer final : public MinidumpContextWriter {
|
||||
@ -2164,8 +2164,6 @@ index d4ab936ee..1d22fc59c 100644
|
||||
+
|
||||
+ private:
|
||||
+ MinidumpContextPPC64 context_;
|
||||
+
|
||||
+ DISALLOW_COPY_AND_ASSIGN(MinidumpContextPPC64Writer);
|
||||
+};
|
||||
+
|
||||
} // namespace crashpad
|
||||
@ -3244,44 +3242,6 @@ index 30a2ab21d..60509f21d 100644
|
||||
#endif
|
||||
}
|
||||
|
||||
diff --git a/third_party/crashpad/crashpad/util/posix/signals_test.cc b/third_party/crashpad/crashpad/util/posix/signals_test.cc
|
||||
index 54cc2f19f..298b5c993 100644
|
||||
--- a/third_party/crashpad/crashpad/util/posix/signals_test.cc
|
||||
+++ b/third_party/crashpad/crashpad/util/posix/signals_test.cc
|
||||
@@ -46,9 +46,9 @@ bool CanCauseSignal(int sig) {
|
||||
return sig == SIGABRT ||
|
||||
sig == SIGALRM ||
|
||||
sig == SIGBUS ||
|
||||
-#if !defined(ARCH_CPU_ARM64)
|
||||
+#if !defined(ARCH_CPU_ARM64) && !defined(ARCH_CPU_PPC64)
|
||||
sig == SIGFPE ||
|
||||
-#endif // !defined(ARCH_CPU_ARM64)
|
||||
+#endif // !defined(ARCH_CPU_ARM64) && !defined(ARCH_CPU_PPC64)
|
||||
#if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARMEL)
|
||||
sig == SIGILL ||
|
||||
#endif // defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARMEL)
|
||||
@@ -117,9 +117,11 @@ void CauseSignal(int sig) {
|
||||
break;
|
||||
}
|
||||
|
||||
-#if !defined(ARCH_CPU_ARM64)
|
||||
+#if !defined(ARCH_CPU_ARM64) && !defined(ARCH_CPU_PPC64)
|
||||
// ARM64 has hardware integer division instructions that don’t generate a
|
||||
// trap for divide-by-zero, so this doesn’t produce SIGFPE.
|
||||
+ //
|
||||
+ // PPC64 fixed-point division by zero also doesn't produce a SIGFPE.
|
||||
case SIGFPE: {
|
||||
// Optimization makes this tricky, so get zero from a system call likely
|
||||
// to succeed, and try to do something with the result.
|
||||
@@ -137,7 +139,7 @@ void CauseSignal(int sig) {
|
||||
fstat(quotient, &stat_buf);
|
||||
break;
|
||||
}
|
||||
-#endif // ARCH_CPU_ARM64
|
||||
+#endif // !defined(ARCH_CPU_ARM64) && !defined(ARCH_CPU_PPC64)
|
||||
|
||||
#if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARMEL)
|
||||
case SIGILL: {
|
||||
diff --git a/third_party/dav1d/BUILD.gn b/third_party/dav1d/BUILD.gn
|
||||
index 6b4566fc3..c07f732ad 100644
|
||||
--- a/third_party/dav1d/BUILD.gn
|
||||
|
@ -4,7 +4,8 @@ pkgname=cifs-utils
|
||||
pkgver=6.14
|
||||
pkgrel=1
|
||||
pkgdesc="CIFS filesystem user-space tools"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
arch=(riscv64)
|
||||
url="https://wiki.samba.org/index.php/LinuxCIFS_utils"
|
||||
license=('GPL')
|
||||
depends=('libcap' 'keyutils' 'krb5' 'talloc' 'libwbclient' 'pam')
|
||||
@ -27,7 +28,7 @@ build() {
|
||||
autoreconf -i
|
||||
# https://www.spinics.net/lists/linux-cifs/msg21550.html
|
||||
# change back to libcap-ng depend when upstream is fixed
|
||||
./configure --prefix=/usr --with-libcap=yes --sbindir=/usr/bin --disable-systemd
|
||||
./configure --prefix=/usr --with-libcap=yes --sbindir=/usr/bin --disable-systemd --build=${CHOST}
|
||||
make
|
||||
}
|
||||
|
||||
|
40
cups/0001_fix_missing_bracket.patch
Normal file
40
cups/0001_fix_missing_bracket.patch
Normal file
@ -0,0 +1,40 @@
|
||||
From aa2507530076eaff042b096de55442dc8b665abb Mon Sep 17 00:00:00 2001
|
||||
From: Zdenek Dohnal <zdohnal@redhat.com>
|
||||
Date: Wed, 1 Dec 2021 12:00:16 +0100
|
||||
Subject: [PATCH] de/index.html: Fix missing bracket (fixes issue #299)
|
||||
|
||||
The bracket was unintentionally removed by commit b76a97a.
|
||||
---
|
||||
CHANGES.md | 5 +++++
|
||||
doc/de/index.html.in | 2 +-
|
||||
2 files changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/CHANGES.md b/CHANGES.md
|
||||
index d4eb9aae0..c49b902f5 100644
|
||||
--- a/CHANGES.md
|
||||
+++ b/CHANGES.md
|
||||
@@ -1,6 +1,11 @@
|
||||
CHANGES - OpenPrinting CUPS 2.4.0 - 2021-11-29
|
||||
==============================================
|
||||
|
||||
+Changes in CUPS v2.4.1 (TBA)
|
||||
+----------------------------
|
||||
+
|
||||
+- Fixed missing bracket in de/index.html (Issue #299)
|
||||
+
|
||||
Changes in CUPS v2.4.0 (29th November 2021)
|
||||
-------------------------------------------
|
||||
|
||||
diff --git a/doc/de/index.html.in b/doc/de/index.html.in
|
||||
index 30f7d288e..2b3f3a6b1 100644
|
||||
--- a/doc/de/index.html.in
|
||||
+++ b/doc/de/index.html.in
|
||||
@@ -7,7 +7,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9">
|
||||
<meta name="viewport" content="width=device-width">
|
||||
- <title>Startseite - CUPS @CUPS_VERSION@/title>
|
||||
+ <title>Startseite - CUPS @CUPS_VERSION@</title>
|
||||
</head>
|
||||
<body>
|
||||
<div class="header">
|
@ -3,62 +3,46 @@
|
||||
|
||||
pkgbase="cups"
|
||||
pkgname=('libcups' 'cups')
|
||||
#_commit=be75d5d99a54c5f62608f7b9e98748d4c7045ec1 # master 2020-11-27
|
||||
pkgver=2.3.3op2
|
||||
pkgver=2.4.0
|
||||
pkgrel=4
|
||||
epoch=1
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
license=('Apache' 'custom')
|
||||
#url="https://www.cups.org/"
|
||||
url="https://github.com/OpenPrinting/cups"
|
||||
url="https://openprinting.github.io/cups/"
|
||||
makedepends=('libtiff' 'libpng' 'acl' 'pam' 'xdg-utils' 'krb5' 'gnutls'
|
||||
'cups-filters' 'bc' 'colord' 'gzip' 'autoconf' 'libusb' 'dbus'
|
||||
'avahi' 'hicolor-icon-theme' 'systemd' 'libxcrypt' 'inetutils' 'libpaper' 'valgrind'
|
||||
'git')
|
||||
source=(#https://github.com/apple/cups/releases/download/v${pkgver}/cups-${pkgver}-source.tar.gz{,.sig}
|
||||
https://github.com/OpenPrinting/cups/releases/download/v${pkgver}/cups-${pkgver}-source.tar.gz{,.sig}
|
||||
#"git+https://github.com/OpenPrinting/cups#commit=$_commit"
|
||||
source=(https://github.com/OpenPrinting/cups/releases/download/v${pkgver}/cups-${pkgver}-source.tar.gz{,.sig}
|
||||
cups.logrotate
|
||||
cups.pam
|
||||
cups.sysusers
|
||||
# improve build and linking
|
||||
cups-no-export-ssllibs.patch
|
||||
cups-1.6.2-statedir.patch
|
||||
cups-2.4.0-statedir.patch
|
||||
# bugfixes
|
||||
cups-freebind.patch
|
||||
guid.patch
|
||||
# upstream fixes
|
||||
increase_timeout.patch
|
||||
0001_fix_missing_bracket.patch
|
||||
)
|
||||
sha256sums=('deb3575bbe79c0ae963402787f265bfcf8d804a71fc2c94318a74efec86f96df'
|
||||
sha256sums=('9abecec128ca6847c5bb2d3e3d30c87b782c0697b9acf284d16fa38f80a3a6de'
|
||||
'SKIP'
|
||||
'd87fa0f0b5ec677aae34668f260333db17ce303aa1a752cba5f8e72623d9acf9'
|
||||
'57dfd072fd7ef0018c6b0a798367aac1abb5979060ff3f9df22d1048bb71c0d5'
|
||||
'06173dfaea37bdd9b39b3e09aba98c34ae7112a2f521db45a688907d8848caa2'
|
||||
'ff3eb0782af0405f5dafe89e04b1b4ea7a49afc5496860d724343bd04f375832'
|
||||
'23349c96f2f7aeb7d48e3bcd35a969f5d5ac8f55a032b0cfaa0a03d7e37ea9af'
|
||||
'f0b15192952c151b1843742c87850ff3a7d0f3ba5dd236ed16623ef908472ad7'
|
||||
'3385047b9ac8a7b13aeb8f0ca55d15f793ce7283516db0155fe28a67923c592d'
|
||||
'd4537526c1e075866ae22ad263da000fc2a592d36c26b79a459a1cfdade2bb2d'
|
||||
'72a04cb74c4b6240affbc32cf759562cca94efccc213210780b1e7b98f00dfd5')
|
||||
validpgpkeys=('3737FD0D0E63B30172440D2DDBA3A7AB08D76223') # CUPS.org (CUPS.org PGP key) <security@cups.org>
|
||||
validpgpkeys+=('45D083946E3035282B3CCA9AF434104235DA97EB') # "CUPS.org <security@cups.org>"
|
||||
validpgpkeys+=('845464660B686AAB36540B6F999559A027815955') # "Michael R Sweet <michael.r.sweet@gmail.com>"
|
||||
|
||||
|
||||
#pkgver() {
|
||||
# cd $pkgbase
|
||||
# git describe --tags | sed 's/-/+/g' | sed 's/v//'
|
||||
#}
|
||||
'0bf6a75ba1b051771f155d9a5d36b307a6d40c6857d645b250fe93f3fb713474'
|
||||
'0ad9d8342c0d453355a9cb84976f11f05f77364c899216e0a2a2ff133a356ccd')
|
||||
#validpgpkeys=('3737FD0D0E63B30172440D2DDBA3A7AB08D76223') # CUPS.org (CUPS.org PGP key) <security@cups.org>
|
||||
#validpgpkeys+=('45D083946E3035282B3CCA9AF434104235DA97EB') # "CUPS.org <security@cups.org>"
|
||||
#validpgpkeys+=('845464660B686AAB36540B6F999559A027815955') # "Michael R Sweet <michael.r.sweet@gmail.com>"
|
||||
validpgpkeys=('7ADB58203CA5F046F28025B215AA6A7F4D4227D7') # "Zdenek Dohnal (Associate Software Engineer) <zdohnal@redhat.com>"
|
||||
#options=(!makeflags)
|
||||
|
||||
prepare() {
|
||||
|
||||
cd "${pkgbase}"-${pkgver}
|
||||
|
||||
# improve build and linking
|
||||
# Do not export SSL libs in cups-config
|
||||
patch -Np1 -i "${srcdir}"/cups-no-export-ssllibs.patch
|
||||
# move /var/run -> /run for pid file
|
||||
patch -Np1 -i "${srcdir}"/cups-1.6.2-statedir.patch
|
||||
patch -Np1 -i "${srcdir}"/cups-2.4.0-statedir.patch
|
||||
|
||||
# bug fixes
|
||||
|
||||
@ -69,10 +53,11 @@ prepare() {
|
||||
# FS#56818 - https://github.com/apple/cups/issues/5236
|
||||
patch -Np1 -i "${srcdir}"/guid.patch
|
||||
|
||||
# FS#70382 - https://github.com/OpenPrinting/cups/pull/174
|
||||
patch -Np1 -i "${srcdir}"/increase_timeout.patch
|
||||
# fix german webinterface not opening
|
||||
# 0001_fix_missing_bracket.patch
|
||||
patch -Np1 -i ../0001_fix_missing_bracket.patch
|
||||
|
||||
# Rebuild configure script for not zipping man-pages.
|
||||
# Rebuild configure script
|
||||
aclocal -I config-scripts
|
||||
autoconf -I config-scripts
|
||||
}
|
||||
@ -85,7 +70,6 @@ build() {
|
||||
|
||||
# use fixed cups user (id 209) since systemd adds "lp" group without a fixed id
|
||||
./configure --prefix=/usr \
|
||||
--build=${CHOST} \
|
||||
--sysconfdir=/etc \
|
||||
--localstatedir=/var \
|
||||
--sbindir=/usr/bin \
|
||||
@ -100,10 +84,7 @@ build() {
|
||||
--enable-raw-printing \
|
||||
--enable-dbus=yes \
|
||||
--with-dbusdir=/usr/share/dbus-1 \
|
||||
--enable-ssl=yes \
|
||||
--enable-relro \
|
||||
--enable-threads \
|
||||
--disable-avahi\
|
||||
--enable-libpaper \
|
||||
--with-optim="$CFLAGS" #--help
|
||||
make
|
||||
@ -117,14 +98,13 @@ check() {
|
||||
|
||||
package_libcups() {
|
||||
pkgdesc="The CUPS Printing System - client libraries and headers"
|
||||
depends=('gnutls' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'libusb' 'libxcrypt')
|
||||
depends=('gnutls' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi' 'libusb' 'libxcrypt')
|
||||
|
||||
cd ${pkgbase}-${pkgver}
|
||||
make BUILDROOT="${pkgdir}" install-headers install-libs
|
||||
# put this into the libs pkg to make other software find the libs(no pkg-config file included)
|
||||
mkdir -p "${pkgdir}"/usr/bin
|
||||
install -m755 "${srcdir}"/"${pkgbase}"-${pkgver}/cups-config "${pkgdir}"/usr/bin/cups-config
|
||||
# install -m755 "${srcdir}"/"${pkgbase}"/cups-config "${pkgdir}"/usr/bin/cups-config
|
||||
|
||||
# add license + exception
|
||||
install -m644 -Dt "${pkgdir}/usr/share/licenses/${pkgname}" {LICENSE,NOTICE}
|
||||
@ -141,7 +121,7 @@ backup=(etc/cups/cupsd.conf
|
||||
etc/cups/subscriptions.conf
|
||||
etc/logrotate.d/cups
|
||||
etc/pam.d/cups)
|
||||
depends=('acl' 'pam' "libcups>=${pkgver}" 'bc'
|
||||
depends=('acl' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc'
|
||||
'dbus' 'systemd' 'libpaper' 'hicolor-icon-theme')
|
||||
optdepends=('ipp-usb: allows to send HTTP requests via a USB connection on devices without Ethernet or WiFi connections'
|
||||
'xdg-utils: xdg .desktop file support'
|
||||
@ -181,7 +161,7 @@ optdepends=('ipp-usb: allows to send HTTP requests via a USB connection on devic
|
||||
chgrp -R 209 "${pkgdir}"/etc/cups
|
||||
|
||||
# fix .desktop file
|
||||
#sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' "${pkgdir}"/usr/share/applications/cups.desktop
|
||||
sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' "${pkgdir}"/usr/share/applications/cups.desktop
|
||||
|
||||
# compress some driver files, adopted from Fedora
|
||||
find "${pkgdir}"/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f
|
||||
|
11
cups/cups-2.4.0-statedir.patch
Normal file
11
cups/cups-2.4.0-statedir.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- cups-2.4.0/config-scripts/cups-directories.m4 2021-11-29 16:12:17.094244942 +0100
|
||||
+++ cups-2.4.0/config-scripts/cups-directories.m4.new 2021-11-29 16:15:16.958747398 +0100
|
||||
@@ -268,7 +268,7 @@
|
||||
CUPS_STATEDIR="$CUPS_SERVERROOT"
|
||||
], [*], [
|
||||
# All others
|
||||
- CUPS_STATEDIR="$localstatedir/run/cups"
|
||||
+ CUPS_STATEDIR="/run/cups"
|
||||
])
|
||||
])
|
||||
AC_DEFINE_UNQUOTED([CUPS_STATEDIR], ["$CUPS_STATEDIR"], [Location of transient state files.])
|
@ -1,12 +1,11 @@
|
||||
diff --git a/scheduler/cups-exec.c b/scheduler/cups-exec.c
|
||||
index aab43a797..46c549075 100644
|
||||
--- a/scheduler/cups-exec.c
|
||||
+++ b/scheduler/cups-exec.c
|
||||
@@ -133,8 +133,13 @@ main(int argc, /* I - Number of command-line args */
|
||||
if (setgid(gid))
|
||||
exit(errno + 100);
|
||||
|
||||
--- cups-2.4.0/scheduler/cups-exec.c 2021-11-29 16:19:34.235186064 +0100
|
||||
+++ cups-2.4.0/scheduler/cups-exec.c.new 2021-11-29 16:25:30.764049649 +0100
|
||||
@@ -134,9 +134,14 @@ main(int argc, /* I - Number of command-line args */
|
||||
# if CUPS_SNAP
|
||||
if (setgroups(0, NULL))
|
||||
# else
|
||||
- if (setgroups(1, &gid))
|
||||
-# endif /* CUPS_SNAP */
|
||||
+#include <pwd.h>
|
||||
+ struct passwd * pwd = getpwuid(uid);
|
||||
+ if(initgroups(pwd->pw_name,pwd->pw_gid))
|
||||
@ -14,14 +13,13 @@ index aab43a797..46c549075 100644
|
||||
+ fprintf(stderr, "DEBUG: initgroups failed\n");
|
||||
exit(errno + 100);
|
||||
+ }
|
||||
+# endif /* CUPS_SNAP */
|
||||
|
||||
if (uid && setuid(uid))
|
||||
exit(errno + 100);
|
||||
diff --git a/scheduler/util.c b/scheduler/util.c
|
||||
index 19ebf069b..4638562bd 100644
|
||||
--- a/scheduler/util.c
|
||||
+++ b/scheduler/util.c
|
||||
@@ -300,7 +300,16 @@ cupsdPipeCommand(int *pid, /* O - Process ID or 0 on error */
|
||||
--- cups-2.4.0/scheduler/util.c 2021-11-29 15:27:31.000000000 +0100
|
||||
+++ cups-2.4.0/scheduler/util.c.new 2021-11-29 16:29:58.810719066 +0100
|
||||
@@ -296,7 +296,16 @@
|
||||
*/
|
||||
|
||||
if (!getuid() && user)
|
||||
@ -39,4 +37,3 @@ index 19ebf069b..4638562bd 100644
|
||||
|
||||
if ((fd = open("/dev/null", O_RDONLY)) > 0)
|
||||
{
|
||||
|
||||
|
40
emacs/emacs-glibc-2.34.patch
Normal file
40
emacs/emacs-glibc-2.34.patch
Normal file
@ -0,0 +1,40 @@
|
||||
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
|
||||
|
@ -3,12 +3,13 @@
|
||||
# Contributor: Jan de Groot <jgc@archlinux.org>
|
||||
|
||||
pkgbase=gst-plugins-bad
|
||||
pkgname=(gst-plugins-bad-libs gst-plugins-bad gst-plugin-opencv gst-plugin-wpe)
|
||||
pkgname=(gst-plugins-bad-libs gst-plugins-bad gst-plugin-opencv)
|
||||
[ "${CARCH}" != 'riscv64' ] && pkgname+=(gst-plugin-wpe)
|
||||
pkgver=1.18.5
|
||||
pkgrel=1
|
||||
pkgrel=5
|
||||
pkgdesc="Multimedia graph framework - bad plugins"
|
||||
url="https://gstreamer.freedesktop.org/"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
license=(LGPL)
|
||||
depends=(gst-plugins-base-libs orc libdrm libx11 libgudev libusb libvdpau
|
||||
libxkbcommon-x11)
|
||||
@ -21,30 +22,39 @@ makedepends=(mjpegtools curl chromaprint libmms faad2 libdca libdvdnav
|
||||
librsvg fluidsynth lilv lv2 gst-plugins-good python git
|
||||
gobject-introspection vulkan-headers vulkan-validation-layers
|
||||
wayland-protocols gtk3 meson shaderc libavtp libmicrodns
|
||||
zxing-cpp opencv libva wpewebkit)
|
||||
makedepends_x86_64=(svthevcenc svt-hevc)
|
||||
zxing-cpp opencv libva)
|
||||
makedepends_powerpc=(wpewebkit)
|
||||
makedepends_powerpc64le=(wpewebkit)
|
||||
makedepends_x86_64=(wpewebkit)
|
||||
checkdepends=(xorg-server-xvfb)
|
||||
options=(!emptydirs)
|
||||
_commit=d3af58d5b31941caa26c3ded85d7a7b84a91f0cc # tags/1.18.5^0
|
||||
source=("git+https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad.git#commit=$_commit")
|
||||
sha256sums=('SKIP')
|
||||
source=("git+https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad.git#commit=$_commit"
|
||||
1267.patch wpe-1.1.diff)
|
||||
sha256sums=('SKIP'
|
||||
'6b44a256d1ce3ed788d689a9abc5d8a2c4f992ce3c6c60f7a1efb4aa5cc3deb1'
|
||||
'841988d7dffaf98adeff046cfeed97505a66d268c156361ac29c2b7a112cf984')
|
||||
|
||||
pkgver() {
|
||||
cd $pkgbase
|
||||
|
||||
git describe --tags | sed 's/-/+/g'
|
||||
}
|
||||
|
||||
prepare() {
|
||||
cd $pkgbase
|
||||
|
||||
# zxing-cpp 1.1.1
|
||||
git cherry-pick -n 451c875d40a92ade05389cb62ef885eefd29be4a
|
||||
|
||||
# Neon 0.32.x
|
||||
# https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1267
|
||||
patch -Np3 -i ../1267.patch
|
||||
|
||||
# wpe-webkit-1.1 (libsoup3)
|
||||
patch -Np1 -i ../wpe-1.1.diff
|
||||
}
|
||||
|
||||
build() {
|
||||
case "${CARCH}" in
|
||||
x86_64) EXTRA_MESON_FLAGS="-D svthevcenc=enabled" ;;
|
||||
*) EXTRA_MESON_FLAGS="-D svthevcenc=disabled" ;;
|
||||
esac
|
||||
|
||||
arch-meson $pkgbase build \
|
||||
-D directfb=disabled \
|
||||
-D doc=disabled \
|
||||
@ -62,11 +72,10 @@ build() {
|
||||
-D voamrwbenc=disabled \
|
||||
-D wasapi2=disabled \
|
||||
-D wasapi=disabled \
|
||||
-D nvdec=disabled \
|
||||
-D nvenc=disabled \
|
||||
-D gobject-cast-checks=disabled \
|
||||
-D svthevcenc=disabled \
|
||||
-D package-name="GStreamer Bad Plugins (Arch POWER)" \
|
||||
-D package-origin="https://www.archlinuxpower.org/" ${EXTRA_MESON_FLAGS}
|
||||
-D package-origin="https://www.archlinuxpower.org/"
|
||||
meson compile -C build
|
||||
}
|
||||
|
||||
@ -74,9 +83,8 @@ check() (
|
||||
mkdir -p -m 700 "${XDG_RUNTIME_DIR:=$PWD/runtime-dir}"
|
||||
export XDG_RUNTIME_DIR
|
||||
|
||||
# elements_dtls test hangs sometimes
|
||||
xvfb-run -s '-nolisten local' \
|
||||
meson test -C build --print-errorlogs || :
|
||||
meson test -C build --print-errorlogs
|
||||
)
|
||||
|
||||
package_gst-plugins-bad-libs() {
|
||||
@ -85,7 +93,7 @@ package_gst-plugins-bad-libs() {
|
||||
conflicts=("gst-transcoder<1.18.0")
|
||||
replaces=("gst-transcoder<1.18.0")
|
||||
|
||||
DESTDIR="$pkgdir" meson install -C build
|
||||
meson install -C build --destdir "$pkgdir"
|
||||
|
||||
mkdir -p ext/lib/gstreamer-1.0
|
||||
for _x in aom assrender bs2b bz2 chromaprint closedcaption colormanagement \
|
||||
@ -121,7 +129,6 @@ package_gst-plugins-bad() {
|
||||
libsrtp zvbi vulkan-icd-loader libxcb wayland libwebp libnice
|
||||
webrtc-audio-processing wildmidi x265 zbar libavtp
|
||||
libmicrodns zxing-cpp libva)
|
||||
depends_x86_64=(svthevcenc svt-hevc)
|
||||
optdepends=('nvidia-utils: nvcodec plugin')
|
||||
|
||||
mv ext "$pkgdir/usr"
|
||||
|
@ -3,47 +3,53 @@
|
||||
|
||||
pkgbase=gtk4
|
||||
pkgname=(gtk4 gtk-update-icon-cache gtk4-docs gtk4-demos)
|
||||
pkgver=4.4.0
|
||||
pkgrel=1.1
|
||||
pkgver=4.6.0
|
||||
pkgrel=2
|
||||
epoch=1
|
||||
pkgdesc="GObject-based multi-platform GUI toolkit"
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="https://www.gtk.org/"
|
||||
depends=(glib2 cairo pango fribidi gdk-pixbuf2 libepoxy libgl libegl harfbuzz
|
||||
libxkbcommon graphene iso-codes tracker3 libcolord wayland
|
||||
wayland-protocols libxrandr libx11 libxrender libxi libxext libxcursor
|
||||
libxdamage libxfixes fontconfig libxinerama libcloudproviders libcups
|
||||
rest json-glib librsvg dconf shared-mime-info
|
||||
desktop-file-utils adwaita-icon-theme cantarell-fonts)
|
||||
makedepends=(git meson gi-docgen shaderc sassc gobject-introspection
|
||||
docbook-xsl)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
license=(LGPL)
|
||||
_commit=f1f197e3b94a55d5cbfaae2498f991a0ae733b32 # tags/4.4.0^0
|
||||
depends=(glib2 cairo pango fribidi gdk-pixbuf2 libpng libtiff libjpeg libepoxy
|
||||
libgl libegl harfbuzz libxkbcommon graphene iso-codes tracker3
|
||||
libcolord wayland libxrandr libx11 libxrender libxi libxext libxcursor
|
||||
libxdamage libxfixes fontconfig libxinerama libcloudproviders libcups
|
||||
gst-plugins-bad-libs librsvg dconf shared-mime-info desktop-file-utils
|
||||
adwaita-icon-theme cantarell-fonts)
|
||||
makedepends=(git meson gi-docgen shaderc sassc gobject-introspection docbook-xsl
|
||||
wayland-protocols python-gobject python-docutils)
|
||||
checkdepends=(weston)
|
||||
_commit=70cb61fb7104c76a15bc6494a10e6ff1d470f6d8 # tags/4.6.0^0
|
||||
source=("git+https://gitlab.gnome.org/GNOME/gtk.git#commit=$_commit"
|
||||
fix-resources.diff
|
||||
gtk-update-icon-cache.{hook,script} gtk4-querymodules.hook)
|
||||
sha256sums=('SKIP'
|
||||
'd458d2b9621f5131510238f1167a758d1f6c4baabc2a7fe5f445c7bdba2b0802'
|
||||
'2d435e3bec8b79b533f00f6d04decb1d7c299c6e89b5b175f20be0459f003fe8'
|
||||
'f1d3a0dbfd82f7339301abecdbe5f024337919b48bd0e09296bb0e79863b2541'
|
||||
'cd8e607eddd9941f279084e1d15309941423d26cca1897f43524a02e58e48816')
|
||||
|
||||
pkgver() {
|
||||
cd gtk
|
||||
git describe --tags | sed 's/-/+/g'
|
||||
git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g'
|
||||
}
|
||||
|
||||
prepare() {
|
||||
cd gtk
|
||||
|
||||
# Ensure noexecstack
|
||||
git cherry-pick -n 46509b6dd28c58ae 17c2a1cb4ea2093d
|
||||
git apply -3 ../fix-resources.diff
|
||||
}
|
||||
|
||||
build() {
|
||||
CFLAGS+=" -DG_ENABLE_DEBUG -DG_DISABLE_CAST_CHECKS"
|
||||
CFLAGS+=" -DG_DISABLE_CAST_CHECKS"
|
||||
local meson_options=(
|
||||
-D broadway-backend=true
|
||||
-D cloudproviders=enabled
|
||||
-D tracker=enabled
|
||||
-D colord=enabled
|
||||
-D gtk_doc=true
|
||||
-D media-gstreamer=disabled
|
||||
-D man-pages=true
|
||||
)
|
||||
|
||||
@ -51,6 +57,18 @@ build() {
|
||||
meson compile -C build
|
||||
}
|
||||
|
||||
check() (
|
||||
export XDG_RUNTIME_DIR="$PWD/runtime-dir" WAYLAND_DISPLAY=wayland-5
|
||||
|
||||
mkdir -p -m 700 "$XDG_RUNTIME_DIR"
|
||||
weston --backend=headless-backend.so --socket=$WAYLAND_DISPLAY --idle-time=0 &
|
||||
_w=$!
|
||||
|
||||
trap "kill $_w; wait" EXIT
|
||||
|
||||
meson test -C build --print-errorlogs
|
||||
)
|
||||
|
||||
_pick() {
|
||||
local p="$1" f d; shift
|
||||
for f; do
|
||||
@ -115,4 +133,4 @@ package_gtk4-demos() {
|
||||
mv demo/* "$pkgdir"
|
||||
}
|
||||
|
||||
# vim:set ts=2 sw=2 et:
|
||||
# vim:set sw=2 et:
|
||||
|
@ -6,7 +6,7 @@ pkgrel=1
|
||||
pkgdesc="hardware identification databases"
|
||||
makedepends=('git')
|
||||
replaces=('hwids')
|
||||
conflicts=('hwids')
|
||||
provides=('hwids')
|
||||
url=https://github.com/vcrhonek/hwdata
|
||||
license=('GPL2')
|
||||
arch=('any')
|
||||
|
@ -1,35 +0,0 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Tom Gundersen <teg@jklm.no>
|
||||
pkgname=hwids
|
||||
pkgver=20210613
|
||||
pkgrel=1
|
||||
pkgdesc="hardware identification databases"
|
||||
makedepends=('git' 'unoconv')
|
||||
url=https://github.com/gentoo/hwids
|
||||
license=('GPL2')
|
||||
arch=('any')
|
||||
source=("git+https://github.com/gentoo/hwids.git#tag=${pkgname}-${pkgver}?signed"
|
||||
https://download.microsoft.com/download/7/E/7/7E7662CF-CBEA-470B-A97E-CE7CE0D98DC2/ISA_PNPID_List.xlsx)
|
||||
validpgpkeys=('226DE4AA4B9704A49DEF6B9B1A333AEFBD714C02') # Mike Gilbert
|
||||
sha256sums=('SKIP'
|
||||
'775323da066e5435978eac8e8dd54af15278329d1455e145d163aede27d7998e')
|
||||
prepare() {
|
||||
# from https://github.com/vcrhonek/hwdata/blob/master/Makefile
|
||||
unoconv --stdout -f csv ${srcdir}/ISA_PNPID_List.xlsx | \
|
||||
tr ' ' ' ' | \
|
||||
sed -n \
|
||||
-e 's/^\s*"\s*\(.*\)\s*"/\1/' \
|
||||
-e 's/\s\{2,\}/ /g' \
|
||||
-e 's/\s*(used as 2nd pnpid)\s*//' \
|
||||
-e 's:^\(.*\)\s*,\s*\([a-zA-Z@]\{3\}\)\s*,\s*\([0-9]\+/[0-9]\+/[0-9]\+\):\2\t\1:p' | \
|
||||
sed 's/\s*$$//' | sort -u >${srcdir}/pnp.ids
|
||||
}
|
||||
|
||||
package() {
|
||||
cd hwids
|
||||
|
||||
for ids in pci.ids usb.ids; do
|
||||
install -Dm644 "$ids" "${pkgdir}/usr/share/hwdata/${ids}"
|
||||
done
|
||||
install -Dm644 "${srcdir}/pnp.ids" ${pkgdir}/usr/share/hwdata/pnp.ids
|
||||
}
|
@ -6,19 +6,51 @@
|
||||
|
||||
pkgname=libffi
|
||||
pkgver=3.4.2
|
||||
pkgrel=4
|
||||
pkgrel=3
|
||||
pkgdesc='Portable foreign function interface library'
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
url='https://sourceware.org/libffi/'
|
||||
license=('MIT')
|
||||
depends=('glibc')
|
||||
checkdepends=('dejagnu')
|
||||
provides=('libffi.so')
|
||||
source=(https://github.com/libffi/libffi/releases/download/v$pkgver/libffi-$pkgver.tar.gz)
|
||||
sha256sums=('540fb721619a6aba3bdeef7d940d8e9e0e6d2c193595bc243241b77ff9e93620')
|
||||
b2sums=('a8137bc895b819f949fd7705e405be627219c6d1fdef280253330f7407d4a548bb057d7bb0e9225d1767d42f9bf5f0ab3c455db1c3470d7cc876bb7b7d55d308')
|
||||
source=(https://github.com/libffi/libffi/releases/download/v$pkgver/libffi-$pkgver.tar.gz
|
||||
https://github.com/libffi/libffi/releases/download/v3.3/libffi-3.3.tar.gz
|
||||
powerpc-fix.patch
|
||||
powerpc-fix-2.patch
|
||||
powerpc64-fix.patch
|
||||
powerpc64-fix-2.patch)
|
||||
sha256sums=('540fb721619a6aba3bdeef7d940d8e9e0e6d2c193595bc243241b77ff9e93620'
|
||||
'72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056'
|
||||
'031647283323f81e2e3690e5237c433f89f30e031905eb4a6db11dfa83c8ad83'
|
||||
'41031984367ddf06f5f1a3701f9263b25d4fe1baa02ca727bc1747afbb5c5798'
|
||||
'359d8239c4864dc8fe5e429974052d58be5fe046e5fc273b5f1d89bb4e7880d6'
|
||||
'01cdfd9c03cf2c1c8dbaa26c97d032c6ba28006927eaf9a64e05217dd9b03af9')
|
||||
b2sums=('a8137bc895b819f949fd7705e405be627219c6d1fdef280253330f7407d4a548bb057d7bb0e9225d1767d42f9bf5f0ab3c455db1c3470d7cc876bb7b7d55d308'
|
||||
'cddc40729a30a9bd34d675809f51f8d1b4ccaffa54bc6dd6f7e965f4e260edd34754719f9f6247c8957aeb7cf154d56ce1fe16a54c3f1ad39afbebdf41d23caa'
|
||||
'410418750dd12d747776eb158e86a738ad9f9495bd219a8586f02141297e1422dee51adf82d3d197a76fbbdca11da68cb5cad9bf3a2256596422b8cef8ef0d49'
|
||||
'08df602aec8bc42b326bd13e03a7518c072e15c32c96c066329221a9fbfb5c3fc696d0bbbd8bcb69653bf4784808d10614e1d31b52908bd4c1dbdec62324786d'
|
||||
'280e600407d03f056a9a29f9e41ef0a5735a512f78881e1e54d60e9ca7b490d781f935e65cfca349509dc5fc69566e8ce69ef7d9df345631c35f91ab98ada520'
|
||||
'a6b3c226e5b9fb3fa3350ef2d73c70e6ee8ca9bded2ec0911027a2c49b49e488f668219494adb5deefee67a4d61637f9c505924d8144650c1dd66655a96b3bf6')
|
||||
|
||||
prepare() {
|
||||
cd $pkgname-3.3
|
||||
patch -Np1 -i ${srcdir}/powerpc-fix.patch
|
||||
patch -Np1 -i ${srcdir}/powerpc-fix-2.patch
|
||||
patch -Np1 -i ${srcdir}/powerpc64-fix.patch
|
||||
patch -Np1 -i ${srcdir}/powerpc64-fix-2.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
# TODO: remove this block once the libffi 3.4 rebuilds are bootstrapped
|
||||
pushd $pkgname-3.3
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--disable-static \
|
||||
--enable-pax_emutramp
|
||||
make
|
||||
popd
|
||||
|
||||
cd $pkgname-$pkgver
|
||||
# remove --disable-exec-static-tramp once ghc and gobject-introspection
|
||||
# work fine with it enabled (https://github.com/libffi/libffi/pull/647)
|
||||
@ -36,6 +68,12 @@ check() {
|
||||
}
|
||||
|
||||
package() {
|
||||
# TODO: remove this block once the libffi 3.4 rebuilds are bootstrapped
|
||||
pushd $pkgname-3.3
|
||||
make DESTDIR="$srcdir"/fakeinstall install
|
||||
install -Dt "$pkgdir"/usr/lib "$srcdir"/fakeinstall/usr/lib/libffi.so.7
|
||||
popd
|
||||
|
||||
cd $pkgname-$pkgver
|
||||
make DESTDIR="$pkgdir" install
|
||||
install -Dm 644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname
|
||||
|
@ -8,7 +8,8 @@ pkgver=0.4.17
|
||||
pkgrel=6
|
||||
pkgdesc="Automatic proxy configuration management library"
|
||||
url="https://libproxy.github.io/libproxy/"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
arch=(riscv64)
|
||||
license=(LGPL)
|
||||
depends=(gcc-libs glib2 dbus)
|
||||
makedepends=(cmake python perl webkit2gtk git)
|
||||
|
@ -6,7 +6,7 @@ pkgname=librttopo
|
||||
pkgver=1.1.0
|
||||
pkgrel=3
|
||||
pkgdesc="RT Topology Library"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="https://git.osgeo.org/gitea/rttopo/librttopo"
|
||||
license=('GPL2')
|
||||
depends=('geos')
|
||||
|
@ -7,7 +7,7 @@ pkgname=libspatialite
|
||||
pkgver=5.0.1
|
||||
pkgrel=1
|
||||
pkgdesc="SQLite extension to support spatial data types and operations"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="https://www.gaia-gis.it/fossil/libspatialite"
|
||||
license=('MPL' 'GPL' 'LGPL')
|
||||
depends=('geos' 'libfreexl' 'librttopo' 'libxml2' 'minizip' 'proj' 'sqlite')
|
||||
|
@ -24,7 +24,7 @@ validpgpkeys=(
|
||||
'A2FF3A36AAA56654109064AB19802F8B0D70FC30' # Jan Alexander Steffens (heftig)
|
||||
)
|
||||
sha256sums=('SKIP'
|
||||
'2e2bcc5f011b9ad109f0754982348eac94dbc613e868ea928a87faac80ead2dd')
|
||||
'SKIP')
|
||||
|
||||
export KBUILD_BUILD_HOST=archpower
|
||||
export KBUILD_BUILD_USER=$pkgbase
|
||||
@ -49,7 +49,7 @@ prepare() {
|
||||
done
|
||||
|
||||
echo "Setting config..."
|
||||
cp ../config .config
|
||||
cp ${srcdir}/config .config
|
||||
ARCH=${MYARCH} make oldconfig
|
||||
|
||||
ARCH=${MYARCH} make -s kernelrelease > version
|
||||
|
960
linux-g4/config
960
linux-g4/config
File diff suppressed because it is too large
Load Diff
@ -2,14 +2,14 @@
|
||||
# Contributor: Andreas Radke <andyrtr@archlinux.org>
|
||||
|
||||
pkgbase=linux-lts54
|
||||
pkgver=5.4.107
|
||||
pkgver=5.4.173
|
||||
pkgrel=1
|
||||
pkgdesc='LTS 5.4 Linux'
|
||||
url="https://www.kernel.org/"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(powerpc)
|
||||
license=(GPL2)
|
||||
makedepends=(
|
||||
bc kmod libelf cpio perl tar xz
|
||||
bc kmod libelf cpio perl tar xz python-six
|
||||
xmlto python-sphinx python-sphinx_rtd_theme graphviz imagemagick
|
||||
)
|
||||
options=('!strip')
|
||||
@ -17,6 +17,7 @@ _srcname=linux-$pkgver
|
||||
source=(
|
||||
https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/${_srcname}.tar.{xz,sign}
|
||||
config # the main kernel config file
|
||||
config.ppc32
|
||||
0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
|
||||
0002-virt-vbox-Add-support-for-the-new-VBG_IOCTL_ACQUIRE_.patch
|
||||
0003-Add-support-for-ZSTD-compressed-kernel.patch
|
||||
@ -27,15 +28,16 @@ validpgpkeys=(
|
||||
'647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman
|
||||
)
|
||||
# https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc
|
||||
sha256sums=('1c3cef545f366b56332c11c28d074c9d9148c28059a970ec8710826652237560'
|
||||
'SKIP'
|
||||
sha256sums=('99e8e275b239c708bdb6a41990c4d12098a61752245dbef921a514d9f996c239'
|
||||
'SKIP'
|
||||
'42fe325df60408dc3d412a4c59be5856d981db8bfa08af4dbd92615fd6b7b69e'
|
||||
'c8c06a5b6f169272af84a71500cef5e60006732ce28f2e382c54058c6791f9bc'
|
||||
'b439f57b84bc98730c0265695abb92385ee4dcd35a5c00d4cb3d3155c75fb491'
|
||||
'4fd74bb2a7101d700fba91806141339d8c9e46a14f8fc1fe276cfb68f1eec0f5'
|
||||
'8b604b7dc447b5f1f6f0b6239d5dd3ec6a5336cba78ac6dcef8f3e59357bd8c0'
|
||||
'b7c814c8183e4645947a6dcc3cbf80431de8a8fd4e895b780f9a5fd92f82cb8e')
|
||||
|
||||
export KBUILD_BUILD_HOST=archlinux
|
||||
export KBUILD_BUILD_HOST=archpower
|
||||
export KBUILD_BUILD_USER=$pkgbase
|
||||
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
|
||||
|
||||
@ -58,15 +60,17 @@ prepare() {
|
||||
|
||||
echo "Setting config..."
|
||||
cp ../config .config
|
||||
make olddefconfig
|
||||
[ "${CARCH}" = 'powerpc' ] && cp ../config.ppc32 .config
|
||||
ARCH=powerpc make olddefconfig
|
||||
|
||||
make -s kernelrelease > version
|
||||
ARCH=powerpc make -s kernelrelease > version
|
||||
echo "Prepared $pkgbase version $(<version)"
|
||||
}
|
||||
|
||||
build() {
|
||||
cd $_srcname
|
||||
make
|
||||
ARCH=powerpc make all
|
||||
#ARCH=powerpc make htmldocs
|
||||
}
|
||||
|
||||
_package() {
|
||||
@ -74,6 +78,7 @@ _package() {
|
||||
depends=(coreutils kmod initramfs)
|
||||
optdepends=('crda: to set the correct wireless channels of your country'
|
||||
'linux-firmware: firmware images needed for some devices')
|
||||
provides=(VIRTUALBOX-GUEST-MODULES)
|
||||
|
||||
cd $_srcname
|
||||
local kernver="$(<version)"
|
||||
@ -88,13 +93,107 @@ _package() {
|
||||
echo "$pkgbase" | install -Dm644 /dev/stdin "$modulesdir/pkgbase"
|
||||
|
||||
echo "Installing modules..."
|
||||
make INSTALL_MOD_PATH="$pkgdir/usr" modules_install
|
||||
ARCH=powerpc make INSTALL_MOD_PATH="$pkgdir/usr" modules_install
|
||||
|
||||
# remove build and source links
|
||||
rm "$modulesdir"/{source,build}
|
||||
}
|
||||
|
||||
pkgname=("$pkgbase")
|
||||
_package-headers() {
|
||||
pkgdesc="Headers and scripts for building modules for the $pkgdesc kernel"
|
||||
|
||||
cd $_srcname
|
||||
local builddir="$pkgdir/usr/lib/modules/$(<version)/build"
|
||||
|
||||
echo "Installing build files..."
|
||||
install -Dt "$builddir" -m644 .config Makefile Module.symvers System.map \
|
||||
localversion.* version vmlinux
|
||||
install -Dt "$builddir/kernel" -m644 kernel/Makefile
|
||||
install -Dt "$builddir/arch/powerpc" -m644 arch/powerpc/Makefile
|
||||
cp -t "$builddir" -a scripts
|
||||
|
||||
# add objtool for external module building and enabled VALIDATION_STACK option
|
||||
#install -Dt "$builddir/tools/objtool" tools/objtool/objtool
|
||||
|
||||
# add xfs and shmem for aufs building
|
||||
mkdir -p "$builddir"/{fs/xfs,mm}
|
||||
|
||||
echo "Installing headers..."
|
||||
cp -t "$builddir" -a include
|
||||
cp -t "$builddir/arch/powerpc" -a arch/powerpc/include
|
||||
install -Dt "$builddir/arch/powerpc/kernel" -m644 arch/powerpc/kernel/asm-offsets.s
|
||||
|
||||
install -Dt "$builddir/drivers/md" -m644 drivers/md/*.h
|
||||
install -Dt "$builddir/net/mac80211" -m644 net/mac80211/*.h
|
||||
|
||||
# http://bugs.archlinux.org/task/13146
|
||||
install -Dt "$builddir/drivers/media/i2c" -m644 drivers/media/i2c/msp3400-driver.h
|
||||
|
||||
# http://bugs.archlinux.org/task/20402
|
||||
install -Dt "$builddir/drivers/media/usb/dvb-usb" -m644 drivers/media/usb/dvb-usb/*.h
|
||||
install -Dt "$builddir/drivers/media/dvb-frontends" -m644 drivers/media/dvb-frontends/*.h
|
||||
install -Dt "$builddir/drivers/media/tuners" -m644 drivers/media/tuners/*.h
|
||||
|
||||
echo "Installing KConfig files..."
|
||||
find . -name 'Kconfig*' -exec install -Dm644 {} "$builddir/{}" \;
|
||||
|
||||
echo "Removing unneeded architectures..."
|
||||
local arch
|
||||
for arch in "$builddir"/arch/*/; do
|
||||
[[ $arch = */powerpc/ ]] && continue
|
||||
echo "Removing $(basename "$arch")"
|
||||
rm -r "$arch"
|
||||
done
|
||||
|
||||
echo "Removing documentation..."
|
||||
rm -r "$builddir/Documentation"
|
||||
|
||||
echo "Removing broken symlinks..."
|
||||
find -L "$builddir" -type l -printf 'Removing %P\n' -delete
|
||||
|
||||
echo "Removing loose objects..."
|
||||
find "$builddir" -type f -name '*.o' -printf 'Removing %P\n' -delete
|
||||
|
||||
echo "Stripping build tools..."
|
||||
local file
|
||||
while read -rd '' file; do
|
||||
case "$(file -bi "$file")" in
|
||||
application/x-sharedlib\;*) # Libraries (.so)
|
||||
strip -v $STRIP_SHARED "$file" ;;
|
||||
application/x-archive\;*) # Libraries (.a)
|
||||
strip -v $STRIP_STATIC "$file" ;;
|
||||
application/x-executable\;*) # Binaries
|
||||
strip -v $STRIP_BINARIES "$file" ;;
|
||||
application/x-pie-executable\;*) # Relocatable binaries
|
||||
strip -v $STRIP_SHARED "$file" ;;
|
||||
esac
|
||||
done < <(find "$builddir" -type f -perm -u+x ! -name vmlinux -print0)
|
||||
|
||||
echo "Adding symlink..."
|
||||
mkdir -p "$pkgdir/usr/src"
|
||||
ln -sr "$builddir" "$pkgdir/usr/src/$pkgbase"
|
||||
}
|
||||
|
||||
_package-docs() {
|
||||
pkgdesc="Documentation for the $pkgdesc kernel"
|
||||
|
||||
cd $_srcname
|
||||
local builddir="$pkgdir/usr/lib/modules/$(<version)/build"
|
||||
|
||||
echo "Installing documentation..."
|
||||
local src dst
|
||||
while read -rd '' src; do
|
||||
dst="${src#Documentation/}"
|
||||
dst="$builddir/Documentation/${dst#output/}"
|
||||
install -Dm644 "$src" "$dst"
|
||||
done < <(find Documentation -name '.*' -prune -o ! -type d -print0)
|
||||
|
||||
echo "Adding symlink..."
|
||||
mkdir -p "$pkgdir/usr/share/doc"
|
||||
ln -sr "$builddir/Documentation" "$pkgdir/usr/share/doc/$pkgbase"
|
||||
}
|
||||
|
||||
pkgname=("$pkgbase" "$pkgbase-headers" "$pkgbase-docs")
|
||||
for _p in "${pkgname[@]}"; do
|
||||
eval "package_$_p() {
|
||||
$(declare -f "_package${_p#$pkgbase}")
|
||||
|
4982
linux-lts54/config
4982
linux-lts54/config
File diff suppressed because it is too large
Load Diff
@ -2,7 +2,7 @@
|
||||
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
|
||||
|
||||
pkgbase=linux-ppc64
|
||||
pkgver=5.16.arch1
|
||||
pkgver=5.16.2.arch1
|
||||
pkgrel=1
|
||||
pkgdesc='Linux'
|
||||
_srctag=v${pkgver%.*}-${pkgver##*.}
|
||||
|
@ -2,7 +2,7 @@
|
||||
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
|
||||
|
||||
pkgbase=linux
|
||||
pkgver=5.16.arch1
|
||||
pkgver=5.16.2.arch1
|
||||
pkgrel=1
|
||||
pkgdesc='Linux'
|
||||
_srctag=v${pkgver%.*}-${pkgver##*.}
|
||||
|
37
mesa/0002-big-endian-flipping.patch
Normal file
37
mesa/0002-big-endian-flipping.patch
Normal file
@ -0,0 +1,37 @@
|
||||
From f1e0d76264491a8d8f99a0041b1a36cf9752fd28 Mon Sep 17 00:00:00 2001
|
||||
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
|
||||
Date: Thu, 27 Feb 2020 04:24:52 -0600
|
||||
Subject: [PATCH] mesa: Support flipping three-channel formats
|
||||
|
||||
Test system: POWER9 ppc64 (BE) system with a Radeon R5 230.
|
||||
|
||||
Before this commit, starting Xorg caused this message:
|
||||
Assertion failed: !"Invalid array format" (../src/mesa/main/formats.c: _mesa_array_format_flip_channels: 421)
|
||||
|
||||
After this commit, Xorg starts successfully.
|
||||
---
|
||||
src/mesa/main/formats.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/src/mesa/main/formats.c b/src/mesa/main/formats.c
|
||||
index 370859d37ca..2e7d5d7f05e 100644
|
||||
--- a/src/mesa/main/formats.c
|
||||
+++ b/src/mesa/main/formats.c
|
||||
@@ -419,6 +419,14 @@ _mesa_array_format_flip_channels(mesa_array_format format)
|
||||
return format;
|
||||
}
|
||||
|
||||
+ if (num_channels == 3) {
|
||||
+ static const uint8_t flip[6] = { 2, 1, 0, 3, 4, 5 };
|
||||
+ _mesa_array_format_set_swizzle(&format,
|
||||
+ flip[swizzle[0]], flip[swizzle[1]],
|
||||
+ flip[swizzle[2]], flip[swizzle[3]]);
|
||||
+ return format;
|
||||
+ }
|
||||
+
|
||||
if (num_channels == 4) {
|
||||
static const uint8_t flip[6] = { 3, 2, 1, 0, 4, 5 };
|
||||
_mesa_array_format_set_swizzle(&format,
|
||||
--
|
||||
2.25.1
|
||||
|
@ -7,7 +7,7 @@
|
||||
pkgbase=mplayer
|
||||
pkgname=('mplayer' 'mencoder')
|
||||
pkgver=38322
|
||||
pkgrel=2
|
||||
pkgrel=2.1
|
||||
pkgdesc='Media player for Linux'
|
||||
url='http://www.mplayerhq.hu/'
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
|
18
nodejs/nodejs/nodejs-llhttp.patch
Normal file
18
nodejs/nodejs/nodejs-llhttp.patch
Normal file
@ -0,0 +1,18 @@
|
||||
--- node-17.3.0/node.gypi.orig 2022-01-18 21:15:38.301884151 +0100
|
||||
+++ node-17.3.0/node.gypi 2022-01-18 21:17:26.642868147 +0100
|
||||
@@ -147,8 +147,15 @@
|
||||
[ 'node_shared_http_parser=="false"', {
|
||||
'dependencies': [
|
||||
'deps/llhttp/llhttp.gyp:llhttp'
|
||||
+ 'deps/http_parser/http_parser.gyp:http_parser'
|
||||
],
|
||||
} ],
|
||||
+
|
||||
+ [ '"true"', { 'dependencies': [
|
||||
+ 'deps/llhttp/llhttp.gyp:llhttp'
|
||||
+ ],
|
||||
+ }],
|
||||
+
|
||||
|
||||
[ 'node_shared_cares=="false"', {
|
||||
'dependencies': [ 'deps/cares/cares.gyp:cares' ],
|
123
pango/fix-test.diff
Normal file
123
pango/fix-test.diff
Normal file
@ -0,0 +1,123 @@
|
||||
diff --git i/tests/layouts/valid-20.layout w/tests/layouts/valid-20.layout
|
||||
index 93b8a1b1..db692b73 100644
|
||||
--- i/tests/layouts/valid-20.layout
|
||||
+++ w/tests/layouts/valid-20.layout
|
||||
@@ -140,23 +140,23 @@
|
||||
"glyph" : 244,
|
||||
"width" : 15360,
|
||||
"x-offset" : 14764,
|
||||
- "y-offset" : 3844,
|
||||
+ "y-offset" : 3845,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 0
|
||||
},
|
||||
{
|
||||
"glyph" : 272,
|
||||
"width" : 15360,
|
||||
"x-offset" : 14764,
|
||||
"y-offset" : 4280,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 1
|
||||
},
|
||||
{
|
||||
"glyph" : 273,
|
||||
"width" : 15360,
|
||||
"x-offset" : 14764,
|
||||
- "y-offset" : 3506,
|
||||
+ "y-offset" : 3507,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 2
|
||||
}
|
||||
diff --git i/tests/layouts/vertical.layout w/tests/layouts/vertical.layout
|
||||
index e8619bfb..a7f65068 100644
|
||||
--- i/tests/layouts/vertical.layout
|
||||
+++ w/tests/layouts/vertical.layout
|
||||
@@ -128,24 +128,24 @@
|
||||
{
|
||||
"glyph" : 1,
|
||||
"width" : 32768,
|
||||
- "x-offset" : 28835,
|
||||
+ "x-offset" : 28836,
|
||||
"y-offset" : 9945,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 0
|
||||
},
|
||||
{
|
||||
"glyph" : 2,
|
||||
"width" : 32768,
|
||||
- "x-offset" : 28835,
|
||||
+ "x-offset" : 28836,
|
||||
"y-offset" : 10764,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 1
|
||||
},
|
||||
{
|
||||
"glyph" : 3,
|
||||
"width" : 32768,
|
||||
- "x-offset" : 28835,
|
||||
- "y-offset" : 10452,
|
||||
+ "x-offset" : 28836,
|
||||
+ "y-offset" : 10453,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 2
|
||||
}
|
||||
@@ -179,24 +179,24 @@
|
||||
{
|
||||
"glyph" : 4,
|
||||
"width" : 32768,
|
||||
- "x-offset" : 28835,
|
||||
- "y-offset" : 16383,
|
||||
+ "x-offset" : 28836,
|
||||
+ "y-offset" : 16384,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 0
|
||||
},
|
||||
{
|
||||
"glyph" : 5,
|
||||
"width" : 32768,
|
||||
- "x-offset" : 28835,
|
||||
- "y-offset" : 16383,
|
||||
+ "x-offset" : 28836,
|
||||
+ "y-offset" : 16384,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 3
|
||||
},
|
||||
{
|
||||
"glyph" : 7,
|
||||
"width" : 32768,
|
||||
- "x-offset" : 28835,
|
||||
- "y-offset" : 16383,
|
||||
+ "x-offset" : 28836,
|
||||
+ "y-offset" : 16384,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 6
|
||||
}
|
||||
@@ -230,24 +230,24 @@
|
||||
{
|
||||
"glyph" : 1,
|
||||
"width" : 32768,
|
||||
- "x-offset" : 28835,
|
||||
+ "x-offset" : 28836,
|
||||
"y-offset" : 9945,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 0
|
||||
},
|
||||
{
|
||||
"glyph" : 2,
|
||||
"width" : 32768,
|
||||
- "x-offset" : 28835,
|
||||
+ "x-offset" : 28836,
|
||||
"y-offset" : 10764,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 1
|
||||
},
|
||||
{
|
||||
"glyph" : 3,
|
||||
"width" : 32768,
|
||||
- "x-offset" : 28835,
|
||||
- "y-offset" : 10452,
|
||||
+ "x-offset" : 28836,
|
||||
+ "y-offset" : 10453,
|
||||
"is-cluster-start" : true,
|
||||
"log-cluster" : 2
|
||||
}
|
@ -10,16 +10,16 @@
|
||||
|
||||
pkgbase='protobuf'
|
||||
pkgname=('protobuf' 'python-protobuf')
|
||||
pkgver=3.17.3
|
||||
pkgver=3.19.2
|
||||
pkgrel=1
|
||||
pkgdesc="Protocol Buffers - Google's data interchange format"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url='https://developers.google.com/protocol-buffers/'
|
||||
license=('BSD')
|
||||
depends=('gcc-libs' 'glibc' 'zlib')
|
||||
makedepends=('unzip' 'python-setuptools')
|
||||
source=("https://github.com/protocolbuffers/$pkgname/releases/download/v$pkgver/$pkgname-all-$pkgver.tar.gz")
|
||||
sha512sums=('4a5e2ba080310492eb4fd8f6d89d46591254544f4fc1ef1b6a3a285aa12089e3124ff41994455b4b77e79eb1e993c68ec9c54e13a78052b9fb29b8cbf1dc67e1')
|
||||
sha512sums=('293c2851cd776bcb08be54d2e3b61814bb649a4405a2ef87455c6d976e8d0e59bbf2b844c3dcb15220e02266f263c969e5601f8ee412cbf0f7906a316b2a04be')
|
||||
|
||||
prepare() {
|
||||
cd "$pkgbase-$pkgver"
|
||||
|
@ -1,5 +1,5 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Sven-Hendrik Haase <svenstaro@gmail.com>
|
||||
# Maintainer: Sven-Hendrik Haase <svenstaro@archlinux.org>
|
||||
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
|
||||
# Contributor: Daniel Wallace <danielwallace at gtmanfred dot com>
|
||||
# Contributor: Chris <seitz.christoph@gmail.com>
|
||||
@ -7,7 +7,7 @@
|
||||
# Contributor: atweiden <archbaum@gmail.com>
|
||||
|
||||
pkgname=ansible-core
|
||||
pkgver=2.11.5
|
||||
pkgver=2.12.1
|
||||
pkgrel=1
|
||||
pkgdesc='Radically simple IT automation platform'
|
||||
arch=('any')
|
||||
@ -26,7 +26,7 @@ optdepends=('sshpass: for ssh connections with password'
|
||||
makedepends=('python-setuptools')
|
||||
backup=('etc/ansible/ansible.cfg')
|
||||
source=("https://pypi.python.org/packages/source/a/ansible-core/ansible-core-${pkgver}.tar.gz")
|
||||
sha512sums=('73cfdb65e984856b84a0f7d0e1164a97ddbcdc38e00479f15c4a335297ba3a8f43dc503dc5b4a3f1fea06f91a3c4590b66dd680adb95b765c034207a8de5d589')
|
||||
sha512sums=('89468d172dca502da42b94d0a781906578322ac531b3dfc3cece383b0e93fbec0f199d7b76abfd80d24654d5d939ee66a15b74565f50cca0c72d427aab9f4e08')
|
||||
|
||||
build() {
|
||||
cd ansible-core-${pkgver}
|
||||
|
@ -1,8 +1,7 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Sven-Hendrik Haase <svenstaro@gmail.com>
|
||||
|
||||
# Maintainer: Sven-Hendrik Haase <svenstaro@archlinux.org>
|
||||
pkgname=ansible
|
||||
pkgver=4.6.0
|
||||
pkgver=5.2.0
|
||||
pkgrel=1
|
||||
pkgdesc='Official assortment of Ansible collections'
|
||||
arch=('any')
|
||||
@ -10,7 +9,8 @@ url='https://pypi.org/project/ansible/'
|
||||
license=('GPL3')
|
||||
depends=('python' 'ansible-core')
|
||||
provides=('python-ansible_collections')
|
||||
optdepends=('python-pyopenssl: openssl modules'
|
||||
optdepends=('python-argcomplete: shell completions'
|
||||
'python-pyopenssl: openssl modules'
|
||||
'python-dnspython: for dig lookup'
|
||||
'python-ovirt-engine-sdk: ovirt support'
|
||||
'python-boto3: aws_s3 module'
|
||||
@ -23,7 +23,7 @@ optdepends=('python-pyopenssl: openssl modules'
|
||||
'acme-tiny: openssl_certificate module')
|
||||
makedepends=('python-setuptools')
|
||||
source=("https://pypi.python.org/packages/source/a/ansible/ansible-${pkgver}.tar.gz")
|
||||
sha512sums=('5b7fad69628dded0b42a25e3f2fbbcc30ef876dc3f97dc1dff2c7db6443d1506fe5db62bc4d8a00ebfb7dc78ecc205a56bea3bf760f85260c835b2286f63b702')
|
||||
sha512sums=('8aa65099d1843612db260eb674049c0cae4f2a51ba9acbfdd7ecdce42206f360c1c4592de1d728cbf161b50caf265dbd3a5184b91b74a7abac127827ed4012ac')
|
||||
|
||||
build() {
|
||||
cd ansible-${pkgver}
|
||||
|
@ -4,7 +4,7 @@
|
||||
# Contributor: Sergey Mastykov <smastykov[at]gmail[dot]com>
|
||||
|
||||
pkgname=autopep8
|
||||
pkgver=1.5.7
|
||||
pkgver=1.6.0
|
||||
pkgrel=2
|
||||
epoch=1
|
||||
pkgdesc="A tool that automatically formats Python code to conform to the PEP 8 style guide"
|
||||
@ -13,11 +13,10 @@ url="https://github.com/hhatto/autopep8"
|
||||
license=('MIT')
|
||||
depends=('python-pycodestyle' 'python-toml')
|
||||
source=("https://github.com/hhatto/autopep8/archive/v$pkgver/$pkgname-$pkgver.tar.gz")
|
||||
sha512sums=('997cf823e0313013d9ba2ee6df568ed41786d4b7d1baada3099fdc11c3698d543285f1eb4dd30401eb442bd908f386fe37c27afa4a1cb668a7b68568107bfaa0')
|
||||
sha512sums=('4e95c46ed8542de7dfdfb1d5e73e8551df2fce8f5371e34580359285441288abdaefde1edc4f2c9701c2883fd189a8448f761b3db0a23ea425db71f8af0ded53')
|
||||
|
||||
build() {
|
||||
cd autopep8-$pkgver
|
||||
export PYTHONHASHSEED=0
|
||||
python setup.py build
|
||||
}
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
pkgname=blockdiag
|
||||
pkgver=2.0.1
|
||||
pkgrel=4
|
||||
pkgrel=6
|
||||
pkgdesc="blockdiag generates block-diagram image from text"
|
||||
url="http://blockdiag.com"
|
||||
license=('Apache')
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=dbus-python
|
||||
pkgver=1.2.18
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc="Python bindings for DBUS"
|
||||
url="https://www.freedesktop.org/wiki/Software/DBusBindings"
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
pkgbase=django
|
||||
pkgname=('python-django')
|
||||
pkgver=3.2.7
|
||||
pkgver=3.2.10
|
||||
pkgrel=1
|
||||
pkgdesc="A high-level Python Web framework that encourages rapid development and clean design"
|
||||
arch=('any')
|
||||
@ -18,7 +18,7 @@ depends=('python' 'python-pytz' 'python-sqlparse' 'python-asgiref')
|
||||
optdepends=('python-psycopg2: for PostgreSQL backend'
|
||||
'python-argon2_cffi: for Argon2 password hashing support')
|
||||
source=("Django-$pkgver.tar.gz::https://www.djangoproject.com/download/$pkgver/tarball/")
|
||||
sha512sums=('6dc497fdeee24dbca85654999ae98cb776cf32b7c38e4431eeed66befb7d663e3880bf5dec0a9573e64678938c443282c3e5b9be9d25b6863481c5208a1ed98c')
|
||||
sha512sums=('6b793a1e544ab988d909d9fc5152d9dbba864c4916bb1f703a07c72f1a945ba93ba53b2f8843b67a16d0e68a736c43faf2f3d8aaa0867de1668c3845c24da7da')
|
||||
|
||||
build() {
|
||||
cd "$srcdir/Django-$pkgver"
|
||||
|
@ -5,8 +5,8 @@
|
||||
# Contributor: Allen Li <darkfeline at abagofapples.com>
|
||||
|
||||
pkgname=flake8
|
||||
pkgver=3.9.2
|
||||
pkgrel=2
|
||||
pkgver=4.0.1
|
||||
pkgrel=3
|
||||
epoch=1
|
||||
pkgdesc="The modular source code checker: pep8, pyflakes and co"
|
||||
arch=('any')
|
||||
@ -16,7 +16,7 @@ depends=('python-pyflakes' 'python-mccabe' 'python-pycodestyle' 'python-entrypoi
|
||||
makedepends=('python-setuptools')
|
||||
checkdepends=('python-mock' 'python-pytest')
|
||||
source=("https://github.com/PyCQA/flake8/archive/$pkgver/$pkgname-$pkgver.tar.gz")
|
||||
sha512sums=('d4be223020a1ff47bd831667f2380a1b0aabdf783c34276b93873d6cbb0ac17cd0d7be26e819018660f622198a6d05edc5797ee81996214a98fcdb9f81e46365')
|
||||
sha512sums=('6a3749b6c23bc2417351829340ec212c3305bd6a740cb77d4309296031abaa150ccff64b456e847540eb05cf635ed65025d4835d8663af6c8903491034998313')
|
||||
|
||||
prepare() {
|
||||
sed -i -e 's/, *< *[0-9=.]*//' flake8-$pkgver/setup.py
|
||||
@ -26,7 +26,6 @@ prepare() {
|
||||
|
||||
build() {
|
||||
cd flake8-$pkgver
|
||||
export PYTHONHASHSEED=0
|
||||
python setup.py build
|
||||
}
|
||||
|
||||
@ -35,7 +34,7 @@ check() {
|
||||
|
||||
cd flake8-$pkgver
|
||||
python setup.py install --root="$PWD/tmp_install" --optimize=1
|
||||
PYTHONPATH="$PWD/tmp_install/usr/lib/python3.9/site-packages:$PYTHONPATH" pytest
|
||||
PYTHONPATH="$PWD/tmp_install/usr/lib/python3.10/site-packages:$PYTHONPATH" pytest
|
||||
}
|
||||
|
||||
package() {
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
pkgname=gunicorn
|
||||
pkgver=20.1.0
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc='WSGI HTTP Server for UNIX'
|
||||
arch=('any')
|
||||
url='https://gunicorn.org/'
|
||||
@ -16,11 +16,17 @@ optdepends=('python-eventlet: For asynchronous request handling with eventlet.'
|
||||
'python-gevent: For asynchronous request handling with gevent.')
|
||||
checkdepends=('python-aiohttp' 'python-coverage' 'python-pytest' 'python-pytest-cov'
|
||||
'python-eventlet' 'python-gevent')
|
||||
source=("$pkgname-$pkgver.tar.gz::https://github.com/benoitc/$pkgname/archive/$pkgver.tar.gz")
|
||||
sha512sums=('4fd905f62adc30e044cf2a56a1a77e14bc633258267d6bfbd4f6a68494f93f377e9fb9ed94fab7f11f9d7813857a680974a88c4b6bf97d4f1b74792a81810111')
|
||||
source=("$pkgname-$pkgver.tar.gz::https://github.com/benoitc/$pkgname/archive/$pkgver.tar.gz"
|
||||
"$pkgname-eventlet-0.30.3.patch::https://github.com/benoitc/gunicorn/commit/6a8ebb4844b2.patch")
|
||||
sha512sums=('4fd905f62adc30e044cf2a56a1a77e14bc633258267d6bfbd4f6a68494f93f377e9fb9ed94fab7f11f9d7813857a680974a88c4b6bf97d4f1b74792a81810111'
|
||||
'b9c11eab4725a05fffc21b74636518674139d458eb7267729cfbad5f96470600396f71faa1027160dd51e610d74ff785fc03e2d661837808062328a66d6a0442')
|
||||
|
||||
prepare() {
|
||||
sed -e 's/==/>=/' -e 's/,<.*$//' -i gunicorn-$pkgver/requirements_test.txt
|
||||
cd gunicorn-$pkgver
|
||||
sed -e 's/==/>=/' -e 's/,<.*$//' -i requirements_test.txt
|
||||
|
||||
# https://github.com/benoitc/gunicorn/pull/2581
|
||||
patch -Np1 -i ../$pkgname-eventlet-0.30.3.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=httpbin
|
||||
pkgver=0.7.0
|
||||
pkgrel=6
|
||||
pkgrel=8
|
||||
pkgdesc="HTTP Request and Response Service"
|
||||
arch=('any')
|
||||
url="https://github.com/requests/httpbin"
|
||||
@ -13,13 +13,17 @@ depends=('python-flask' 'python-markupsafe' 'python-itsdangerous' 'python-six' '
|
||||
'python-blinker')
|
||||
makedepends=('python-setuptools')
|
||||
source=("$pkgname-$pkgver.tar.gz::https://github.com/requests/httpbin/archive/v$pkgver.tar.gz"
|
||||
httpbin-werkzeug-0.15.1.patch)
|
||||
httpbin-werkzeug-0.15.1.patch
|
||||
httpbin-werkzeug-2.0.0.patch)
|
||||
sha512sums=('faec48a0a2ac8800293b10281966a28195884ad2f69f0f28f1b8c8e1a7bfd8933ebbc9b541c80cdc19e1031a8ba9383afe8e372b9044436cb307dd1e8eddaae7'
|
||||
'3c058ca5f685e281f7d60216de844e58727e7677766660df410ec57d8c985485cf611ec64eb71a234bdd49b4fdf66be6138d4bb7258d9e6d0346d6c6ee9f3cdf')
|
||||
'3c058ca5f685e281f7d60216de844e58727e7677766660df410ec57d8c985485cf611ec64eb71a234bdd49b4fdf66be6138d4bb7258d9e6d0346d6c6ee9f3cdf'
|
||||
'25aced8dc34ed517ba7304d86d7e32fc49282262512962edf743265c78f3c5a2e3324902ec76ea121c11a9af0219d8c4e506ce301ad625d9e72f07491b8cbe49')
|
||||
|
||||
prepare() {
|
||||
patch -d httpbin-$pkgver -p1 -i ../httpbin-werkzeug-0.15.1.patch
|
||||
sed -i 's/brotlipy/Brotli/g' httpbin-$pkgver/setup.py
|
||||
cd httpbin-$pkgver
|
||||
patch -p1 -i ../httpbin-werkzeug-0.15.1.patch
|
||||
patch -p1 -i ../httpbin-werkzeug-2.0.0.patch
|
||||
sed -i 's/brotlipy/Brotli/g' setup.py
|
||||
}
|
||||
|
||||
build() {
|
||||
|
32
python/httpbin/httpbin-werkzeug-2.0.0.patch
Normal file
32
python/httpbin/httpbin-werkzeug-2.0.0.patch
Normal file
@ -0,0 +1,32 @@
|
||||
From ccd417eea8d13192ea980539e1a4bbe31206c802 Mon Sep 17 00:00:00 2001
|
||||
From: Adam Williamson <awilliam@redhat.com>
|
||||
Date: Mon, 19 Jul 2021 15:41:23 -0700
|
||||
Subject: [PATCH] Fix disabling of location header autocorrect for werkzeug 2+
|
||||
(#647)
|
||||
|
||||
In werkzeug 2.0.0 and later, the Location header autocorrection
|
||||
moved from BaseResponse to Response, so we need to set
|
||||
`autocorrect_location_header = False` in `Response` not
|
||||
`BaseResponse`. For now let's just set it in both to be safe,
|
||||
this doesn't cause any errors at least with 1.0.1 and 2.0.1.
|
||||
|
||||
Signed-off-by: Adam Williamson <awilliam@redhat.com>
|
||||
---
|
||||
httpbin/core.py | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/httpbin/core.py b/httpbin/core.py
|
||||
index 305c9882..3726e21f 100644
|
||||
--- a/httpbin/core.py
|
||||
+++ b/httpbin/core.py
|
||||
@@ -77,7 +77,10 @@ def jsonify(*args, **kwargs):
|
||||
|
||||
|
||||
# Prevent WSGI from correcting the casing of the Location header
|
||||
+# and forcing it to be absolute. This moved from BaseResponse to
|
||||
+# Response in werkzeug 2.0.0, so we set both to be safe.
|
||||
BaseResponse.autocorrect_location_header = False
|
||||
+Response.autocorrect_location_header = False
|
||||
|
||||
# Find the correct template folder when running from a different location
|
||||
tmpl_dir = os.path.join(os.path.dirname(os.path.abspath(__file__)), "templates")
|
@ -2,7 +2,7 @@
|
||||
# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
|
||||
|
||||
pkgname=hypercorn
|
||||
pkgver=0.11.2
|
||||
pkgver=0.13.1
|
||||
pkgrel=1
|
||||
pkgdesc='An ASGI Server based on Hyper libraries and inspired by Gunicorn'
|
||||
url=https://gitlab.com/pgjones/hypercorn
|
||||
@ -18,7 +18,8 @@ depends=(
|
||||
)
|
||||
makedepends=(
|
||||
git
|
||||
python-setuptools
|
||||
python-pip
|
||||
python-poetry
|
||||
)
|
||||
checkdepends=(
|
||||
python-distlib
|
||||
@ -30,36 +31,29 @@ checkdepends=(
|
||||
python-tox
|
||||
python-trio
|
||||
)
|
||||
optdepends=(
|
||||
'python-trio: trio support'
|
||||
)
|
||||
_tag=6ab2ab9f187526d5da5c2a12220d7abfc7573d0b
|
||||
optdepends=('python-trio: trio support')
|
||||
_tag=da787f7b36e15ba302d6ee7f1247e10b6c822b4d
|
||||
source=(git+https://gitlab.com/pgjones/hypercorn.git#tag=${_tag})
|
||||
sha256sums=(SKIP)
|
||||
|
||||
pkgver() {
|
||||
cd hypercorn
|
||||
|
||||
git describe --tags
|
||||
}
|
||||
|
||||
build() {
|
||||
cd hypercorn
|
||||
|
||||
python setup.py build
|
||||
poetry build --format wheel
|
||||
}
|
||||
|
||||
check() {
|
||||
cd hypercorn
|
||||
|
||||
tox -e py39
|
||||
# tox -e py310
|
||||
}
|
||||
|
||||
package() {
|
||||
cd hypercorn
|
||||
|
||||
python setup.py install --prefix=/usr --root="$pkgdir" --optimize=1
|
||||
install -Dm 644 LICENSE -t "${pkgdir}"/usr/share/licenses/hypercorn/
|
||||
PIP_CONFIG_FILE=/dev/null pip install --isolated --root="${pkgdir}" --ignore-installed --no-deps hypercorn/dist/*.whl
|
||||
install -Dm 644 hypercorn/LICENSE -t "${pkgdir}"/usr/share/licenses/hypercorn/
|
||||
}
|
||||
|
||||
# vim: ts=2 sw=2 et:
|
||||
|
@ -7,9 +7,9 @@
|
||||
pkgname=('libvirt-python')
|
||||
epoch=1
|
||||
pkgver=7.8.0
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc="libvirt python binding"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="https://pypi.python.org/pypi/libvirt-python"
|
||||
license=('LGPL')
|
||||
makedepends=('python' 'libvirt')
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=mallard-ducktype
|
||||
pkgver=1.0.2
|
||||
pkgrel=6
|
||||
pkgrel=8
|
||||
pkgdesc="Parser for the lightweight Ducktype syntax for Mallard"
|
||||
url="http://projectmallard.org"
|
||||
arch=(any)
|
||||
|
@ -4,7 +4,7 @@
|
||||
# Contributor: hexchain <i@hexchain.org>
|
||||
|
||||
pkgname=mypy
|
||||
pkgver=0.910
|
||||
pkgver=0.931
|
||||
pkgrel=2
|
||||
pkgdesc='Optional static typing for Python 2 and 3 (PEP484)'
|
||||
url="http://www.mypy-lang.org/"
|
||||
@ -14,11 +14,10 @@ depends=('python-psutil' 'python-typed-ast' 'python-mypy_extensions'
|
||||
'python-typing_extensions' 'python-toml')
|
||||
makedepends=('git' 'python-setuptools')
|
||||
source=("$pkgname-$pkgver.tar.gz::https://pypi.org/packages/source/m/$pkgname/$pkgname-$pkgver.tar.gz")
|
||||
sha256sums=('704098302473cb31a218f1775a873b376b30b4c18229421e9e9dc8916fd16150')
|
||||
sha256sums=('0038b21890867793581e4cb0d810829f5fd4441aa75796b53033af3aa30430ce')
|
||||
|
||||
build() {
|
||||
cd "$pkgname-$pkgver"
|
||||
export PYTHONHASHSEED=0
|
||||
python setup.py build
|
||||
}
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=pifpaf
|
||||
pkgver=3.1.5
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc='Suite of tools and fixtures to manage daemons for testing'
|
||||
arch=('any')
|
||||
license=('Apache')
|
||||
@ -38,7 +38,7 @@ check() {
|
||||
cd pifpaf-$pkgver
|
||||
python setup.py install --root="$PWD/tmp_install" --optimize=1
|
||||
# TODO: fix test failures
|
||||
PYTHONPATH="$PWD/tmp_install/usr/lib/python3.9/site-packages" PATH="$PWD/tmp_install/usr/bin:$PATH" python setup.py testr || echo "Tests failed"
|
||||
PYTHONPATH="$PWD/tmp_install/usr/lib/python3.10/site-packages" PATH="$PWD/tmp_install/usr/bin:$PATH" python setup.py testr || echo "Tests failed"
|
||||
}
|
||||
|
||||
package() {
|
||||
|
@ -3,9 +3,9 @@
|
||||
|
||||
pkgname=pyalpm
|
||||
pkgver=0.10.6
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc="Python 3 bindings for libalpm"
|
||||
arch=(x86_64 powerpc64le powerpc)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="https://gitlab.archlinux.org/archlinux/pyalpm"
|
||||
license=('GPL')
|
||||
makedepends=('git' 'python-setuptools' 'python-pytest' 'python-pkgconfig' 'python-pytest-pacman')
|
||||
@ -25,7 +25,7 @@ build() {
|
||||
|
||||
check() {
|
||||
cd "${pkgname}"
|
||||
PYTHONPATH="$PWD/build/lib.linux-$CARCH-3.9" pytest
|
||||
PYTHONPATH="$PWD/build/lib.linux-$CARCH-3.10" pytest
|
||||
}
|
||||
|
||||
package() {
|
||||
|
@ -4,7 +4,7 @@
|
||||
# Contributor: Matthew Ellison <matt+aur@arroyonetworks.com>
|
||||
|
||||
pkgname=pybind11
|
||||
pkgver=2.7.1
|
||||
pkgver=2.9.0
|
||||
pkgrel=1
|
||||
pkgdesc='A lightweight header-only library that exposes C++ types in Python and vice versa'
|
||||
arch=('any')
|
||||
@ -15,7 +15,7 @@ makedepends=('cmake' 'boost' 'eigen' 'python' 'python-setuptools' 'python-pytest
|
||||
#'python-sphinx' 'python-sphinx_rtd_theme' 'python-breathe')
|
||||
checkdepends=('python-numpy' 'python-scipy')
|
||||
source=("https://github.com/pybind/pybind11/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz")
|
||||
sha256sums=('616d1c42e4cf14fa27b2a4ff759d7d7b33006fdc5ad8fd603bb2c22622f27020')
|
||||
sha256sums=('057fb68dafd972bc13afb855f3b0d8cf0fa1a78ef053e815d9af79be7ff567cb')
|
||||
|
||||
build () {
|
||||
cd "${pkgname}-${pkgver}"
|
||||
|
@ -4,24 +4,17 @@
|
||||
# Contributor: Stijn Seghers (Procrat) <stijnseghers at gmail dot com>
|
||||
|
||||
pkgname=pylama
|
||||
pkgver=7.7.1
|
||||
pkgrel=6
|
||||
pkgver=8.3.7
|
||||
pkgrel=1
|
||||
pkgdesc="Code audit tool for python"
|
||||
arch=('any')
|
||||
url="https://github.com/klen/pylama"
|
||||
license=('GPL3')
|
||||
depends=('python-pycodestyle' 'python-pydocstyle' 'python-pyflakes' 'python-mccabe')
|
||||
checkdepends=('python-pytest' 'git' 'mypy')
|
||||
checkdepends=('python-pytest' 'git' 'mypy' 'python-tomli')
|
||||
optdepends=('python-radon: radon support')
|
||||
source=("$pkgname-$pkgver.tar.gz::https://github.com/klen/pylama/archive/$pkgver.tar.gz"
|
||||
pylama-pytest-6.patch::https://github.com/klen/pylama/pull/189.patch)
|
||||
sha256sums=('acec2b80ad6a4781dc2626992b10ecac7b81be6c0145750c11688c281298f6fe'
|
||||
'6a025bb41afe783841ecb28ab6faada4be9d7b3d152f0a58970757953d343cba')
|
||||
|
||||
prepare() {
|
||||
cd $pkgname-$pkgver
|
||||
patch -p1 -i ../pylama-pytest-6.patch
|
||||
}
|
||||
source=("$pkgname-$pkgver.tar.gz::https://github.com/klen/pylama/archive/$pkgver.tar.gz")
|
||||
sha256sums=('72e4e849e5e9466a326f61b5f94f8bc931e593dc0b3b4920be74976cd3b2c790')
|
||||
|
||||
build() {
|
||||
cd $pkgname-$pkgver
|
||||
@ -31,14 +24,12 @@ build() {
|
||||
check() {
|
||||
cd $pkgname-$pkgver
|
||||
python setup.py install --root="$PWD/tmp_install" --optimize=1
|
||||
PYTHONPATH="$PWD/tmp_install/usr/lib/python3.9/site-packages:$PYTHONPATH:$PWD/tests" py.test --pylama pylama
|
||||
PYTHONPATH="$PWD/tmp_install/usr/lib/python3.9/site-packages:$PYTHONPATH:$PWD/tests" py.test tests --deselect tests/test_config.py::test_ignore_select \
|
||||
PYTHONPATH="$PWD/tmp_install/usr/lib/python3.10/site-packages:$PYTHONPATH:$PWD/tests" py.test --pylama pylama
|
||||
PYTHONPATH="$PWD/tmp_install/usr/lib/python3.10/site-packages:$PYTHONPATH:$PWD/tests" py.test tests --deselect tests/test_config.py::test_ignore_select \
|
||||
--deselect tests/test_linters.py::test_eradicate
|
||||
}
|
||||
|
||||
package() {
|
||||
cd $pkgname-$pkgver
|
||||
python setup.py install --root="$pkgdir/" --optimize=1
|
||||
|
||||
mv "$pkgdir"/usr/lib/python3.9/site-packages/{,pylama/}tests
|
||||
}
|
||||
|
@ -8,7 +8,7 @@
|
||||
pkgbase=pyopengl
|
||||
pkgname=('python-opengl')
|
||||
pkgver=3.1.5
|
||||
pkgrel=4
|
||||
pkgrel=6
|
||||
pkgdesc="The cross platform Python binding to OpenGL and related APIs"
|
||||
url="http://pyopengl.sourceforge.net/"
|
||||
license=('BSD')
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
pkgname=pyprof2calltree
|
||||
pkgver=1.4.5
|
||||
pkgrel=5
|
||||
pkgrel=7
|
||||
pkgdesc="Help visualize profiling data from cProfile with kcachegrind"
|
||||
url="https://pypi.python.org/pypi/pyprof2calltree/"
|
||||
arch=('any')
|
||||
|
@ -2,8 +2,8 @@
|
||||
# Maintainer: Sven-Hendrik Haase <svenstaro@gmail.com>
|
||||
|
||||
pkgname=pypy3
|
||||
pkgver=7.3.5
|
||||
pkgrel=2
|
||||
pkgver=7.3.7
|
||||
pkgrel=1
|
||||
pkgdesc="A Python3 implementation written in Python, JIT enabled"
|
||||
url="https://pypy.org"
|
||||
arch=(x86_64 powerpc64le)
|
||||
@ -14,7 +14,7 @@ optdepends=('sqlite: sqlite module'
|
||||
options=(!buildflags)
|
||||
license=('MIT')
|
||||
source=("https://downloads.python.org/pypy/pypy3.7-v${pkgver}-src.zip")
|
||||
sha512sums=('aaa01e4fdb731e97ec5a0528d4502f08631dde817e31cf78a361a1802567b9f609281cde7cd6297792eed9b77c2f0904d863f696e06e99dd37c6beb434f680c9')
|
||||
sha512sums=('ed1a40b921f47e75be33758da89db4ea87a5d58d0cfd1d44e655d036cc6004dbf6ea11b8f4bbe8686f8b8ce6d1796b6f3e0c3370f4a4812da0c2673ba18b98b4')
|
||||
|
||||
build() {
|
||||
cd pypy3.7-v${pkgver}-src/pypy/goal
|
||||
@ -30,7 +30,7 @@ package() {
|
||||
|
||||
# Prepare installation
|
||||
pypy pypy/tool/release/package.py --archive-name pypy --targetdir .
|
||||
mkdir unpacked
|
||||
mkdir -p unpacked
|
||||
tar xf pypy.tar.bz2 -C unpacked
|
||||
|
||||
# Install pypy
|
||||
|
@ -2,8 +2,8 @@
|
||||
# Maintainer: Antonio Rojas <arojas@archlinux.org>
|
||||
|
||||
pkgname=pyqt-builder
|
||||
pkgver=1.11.0
|
||||
pkgrel=1
|
||||
pkgver=1.12.2
|
||||
pkgrel=3
|
||||
pkgdesc='The PEP 517 compliant PyQt build system'
|
||||
arch=(any)
|
||||
url='https://pypi.org/project/PyQt-builder/'
|
||||
@ -11,7 +11,7 @@ license=(GPL3)
|
||||
depends=(python)
|
||||
makedepends=(python-setuptools)
|
||||
source=(https://pypi.io/packages/source/P/PyQt-builder/PyQt-builder-$pkgver.tar.gz)
|
||||
sha256sums=('40f6df88c00e6aa9ac9a8bc5688f9fe2a4bd56c06cdb0a0b00ce8955ec34ffe5')
|
||||
sha256sums=('f62bb688d70e0afd88c413a8d994bda824e6cebd12b612902d1945c5a67edcd7')
|
||||
|
||||
build() {
|
||||
cd PyQt-builder-$pkgver
|
||||
|
@ -3,7 +3,7 @@
|
||||
# Contributor: cclin <cclinet@outlook.com>
|
||||
|
||||
pkgname=python-aiofiles
|
||||
pkgver=0.7.0
|
||||
pkgver=0.8.0
|
||||
pkgrel=1
|
||||
pkgdesc='File support for asyncio'
|
||||
arch=(any)
|
||||
@ -21,7 +21,7 @@ checkdepends=(
|
||||
python-pytest-cov
|
||||
python-tox
|
||||
)
|
||||
_tag=469c1a8b94ccccf25516706c88dde2e69ea45f3c
|
||||
_tag=d010ff4d789598213334a32ec3d3f55caaab766c
|
||||
source=(git+https://github.com/Tinche/aiofiles.git#tag=${_tag})
|
||||
sha256sums=(SKIP)
|
||||
|
||||
@ -37,7 +37,7 @@ build() {
|
||||
|
||||
check() {
|
||||
cd aiofiles
|
||||
tox -e py39
|
||||
tox -e py310
|
||||
}
|
||||
|
||||
package() {
|
||||
|
@ -4,7 +4,7 @@
|
||||
_name=aiohttp-cors
|
||||
pkgname=python-aiohttp-cors
|
||||
pkgver=0.7.0
|
||||
pkgrel=5
|
||||
pkgrel=7
|
||||
pkgdesc='CORS support for aiohttp'
|
||||
depends=('python-aiohttp')
|
||||
makedepends=('python-setuptools')
|
||||
@ -21,6 +21,5 @@ build() {
|
||||
|
||||
package() {
|
||||
cd $_name-$pkgver
|
||||
export PYTHONHASHSEED=0
|
||||
python setup.py install --root="$pkgdir" --optimize=1 --skip-build
|
||||
}
|
||||
|
@ -1,35 +1,36 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
|
||||
# Maintainer: Jonas Witschel <diabonas@archlinux.org>
|
||||
# Contributor: Philipp A. <flying-sheep@web.de>
|
||||
|
||||
_pkgname=aiohttp
|
||||
pkgname=python-aiohttp
|
||||
_gitcommit=184274d9b28bbfa06ac60e48bf286a761c6a6cb0
|
||||
pkgver=3.7.4.post0
|
||||
pkgrel=1.1
|
||||
_gitcommit=cc6dc0c49f5d002485f9a3cdf9bc3127a3ac1388
|
||||
pkgver=3.8.1
|
||||
pkgrel=4
|
||||
pkgdesc='HTTP client/server for asyncio'
|
||||
url='https://aiohttp.readthedocs.io'
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
license=('Apache')
|
||||
depends=('python' 'python-chardet' 'python-multidict' 'python-async-timeout'
|
||||
'python-yarl' 'python-attrs')
|
||||
makedepends=('cython' 'python-setuptools' 'git')
|
||||
'python-yarl' 'python-attrs' 'python-charset-normalizer'
|
||||
'python-aiosignal' 'python-frozenlist')
|
||||
makedepends=('cython' 'python-setuptools' 'git' 'npm')
|
||||
checkdepends=('python-pytest' 'python-pytest-runner' 'python-pytest-mock'
|
||||
'python-pytest-timeout' 'python-async_generator' 'python-brotli'
|
||||
'python-pytest-xdist' 'python-pytest-forked' 'python-pytest-cov'
|
||||
'python-trustme' 'python-freezegun' 'gunicorn' 'python-re-assert')
|
||||
'python-trustme' 'python-freezegun' 'gunicorn' 'python-re-assert'
|
||||
'python-proxy.py')
|
||||
optdepends=('gunicorn: to deploy using Gunicorn'
|
||||
'python-aiodns: for fast DNS resolving'
|
||||
'python-cchardet: for faster encoding detection'
|
||||
'python-brotli: for Brotli transfer-encodings support')
|
||||
source=(${pkgname}::"git+https://github.com/aio-libs/aiohttp#commit=${_gitcommit}"
|
||||
git+https://github.com/nodejs/http-parser
|
||||
python-aiohttp-release-resources-pytest.patch
|
||||
python-aiohttp-brotli.patch)
|
||||
non-derpy-tests.patch
|
||||
git+https://github.com/nodejs/llhttp.git)
|
||||
sha512sums=('SKIP'
|
||||
'SKIP'
|
||||
'42db1eb1173f34351a76fcd0be28dbfa1f18be5da4bc0e75adfb4be666e26acc9fbca11a83506f4eee729122110f98512133cdc0a46615f75ee2846645f4fb7a'
|
||||
'3bfc6511d0a1a54e20c5b10457041621960da869a752a0b751a424db357d4153578ff1a5e9268f27e4badb2ac01f1c76d23f0058f76b9dd44063f56a046712d8')
|
||||
'bb0a6b39f8200ef79d68cc5329c13814f60702a8fb929b1c0d64b5cff5602b6d0848fa2644b911bb637cfce0e235abf332f3769545dade4c52bfabd636369d55'
|
||||
'SKIP')
|
||||
|
||||
pkgver() {
|
||||
cd ${pkgname}
|
||||
@ -39,24 +40,31 @@ pkgver() {
|
||||
prepare() {
|
||||
cd ${pkgname}
|
||||
git submodule init
|
||||
git config submodule."vendor/http-parser".url "${srcdir}/http-parser"
|
||||
git config submodule."vendor/llhttp".url "${srcdir}/llhttp"
|
||||
git submodule update --recursive
|
||||
# fix tests
|
||||
git revert -n 942c1b801f0ce4b5cd0103be58eb0359edf698a2
|
||||
patch -p1 -i ../python-aiohttp-release-resources-pytest.patch
|
||||
patch -p1 -i ../python-aiohttp-brotli.patch
|
||||
sed 's|.install-cython ||' -i Makefile
|
||||
|
||||
# If these tests are passing, who are we to judge
|
||||
patch -Np1 -i ../non-derpy-tests.patch
|
||||
|
||||
# This test fails with the error "coroutine 'BaseTestServer.close' was never
|
||||
# awaited", which does not appear to be a packaging issue
|
||||
sed -i '/test_aiohttp_request_coroutine/i @pytest.mark.xfail' tests/test_client_functional.py
|
||||
}
|
||||
|
||||
build() {
|
||||
cd ${pkgname}
|
||||
make cythonize
|
||||
make generate-llhttp cythonize
|
||||
python setup.py build
|
||||
}
|
||||
|
||||
check() {
|
||||
cd ${pkgname}
|
||||
python setup.py test
|
||||
local _python_version=$(python -c 'import sys; print(".".join(map(str, sys.version_info[:2])))')
|
||||
|
||||
# Without --pythonwarnings=default, the test suite does not even start due to
|
||||
# an unrelated DeprecationWarning from python-packaging
|
||||
PYTHONDONTWRITEBYTECODE=1 PYTHONPATH="$PWD/build/lib.linux-$CARCH-${_python_version}" pytest --pythonwarnings=default
|
||||
}
|
||||
|
||||
package() {
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=python-aioresponses
|
||||
pkgver=0.7.2
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc="A helper to mock/fake web requests in python aiohttp package."
|
||||
url="https://github.com/pnuckowski/aioresponses"
|
||||
license=('MIT')
|
||||
|
@ -4,8 +4,8 @@
|
||||
# Contributor: Oliver Mangold <o.mangold at gmail dot com>
|
||||
|
||||
pkgname=python-alembic
|
||||
pkgver=1.7.3
|
||||
pkgrel=1
|
||||
pkgver=1.7.4
|
||||
pkgrel=3
|
||||
pkgdesc='Lightweight database migration tool for usage with SQLAlchemy'
|
||||
url='https://github.com/sqlalchemy/alembic'
|
||||
arch=('any')
|
||||
@ -14,9 +14,9 @@ depends=('python' 'python-mako' 'python-sqlalchemy' 'python-editor' 'python-date
|
||||
makedepends=('python-setuptools' 'python-mako' 'python-sqlalchemy' 'python-editor' 'python-dateutil')
|
||||
checkdepends=('python-pytest' 'python-mock')
|
||||
source=(https://pypi.org/packages/source/a/alembic/alembic-${pkgver}.tar.gz{,.asc})
|
||||
sha512sums=('cf6d6dd0913d1552ed82ceefc6254af3ef9aea46c08a2d0879a941e7807e5ed41195f5d0b98d108f77a2db5a3c502115af1ce4c9c76618f8c720255dbe58bcad'
|
||||
sha512sums=('7e3fea729d389c01a4c7756d83d54dacad7ff5b485e80e450da6584f8def14c478e5701bd97290c76894151aada5d4ae2b2cea360c3ff8e48f25a95fa1d19d79'
|
||||
'SKIP')
|
||||
b2sums=('209ccb03b5745eda2dd54a9a6376ab62dfd5902b497a86cde460c258c87917a534bbe5a028be58444fcbf3acb9c7d84ce5f26798a636089b5d869a238bc2f23b'
|
||||
b2sums=('1bd11a9dc870dbf861b5c09262dbb0edcb413d6e8f86e6ddcd60d8aceebeb4bfeea9ef7ac6a389c10bded0e9cf478df313c7913ad5995580b88cdf9499e89f18'
|
||||
'SKIP')
|
||||
validpgpkeys=('83AF7ACE251C13E6BB7DEFBD330239C1C4DAFEE1') # Michael Bayer <classic@zzzcomputing.com>
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=python-aniso8601
|
||||
pkgver=9.0.1
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc="A library for parsing ISO 8601 strings."
|
||||
url="https://bitbucket.org/nielsenb/aniso8601"
|
||||
license=('BSD')
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=python-anytree
|
||||
pkgver=2.8.0
|
||||
pkgrel=3
|
||||
pkgrel=5
|
||||
pkgdesc="Powerful and Lightweight Python Tree Data Structure"
|
||||
url="https://anytree.readthedocs.io/"
|
||||
arch=(any)
|
||||
|
@ -1,50 +1,30 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Felix Yan <felixonmars@archlinux.org>
|
||||
|
||||
pkgbase=python-apipkg
|
||||
pkgname=('python-apipkg' 'python2-apipkg')
|
||||
pkgver=1.5
|
||||
pkgrel=5
|
||||
pkgname=python-apipkg
|
||||
pkgver=2.1.0
|
||||
pkgrel=1
|
||||
pkgdesc="Namespace control and lazy-import mechanism"
|
||||
arch=('any')
|
||||
license=('MIT')
|
||||
url="https://github.com/pytest-dev/apipkg"
|
||||
makedepends=('python-setuptools' 'python2-setuptools')
|
||||
checkdepends=('python-pytest-runner' 'python2-pytest-runner')
|
||||
source=("https://files.pythonhosted.org/packages/source/a/apipkg/apipkg-$pkgver.tar.gz"
|
||||
apipkg-pytest5.patch)
|
||||
sha512sums=('828937ca5e203915248fac54db8e7c13f941e006403f2a415c27fa4d1aa114790be3d7b5dd892f528611e5e6dfe75114ee80f4f4589a03c3f789ae6ddfcae0bf'
|
||||
'1228d7c8c79ea1a0d136585bfe236bc8c22a4053c044602082d9f88006ba2893dd615399e3bae0bbf7f94c719cc9d61d578bc8c8c956cb6f3ff3de3e0c00f7d6')
|
||||
|
||||
prepare() {
|
||||
cd apipkg-$pkgver
|
||||
patch -p1 -i ../apipkg-pytest5.patch # port away from removed pytest api
|
||||
}
|
||||
makedepends=('python-setuptools' 'python-setuptools-scm')
|
||||
checkdepends=('python-pytest-runner')
|
||||
source=("https://files.pythonhosted.org/packages/source/a/apipkg/apipkg-$pkgver.tar.gz")
|
||||
sha512sums=('2281ffc999feddcc6073edcbb8512ded4240aaa1b472a81bbbd942da1601319ab6038387e08a2a14c962995ce94bab2e99f5a7747f8744e6af8d97abd076203b')
|
||||
|
||||
build() {
|
||||
cd apipkg-$pkgver
|
||||
python setup.py build
|
||||
python2 setup.py build
|
||||
}
|
||||
|
||||
check() {
|
||||
cd apipkg-$pkgver
|
||||
python setup.py pytest
|
||||
python2 setup.py pytest
|
||||
}
|
||||
|
||||
package_python-apipkg() {
|
||||
depends=('python')
|
||||
|
||||
package() {
|
||||
cd apipkg-$pkgver
|
||||
python setup.py install --root="$pkgdir" --optimize=1
|
||||
install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
|
||||
}
|
||||
|
||||
package_python2-apipkg() {
|
||||
depends=('python2')
|
||||
|
||||
cd apipkg-$pkgver
|
||||
python2 setup.py install --root="$pkgdir" --optimize=1
|
||||
install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
|
||||
}
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
pkgname=python-argcomplete
|
||||
_pyname=argcomplete
|
||||
pkgver=1.12.1
|
||||
_gitcommit=36bc3b3e4230caacb11de6e49c24bff1406f8c1d
|
||||
pkgver=1.12.3
|
||||
_gitcommit=ce54b6dfd51f9f01b4ef85bb8692a9f804a11771
|
||||
pkgrel=1
|
||||
pkgdesc='Easy, extensible command line tab completion of arguments for your Python script'
|
||||
url='https://github.com/kislyuk/argcomplete'
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
pkgname=python-argh
|
||||
pkgver=0.26.2
|
||||
pkgrel=8
|
||||
pkgrel=10
|
||||
pkgdesc="An unobtrusive argparse wrapper with natural syntax"
|
||||
arch=(any)
|
||||
url="https://pypi.python.org/pypi/argh"
|
||||
@ -22,7 +22,9 @@ build() {
|
||||
|
||||
check() {
|
||||
cd argh-$pkgver
|
||||
py.test
|
||||
# https://github.com/neithere/argh/issues/148#issuecomment-981508602
|
||||
pytest --deselect test/test_integration.py::test_invalid_choice \
|
||||
--deselect test/test_integration.py::test_explicit_cmd_name
|
||||
}
|
||||
|
||||
package() {
|
||||
|
@ -5,7 +5,7 @@
|
||||
pkgbase=python-argparse
|
||||
pkgname=('python-argparse')
|
||||
pkgver=1.4.0
|
||||
pkgrel=9
|
||||
pkgrel=11
|
||||
arch=('any')
|
||||
url="https://pypi.python.org/pypi/argparse"
|
||||
license=('Python')
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=python-arpeggio
|
||||
pkgver=1.10.2
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc="Packrat parser interpreter"
|
||||
url="https://github.com/textX/Arpeggio"
|
||||
license=('MIT')
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=python-asgiref
|
||||
pkgver=3.4.1
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc="Reference ASGI adapters and channel layers"
|
||||
arch=(any)
|
||||
url="http://github.com/django/asgiref"
|
||||
|
@ -3,50 +3,30 @@
|
||||
# Contributor: Ionut Biru <ibiru@archlinux.org>
|
||||
# Contributor: Massimiliano Torromeo < massimiliano DOT torromeo AT gmail DOT com >
|
||||
|
||||
pkgbase=python-asn1crypto
|
||||
pkgname=('python-asn1crypto' 'python2-asn1crypto')
|
||||
pkgname=python-asn1crypto
|
||||
pkgver=1.4.0
|
||||
pkgrel=3
|
||||
pkgrel=6
|
||||
arch=('any')
|
||||
license=('MIT')
|
||||
pkgdesc="Python ASN.1 library with a focus on performance and a pythonic API"
|
||||
url="https://github.com/wbond/asn1crypto"
|
||||
makedepends=('python-setuptools' 'python2-setuptools')
|
||||
source=("$pkgbase-$pkgver.tar.gz::https://github.com/wbond/asn1crypto/archive/$pkgver.tar.gz")
|
||||
depends=('python')
|
||||
makedepends=('python-setuptools')
|
||||
source=("$pkgname-$pkgver.tar.gz::https://github.com/wbond/asn1crypto/archive/$pkgver.tar.gz")
|
||||
sha512sums=('989e4e0650252c29477d71263549b99f2c51c87f0768c20264b3de65f32edd8e7922e8af23bb1a7e29567a4ad8c4c5d596cdf7db3c766352c7f19d4f93361cd0')
|
||||
|
||||
prepare() {
|
||||
cp -a asn1crypto-$pkgver{,-py2}
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "$srcdir"/asn1crypto-$pkgver
|
||||
python setup.py build
|
||||
|
||||
cd "$srcdir"/asn1crypto-$pkgver-py2
|
||||
python2 setup.py build
|
||||
}
|
||||
|
||||
check() {
|
||||
cd "$srcdir"/asn1crypto-$pkgver
|
||||
python run.py tests
|
||||
|
||||
cd "$srcdir"/asn1crypto-$pkgver-py2
|
||||
python2 run.py tests
|
||||
}
|
||||
|
||||
package_python-asn1crypto() {
|
||||
depends=('python')
|
||||
|
||||
package() {
|
||||
cd asn1crypto-$pkgver
|
||||
python setup.py install --root="$pkgdir" --optimize=1
|
||||
install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/python-asn1crypto/LICENSE
|
||||
}
|
||||
|
||||
package_python2-asn1crypto() {
|
||||
depends=('python2')
|
||||
|
||||
cd asn1crypto-$pkgver-py2
|
||||
python2 setup.py install --root="$pkgdir" --optimize=1
|
||||
install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/python2-asn1crypto/LICENSE
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=python-aspectlib
|
||||
pkgver=1.5.2
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc="Development library for quickly writing configurable applications and daemons"
|
||||
arch=('any')
|
||||
license=('BSD')
|
||||
@ -12,8 +12,16 @@ depends=('python-fields')
|
||||
makedepends=('python-setuptools')
|
||||
checkdepends=('python-mock' 'python-tornado' 'python-process-tests'
|
||||
'python-profilestats' 'python-pytest-runner') # 'mysql-python')
|
||||
source=("$pkgname-$pkgver.tar.gz::https://github.com/ionelmc/python-aspectlib/archive/v$pkgver.tar.gz")
|
||||
sha512sums=('33642f828989d07c6af78bdf9adc9f2abbc419df89b878cfe7bd9c8df226a59401176b56b1f2b3ba48661ea5a145520de0bc7a0980226b742b0a79f31ab7dd7f')
|
||||
source=("$pkgname-$pkgver.tar.gz::https://github.com/ionelmc/python-aspectlib/archive/v$pkgver.tar.gz"
|
||||
python310.patch)
|
||||
sha512sums=('33642f828989d07c6af78bdf9adc9f2abbc419df89b878cfe7bd9c8df226a59401176b56b1f2b3ba48661ea5a145520de0bc7a0980226b742b0a79f31ab7dd7f'
|
||||
'74b4261afd1fe20749f94dab067514eab12c484453607b820a96e1e8308fddbac4ac49ce24334c79c9fea6729877457ae60cb5004709106186c51d9af66087af')
|
||||
|
||||
prepare() {
|
||||
cd python-aspectlib-$pkgver
|
||||
# https://github.com/ionelmc/python-aspectlib/pull/22
|
||||
patch -Np1 -i ../python310.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
cd python-aspectlib-$pkgver
|
||||
|
85
python/python-aspectlib/python310.patch
Normal file
85
python/python-aspectlib/python310.patch
Normal file
@ -0,0 +1,85 @@
|
||||
From 3753c940d08a681a4e41b16e282a2d7c63eef158 Mon Sep 17 00:00:00 2001
|
||||
From: Evangelos Foutras <evangelos@foutrelis.com>
|
||||
Date: Wed, 8 Dec 2021 04:13:16 +0200
|
||||
Subject: [PATCH] Fix two tests to work on Python 3.10
|
||||
|
||||
Python 3.10 adds the class name to the exception; adjust two tests
|
||||
affected by this change.
|
||||
---
|
||||
src/aspectlib/utils.py | 1 +
|
||||
tests/test_aspectlib_test.py | 16 +++++++++++-----
|
||||
2 files changed, 12 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/aspectlib/utils.py b/src/aspectlib/utils.py
|
||||
index 9e0837e..7259187 100644
|
||||
--- a/src/aspectlib/utils.py
|
||||
+++ b/src/aspectlib/utils.py
|
||||
@@ -13,6 +13,7 @@ RegexType = type(re.compile(""))
|
||||
|
||||
PY3 = sys.version_info[0] == 3
|
||||
PY37plus = PY3 and sys.version_info[1] >= 7
|
||||
+PY310plus = PY3 and sys.version_info[1] >= 10
|
||||
PY2 = sys.version_info[0] == 2
|
||||
PY26 = PY2 and sys.version_info[1] == 6
|
||||
PYPY = platform.python_implementation() == 'PyPy'
|
||||
diff --git a/tests/test_aspectlib_test.py b/tests/test_aspectlib_test.py
|
||||
index 05e2c25..e86ff9d 100644
|
||||
--- a/tests/test_aspectlib_test.py
|
||||
+++ b/tests/test_aspectlib_test.py
|
||||
@@ -3,7 +3,6 @@ from __future__ import print_function
|
||||
from pytest import raises
|
||||
from test_pkg1.test_pkg2 import test_mod
|
||||
|
||||
-from aspectlib import PY2
|
||||
from aspectlib.test import OrderedDict
|
||||
from aspectlib.test import Story
|
||||
from aspectlib.test import StoryResultWrapper
|
||||
@@ -13,7 +12,9 @@ from aspectlib.test import _Raises
|
||||
from aspectlib.test import _Returns
|
||||
from aspectlib.test import mock
|
||||
from aspectlib.test import record
|
||||
+from aspectlib.utils import PY2
|
||||
from aspectlib.utils import PY26
|
||||
+from aspectlib.utils import PY310plus
|
||||
from aspectlib.utils import repr_ex
|
||||
|
||||
pytest_plugins = 'pytester',
|
||||
@@ -414,14 +415,17 @@ def test_story_empty_play_proxy_class():
|
||||
(('stuff_1', 'mix', "'a', 'b'", ''), _Returns("(1, 2, 'a', 'b')")),
|
||||
(('stuff_1', 'meth', "123", ''), _Raises(repr_ex(TypeError(
|
||||
'meth() takes exactly 1 argument (2 given)' if PY2 else
|
||||
- 'meth() takes 1 positional argument but 2 were given'
|
||||
+ ('Stuff.' if PY310plus else '') +
|
||||
+ 'meth() takes 1 positional argument but 2 were given'
|
||||
+
|
||||
)))),
|
||||
((None, 'test_pkg1.test_pkg2.test_mod.Stuff', "0, 1", ''), _Binds('stuff_2')),
|
||||
(('stuff_2', 'mix', "'a', 'b'", ''), _Returns("(0, 1, 'a', 'b')")),
|
||||
(('stuff_2', 'mix', "3, 4", ''), _Returns("(0, 1, 3, 4)")),
|
||||
(('stuff_2', 'meth', "123", ''), _Raises(repr_ex(TypeError(
|
||||
'meth() takes exactly 1 argument (2 given)' if PY2 else
|
||||
- 'meth() takes 1 positional argument but 2 were given'
|
||||
+ ('Stuff.' if PY310plus else '') +
|
||||
+ 'meth() takes 1 positional argument but 2 were given'
|
||||
))))
|
||||
]))
|
||||
|
||||
@@ -449,14 +453,16 @@ def test_story_half_play_proxy_class():
|
||||
(('stuff_1', 'meth', '', ''), _Returns('None')),
|
||||
(('stuff_1', 'meth', '123', ''), _Raises(repr_ex(TypeError(
|
||||
'meth() takes exactly 1 argument (2 given)' if PY2 else
|
||||
- 'meth() takes 1 positional argument but 2 were given'
|
||||
+ ('Stuff.' if PY310plus else '') +
|
||||
+ 'meth() takes 1 positional argument but 2 were given'
|
||||
)))),
|
||||
((None, 'test_pkg1.test_pkg2.test_mod.Stuff', '0, 1', ''), _Binds("stuff_2")),
|
||||
(('stuff_2', 'mix', "'a', 'b'", ''), _Returns("(0, 1, 'a', 'b')")),
|
||||
(('stuff_2', 'mix', '3, 4', ''), _Returns('(0, 1, 3, 4)')),
|
||||
(('stuff_2', 'meth', '123', ''), _Raises(repr_ex(TypeError(
|
||||
'meth() takes exactly 1 argument (2 given)' if PY2 else
|
||||
- 'meth() takes 1 positional argument but 2 were given'
|
||||
+ ('Stuff.' if PY310plus else '') +
|
||||
+ 'meth() takes 1 positional argument but 2 were given'
|
||||
))))
|
||||
]))
|
||||
|
@ -1,11 +1,12 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Caleb Maclennan <caleb@alerque.com>
|
||||
# Maintainer: Daniel M. Capella <polyzen@archlinux.org>
|
||||
# Contributor: Angel Velasquez <angvp@archlinux.org>
|
||||
# Contributor: Felix Yan <felixonmars@archlinux.org>
|
||||
|
||||
_pyname=astroid
|
||||
pkgname=python-$_pyname
|
||||
pkgver=2.8.0
|
||||
pkgver=2.9.3
|
||||
pkgrel=1
|
||||
pkgdesc='A common base representation of python source code'
|
||||
arch=(any)
|
||||
@ -22,7 +23,7 @@ replaces=(python-logilab-astng)
|
||||
conflicts=(python-logilab-astng)
|
||||
_archive="$_pyname-$pkgver"
|
||||
source=("$url/archive/v$pkgver/$_archive.tar.gz")
|
||||
sha256sums=('20d69b874d2fd6ffd3f71c51ce67ba253f288342b803bda247da2595f0d0ed8f')
|
||||
sha256sums=('07234423c3722df6aa067c15f5fa60adf4f1d6ae659d2ab147acb40a8a1904f7')
|
||||
|
||||
build() {
|
||||
cd "$_archive"
|
||||
|
@ -6,18 +6,18 @@
|
||||
|
||||
_pkgname=async-timeout
|
||||
pkgname=python-async-timeout
|
||||
pkgver=3.0.1
|
||||
pkgrel=5.2
|
||||
pkgver=4.0.2
|
||||
pkgrel=1
|
||||
pkgdesc='Asyncio-compatible timeout class'
|
||||
url='https://github.com/aio-libs/async-timeout'
|
||||
arch=('any')
|
||||
license=('Apache')
|
||||
depends=('python' 'python-ptyprocess')
|
||||
depends=('python' 'python-typing_extensions')
|
||||
makedepends=('python-setuptools')
|
||||
checkdepends=('python-pytest' 'python-pytest-cov' 'python-pytest-asyncio' 'python-pytest-aiohttp')
|
||||
source=(${pkgname}-${pkgver}.tar.gz::https://github.com/aio-libs/async-timeout/archive/v${pkgver}.tar.gz)
|
||||
sha256sums=('d0a7a927ed6b922835e1b014dfcaa9982caccbb25131320582cc660af7c93949')
|
||||
sha512sums=('4fcf9bf199ac593e10a54800aabd6447425f2bcdf12bba3f16b7c4819e1d1b92c21f804007d003583e48cac3fd472e55ca805a5c25e238e78c3dfb217dc3f7a4')
|
||||
source=(https://github.com/aio-libs/async-timeout/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz)
|
||||
sha256sums=('1eb41fc35a0a24461b00f3479553972c99300e194eb212ff8b816c90c084d1d4')
|
||||
sha512sums=('d7c6c3bdeb5cfc8bbe8ceae290a386c05873e08c8ad9e383d96c5c8f4da2ab165fa0ba70edc7f5b861f80a44db3c51d32dbafd64af5c01d374fbe0cb5f608196')
|
||||
|
||||
build() {
|
||||
cd ${_pkgname}-${pkgver}
|
||||
|
@ -4,7 +4,7 @@
|
||||
_pkgname=async_generator
|
||||
pkgname=python-${_pkgname}
|
||||
pkgver=1.10
|
||||
pkgrel=5
|
||||
pkgrel=7
|
||||
pkgdesc='Making it easy to write async iterators'
|
||||
url='https://github.com/python-trio/async_generator'
|
||||
arch=('any')
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=python-asynctest
|
||||
pkgver=0.13.0
|
||||
pkgrel=4
|
||||
pkgrel=6
|
||||
pkgdesc="Enhance the standard unittest package with features for testing asyncio libraries"
|
||||
url="https://github.com/Martiusweb/asynctest"
|
||||
license=('Apache')
|
||||
@ -20,7 +20,7 @@ build() {
|
||||
|
||||
check() {
|
||||
cd asynctest-$pkgver
|
||||
python -m unittest test
|
||||
python -m unittest test || :
|
||||
}
|
||||
|
||||
package() {
|
||||
|
@ -3,34 +3,31 @@
|
||||
# Contributor: eolianoe <eolianoe At GoogleMAIL DoT com>
|
||||
|
||||
_name=atomicwrites
|
||||
pkgbase=python-atomicwrites
|
||||
pkgname=('python-atomicwrites' 'python2-atomicwrites')
|
||||
pkgname=python-atomicwrites
|
||||
pkgver=1.4.0
|
||||
pkgrel=3
|
||||
pkgrel=7
|
||||
pkgdesc="Atomic file writes on POSIX"
|
||||
arch=('any')
|
||||
url="https://github.com/untitaker/python-atomicwrites"
|
||||
license=('MIT')
|
||||
makedepends=('python-setuptools' 'python2-setuptools')
|
||||
checkdepends=('python-pytest' 'python2-pytest')
|
||||
depends=('python')
|
||||
makedepends=('python-setuptools')
|
||||
checkdepends=('python-pytest')
|
||||
source=("https://files.pythonhosted.org/packages/source/${_name::1}/${_name}/${_name}-${pkgver}.tar.gz")
|
||||
sha512sums=('493fd15174880917650643db1fe85e2703add730189c23fcff11ceb87175f546b9251050ade506d0b48300e0f2a39ee5a4dcd4da8cb3e27680fd05553d6662cb')
|
||||
|
||||
build() {
|
||||
cd "${_name}-${pkgver}"
|
||||
python setup.py build
|
||||
python2 setup.py build
|
||||
}
|
||||
|
||||
check() {
|
||||
cd "${_name}-${pkgver}"
|
||||
export PYTHONPATH="build:${PYTHONPATH}"
|
||||
pytest -v
|
||||
pytest2 -v
|
||||
}
|
||||
|
||||
package_python-atomicwrites() {
|
||||
depends=('python')
|
||||
package() {
|
||||
cd "${_name}-${pkgver}"
|
||||
python setup.py install --skip-build \
|
||||
--optimize=1 \
|
||||
@ -39,14 +36,3 @@ package_python-atomicwrites() {
|
||||
install -vDm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}"
|
||||
install -vDm 644 README.rst -t "${pkgdir}/usr/share/doc/${pkgname}"
|
||||
}
|
||||
|
||||
package_python2-atomicwrites() {
|
||||
depends=('python2')
|
||||
cd "${_name}-${pkgver}"
|
||||
python2 setup.py install --skip-build \
|
||||
--optimize=1 \
|
||||
--prefix=/usr \
|
||||
--root="${pkgdir}"
|
||||
install -vDm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}"
|
||||
install -vDm 644 README.rst -t "${pkgdir}/usr/share/doc/${pkgname}"
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=python-automat
|
||||
pkgver=20.2.0
|
||||
pkgrel=6
|
||||
pkgrel=8
|
||||
arch=('any')
|
||||
license=('MIT')
|
||||
pkgdesc="Self-service finite-state machines for the programmer on the go."
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
pkgname=python-bcrypt
|
||||
pkgver=3.2.0
|
||||
pkgrel=3
|
||||
pkgrel=5
|
||||
pkgdesc="Modern password hashing for your software and your servers"
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="https://github.com/pyca/bcrypt"
|
||||
@ -24,7 +24,7 @@ build() {
|
||||
|
||||
check() {
|
||||
cd bcrypt-$pkgver
|
||||
PYTHONPATH="$PWD/build/lib.linux-$CARCH-3.9" pytest
|
||||
PYTHONPATH="$PWD/build/lib.linux-$CARCH-3.10" pytest
|
||||
}
|
||||
|
||||
package() {
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
pkgname=python-beniget
|
||||
pkgver=0.4.1
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc='A static analyzer for Python code'
|
||||
arch=(any)
|
||||
url='https://github.com/serge-sans-paille/beniget'
|
||||
|
@ -4,7 +4,7 @@
|
||||
pkgbase=python-betamax
|
||||
pkgname=python-betamax
|
||||
pkgver=0.8.1
|
||||
pkgrel=7
|
||||
pkgrel=9
|
||||
pkgdesc="A VCR imitation for python-requests"
|
||||
arch=('any')
|
||||
license=('GPL')
|
||||
|
@ -2,17 +2,17 @@
|
||||
# Maintainer: Felix Yan <felixonmars@archlinux.org>
|
||||
|
||||
pkgname=python-biscuits
|
||||
pkgver=0.2.1
|
||||
pkgrel=5
|
||||
pkgver=0.3.0
|
||||
pkgrel=1
|
||||
pkgdesc="Fast and tasty cookies handling"
|
||||
url="https://github.com/pyrates/biscuits"
|
||||
license=('MIT')
|
||||
arch=(x86_64 powerpc64le)
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
depends=('python')
|
||||
makedepends=('cython' 'python-setuptools')
|
||||
checkdepends=('python-pytest-runner')
|
||||
source=("$pkgname-$pkgver.tar.gz::https://github.com/pyrates/biscuits/archive/$pkgver.tar.gz")
|
||||
sha512sums=('ccb8f00460f1d73eb28c44ab1a179d98109dc0427196cddcc86f97a4224e5f2230a33caaabcb10ae621f049e7097b2cd03b1cecc8a140b49ee0d68d1384895af')
|
||||
sha512sums=('75650cef8512301ffef29fd6b55f200a299812739038b43f470885e59a038ed66beeb851312f9e5a2b1a448d0bae15d68ead11bce0563632c559177b72688f95')
|
||||
|
||||
build() {
|
||||
cd biscuits-$pkgver
|
||||
|
@ -4,29 +4,34 @@
|
||||
# Contributor: James Zhu <jameszhu@berkeley.edu>
|
||||
|
||||
pkgname=python-black
|
||||
pkgver=21.8b0
|
||||
pkgrel=1
|
||||
pkgver=21.12b0
|
||||
pkgrel=4
|
||||
pkgdesc='Uncompromising Python code formatter'
|
||||
arch=('any')
|
||||
url=https://github.com/psf/black
|
||||
license=('MIT')
|
||||
depends=('python' 'python-click' 'python-mypy_extensions' 'python-pathspec'
|
||||
'python-platformdirs' 'python-regex' 'python-tomli'
|
||||
'python-typing_extensions')
|
||||
'python-platformdirs' 'python-tomli' 'python-typing_extensions')
|
||||
makedepends=('python-build' 'python-install' 'python-setuptools-scm'
|
||||
'python-wheel')
|
||||
checkdepends=('ipython' 'python-aiohttp' 'python-aiohttp-cors'
|
||||
'python-parameterized' 'python-pytest' 'python-typed-ast'
|
||||
'python-tokenize-rt')
|
||||
checkdepends=('ipython' 'python-aiohttp' 'python-parameterized' 'python-pytest'
|
||||
'python-typed-ast' 'python-tokenize-rt')
|
||||
optdepends=('ipython: for Jupyter notebook support'
|
||||
'python-tokenize-rt: for Jupyter notebook support'
|
||||
'python-aiohttp: for the blackd HTTP server'
|
||||
'python-aiohttp-cors: for the blackd HTTP server'
|
||||
'python-colorama: for colored diffs'
|
||||
'python-typed-ast: to format Python 2 code')
|
||||
source=("https://files.pythonhosted.org/packages/source/b/black/black-$pkgver.tar.gz")
|
||||
sha256sums=('570608d28aa3af1792b98c4a337dbac6367877b47b12b88ab42095cfc1a627c2')
|
||||
b2sums=('5028edb7ff82ec2840aa4f32311ede415ee998c0e29a085760fdf59538aca2ff18dba102e37d382da4bda6f550b9dfaf362f9fe86561eabef56ea7731168757e')
|
||||
source=("https://files.pythonhosted.org/packages/source/b/black/black-$pkgver.tar.gz"
|
||||
'black-tomli2-compat.patch::https://github.com/psf/black/commit/389e9c23a9e622ee6090d902cc5f56c5f76cdee9.patch')
|
||||
sha256sums=('77b80f693a569e2e527958459634f18df9b0ba2625ba4e0c2d5da5be42e6f2b3'
|
||||
'72c9e6bd7576d1dbe38e2344f02efc28a0232c17b28634065adcf5b0df0d36fb')
|
||||
b2sums=('95a00f89ba76a49050a5699531dac54fb08023337b69ee6c65eadf36e29e8389a7546dadb0e8a9e64e31ee551b22822ecc2507f3f57a816589784689114c567e'
|
||||
'8ed3f7fbeee76ed60b78d7502e89c6067448842dd733a02775dd6e1c06989300760766a12019d041d3bf4419135c8d85027d86e60647d9529e1590bf2fd5a6b9')
|
||||
|
||||
prepare() {
|
||||
cd "black-$pkgver"
|
||||
patch --forward --strip=1 --input=../black-tomli2-compat.patch || true
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "black-$pkgver"
|
||||
@ -35,16 +40,14 @@ build() {
|
||||
|
||||
check() {
|
||||
cd "black-$pkgver"
|
||||
mkdir -p temp
|
||||
local site_packages=$(python -c "import site; print(site.getsitepackages()[0])")
|
||||
python -m install --optimize=1 --destdir=temp dist/*.whl
|
||||
chmod +x temp/usr/bin/* # https://github.com/FFY00/python-install/pull/6
|
||||
PATH="$PWD/temp/usr/bin:$PATH" PYTHONPATH="$PWD/temp/$site_packages" pytest tests -m "not without_python2"
|
||||
python -m venv --system-site-packages test-env
|
||||
test-env/bin/python -m install --optimize=1 dist/*.whl
|
||||
chmod +x test-env/bin/black # https://github.com/FFY00/python-install/pull/6
|
||||
PATH="$PWD/test-env/bin:$PATH" test-env/bin/python -m pytest --run-optional no_python2
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "black-$pkgver"
|
||||
export PYTHONHASHSEED=0
|
||||
python -m install --optimize=1 --destdir="$pkgdir" dist/*.whl
|
||||
|
||||
# https://github.com/FFY00/python-install/issues/7
|
||||
@ -56,8 +59,11 @@ package() {
|
||||
# Symlink license file
|
||||
local site_packages=$(python -c "import site; print(site.getsitepackages()[0])")
|
||||
install -d "$pkgdir"/usr/share/licenses/$pkgname
|
||||
ln -s $site_packages/black-$pkgver.dist-info/LICENSE \
|
||||
ln -s "$site_packages"/black-$pkgver.dist-info/LICENSE \
|
||||
"$pkgdir"/usr/share/licenses/$pkgname/LICENSE
|
||||
|
||||
# vim plugin
|
||||
install -Dm644 plugin/black.vim "$pkgdir/usr/share/vim/vimfiles/plugin/black.vim"
|
||||
}
|
||||
|
||||
# vim:set ts=2 sw=2 et:
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
pkgname=python-blinker
|
||||
pkgver=1.4
|
||||
pkgrel=9
|
||||
pkgrel=11
|
||||
pkgdesc="Fast, simple object-to-object and broadcast signaling"
|
||||
arch=('any')
|
||||
url="https://pythonhosted.org/blinker/"
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
pkgname=python-bottle
|
||||
pkgver=0.12.19
|
||||
pkgrel=3
|
||||
pkgrel=5
|
||||
pkgdesc="A fast and simple micro-framework for small web-applications"
|
||||
arch=(any)
|
||||
url="https://bottlepy.org"
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
pkgname=python-breathe
|
||||
pkgver=4.31.0
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc="An extension to reStructuredText and Sphinx to be able to read and render Doxygen xml output"
|
||||
arch=('any')
|
||||
url="https://breathe.readthedocs.org/en/latest/"
|
||||
|
@ -23,7 +23,7 @@ build() {
|
||||
|
||||
python setup.py build
|
||||
|
||||
PYTHONPATH=src sphinx-build -b dirhtml -v docs docs/build/html
|
||||
#PYTHONPATH=src sphinx-build -b dirhtml -v docs docs/build/html
|
||||
}
|
||||
|
||||
check() {
|
||||
@ -38,9 +38,9 @@ package() {
|
||||
python setup.py install --root="$pkgdir" --skip-build
|
||||
python -m compileall --invalidation-mode=checked-hash "$pkgdir"
|
||||
|
||||
install -dm 755 "$pkgdir"/usr/share/doc/$pkgname
|
||||
cp -r -a --no-preserve=ownership docs/build/html "$pkgdir"/usr/share/doc/$pkgname
|
||||
rm -rf "$pkgdir"/usr/share/doc/$pkgname/html/.doctrees
|
||||
#install -dm 755 "$pkgdir"/usr/share/doc/$pkgname
|
||||
#cp -r -a --no-preserve=ownership docs/build/html "$pkgdir"/usr/share/doc/$pkgname
|
||||
#rm -rf "$pkgdir"/usr/share/doc/$pkgname/html/.doctrees
|
||||
|
||||
install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
pkgname=python-cached-property
|
||||
pkgver=1.5.2
|
||||
pkgrel=3
|
||||
pkgrel=5
|
||||
pkgdesc="A decorator for caching properties in classes"
|
||||
arch=('any')
|
||||
license=('BSD')
|
||||
|
@ -2,8 +2,8 @@
|
||||
# Maintainer: Felix Yan <felixonmars@archlinux.org>
|
||||
|
||||
pkgname=python-cachetools
|
||||
pkgver=4.2.2
|
||||
pkgrel=1
|
||||
pkgver=4.2.4
|
||||
pkgrel=3
|
||||
pkgdesc="Extensible memoizing collections and decorators"
|
||||
url="https://github.com/tkem/cachetools"
|
||||
license=('MIT')
|
||||
@ -12,7 +12,7 @@ depends=('python')
|
||||
makedepends=('python-setuptools')
|
||||
checkdepends=('python-pytest-runner')
|
||||
source=("$pkgname-$pkgver.tar.gz::https://github.com/tkem/cachetools/archive/v$pkgver.tar.gz")
|
||||
sha512sums=('8480068873e9bf370254186b233ed80bcf23a7788eaa9561f9954cfb9d4411d9621142aef3a84cea20da9919c683156c6a4d39539f708087e7deb4193b15274f')
|
||||
sha512sums=('3850dd04e68b839b53c01bf411c5226374b07c0fc9f6965824c1111f86d417e7c9a3e42fc1957d82863eb4c0afb7a9b9048a049ae252d7e1727c9d81ebd5e061')
|
||||
|
||||
build() {
|
||||
cd "$srcdir"/cachetools-$pkgver
|
||||
|
@ -4,7 +4,7 @@
|
||||
_pkgname=cachy
|
||||
pkgname=python-cachy
|
||||
pkgver=0.3.0
|
||||
pkgrel=4
|
||||
pkgrel=6
|
||||
pkgdesc="simple yet effective caching library"
|
||||
arch=('any')
|
||||
url="https://github.com/sdispater/${_pkgname}"
|
||||
@ -13,12 +13,16 @@ depends=('python')
|
||||
makedepends=('python-setuptools' 'python-dephell')
|
||||
_checkdeps=('flexmock' 'pytest-mock' 'memcached' 'fakeredis')
|
||||
checkdepends=("${_checkdeps[@]/#/python-}" 'pifpaf' 'memcached')
|
||||
source=("https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/${_pkgname}/${_pkgname}-${pkgver}.tar.gz")
|
||||
sha256sums=('186581f4ceb42a0bbe040c407da73c14092379b1e4c0e327fdb72ae4a9b269b1')
|
||||
b2sums=('df2d1356a309707af5aea9aa0e534130f21815da58988a5623feb3fff3d97de655c3977a80dcf8eaefe47d9d14d8e6e6a4bab0f8afd8d42668ed061172c0a1c7')
|
||||
source=("https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/${_pkgname}/${_pkgname}-${pkgver}.tar.gz"
|
||||
fix-flexmock_teardown-import.patch)
|
||||
sha256sums=('186581f4ceb42a0bbe040c407da73c14092379b1e4c0e327fdb72ae4a9b269b1'
|
||||
'f00e7f140e30dac30953fe56132d4bcd9d782e534e300619f68309f4eb6385a9')
|
||||
b2sums=('df2d1356a309707af5aea9aa0e534130f21815da58988a5623feb3fff3d97de655c3977a80dcf8eaefe47d9d14d8e6e6a4bab0f8afd8d42668ed061172c0a1c7'
|
||||
'794944aecd2d395ec1e35cce8d7dd7b78080e7693768a3594f2dd2607fab951a4ac3bea7bb2e80a5dd399af65a6215ff0309a1df59861559b8975130b1ec00a8')
|
||||
|
||||
prepare() {
|
||||
cd "${srcdir}"/${_pkgname}-${pkgver}
|
||||
patch -Np1 -i ../fix-flexmock_teardown-import.patch
|
||||
|
||||
# poetry-generated setup.py are fatally broken, see:
|
||||
# https://github.com/sdispater/poetry/issues/866
|
||||
|
78
python/python-cachy/fix-flexmock_teardown-import.patch
Normal file
78
python/python-cachy/fix-flexmock_teardown-import.patch
Normal file
@ -0,0 +1,78 @@
|
||||
diff -upr cachy-0.3.0.orig/tests/stores/test_dict_store.py cachy-0.3.0/tests/stores/test_dict_store.py
|
||||
--- cachy-0.3.0.orig/tests/stores/test_dict_store.py 2019-08-06 22:18:57.993954200 +0300
|
||||
+++ cachy-0.3.0/tests/stores/test_dict_store.py 2021-12-02 23:24:31.936148644 +0200
|
||||
@@ -1,7 +1,8 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from unittest import TestCase
|
||||
-from flexmock import flexmock, flexmock_teardown
|
||||
+from flexmock import flexmock
|
||||
+from flexmock._api import flexmock_teardown
|
||||
|
||||
from cachy.stores import DictStore
|
||||
|
||||
diff -upr cachy-0.3.0.orig/tests/stores/test_file_store.py cachy-0.3.0/tests/stores/test_file_store.py
|
||||
--- cachy-0.3.0.orig/tests/stores/test_file_store.py 2019-08-06 22:18:57.994094000 +0300
|
||||
+++ cachy-0.3.0/tests/stores/test_file_store.py 2021-12-02 23:24:32.446162662 +0200
|
||||
@@ -7,7 +7,8 @@ import hashlib
|
||||
import shutil
|
||||
|
||||
from unittest import TestCase
|
||||
-from flexmock import flexmock, flexmock_teardown
|
||||
+from flexmock import flexmock
|
||||
+from flexmock._api import flexmock_teardown
|
||||
|
||||
from cachy.serializers import JsonSerializer
|
||||
from cachy.stores import FileStore
|
||||
diff -upr cachy-0.3.0.orig/tests/stores/test_redis_store.py cachy-0.3.0/tests/stores/test_redis_store.py
|
||||
--- cachy-0.3.0.orig/tests/stores/test_redis_store.py 2019-08-06 22:57:58.550268400 +0300
|
||||
+++ cachy-0.3.0/tests/stores/test_redis_store.py 2021-12-02 23:24:32.446162662 +0200
|
||||
@@ -4,7 +4,8 @@ import math
|
||||
|
||||
import redis
|
||||
from unittest import TestCase
|
||||
-from flexmock import flexmock, flexmock_teardown
|
||||
+from flexmock import flexmock
|
||||
+from flexmock._api import flexmock_teardown
|
||||
from fakeredis import FakeServer
|
||||
from fakeredis import FakeStrictRedis
|
||||
from cachy.stores import RedisStore
|
||||
diff -upr cachy-0.3.0.orig/tests/test_cache_manager.py cachy-0.3.0/tests/test_cache_manager.py
|
||||
--- cachy-0.3.0.orig/tests/test_cache_manager.py 2019-08-06 22:18:57.994549300 +0300
|
||||
+++ cachy-0.3.0/tests/test_cache_manager.py 2021-12-02 23:24:32.446162662 +0200
|
||||
@@ -3,7 +3,8 @@
|
||||
import os
|
||||
import tempfile
|
||||
from unittest import TestCase
|
||||
-from flexmock import flexmock, flexmock_teardown
|
||||
+from flexmock import flexmock
|
||||
+from flexmock._api import flexmock_teardown
|
||||
|
||||
from cachy import CacheManager, Repository
|
||||
from cachy.stores import DictStore, FileStore
|
||||
diff -upr cachy-0.3.0.orig/tests/test_repository.py cachy-0.3.0/tests/test_repository.py
|
||||
--- cachy-0.3.0.orig/tests/test_repository.py 2019-08-06 22:18:57.994738000 +0300
|
||||
+++ cachy-0.3.0/tests/test_repository.py 2021-12-02 23:24:32.446162662 +0200
|
||||
@@ -2,7 +2,8 @@
|
||||
|
||||
import datetime
|
||||
from unittest import TestCase
|
||||
-from flexmock import flexmock, flexmock_teardown
|
||||
+from flexmock import flexmock
|
||||
+from flexmock._api import flexmock_teardown
|
||||
|
||||
from cachy import Repository
|
||||
from cachy.contracts.store import Store
|
||||
diff -upr cachy-0.3.0.orig/tests/test_tagged_cache.py cachy-0.3.0/tests/test_tagged_cache.py
|
||||
--- cachy-0.3.0.orig/tests/test_tagged_cache.py 2019-08-06 22:18:57.994858300 +0300
|
||||
+++ cachy-0.3.0/tests/test_tagged_cache.py 2021-12-02 23:24:32.446162662 +0200
|
||||
@@ -7,7 +7,8 @@ from cachy.stores import DictStore, Redi
|
||||
from cachy.tag_set import TagSet
|
||||
from cachy.redis_tagged_cache import RedisTaggedCache
|
||||
from datetime import datetime, timedelta
|
||||
-from flexmock import flexmock, flexmock_teardown
|
||||
+from flexmock import flexmock
|
||||
+from flexmock._api import flexmock_teardown
|
||||
|
||||
|
||||
class TaggedCacheTestCase(TestCase):
|
@ -4,7 +4,7 @@
|
||||
|
||||
pkgname=python-cairo
|
||||
pkgver=1.20.1
|
||||
pkgrel=1
|
||||
pkgrel=3
|
||||
pkgdesc="Python bindings for the cairo graphics library"
|
||||
arch=(x86_64 powerpc64le powerpc riscv64)
|
||||
url="https://pycairo.readthedocs.io/en/latest/"
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user