X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=test%2Fget_source_list.sh;h=9cb735caefd9b0231ff198864b351772a7545c8d;hb=57dfb183e24175bc782647d4e6aebe31063f3881;hp=b58f682450cba73fe3c09270c79bbe4cf70e16eb;hpb=77b037974e46f78a0c6746753bf8d1c07b9630fc;p=bertos.git diff --git a/test/get_source_list.sh b/test/get_source_list.sh index b58f6824..9cb735ca 100755 --- a/test/get_source_list.sh +++ b/test/get_source_list.sh @@ -32,12 +32,17 @@ #Directories BERTOS_DIR="./bertos" +COPY_DIR="./bertos.saved" CPU_DIR="${BERTOS_DIR}/cpu" #Directory to exclude OS_DIR="${BERTOS_DIR}/os" EMUL_DIR="${BERTOS_DIR}/emul" -APP_DIR="./app" +WIZARD_DIR="./wizard" +APP_DIR="./examples ./boards" +FAT_DIR="${BERTOS_DIR}/fs/fatfs" +NMEA_DIR="${BERTOS_DIR}/net/nmeap" +LWIP_DIR="${BERTOS_DIR}/net/lwip ${BERTOS_DIR}/net/lwip.c" if [ $# \< 2 ] ; then printf "You must specify a cpu target, and source file type!\n" @@ -45,16 +50,47 @@ if [ $# \< 2 ] ; then exit 1 fi +CPU_TARGET=$1 +EXCLUDE_DIRS="$COPY_DIR $CPU_DIR $APP_DIR $OS_DIR $WIZARD_DIR $EMUL_DIR $FAT_DIR $NMEA_DIR $LWIP_DIR ${BERTOS_DIR}/sec" +EXCLUDE_CMD="\.svn -prune " +for i in $EXCLUDE_DIRS; do + EXCLUDE_CMD="$EXCLUDE_CMD -o -path $i -prune "; +done -#Create a list of source file whitout a cpu specific source -GEN_SRC=`find . \( -name \.svn -prune -o -path $CPU_DIR -prune -o -path $APP_DIR -prune -o -path $OS_DIR -prune -o -path $EMUL_DIR -prune \) -o -name *.${2} -print | xargs` +#Create a list of source file without a cpu specific source +GEN_SRC=`find . \( -name $EXCLUDE_CMD \) -o -name *.${2} -print | xargs` #Select c and asm sources for selected cpu target -TRG_SRC=`find ${CPU_DIR}/${1} -name \.svn -prune -o -name *.${2} -print | xargs` +TRG_SRC=`find ${CPU_DIR}/$CPU_TARGET -name \.svn -prune -o -name *.${2} -print | xargs` #Generate a list of all source for each cpu SRC_ALL=${GEN_SRC}" "${TRG_SRC} +# Find the files that contain the string +# NOTEST +# or +# NOTEST all +# and put them in a list + +NOTEST="notest:" +for src in $SRC_ALL ; +do + grep -P "$NOTEST\s*$CPU_TARGET" $src 2>&1 > /dev/null + if [ $? -eq 0 ] ; then + EXCLUDE_LIST="$EXCLUDE_LIST $src" + fi + grep -P "$NOTEST\s*all" $src 2>&1 > /dev/null + if [ $? -eq 0 ] ; then + EXCLUDE_LIST="$EXCLUDE_LIST $src" + fi +done + +# Remove the exclude list files from the sources to be +# compiled +for src in $EXCLUDE_LIST ; +do + SRC_ALL=`echo $SRC_ALL | sed -e "s;$src;;g"` +done printf "${SRC_ALL}"