update package versions

This commit is contained in:
2026-03-20 11:41:05 +01:00
parent 6b2c4981ce
commit 3cbe1e1f74
12 changed files with 90 additions and 46 deletions

View File

@@ -5,7 +5,7 @@
# Purpose: Build the cross-assembler and cross-linker (binutils) as the
# first component of the cross-toolchain. This must be built first
# because both GCC and Glibc configure tests depend on it.
# Inputs: ${LFS}/sources/binutils-2.46.tar.xz
# Inputs: ${LFS}/sources/binutils-2.46.0.tar.xz
# Outputs: Cross-binutils installed to ${LFS}/tools/
# Assumes: Running as 'lfs' user, environment sourced from 000-env-setup.sh
# Ref: LFS 13.0 §5.2
@@ -15,7 +15,7 @@ set -euo pipefail
source "${LFS}/sources/darkforge-env.sh"
PACKAGE="binutils"
VERSION="2.46"
VERSION="2.46.0"
SRCDIR="${LFS}/sources"
echo "=== Building ${PACKAGE}-${VERSION} (Cross-Toolchain Pass 1) ==="

View File

@@ -6,7 +6,7 @@
# This is the core C library that every program on the final system
# will link against. After this step, we can compile programs that
# actually run on the target.
# Inputs: ${LFS}/sources/glibc-2.43.tar.xz, glibc-2.43-fhs-1.patch
# Inputs: ${LFS}/sources/glibc-2.43.tar.xz, glibc-fhs-1.patch
# Outputs: Glibc installed to ${LFS}/usr/lib/, ${LFS}/usr/include/
# Assumes: Binutils Pass 1 + GCC Pass 1 + Linux Headers complete
# Ref: LFS 13.0 §5.5
@@ -39,7 +39,7 @@ esac
# Apply the FHS (Filesystem Hierarchy Standard) patch
# This makes glibc install some programs in /usr/sbin instead of /sbin
patch -Np1 -i ../glibc-2.43-fhs-1.patch
patch -Np1 -i ../glibc-fhs-1.patch
mkdir -v build
cd build

View File

@@ -4,7 +4,7 @@
# ============================================================================
# Purpose: Cross-compile the ncurses library (terminal handling). Required
# by bash, many TUI programs, and the installer.
# Inputs: ${LFS}/sources/ncurses-6.5.tar.gz
# Inputs: ${LFS}/sources/ncurses.tar.gz (unversioned tarball from mirror)
# Outputs: ncurses libraries and tic utility in ${LFS}/usr/
# Assumes: Cross-toolchain (Ch.5) complete
# Ref: LFS 13.0 §6.3
@@ -14,14 +14,23 @@ set -euo pipefail
source "${LFS}/sources/darkforge-env.sh"
PACKAGE="ncurses"
VERSION="6.5"
SRCDIR="${LFS}/sources"
echo "=== Building ${PACKAGE}-${VERSION} (Temporary Tool) ==="
echo "=== Building ${PACKAGE} (Temporary Tool) ==="
cd "${SRCDIR}"
tar -xf "${PACKAGE}-${VERSION}.tar.gz"
cd "${PACKAGE}-${VERSION}"
# The mirror provides ncurses.tar.gz (unversioned). Auto-detect the
# directory name inside the tarball.
tar -xf ncurses.tar.gz
NCDIR=$(find . -maxdepth 1 -type d -name 'ncurses-*' | head -1)
if [ -z "${NCDIR}" ]; then
echo "ERROR: Could not find ncurses-* directory after extraction"
exit 1
fi
VERSION="${NCDIR#./ncurses-}"
echo " Detected version: ${VERSION}"
cd "${NCDIR}"
# First, build the tic program that runs on the host
# This is needed to create the terminal database during install
@@ -57,5 +66,5 @@ ln -sv libncursesw.so "${LFS}/usr/lib/libncurses.so"
sed -e 's/^#if.*XOPEN.*$/#if 1/' -i "${LFS}/usr/include/curses.h"
cd "${SRCDIR}"
rm -rf "${PACKAGE}-${VERSION}"
rm -rf "${NCDIR}"
echo "=== ${PACKAGE}-${VERSION} complete ==="

View File

@@ -4,7 +4,7 @@
# ============================================================================
# Purpose: Cross-compile GNU coreutils (ls, cp, mv, cat, chmod, etc.)
# for the temporary tools environment.
# Inputs: ${LFS}/sources/coreutils-9.6.tar.xz
# Inputs: ${LFS}/sources/coreutils-9.10.tar.xz
# Outputs: Core utilities in ${LFS}/usr/bin/
# Assumes: Cross-toolchain complete
# Ref: LFS 13.0 §6.5
@@ -14,7 +14,7 @@ set -euo pipefail
source "${LFS}/sources/darkforge-env.sh"
PACKAGE="coreutils"
VERSION="9.6"
VERSION="9.10"
SRCDIR="${LFS}/sources"
echo "=== Building ${PACKAGE}-${VERSION} (Temporary Tool) ==="

View File

@@ -3,7 +3,7 @@
# DarkForge Linux — Phase 0, Chapter 6: Diffutils
# ============================================================================
# Purpose: Cross-compile GNU diffutils (diff, cmp, sdiff, diff3).
# Inputs: ${LFS}/sources/diffutils-3.10.tar.xz
# Inputs: ${LFS}/sources/diffutils-3.12.tar.xz
# Outputs: diff utilities in ${LFS}/usr/bin/
# Ref: LFS 13.0 §6.6
# ============================================================================
@@ -12,7 +12,7 @@ set -euo pipefail
source "${LFS}/sources/darkforge-env.sh"
PACKAGE="diffutils"
VERSION="3.10"
VERSION="3.12"
SRCDIR="${LFS}/sources"
echo "=== Building ${PACKAGE}-${VERSION} (Temporary Tool) ==="

View File

@@ -3,7 +3,7 @@
# DarkForge Linux — Phase 0, Chapter 6: Grep
# ============================================================================
# Purpose: Cross-compile GNU grep (pattern matching).
# Inputs: ${LFS}/sources/grep-3.14.tar.xz
# Inputs: ${LFS}/sources/grep-3.12.tar.xz
# Outputs: grep in ${LFS}/usr/bin/
# Ref: LFS 13.0 §6.10
# ============================================================================
@@ -12,7 +12,7 @@ set -euo pipefail
source "${LFS}/sources/darkforge-env.sh"
PACKAGE="grep"
VERSION="3.14"
VERSION="3.12"
SRCDIR="${LFS}/sources"
echo "=== Building ${PACKAGE}-${VERSION} (Temporary Tool) ==="

View File

@@ -3,7 +3,7 @@
# DarkForge Linux — Phase 0, Chapter 6: Make
# ============================================================================
# Purpose: Cross-compile GNU make (build automation).
# Inputs: ${LFS}/sources/make-4.4.1.tar.gz
# Inputs: ${LFS}/sources/make-4.4.tar.gz
# Outputs: make in ${LFS}/usr/bin/
# Ref: LFS 13.0 §6.12
# ============================================================================
@@ -12,7 +12,7 @@ set -euo pipefail
source "${LFS}/sources/darkforge-env.sh"
PACKAGE="make"
VERSION="4.4.1"
VERSION="4.4"
SRCDIR="${LFS}/sources"
echo "=== Building ${PACKAGE}-${VERSION} (Temporary Tool) ==="

View File

@@ -3,7 +3,7 @@
# DarkForge Linux — Phase 0, Chapter 6: Tar
# ============================================================================
# Purpose: Cross-compile GNU tar (archive utility).
# Inputs: ${LFS}/sources/tar-1.35.tar.xz
# Inputs: ${LFS}/sources/tar-latest.tar.xz (unversioned tarball from mirror)
# Outputs: tar in ${LFS}/usr/bin/
# Ref: LFS 13.0 §6.15
# ============================================================================
@@ -12,14 +12,23 @@ set -euo pipefail
source "${LFS}/sources/darkforge-env.sh"
PACKAGE="tar"
VERSION="1.35"
SRCDIR="${LFS}/sources"
echo "=== Building ${PACKAGE}-${VERSION} (Temporary Tool) ==="
echo "=== Building ${PACKAGE} (Temporary Tool) ==="
cd "${SRCDIR}"
tar -xf "${PACKAGE}-${VERSION}.tar.xz"
cd "${PACKAGE}-${VERSION}"
# The mirror provides tar-latest.tar.xz (unversioned). Auto-detect the
# directory name inside the tarball.
tar -xf tar-latest.tar.xz
TARDIR=$(find . -maxdepth 1 -type d -name 'tar-[0-9]*' | head -1)
if [ -z "${TARDIR}" ]; then
echo "ERROR: Could not find tar-* directory after extraction"
exit 1
fi
VERSION="${TARDIR#./tar-}"
echo " Detected version: ${VERSION}"
cd "${TARDIR}"
./configure \
--prefix=/usr \
@@ -30,5 +39,5 @@ make
make DESTDIR="${LFS}" install
cd "${SRCDIR}"
rm -rf "${PACKAGE}-${VERSION}"
rm -rf "${TARDIR}"
echo "=== ${PACKAGE}-${VERSION} complete ==="

View File

@@ -5,7 +5,7 @@
# Purpose: Rebuild binutils with the temporary toolchain. This produces
# binutils that runs on the target and generates code for the target.
# Pass 1 ran on the host; Pass 2 runs on the target (via cross-compiler).
# Inputs: ${LFS}/sources/binutils-2.46.tar.xz
# Inputs: ${LFS}/sources/binutils-2.46.0.tar.xz
# Outputs: Updated binutils in ${LFS}/usr/
# Assumes: All Chapter 5 + Chapter 6 temp tools (006-020) complete
# Ref: LFS 13.0 §6.17
@@ -15,7 +15,7 @@ set -euo pipefail
source "${LFS}/sources/darkforge-env.sh"
PACKAGE="binutils"
VERSION="2.46"
VERSION="2.46.0"
SRCDIR="${LFS}/sources"
echo "=== Building ${PACKAGE}-${VERSION} (Pass 2) ==="

View File

@@ -5,7 +5,7 @@
# Purpose: Build gettext (internationalization framework). Many packages
# require gettext's autopoint, msgfmt, etc. during their build.
# Only the minimum needed tools are installed at this stage.
# Inputs: /sources/gettext-0.23.1.tar.xz
# Inputs: /sources/gettext-1.0.tar.xz
# Outputs: gettext utilities in /usr/
# Assumes: Running inside chroot
# Ref: LFS 13.0 §7.7
@@ -14,7 +14,7 @@
set -euo pipefail
PACKAGE="gettext"
VERSION="0.23.1"
VERSION="1.0"
echo "=== Building ${PACKAGE}-${VERSION} (Chroot) ==="