change log for rtems-testing (2010-08-04)

rtems-vc at rtems.org rtems-vc at rtems.org
Wed Aug 4 14:10:05 UTC 2010


 *joel*:
2010-08-04	Joel Sherrill <joel.sherrill at oarcorp.com>

	* do_coverage: Add remove_unwanted_symbols.

M  1.289  rtems-coverage/ChangeLog
M   1.72  rtems-coverage/do_coverage

diff -u rtems-testing/rtems-coverage/ChangeLog:1.288 rtems-testing/rtems-coverage/ChangeLog:1.289
--- rtems-testing/rtems-coverage/ChangeLog:1.288	Mon Aug  2 11:28:03 2010
+++ rtems-testing/rtems-coverage/ChangeLog	Wed Aug  4 08:35:20 2010
@@ -1,3 +1,7 @@
+2010-08-04	Joel Sherrill <joel.sherrill at oarcorp.com>
+
+	* do_coverage: Add remove_unwanted_symbols.
+
 2010-08-02	Joel Sherrill <joel.sherrilL at OARcorp.com>
 
 	* Explanations.txt: Update. Remove old ones and add a number of new

diff -u rtems-testing/rtems-coverage/do_coverage:1.71 rtems-testing/rtems-coverage/do_coverage:1.72
--- rtems-testing/rtems-coverage/do_coverage:1.71	Wed Jul 14 11:29:00 2010
+++ rtems-testing/rtems-coverage/do_coverage	Wed Aug  4 08:35:20 2010
@@ -534,6 +534,17 @@
   fi
 }
 
+# remove symbols we do not want coverage on.
+# NOTE: As of 4 August 2010, we do not have any.
+remove_unwanted_symbols()
+{
+  cat
+#  sed -e '/IMFS_print_node/d' \
+#      -e '/IMFS_dump_directory/d' \
+#      -e '/IMFS_dump/d' \
+#      -e '/IMFS_memfile_maximum_size/d'
+}
+
 # Now we are ready to start doing real work
 start=`date`
 
@@ -713,7 +724,8 @@
       results_dir=${outputDir}
     fi
 
-    generate_symbols >${BASEDIR}/${BSP}-tests/rtems.syms
+    generate_symbols | remove_unwanted_symbols \
+      >${BASEDIR}/${BSP}-tests/rtems.syms
     syms=`cat ${BASEDIR}/${BSP}-tests/rtems.syms | wc -l`
     if [ ${syms} -eq 0 ] ; then
       fatal "no symbols found"


 *joel*:
2010-08-04	Vinu Rajashekhar <vinutheraj at gmail.com>

	* do_one, rundeja: Add support for libgo testing.
	* rtems_libgo_init.c: New file.

M   1.16  gcc/ChangeLog
M   1.17  gcc/do_one
A    1.1  gcc/rtems_libgo_init.c
M   1.13  gcc/rundeja

diff -u rtems-testing/gcc/ChangeLog:1.15 rtems-testing/gcc/ChangeLog:1.16
--- rtems-testing/gcc/ChangeLog:1.15	Thu Jul 22 06:39:24 2010
+++ rtems-testing/gcc/ChangeLog	Wed Aug  4 09:01:51 2010
@@ -1,3 +1,8 @@
+2010-08-04	Vinu Rajashekhar <vinutheraj at gmail.com>
+
+	* do_one, rundeja: Add support for libgo testing.
+	* rtems_libgo_init.c: New file.
+
 2010-07-22	Vinu Rajashekhar <vinutheraj at gmail.com>
 
 	* do_one: Add Go support. Plus some cleanup from Joel.

diff -u rtems-testing/gcc/do_one:1.16 rtems-testing/gcc/do_one:1.17
--- rtems-testing/gcc/do_one:1.16	Thu Jul 22 06:39:24 2010
+++ rtems-testing/gcc/do_one	Wed Aug  4 09:01:51 2010
@@ -50,6 +50,7 @@
 run_gcctests=no
 run_acats=no
 run_gccgotests=no
+run_libgotests=no
 # Do we send email to gcc-testresults with the test results?
 do_mail=yes
 # Are we noisy when running?
@@ -77,6 +78,7 @@
   -v - verbose
   -M - do NOT email test results to gcc-testresults
   -o - run GCC Go tests
+  -t - run libgo tests
 EOF
 }
 
@@ -95,7 +97,7 @@
   esac
 }
 
-while getopts bdDnv1cmargioCATMG OPT
+while getopts bdDnv1cmargiotCATMG OPT
 do
     case "$OPT" in
         A) do_binutils="yes"
@@ -105,6 +107,7 @@
            do_multilib="yes"
            do_ada="yes"
            do_gccgo="yes"
+           do_gccgo_multilib="yes"
            do_rtems="yes"
            ;;
         d) do_cleanup=`toggle ${do_cleanup}` ;;
@@ -132,6 +135,7 @@
         v) verbose=`toggle ${verbose}` ;;
         M) do_mail=`toggle ${do_mail}` ;;
         o) run_gccgotests=`toggle ${run_gccgotests}` ;;
+        t) run_libgotests=`toggle ${run_libgotests}` ;;
         *) fatal ;;
     esac
 done
@@ -172,6 +176,7 @@
   echo "Run GCC Tests : " ${run_gcctests}
   echo "Run ACATS     : " ${run_acats}
   echo "Run Go Tests  : " ${run_gccgotests}
+  echo "Do libgo Tests: " ${run_libgotests}
   echo "Email Tests   : " ${do_mail}
   echo "Native GCC    : " `type gcc`
   echo "PATH          : " ${PATH}
@@ -719,17 +724,17 @@
   cp testsuite/go/go.log testsuite/go/go.sum ${RDIR}
 
   if [ ${do_mail} = "yes" ] ; then
-    echo Sending test results to GCC community..
+    echo Sending Go test results to GCC community..
     ${DIR}/contrib/test_summary -m gcc-testresults at gcc.gnu.org | sh
     if [ $? -ne 0 ] ; then
-      echo "Failed to email GCC Test Results to GCC Community .. bailing"
+      echo "Failed to email GCC Go Test Results to GCC Community .. bailing"
       exit 1
     fi
 
-    echo Sending test results to RTEMS community..
+    echo Sending Go test results to RTEMS community..
     ${GCCDIR}/contrib/test_summary -o -m rtems-tooltestresults at rtems.org | sh
     if [ $? -ne 0 ] ; then
-      echo "Failed to email GCC Test Results to RTEMS Community .. bailing"
+      echo "Failed to email GCC GO Test Results to RTEMS Community .. bailing"
       exit 1
     fi
   fi
@@ -738,6 +743,21 @@
   echo Skipping GCC Go DejaGNU tests for ${cpu}/${bsp}
 fi
 
+##### Do the libgo tests
+if [ ${run_libgotests} = "yes" ] ; then
+  echo "Running libgo DejaGNU tests..."
+  cd ${BASEDIR}/b-gccgo1-${cpu} || exit 1
+  time sh -x ${SCRIPTDIR}/gcc/rundeja ${bsp} libgo \
+    >${LOGDIR}/${cpu}-libgotests-${bsp}.log 2>&1
+
+  RDIR=${RESULTSDIR}/${TARGET}-${bsp}/`date +%Y-%m-%d-%H-%M-%S`
+  mkdir -p ${RDIR}
+  cp ${TARGET}-${bsp}/libgo/testsuite/libgo-all.log \
+    ${TARGET}-${bsp}/libgo/testsuite/libgo-all.sum ${RDIR}
+else
+  echo Skipping libgo DejaGNU tests for ${cpu}/${bsp}
+fi
+
 if [ ${do_gccgo} = "yes" ] ; then 
   test ${do_cleanup} = "yes" && rm -rf b-gccgo1-${cpu}
 fi

diff -u /dev/null rtems-testing/gcc/rtems_libgo_init.c:1.1
--- /dev/null	Wed Aug  4 09:10:04 2010
+++ rtems-testing/gcc/rtems_libgo_init.c	Wed Aug  4 09:01:52 2010
@@ -0,0 +1,206 @@
+/*
+ *  Init for libgo testing.
+ */
+
+#include <rtems.h>
+#include <bsp.h>
+
+#include <stdlib.h>
+#include <stdio.h>
+
+#include <rtems/rtems_bsdnet.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include "networkconfig.h"
+
+#include <rtems/libcsupport.h>
+#include <rtems/imfs.h>
+#include <rtems/untar.h>
+/*
+ *  The tarfile image is built automatically externally.
+ */
+#include "FilesystemImage.h"
+#include "FilesystemImage.c"
+
+static void fileio_print_free_heap(void)
+{
+  printf("--- unused dynamic memory: %lu bytes ---\n",
+	 (unsigned long) malloc_free_space());
+}
+
+/*
+ * Set up first argument
+ */
+static int   argc     = 1;
+static char  arg0[20] = "rtems";
+static char *argv[20] = { arg0 };
+
+#if defined(MAIN_USE_REQUIRES_COMMAND_LINE)
+
+#define COMMAND_LINE_MAXIMUM 200
+
+#include <stdio.h>
+#include <ctype.h>
+
+void parse_arguments(
+  char   *buffer,
+  size_t  maximum_length
+)
+{
+  char   *cp;
+  char   *linebuf = buffer;
+  size_t  length;
+
+  for (;;) {
+
+    #if defined(MAIN_COMMAND_LINE)
+      strncpy (linebuf, MAIN_COMMAND_LINE, maximum_length);
+    #else
+      /*
+       * Read a line
+       */
+      printf (">>> %s ", argv[0]);
+      fflush (stdout);
+      fgets (linebuf, maximum_length, stdin);
+
+      length = strnlen( linebuf, maximum_length );
+      if ( linebuf[length - 1] == '\n' || linebuf[length - 1] == '\r' ) {
+	 linebuf[length - 1] = '\0';
+      }
+    #endif
+
+    /*
+     * Break line into arguments
+     */
+    cp = linebuf;
+    for (;;) {
+      while (isspace (*cp))
+        *cp++ = '\0';
+      if (*cp == '\0')
+        break;
+      if (argc >= ((sizeof argv / sizeof argv[0]) - 1)) {
+        printf ("Too many arguments.\n");
+        argc = 0;
+        break;
+      }
+      argv[argc++] = cp;
+      while (!isspace (*cp)) {
+        if (*cp == '\0')
+          break;
+        cp++;
+      }
+    }
+    if (argc > 1) {
+      argv[argc] = NULL;
+      break;
+    }
+    printf ("You must give some arguments!\n");
+  }
+
+  #if defined(DEBUG_COMMAND_LINE_ARGUMENTS)
+    {
+      int   i;
+      for (i=0; i<argc ; i++ ) {
+        printf( "argv[%d] = ***%s***\n", i, argv[i] );
+      }
+      printf( "\n" );
+    }
+  #endif 
+}
+
+
+#endif
+
+int main( int, char ** );
+
+void *POSIX_Init(
+  void *argument
+)
+{
+  //printk("Initializing Network\n");
+  rtems_bsdnet_initialize_network ();
+  //rtems_bsdnet_show_inet_routes ();
+#if defined(MAIN_USE_REQUIRES_COMMAND_LINE)
+  char command_line[ COMMAND_LINE_MAXIMUM ];
+  parse_arguments( command_line, COMMAND_LINE_MAXIMUM );
+#endif
+  
+  int status;
+
+  printf( "\nmaking the libgo_test_workdir directory\n" );
+  status = mkdir( "/libgo_test_workdir", 0777 );
+  printf( "mkdir() status : %d\n\n", status );
+
+  printf("=============== Loading filesystem image ===============\n");   
+  //status = Untar_FromMemory((char *)FilesystemImage, FilesystemImage_size);
+  status = rtems_tarfs_load ("/libgo_test_workdir", (uint8_t *) FilesystemImage, (size_t) FilesystemImage_size);
+	printf ("rtems_tarfs_load status : %d\n\n", status);
+  
+  printf( "\nchdir to the libgo_test_workdir directory\n" );
+  status = chdir( "/libgo_test_workdir" );
+  printf( "chdir() status : %d\n\n", status );
+  
+	printf( "\nMaking /tmp directory\n" );
+  status = mkdir( "/tmp", 0777 );
+  printf( "mkdir() status : %d\n\n", status );
+
+  printf("============== Look at Local Filesystem ==============\n");
+  printf( "PWD: " );
+  //pwd();
+
+  printf( "\n--->ls /\n" );
+  //ls("/");
+  
+  main(argc, argv);
+  exit(0);
+  return 0;
+}
+
+/* configuration information */
+
+/* NOTICE: the clock driver is explicitly disabled */
+#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
+#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
+
+#define CONFIGURE_POSIX_INIT_THREAD_TABLE
+// Works with 32 Mb too, this is faster 
+//#define CONFIGURE_EXECUTIVE_RAM_SIZE (5 * 1024 * 1024)
+#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 500
+#define CONFIGURE_MAXIMUM_POSIX_THREADS 400
+#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES  500
+#define CONFIGURE_MAXIMUM_TASK_VARIABLES (2 * 400)
+#define CONFIGURE_MAXIMUM_POSIX_SEMAPHORES 1
+#define CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS 10
+#define CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE (32 * 1024)
+#define CONFIGURE_MINIMUM_TASK_STACK_SIZE (4 * 1024)
+//#define CONFIGURE_MEMORY_OVERHEAD (4 * 1024)
+
+//#define CONFIGURE_MICROSECONDS_PER_TICK 1000
+#define CONFIGURE_TICKS_PER_TIMESLICE   50
+#define CONFIGURE_MICROSECONDS_PER_TICK RTEMS_MILLISECONDS_TO_MICROSECONDS(1000)
+
+#define CONFIGURE_MAXIMUM_TASKS 20
+#define CONFIGURE_MAXIMUM_SEMAPHORES 20
+//#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES    20
+
+#define CONFIGURE_USE_IMFS_AS_BASE_FILESYSTEM
+#define CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS 20
+
+#define CONFIGURE_PIPES_ENABLED TRUE
+#define CONFIGURE_MAXIMUM_PIPES 20
+//#define CONFIGURE_MAXIMUM_BARRIERS 20
+
+#define CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY TRUE
+//#define BSP_ZERO_WORKSPACE_AUTOMATICALLY 1
+#define CONFIGURE_UNIFIED_WORK_AREAS
+//#define CONFIGURE_MALLOC_DIRTY
+//#define CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY 1
+#define CONFIGURE_STACK_CHECKER_ENABLED TRUE
+
+#define CONFIGURE_MALLOC_STATISTICS
+
+#define CONFIGURE_INIT
+
+#include <rtems/confdefs.h>
+
+/* end of file */

diff -u rtems-testing/gcc/rundeja:1.12 rtems-testing/gcc/rundeja:1.13
--- rtems-testing/gcc/rundeja:1.12	Wed Jul 21 07:41:37 2010
+++ rtems-testing/gcc/rundeja	Wed Aug  4 09:01:52 2010
@@ -111,7 +111,18 @@
   echo "set boards_dir ${SCRIPTDIR}/dejagnu/boards" >${dfile}
 fi
 
-if [ $2 = gccgo ] ; then
+if [ $2 = libgo ] ; then
+  rtems_libgo_init=${SCRIPTDIR}/gcc/rtems_libgo_init.c
+  rtems_bin2c=${INSTALL}/bin/rtems-bin2c
+  make check-target-libgo RUNTESTFLAGS="\
+  SIM=${BSP_SIM} \
+  RTEMS_MAKEFILE_PATH=${rtemsdir} \
+  RTEMS_LIBGO_INIT=${rtems_libgo_init} \
+  RTEMS_BIN2C=${rtems_bin2c} \
+  RTEMS_CONFIG_OBJ= \
+  --target_board=rtems-${CPU}-${DEJABSP} \
+  "
+elif [ $2 = gccgo ] ; then
   RTEMS_MAKEFILE_PATH=${rtemsdir} \
   SCRIPTDIR=${SCRIPTDIR} \
     make -f ${SCRIPTDIR}/gcc/Makefile.rtems_gccgoinit



--

Generated by Deluxe Loginfo [http://www.codewiz.org/projects/index.html#loginfo] 2.122 by Bernardo Innocenti <bernie at develer.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/vc/attachments/20100804/351506d6/attachment.html>


More information about the vc mailing list