Merge pull request #88 from TechnologyClassroom/util-linux
This adds 'util-linux' as overlay bundle.
This commit is contained in:
commit
85f5beef57
@ -92,6 +92,12 @@ CLOUD_FOUNDRY_CLI_URL=http://cli.run.pivotal.io/stable?release=linux64-binary&so
|
|||||||
#
|
#
|
||||||
OPENJDK_URL=http://download.java.net/java/GA/jdk9/9/binaries/jdk-9+181_linux-x64_bin.tar.gz
|
OPENJDK_URL=http://download.java.net/java/GA/jdk9/9/binaries/jdk-9+181_linux-x64_bin.tar.gz
|
||||||
|
|
||||||
|
# You can find the latest util_linux archives here:
|
||||||
|
#
|
||||||
|
# https://www.kernel.org/pub/linux/utils/util-linux/
|
||||||
|
#
|
||||||
|
UTIL_LINUX_SOURCE_URL=https://www.kernel.org/pub/linux/utils/util-linux/v2.31/util-linux-2.31.tar.gz
|
||||||
|
|
||||||
# You can find the latest ZLIB source bundles here:
|
# You can find the latest ZLIB source bundles here:
|
||||||
#
|
#
|
||||||
# http://zlib.net
|
# http://zlib.net
|
||||||
@ -187,6 +193,7 @@ COPY_SOURCE_ISO=true
|
|||||||
# cf_cli - CLoud Foundry CLI (command line interface)
|
# cf_cli - CLoud Foundry CLI (command line interface)
|
||||||
# nweb - simple mini http server
|
# nweb - simple mini http server
|
||||||
# dhcp - DHCP and DNS functionality
|
# dhcp - DHCP and DNS functionality
|
||||||
|
# util_linux - standard package distributed by the Linux Kernel Organization.
|
||||||
# zlib - DEFLATE compression/decompression library.
|
# zlib - DEFLATE compression/decompression library.
|
||||||
#
|
#
|
||||||
# Refer to the README file for more information.
|
# Refer to the README file for more information.
|
||||||
|
@ -80,6 +80,9 @@ Currently available overlay bundles:
|
|||||||
|
|
||||||
* dhcp - DHCP and DNS functionality
|
* dhcp - DHCP and DNS functionality
|
||||||
|
|
||||||
|
* util_linux - util-linux is a standard package distributed by the Linux Kernel
|
||||||
|
Organization similar to busybox or GNU Core Utils.
|
||||||
|
|
||||||
### ### ###
|
### ### ###
|
||||||
|
|
||||||
I only provide the build scripts. It's entirely up to you to configure and
|
I only provide the build scripts. It's entirely up to you to configure and
|
||||||
|
41
src/minimal_overlay/bundles/util_linux/01_get.sh
Normal file
41
src/minimal_overlay/bundles/util_linux/01_get.sh
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
SRC_DIR=$(pwd)
|
||||||
|
|
||||||
|
. ../../common.sh
|
||||||
|
|
||||||
|
# Grab everything after the '=' character.
|
||||||
|
DOWNLOAD_URL=$(grep -i UTIL_LINUX_SOURCE_URL $MAIN_SRC_DIR/.config | cut -f2 -d'=')
|
||||||
|
|
||||||
|
# Grab everything after the last '/' character.
|
||||||
|
ARCHIVE_FILE=${DOWNLOAD_URL##*/}
|
||||||
|
|
||||||
|
# Read the 'USE_LOCAL_SOURCE' property from '.config'
|
||||||
|
USE_LOCAL_SOURCE="$(grep -i USE_LOCAL_SOURCE $MAIN_SRC_DIR/.config | cut -f2 -d'=')"
|
||||||
|
|
||||||
|
if [ "$USE_LOCAL_SOURCE" = "true" -a ! -f $MAIN_SRC_DIR/source/overlay/$ARCHIVE_FILE ] ; then
|
||||||
|
echo "Source bundle $MAIN_SRC_DIR/source/overlay/$ARCHIVE_FILE is missing and will be downloaded."
|
||||||
|
USE_LOCAL_SOURCE="false"
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $MAIN_SRC_DIR/source/overlay
|
||||||
|
|
||||||
|
if [ ! "$USE_LOCAL_SOURCE" = "true" ] ; then
|
||||||
|
# Downloading util-linux source bundle file. The '-c' option allows the download to resume.
|
||||||
|
echo "Downloading util-linux source bundle from $DOWNLOAD_URL"
|
||||||
|
wget -c $DOWNLOAD_URL
|
||||||
|
else
|
||||||
|
echo "Using local util-linux source bundle $MAIN_SRC_DIR/source/overlay/$ARCHIVE_FILE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Delete folder with previously extracted util-linux.
|
||||||
|
echo "Removing util-linux work area. This may take a while..."
|
||||||
|
rm -rf $WORK_DIR/overlay/util_linux
|
||||||
|
mkdir $WORK_DIR/overlay/util_linux
|
||||||
|
|
||||||
|
# Extract util-linux to folder 'work/overlay/util_linux'.
|
||||||
|
# Full path will be something like 'work/overlay/util_linux/util-linux-2.31'.
|
||||||
|
tar -xvf $ARCHIVE_FILE -C $WORK_DIR/overlay/util_linux
|
||||||
|
|
||||||
|
cd $SRC_DIR
|
||||||
|
|
50
src/minimal_overlay/bundles/util_linux/02_build.sh
Normal file
50
src/minimal_overlay/bundles/util_linux/02_build.sh
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
SRC_DIR=$(pwd)
|
||||||
|
|
||||||
|
. ../../common.sh
|
||||||
|
|
||||||
|
cd $WORK_DIR/overlay/util_linux
|
||||||
|
|
||||||
|
DESTDIR="$PWD/util_linux_installed"
|
||||||
|
|
||||||
|
# Change to the util-linux source directory which ls finds, e.g. 'util-linux-2.31'.
|
||||||
|
cd $(ls -d util-linux-*)
|
||||||
|
|
||||||
|
echo "Preparing util-linux work area. This may take a while..."
|
||||||
|
make -j $NUM_JOBS clean
|
||||||
|
|
||||||
|
rm -rf $DESTDIR
|
||||||
|
|
||||||
|
echo "Configuring util-linux..."
|
||||||
|
CFLAGS="$CFLAGS" ./configure \
|
||||||
|
ADJTIME_PATH=/var/lib/hwclock/adjtime \
|
||||||
|
--docdir=/usr/share/doc/util-linux-2.31 \
|
||||||
|
--disable-chfn-chsh \
|
||||||
|
--disable-login \
|
||||||
|
--disable-nologin \
|
||||||
|
--disable-su \
|
||||||
|
--disable-setpriv \
|
||||||
|
--disable-runuser \
|
||||||
|
--disable-pylibmount \
|
||||||
|
--disable-static \
|
||||||
|
--without-python \
|
||||||
|
--without-systemd \
|
||||||
|
--without-systemdsystemunitdir
|
||||||
|
|
||||||
|
echo "Building util-linux..."
|
||||||
|
make -j $NUM_JOBS
|
||||||
|
|
||||||
|
echo "Installing util-linux..."
|
||||||
|
make -j $NUM_JOBS install DESTDIR=$DESTDIR
|
||||||
|
|
||||||
|
echo "Reducing util-linux size..."
|
||||||
|
strip -g $DESTDIR/usr/bin/*
|
||||||
|
|
||||||
|
ROOTFS="$WORK_DIR/src/minimal_overlay/rootfs"
|
||||||
|
|
||||||
|
cp -r $DESTDIR/* $ROOTFS
|
||||||
|
|
||||||
|
echo "util-linux has been installed."
|
||||||
|
|
||||||
|
cd $SRC_DIR
|
9
src/minimal_overlay/bundles/util_linux/bundle.sh
Normal file
9
src/minimal_overlay/bundles/util_linux/bundle.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
SRC_DIR=$(pwd)
|
||||||
|
|
||||||
|
time sh 01_get.sh
|
||||||
|
time sh 02_build.sh
|
||||||
|
|
||||||
|
cd $SRC_DIR
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user