[20] | 1 | #!/bin/bash
|
---|
| 2 | #
|
---|
| 3 | # Creates RPMs packages from SVN repository for local tests
|
---|
[33] | 4 | #
|
---|
| 5 | # $Id: mkslack 537 2006-05-12 00:04:55Z bcornec $
|
---|
| 6 | #
|
---|
[20] | 7 |
|
---|
[157] | 8 | umask 022
|
---|
[33] | 9 | dname=`dirname $0`
|
---|
| 10 | prem=`echo $dname |cut -c1`
|
---|
| 11 | if [ ${prem} == "/" ]; then
|
---|
| 12 | export TOOLHOME=$dname
|
---|
| 13 | else
|
---|
| 14 | export TOOLHOME=${PWD}/$dname
|
---|
| 15 | fi
|
---|
[20] | 16 |
|
---|
[33] | 17 | . $TOOLHOME/rpm-env
|
---|
| 18 |
|
---|
[20] | 19 | if [ "$1" = "" ]; then
|
---|
| 20 | c="mindi mondo"
|
---|
| 21 | else
|
---|
| 22 | c=$1
|
---|
| 23 | fi
|
---|
[319] | 24 |
|
---|
| 25 | $TOOLHOME/mkcommon "$c"
|
---|
| 26 |
|
---|
[204] | 27 | if [ "`echo $c | grep mindi-kernel`" != "" ]; then
|
---|
[20] | 28 | cd ${BASE}/svn
|
---|
[204] | 29 | mkdir -p ${TOPDIR}/SOURCES
|
---|
[388] | 30 | $TOOLHOME/mkspec ${MINDI_VER} mindi-kernel-${MINDI_VER}/mindi-kernel.spec > ${TOPDIR}/SPECS/mindi-kernel.spec
|
---|
[424] | 31 | chmod 644 ${TOPDIR}/SPECS/mindi-kernel.spec
|
---|
[423] | 32 | pkg1="${TOPDIR}/RPMS/${ARCH}/mindi-kernel-${MINDI_VER}-${REVISION}${suf}.${ARCH}.rpm"
|
---|
| 33 | pkg="$pkg $pkg1"
|
---|
| 34 | rm -f $pkg1
|
---|
[204] | 35 | fi
|
---|
| 36 | if [ "`echo $c | grep -v kernel | grep mindi`" != "" ]; then
|
---|
| 37 | cd ${BASE}/svn
|
---|
[388] | 38 | $TOOLHOME/mkspec ${MINDI_VER} mindi-${MINDI_VER}/distributions/rpm/mindi.spec > ${TOPDIR}/SPECS/mindi.spec
|
---|
[424] | 39 | cat mindi-${MINDI_VER}/distributions/$dfam/changelog >> ${TOPDIR}/SPECS/mindi.spec
|
---|
| 40 | chmod 644 ${TOPDIR}/SPECS/mindi.spec
|
---|
[318] | 41 | rm -rf mindi-${MINDI_VER}/distributions
|
---|
[20] | 42 | mkdir -p ${TOPDIR}/SOURCES
|
---|
[318] | 43 |
|
---|
[423] | 44 | pkg1="${TOPDIR}/RPMS/${ARCH}/mindi-${MINDI_VER}-${REVISION}${suf}.${ARCH}.rpm"
|
---|
| 45 | pkg="$pkg $pkg1"
|
---|
| 46 | rm -f $pkg1
|
---|
[20] | 47 | # ATTENTION: This could be dangerous for your setup
|
---|
[204] | 48 | opt="rm -rf /usr/lib/mindi ;"
|
---|
[20] | 49 | fi
|
---|
| 50 | if [ "`echo $c | grep mondo`" != "" ]; then
|
---|
| 51 | cd ${BASE}/svn
|
---|
[388] | 52 | $TOOLHOME/mkspec ${MONDO_VER} mondo-${MONDO_VER}/distributions/rpm/mondo.spec > ${TOPDIR}/SPECS/mondo.spec
|
---|
[424] | 53 | cat mondo-${MONDO_VER}/distributions/$dfam/changelog >> ${TOPDIR}/SPECS/mondo.spec
|
---|
| 54 | chmod 644 ${TOPDIR}/SPECS/mondo.spec
|
---|
[318] | 55 | rm -rf mondo-${MONDO_VER}/distributions
|
---|
| 56 |
|
---|
[423] | 57 | pkg1="${TOPDIR}/RPMS/${ARCH}/mondo-${MONDO_VER}-${REVISION}${suf}.${ARCH}.rpm"
|
---|
| 58 | pkg="$pkg $pkg1"
|
---|
| 59 | rm -f $pkg1
|
---|
[20] | 60 | fi
|
---|
[319] | 61 |
|
---|
[20] | 62 | cd ${TOPDIR}/SPECS
|
---|
[318] | 63 | status=0
|
---|
[204] | 64 | if [ "`echo $c | grep kernel`" != "" ]; then
|
---|
[318] | 65 | echo "Generating mindi-kernel RPMS"
|
---|
| 66 | log=/tmp/mindi-kernel-rpm.log
|
---|
| 67 | rpmbuild -ba mindi-kernel.spec 2> $log 1> $log
|
---|
| 68 | if [ $? != 0 ]; then
|
---|
| 69 | cat $log
|
---|
| 70 | status=-1
|
---|
| 71 | fi
|
---|
[204] | 72 | fi
|
---|
| 73 | if [ "`echo $c | grep -v kernel | grep mindi`" != "" ]; then
|
---|
[318] | 74 | echo "Generating mindi RPMS"
|
---|
| 75 | log=/tmp/mindi-rpm.log
|
---|
| 76 | rpmbuild -ba mindi.spec 2> $log 1> $log
|
---|
| 77 | if [ $? != 0 ]; then
|
---|
| 78 | cat $log
|
---|
| 79 | status=-1
|
---|
| 80 | fi
|
---|
[20] | 81 | fi
|
---|
| 82 | if [ "`echo $c | grep mondo`" != "" ]; then
|
---|
[318] | 83 | echo "Generating mondo RPMS"
|
---|
| 84 | log=/tmp/mondo-rpm.log
|
---|
| 85 | rpmbuild -ba mondo.spec 2> $log 1> $log
|
---|
| 86 | if [ $? != 0 ]; then
|
---|
| 87 | cat $log
|
---|
| 88 | status=-1
|
---|
| 89 | fi
|
---|
[20] | 90 | fi
|
---|
[318] | 91 | if [ $status = 0 ]; then
|
---|
| 92 | echo "Installing RPMS as root ($pkg)"
|
---|
| 93 | su - -c "$opt rpm -Uvh --force $pkg"
|
---|
| 94 | fi
|
---|