#!/bin/sh # Build script for libxcb (autotools, Template A + custom). # Needs python3 (xcb-proto's xcbgen module) to generate C sources from XML. # Verified 2026-07-22: configure hard-requires the pthread-stubs pkg-config # module unconditionally (`xau >= 0.99.2 pthread-stubs`), even on illumos # with native pthreads. libpthread-stubs is therefore a required build dep # (see base/libpthread-stubs). set -e cd "$SRCDIR" # GOTCHA (found 2026-07-22, Task 4a): this release's libtool-generated # `configure` has no solaris/illumos/hammerhead arm in its dynamic-linker # detection `case $host_os in ...` block - unmatched OS falls through to # `*) dynamic_linker=no ;;` which forces can_build_shared=no (static-only # .a, no .so). Patch the case arm to add hammerhead* alongside the generic # glibc/ELF branch (same SONAME/.so.N convention applies). if [ -f configure ]; then sed -i -E 's/(kopensolaris\*-gnu)([^)]*\))/\1 | hammerhead*\2/' configure fi export PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig:$PKG_CONFIG_PATH" export CFLAGS="${CFLAGS} -I$PREFIX/include" export LDFLAGS="${LDFLAGS} -L$PREFIX/lib -R$PREFIX/lib" export PYTHON=/usr/local/bin/python3 ./configure \ --prefix="$PREFIX" \ --build="$BUILD_TRIPLE" \ --host="$BUILD_TRIPLE" \ --sysconfdir="$SYSCONFDIR" \ --disable-static \ --enable-xkb gmake -j${JOBS:-1} gmake install DESTDIR="$PKGDIR" # libxcb - X protocol C-language Binding # https://gitlab.freedesktop.org/xorg/lib/libxcb [package] name = "libxcb" version = "1.17.0" release = 1 description = "X protocol C-language Binding (XCB)" url = "https://xorg.freedesktop.org/releases/individual/xcb/" license = "MIT" maintainer = "Chris Tusa " arch = "x86_64" [dependencies] runtime = ["libXau", "libXdmcp"] build = ["xcb-proto", "libXau", "libXdmcp", "libpthread-stubs"] [[source]] file = "libxcb-1.17.0.tar.xz" urls = ["https://xorg.freedesktop.org/releases/individual/xcb/libxcb-1.17.0.tar.xz"] checksum = "599ebf9996710fea71622e6e184f3a8ad5b43d0e5fa8c4e407123c88a59a6d55" [build] parallel = true