3 changed files with 121 additions and 0 deletions
@ -0,0 +1,12 @@
|
||||
|-----handy-ruler-----------------------------------------------------| |
||||
tini: tini (a tiny init for containers) |
||||
tini: |
||||
tini: Tini is the simplest init you could think of. All Tini does is |
||||
tini: spawn a single child (Tini is meant to be run in a container), and |
||||
tini: wait for it to exit all the while reaping zombies and performing |
||||
tini: signal forwarding. |
||||
tini: |
||||
tini: |
||||
tini: |
||||
tini: |
||||
tini: |
@ -0,0 +1 @@
|
||||
0fd35a7030052acd9f58948d1d900fe1e432ee37103c5561554408bdac6bbf0d tini-0.19.0.tar.gz |
@ -0,0 +1,108 @@
|
||||
#!/bin/bash |
||||
# Build script for Slackware |
||||
# Copyright (C) 2021 Damien Goutte-Gattat |
||||
# |
||||
# Redistribution and use of this script, with or without modifications, |
||||
# is permitted provided that the following conditions are met: |
||||
# |
||||
# 1. Redistributions of this script must retain the above copyright |
||||
# notice, this list of conditions and the following disclaimer. |
||||
# |
||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AS IS'' AND ANY EXPRESS OR |
||||
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
||||
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
||||
# DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, |
||||
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
||||
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
||||
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
||||
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, |
||||
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING |
||||
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
||||
# POSSIBILITY OF SUCH DAMAGE. |
||||
# |
||||
# Contact: Damien Goutte-Gattat <dgouttegattat@incenp.org> |
||||
# |
||||
# Latest tini sourcecode is available at: <https://github.com/krallin/tini>. |
||||
|
||||
# Source package infos |
||||
NAMESRC=${NAMESRC:-tini} |
||||
VERSION=${VERSION:-0.19.0} |
||||
ARCHIVE=${ARCHIVE:-$NAMESRC-$VERSION.tar.gz} |
||||
WGET=${WGET:-https://github.com/krallin/tini/archive/v$VERSION/$ARCHIVE} |
||||
|
||||
# Build infos |
||||
NAMEPKG=${NAMEPKG:-tini} |
||||
BUILD=${BUILD:-1GGD} |
||||
ARCH=${ARCH:-$(uname -m | sed 's/^i.86$/i486/;s/^arm.*/arm/')} |
||||
JOBS=${JOBS:-1} |
||||
EXT=${EXT:-txz} |
||||
|
||||
# Directories |
||||
TMP=${TMP:-/tmp} |
||||
OUT=${OUT:-$TMP/build} |
||||
PKG=${PKG:-$OUT/$NAMEPKG} |
||||
CWD=$(pwd) |
||||
|
||||
set -e # Quit if a command returns non-zero |
||||
|
||||
# Compilation flags |
||||
LIBDIRSUFFIX="" |
||||
case "$ARCH" in |
||||
i?86) |
||||
CPUOPT="-O2 -march=$ARCH -mtune=i686" |
||||
;; |
||||
x86_64) |
||||
CPUOPT="-O2 -fPIC" |
||||
LIBDIRSUFFIX="64" |
||||
;; |
||||
*) |
||||
CPUOPT="-O2" |
||||
;; |
||||
esac |
||||
|
||||
# Get and verify the source archive |
||||
if [ ! -r $ARCHIVE ]; then |
||||
wget -c -O $ARCHIVE.part "$WGET" |
||||
mv $ARCHIVE.part $ARCHIVE |
||||
fi |
||||
sha256sum -c $ARCHIVE.sha256 |
||||
NAME=$(tar ft $ARCHIVE | head -n 1 | cut -d / -f 1) |
||||
|
||||
# Compile |
||||
cd $TMP |
||||
echo "Building $ARCHIVE..." |
||||
tar xf $CWD/$ARCHIVE |
||||
cd $NAME |
||||
mkdir build && cd build |
||||
cmake \ |
||||
-DCMAKE_C_FLAGS:STRING="$CPUOPT" \ |
||||
-DCMAKE_CXX_FLAGS:STRING="$CPUOPT" \ |
||||
-DCMAKE_INSTALL_PREFIX=/usr \ |
||||
-DCMAKE_BUILD_TYPE=Release \ |
||||
-DPR_SET_CHILD_SUBREAPER=36 \ |
||||
-DPR_GET_CHILD_SUBREAPER=37 \ |
||||
.. |
||||
make -j $JOBS |
||||
make install/strip DESTDIR=$PKG |
||||
|
||||
# Install the documentation |
||||
mkdir -p $PKG/usr/doc/$NAME |
||||
install -m 644 ../LICENSE ../README.md $PKG/usr/doc/$NAME |
||||
|
||||
# Copy slack-desc file |
||||
install -D -m 644 $CWD/slack-desc $PKG/install/slack-desc |
||||
|
||||
# Package the tree |
||||
cd $PKG |
||||
mkdir -p $OUT |
||||
PACKAGING=" |
||||
chown root:root . -R |
||||
/sbin/makepkg -l y -c n $OUT/$NAMEPKG-$VERSION-$ARCH-$BUILD.$EXT |
||||
rm -rf $PKG |
||||
rm -rf $TMP/$NAME |
||||
" |
||||
if type -p fakeroot ; then |
||||
echo "$PACKAGING" | fakeroot |
||||
else |
||||
su -c "$PACKAGING" |
||||
fi |
Loading…
Reference in new issue