#!/bin/bash # ============================================================================ # DarkForge Linux — Phase 0, Chapter 6: Xz # ============================================================================ # Purpose: Cross-compile xz utilities (LZMA compression). Many source # tarballs use .tar.xz format, so this is essential. # Inputs: ${LFS}/sources/xz-5.8.1.tar.gz # Outputs: xz, xzcat, lzma etc. in ${LFS}/usr/bin/ # Ref: LFS 13.0 §6.16 # ============================================================================ set -euo pipefail source "${LFS}/sources/darkforge-env.sh" PACKAGE="xz" VERSION="5.8.1" SRCDIR="${LFS}/sources" echo "=== Building ${PACKAGE}-${VERSION} (Temporary Tool) ===" cd "${SRCDIR}" tar -xf "${PACKAGE}-${VERSION}.tar.gz" cd "${PACKAGE}-${VERSION}" ./configure \ --prefix=/usr \ --host="${LFS_TGT}" \ --build="$(build-aux/config.guess)" \ --disable-static \ --docdir=/usr/share/doc/xz-${VERSION} make make DESTDIR="${LFS}" install # Remove libtool archive rm -v "${LFS}/usr/lib/liblzma.la" 2>/dev/null || true cd "${SRCDIR}" rm -rf "${PACKAGE}-${VERSION}" echo "=== ${PACKAGE}-${VERSION} complete ==="