avr-libc-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[avr-libc-commit] [2520] Patch #8961: Update test script for new simulav


From: Pitchumani
Subject: [avr-libc-commit] [2520] Patch #8961: Update test script for new simulavr and library layout
Date: Mon, 04 Apr 2016 08:38:44 +0000

Revision: 2520
          http://svn.sv.gnu.org/viewvc/?view=rev&root=avr-libc&revision=2520
Author:   pitchumani
Date:     2016-04-04 08:38:44 +0000 (Mon, 04 Apr 2016)
Log Message:
-----------
Patch #8961: Update test script for new simulavr and library layout

Ticket Links:
------------
    http://savannah.gnu.org/patch/?8961

Modified Paths:
--------------
    trunk/avr-libc/ChangeLog
    trunk/avr-libc/NEWS
    trunk/avr-libc/tests/simulate/runtest.sh

Modified: trunk/avr-libc/ChangeLog
===================================================================
--- trunk/avr-libc/ChangeLog    2016-03-17 12:11:50 UTC (rev 2519)
+++ trunk/avr-libc/ChangeLog    2016-04-04 08:38:44 UTC (rev 2520)
@@ -1,3 +1,12 @@
+2016-04-04  Pitchumani Sivanupandi <address@hidden>
+
+       patch #8961: Update test script
+       * tests/simulate/runtest.sh (Simulate): Do not generate bin file.
+       Change exit address from byte to word address. Update options and add
+       timeout parameter when invoking simulavr.
+       (Compile): Auto detect multilib and CRT filename. Add device library
+       to libraries list.
+
 2016-03-17  Senthil Kumar Selvaraj <address@hidden>
 
        * crt1/gcrt1.S: Weakly define __FUSE_REGION_LENGTH__.

Modified: trunk/avr-libc/NEWS
===================================================================
--- trunk/avr-libc/NEWS 2016-03-17 12:11:50 UTC (rev 2519)
+++ trunk/avr-libc/NEWS 2016-04-04 08:38:44 UTC (rev 2520)
@@ -8,6 +8,7 @@
 
   [no-id] Define weak symbols for known memory region sizes based on device 
   header definitions, starting with fuse region.
+  [#8961] Update test script for new simulavr and library layout
 
 * Other changes:
 

Modified: trunk/avr-libc/tests/simulate/runtest.sh
===================================================================
--- trunk/avr-libc/tests/simulate/runtest.sh    2016-03-17 12:11:50 UTC (rev 
2519)
+++ trunk/avr-libc/tests/simulate/runtest.sh    2016-04-04 08:38:44 UTC (rev 
2520)
@@ -122,11 +122,12 @@
 # Usage: Simulate ELFILE MCU
 Simulate ()
 {
-    local bin_file=`basename $1 .elf`.bin
     local exit_addr=0x`$AVR_NM $1 | grep __stop_program | cut -f1 -d' '`
-    $AVR_OBJCOPY -O binary -R .eeprom $1 $bin_file
+    # change the exit address from byte address to word address
+    exit_addr=`printf "0x%08x" $((exit_addr/2))`
     rm -f $CORE
-    if $SIMULAVR -d $2 -B $exit_addr -C $bin_file 2>&1 >/dev/null \
+    # pass device name, exit address, elf file, dump file and timeout (60 
seconds).
+    if $SIMULAVR -d $2 -B $exit_addr -f $1 -C $CORE -m 60000000000 2>&1 
>/dev/null \
        | grep "ERROR:"
     then
        RETVAL=-1
@@ -145,7 +146,6 @@
            RETVAL=-1
        fi
     fi
-    rm $bin_file
     [ $RETVAL -eq 0 ]
 }
 
@@ -157,23 +157,20 @@
     local flags=
 
     if [ -z "$AVRDIR" ] ; then
-       libs="-lm"
+         libs="-lm"
     else
-       local avrno
-        case $2 in
-           at90s2313)  avrno=2 ; crt=crts2313.o ;;
-           at90s4414)  avrno=2 ; crt=crts4414.o ;;
-           at90s8515)  avrno=2 ; crt=crts8515.o ;;
-           atmega8)    avrno=4 ; crt=crtm8.o ;;
-           atmega16)   avrno=5 ; crt=crtm16.o ;;
-           atmega128)  avrno=5 ; crt=crtm128.o ;;
-           *)
-               Errx "Compile(): invalid MCU: $2"
-       esac
-       flags="-isystem $AVRDIR/include -nostdlib"
-       crt=`find $AVRDIR/avr/lib -name $crt -print | head -1`
-       libs="$AVRDIR/avr/lib/avr$avrno/libc.a  \
-             $AVRDIR/avr/lib/avr$avrno/libm.a -lgcc"
+      local multilibdir=`$AVR_GCC -mmcu=$2 -print-multi-directory`
+      # prefix dir 'avr2' if multilib dir is default or not starts with 'avr'
+      # example: '.' or 'tinystack'
+      if [[ $multilibdir != "avr"* ]]; then
+        multilibdir="avr2/$multilibdir"
+      fi
+      crt=crt$2.o
+         flags="-isystem $AVRDIR/include -nostdlib"
+      crt=`find $AVRDIR/avr/lib -name $crt -print | head -1`
+      libs="$AVRDIR/avr/lib/$multilibdir/libc.a        \
+            $AVRDIR/avr/lib/$multilibdir/libm.a \
+            $AVRDIR/avr/lib/$multilibdir/$2/lib$2.a -lgcc"
     fi
 
     case $4 in
@@ -182,7 +179,7 @@
        if [ -z "$AVRDIR" ] ; then
            libs="-lprintf_min $libs"
        else
-           libs="$AVRDIR/avr/lib/avr$avrno/libprintf_min.a $libs"
+           libs="$AVRDIR/avr/lib/$multilibdir/libprintf_min.a $libs"
        fi
        ;;
       PR_FLT)
@@ -190,7 +187,7 @@
        if [ -z "$AVRDIR" ] ; then
            libs="-lprintf_flt $libs"
        else
-           libs="$AVRDIR/avr/lib/avr$avrno/libprintf_flt.a $libs"
+           libs="$AVRDIR/avr/lib/$multilibdir/libprintf_flt.a $libs"
        fi
        ;;
       SC_MIN)
@@ -198,7 +195,7 @@
        if [ -z "$AVRDIR" ] ; then
            libs="-lscanf_min $libs"
        else
-           libs="$AVRDIR/avr/lib/avr$avrno/libscanf_min.a $libs"
+           libs="$AVRDIR/avr/lib/$multilibdir/libscanf_min.a $libs"
        fi
        ;;
       SC_FLT)
@@ -206,7 +203,7 @@
        if [ -z "$AVRDIR" ] ; then
            libs="-lscanf_flt $libs"
        else
-           libs="$AVRDIR/avr/lib/avr$avrno/libscanf_flt.a $libs"
+           libs="$AVRDIR/avr/lib/$multilibdir/libscanf_flt.a $libs"
        fi
        ;;
     esac




reply via email to

[Prev in Thread] Current Thread [Next in Thread]