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 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. 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 cvs -z 9 -d :pserver:anoncvs@sourceware.org:/cvs/src login cvs -z 9 -d :pserver:anonymous@www.rtems.org:/usr1/CVS login # test script infrastructure cvs -z 9 -d :pserver:anonymous@www.rtems.org:/usr1/CVS co -P rtems-testing make -C rtems-testing/sim-scripts # rtems cvs -z 9 -d :pserver:anonymous@www.rtems.org:/usr1/CVS co -P rtems # binutils mkdir binutils-cvs cd binutils-cvs READ ONLY: cvs -z 9 -d :pserver:anoncvs@sourceware.org:/cvs/src co binutils WRITE: CVS_RSH=ssh cvs -d :ext:joel@sourceware.org:/cvs/src co -P binutils cd .. # newlib mkdir newlib-cvs cd newlib-cvs READ ONLY: cvs -z 9 -d :pserver:anoncvs@sourceware.org:/cvs/src co newlib WRITE: CVS_RSH=ssh cvs -d :ext:joel@sourceware.org:/cvs/src co -P newlib cd .. # gdb mkdir gdb-cvs cd gdb-cvs READ ONLY: cvs -z 9 -d :pserver:anoncvs@sourceware.org:/cvs/src co gdb WRITE: CVS_RSH=ssh cvs -d :ext:joel@sourceware.org:/cvs/src co -P gdb cd .. # gcc READ ONLY: svn checkout svn://gcc.gnu.org/svn/gcc/trunk gcc-svn WRITE svn co svn+ssh://joel@gcc.gnu.org/svn/gcc/trunk gcc-svn # symlink newlib into gcc-svn cd gcc-svn ln -s ~/test-gcc/newlib-cvs/src/newlib . ln -s ~/test-gcc/newlib-cvs/src/libgloss . cd .. # obtain automake and autoconf from ftp.gnu.org as tarballs # NOTE: Check versions required for RTEMS CVS. wget ftp://ftp.gnu.org/pub/gnu/autoconf/autoconf-2.63.tar.bz2 tar xjf autoconf-2.63.tar.bz2 wget ftp://ftp.gnu.org/pub/gnu/automake/automake-1.10.2.tar.bz2 tar xjf automake-1.10.2.tar.bz2 # 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