1 | #!/bin/bash |
---|
2 | #(C)DatuX 2005 - all rights reserved |
---|
3 | #kijkt of een buildroot nog steeds goed is en repareert hem a.d.h.v. een copy |
---|
4 | #./chkbuildroot <werkbuildroot> <copybuildroot> |
---|
5 | #De copybuildroot word eenmalig gemaakt met mkbuildroot, hierna word de werkbuildroot |
---|
6 | #ge-resynced met de werkbuildroot, omdat dit vele sneller gaat dan een compleet nieuwe buildroot maken. |
---|
7 | |
---|
8 | [ "$1" ] || exit 1 |
---|
9 | [ "$2" ] || exit 1 |
---|
10 | |
---|
11 | for PAR in $*; do eval "$PAR=1" &>/dev/null; done |
---|
12 | |
---|
13 | #buildroots zelf zijn op dit moment altijd i386 (npl) |
---|
14 | export HOST=npl |
---|
15 | |
---|
16 | CWD=`pwd` |
---|
17 | mkdir -p $1 &>/dev/null |
---|
18 | cd $1 || exit 1 |
---|
19 | ROOT=`pwd` |
---|
20 | cd $CWD |
---|
21 | |
---|
22 | mkdir -p $2 &>/dev/null |
---|
23 | cd $2 || exit 1 |
---|
24 | ROOTCOPY=`pwd` |
---|
25 | cd $CWD |
---|
26 | |
---|
27 | umount $ROOT/proc &>/dev/null |
---|
28 | umount $ROOT/dev/pts &>/dev/null |
---|
29 | |
---|
30 | if [ -z "$nopkgcheck" ]; then |
---|
31 | echo -n "Buildroot up-to-date check: (nopkgcheck to skip)"; |
---|
32 | #zijn alle benodigde pakketjes aanwezig. (ivm versie updates tussendoor) |
---|
33 | for PKG in `cat ../npl/buildroot.list`; do |
---|
34 | echo -n "."; |
---|
35 | PKGNAME=`../npl/findpkg $PKG` || exit 1 |
---|
36 | NAME=`basename "$PKGNAME"|sed 's/.tgz$//'` |
---|
37 | if ! [ -f $ROOTCOPY/var/log/packages/$NAME ]; then |
---|
38 | echo "Package $NAME is niet aanwezig in buildroot! Nieuwe buildroot benodigd!"; |
---|
39 | echo -n "Oude buildroot word verwijderd..."; |
---|
40 | rm -rf $ROOTCOPY |
---|
41 | break; |
---|
42 | fi |
---|
43 | done |
---|
44 | echo "DONE"; |
---|
45 | fi |
---|
46 | |
---|
47 | #nog geen buildroot inhoud? (of niet meer) |
---|
48 | if ! ls $ROOTCOPY/* &>/dev/null; then |
---|
49 | #echo "Geen orginele buildroot in $ROOTCOPY."; |
---|
50 | rm -rf "$ROOTCOPY" 2>/dev/null |
---|
51 | ./mkbuildroot $ROOTCOPY || exit 1 |
---|
52 | fi |
---|
53 | |
---|
54 | |
---|
55 | #repareer/maak buildroot |
---|
56 | echo -n "Buildroot $ROOT repareren/syncen..." |
---|
57 | rm -rf $ROOT/tmp/* &>/dev/null |
---|
58 | rsync -a --inplace --delete $ROOTCOPY/ $ROOT/ || exit 1 |
---|
59 | echo "OK" |
---|