xref: /aosp_15_r20/external/toybox/mkroot/packages/lfs-sources (revision cf5a6c84e2b8763fc1a7db14496fd4742913b199)
1*cf5a6c84SAndroid Build Coastguard Worker#!/bin/echo Try "mkroot/mkroot.sh lfs"
2*cf5a6c84SAndroid Build Coastguard Worker
3*cf5a6c84SAndroid Build Coastguard Worker[ -z "$(which mksquashfs)" ] && echo "no squashfs" && exit 1
4*cf5a6c84SAndroid Build Coastguard Worker
5*cf5a6c84SAndroid Build Coastguard Worker# Download osuosl's rollup tarball of all the LFS packages.
6*cf5a6c84SAndroid Build Coastguard Worker
7*cf5a6c84SAndroid Build Coastguard Workerdownload 45a27da2ee443a8e35a7e29db8a0c6877bbb98bb \
8*cf5a6c84SAndroid Build Coastguard Worker  http://ftp.osuosl.org/pub/lfs/lfs-packages/lfs-packages-12.1.tar
9*cf5a6c84SAndroid Build Coastguard Worker
10*cf5a6c84SAndroid Build Coastguard Worker# This one's a little weird, we're creating a target-agonstic squashfs image
11*cf5a6c84SAndroid Build Coastguard Worker# not part of the initramfs.
12*cf5a6c84SAndroid Build Coastguard Worker
13*cf5a6c84SAndroid Build Coastguard Workersetupfor lfs-packages
14*cf5a6c84SAndroid Build Coastguard WorkerLFS="$OUTPUT/lfs" LFSRC="$LFS/src"
15*cf5a6c84SAndroid Build Coastguard Workerrm -rf "$LFS" && mkdir -p "$LFSRC/tzdata" &&
16*cf5a6c84SAndroid Build Coastguard Worker# Fixup names
17*cf5a6c84SAndroid Build Coastguard Workertar xfC tzdata*.tar.gz "$LFSRC/tzdata" && # Horrible package, no subdirectory!
18*cf5a6c84SAndroid Build Coastguard Workerrm tzdata*.tar.gz &&
19*cf5a6c84SAndroid Build Coastguard Workermv {expect*,expect-0}.tar.gz &&           # broken name (no - before version)
20*cf5a6c84SAndroid Build Coastguard Workerrm -f tcl*-html.tar.gz &&                 # Broken _and_ duplicate name
21*cf5a6c84SAndroid Build Coastguard Workermv {tcl*,tcl-0}.tar.gz &&
22*cf5a6c84SAndroid Build Coastguard Workermkdir sub || exit 1
23*cf5a6c84SAndroid Build Coastguard Worker# extract tarballs to package name in output and apply patches (if any)
24*cf5a6c84SAndroid Build Coastguard Workerfor i in *.tar*; do
25*cf5a6c84SAndroid Build Coastguard Worker  PKG="${i/-[0-9]*/}"
26*cf5a6c84SAndroid Build Coastguard Worker  echo process $PKG
27*cf5a6c84SAndroid Build Coastguard Worker  tar xfC $i sub && mv sub/* "$LFSRC/$PKG" || exit 1
28*cf5a6c84SAndroid Build Coastguard Worker  for j in $PKG*.patch; do
29*cf5a6c84SAndroid Build Coastguard Worker    [ -e "$j" ] && { ( cd "$LFSRC/$PKG" && patch -p1) < "$j" || exit 1 ; }
30*cf5a6c84SAndroid Build Coastguard Worker  done
31*cf5a6c84SAndroid Build Coastguard Workerdone
32*cf5a6c84SAndroid Build Coastguard Worker
33*cf5a6c84SAndroid Build Coastguard Worker# Archive the sources
34*cf5a6c84SAndroid Build Coastguard Worker
35*cf5a6c84SAndroid Build Coastguard Workermksquashfs "$LFSRC" "$TOP"/lfs.sqf -noappend -all-root >/dev/null
36