upg glib-networking libcamera

This commit is contained in:
joborun linux 2023-03-18 11:35:55 +02:00
parent 564eed4bc1
commit 02d20a93c5
14 changed files with 39 additions and 274 deletions

View File

@ -6,17 +6,16 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=glib-networking
pkgver=2.74.0
pkgver=2.76.0
pkgrel=01
epoch=1
pkgdesc="Network extensions for GLib w/o systemd"
url="https://gitlab.gnome.org/GNOME/glib-networking"
arch=(x86_64)
depends=(glib2 libproxy gnutls gsettings-desktop-schemas)
makedepends=(meson git)
makedepends=(meson git libxml2)
checkdepends=(ca-certificates)
# options=(debug) ## uncomment this line to have the debug pkg produced
_commit=d17632fe495c573612dd69e982a0c49af2952178 # tags/2.74.0^0
_commit=eab226398f9872c381033f7cb3af43dcb66600f4 # tags/2.76.0^0
source=("git+https://gitlab.gnome.org/GNOME/glib-networking.git#commit=$_commit")
pkgver() {
@ -42,11 +41,13 @@ package() {
rm -rf $pkgdir/usr/lib/systemd
}
#---- license gpg-key sha256sums ----
#---- arch license gpg-key & sha256sums ----
arch=(x86_64)
license=(GPL2)
sha256sums=(SKIP)
## 253b3883d4bc41db49b5e69c7a13a619ede0ddd9afe67c5db925dde2d7dacc44 glib-networking-1:2.76.0-01-x86_64.pkg.tar.lz

View File

@ -1,18 +1,25 @@
# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
pkgname=glib-networking
pkgver=2.74.0
pkgver=2.76.0
pkgrel=1
epoch=1
pkgdesc="Network extensions for GLib"
url="https://gitlab.gnome.org/GNOME/glib-networking"
arch=(x86_64)
license=(GPL2)
depends=(glib2 libproxy gnutls gsettings-desktop-schemas)
makedepends=(meson git)
depends=(
glib2
gnutls
gsettings-desktop-schemas
libproxy
)
makedepends=(
git
meson
)
checkdepends=(ca-certificates)
options=(debug)
_commit=d17632fe495c573612dd69e982a0c49af2952178 # tags/2.74.0^0
_commit=eab226398f9872c381033f7cb3af43dcb66600f4 # tags/2.76.0^0
source=("git+https://gitlab.gnome.org/GNOME/glib-networking.git#commit=$_commit")
sha256sums=('SKIP')
@ -38,4 +45,4 @@ package() {
meson install -C build --destdir "$pkgdir"
}
# vim:set sw=2 et:
# vim:set sw=2 sts=-1 et:

View File

@ -5,3 +5,4 @@ meson
gettext
libxml2

View File

@ -9,9 +9,8 @@ pkgbase=libcamera
pkgname=(libcamera libcamera-tools gst-plugin-libcamera) # libcamera-docs
pkgver=0.0.4
_commit=6a57d964abdb3f24608c0fc2839d96e02eebddeb # refs/tags/v0.0.4
pkgrel=01
pkgrel=02
pkgdesc="A complex camera support library for Linux, Android, and ChromeOS w/o systemd"
arch=(x86_64)
url="https://libcamera.org/"
depends=(glibc)
makedepends=(doxygen git glib2 graphviz gst-plugins-base gtest libdrm
@ -69,6 +68,10 @@ package_libcamera() {
provides=(libcamera.so libcamera-base.so)
meson install -C build --destdir "$pkgdir"
# remove unneeded signatures as they make the package unreproducible
rm -frv "$pkgdir/usr/lib/$pkgname/"*.sign
(
cd "$pkgdir"
# _pick $pkgbase-docs usr/share/doc
@ -119,13 +122,16 @@ package_gst-plugin-libcamera() {
mv -v $pkgname/* "$pkgdir"
}
#---- license gpg-key sha256sums ----
#---- arch license gpg-key & sha256sums ----
arch=(x86_64)
license=(LGPL2.1 GPL2)
sha256sums=(SKIP)
## fb26fb957f1ae679ccc2e0a2e43d92c98702112cf93643c83e9c960bd06a2e6f gst-plugin-libcamera-0.0.4-02-x86_64.pkg.tar.lz
## 5135cbbf70cef7ae2153b9c426f8327058dbbae5f91e1da8496fcac59acec8fd libcamera-0.0.4-02-x86_64.pkg.tar.lz
## e5d8af1fbf262423ff7441d4bb67b70351c4154e1625c87438237bbbcb7c466c libcamera-tools-0.0.4-02-x86_64.pkg.tar.lz
# f25979b048deb34e476dfbedf2c08b3fe8ed52e66372f9c55b7f57e41476fb2e gst-plugin-libcamera-0.0.4-01-x86_64.pkg.tar.lz
# 40002ce1f660392bcfc79a0b2e72b4ac6130b1e307664192ffc03824f60eaaae libcamera-0.0.4-01-x86_64.pkg.tar.lz
# 01daafeb63063928dd1042377d7f1034917fcdfcd9bd3c3dbc9e73e487f92e79 libcamera-tools-0.0.4-01-x86_64.pkg.tar.lz

View File

@ -4,7 +4,7 @@ pkgbase=libcamera
pkgname=(libcamera libcamera-docs libcamera-tools gst-plugin-libcamera)
pkgver=0.0.4
_commit=6a57d964abdb3f24608c0fc2839d96e02eebddeb # refs/tags/v0.0.4
pkgrel=1
pkgrel=2
pkgdesc="A complex camera support library for Linux, Android, and ChromeOS"
arch=(x86_64)
url="https://libcamera.org/"
@ -85,6 +85,10 @@ package_libcamera() {
provides=(libcamera.so libcamera-base.so)
meson install -C build --destdir "$pkgdir"
# remove unneeded signatures as they make the package unreproducible
rm -frv "$pkgdir/usr/lib/$pkgname/"*.sign
(
cd "$pkgdir"
_pick $pkgbase-docs usr/share/doc

1
tbb Symbolic link
View File

@ -0,0 +1 @@
onetbb

View File

@ -1,60 +0,0 @@
#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
# Website : https://pozol.eu
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=tbb
pkgver=2021.5.0
pkgrel=04
pkgdesc='High level abstract threading library'
arch=('x86_64')
url='https://www.threadingbuildingblocks.org/'
depends=('gcc-libs' 'hwloc')
makedepends=('cmake' 'inetutils' 'ninja' 'python' 'swig')
conflicts=('intel-tbb')
provides=("intel-tbb=$pkgver")
replaces=('intel-tbb')
source=(https://github.com/oneapi-src/oneTBB/archive/v$pkgver/$pkgname-$pkgver.tar.gz
retry-pthread_create.patch::https://github.com/oneapi-src/oneTBB/pull/824.patch)
## with or without the patch building fails (tried last 17 Noc 2022)
prepare() {
# Patch for mold:
patch -d oneTBB-$pkgver -p1 -i ../retry-pthread_create.patch
}
build() {
cd oneTBB-$pkgver
# TBB_STRICT is ON by default and turns on -Werror, but `-DTBB_STRICT=OFF` is currently broken:
# https://github.com/oneapi-src/oneTBB/issues/847
# Upstream doesn't support GCC 12 yet:
# https://github.com/oneapi-src/oneTBB/issues/823#issuecomment-1128997690
# So we turn off the problematic new warnings in GCC 12 manually.
export CXXFLAGS="$CXXFLAGS -Wno-error=uninitialized -Wno-error=address"
cmake -GNinja -DCMAKE_INSTALL_PREFIX=/usr -DTBB4PY_BUILD=ON .
ninja all python_build
}
check() {
cd oneTBB-$pkgver
ninja test
}
## 2 out 134 tests failed see check.log ## comment out the check section and rerun makepkg without -f
package() {
cd oneTBB-$pkgver
DESTDIR="$pkgdir" ninja install
}
#---- license gpg-key sha256sums ----
license=('Apache')
sha256sums=(e5b57537c741400cf6134b428fc1689a649d7d38d9bb9c1b6d64f092ea28178a # tbb-2021.5.0.tar.gz
70b077d1cac26e35336a8217f9c56c1ce2c8885c6df6dfb9805aa8374dad9617) # retry-pthread_create.patch

View File

@ -1,49 +0,0 @@
# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
# Contributor: Thomas Dziedzic < gostrc at gmail >
# Contributor: Denis Martinez <deuns.martinez AT gmail.com>
# Contributor: Bogdan Burlacu <bogdan.burlacu AT pm.me>
pkgname=tbb
pkgver=2021.5.0
pkgrel=2
pkgdesc='High level abstract threading library'
arch=('x86_64')
url='https://www.threadingbuildingblocks.org/'
license=('Apache')
depends=('gcc-libs' 'hwloc')
makedepends=('cmake' 'inetutils' 'ninja' 'python' 'swig')
conflicts=('intel-tbb')
provides=("intel-tbb=$pkgver")
replaces=('intel-tbb')
source=(https://github.com/oneapi-src/oneTBB/archive/v$pkgver/$pkgname-$pkgver.tar.gz
retry-pthread_create.patch::https://github.com/oneapi-src/oneTBB/pull/824.patch)
sha512sums=('0e7b71022e397a6d7abb0cea106847935ae79a1e12a6976f8d038668c6eca8775ed971202c5bd518f7e517092b67af805cc5feb04b5c3a40e9fbf972cc703a46'
'62c1535a3888f27f1af5f472c57b8e22dc6977a0a64edb84d9ea84e4a967169d2c79a2b20654c4aa3da2891fec9538c22c6e5d8a5f296947b8760c6f97e02d98')
prepare() {
# Patch for mold:
patch -d oneTBB-$pkgver -p1 -i ../retry-pthread_create.patch
}
build() {
cd oneTBB-$pkgver
# TBB_STRICT is ON by default and turns on -Werror, but `-DTBB_STRICT=OFF` is currently broken:
# https://github.com/oneapi-src/oneTBB/issues/847
# Upstream doesn't support GCC 12 yet:
# https://github.com/oneapi-src/oneTBB/issues/823#issuecomment-1128997690
# So we turn off the problematic new warnings in GCC 12 manually.
export CXXFLAGS="$CXXFLAGS -Wno-error=uninitialized -Wno-error=address"
cmake -GNinja -DCMAKE_INSTALL_PREFIX=/usr -DTBB4PY_BUILD=ON .
ninja all python_build
}
check() {
cd oneTBB-$pkgver
ninja test
}
package() {
cd oneTBB-$pkgver
DESTDIR="$pkgdir" ninja install
}

View File

@ -1,60 +0,0 @@
#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
# Website : https://pozol.eu
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=tbb
pkgver=2021.5.0
pkgrel=02
pkgdesc='High level abstract threading library'
arch=('x86_64')
url='https://www.threadingbuildingblocks.org/'
depends=('gcc-libs' 'hwloc')
makedepends=('cmake' 'inetutils' 'ninja' 'python' 'swig')
conflicts=('intel-tbb')
provides=("intel-tbb=$pkgver")
replaces=('intel-tbb')
source=(https://github.com/oneapi-src/oneTBB/archive/v$pkgver/$pkgname-$pkgver.tar.gz
retry-pthread_create.patch::https://github.com/oneapi-src/oneTBB/pull/824.patch)
prepare() {
# Patch for mold:
patch -d oneTBB-$pkgver -p1 -i ../retry-pthread_create.patch
}
build() {
cd oneTBB-$pkgver
# TBB_STRICT is ON by default and turns on -Werror, but `-DTBB_STRICT=OFF` is currently broken:
# https://github.com/oneapi-src/oneTBB/issues/847
# Upstream doesn't support GCC 12 yet:
# https://github.com/oneapi-src/oneTBB/issues/823#issuecomment-1128997690
# So we turn off the problematic new warnings in GCC 12 manually.
export CXXFLAGS="$CXXFLAGS -Wno-error=uninitialized -Wno-error=address"
cmake -GNinja -DCMAKE_INSTALL_PREFIX=/usr -DTBB4PY_BUILD=ON .
ninja all python_build
}
#check() {
# cd oneTBB-$pkgver
# ninja test
#}
#
## 2 out 134 tests failed see check.log
package() {
cd oneTBB-$pkgver
DESTDIR="$pkgdir" ninja install
}
#---- license gpg-key sha256sums ----
license=('Apache')
sha256sums=(e5b57537c741400cf6134b428fc1689a649d7d38d9bb9c1b6d64f092ea28178a # tbb-2021.5.0.tar.gz
70b077d1cac26e35336a8217f9c56c1ce2c8885c6df6dfb9805aa8374dad9617) # retry-pthread_create.patch

View File

@ -1 +0,0 @@
rm -rf {src,pkg,tbb*.tar.gz*}

View File

@ -1,8 +0,0 @@
hwloc
cmake
inetutils
ninja
python
swig

View File

@ -1,10 +0,0 @@
can't be build with this patch or at this time
previous note was on jul 19 2022, the pkg went to testing then vanished
the PKGBUILD comes back now 3 months later unchanged, the pkg goes to testing
still doesn't build with same error.
But now the pkg is moved to extra ....??? It makes one wonder
about the true environment on which arch builds the packages.
Reverting back to gcc 11 to get this built is not worth the trouble, the patch
was meant to deal with this issue, while upstream has no support for 12.

View File

@ -1,63 +0,0 @@
From f12c93efd04991bc982a27e2fa6142538c33ca82 Mon Sep 17 00:00:00 2001
From: Rui Ueyama <ruiu@cs.stanford.edu>
Date: Sat, 7 May 2022 19:55:24 +0800
Subject: [PATCH] Retry if pthread_create fails with EAGAIN
On many Unix-like systems, pthread_create can fail spuriously even if
the running machine has enough resources to spawn a new thread.
Therefore, if EAGAIN is returned from pthread_create, we actually have
to try again.
I observed this issue when running the mold linker
(https://github.com/rui314/mold) under a heavy load. mold uses OneTBB
for parallelization.
As another data point, Go has the same logic to retry on EAGAIN:
https://go-review.googlesource.com/c/go/+/33894/
nanosleep is defined in POSIX 2001, so I believe that all Unix-like
systems support it.
Signed-off-by: Rui Ueyama <ruiu@cs.stanford.edu>
---
src/tbb/rml_thread_monitor.h | 19 ++++++++++++++++++-
1 file changed, 18 insertions(+), 1 deletion(-)
diff --git a/src/tbb/rml_thread_monitor.h b/src/tbb/rml_thread_monitor.h
index 13b556380..5b844b232 100644
--- a/src/tbb/rml_thread_monitor.h
+++ b/src/tbb/rml_thread_monitor.h
@@ -31,6 +31,7 @@
#include <pthread.h>
#include <cstring>
#include <cstdlib>
+#include <time.h>
#else
#error Unsupported platform
#endif
@@ -191,8 +192,24 @@ inline thread_monitor::handle_type thread_monitor::launch( void* (*thread_routin
check(pthread_attr_init( &s ), "pthread_attr_init has failed");
if( stack_size>0 )
check(pthread_attr_setstacksize( &s, stack_size ), "pthread_attr_setstack_size has failed" );
+
pthread_t handle;
- check( pthread_create( &handle, &s, thread_routine, arg ), "pthread_create has failed" );
+ int tries = 0;
+ for (;;) {
+ int error_code = pthread_create(&handle, &s, thread_routine, arg);
+ if (!error_code)
+ break;
+ if (error_code != EAGAIN || tries++ > 20) {
+ handle_perror(error_code, "pthread_create has failed");
+ break;
+ }
+
+ // pthreaed_create can spuriously fail on many Unix-like systems.
+ // Retry after tries * 1 millisecond.
+ struct timespec ts = {0, tries * 1000 * 1000};
+ nanosleep(&ts, NULL);
+ }
+
check( pthread_attr_destroy( &s ), "pthread_attr_destroy has failed" );
return handle;
}

View File

@ -1,4 +0,0 @@
real 20m9.284s
user 73m54.803s
sys 2m59.221s