updated
This commit is contained in:
parent
c50d4162e3
commit
eb9422b994
12 changed files with 246 additions and 19 deletions
33
02-lfs-base
33
02-lfs-base
|
@ -7,6 +7,12 @@ fi
|
||||||
|
|
||||||
LFS=/mnt/lfs
|
LFS=/mnt/lfs
|
||||||
|
|
||||||
|
if [ -x $LFS/usr/bin/env ]; then
|
||||||
|
ENVLFS=/usr/bin/env
|
||||||
|
else
|
||||||
|
ENVLFS=/tools/bin/env
|
||||||
|
fi
|
||||||
|
|
||||||
lfs_dirs() {
|
lfs_dirs() {
|
||||||
mkdir -pv $LFS/{dev,proc,sys,run}
|
mkdir -pv $LFS/{dev,proc,sys,run}
|
||||||
mknod -m 600 $LFS/dev/console c 5 1
|
mknod -m 600 $LFS/dev/console c 5 1
|
||||||
|
@ -134,12 +140,11 @@ runinchroot() {
|
||||||
pushd $LFS &>/dev/null
|
pushd $LFS &>/dev/null
|
||||||
mount_pseudo
|
mount_pseudo
|
||||||
cp -L /etc/resolv.conf $LFS/etc/
|
cp -L /etc/resolv.conf $LFS/etc/
|
||||||
chroot "$LFS" /tools/bin/env -i \
|
chroot "$LFS" $ENVLFS -i \
|
||||||
HOME=/root \
|
HOME=/root \
|
||||||
TERM="$TERM" \
|
TERM="$TERM" \
|
||||||
PS1='(lfs chroot) \u:\w\$ ' \
|
PS1='(lfs chroot) \u:\w\$ ' \
|
||||||
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin \
|
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin $@
|
||||||
bash $@
|
|
||||||
retval=$?
|
retval=$?
|
||||||
umount_pseudo
|
umount_pseudo
|
||||||
popd &>/dev/null
|
popd &>/dev/null
|
||||||
|
@ -168,7 +173,7 @@ intltool autoconf automake xz kmod gettext libelf libffi openssl python3 ninja m
|
||||||
gawk findutils groff grub less gzip iproute2 kbd libpipeline make patch sysklogd sysvinit eudev util-linux man-db tar texinfo vim
|
gawk findutils groff grub less gzip iproute2 kbd libpipeline make patch sysklogd sysvinit eudev util-linux man-db tar texinfo vim
|
||||||
cpio mkinitramfs linux lfs-bootscripts lfs-files libtasn1 p11-kit make-ca wget"
|
cpio mkinitramfs linux lfs-bootscripts lfs-files libtasn1 p11-kit make-ca wget"
|
||||||
|
|
||||||
EXTRA_PKGS="dhcpcd libnl wpa_supplicant"
|
EXTRA_PKGS="dhcpcd libnl wpa_supplicant links libpng pcre slang glib mc"
|
||||||
|
|
||||||
if [ ! -f $LFS/var/lib/pkg/db ]; then
|
if [ ! -f $LFS/var/lib/pkg/db ]; then
|
||||||
lfs_dirs
|
lfs_dirs
|
||||||
|
@ -179,22 +184,22 @@ cp lfs/pkgscripts/* $LFS/usr/pkgscripts/
|
||||||
cp lfs/functions $LFS/var/lib/pkg/
|
cp lfs/functions $LFS/var/lib/pkg/
|
||||||
cp lfs/pkg.conf $LFS/etc/pkg/
|
cp lfs/pkg.conf $LFS/etc/pkg/
|
||||||
|
|
||||||
for i in $PKGS; do
|
for i in $PKGS $EXTRA_PKGS; do
|
||||||
if [[ $(grep "^$i " $LFS/var/lib/pkg/db) ]]; then
|
if [[ $(grep "^$i " $LFS/var/lib/pkg/db) ]]; then
|
||||||
echo "--- $i skipped ---"
|
echo "--- $i skipped ---"
|
||||||
else
|
else
|
||||||
echo "*** $i ***"
|
echo "*** $i ***"
|
||||||
runinchroot /usr/pkgscripts/$i || die "$i build error!"
|
runinchroot bash /usr/pkgscripts/$i || die "$i build error!"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
for i in $EXTRA_PKGS; do
|
#for i in ; do
|
||||||
if [[ $(grep "^$i " $LFS/var/lib/pkg/db) ]]; then
|
#if [[ $(grep "^$i " $LFS/var/lib/pkg/db) ]]; then
|
||||||
echo "--- $i skipped ---"
|
#echo "--- $i skipped ---"
|
||||||
else
|
#else
|
||||||
echo "*** $i ***"
|
#echo "*** $i ***"
|
||||||
runchroot /usr/pkgscripts/$i || die "$i build error!"
|
#runchroot /usr/pkgscripts/$i || die "$i build error!"
|
||||||
fi
|
#fi
|
||||||
done
|
#done
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|
|
@ -26,6 +26,6 @@ fetch() {
|
||||||
registerpkg() {
|
registerpkg() {
|
||||||
sed "/^$1 /d" -i /var/lib/pkg/db
|
sed "/^$1 /d" -i /var/lib/pkg/db
|
||||||
echo "$1 $2" >> /var/lib/pkg/db
|
echo "$1 $2" >> /var/lib/pkg/db
|
||||||
ldconfig
|
[ $(type -p ldconfig) ] && ldconfig
|
||||||
echo "::: $1 $2 installed :::"
|
echo "::: $1 $2 installed :::"
|
||||||
}
|
}
|
||||||
|
|
38
lfs/pkgscripts/glib
Executable file
38
lfs/pkgscripts/glib
Executable file
|
@ -0,0 +1,38 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
. /etc/pkg/pkg.conf
|
||||||
|
. /var/lib/pkg/functions
|
||||||
|
|
||||||
|
name=$(basename $0)
|
||||||
|
version=2.56.1
|
||||||
|
url=http://ftp.gnome.org/pub/gnome/sources/glib/${version::4}/glib-$version.tar.xz
|
||||||
|
patch=http://www.linuxfromscratch.org/patches/blfs/8.3/glib-$version-skip_warnings-1.patch
|
||||||
|
|
||||||
|
fetch $url
|
||||||
|
fetch $patch
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
tar -xvf $SOURCE_DIR/$(basename $url) -C $WORK_DIR
|
||||||
|
|
||||||
|
cd $WORK_DIR/$name-$version
|
||||||
|
{ time \
|
||||||
|
{
|
||||||
|
patch -Np1 -i $SOURCE_DIR/glib-$version-skip_warnings-1.patch
|
||||||
|
|
||||||
|
./configure --prefix=/usr \
|
||||||
|
--with-pcre=system \
|
||||||
|
--with-python=/usr/bin/python3
|
||||||
|
make
|
||||||
|
make install
|
||||||
|
}
|
||||||
|
} 2>&1 | tee -a $LOG_DIR/$(basename $0).log
|
||||||
|
|
||||||
|
if [ $PIPESTATUS -ne 0 ]; then exit 1; fi;
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
|
||||||
|
registerpkg $(basename $0) $version
|
||||||
|
|
||||||
|
exit 0
|
36
lfs/pkgscripts/libpng
Executable file
36
lfs/pkgscripts/libpng
Executable file
|
@ -0,0 +1,36 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
. /etc/pkg/pkg.conf
|
||||||
|
. /var/lib/pkg/functions
|
||||||
|
|
||||||
|
name=$(basename $0)
|
||||||
|
version=1.6.35
|
||||||
|
url=https://downloads.sourceforge.net/libpng/libpng-$version.tar.xz
|
||||||
|
patch=https://downloads.sourceforge.net/sourceforge/libpng-apng/libpng-$version-apng.patch.gz
|
||||||
|
|
||||||
|
fetch $url
|
||||||
|
fetch $patch
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
tar -xvf $SOURCE_DIR/$(basename $url) -C $WORK_DIR
|
||||||
|
|
||||||
|
cd $WORK_DIR/$name-$version
|
||||||
|
{ time \
|
||||||
|
{
|
||||||
|
gzip -cd $SOURCE_DIR/libpng-$version-apng.patch.gz | patch -p1
|
||||||
|
|
||||||
|
LIBS=-lpthread ./configure --prefix=/usr --disable-static
|
||||||
|
make
|
||||||
|
make install
|
||||||
|
}
|
||||||
|
} 2>&1 | tee -a $LOG_DIR/$(basename $0).log
|
||||||
|
|
||||||
|
if [ $PIPESTATUS -ne 0 ]; then exit 1; fi;
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
|
||||||
|
registerpkg $(basename $0) $version
|
||||||
|
|
||||||
|
exit 0
|
32
lfs/pkgscripts/links
Executable file
32
lfs/pkgscripts/links
Executable file
|
@ -0,0 +1,32 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
. /etc/pkg/pkg.conf
|
||||||
|
. /var/lib/pkg/functions
|
||||||
|
|
||||||
|
name=$(basename $0)
|
||||||
|
version=2.16
|
||||||
|
url=http://links.twibright.com/download/links-$version.tar.bz2
|
||||||
|
|
||||||
|
fetch $url
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
tar -xvf $SOURCE_DIR/$(basename $url) -C $WORK_DIR
|
||||||
|
|
||||||
|
cd $WORK_DIR/$name-$version
|
||||||
|
{ time \
|
||||||
|
{
|
||||||
|
./configure --prefix=/usr --mandir=/usr/share/man
|
||||||
|
make
|
||||||
|
make install
|
||||||
|
}
|
||||||
|
} 2>&1 | tee -a $LOG_DIR/$(basename $0).log
|
||||||
|
|
||||||
|
if [ $PIPESTATUS -ne 0 ]; then exit 1; fi;
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
|
||||||
|
registerpkg $(basename $0) $version
|
||||||
|
|
||||||
|
exit 0
|
|
@ -6,7 +6,7 @@ set -e
|
||||||
. /var/lib/pkg/functions
|
. /var/lib/pkg/functions
|
||||||
|
|
||||||
name=$(basename $0)
|
name=$(basename $0)
|
||||||
version=4.19.2
|
version=4.19.12
|
||||||
url=https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-$version.tar.xz
|
url=https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-$version.tar.xz
|
||||||
|
|
||||||
fetch $url
|
fetch $url
|
||||||
|
|
|
@ -6,7 +6,7 @@ set -e
|
||||||
. /var/lib/pkg/functions
|
. /var/lib/pkg/functions
|
||||||
|
|
||||||
name=linux
|
name=linux
|
||||||
version=4.19.2
|
version=4.19.12
|
||||||
|
|
||||||
fetch https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-$version.tar.xz
|
fetch https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-$version.tar.xz
|
||||||
|
|
||||||
|
|
35
lfs/pkgscripts/mc
Executable file
35
lfs/pkgscripts/mc
Executable file
|
@ -0,0 +1,35 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
. /etc/pkg/pkg.conf
|
||||||
|
. /var/lib/pkg/functions
|
||||||
|
|
||||||
|
name=$(basename $0)
|
||||||
|
version=4.8.21
|
||||||
|
url=http://ftp.midnight-commander.org/mc-$version.tar.xz
|
||||||
|
|
||||||
|
fetch $url
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
tar -xvf $SOURCE_DIR/$(basename $url) -C $WORK_DIR
|
||||||
|
|
||||||
|
cd $WORK_DIR/$name-$version
|
||||||
|
{ time \
|
||||||
|
{
|
||||||
|
./configure --prefix=/usr \
|
||||||
|
--sysconfdir=/etc \
|
||||||
|
--enable-charset
|
||||||
|
make
|
||||||
|
make install
|
||||||
|
#cp -v doc/keybind-migration.txt /usr/share/mc
|
||||||
|
}
|
||||||
|
} 2>&1 | tee -a $LOG_DIR/$(basename $0).log
|
||||||
|
|
||||||
|
if [ $PIPESTATUS -ne 0 ]; then exit 1; fi;
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
|
||||||
|
registerpkg $(basename $0) $version
|
||||||
|
|
||||||
|
exit 0
|
|
@ -6,7 +6,7 @@ set -e
|
||||||
. /var/lib/pkg/functions
|
. /var/lib/pkg/functions
|
||||||
|
|
||||||
name=$(basename $0)
|
name=$(basename $0)
|
||||||
version=72992208c32e3aac22a086659b00c034960992cd
|
version=e6ffa3b73cbe126b2e2599805b1ee251b9b249a4
|
||||||
url=https://github.com/emmett1/mkinitramfs/archive/$version.tar.gz
|
url=https://github.com/emmett1/mkinitramfs/archive/$version.tar.gz
|
||||||
|
|
||||||
fetch $url
|
fetch $url
|
||||||
|
|
|
@ -6,7 +6,7 @@ set -e
|
||||||
. /var/lib/pkg/functions
|
. /var/lib/pkg/functions
|
||||||
|
|
||||||
name=$(basename $0)
|
name=$(basename $0)
|
||||||
version=1.1.0i
|
version=1.1.0j
|
||||||
url=https://openssl.org/source/openssl-$version.tar.gz
|
url=https://openssl.org/source/openssl-$version.tar.gz
|
||||||
|
|
||||||
fetch $url
|
fetch $url
|
||||||
|
|
42
lfs/pkgscripts/pcre
Executable file
42
lfs/pkgscripts/pcre
Executable file
|
@ -0,0 +1,42 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
. /etc/pkg/pkg.conf
|
||||||
|
. /var/lib/pkg/functions
|
||||||
|
|
||||||
|
name=$(basename $0)
|
||||||
|
version=8.42
|
||||||
|
url=https://ftp.pcre.org/pub/pcre/pcre-$version.tar.bz2
|
||||||
|
|
||||||
|
fetch $url
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
tar -xvf $SOURCE_DIR/$(basename $url) -C $WORK_DIR
|
||||||
|
|
||||||
|
cd $WORK_DIR/$name-$version
|
||||||
|
{ time \
|
||||||
|
{
|
||||||
|
./configure --prefix=/usr \
|
||||||
|
--docdir=/usr/share/doc/pcre-$version \
|
||||||
|
--enable-unicode-properties \
|
||||||
|
--enable-pcre16 \
|
||||||
|
--enable-pcre32 \
|
||||||
|
--enable-pcregrep-libz \
|
||||||
|
--enable-pcregrep-libbz2 \
|
||||||
|
--enable-pcretest-libreadline \
|
||||||
|
--disable-static
|
||||||
|
make
|
||||||
|
make install
|
||||||
|
mv -v /usr/lib/libpcre.so.* /lib
|
||||||
|
ln -sfv ../../lib/$(readlink /usr/lib/libpcre.so) /usr/lib/libpcre.so
|
||||||
|
}
|
||||||
|
} 2>&1 | tee -a $LOG_DIR/$(basename $0).log
|
||||||
|
|
||||||
|
if [ $PIPESTATUS -ne 0 ]; then exit 1; fi;
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
|
||||||
|
registerpkg $(basename $0) $version
|
||||||
|
|
||||||
|
exit 0
|
39
lfs/pkgscripts/slang
Executable file
39
lfs/pkgscripts/slang
Executable file
|
@ -0,0 +1,39 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
. /etc/pkg/pkg.conf
|
||||||
|
. /var/lib/pkg/functions
|
||||||
|
|
||||||
|
name=$(basename $0)
|
||||||
|
version=2.3.2
|
||||||
|
url=http://www.jedsoft.org/releases/slang/slang-$version.tar.bz2
|
||||||
|
|
||||||
|
fetch $url
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
tar -xvf $SOURCE_DIR/$(basename $url) -C $WORK_DIR
|
||||||
|
|
||||||
|
cd $WORK_DIR/$name-$version
|
||||||
|
{ time \
|
||||||
|
{
|
||||||
|
./configure --prefix=/usr \
|
||||||
|
--sysconfdir=/etc \
|
||||||
|
--with-readline=gnu
|
||||||
|
make -j1
|
||||||
|
make -j1 install_doc_dir=/usr/share/doc/slang-$version \
|
||||||
|
SLSH_DOC_DIR=/usr/share/doc/slang-$version/slsh \
|
||||||
|
install-all
|
||||||
|
|
||||||
|
chmod -v 755 /usr/lib/libslang.so.2.3.2 \
|
||||||
|
/usr/lib/slang/v2/modules/*.so
|
||||||
|
}
|
||||||
|
} 2>&1 | tee -a $LOG_DIR/$(basename $0).log
|
||||||
|
|
||||||
|
if [ $PIPESTATUS -ne 0 ]; then exit 1; fi;
|
||||||
|
|
||||||
|
rm -fr $WORK_DIR/$name-$version
|
||||||
|
|
||||||
|
registerpkg $(basename $0) $version
|
||||||
|
|
||||||
|
exit 0
|
Loading…
Add table
Reference in a new issue