[17] | 1 | #!/bin/bash
|
---|
| 2 | #
|
---|
| 3 | # Creates RPMs packages from SVN repository for local tests
|
---|
| 4 |
|
---|
| 5 | # Adapt to your needs
|
---|
| 6 | BASE=/bruno/mondo
|
---|
| 7 | # Look at opt below if this is dangerous for you or not.
|
---|
| 8 |
|
---|
| 9 | # Should not be modified below
|
---|
| 10 | VER=trunk
|
---|
| 11 | pkg=""
|
---|
| 12 | opt=""
|
---|
| 13 | ARCH=`/bin/arch`
|
---|
| 14 |
|
---|
| 15 | mkdir -p ${BASE}/RPMS
|
---|
[18] | 16 | TMP=${BASE}/tmp
|
---|
| 17 | mkdir -p ${TMP}
|
---|
| 18 | if [ -f ${HOME}/.rpmmacros ]; then
|
---|
| 19 | TOPDIR=`grep _topdir ${HOME}/.rpmmacros | awk '{print $2}'`
|
---|
| 20 | else
|
---|
| 21 | TOPDIR=${BASE}/RPMS
|
---|
| 22 | fi
|
---|
| 23 | cd ${TOPDIR}
|
---|
[17] | 24 | mkdir -p RPMS SRPMS SPECS SOURCES BUILD
|
---|
| 25 |
|
---|
| 26 | if [ "$1" = "" ]; then
|
---|
| 27 | c="mindi mondo"
|
---|
| 28 | else
|
---|
| 29 | c=$1
|
---|
| 30 | fi
|
---|
| 31 | if [ "`echo $c | grep mindi`" != "" ]; then
|
---|
[18] | 32 | cd ${BASE}/svn
|
---|
| 33 | MINDI_VER=`cat ${VER}/mindi/mindi.spec | egrep '^Version:' | cut -d: -f2 | sed "s/[ ]*//"`
|
---|
| 34 | echo "Management of mindi ${MINDI_VER}"
|
---|
[17] | 35 | rm -fr mindi-${MINDI_VER}
|
---|
[18] | 36 | cp -a ${VER}/mindi mindi-${MINDI_VER}
|
---|
[17] | 37 | find mindi-${MINDI_VER} -type d -name .svn | xargs rm -rf
|
---|
| 38 | find mindi-${MINDI_VER} -type f -name '.*.swp' | xargs rm -rf
|
---|
| 39 | rm -f mindi-${MINDI_VER}/parted2fdisk mindi-${MINDI_VER}/parted2fdisk.c mindi-${MINDI_VER}/rootfs/sbin/parted2fdisk-ia64
|
---|
[18] | 40 | mkdir -p ${TOPDIR}/SOURCES
|
---|
| 41 | tar cvfhz ${TOPDIR}/SOURCES/mindi-${MINDI_VER}.tgz mindi-${MINDI_VER}
|
---|
| 42 | cp mindi-${MINDI_VER}/mindi.spec ${TOPDIR}/SPECS/mindi.spec
|
---|
| 43 | rm -f ${TMP}/mindi-*-root
|
---|
| 44 | pkg="$pkg ${TOPDIR}/RPMS/${ARCH}/mindi-${MINDI_VER}-1.${ARCH}.rpm"
|
---|
[17] | 45 | # ATTENTION: This could be dangerous for your setup
|
---|
| 46 | opt="rm -rf /usr/share/mindi ;"
|
---|
| 47 | fi
|
---|
| 48 | if [ "`echo $c | grep mondo`" != "" ]; then
|
---|
[18] | 49 | cd ${BASE}/svn
|
---|
| 50 | MONDO_VER=`cat ${VER}/mondo/mondo.spec | egrep '^Version:' | cut -d: -f2 | sed "s/[ ]*//"`
|
---|
[17] | 51 | rm -rf mondo-${MONDO_VER}
|
---|
[18] | 52 | cp -a ${VER}/mondo mondo-${MONDO_VER}
|
---|
[17] | 53 | cd mondo-${MONDO_VER}
|
---|
| 54 | echo "Bootstraping mondo ... "
|
---|
| 55 | ./bootstrap
|
---|
| 56 | find . -type d -name .svn | xargs rm -rf
|
---|
| 57 | find . -type f -name '.*.swp' | xargs rm -rf
|
---|
| 58 | cd ..
|
---|
[18] | 59 | tar cvfhz ${TOPDIR}/SOURCES/mondo-${MONDO_VER}.tgz mondo-${MONDO_VER}
|
---|
| 60 | cp mondo-${MONDO_VER}/mondo.spec ${TOPDIR}/SPECS/mondo.spec
|
---|
| 61 | rm -f ${TMP}/mondo-*-root
|
---|
| 62 | pkg="$pkg ${TOPDIR}/RPMS/${ARCH}/mondo-${MONDO_VER}-1.${ARCH}.rpm"
|
---|
[17] | 63 | fi
|
---|
[18] | 64 | cd ${TOPDIR}/SPECS
|
---|
[17] | 65 | if [ "`echo $c | grep mindi`" != "" ]; then
|
---|
| 66 | rpmbuild -ba mindi.spec
|
---|
| 67 | fi
|
---|
| 68 | if [ "`echo $c | grep mondo`" != "" ]; then
|
---|
| 69 | rpmbuild -ba --without xmondo mondo.spec
|
---|
| 70 | fi
|
---|
| 71 | su - -c "$opt rpm -Uvh --force $pkg"
|
---|