granja: borrar la cola gráfica obsoleta de incoming/ (no había otro agente)
Las 7 recetas del stack gráfico (libdrm/mesa/meson/samurai/seatd/wayland/wayland-protocols) + 6 patches eran imports crudos de Alpine, redundantes: las 7 ya tienen receta CANÓNICA en recipes/ (mesa pineada a 24.0.9 iris-only A PROPÓSITO, no la 26.1.1 cruda con FIXME-sha256). Su trabajo aterrizó por la vía canónica (7131cd4) hace 3 semanas; la cola quedó de cruft rompiendo cada ciclo.fa45978las sacó de QUEUES creyéndolas de 'otro agente' (5126a8b). Confirmado que NO hay otro agente ⇒ borradas. recipes/incoming/ vuelve a ser cola de staging general y REGRESA a QUEUES; el guard ls-vacío la salta si no hay nada. recipes/incoming/.deferred/ (24 recetas aparcadas con diagnóstico, git con muro en libgit.a) NO se toca: el glob de QUEUES es top-level, no la muele. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -1,41 +0,0 @@
|
||||
From: Diederik de Haas <didi.debian@cknow.org>
|
||||
Date: Sun, 22 Sep 2024 10:48:22 +0200
|
||||
Subject: [PATCH] dri: Add Rockchip EBC to kmsro drivers
|
||||
Forwarded: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23575
|
||||
|
||||
The Rockchip EBC driver is used in the Pine64 PineNote.
|
||||
|
||||
Link: https://lore.kernel.org/linux-arm-kernel/20220413221916.50995-1-samuel@sholland.org/
|
||||
---
|
||||
src/gallium/targets/dri/dri_target.c | 3 +++
|
||||
src/gallium/targets/dril/dril_target.c | 1 +
|
||||
src/gallium/targets/dril/meson.build | 1 +
|
||||
3 files changed, 5 insertions(+)
|
||||
|
||||
diff --git a/src/gallium/targets/dril/dril_target.c b/src/gallium/targets/dril/dril_target.c
|
||||
index a94ab09858f..2e628ae1c02 100644
|
||||
--- a/src/gallium/targets/dril/dril_target.c
|
||||
+++ b/src/gallium/targets/dril/dril_target.c
|
||||
@@ -599,6 +599,7 @@ DEFINE_LOADER_DRM_ENTRYPOINT(pl111)
|
||||
DEFINE_LOADER_DRM_ENTRYPOINT(rcar_du)
|
||||
DEFINE_LOADER_DRM_ENTRYPOINT(repaper)
|
||||
DEFINE_LOADER_DRM_ENTRYPOINT(rockchip)
|
||||
+DEFINE_LOADER_DRM_ENTRYPOINT(rockchip_ebc)
|
||||
DEFINE_LOADER_DRM_ENTRYPOINT(rzg2l_du)
|
||||
DEFINE_LOADER_DRM_ENTRYPOINT(ssd130x)
|
||||
DEFINE_LOADER_DRM_ENTRYPOINT(st7586)
|
||||
diff --git a/src/gallium/targets/dril/meson.build b/src/gallium/targets/dril/meson.build
|
||||
index 3adf97b24a7..df802194bc5 100644
|
||||
--- a/src/gallium/targets/dril/meson.build
|
||||
+++ b/src/gallium/targets/dril/meson.build
|
||||
@@ -89,6 +89,7 @@ foreach d : [[with_gallium_kmsro, [
|
||||
'rcar-du_dri.so',
|
||||
'repaper_dri.so',
|
||||
'rockchip_dri.so',
|
||||
+ 'rockchip-ebc_dri.so',
|
||||
'rzg2l-du_dri.so',
|
||||
'ssd130x_dri.so',
|
||||
'st7586_dri.so',
|
||||
--
|
||||
2.45.2
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c b/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c
|
||||
index b97c526aeddfd94b28e322c2a7a8064d766c8e23..a0d551fb51e080f3ae487bdabdfa4c34b00fbbad 100644
|
||||
--- a/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c
|
||||
+++ b/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c
|
||||
@@ -150,6 +150,12 @@ pipe_loader_drm_probe_fd_nodup(struct pipe_loader_device **dev, int fd, bool zin
|
||||
ddev->base.driver_name = strdup("radeonsi");
|
||||
}
|
||||
|
||||
+ /* powervr has no Gallium driver and relies on Zink */
|
||||
+ if (strcmp(ddev->base.driver_name, "powervr") == 0) {
|
||||
+ FREE(ddev->base.driver_name);
|
||||
+ ddev->base.driver_name = strdup("zink");
|
||||
+ }
|
||||
+
|
||||
if (strcmp(ddev->base.driver_name, "virtio_gpu") == 0) {
|
||||
struct virgl_renderer_capset_drm caps;
|
||||
if (get_nctx_caps(fd, &caps) == 0) {
|
||||
@@ -172,14 +178,10 @@ pipe_loader_drm_probe_fd_nodup(struct pipe_loader_device **dev, int fd, bool zin
|
||||
if (strcmp(ddev->base.driver_name, "vgem") == 0)
|
||||
goto fail;
|
||||
|
||||
- /* kmsro supports lots of drivers, try as a fallback for primary nodes */
|
||||
- if (!ddev->dd && !zink && drmGetNodeTypeFromFd(fd) == DRM_NODE_PRIMARY)
|
||||
+ /* kmsro supports lots of drivers, try as a fallback */
|
||||
+ if (!ddev->dd && !zink)
|
||||
ddev->dd = get_driver_descriptor("kmsro");
|
||||
|
||||
- /* Try zink for unknown render nodes */
|
||||
- if (!ddev->dd && drmGetNodeTypeFromFd(fd) == DRM_NODE_RENDER)
|
||||
- ddev->dd = get_driver_descriptor("zink");
|
||||
-
|
||||
if (!ddev->dd)
|
||||
goto fail;
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
the tests parse the tool output and expect one of the strings to match-
|
||||
samurai outputs slightly different strings, and hence breaks the tests
|
||||
--- a/unittests/baseplatformtests.py
|
||||
+++ b/unittests/baseplatformtests.py
|
||||
@@ -82,5 +82,5 @@
|
||||
# Misc stuff
|
||||
if cls.backend is Backend.ninja:
|
||||
- cls.no_rebuild_stdout = ['ninja: no work to do.', 'samu: nothing to do']
|
||||
+ cls.no_rebuild_stdout = ['ninja: no work to do.', 'samu: nothing to do', 'samu: explain all: phony and no inputs']
|
||||
else:
|
||||
# VS doesn't have a stable output when no changes are done
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
# Importada de Alpine aports por `hammer import-alpine` (Etapa G). PUNTO DE PARTIDA — pero
|
||||
# YA trae los parches de musl de Alpine (lo que un import de nix pierde). Pendiente: el
|
||||
# sha256 del tarball (el wrapper lo calcula), y adaptar build/install del shell de abuild.
|
||||
name = "libdrm"
|
||||
version = "2.4.134"
|
||||
|
||||
[source]
|
||||
tarball = "https://gitlab.freedesktop.org/mesa/libdrm/-/archive/libdrm-2.4.134/libdrm-libdrm-2.4.134.tar.gz"
|
||||
# FIXME sha256: el wrapper lo calcula (Alpine publica sha512). sha512 de Alpine:
|
||||
# sha512 = "2e0125b54e77b6910b1a4961cb0bd0b8e9f157b4ddc47b2b72aced82d5080b570c72d65ddde6c0127bb7217abd88ab230dc301dbaf0fa59babe11ba66d2f36e1"
|
||||
sha256 = "28af861f62e7a2c3a48c5ff2ad4d01cf440a419f7f877de5caa7f73d3afa5367"
|
||||
|
||||
[build]
|
||||
compiler = "zig-cc"
|
||||
target = "x86_64-linux-musl"
|
||||
link = "static"
|
||||
flags = []
|
||||
|
||||
[build.phases]
|
||||
# de build() de Alpine (traducido; el lab provee $CBUILD/$CHOST — Etapa G Fase 3; revisá --shared para estático):
|
||||
compile = '''
|
||||
_abuild_phase() {
|
||||
CFLAGS="$CFLAGS -O2" \
|
||||
CPPFLAGS="$CPPFLAGS -O2" \
|
||||
CXXFLAGS="$CXXFLAGS -O2" \
|
||||
abuild-meson \
|
||||
-Db_lto=true \
|
||||
-Dintel=enabled \
|
||||
-Dradeon=enabled \
|
||||
-Damdgpu=enabled \
|
||||
-Dnouveau=enabled \
|
||||
-Dvmwgfx=enabled \
|
||||
-Domap=enabled \
|
||||
-Dexynos=enabled \
|
||||
-Dfreedreno=enabled \
|
||||
-Dtegra=enabled \
|
||||
-Dvc4=enabled \
|
||||
-Detnaviv=enabled \
|
||||
-Dudev=true \
|
||||
-Dinstall-test-programs=true \
|
||||
-Dtests=true \
|
||||
. output
|
||||
meson compile -C output
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
# de package() de Alpine (traducido $pkgdir→/out):
|
||||
install = '''
|
||||
_abuild_phase() {
|
||||
DESTDIR="/out" meson install --no-rebuild -C output
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
|
||||
[deps]
|
||||
build = ["linux-headers", "eudev", "libpciaccess", "xmlto"]
|
||||
@@ -1,27 +0,0 @@
|
||||
From db9728708d8a06f60bb850788d4cde487ac671f4 Mon Sep 17 00:00:00 2001
|
||||
From: Alessandro Astone <ales.astone@gmail.com>
|
||||
Date: Sun, 1 Mar 2026 18:14:09 +0100
|
||||
Subject: [PATCH] gallivm: Fix armhf build against LLVM 22
|
||||
|
||||
StringMapIterator<bool> became StringMapIterBase<bool, false /* IsConst */>;
|
||||
Use `auto` to handle either case.
|
||||
---
|
||||
src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
index ce8ca02bf745..86779f013c7b 100644
|
||||
--- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
+++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
@@ -331,7 +331,7 @@ lp_build_fill_mattrs(std::vector<std::string> &MAttrs)
|
||||
llvm::sys::getHostCPUFeatures(features);
|
||||
#endif
|
||||
|
||||
- for (llvm::StringMapIterator<bool> f = features.begin();
|
||||
+ for (auto f = features.begin();
|
||||
f != features.end();
|
||||
++f) {
|
||||
MAttrs.push_back(((*f).second ? "+" : "-") + (*f).first().str());
|
||||
--
|
||||
GitLab
|
||||
|
||||
@@ -1,95 +0,0 @@
|
||||
# Importada de Alpine aports por `hammer import-alpine` (Etapa G). PUNTO DE PARTIDA — pero
|
||||
# YA trae los parches de musl de Alpine (lo que un import de nix pierde). Pendiente: el
|
||||
# sha256 del tarball (el wrapper lo calcula), y adaptar build/install del shell de abuild.
|
||||
name = "mesa"
|
||||
version = "26.1.1"
|
||||
|
||||
[source]
|
||||
tarball = "https://mesa.freedesktop.org/archive/mesa-${pkgver/_/-}.tar.xz"
|
||||
# FIXME sha256: el wrapper lo calcula (Alpine publica sha512). sha512 de Alpine:
|
||||
# sha512 = "384a7db33d2f06e287337329f2f17503082ba6b1cd876a1884e940fdb6193ffae6d6b14344625256f3b3b39972ad697130a4d2ea25c40979f7aa76c2176f7988"
|
||||
sha256 = "FIXME-sha256"
|
||||
patches = ["23575.patch", "riscv64-tls.patch", "llvm22-armhf.patch", "armv7-exynos4.patch"]
|
||||
|
||||
[build]
|
||||
compiler = "zig-cc"
|
||||
target = "x86_64-linux-musl"
|
||||
link = "static"
|
||||
flags = []
|
||||
|
||||
[build.phases]
|
||||
# de build() de Alpine (traducido; el lab provee $CBUILD/$CHOST — Etapa G Fase 3; revisá --shared para estático):
|
||||
compile = '''
|
||||
_abuild_phase() {
|
||||
# use -g1 to generate less debug info:
|
||||
# 485 MiB -> ~80 MiB
|
||||
export CFLAGS="$CFLAGS -O2 -g1"
|
||||
export CXXFLAGS="$CXXFLAGS -O2 -g1"
|
||||
export CPPFLAGS="$CPPFLAGS -O2 -g1"
|
||||
|
||||
case "$CARCH" in
|
||||
armhf|armv7)
|
||||
# gnu2 tlsdesc is broken in binutils, see
|
||||
# https://gitlab.alpinelinux.org/alpine/aports/-/issues/14140
|
||||
# and
|
||||
# https://gitlab.freedesktop.org/mesa/mesa/-/issues/13236
|
||||
export CFLAGS="$CFLAGS -mtls-dialect=gnu"
|
||||
export CXXFLAGS="$CXXFLAGS -mtls-dialect=gnu"
|
||||
;;
|
||||
esac
|
||||
|
||||
PATH="$PATH:/usr/lib/llvm$_llvmver/bin" \
|
||||
abuild-meson \
|
||||
-Db_ndebug=true \
|
||||
-Db_lto=$_lto \
|
||||
-Dallow-kcmp=enabled \
|
||||
-Dexpat=enabled \
|
||||
-Dintel-rt=$_intel_rt \
|
||||
-Dshader-cache=enabled \
|
||||
-Dxlib-lease=enabled \
|
||||
-Dxmlconfig=enabled \
|
||||
-Dzstd=enabled \
|
||||
-Dbackend_max_links=2 \
|
||||
-Dbuild-tests="$(want_check && echo true || echo false)" \
|
||||
-Ddri-drivers-path=$_dri_driverdir \
|
||||
-Dgallium-drivers=$_gallium_drivers \
|
||||
-Dvulkan-drivers=$_vulkan_drivers \
|
||||
-Dvulkan-layers=$_vulkan_layers \
|
||||
-Damdgpu-virtio=true \
|
||||
-Dfreedreno-kmds=msm,virtio \
|
||||
-Dplatforms=x11,wayland \
|
||||
-Dllvm=enabled \
|
||||
-Dshared-llvm=enabled \
|
||||
-Dgbm=enabled \
|
||||
-Dglx=dri \
|
||||
-Dopengl=true \
|
||||
-Dgles1=enabled \
|
||||
-Dgles2=enabled \
|
||||
-Degl=enabled \
|
||||
-Dgallium-extra-hud=true \
|
||||
-Dgallium-rusticl=$_rusticl \
|
||||
-Dgallium-rusticl-enable-drivers=auto,freedreno \
|
||||
-Dgallium-va=enabled \
|
||||
-Drust_std=2021 \
|
||||
-Dvideo-codecs=all \
|
||||
. output
|
||||
|
||||
# Print config
|
||||
meson configure --no-pager output
|
||||
|
||||
meson compile -C output
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
# de package() de Alpine (traducido $pkgdir→/out):
|
||||
install = '''
|
||||
_abuild_phase() {
|
||||
DESTDIR="/out" meson install --no-rebuild -C output
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
|
||||
# depends de runtime de Alpine (NO build-deps): python3
|
||||
|
||||
[deps]
|
||||
build = ["clang$_llvmver", "libclc-dev~$_llvmver", "rust-bindgen", "spirv-llvm-translator", "clang22", "libclc-dev~22"]
|
||||
@@ -1,44 +0,0 @@
|
||||
# Importada de Alpine aports por `hammer import-alpine` (Etapa G). PUNTO DE PARTIDA — pero
|
||||
# YA trae los parches de musl de Alpine (lo que un import de nix pierde). Pendiente: el
|
||||
# sha256 del tarball (el wrapper lo calcula), y adaptar build/install del shell de abuild.
|
||||
name = "meson"
|
||||
version = "1.11.1"
|
||||
|
||||
[source]
|
||||
tarball = "https://github.com/mesonbuild/meson/releases/download/1.11.1/meson-1.11.1.tar.gz"
|
||||
# FIXME sha256: el wrapper lo calcula (Alpine publica sha512). sha512 de Alpine:
|
||||
# sha512 = "c30c98714ab595ca1b5241fbb546c9c5fbb3eada53bfe782652a5734b04d45d66944a5fc8673ee602797c8173e27473036bcb01e09032bbc518567ee89dd6d70"
|
||||
sha256 = "6788ae299979643f8d841bcaf64352558436cae45a0355148a3aeeccf7913866"
|
||||
patches = ["fix-ninja-output-test.patch", "skip-broken-tests.patch"]
|
||||
|
||||
[build]
|
||||
compiler = "zig-cc"
|
||||
target = "x86_64-linux-musl"
|
||||
link = "static"
|
||||
flags = []
|
||||
|
||||
[build.phases]
|
||||
# de build() de Alpine (traducido; el lab provee $CBUILD/$CHOST — Etapa G Fase 3; revisá --shared para estático):
|
||||
compile = '''
|
||||
_abuild_phase() {
|
||||
gpep517 build-wheel \
|
||||
--wheel-dir .dist \
|
||||
--output-fd 3 3>&1 >&2
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
# de package() de Alpine (traducido $pkgdir→/out):
|
||||
install = '''
|
||||
_abuild_phase() {
|
||||
python3 -m installer -d "/out" .dist/*.whl
|
||||
|
||||
install -Dm644 data/shell-completions/zsh/* -t "/out"/usr/share/zsh/site-functions
|
||||
install -Dm644 data/shell-completions/bash/* -t "/out"/usr/share/bash-completion/completions
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
|
||||
# depends de runtime de Alpine (NO build-deps): abuild
|
||||
|
||||
[deps]
|
||||
build = ["py3-gpep517", "py3-setuptools", "py3-wheel"]
|
||||
@@ -1,15 +0,0 @@
|
||||
upstream: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11729
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 3d72bb56f25..5161c97af11 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -496,7 +496,7 @@ foreach c_arg : get_option('c_args')
|
||||
break
|
||||
endif
|
||||
endforeach
|
||||
-if not have_mtls_dialect
|
||||
+if not have_mtls_dialect and host_machine.cpu_family() != 'riscv64'
|
||||
# need .run to check libc support. meson aborts when calling .run when
|
||||
# cross-compiling, but because this is just an optimization we can skip it
|
||||
if meson.is_cross_build() and not meson.can_run_host_binaries()
|
||||
@@ -1,24 +0,0 @@
|
||||
# samurai 1.3 — clon C de ninja (lo que usa Alpine como `ninja`). Build-tool del stack meson
|
||||
# (libdrm/wayland/mesa lo invocan como backend). Provee /usr/bin/samu + symlink /usr/bin/ninja.
|
||||
# zig 0.13.0: con el zig default (0.16/clang21) el binario musl miscompila y falla en runtime
|
||||
# con "reallocarray: No error information" — el patrón conocido (binutils/elfutils/flex).
|
||||
name = "samurai"
|
||||
version = "1.3"
|
||||
|
||||
[source]
|
||||
tarball = "https://github.com/michaelforney/samurai/releases/download/1.3/samurai-1.3.tar.gz"
|
||||
sha256 = "1bc020a9e133432df51911ac71cc34322f828934d9a2282ba2916d88c15976af"
|
||||
|
||||
[build]
|
||||
compiler = "zig-cc"
|
||||
target = "x86_64-linux-musl"
|
||||
link = "static"
|
||||
zig_version = "0.13.0"
|
||||
|
||||
[build.phases]
|
||||
compile = 'make CFLAGS="-O2"'
|
||||
install = '''
|
||||
set -e
|
||||
make install PREFIX="/usr" DESTDIR="/out"
|
||||
ln -s samu /out/usr/bin/ninja
|
||||
'''
|
||||
@@ -1,51 +0,0 @@
|
||||
# Importada de Alpine aports por `hammer import-alpine` (Etapa G). PUNTO DE PARTIDA — pero
|
||||
# YA trae los parches de musl de Alpine (lo que un import de nix pierde). Pendiente: el
|
||||
# sha256 del tarball (el wrapper lo calcula), y adaptar build/install del shell de abuild.
|
||||
name = "seatd"
|
||||
version = "0.9.3"
|
||||
|
||||
[source]
|
||||
tarball = "https://git.sr.ht/~kennylevinsen/seatd/archive/0.9.3.tar.gz"
|
||||
# FIXME sha256: el wrapper lo calcula (Alpine publica sha512). sha512 de Alpine:
|
||||
# sha512 = "8cb21cfbd9aa25966fe3f586de75d24a8625142ffb49e6ec357875c347d3e92d535467b817d79fdc704f80858a145f1107c488adbf22a1c337dbc6ccccc8b00a"
|
||||
sha256 = "302564d54d8e28191fadfd734f2675ecb0c9e0615a58011b89ef15dfa4dbaa96"
|
||||
|
||||
[build]
|
||||
compiler = "zig-cc"
|
||||
target = "x86_64-linux-musl"
|
||||
link = "static"
|
||||
flags = []
|
||||
|
||||
[build.phases]
|
||||
# de build() de Alpine (traducido; el lab provee $CBUILD/$CHOST — Etapa G Fase 3; revisá --shared para estático):
|
||||
compile = '''
|
||||
_abuild_phase() {
|
||||
if [ "$CARCH" = 'ppc64le' ]; then
|
||||
# https://todo.sr.ht/~kennylevinsen/seatd/10
|
||||
# https://www.openwall.com/lists/musl/2020/01/20/3
|
||||
export CFLAGS="$CFLAGS -Wno-error=overflow"
|
||||
fi
|
||||
|
||||
abuild-meson \
|
||||
-Dlibseat-logind=elogind \
|
||||
-Dman-pages=enabled \
|
||||
. output
|
||||
|
||||
meson compile -C output
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
# de package() de Alpine (traducido $pkgdir→/out):
|
||||
install = '''
|
||||
_abuild_phase() {
|
||||
DESTDIR="/out" meson install --no-rebuild -C output
|
||||
chmod u+s "/out"/usr/bin/seatd-launch
|
||||
|
||||
install -Dm755 "$srcdir"/seatd.initd "/out"/etc/init.d/seatd
|
||||
install -Dm644 "$srcdir"/seatd.confd "/out"/etc/conf.d/seatd
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
|
||||
[deps]
|
||||
build = ["scdoc", "elogind", "linux-headers"]
|
||||
@@ -1,36 +0,0 @@
|
||||
--- a/unittests/linuxliketests.py
|
||||
+++ b/unittests/linuxliketests.py
|
||||
@@ -993,6 +993,8 @@
|
||||
self.assertEqual(got_rpath, yonder_libdir, rpath_format)
|
||||
|
||||
@skip_if_not_base_option('b_sanitize')
|
||||
+ # https://github.com/mesonbuild/meson/issues/8283
|
||||
+ @unittest.skip('broken with improperly detected sanitizers')
|
||||
def test_pch_with_address_sanitizer(self):
|
||||
if is_cygwin():
|
||||
raise SkipTest('asan not available on Cygwin')
|
||||
@@ -1192,6 +1192,7 @@
|
||||
self.build()
|
||||
|
||||
@skipIfNoPkgconfig
|
||||
+ @unittest.skip('fails because of GNU libintl mess on alpine :)')
|
||||
def test_pkgconfig_formatting(self):
|
||||
testdir = os.path.join(self.unit_test_dir, '38 pkgconfig format')
|
||||
self.init(testdir)
|
||||
--- a/unittests/allplatformstests.py
|
||||
+++ b/unittests/allplatformstests.py
|
||||
@@ -377,5 +377,6 @@
|
||||
self.assertNotEqual(before, after)
|
||||
|
||||
+ @unittest.skip('samurai has a reverse order')
|
||||
def test_static_compile_order(self):
|
||||
'''
|
||||
Test that the order of files in a compiler command-line while compiling
|
||||
@@ -3198,6 +3198,7 @@
|
||||
else:
|
||||
self.assertEqual(o, e)
|
||||
|
||||
+ @unittest.skip('broken with current version of samurai')
|
||||
def test_meson_compile(self):
|
||||
"""Test the meson compile command."""
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
# Importada de Alpine aports por `hammer import-alpine` (Etapa G). PUNTO DE PARTIDA — pero
|
||||
# YA trae los parches de musl de Alpine (lo que un import de nix pierde). Pendiente: el
|
||||
# sha256 del tarball (el wrapper lo calcula), y adaptar build/install del shell de abuild.
|
||||
name = "wayland-protocols"
|
||||
version = "1.48"
|
||||
|
||||
[source]
|
||||
tarball = "https://gitlab.freedesktop.org/wayland/wayland-protocols/-/releases/1.48/downloads/wayland-protocols-1.48.tar.xz"
|
||||
# FIXME sha256: el wrapper lo calcula (Alpine publica sha512). sha512 de Alpine:
|
||||
# sha512 = "24950c6181f576f8926e2631a3f017986f809cd4fe8efe6fc8e4d872e98aacabb9eb79877371fb5def1fc78027c8e1e1e25bb98d455c22624a810707be0b2c24"
|
||||
sha256 = "398036ac0eb6484982ddbde7ff86848d753231f9cdeeae983f06b52946625aa1"
|
||||
|
||||
[build]
|
||||
compiler = "zig-cc"
|
||||
target = "x86_64-linux-musl"
|
||||
link = "static"
|
||||
flags = []
|
||||
|
||||
[build.phases]
|
||||
# de build() de Alpine (traducido; el lab provee $CBUILD/$CHOST — Etapa G Fase 3; revisá --shared para estático):
|
||||
compile = '''
|
||||
_abuild_phase() {
|
||||
abuild-meson . output
|
||||
meson compile -C output
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
# de package() de Alpine (traducido $pkgdir→/out):
|
||||
install = '''
|
||||
_abuild_phase() {
|
||||
DESTDIR="/out" meson install --no-rebuild -C output
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
|
||||
[deps]
|
||||
build = ["wayland"]
|
||||
@@ -1,48 +0,0 @@
|
||||
# Importada de Alpine aports por `hammer import-alpine` (Etapa G). PUNTO DE PARTIDA — pero
|
||||
# YA trae los parches de musl de Alpine (lo que un import de nix pierde). Pendiente: el
|
||||
# sha256 del tarball (el wrapper lo calcula), y adaptar build/install del shell de abuild.
|
||||
name = "wayland"
|
||||
version = "1.25.0"
|
||||
|
||||
[source]
|
||||
tarball = "https://gitlab.freedesktop.org/wayland/wayland/-/releases/1.25.0/downloads/wayland-1.25.0.tar.xz"
|
||||
# FIXME sha256: el wrapper lo calcula (Alpine publica sha512). sha512 de Alpine:
|
||||
# sha512 = "20ae71ecc8b6d61b3e111171260911469cc7c3470048629db28eb4115415124e5a9392e1d9be84adb324cf1a29e557ae8e033e17c51fbab2fc80d9c6b9aad82c"
|
||||
sha256 = "c065f040afdff3177680600f249727e41a1afc22fccf27222f15f5306faa1f03"
|
||||
|
||||
[build]
|
||||
compiler = "zig-cc"
|
||||
target = "x86_64-linux-musl"
|
||||
link = "static"
|
||||
flags = []
|
||||
|
||||
[build.phases]
|
||||
# de build() de Alpine (traducido; el lab provee $CBUILD/$CHOST — Etapa G Fase 3; revisá --shared para estático):
|
||||
compile = '''
|
||||
_abuild_phase() {
|
||||
abuild-meson \
|
||||
-Db_lto=true \
|
||||
-Ddocumentation=false \
|
||||
-Ddefault_library=both \
|
||||
. output
|
||||
|
||||
meson compile -C output
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
# de package() de Alpine (traducido $pkgdir→/out):
|
||||
install = '''
|
||||
_abuild_phase() {
|
||||
depends="
|
||||
wayland-libs-client=1.25.0-r$pkgrel
|
||||
wayland-libs-cursor=1.25.0-r$pkgrel
|
||||
wayland-libs-egl=1.25.0-r$pkgrel
|
||||
wayland-libs-server=1.25.0-r$pkgrel
|
||||
"
|
||||
DESTDIR="/out" meson install --no-rebuild -C output
|
||||
}
|
||||
_abuild_phase
|
||||
'''
|
||||
|
||||
[deps]
|
||||
build = ["_dev", "libxml2-dev~2.13"]
|
||||
@@ -67,16 +67,9 @@ if [ "${NO_PROMOTE:-}" != "1" ] && [ "$harvested" -gt 0 ]; then
|
||||
# El worker muele TODAS las colas (ver QUEUES en farm-worker-loop.sh); build-farm.sh sin QUEUE
|
||||
# sólo mira recipes/incoming ⇒ los artefactos de incoming-go/incoming-clib se cosechaban pero
|
||||
# NO se promovían/firmaban. Recorrer las mismas colas que el worker (cache-hit en lo cosechado).
|
||||
#
|
||||
# `recipes/incoming` NO va acá: es la cola de OTRO AGENTE (stack gráfico tawasuyu, ver 5126a8b).
|
||||
# Son imports crudos de Alpine con `sha256 = "FIXME-sha256"` y deps sin expandir (`clang$_llvmver`,
|
||||
# `_dev`, `py3-gpep517`) ⇒ NO construibles por construcción, fallan con "No such file" en CADA
|
||||
# farm-down y ensucian el log con 6 errores que parecen nuestros y no lo son. Además su trabajo YA
|
||||
# aterrizó por la vía canónica (7131cd4, "MESA iris-only CONSTRUIDA — stack gráfico COMPLETO"), así
|
||||
# que la cola quedó obsoleta — pero NO es nuestra para borrarla: 370e7b7 ya la parqueó una vez como
|
||||
# cruft y 5126a8b tuvo que revertirlo. Dejamos sus ficheros en paz y sólo dejamos de molerlos.
|
||||
# El guard `ls "$Q"/*.toml` salta las colas vacías, así que listar todas es inocuo.
|
||||
echo "==> promote+firma final (cache-hit en lo cosechado)"
|
||||
for Q in ${QUEUES:-recipes/incoming-go recipes/incoming-clib}; do
|
||||
for Q in ${QUEUES:-recipes/incoming recipes/incoming-go recipes/incoming-clib}; do
|
||||
ls "$Q"/*.toml >/dev/null 2>&1 || continue
|
||||
echo " --- promoviendo $Q"
|
||||
QUEUE="$Q" scripts/build-farm.sh || echo " (build-farm $Q devolvió error; revisá logs)"
|
||||
|
||||
@@ -66,18 +66,14 @@ DISK_HIGH="${DISK_HIGH:-82}"
|
||||
done
|
||||
) &
|
||||
|
||||
# Colas a construir (sólo SELLA, PROMOTE=0; el hub promueve+firma). `recipes/incoming-go` es la cola
|
||||
# AISLADA del frente Go (pre-sembrada para que el worker muela 24/7 sin pisar al otro agente).
|
||||
# Colas a construir (sólo SELLA, PROMOTE=0; el hub promueve+firma). `recipes/incoming` es la cola de
|
||||
# staging general; `recipes/incoming-go` es la AISLADA del frente Go (pre-sembrada para moler 24/7).
|
||||
# build-farm hace `rm -rf work/farm` al inicio ⇒ construirlas EN SERIE (una por vuelta) es seguro,
|
||||
# sin colisión.
|
||||
# sin colisión. El glob es TOP-LEVEL (`$Q/*.toml`), así que `recipes/incoming/.deferred/` (24 recetas
|
||||
# aparcadas con diagnóstico, p.ej. git con muro en libgit.a) NO se muele — es un subdir a propósito.
|
||||
# incoming-clib: libs C (toolkit/foundational) que el worker SELLA pero el cron de cosecha-go IGNORA
|
||||
# (son build-deps, se usan vía catálogo; no tienen binario que el gate Go pueda smoke-testear).
|
||||
#
|
||||
# `recipes/incoming` (cola del otro agente, stack gráfico tawasuyu) SALIÓ de la lista: sus 7 recetas
|
||||
# son imports crudos de Alpine con `sha256 = "FIXME-sha256"` y deps sin expandir ⇒ el worker gastaba
|
||||
# CPU pagada en fallarlas en CADA vuelta del loop. Su trabajo ya aterrizó canónico (7131cd4). No las
|
||||
# borramos — no son nuestras (5126a8b revirtió un parqueo previo) — sólo dejamos de molerlas.
|
||||
QUEUES="${QUEUES:-recipes/incoming-go recipes/incoming-clib recipes/incoming-kde}"
|
||||
QUEUES="${QUEUES:-recipes/incoming recipes/incoming-go recipes/incoming-clib recipes/incoming-kde}"
|
||||
echo "$(date -u +%FT%TZ) worker-loop arrancado: JOBS=$JOBS IDLE_SLEEP=$IDLE_SLEEP QUEUES='$QUEUES'"
|
||||
while :; do
|
||||
total=0
|
||||
|
||||
Reference in New Issue
Block a user