mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-25 14:56:03 +00:00
MAKEALL: Add options for incremental building
--continue will allow you to <ctrl-c> the MAKEALL and pick up where you left off. --rebuild-errors will allow you to rebuild only those boards which had trouble on the last run of MAKEALL, allowing you to quickly test a simple fix on just those boards. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
c97d59cbda
commit
0851020479
1 changed files with 33 additions and 8 deletions
31
MAKEALL
31
MAKEALL
|
@ -20,6 +20,8 @@ usage()
|
||||||
-m, --maintainers List all targets and maintainer email
|
-m, --maintainers List all targets and maintainer email
|
||||||
-M, --mails List all targets and all affilated emails
|
-M, --mails List all targets and all affilated emails
|
||||||
-C, --check Enable build checking
|
-C, --check Enable build checking
|
||||||
|
-n, --continue Continue (skip boards already built)
|
||||||
|
-r, --rebuild-errors Rebuild any boards that errored
|
||||||
-h, --help This help output
|
-h, --help This help output
|
||||||
|
|
||||||
Selections by these options are logically ANDed; if the same option
|
Selections by these options are logically ANDed; if the same option
|
||||||
|
@ -52,8 +54,8 @@ usage()
|
||||||
exit ${ret}
|
exit ${ret}
|
||||||
}
|
}
|
||||||
|
|
||||||
SHORT_OPTS="ha:c:v:s:lmMC"
|
SHORT_OPTS="ha:c:v:s:lmMCnr"
|
||||||
LONG_OPTS="help,arch:,cpu:,vendor:,soc:,list,maintainers,mails,check"
|
LONG_OPTS="help,arch:,cpu:,vendor:,soc:,list,maintainers,mails,check,continue,rebuild-errors"
|
||||||
|
|
||||||
# Option processing based on util-linux-2.13/getopt-parse.bash
|
# Option processing based on util-linux-2.13/getopt-parse.bash
|
||||||
|
|
||||||
|
@ -73,6 +75,8 @@ SELECTED=''
|
||||||
ONLY_LIST=''
|
ONLY_LIST=''
|
||||||
PRINT_MAINTS=''
|
PRINT_MAINTS=''
|
||||||
MAINTAINERS_ONLY=''
|
MAINTAINERS_ONLY=''
|
||||||
|
CONTINUE=''
|
||||||
|
REBUILD_ERRORS=''
|
||||||
|
|
||||||
while true ; do
|
while true ; do
|
||||||
case "$1" in
|
case "$1" in
|
||||||
|
@ -115,6 +119,12 @@ while true ; do
|
||||||
-C|--check)
|
-C|--check)
|
||||||
CHECK='C=1'
|
CHECK='C=1'
|
||||||
shift ;;
|
shift ;;
|
||||||
|
-n|--continue)
|
||||||
|
CONTINUE='y'
|
||||||
|
shift ;;
|
||||||
|
-r|--rebuild-errors)
|
||||||
|
REBUILD_ERRORS='y'
|
||||||
|
shift ;;
|
||||||
-l|--list)
|
-l|--list)
|
||||||
ONLY_LIST='y'
|
ONLY_LIST='y'
|
||||||
shift ;;
|
shift ;;
|
||||||
|
@ -198,7 +208,9 @@ fi
|
||||||
OUTPUT_PREFIX="${BUILD_DIR}"
|
OUTPUT_PREFIX="${BUILD_DIR}"
|
||||||
|
|
||||||
[ -d ${LOG_DIR} ] || mkdir "${LOG_DIR}" || exit 1
|
[ -d ${LOG_DIR} ] || mkdir "${LOG_DIR}" || exit 1
|
||||||
find "${LOG_DIR}/" -type f -exec rm -f {} +
|
if [ "$CONTINUE" != 'y' -a "$REBUILD_ERRORS" != 'y' ] ; then
|
||||||
|
find "${LOG_DIR}/" -type f -exec rm -f {} +
|
||||||
|
fi
|
||||||
|
|
||||||
LIST=""
|
LIST=""
|
||||||
|
|
||||||
|
@ -208,6 +220,7 @@ ERR_LIST=""
|
||||||
WRN_CNT=0
|
WRN_CNT=0
|
||||||
WRN_LIST=""
|
WRN_LIST=""
|
||||||
TOTAL_CNT=0
|
TOTAL_CNT=0
|
||||||
|
SKIP_CNT=0
|
||||||
CURRENT_CNT=0
|
CURRENT_CNT=0
|
||||||
OLDEST_IDX=1
|
OLDEST_IDX=1
|
||||||
RC=0
|
RC=0
|
||||||
|
@ -734,6 +747,13 @@ build_targets() {
|
||||||
: $((CURRENT_CNT += 1))
|
: $((CURRENT_CNT += 1))
|
||||||
rm -f "${donep}${TOTAL_CNT}"
|
rm -f "${donep}${TOTAL_CNT}"
|
||||||
rm -f "${skipp}${TOTAL_CNT}"
|
rm -f "${skipp}${TOTAL_CNT}"
|
||||||
|
if [ "$CONTINUE" = 'y' -a -e ${LOG_DIR}/$t.MAKELOG ] ; then
|
||||||
|
: $((SKIP_CNT += 1))
|
||||||
|
touch "${donep}${TOTAL_CNT}"
|
||||||
|
elif [ "$REBUILD_ERRORS" = 'y' -a ! -e ${LOG_DIR}/$t.ERR ] ; then
|
||||||
|
: $((SKIP_CNT += 1))
|
||||||
|
touch "${donep}${TOTAL_CNT}"
|
||||||
|
else
|
||||||
if [ $BUILD_MANY == 1 ] ; then
|
if [ $BUILD_MANY == 1 ] ; then
|
||||||
build_target ${t} ${TOTAL_CNT} &
|
build_target ${t} ${TOTAL_CNT} &
|
||||||
else
|
else
|
||||||
|
@ -742,6 +762,7 @@ build_targets() {
|
||||||
CUR_TGT=''
|
CUR_TGT=''
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# We maintain a running count of all the builds we have done.
|
# We maintain a running count of all the builds we have done.
|
||||||
# Each finished build will have a file called ${donep}${n},
|
# Each finished build will have a file called ${donep}${n},
|
||||||
|
@ -792,8 +813,12 @@ print_stats() {
|
||||||
rm -f ${LOG_DIR}/${CUR_TGT}.MAKELOG ${LOG_DIR}/${CUR_TGT}.ERR
|
rm -f ${LOG_DIR}/${CUR_TGT}.MAKELOG ${LOG_DIR}/${CUR_TGT}.ERR
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
: $((TOTAL_CNT -= ${SKIP_CNT}))
|
||||||
echo ""
|
echo ""
|
||||||
echo "--------------------- SUMMARY ----------------------------"
|
echo "--------------------- SUMMARY ----------------------------"
|
||||||
|
if [ "$CONTINUE" = 'y' -o "$REBUILD_ERRORS" = 'y' ] ; then
|
||||||
|
echo "Boards skipped: ${SKIP_CNT}"
|
||||||
|
fi
|
||||||
echo "Boards compiled: ${TOTAL_CNT}"
|
echo "Boards compiled: ${TOTAL_CNT}"
|
||||||
if [ ${ERR_CNT} -gt 0 ] ; then
|
if [ ${ERR_CNT} -gt 0 ] ; then
|
||||||
echo "Boards with errors: ${ERR_CNT} (${ERR_LIST} )"
|
echo "Boards with errors: ${ERR_CNT} (${ERR_LIST} )"
|
||||||
|
|
Loading…
Add table
Reference in a new issue