# libnl 3.11.0 — librería netlink (base del stack WiFi del kernel metal).
#
# wpa_supplicant habla con el kernel (cfg80211/nl80211) vía netlink genérico; el driver `nl80211` de
# wpa_supplicant enlaza libnl-3 + libnl-genl-3 (pkg-config libnl-3.0/libnl-genl-3.0). Es la única forma
# de manejar iwlwifi (el viejo wext está muerto en kernels modernos). Sólo se usa para el WiFi del medio
# live en hardware real — no toca el camino del selfhost/QEMU.
#
# Autotools con parsers pre-generados en el tarball (no necesita flex/bison). Estático (.a) como openssl:
# evita el lío de nombres .so musl y deja que wpa_supplicant enlace en duro. $CBUILD/$CHOST los exporta
# el lab (Etapa G Fase 3).

name    = "libnl"
version = "3.11.0"

[source]
tarball = "https://github.com/thom311/libnl/releases/download/libnl3_11_0/libnl-3.11.0.tar.gz"
sha256  = "2a56e1edefa3e68a7c00879496736fdbf62fc94ed3232c0baba127ecfa76874d"

[build]
compiler = "zig-cc"
target   = "x86_64-linux-musl"
link     = "static"

[deps]
# libnl 3.11 regenera sus parsers netlink ⇒ flex (lexer) + bison (parser) + m4 (bison lo invoca).
build = ["flex", "bison", "m4"]

[build.phases]
configure = "./configure --build=$CBUILD --host=$CHOST --prefix=/usr --libdir=/usr/lib --disable-shared --enable-static --disable-cli"
compile   = "make -j\"$(nproc)\""
install   = "make DESTDIR=/out install"
