<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>change log for rtems-testing (2010-07-21)</title>
</head>
<body text='#000000' bgcolor='#ffffff'>
<a name='cs1'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
 <font color='#bb2222'><strong>joel</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>2010-07-21 Vinu Rajashekhar <vinutheraj@gmail.com>

        * do_one, rundeja, test_driver: Add Go support. Plus some cleanup from
        Joel.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems-testing/gcc/ChangeLog.diff?r1=text&tr1=1.13&r2=text&tr2=1.14&diff_format=h">M</a></td><td width='1%'>1.14</td><td width='100%'>gcc/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems-testing/gcc/do_one.diff?r1=text&tr1=1.14&r2=text&tr2=1.15&diff_format=h">M</a></td><td width='1%'>1.15</td><td width='100%'>gcc/do_one</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems-testing/gcc/rundeja.diff?r1=text&tr1=1.11&r2=text&tr2=1.12&diff_format=h">M</a></td><td width='1%'>1.12</td><td width='100%'>gcc/rundeja</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems-testing/gcc/test_driver.diff?r1=text&tr1=1.16&r2=text&tr2=1.17&diff_format=h">M</a></td><td width='1%'>1.17</td><td width='100%'>gcc/test_driver</td></tr>
</table>
<pre>
<font color='#006600'>diff -u rtems-testing/gcc/ChangeLog:1.13 rtems-testing/gcc/ChangeLog:1.14
--- rtems-testing/gcc/ChangeLog:1.13    Mon Jul 19 19:43:02 2010
+++ rtems-testing/gcc/ChangeLog Wed Jul 21 07:41:37 2010
</font><font color='#997700'>@@ -1,3 +1,8 @@
</font><font color='#000088'>+2010-07-21    Vinu Rajashekhar <vinutheraj@gmail.com>
+
+       * do_one, rundeja, test_driver: Add Go support. Plus some cleanup from
+       Joel.
+
</font> 2010-07-19        Joel Sherrill <joel.sherrill@oarcorp.com>
 
        * test_driver: Add -T option to getopt string.

<font color='#006600'>diff -u rtems-testing/gcc/do_one:1.14 rtems-testing/gcc/do_one:1.15
--- rtems-testing/gcc/do_one:1.14       Fri May 21 11:37:15 2010
+++ rtems-testing/gcc/do_one    Wed Jul 21 07:41:37 2010
</font><font color='#997700'>@@ -41,11 +41,15 @@
</font> # Build the Ada language cross compiler. Multilib is NOT supported
 do_ada=no
   do_ada_multilib=yes
<font color='#000088'>+# Build the GCC Go language cross compiler.
+do_gccgo=no
+       do_gccgo_multilib=yes
</font> # Build RTEMS for a particular CPU/BSP combination
 do_rtems=no
 # Which test suites do we attempt
 run_gcctests=no
 run_acats=no
<font color='#000088'>+run_gccgotests=no
</font> # Do we send email to gcc-testresults with the test results?
 do_mail=yes
 # Are we noisy when running?
<font color='#997700'>@@ -56,8 +60,8 @@
</font> {
 cat <<EOF
 do_one [options] CPU BSP
<font color='#880000'>-  -A - binutils, stage 1, C++, C/C++ multilib, Ada, RTEMS
-  -T - run GCC and Ada tests
</font><font color='#000088'>+  -A - binutils, stage 1, C++, C/C++ multilib, Ada, GCC Go, RTEMS
+  -T - run GCC, Ada and GCC Go tests
</font>   -b - install binutils (from source or copy installed RPM contents)
   -D - install gdb (from source or copy installed RPM contents)
   -n - native compiler
<font color='#997700'>@@ -65,12 +69,14 @@
</font>   -c -   do not include C++<span style="background-color: #FF0000"> </span>
   -m -   do not build multilib
   -a - stage 2 Ada compiler
<font color='#000088'>+  -G - stage 2 GCC Go compiler
</font>   -r - build RTEMS
   -g - run GCC C/C++ tests
   -C - run ACATS
   -d - do not clean up (delete build directories)
   -v - verbose
   -M - do NOT email test results to gcc-testresults
<font color='#000088'>+  -o - run GCC Go tests
</font> EOF
 }
 
<font color='#997700'>@@ -89,7 +95,7 @@
</font>   esac
 }
 
<font color='#880000'>-while getopts bdDnv1cmargCATM OPT
</font><font color='#000088'>+while getopts bdDnv1cmargioCATMG OPT
</font> do
     case "$OPT" in
         A) do_binutils="yes"
<font color='#997700'>@@ -98,12 +104,14 @@
</font>            do_cxx="yes"
            do_multilib="yes"
            do_ada="yes"
<font color='#000088'>+           do_gccgo="yes"
</font>            do_rtems="yes"
            ;;
         d) do_cleanup=`toggle ${do_cleanup}` ;;
         D) do_gdb=`toggle ${do_gdb}` ;;
         T) run_gcctests="yes"
            run_acats="yes"
<font color='#000088'>+           run_gccgotests="yes"
</font>            ;;
         # unrpm binutils
         b) do_binutils=`toggle ${do_binutils}` ;;
<font color='#997700'>@@ -115,6 +123,7 @@
</font>         m) do_multilib=`toggle ${do_multilib}` ;;
         # Stage 2 arguments
         a) do_ada=`toggle ${do_ada}` ;;
<font color='#000088'>+        G) do_gccgo=`toggle ${do_gccgo}` ;;
</font>         # Build RTEMS
         r) do_rtems=`toggle ${do_rtems}` ;;
         # Testsuites to run
<font color='#997700'>@@ -122,7 +131,8 @@
</font>         C) run_acats=`toggle ${run_acats}` ;;
         v) verbose=`toggle ${verbose}` ;;
         M) do_mail=`toggle ${do_mail}` ;;
<font color='#880000'>-        *) fatal;;
</font><font color='#000088'>+        o) run_gccgotests=`toggle ${run_gccgotests}` ;;
+        *) fatal ;;
</font>     esac
 done
 
<font color='#997700'>@@ -156,9 +166,12 @@
</font>   echo "Stage 2       : " ${do_ada}
   echo "  Ada         : " ${do_ada}
   echo "  Multilib    : " ${do_ada_multilib}
<font color='#000088'>+  echo "  GCC Go      : " ${do_gccgo}
+  echo "  Multilib    : " ${do_gccgo_multilib}
</font>   echo "Build RTEMS   : " ${do_rtems}
   echo "Run GCC Tests : " ${run_gcctests}
   echo "Run ACATS     : " ${run_acats}
<font color='#000088'>+  echo "Run Go Tests  : " ${run_gccgotests}
</font>   echo "Email Tests   : " ${do_mail}
   echo "Native GCC    : " `type gcc`
   echo "PATH          : " ${PATH}
<font color='#997700'>@@ -170,11 +183,17 @@
</font> needCPU=no
 
 if [ ${do_binutils} = yes -o ${do_gdb} = yes -o \
<font color='#880000'>-     ${do_stage1} = yes -o ${do_ada} = yes ] ; then
</font><font color='#000088'>+     ${do_stage1} = yes -o ${do_ada} = yes -o ${do_gccgo} = yes ] ; then
</font>   needCPU=yes
 fi
 
<font color='#880000'>-if [ ${do_rtems} = yes -o ${run_gcctests} = yes -o ${run_acats} = yes ] ; then
</font><font color='#000088'>+if [ ${do_native} = yes -a ${do_gccgo} = yes ] ; then
+  echo "Warning! Go requires native C++ to build."
+  do_cxx=yes
+fi
+
+if [ ${do_rtems} = yes -o ${run_gcctests} = yes -o \
+     ${run_acats} = yes -o ${run_gccgotests} = yes ] ; then
</font>   needBSP=yes
   needCPU=yes
   if [ x${bsp} = x ] ; then
<font color='#997700'>@@ -498,6 +517,7 @@
</font>     qemu|pc386)
       ENABLE_BSP="${ENABLE_BSP} USE_COM1_AS_CONSOLE=1"
       ENABLE_BSP="${ENABLE_BSP} BSP_PRESS_KEY_FOR_RESET=0"
<font color='#000088'>+      ENABLE_BSP="${ENABLE_BSP} BSP_RESET_BOARD_AT_EXIT=0"
</font>       ;;
     *) ;;
   esac
<font color='#997700'>@@ -527,7 +547,7 @@
</font> if [ ${run_gcctests} = "yes" ] ; then<span style="background-color: #FF0000"> </span>
   echo "Running GCC Tests..."
   cd ${BASEDIR}/b-gcc1-${cpu} || exit 1
<font color='#880000'>-  time sh -x ${SCRIPTDIR}/gcc/rundeja ${bsp} \
</font><font color='#000088'>+  time sh -x ${SCRIPTDIR}/gcc/rundeja ${bsp} gcc\
</font>     >${LOGDIR}/${cpu}-gcctests-${bsp}.log 2>&1
 
   RDIR=${RESULTSDIR}/${TARGET}-${bsp}/`date +%Y-%m-%d-%H-%M-%S`
<font color='#997700'>@@ -559,7 +579,7 @@
</font> test ${do_cleanup} = "yes" && rm -rf b-gcc1-${cpu}
 
 ##### Build an Ada compiler now that we have a cross installed
<font color='#880000'>-j_gcc2()
</font><font color='#000088'>+j_gccada()
</font> {
   if [ X${1} = X ] ; then
     echo Usage: $0 TARGET_CPU
<font color='#997700'>@@ -599,16 +619,16 @@
</font> if [ ${do_ada} = "yes" ] ; then<span style="background-color: #FF0000"> </span>
   echo "Building Stage 2 cross Ada compiler for ${1} ..."
   (cd ${BASEDIR} && \
<font color='#880000'>-   rm -rf b-gcc2-${cpu} && \
-   mkdir  b-gcc2-${cpu} && \
-   cd b-gcc2-${cpu} && \
-   time j_gcc2 ${cpu} >${LOGDIR}/${cpu}-stage2.log 2>&1 && cd ..) || exit 1
</font><font color='#000088'>+   rm -rf b-gccada-${cpu} && \
+   mkdir  b-gccada-${cpu} && \
+   cd b-gccada-${cpu} && \
+   time j_gccada ${cpu} >${LOGDIR}/${cpu}-ada.log 2>&1 && cd ..) || exit 1
</font> else
   echo Skipping Stage 2 Ada for ${cpu}
 fi
 
 #### Run the Ada ACATS tests
<font color='#880000'>-if [ ${run_acats} = "yes" -a -d b-gcc2-${cpu} ] ; then<span style="background-color: #FF0000"> </span>
</font><font color='#000088'>+if [ ${run_acats} = "yes" -a -d b-gccada-${cpu} ] ; then<span style="background-color: #FF0000"> </span>
</font>   echo "Running ACATS..."
   cd ${GCCDIR}/gcc/testsuite/ada/acats/ || exit 1
 
<font color='#997700'>@@ -631,6 +651,94 @@
</font> fi
 
 if [ ${do_ada} = "yes" ] ; then<span style="background-color: #FF0000"> </span>
<font color='#880000'>-  test ${do_cleanup} = "yes" && rm -rf b-gcc2-${cpu}
</font><font color='#000088'>+  test ${do_cleanup} = "yes" && rm -rf b-gccada-${cpu}
+fi
+
+##### Build a GCC Go compiler now that we have a cross installed
+j_gccgo()
+{
+  if [ X${1} = X ] ; then
+    echo Usage: $0 TARGET_CPU
+    exit 1
+  fi
+  TARGET=${1}-rtems${RTEMS_VERSION}
+
+  if [ ! -d ${INSTALL} ]; then
+    echo ${INSTALL} does not exist
+    exit 1
+  fi
+
+  if [ ${verbose} = yes ] ; then
+    echo "Cross GCC ==>" `type ${TARGET}-gcc`
+  fi
+
+  if [ ${do_gccgo_multilib} = yes ] ; then
+     gccgo_multilib="--enable-multilib"
+  else
+     gccgo_multilib="--disable-multilib"
+  fi
+
+  case ${TARGET} in
+    i386*) GOFLAGS="-march=i486" ;;
+    *)     GOFLAGS="" ;;
+  esac
+#    CFLAGS_FOR_TARGET=-B${BSP_INSTALL}/${TARGET}/${BSP_BUILT}/lib/
+
+  ${GCCDIR}/configure \
+   ${GCC_EXTRA_ARGS} \
+   CFLAGS_FOR_TARGET="-B${BSP_INSTALL}/${TARGET}/${BSP_BUILT}/lib/ ${GOFLAGS}" \
+     --enable-threads=rtems --with-gnu-as ${gccgo_multilib} \
+     --enable-newlib-mb --enable-newlib-iconv \
+     --with-gnu-ld --with-newlib  --verbose --with-system-zlib --disable-nls \
+     --enable-version-specific-runtime-libs \
+    --enable-languages=c,go --target=$TARGET --prefix=$INSTALL &&
+  make ${MAKEJOBS} &&
+  make install
+}
+
+if [ ${do_gccgo} = "yes" ] ; then<span style="background-color: #FF0000"> </span>
+  echo "Building Stage 2 cross GCC Go compiler for ${1} ..."
+  (cd ${BASEDIR} && \
+   rm -rf b-gccgo1-${cpu} && \
+   mkdir  b-gccgo1-${cpu} && \
+   cd b-gccgo1-${cpu} && \
+   time j_gccgo ${cpu} >${LOGDIR}/${cpu}-go.log 2>&1 && cd ..) || exit 1
+else
+  echo Skipping GCC Go for ${cpu}
+fi
+
+##### Do the gccgo tests
+if [ ${run_gccgotests} = "yes" ] ; then
+  echo "Running GCC Go Tests..."
+  cd ${BASEDIR}/b-gccgo1-${cpu}/gcc || exit 1
+  time sh -x ${SCRIPTDIR}/gcc/rundeja ${bsp} gccgo \
+    >${LOGDIR}/${cpu}-gccgotests-${bsp}.log 2>&1
+
+  RDIR=${RESULTSDIR}/${TARGET}-${bsp}/`date +%Y-%m-%d-%H-%M-%S`
+  mkdir -p ${RDIR}
+  cp testsuite/go/go.log testsuite/go/go.sum ${RDIR}
+
+  if [ ${do_mail} = "yes" ] ; then
+    echo Sending test results to GCC community..
+    ${DIR}/contrib/test_summary -m gcc-testresults@gcc.gnu.org | sh
+    if [ $? -ne 0 ] ; then
+      echo "Failed to email GCC Test Results to GCC Community .. bailing"
+      exit 1
+    fi
+
+    echo Sending test results to RTEMS community..
+    ${GCCDIR}/contrib/test_summary -o -m rtems-tooltestresults@rtems.org | sh
+    if [ $? -ne 0 ] ; then
+      echo "Failed to email GCC Test Results to RTEMS Community .. bailing"
+      exit 1
+    fi
+  fi
+  cd .. || exit 1
+else
+  echo Skipping GCC Go DejaGNU tests for ${cpu}/${bsp}
+fi
+
+if [ ${do_gccgo} = "yes" ] ; then<span style="background-color: #FF0000"> </span>
+  test ${do_cleanup} = "yes" && rm -rf b-gccgo1-${cpu}
</font> fi
 exit 0

<font color='#006600'>diff -u rtems-testing/gcc/rundeja:1.11 rtems-testing/gcc/rundeja:1.12
--- rtems-testing/gcc/rundeja:1.11      Tue Apr 13 08:18:20 2010
+++ rtems-testing/gcc/rundeja   Wed Jul 21 07:41:37 2010
</font><font color='#997700'>@@ -2,8 +2,8 @@
</font> #
 #
 
<font color='#880000'>-if [ $# -ne 1 ] ; then
-  echo USAGE: BSP
</font><font color='#000088'>+if [ $# -lt 2 ] ; then
+  echo USAGE: BSP COMPILER
</font>   exit 1
 fi
 
<font color='#997700'>@@ -111,20 +111,37 @@
</font>   echo "set boards_dir ${SCRIPTDIR}/dejagnu/boards" >${dfile}
 fi
 
<font color='#880000'>-RTEMS_MAKEFILE_PATH=${rtemsdir} \
-SCRIPTDIR=${SCRIPTDIR} \
-  make -f ${SCRIPTDIR}/gcc/Makefile.rtems_gccmain
-if [ $? -ne 0 ] ; then
-  echo unable to compile RTEMS GCC Main
-  exit 1
</font><font color='#000088'>+if [ $2 = gccgo ] ; then
+  RTEMS_MAKEFILE_PATH=${rtemsdir} \
+  SCRIPTDIR=${SCRIPTDIR} \
+    make -f ${SCRIPTDIR}/gcc/Makefile.rtems_gccgoinit
+  if [ $? -ne 0 ] ; then
+    echo unable to compile RTEMS GCC Go Init File
+    exit 1
+  fi
+  rtems_config=`pwd`/rtems_gccgo_init.o
+  make check-go RUNTESTFLAGS="\
+  SIM=${BSP_SIM} \
+  RTEMS_MAKEFILE_PATH=${rtemsdir} \
+  RTEMS_CONFIG_OBJ=${rtems_config} \
+  --target_board=rtems-${CPU}-${DEJABSP} \
+  "
+else
+  RTEMS_MAKEFILE_PATH=${rtemsdir} \
+  SCRIPTDIR=${SCRIPTDIR} \
+    make -f ${SCRIPTDIR}/gcc/Makefile.rtems_gccmain
+  if [ $? -ne 0 ] ; then
+    echo unable to compile RTEMS GCC Main
+    exit 1
+  fi
+  rtems_config=`pwd`/rtems_gcc_main.o
+  make check-gcc RUNTESTFLAGS="\
+  SIM=${BSP_SIM} \
+  RTEMS_MAKEFILE_PATH=${rtemsdir} \
+  RTEMS_CONFIG_OBJ=${rtems_config} \
+  --target_board=rtems-${CPU}-${DEJABSP} \
+  "
</font> fi
<font color='#880000'>-rtems_config=`pwd`/rtems_gcc_main.o
-make check-gcc RUNTESTFLAGS="\
-SIM=${BSP_SIM} \
-RTEMS_MAKEFILE_PATH=${rtemsdir} \
-RTEMS_CONFIG_OBJ=${rtems_config} \
---target_board=rtems-${CPU}-${DEJABSP} \
-"
</font> # "execute.exp=pr206*"
 # vect.exp=vect*
 # powerpc.exp=405*

<font color='#006600'>diff -u rtems-testing/gcc/test_driver:1.16 rtems-testing/gcc/test_driver:1.17
--- rtems-testing/gcc/test_driver:1.16  Mon Jul 19 19:43:02 2010
+++ rtems-testing/gcc/test_driver       Wed Jul 21 07:41:37 2010
</font><font color='#997700'>@@ -44,6 +44,7 @@
</font> do_one [options] CPU ..  CPU
   -A - enable clean, native, and update
   -a - build Ada (default=yes)
<font color='#000088'>+  -G - build GCC Go (default=yes)
</font>   -c - clean install point (also installs auto tools)
   -m - mail results to lists (default=yes)
   -n - build native
<font color='#997700'>@@ -60,6 +61,7 @@
</font> doNative="no"
 verbose="no"
 doAda="yes"
<font color='#000088'>+doGccGo="yes"
</font> doMail="yes"
 doTests="yes"
 
<font color='#997700'>@@ -72,6 +74,7 @@
</font>        doUpdateRTEMS=`toggle ${doUpdateRTEMS}`
        ;;
     a) doAda=`toggle ${doAda}` ;;
<font color='#000088'>+    G) doGccGo=`toggle ${doGccGo}` ;;
</font>     c) doCleanInstallPoint=`toggle ${doCleanInstallPoint}` ;;
     m) doMail=`toggle ${doMail}` ;;
     n) doNative=`toggle ${doNative}` ;;
<font color='#997700'>@@ -105,7 +108,8 @@
</font>   echo "Install Native:      " ${doNative}
   echo "Update Tool Source:  " ${doUpdateTools}
   echo "Update RTEMS:        " ${doUpdateRTEMS}
<font color='#880000'>-  echo "Build Ada            " ${doAda}
</font><font color='#000088'>+  echo "Build Ada:           " ${doAda}
+  echo "Build GCC Go:        " ${doGccGo}
</font>   echo "Email Results:       " ${doMail}
   echo "Run Tests:           " ${doTests}
   if [ "X${CPUs}" = "X" ] ; then
<font color='#997700'>@@ -118,6 +122,7 @@
</font> test ${doMail}  = "no"   && mailArg="-M"
 test ${doTests} = "yes" && testArg="-T"
 test ${doAda}   = "yes" && adaArg="-a"
<font color='#000088'>+test ${doGccGo} = "yes" && gccgoArg="-G"
</font> 
 start=`date`
 echo Started at: ${start}
<font color='#997700'>@@ -215,7 +220,7 @@
</font>     esac
 
     doOne=${SCRIPTDIR}/gcc/do_one<span style="background-color: #FF0000"> </span>
<font color='#880000'>-    time sh -x ${doOne} -v -b -D -1 -d -r ${adaArg} ${mailArg} ${testArg} \
</font><font color='#000088'>+    time sh -x ${doOne} -v -b -D -1 -d -r ${gccgoArg} ${adaArg} ${mailArg} ${testArg} \
</font>         ${cpu} ${bsp} >${BASEDIR}/${bsp}.log 2>&1
     echo $?
   done
</pre>
<p> </p>

<p>--<br />
<small>Generated by <a href="http://www.codewiz.org/projects/index.html#loginfo">Deluxe Loginfo</a> 2.122 by Bernardo Innocenti <bernie@develer.com></small></p>
</body>
</html>