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 1572Shell 203Rust 109Markdown 993728 Definitions

⎇ main recipes/incoming-gnome/editorconfig-core-c.toml TOML · 47 lines · 2.8 KB History raw

la cadena del corrector: cinco muros, y el gordo es de libtool con zig ffaf4d19a · Sergio ·

1# editorconfig-core-c 0.12.11 — el parser de ficheros `.editorconfig`: el estándar con el que un
2# repositorio le dice al editor «acá se indenta con 4 espacios y los ficheros terminan en newline».
3#
4# La pide `gnome-text-editor` a través de su propio pegamento: `src/editorconfig/meson.build:1` hace
5# `dependency('editorconfig')` —la librería de verdad— y encima pone `editorconfig-glib.c`, que la
6# envuelve en GObject. O sea que el subdirectorio `src/editorconfig/` del editor NO es una copia
7# vendorizada del parser, como parece de lejos: es la capa de arriba, y la de abajo es esta receta.
8#
9# ── POR QUÉ IMPORTA MÁS DE LO QUE PARECE ───────────────────────────────────────────────────────
10# Sin esto, el editor abre cualquier fichero del repo con SUS ajustes, no con los del proyecto. En
11# un árbol donde otros agentes y el usuario editan los mismos ficheros —que es exactamente este
12# repo— un editor que no respeta el `.editorconfig` mete diffs de espacios en blanco que nadie pidió.
13#
14# ⚠ `-DCMAKE_LINK_DEPENDS_USE_LINKER=OFF` NO es una opción de estilo: sin ella el build muere con
15#
16#     [ 85%] Linking C shared library ../../lib/libeditorconfig.so
17#     Error running link command: Segmentation fault
18#
19# que es un CRASH del enlazador, no un error de símbolos. CMake ≥3.27 mete `--dependency-file` en la
20# línea de enlace y el lld de zig revienta con él — ya bisecado en este repo dos veces
21# ([[zig-lld-segfault-dependency-file]], que lo mató en protobuf y en dwarves). Es la tercera vez;
22# la memoria avisa de que afecta potencialmente a 153 recetas CMake del corpus.
23#
24# CMake, y el enlace es dinámico: `src/lib/CMakeLists.txt` construye `editorconfig_shared` y
25# `editorconfig_static` por separado; al consumidor lo alcanza la `.so` por el `.pc`.
26# `pcre2` es su única dep real (`target_link_libraries(editorconfig_shared ${PCRE2_LIBRARIES})`),
27# y ya está sellada en el corpus.
28name    = "editorconfig-core-c"
29version = "0.12.11"
30license = "BSD-2-Clause"
31
32[source]
33tarball = "https://github.com/editorconfig/editorconfig-core-c/archive/refs/tags/v0.12.11.tar.gz"
34sha256  = "9d8b420b56a969ea3cf784861c72d26fa0e158fa1494d732df2c8a1480d36a5c"
35
36[build]
37compiler = "zig-cc"
38target   = "x86_64-linux-musl"
39link     = "dynamic"
40
41[build.phases]
42configure = "PKG_CONFIG_PATH=/usr/lib/pkgconfig cmake -S . -B output -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib -DBUILD_DOCUMENTATION=OFF -DBUILD_TESTING=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_LINK_DEPENDS_USE_LINKER=OFF"
43compile   = 'cmake --build output -j"$(nproc)"'
44install   = 'DESTDIR=/out cmake --install output'
45
46[deps]
47build = ["cmake", "make", "pkgconf", "pcre2"]