gioser

sergio/takana

> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…

TOML 815Rust 56Shell 37Markdown 291229 Definiciones

⎇ a6a9d59e4f0d354cf2c9066538c6fa7016fc6721 recipes/incoming-kde/solid.toml TOML · 49 líneas · 2.2 KB Historia crudo

licencias: 936 de 1141 (82%) — detección por evidencia, con sus dos imprecisiones declaradas a6a9d59e4 · sergio ·

1# solid 6.27.0 — KDE Frameworks 6 (Capa 2, ADR 0011). Patrón KF6: dynamic, wrapper zig que filtra
2# -Wl,--fatal-warnings (ECM lo agrega, zig lo rechaza), CMAKE_PREFIX_PATH=/usr, ECM + qttools + dbus.
3name    = "solid"
4version = "6.27.0"
5license = "LGPL-2.1-or-later OR LGPL-3.0-or-later"
6
7[source]
8tarball = "https://download.kde.org/stable/frameworks/6.27/solid-6.27.0.tar.xz"
9sha256  = "70a9ee69b4357ebf83cc87aa61db6fdff8c96a59e24f9572e51716f1d3c579fe"
10
11[build]
12compiler = "zig-cc"
13target   = "x86_64-linux-musl"
14link     = "dynamic"
15flags    = []
16
17[build.phases]
18configure = '''
19ZW="$PWD/.zwrap"; mkdir -p "$ZW"
20cat > "$ZW/cc"  <<'W'
21#!/bin/sh
22a=""; for x in "$@"; do [ "$x" = "-Wl,--fatal-warnings" ] && continue; a="$a $x"; done
23exec /opt/zig/zig cc -mcpu=baseline $a
24W
25cat > "$ZW/cxx" <<'W'
26#!/bin/sh
27a=""; for x in "$@"; do [ "$x" = "-Wl,--fatal-warnings" ] && continue; a="$a $x"; done
28exec /opt/zig/zig c++ -mcpu=baseline $a
29W
30chmod +x "$ZW/cc" "$ZW/cxx"
31cmake -B build -G Ninja -Wno-dev \
32  -DCMAKE_C_COMPILER="$ZW/cc" -DCMAKE_CXX_COMPILER="$ZW/cxx" -DCMAKE_ASM_COMPILER="$ZW/cc" \
33  -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_PREFIX_PATH=/usr \
34  -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF \
35  -DBUILD_TESTING=OFF -DBUILD_PYTHON_BINDINGS=OFF \
36  -DCMAKE_AUTOMOC_MOC_OPTIONS=-D__linux__=1
37'''
38# ↑ moc_predefs FIX: CMake no setea CMAKE_CXX_COMPILER_PREDEFINES_COMMAND para zig-as-clang ⇒ el
39# moc_predefs.h que alimenta a moc queda VACÍO ⇒ moc no ve __linux__ ⇒ toma la rama #else (no-Linux)
40# de fstabwatcher.h y genera onFileChanged, pero el COMPILADOR sí define __linux__ y usa onMountChanged
41# ⇒ "no member named onFileChanged". Darle -D__linux__=1 a moc realinea Q_OS_LINUX. Patrón KF6 para
42# cualquier framework con slots/signals moc detrás de #ifdef Q_OS_LINUX.
43compile = "cmake --build build"
44install = "DESTDIR=/out cmake --install build"
45
46[deps]
47# libudev-zero: solid hace find_package(UDev REQUIRED) en Linux (enumera dispositivos). Provee
48# libudev.so soberano sin udevd (lee /sys+/dev directo), coherente con arje-init sin systemd.
49build = ["cmake", "samurai", "python3", "pkgconf", "qtbase", "dbus", "extra-cmake-modules", "qttools", "qtdeclarative", "flex", "bison", "util-linux", "mesa", "libdrm", "libxkbcommon", "wayland", "libudev-zero"]