/[CCFs]/bin/buildagain
ViewVC logotype

Annotation of /bin/buildagain

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.10 - (hide annotations)
Fri Nov 11 16:37:07 2005 UTC (19 years ago) by ccflib
Branch: MAIN
Changes since 1.9: +32 -1 lines
added the part of acceptbuild

1 ccflib 1.1 #! /usr/local/bin/bash
2     #
3 ccflib 1.10 # $Id: buildagain,v 1.9 2005/11/11 16:07:24 ccflib Exp $
4 ccflib 1.1 #
5     # + Build again a specific set of CCF packages
6 ccflib 1.10 # + Moves the resulting CCF to final destination
7     # (makes in part the same that acceptbuild)
8 ccflib 1.1 #
9     # Exit code:
10     # + -1 (255): nothing to build
11     # + 1: shell errors (cd mkdir ...)
12     # + 2: SAS set up cannot find deceit
13    
14 ccflib 1.5 if [ -z $1 ] ; then
15 ccflib 1.8 echo "Abort: Undefined package to process again"
16 ccflib 1.4 exit -1
17 ccflib 1.1 fi
18    
19     pkg=$1
20    
21     cleanup () {
22     cd ~
23     rm -fr $builddir/*
24     exit
25     }
26    
27     buildpkg () {
28     pkg=$1
29     echo Attempting to build $pkg ...
30     (make -s -C $pkg clobber 2>&1 && make -s -C $pkg depend 2>&1 && make -s -C $pkg 2>&1) >> $builddir/build.log
31     }
32    
33     . $HOME/bin/ccflib.cfg
34    
35     builtdir=~/deliveries/built
36    
37     trap cleanup SIGINT
38    
39     me=`basename $0`
40    
41     PATH=$HOME/bin:$PATH
42     export PATH
43    
44 ccflib 1.6 plist=`find ${builtdir} -name "*${pkg}*" -print`
45 ccflib 1.1
46     if [ -z "$plist" ] ; then
47     exit -1
48     fi
49    
50     saslatest
51     deceit -v 2>&1 || (echo ERROR: deceit missing; exit 2)
52     ccfextseq -v 2>&1 || (echo ERROR: ccfextseq missing; exit 2)
53    
54     builddir=$HOME/builds/again
55     if [ -d $builddir ] ; then
56     mv $builddir ${builddir}.old
57     rm -rf ${builddir}.old &
58     fi
59     mkdir -p $builddir
60     cd $builddir || exit 1
61 ccflib 1.7 echo Removing the contents of $builddir ...
62 ccflib 1.1 rm -fr *
63    
64     mkdir packages || exit 1
65    
66     for p in $plist; do
67     echo -n Unpacking `basename $p` ...
68 ccflib 1.8 tar -C packages -xzf $p || (echo FAILED, aborting ; exit 1)
69 ccflib 1.1 echo " done."
70     done
71    
72     # updating the dev directory for any possible change in its files
73    
74     CCFDEV=$HOME/ccfdev ; export CCFDEV
75     cd $CCFDEV
76     cvs update 2> /dev/null
77    
78     # back to $builddir/packages
79    
80     cd ~- ; cd packages
81     . $CCFDEV/setup.sh
82    
83    
84     for p in $plist; do
85 ccflib 1.3 echo "making package $p"
86 ccflib 1.8 thisp=`basename $p '.tgz' | sed -e 's/-[0-9]\{1,\}\.[0-9]\{1,\}$//'`
87 ccflib 1.9 buildpkg $thisp && (echo ok) || (echo FAILED ; cat $builddir/build.log)
88 ccflib 1.1 done
89 ccflib 1.10
90     # Now moves resulting CCF to final destinations
91    
92     cd $builddir || exit 1
93    
94     flist=`find . -name '*.CCF'`
95    
96     if [ -z "$flist" ] ; then
97     exit 0
98     fi
99    
100     for f in $flist ; do
101     b=`basename $f`
102     echo Considering $b ...
103     if [ -e $ccfdir/$b -o -e $ccfrel/$b -o -e $scisimdir/$b ] ; then
104     echo " it already exists. REJECTED."
105     else
106     if [ -e $ccfdeveldir/$b ] ; then
107     echo " it already exists in the development area and it will be overwritten."
108     fi
109     ccfextseq --sets=$f
110     if [ $? -ne 0 ] ; then
111     echo " validation stage failed. REJECTED."
112     else
113     cp $f $ccfdeveldir || exit 1
114     echo " accepted into $ccfdeveldir."
115     fi
116     fi
117     done

  ViewVC Help
Powered by ViewVC 1.1.27