libraries/dietlibc: Added (small libc implementation).
This commit is contained in:
parent
729a6e3b63
commit
d22501b876
|
@ -0,0 +1,2 @@
|
|||
dietlibc is a libc that is optimized for small size. It can be used to
|
||||
create small statically linked binaries for Linux on various platforms.
|
|
@ -0,0 +1,17 @@
|
|||
You can verify that dietlibc was successfully installed on your system
|
||||
by entering the following on a bash prompt, f.e.:
|
||||
|
||||
printf '#include <unistd.h>\nint main(){write(1,"hello\\n",6);}\n' >_tmp.c
|
||||
diet gcc -O2 -s _tmp.c
|
||||
./a.out
|
||||
|
||||
you should see "hello" printed on screen
|
||||
|
||||
"size a.out" entered on prompt should print something like like this:
|
||||
|
||||
text data bss dec hex filename
|
||||
679 8 40 727 2d7 a.out
|
||||
|
||||
Please note: You may get strange results on Slackware 13-64 multilib systems,
|
||||
(like $ARCH being ignored by dietlibc's make itself).
|
||||
Therefore it is recommended to build only on clean (64/32bit) installs.
|
|
@ -0,0 +1,89 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Slackware build script for dietlibc
|
||||
|
||||
# Copyright (c) 2010 Markus Reichelt, Aachen, DE
|
||||
# All rights reserved.
|
||||
#
|
||||
# Permission to use, copy, modify, and distribute this software for
|
||||
# any purpose with or without fee is hereby granted, provided that
|
||||
# the above copyright notice and this permission notice appear in all
|
||||
# copies.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 AUTHORS AND COPYRIGHT HOLDERS AND THEIR
|
||||
# CONTRIBUTORS 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.
|
||||
|
||||
PRGNAM=dietlibc
|
||||
VERSION=${VERSION:-0.32}
|
||||
ARCH=${ARCH:-i486}
|
||||
BUILD=${BUILD:-1}
|
||||
TAG=${TAG:-_SBo}
|
||||
|
||||
CWD=$(pwd)
|
||||
TMP=${TMP:-/tmp/SBo}
|
||||
PKG=$TMP/package-$PRGNAM
|
||||
OUTPUT=${OUTPUT:-/tmp}
|
||||
|
||||
if [ "$ARCH" = "i486" ]; then
|
||||
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
|
||||
LIBDIRSUFFIX=""
|
||||
elif [ "$ARCH" = "i686" ]; then
|
||||
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
|
||||
LIBDIRSUFFIX=""
|
||||
elif [ "$ARCH" = "x86_64" ]; then
|
||||
SLKCFLAGS="-O2 -fPIC"
|
||||
LIBDIRSUFFIX="64"
|
||||
else
|
||||
SLKCFLAGS="-O2"
|
||||
LIBDIRSUFFIX=""
|
||||
fi
|
||||
|
||||
set -e
|
||||
|
||||
rm -rf $PKG
|
||||
mkdir -p $TMP $PKG $OUTPUT
|
||||
cd $TMP
|
||||
rm -rf $PRGNAM-$VERSION
|
||||
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
|
||||
cd $PRGNAM-$VERSION
|
||||
chown -R root:root .
|
||||
chmod -R u+w,go+r-w,a-s .
|
||||
|
||||
make
|
||||
make install DESTDIR=$PKG
|
||||
|
||||
mkdir -p $PKG/etc/profile.d
|
||||
cat $CWD/profile.d/dietlibc.sh > $PKG/etc/profile.d/dietlibc.sh
|
||||
cat $CWD/profile.d/dietlibc.csh > $PKG/etc/profile.d/dietlibc.csh
|
||||
chmod 0755 $PKG/etc/profile.d/*
|
||||
|
||||
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
|
||||
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
|
||||
|
||||
( cd $PKG/opt/diet/man
|
||||
find . -type f -exec gzip -9 {} \;
|
||||
for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
|
||||
)
|
||||
|
||||
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cp -a \
|
||||
AUTHOR* BUGS* CAVEAT* CHANGES* COPYING* FAQ* PORTING* README* SECURITY* THANKS* TODO* \
|
||||
$PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
||||
cat $CWD/README.SLACKWARE > $PKG/usr/doc/$PRGNAM-$VERSION/README.SLACKWARE
|
||||
|
||||
mkdir -p $PKG/install
|
||||
cat $CWD/slack-desc > $PKG/install/slack-desc
|
||||
|
||||
cd $PKG
|
||||
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
|
|
@ -0,0 +1,10 @@
|
|||
PRGNAM="dietlibc"
|
||||
VERSION="0.32"
|
||||
HOMEPAGE="http://www.fefe.de/dietlibc/"
|
||||
DOWNLOAD="http://www.kernel.org/pub/linux/libs/dietlibc/dietlibc-0.32.tar.bz2"
|
||||
MD5SUM="0098761c17924c15e21d25acdda4a8b5"
|
||||
DOWNLOAD_x86_64=""
|
||||
MD5SUM_x86_64=""
|
||||
MAINTAINER="markus reichelt"
|
||||
EMAIL="slackbuilds@mareichelt.de"
|
||||
APPROVED="rworkman"
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/csh
|
||||
setenv PATH ${PATH}:/opt/diet/bin
|
||||
setenv MANPATH ${MANPATH}:/opt/diet/man
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/sh
|
||||
export PATH="${PATH}:/opt/diet/bin"
|
||||
export MANPATH="${MANPATH}:/opt/diet/man"
|
|
@ -0,0 +1,19 @@
|
|||
# HOW TO EDIT THIS FILE:
|
||||
# The "handy ruler" below makes it easier to edit a package description. Line
|
||||
# up the first '|' above the ':' following the base package name, and the '|'
|
||||
# on the right side marks the last column you can put a character in. You must
|
||||
# make exactly 11 lines for the formatting to be correct. It's also
|
||||
# customary to leave one space after the ':'.
|
||||
|
||||
|----------handy-ruler------------------------------------------------|
|
||||
dietlibc: diet libc (a libc optimized for small size)
|
||||
dietlibc:
|
||||
dietlibc: The diet libc is a libc that is optimized for small size.
|
||||
dietlibc: It can be used to create small statically linked binaries for Linux
|
||||
dietlibc: on various platforms (alpha, arm, hppa, ia64, i386, mips, s390,
|
||||
dietlibc: sparc, sparc64, ppc and x86_64). Originally written by Felix von
|
||||
dietlibc: Leitner, the latest version is available via anonymous CVS:
|
||||
dietlibc: $ cvs -d :pserver:cvs@cvs.fefe.de:/cvs -z9 co dietlibc
|
||||
dietlibc:
|
||||
dietlibc: Homepage: http://www.fefe.de/dietlibc/
|
||||
dietlibc:
|
Loading…
Reference in New Issue