3 ###############################################
4 ### See if we have a Config.h.ORG file ###
5 ### If not, create it... ###
6 ###############################################
7 if [ ! -e "Config.h.ORG" ]; then
8 echo "Creating Config.h.ORG"
9 cp Config.h Config.h.ORG
10 if [ ! -e "Config.h.ORG" ]; then
11 echo "$0: ABORTING: Unable to create Config.h.ORG"
16 ###############################################################
17 ### See if we have a bb.def.h file. If not, extract the ###
18 ### unchangeable portion of Config.h.ORG into bb.def.h ###
19 ###############################################################
20 if [ ! -e "bb.def.h" ]; then
21 echo "Creating bb.def.h"
22 POSITION=`grep -n "Nothing beyond this point should ever be touched" \
23 Config.h.ORG | cut -d: -f1`
24 TOTALLINES=`cat Config.h.ORG | wc -l`
25 NUMLINES=$[${TOTALLINES}-${POSITION}+2]
26 tail -n ${NUMLINES} Config.h.ORG > bb.def.h
27 if [ ! -e "bb.def.h" ]; then
28 echo "$0: ABORTING: Unable to create bb.def.h"
33 #####################################################################
34 ### See if we have a bb.OptionsAndFeatures file. If not, extract ###
35 ### all the BB_xxx options and features into a unique sorted list ###
36 ### and stuff them into bb.OptionsAndFeatures. ###
37 #####################################################################
38 if [ ! -e "bb.OptionsAndFeatures" ]; then
39 echo "Creating bb.OptionsAndFeatures"
41 | tr ' ,(){}|&' '
\0\0\0\0\0\0\0\0\0' \
45 | grep -v '^BB_BLAH$' \
46 | grep -v '^BB_BUSYBOX$' \
47 | grep -v '^BB_DEBUG' \
49 | grep -v '^BB_VER$' \
50 | grep -v '^BB_DEF_MESSAGE$' \
51 | grep -v '^BB_DECLARE_EXTERN$' \
52 | grep -v '^BB_applet$' \
54 echo BB_NOOP > bb.OptionsAndFeatures
55 grep '^BB_FEATURE_' tmpfile.1 >> bb.OptionsAndFeatures
56 grep -v '^BB_FEATURE_' tmpfile.1 >> bb.OptionsAndFeatures
60 if [ ! -e "bb.OptionsAndFeatures" ]; then
61 echo "$0: ABORTING: Unable to create bb.OptionsAndFeatures"
66 RESULTSFILE="`basename $0`.results"
67 echo "RESULTSFILE is ${RESULTSFILE}"
77 for i in `cat bb.OptionsAndFeatures`
85 echo "===== $i ========================="
86 echo "===== $i =========================" >> ${RESULTSFILE}
88 echo "#define BB_BUSYBOX"
89 echo "#define BB_BUSYBOX" >> ${BUSYBOXDEFS}
93 -o "${i}" = "BB_KILLALL" \
94 -o "${i}" = "BB_LSMOD" \
95 -o "${i}" = "BB_MOUNT" \
97 -o "${i}" = "BB_UMOUNT" \
99 echo "#define BB_FEATURE_USE_PROCFS"
100 echo "#define BB_FEATURE_USE_PROCFS" >> ${BUSYBOXDEFS}
104 echo "#define $i" >> ${BUSYBOXDEFS}
106 cat bb.def.h >> ${BUSYBOXDEFS}
110 if [ -e busybox ]; then
112 ###strip -s busybox ### ALREADY DONE
114 STATIC_SIZE=`size busybox | grep busybox | cut -d\ -f4 | tr -d " "`
115 if [ "${i}" = "BB_NOOP" ]; then
116 NOOP_STATIC_SIZE=${STATIC_SIZE}
117 echo "STATIC_SIZE=${STATIC_SIZE}"
118 echo "STATIC_SIZE=${STATIC_SIZE}" >> ${RESULTSFILE}
120 SIZEDIFF=$[${STATIC_SIZE}-${NOOP_STATIC_SIZE}]
121 echo "STATIC_SIZE=${STATIC_SIZE} (${SIZEDIFF})"
122 echo "STATIC_SIZE=${STATIC_SIZE} (${SIZEDIFF})" >> ${RESULTSFILE}
125 STORAGE_SIZE=`ls -la busybox | awk '{print $5}'`
126 if [ "${i}" = "BB_NOOP" ]; then
127 NOOP_STORAGE_SIZE=${STORAGE_SIZE}
128 echo "STORAGE_SIZE=${STORAGE_SIZE}"
129 echo "STORAGE_SIZE=${STORAGE_SIZE}" >> ${RESULTSFILE}
131 SIZEDIFF=$[${STORAGE_SIZE}-${NOOP_STORAGE_SIZE}]
132 echo "STORAGE_SIZE=${STORAGE_SIZE} (${SIZEDIFF})"
133 echo "STORAGE_SIZE=${STORAGE_SIZE} (${SIZEDIFF})" >> ${RESULTSFILE}
136 ldd busybox | grep -v libc.so.6 | grep -v ld-linux.so.2
137 ldd busybox | grep -v libc.so.6 | grep -v ld-linux.so.2 >> ${RESULTSFILE}
139 echo "$i Build Failure"
140 echo "$i Build Failure" >> ${RESULTSFILE}
145 echo "...All done..."