/[smeserver]/builds_bin/locale-patch
ViewVC logotype

Diff of /builds_bin/locale-patch

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

Revision 1.1 by slords, Thu Mar 5 21:41:33 2009 UTC Revision 1.2 by slords, Thu Mar 4 18:16:04 2010 UTC
# Line 1  Line 1 
1  #!/bin/bash  #!/bin/bash
2    
3  for newpatch in /var/www/html/patches/*.patch  export CVS_RSH=ssh
4  do  
5      [ ! -s "$newpatch" ] && continue  rm -rf /var/lib/pootle/cvs/patch/*
6      pkg=$(basename $newpatch | sed 's,-[0-9.]\+-locale-[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}.patch,,')  cd /var/lib/pootle/cvs/patch
     chglog=$(basename $newpatch | sed "s,$pkg-[0-9.]\+-locale-,locale ,;s,\.patch, patch,")  
     spec=$(ls /etc/pootle/cvs/sme*/$pkg/*7/*.spec)  
7    
8      source=$(sed -n 's,^\(Source[0-9]*:\).*,\1,ip' $spec | tail -1)  #newpatch=/var/www/html/patches/smeserver-sme7admin-1.1.1-locale-2009-03-05.patch
9      patch=$(sed -n 's,^\(Patch[0-9]*:\).*,\1,ip' $spec | tail -1)  ls /var/www/html/patches/*/*.patch | cut -d/ --output-delimiter " " -f6,7 | while read ver newpatch
10      [ -z "$patch" ] && pnum="1" || pnum=$(echo $patch | perl -pe 's,^Patch([0-9]*):,$1+1,ie')  do
11      [ -z "$patch" ] && insert2="%setup" || insert2=$(echo $patch | perl -pe 's,^(Patch[0-9]*):,"%".lc($1),ie')      [ ! -s "/var/www/html/patches/$ver/$newpatch" ] && continue
12      insert1=${patch:=$source}      pkg=$(echo $newpatch | sed 's,-[0-9.]\+-locale-[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}.patch,,')
13        chglog=$(echo $newpatch | sed "s,$pkg-[0-9.]\+-locale-,locale ,;s,\.patch, patch,")
14        
15        if [ ! -d "$pkg" ]
16        then
17            if echo $ver | grep -q contribs
18            then
19                cvs -Q -z3 -d:ext:smecontribs.cvs.sourceforge.net:/cvsroot/smecontribs co -P $pkg
20            else
21                cvs -Q -z3 -d:ext:smeserver.cvs.sourceforge.net:/cvsroot/smeserver co -P $pkg
22            fi
23        fi
24        spec=$(ls $pkg/$ver/*.spec 2> /dev/null)
25        if [ ! -z "$spec" ]
26        then
27            source=$(sed -n 's,^\(Source[0-9]*:\).*,\1,ip' $spec | tail -1)
28            patch=$(sed -n 's,^\(Patch[0-9]*:\).*,\1,ip' $spec | tail -1)
29            [ -z "$patch" ] && pnum="1" || pnum=$(echo $patch | perl -pe 's,^Patch([0-9]*):,$1+1,ie')
30            [ -z "$patch" ] && insert2="%setup" || insert2=$(echo $patch | perl -pe 's,^(Patch[0-9]*):,"%".lc($1),ie')
31            insert1=${patch:=$source}
32    
33      perl -i -pe 's,^(%define\s+release\s+)([0-9]+)\s*,"$1".($2+1)."\n",ie;s,^(Release:\s+)([0-9]+)(%{\?dist})\s*,"$1".($2+1)."$3\n",ie;' $spec          perl -i -pe 's,^(%define\s+release\s+)([0-9]+)\s*,"$1".($2+1)."\n",ie;s,^(Release:\s+)([0-9]+)(%{\?dist})\s*,"$1".($2+1)."$3\n",ie;' $spec
34      verrel=$(rpm -q -D 'dist .sme' --qf '%{VERSION}-%{RELEASE}\n' --specfile $spec | head -1)          verrel=$(rpm -q -D 'dist .sme' --qf '%{VERSION}-%{RELEASE}\n' --specfile $spec | head -1)
35      sed -i "/^$insert1/aPatch$pnum: $(basename $newpatch)" $spec          sed -i "/^$insert1/aPatch$pnum: $(basename $newpatch)" $spec
36      sed -i "/^$insert2\b/a%patch$pnum -p1" $spec          sed -i "/^$insert2\b/a%patch$pnum -p1" $spec
37      sed -i "/^%changelog/a* $(date +'%a %b %d %G') SME Translation Server <translations@contribs.org> $verrel\n- apply $chglog\n" $spec          sed -i "/^%changelog/a* $(date +'%a %b %d %G') SME Translation Server <translations@contribs.org> $verrel\n- apply $chglog\n" $spec
38      cp $newpatch $(dirname $spec)          cp /var/www/html/patches/$ver/$newpatch $(dirname $spec)
39      cd $(dirname $spec)          pushd $(dirname $spec) > /dev/null
40      cvs add $(basename $newpatch)          cvs -Q add $(basename $newpatch)
41            [ "$1" == "commit" ] && make commit tag > /dev/null
42            popd > /dev/null
43        fi
44  done  done
45    


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed