annotate host-tools.sh @ 156:ad6b2ba3ea2d

Added tag 0.2.1 for changeset ce1ca3d0f95b
author Rob Landley <rob@landley.net>
date Mon, 09 Apr 2007 12:10:09 -0400
parents da91da84e7de
children 6b4844b708b9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
93
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
1 #!/bin/sh
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
2
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
3 # Get lots of predefined environment variables and shell functions.
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
4
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
5 echo -e "\e[0m"
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
6 echo "=== Building host tools"
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
7
96
137ba51ee993 Delete output directories on re-run, teach build to log and build multiple
Rob Landley <rob@landley.net>
parents: 95
diff changeset
8 NO_ARCH=1
93
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
9 source include.sh
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
10
120
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
11 #rm -rf "${HOSTTOOLS}"
99
fd6d26721acf Minor tweak, move toybox build to the start.
Rob Landley <rob@landley.net>
parents: 96
diff changeset
12 mkdir -p "${HOSTTOOLS}" || dienow
96
137ba51ee993 Delete output directories on re-run, teach build to log and build multiple
Rob Landley <rob@landley.net>
parents: 95
diff changeset
13
99
fd6d26721acf Minor tweak, move toybox build to the start.
Rob Landley <rob@landley.net>
parents: 96
diff changeset
14 # Build toybox
120
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
15 if [ ! -f "$(which toybox)" ]
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
16 then
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
17 echo which toybox
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
18 setupfor toybox &&
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
19 make defconfig &&
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
20 make &&
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
21 make instlist &&
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
22 make install_flat PREFIX="${HOSTTOOLS}"
99
fd6d26721acf Minor tweak, move toybox build to the start.
Rob Landley <rob@landley.net>
parents: 96
diff changeset
23
120
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
24 [ $? -ne 0 ] && dienow
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
25 fi
93
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
26
108
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
27 # As a temporary measure, build User Mode Linux and use _that_ to package
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
28 # the ext2 image to boot qemu with.
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
29
120
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
30 if [ -z "$(which linux)" ]
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
31 then
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
32 setupfor linux &&
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
33 cat > mini.conf << EOF
108
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
34 CONFIG_MODE_SKAS=y
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
35 CONFIG_BINFMT_ELF=y
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
36 CONFIG_HOSTFS=y
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
37 CONFIG_SYSCTL=y
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
38 CONFIG_STDERR_CONSOLE=y
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
39 CONFIG_UNIX98_PTYS=y
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
40 CONFIG_BLK_DEV_LOOP=y
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
41 CONFIG_LBD=y
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
42 CONFIG_EXT2_FS=y
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
43 CONFIG_PROC_FS=y
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
44 EOF
120
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
45 make ARCH=um allnoconfig KCONFIG_ALLCONFIG=mini.conf &&
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
46 make ARCH=um &&
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
47 cp linux "${HOSTTOOLS}" &&
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
48 cd .. &&
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
49 rm -rf linux-*
93
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
50
120
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
51 [ $? -ne 0 ] && dienow
c91ceb05bc1c Make host-tools not rebuild stuff that's already there, fix yet more corner
Rob Landley <rob@landley.net>
parents: 108
diff changeset
52 fi
93
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
53
108
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
54 # Build squashfs
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
55 #setupfor squashfs
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
56 #cd squashfs-tools &&
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
57 #make &&
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
58 #cp mksquashfs unsquashfs "${HOSTTOOLS}" &&
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
59 #cd .. &&
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
60 #$CLEANUP squashfs*
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
61 #
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
62 #[ $? -ne 0 ] && dienow
b66d638a3844 Build User Mode Linux and have that do the ext2 packaging (for now, anyway).
Rob Landley <rob@landley.net>
parents: 99
diff changeset
63
134
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
64 # we can't reliably build qemu because who knows what gcc version the host
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
65 # has? so until qemu is fixed to build with an arbitrary c compiler,
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
66 # just test for its' existence and warn.
93
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
67
134
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
68 temp="qemu-${qemu_test}"
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
69 [ -z "$qemu_test" ] && temp=qemu
93
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
70
134
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
71 if [ -z "$(which $temp)" ]
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
72 then
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
73 echo "***************** warning: $temp not found. *******************"
95
027e15c1cfec Only build qemu if it's not already installed. (Revisit this when 0.9.0 comes
Rob Landley <rob@landley.net>
parents: 93
diff changeset
74 fi
93
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
75
134
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
76 # setupfor qemu &&
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
77 # ./configure --disable-gcc-check --disable-gfx-check --prefix="${CROSS}" &&
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
78 # make &&
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
79 # make install &&
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
80 # cd .. &&
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
81 # $CLEANUP qemu-*
da91da84e7de We can't reliably build qemu because who knows what toolchains the host
Rob Landley <rob@landley.net>
parents: 120
diff changeset
82
93
153ba1a0b427 Break out the qemu build (and squashfs) into something easy to comment out,
Rob Landley <rob@landley.net>
parents:
diff changeset
83 echo -e "\e[32mHost tools build complete.\e[0m"