#!/bin/bash # # Prepare source packages from SVN repository as a tar file # Also prepare the documentation which is common as a separate tar files # # $Id: svn2tar 549 2006-05-13 23:42:49Z bcornec $ # umask 022 dname=`dirname $0` prem=`echo $dname |cut -c1` if [ ${prem} == "/" ]; then export TOOLHOME=$dname else export TOOLHOME=${PWD}/$dname fi cd $TOOLHOME . ./common-env . ./svn-env mkdir -p ${TOPDIR}/SOURCES if [ "$1" = "" ]; then c="mondo-doc mindi mondo" else if [ "$1" = "all" ]; then c="mindi-kernel mondo-doc mindi mondo" else c=$1 fi fi cd ${BASE}/svn for p in $c; do v=`cat ${SVNBRANCH}/$p/VERSION` echo "Management of $p $v-$REVISION" rm -fr $p-$v svn export ${SVNBRANCH}/$p $p-$v echo "$REVISION" > $p-$v/REVISION echo "Generating SVN log file ..." svn log -v ${SVNBRANCH}/$p > $p-$v/svn.log if [ _"`echo $p | grep mondo-doc`" != _"" ]; then cd ${p}-${v} $TOOLHOME/expandver mondorescue-howto.sgml *8 make -f Makefile.howto if [ $? != 0 ]; then exit -1 fi make -f Makefile.man if [ $? != 0 ]; then exit -1 fi cd .. fi if [ _"`echo $p | grep -v kernel | grep mindi`" != _"" ]; then v1=`cat ${SVNBRANCH}/mondo-doc/VERSION` if [ ! -d mondo-doc-$v1 ]; then echo "mondo-doc should be created before $p" exit -1 fi (cd mondo-doc-$v1 ; make -f Makefile.man install-$p INSTALLDIR=../$p-$v) rm -f $p-$v/rootfs/sbin/parted2fdisk-ia64 fi if [ "`echo $p | grep -v doc | grep mondo`" != "" ]; then v1=`cat ${SVNBRANCH}/mondo-doc/VERSION` if [ ! -d mondo-doc-$v1 ]; then echo "mondo-doc should be created before $p" exit -1 fi (cd mondo-doc-$v1 ; make -f Makefile.howto install INSTALLDIR=../$p-$v/docs/en ; make -f Makefile.man install-$p INSTALLDIR=../$p-$v/docs/man) (cd $p-$v ; echo "Bootstraping mondo ... " ; ./bootstrap) fi # Finally creates the tar files echo "Creating $p tar files" tar cfhz ${TOPDIR}/SOURCES/$p-$v-$TAG.tgz $p-$v tar cfhj ${TOPDIR}/SOURCES/$p-$v-$TAG.tar.bz2 $p-$v done