From df9761bfb5051cb19b2f0223d2b1cd1395276d82 Mon Sep 17 00:00:00 2001 From: Vliegendehuiskat Date: Sun, 10 Oct 2010 02:05:27 -0500 Subject: libraries/avr-libc: Added (libc for programming on the AVR platform) Signed-off-by: Robby Workman --- libraries/avr-libc/README | 4 ++ libraries/avr-libc/avr-libc.SlackBuild | 125 +++++++++++++++++++++++++++++++++ libraries/avr-libc/avr-libc.info | 16 +++++ libraries/avr-libc/slack-desc | 19 +++++ 4 files changed, 164 insertions(+) create mode 100644 libraries/avr-libc/README create mode 100644 libraries/avr-libc/avr-libc.SlackBuild create mode 100644 libraries/avr-libc/avr-libc.info create mode 100644 libraries/avr-libc/slack-desc (limited to 'libraries/avr-libc') diff --git a/libraries/avr-libc/README b/libraries/avr-libc/README new file mode 100644 index 0000000000..946ba228f3 --- /dev/null +++ b/libraries/avr-libc/README @@ -0,0 +1,4 @@ +This package contains a high quality C library +for use with GCC on Atmel AVR microcontrollers. + +This requires avr-binutils and avr-gcc. diff --git a/libraries/avr-libc/avr-libc.SlackBuild b/libraries/avr-libc/avr-libc.SlackBuild new file mode 100644 index 0000000000..bcd84e4e5f --- /dev/null +++ b/libraries/avr-libc/avr-libc.SlackBuild @@ -0,0 +1,125 @@ +#!/bin/sh + +# Slackware build script for avr-libc + +# Written by Vliegendehuiskat +# E-mail: vliegendehuiskat [at] gmail [dot] com + +# avr-libc is licensed with a Modified BSD License. +# You can find a copy of this licence in the source tarball. + +# This script is released in the public domain. +# I am not responsible for any consequences that follow from the use +# of this script. + +PRGNAM=avr-libc +VERSION=${VERSION:-1.7.0} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +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 # Exit on most errors + +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 . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --host=avr \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/avr/man \ + --docdir=/usr/doc/$PRGNAM-$VERSION \ + --build=$ARCH-slackware-linux + +make +make install DESTDIR=$PKG + +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +mv $PKG/usr/share/doc $PKG/usr +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a \ + AUTHORS ChangeLog* INSTALL LICENSE NEWS README \ + $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild +rmdir $PKG/usr/share 2>/dev/null || true +# Symlink for /usr/bin/avr-man to work properly +( cd $PKG/usr/doc/$PRGNAM-$VERSION ; ln -s ../../avr/man man ) + +# Extract and compress manpages if they are present. +if [ -f $CWD/$PRGNAM-manpages-$VERSION.tar.bz2 ]; then + TMPWD=$(pwd) + cd $PKG/usr/avr + tar xvf $CWD/$PRGNAM-manpages-$VERSION.tar.bz2 + find ./man -type f -exec gzip -9 {} \; + for i in $( find ./man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done + chown -R root:root ./man + cd $TMPWD +fi + +# Extract the pdf-manual and add it to the package if it's present. +if [ -f $CWD/$PRGNAM-user-manual-$VERSION.pdf.bz2 ]; then + TMPWD=$(pwd) + cp $CWD/$PRGNAM-user-manual-$VERSION.pdf.bz2 $PKG/usr/doc/$PRGNAM-$VERSION + cd $PKG/usr/doc/$PRGNAM-$VERSION + bunzip2 $PRGNAM-user-manual-$VERSION.pdf.bz2 + tar xvf $CWD/$PRGNAM-user-manual-$VERSION.tar.bz2 + chown root:root *.pdf + cd $TMPWD +fi + +# Extract the html-manual and add it to the package if it's present. +if [ -f $CWD/$PRGNAM-user-manual-$VERSION.tar.bz2 ]; then + TMPWD=$(pwd) + cd $PKG/usr/doc/$PRGNAM-$VERSION + tar xvf $CWD/$PRGNAM-user-manual-$VERSION.tar.bz2 + chown -R root:root . + cd $TMPWD +fi + +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} diff --git a/libraries/avr-libc/avr-libc.info b/libraries/avr-libc/avr-libc.info new file mode 100644 index 0000000000..8ddd285757 --- /dev/null +++ b/libraries/avr-libc/avr-libc.info @@ -0,0 +1,16 @@ +PRGNAM="avr-libc" +VERSION="1.7.0" +HOMEPAGE="http://avr-libc.nongnu.org/" +DOWNLOAD="http://download.savannah.gnu.org/releases/avr-libc/avr-libc-1.7.0.tar.bz2 \ + http://download.savannah.gnu.org/releases/avr-libc/avr-libc-manpages-1.7.0.tar.bz2 \ + http://download.savannah.gnu.org/releases/avr-libc/avr-libc-user-manual-1.7.0.pdf.bz2 \ + http://download.savannah.gnu.org/releases/avr-libc/avr-libc-user-manual-1.7.0.tar.bz2" +MD5SUM="3eff7b779bd950400cb0a45f3c2fb377 \ + 83512f560ce9d16879f0828c72c2837a \ + e00fdace4335980ccdc863528f472613 \ + 9a7c1dc4b4f318edada0a42f46884b5e" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +MAINTAINER="Vliegendehuiskat" +EMAIL="vliegendehuiskat [at] gmail [dot] com" +APPROVED="rworkman" diff --git a/libraries/avr-libc/slack-desc b/libraries/avr-libc/slack-desc new file mode 100644 index 0000000000..6d5b700104 --- /dev/null +++ b/libraries/avr-libc/slack-desc @@ -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-----------------------------------------------------| +avr-libc: avr-libc (C library for programming on the AVR platform) +avr-libc: +avr-libc: This package contains a high quality C library +avr-libc: for use with GCC on Atmel AVR microcontrollers. +avr-libc: +avr-libc: +avr-libc: +avr-libc: +avr-libc: +avr-libc: +avr-libc: -- cgit v1.2.3