This package contains a collection of scripts and support files that support running the GCC (http://gcc.gnu.org) testsuite for C, C++, Ada, FORTRAN, GCJ, Go, and Objective-C. This testing environment is used on the GCC Compile Farm as well as at OAR. Source Code and Patches ======================= You are responsible for downloading all the tools and setting up the source. And it should look something like this: TESTROOT - gcc SOURCE directory - gdb SOURCE directory - rtems SOURCE directory - automake SOURCE directory - autoconf SOURCE directory - binutils SOURCE directory - newlib SOURCE directory - rtems-testing (this package) Update rtems-testing/VERSIONS to point to the appropriate directories and versions. If the various source directories contain a CVS subdirectory, then they will be updated using CVS. If the various source directories contain a .svn subdirectory, then they will be updated using svn. Look near the top of do_one for a number of environment variables such as whether to build binutils and gdb from source or just copy the RPM contents to the working install point. do_one in this directory has a LOT of options to control what to do. You will need a toolchain to bootstrap and build RTEMS. This toolchain can be in turn build using rtems-source-builder. Once you've built the toolchain, add its 'bin' directory to $PATH, as follows: export PATH=/path/to/toolchain/bin:${PATH} Make sure you run the bootstrap script on the RTEMS source directory before running do_one -r. do_one -r will build RTEMS and its sample programs. You can use the samples to make sure the test runner works for your board. I.e you can run: ~/rtems-testing/sim-scripts/realview_pbx_a9_qemu -i ticker.exe and see if the results make sense. You may notice the ticker sample will run faster than "real time" because it's a simulation, and fast idle is enabled by default. How to Setup a Source Tree For Testing ====================================== # Make sure test bin directories are in your PATH # Add compiled tools install directory export PATH=${HOME}/test-gcc/install/bin:${PATH} # Add simulator scripts install directory export PATH=${HOME}/test-gcc/rtems-testing/bin:${PATH} mkdir ~/test-gcc cd ~/test-gcc # test script infrastructure git clone git://git.rtems.org/rtems-testing.git make -C rtems-testing/sim-scripts # rtems git clone git://git.rtems.org/rtems.git # binutils git clone git://sourceware.org/git/binutils.git # newlib git clone git://sourceware.org/git/newlib-cygwin.git # gdb wget ftp://ftp.gnu.org/gnu/gdb/gdb-7.10.tar.xz tar -xvf gdb-7.10.tar.xz rm gdb-7.10.tar.xz # gcc git clone git://gcc.gnu.org/git/gcc.git gcc-git # symlink newlib into gcc-svn cd gcc-svn ln -s ~/test-gcc/newlib-cygwin/src/newlib . ln -s ~/test-gcc/newlib-cygwin/src/libgloss . cd .. # obtain automake and autoconf from ftp.gnu.org as tarballs # NOTE: Check versions required for RTEMS CVS. wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.xz tar -xvf autoconf-2.69.tar.xz wget http://ftp.gnu.org/gnu/automake/automake-1.15.tar.xz tar -xvf automake-1.15.tar.xz # make install points mkdir install mkdir bsp-install mkdir log ### Verify the file VERSIONS matches your installation. ========================================= x86_64 Host ============ You will likely need the 32 bit glibc development kit. If you do not have this you will get an error like the following while building gcc: gnu/stubs-32.h: No such file or directory Fedora 10: yum install glibc-devel DejaGNU ======== Fedora 10: Install dejagnu RPM. MPFR/GMP ======== You must have a sufficiently recent version of GMP and MPFR to build GCC. On some OSes you can install a standard package. On others, you may have to provide your own installation. Fedora 10: Install mpfr-devel RPM. GNAT ==== You must have a native GNAT installed. . On some OSes you can install a standard package. On others, you may have to provide your own installation. The first step in the build process is building a native compiler with potentially C, C++ and Ada support. This compiler will be used for all subsequent cross tool builds. Fedora 10: Install gcc-gnat RPM. DejaGNU Support Files ===================== ${HOME}/.dejagnurc may point dejagnu to another location. set boards_dir /home/joel/dejagnu/boards The scripts in this directory use their own dejagnu/boards support. Ada ACATS Testing Support Files =============================== The files in gcc/testsuite/ada/acats/ directory support that directory in the gcc source tree. C/C++ Support Files ====================== The files rtems_gcc_main.c and rundeja in the top directory support the gcc/testsuite subdirectory in the gcc source tree. Skyeye Installation =================== 15 Jan 2009: 1.2.7 does not work with RTEMS. Unknown reason. Use 1.2.5 until this is resolved. mkdir ~/skyeye cd ~/skyeye svn co https://skyeye.svn.sourceforge.net/svnroot/skyeye/skyeye-v1/branches/skyeye-1.2.5/ cd skyeye-1.2.5 ./configure make