#!/bin/bash # . /etc/init.d/tc-functions HERE=`pwd` NAME="libxml2" PKGNAME="$NAME" VER=2.9.0 PKGDIR=/mnt/sda3/"$PKGNAME"/package PKG="$PKGDIR"/pkg DOC="$PKGDIR"/doc DEV="$PKGDIR"/dev BIN="$PKGDIR"/bin TCEDIR="`readlink /etc/sysconfig/tcedir`/optional" DEPS="compiletc.tcz \ bash.tcz \ expat2.tcz" for I in `echo "$DEPS"`; do DEPNAME=`basename "$I" .tcz` if [ ! -f /usr/local/tce.installed/"$DEPNAME" ]; then if [ -f "$TCEDIR"/"$I" ]; then if su tc -c "tce-load -i "$I""; then echo "${YELLOW}"$I" loaded locally${NORMAL}" else echo "${RED}"$I" failed to load, exiting..${NORMAL}" exit 1 fi else if su tc -c "tce-load -iw "$I""; then echo "${YELLOW}"$I" loaded from repo${NORMAL}" else echo "${RED}"$I" failed to load, exiting..${NORMAL}" exit 1 fi fi fi done [ -d "$PKGDIR"/pkg ] && rm -r "$PKGDIR"/pkg [ -d "$PKGDIR"/dev ] && rm -r "$PKGDIR"/dev [ -d "$PKGDIR"/bin ] && rm -r "$PKGDIR"/bin [ -d "$PKGDIR"/doc ] && rm -r "$PKGDIR"/doc rm "$PKGDIR"/*.tcz{.md5.txt,.list,.zsync} > /dev/null 2>&1 mkdir -p "$PKGDIR"/{pkg/usr/local/tce.installed,bin,dev,doc/usr/local/share} [ -d "$NAME"-"$VER" ] && rm -r "$NAME"-"$VER" tar xvf "$NAME"-"$VER".tar.xz cd "$NAME"-"$VER" ./configure --prefix=/usr/local --with-threads --with-history || exit 1 sleep 3 make || exit 1 make install DESTDIR="$PKG" || exit 1 if [ -d "$PKG"/usr/local/share/man ]; then mkdir -p "$DOC"/usr/local/share mv "$PKG"/usr/local/share/man "$DOC"/usr/local/share fi if [ -d "$PKG"/usr/local/share/gtk-doc ]; then mkdir -p "$DOC"/usr/local/share mv "$PKG"/usr/local/share/gtk-doc "$DOC"/usr/local/share fi mkdir -p "$BIN"/usr/local mv "$PKG"/usr/local/bin "$BIN"/usr/local/ cd "$PKG" find . | xargs file | grep "executable" | grep ELF | grep "not stripped" | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . | xargs file | grep "shared object" | grep ELF | grep "not stripped" | cut -f 1 -d : | xargs strip -g 2> /dev/null for I in $(find `ls` -name *.h); do export DIR=`dirname "$I"`; [ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; mv "$I" ../dev/"$DIR"/; done for I in $(find `ls` -name *.a); do export DIR=`dirname "$I"`; [ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; mv "$I" ../dev/"$DIR"/; done for I in $(find `ls` -name *.la); do export DIR=`dirname "$I"`; [ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; mv "$I" ../dev/"$DIR"/; done for I in $(find `ls` -name *.pc); do export DIR=`dirname "$I"`; [ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; mv "$I" ../dev/"$DIR"/; done for I in $(find `ls` -name *.mo); do export DIR=`dirname "$I"`; [ -d ../loc/"$DIR" ] || mkdir -p ../loc/"$DIR"; mv "$I" ../loc/"$DIR"/; done for I in $(find `ls` -name *.m4); do export DIR=`dirname "$I"`; [ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; mv "$I" ../dev/"$DIR"/; done for I in $(find `ls` -name *.c); do export DIR=`dirname "$I"`; [ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; mv "$I" ../dev/"$DIR"/; done for I in $(find `ls` -name *Makefile*); do export DIR=`dirname "$I"`; [ -d ../dev/"$DIR" ] || mkdir -p ../dev/"$DIR"; mv "$I" ../dev/"$DIR"/; done find . -type d | sort -r | xargs rmdir cd "$PKGDIR" #mksquashfs pkg/ "$PKGNAME".tcz -noappend #mksquashfs bin/ "$PKGNAME"-bin.tcz -noappend #mksquashfs dev/ "$PKGNAME"-dev.tcz -noappend #mksquashfs doc/ "$PKGNAME"-doc.tcz -noappend submitqc4