#!/bin/sh #scripot by kingdomcome modified by jls_legalize . /etc/init.d/tc-functions checkroot export CFLAGS="-march=i486 -mtune=i686 -Os -pipe" export CXXFLAGS="-march=i486 -mtune=i686 -Os -pipe" export LDFLAGS="-Wl,-O1" TODAY=`date +%Y/%m/%d` PACKAGE="pycairo-2.7" SEP="-" VERSION="1.10.0" MIRROR="http://www.cairographics.org/releases/" DESCRIPTION="Python bindings for cairo" AUTHORS="The GNOME Project" HOMEPAGE="http://www.cairographics.org/pycairo" LICENSE="GPLv2" ME="jls_legalize (unsenepopiu at tin dot it)" DEPS="cairo.tcz python.tcz" BUILDDEPS="cairo-dev.tcz \ glib2-dev.tcz \ python-dev.tcz \ Xorg-7.6-dev.tcz" FLAGS="--prefix=/usr/local" DOCS="" TCUSER=`cat /etc/sysconfig/tcuser` SRC="py2cairo${SEP}${VERSION}.tar.bz2" THISDIR=`pwd` PKGDIR="${THISDIR}/${PACKAGE}" SRCDIR="${PKGDIR}/py2cairo${SEP}${VERSION}" TCEDIR="$(cat /opt/.tce_dir)" clean(){ rm -rf ${THISDIR}/${PACKAGE} } environment(){ for each in compiletc.tcz ${DEPS} ${BUILDDEPS}; do APPNAME=$(getbasefile "$each" 1) if [ ! -f /usr/local/tce.installed/"${APPNAME}" ]; then if [ ! -e ${TCEDIR}/optional/${each} ]; then sudo -u ${TCUSER} tce-load -w ${each} fi sudo -u ${TCUSER} tce-load -i ${TCEDIR}/optional/${each} fi done [ -d "${PKGDIR}" ] && rm -rf ${PKGDIR} sudo -u tc mkdir -p ${PKGDIR}/tmp cd ${PKGDIR} && wget ${MIRROR}${SRC} tar xjf ${SRC} getMirror busybox wget "$MIRROR/$PACKAGE.tcz.info" busybox wget "$MIRROR/$PACKAGE-dev.tcz.info" } buildit(){ echo ${SRCDIR} cd ${SRCDIR} #make clean ./waf configure ${FLAGS} || exit 1 echo -n "Press Enter key." read gagme ./waf build || exit 1 echo -n "Press Enter key." read gagme ./waf install --destdir ${PKGDIR}/tmp || exit 1 } workit(){ cd ${PKGDIR}/tmp rm -rf ${DOCS} #chmod 755 usr/local/bin/pygobject-codegen-2.0 mkdir -p usr/local/share/doc/License cp ${SRCDIR}/COPYING usr/local/share/doc/License/${PACKAGE}.txt find usr/ | xargs file | grep "executable" | grep ELF | grep "not stripped" | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find usr/ | xargs file | grep "shared object" | grep ELF | grep "not stripped" | cut -f 1 -d : | xargs strip -g 2> /dev/null #dev 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 } packageit(){ if [ ! -f /usr/local/tce.installed/squashfs-tools-4.x ]; then if [ ! -e ${TCEDIR}/optional/squashfs-tools-4.x.tcz ]; then sudo -u ${TCUSER} tce-load -w squashfs-tools-4.x.tcz fi su ${TCUSER} -c "tce-load -is squashfs-tools-4.x.tcz" fi cd ${PKGDIR}/tmp for dir in `ls -A`; do find ${dir} -not -type d | sort >> ../${PACKAGE}.tcz.list done mksquashfs . ../${PACKAGE}.tcz cd ${PKGDIR} md5sum ${PACKAGE}.tcz > ${PACKAGE}.tcz.md5.txt for each in ${DEPS}; do echo ${each} >> ${PACKAGE}.tcz.dep; done size=`du -h ${PACKAGE}.tcz | cut -f 1` sed -i "s/Version:.*/Version: ${VERSION}/" ${PACKAGE}.tcz.info sed -i "s/Size:.*/Size: ${size}/" ${PACKAGE}.tcz.info sed -i "s/Current:/ /" $PACKAGE.tcz.info echo "Current: ${TODAY} Updated to ${VERSION}" >> $PACKAGE.tcz.info #dev cd ${PKGDIR}/dev for dir in `ls -A`; do find ${dir} -not -type d | sort >> ../${PACKAGE}-dev.tcz.list done mksquashfs . ../${PACKAGE}-dev.tcz cd ${PKGDIR} md5sum ${PACKAGE}-dev.tcz > ${PACKAGE}-dev.tcz.md5.txt echo ${PACKAGE}.tcz > ${PACKAGE}-dev.tcz.dep for each in ${BUILDDEPS}; do echo ${each} >> ${PACKAGE}-dev.tcz.dep; done size=`du -h ${PACKAGE}-dev.tcz | cut -f 1` sed -i "s/Version:.*/Version: ${VERSION}/" ${PACKAGE}-dev.tcz.info sed -i "s/Size:.*/Size: ${size}/" ${PACKAGE}-dev.tcz.info sed -i "s/Current:/ /" $PACKAGE-dev.tcz.info echo "Current: ${TODAY} Updated to ${VERSION}" >> $PACKAGE-dev.tcz.info } checkit(){ sudo chown ${TCUSER}:staff ${THISDIR} cd ${PKGDIR} if [ ! -f /usr/local/tce.installed/submitqc4 ]; then if [ ! -e ${TCEDIR}/optional/submitqc4 ]; then sudo -u ${TCUSER} tce-load -w submitqc4 fi su ${TCUSER} -c "tce-load -is submitqc4" fi submitqc4 } tarit(){ cd ${PKGDIR} [ -f ../${PACKAGE}$SEP$VERSION.tar.xz ] && rm ../${PACKAGE}$SEP$VERSION.tar.xz cp ../${PACKAGE}.tcbuild . if [ ! -f /usr/local/tce.installed/xz ]; then if [ ! -e ${TCEDIR}/optional/xz ]; then sudo -u ${TCUSER} tce-load -w xz fi su ${TCUSER} -c "tce-load -is xz" fi tar cvf ../${PACKAGE}$SEP$VERSION.tar \ ${PACKAGE}.tcz* \ ${PACKAGE}-dev.tcz* \ ${PACKAGE}.tcbuild cd ${THISDIR} xz ${PACKAGE}$SEP$VERSION.tar } #here we go clean environment echo -n "Press Enter key." read gagme buildit echo -n "Press Enter key." read gagme workit echo -n "Press Enter key." read gagme packageit echo -n "Press Enter key." read gagme checkit tarit