#!/bin/sh # Built on TCL v3.3 # Required extensions: # compiletc # binutils # base-dev # bison # diffutils # file # findutils # flex # gawk # gcc # gcc_libs # cloog # ppl # gmp # mpfr # gperf # grep # m4 # make # patch # pkg-config # sed # squashfs-tools-4.x # tar getTime.sh installExtension() { if [ ! -e /usr/local/tce.installed/$1 ]; then echo "Installing "$1" ..." if [ -e $TCEDIR/optional/$1.tcz ]; then tce-load -i $1 else tce-load -wi $1 fi [ ! -e /usr/local/tce.installed/$1 ] && echo "Error: Extension "$1" not installed! Aborting" && exit fi } # Install these extensions automagically export EXTS="compiletc squashfs-tools-4.x tar" export TCEDIR=`cat /opt/.tcedir` export CFLAGS="-march=i486 -mtune=i686 -Os -pipe" export CXXFLAGS=$CFLAGS" -fno-exceptions -fno-rtti" export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig export EXTNAME="libgdbm" export VER="-1.8.3" export DESTDIR=`pwd`/$EXTNAME export PKGNAME="gdbm"$VER export INSTALL_ROOT=$DESTDIR for f in $EXTS; do installExtension $f done #unpack source if [ -e $PKGNAME.tar.bz2 ]; then tar -jxf $PKGNAME.tar.bz2 elif [ -e $PKGNAME.tb2 ]; then tar -jxf $PKGNAME.tb2 elif [ -e $PKGNAME.tbz ]; then tar -jxf $PKGNAME.tbz elif [ -e $PKGNAME.tar.gz ]; then tar -zxf $PKGNAME.tar.gz elif [ -e $PKGNAME.tgz ]; then tar -zxf $PKGNAME.tgz elif [ -e $PKGNAME.tar.xz ]; then tar -Jxf $PKGNAME.tar.xz elif [ -e $PKGNAME.txz ]; then tar -Jxf $PKGNAME.txz elif [ -e $PKGNAME.tar.lzma ]; then tar -xf $PKGNAME.tar.lzma --lzma elif [ -e $PKGNAME.tlz ]; then tar -xf $PKGNAME.tlz --lzma else echo "Source tarball not found! Aborting" && exit fi cd $PKGNAME # configure, compile, install ./configure # fix bug in Makefile sed -i 's!^BINOWN =.*$!BINOWN = tc!' Makefile sed -i 's!^BINGRP =.*$!BINGRP = staff!' Makefile make && make install && make install-compat || exit mkdir -p $DESTDIR-dev/usr/local/lib cd $DESTDIR sudo strip -g usr/local/lib/* mv usr/local/include $DESTDIR-dev/usr/local mv usr/local/lib/pkgconfig $DESTDIR-dev/usr/local/lib mv usr/local/lib/*a $DESTDIR-dev/usr/local/lib rm -rf usr/local/info rm -rf usr/local/man find usr -not -type d > ../$EXTNAME.tcz.list cd $DESTDIR-dev find usr -not -type d > ../$EXTNAME-dev.tcz.list cd .. mksquashfs $EXTNAME $EXTNAME.tcz -noappend md5sum $EXTNAME.tcz > $EXTNAME.tcz.md5.txt mksquashfs $EXTNAME-dev $EXTNAME-dev.tcz -noappend md5sum $EXTNAME-dev.tcz > $EXTNAME-dev.tcz.md5.txt rm -rf $EXTNAME $EXTNAME-dev $PKGNAME