Mercurial > hg > aboriginal
annotate sources/native-builds/bootstrap-skeleton/build/functions.sh @ 1256:df70740df1a5
Add generic native-build infastructure.
author | Rob Landley <rob@landley.net> |
---|---|
date | Tue, 05 Oct 2010 21:18:36 -0500 |
parents | |
children |
rev | line source |
---|---|
1256
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
1 #!/bin/echo This file is sourced not run |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
2 |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
3 upload_result() |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
4 { |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
5 ftpput $FTP_SERVER -P $FTP_PORT "$1-$HOST" "$1" |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
6 } |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
7 |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
8 set_titlebar() |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
9 { |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
10 echo -en "\033]2;($HOST) $1\007" |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
11 echo === "$1" |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
12 } |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
13 |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
14 dotprogress() |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
15 { |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
16 while read i; do echo -n .; done; echo |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
17 } |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
18 |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
19 do_in_chroot() |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
20 { |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
21 # Copy root filesystem into a new chroot directory and restart in there. |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
22 |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
23 CHROOT="$1" |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
24 shift |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
25 |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
26 set_titlebar "Setup chroot" |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
27 mkdir "$CHROOT" |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
28 cp -a /mnt/files/. "$CHROOT" |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
29 find / -xdev | cpio -m -v -p "$CHROOT" | dotprogress |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
30 for i in mnt proc sys dev; do mount --bind /$i "$CHROOT"/$i; done |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
31 |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
32 echo Chroot |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
33 chroot "$CHROOT" "$@" |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
34 RC=$? |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
35 |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
36 echo Chroot cleanup |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
37 for i in mnt proc sys dev; do umount "$CHROOT"/$i; done |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
38 |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
39 return $RC |
df70740df1a5
Add generic native-build infastructure.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
40 } |