Refactor to use new protocol module and sipo.
[bertos.git] / test / get_source_list.sh
index ef6bd50ae57a625de8b62796ebe8fc943b5f887f..9cb735caefd9b0231ff198864b351772a7545c8d 100755 (executable)
 
 #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"
@@ -46,8 +51,14 @@ if [ $# \< 2 ] ; then
        exit 1
 fi
 CPU_TARGET=$1
-#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`
+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 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}/$CPU_TARGET -name \.svn -prune -o -name *.${2} -print | xargs`
@@ -56,15 +67,22 @@ TRG_SRC=`find ${CPU_DIR}/$CPU_TARGET -name \.svn -prune -o -name *.${2} -print |
 SRC_ALL=${GEN_SRC}" "${TRG_SRC}
 
 # Find the files that contain the string
-# NOTEST <cpu target> and put it in a list
+# NOTEST <cpu target>
+# or
+# NOTEST all
+# and put them in a list
 
 NOTEST="notest:"
 for src in $SRC_ALL ;
 do
-       grep "$NOTEST\s*$CPU_TARGET" $src 2>&1 > /dev/null
-       if [ $? = 0 ] ; then
-               EXCLUDE_LIST+=$src
-       fi      
+       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