]> rtime.felk.cvut.cz Git - l4.git/blob - kernel/fiasco/tool/mksnap
update
[l4.git] / kernel / fiasco / tool / mksnap
1 #!/bin/sh -ex
2
3 echo "This one needs adaption..."
4 sleep 10
5
6 VERSION="fiasco-1.2"
7 CURRDIR=$(pwd)
8 SCRATCH="$CURRDIR/release-build"
9 WORKDIR="$SCRATCH/$VERSION"
10 EXCLUDE="$SCRATCH/exclude.$$"
11 KBLDDIR="$WORKDIR/l4/kernel/fiasco/build"
12
13 CVSHOME="/home/cvs"
14 KERNPKG="l4/kernel/fiasco"
15 USERPKG="$(echo l4/COPYING l4/LICENSING l4/Makefile                                                     \
16                 l4/tool/preprocess/src/preprocess)"
17
18 umask 022
19
20 trap "rm -rf $EXCLUDE && exit 1" 1 2 15
21 trap "rm -rf $EXCLUDE && exit 0" 0
22
23 if [ -d "$SCRATCH" ];
24 then
25   echo "$SCRATCH exists, please remove it before calling $0."
26   exit 1
27 fi
28
29 # Create a temporary working directory
30 mkdir -p $SCRATCH
31 mkdir -p $WORKDIR
32
33 # Create file blacklist
34 echo '*CVS*'       > $EXCLUDE
35 echo '.cvsignore' >> $EXCLUDE
36
37 # Check out Userland stuff
38 (cd $WORKDIR && cvs -d $CVSHOME co $USERPKG)
39
40 # Create Userland archive
41 (cd $SCRATCH && tar -X $EXCLUDE -cvpf $VERSION.tar $VERSION/l4)
42
43 # Check out Kernel stuff
44 (cd $WORKDIR && cvs -d $CVSHOME co $KERNPKG)
45
46 # mv README and CHANGES down to root of the archive so that users have
47 # something to read when they cd into fiasco-*
48 mv $WORKDIR/l4/kernel/fiasco/README $WORKDIR/l4/kernel/fiasco/CHANGES $WORKDIR
49 (cd $SCRATCH && tar -rvpf $VERSION.tar $VERSION/README $VERSION/CHANGES )
50
51 # Add kernel to archive
52 (cd $SCRATCH && tar -X $EXCLUDE -rvpf $VERSION.tar $VERSION/l4/kernel/fiasco)
53
54 echo "Compressing tar files..."
55 ( cd $SCRATCH
56   # *zip the dang thing
57   gzip  -c9 $VERSION.tar        > $VERSION.tar.gz
58   bzip2 -9  $VERSION.tar
59
60   # Checksums for everyone
61   md5sum $VERSION.tar.gz        >> $VERSION.tar.gz.md5
62   md5sum $VERSION.tar.bz2       >> $VERSION.tar.bz2.md5
63 )
64
65 # Clean up
66 rm -rf $WORKDIR
67 rm -rf $KBLDDIR
68
69 echo Done!