diff -r 000000000000 -r e3d532dd8b5d contrib/gcc-test-suite/Makefile --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/contrib/gcc-test-suite/Makefile Wed May 19 17:53:04 2010 +0200 @@ -0,0 +1,75 @@ +# Helper makefile which downloads (if required) and runs the GCC test suite (DejaGnu) +# +# Note: Before run please make sure to have your toolchain available in your path. +# +# Copyright 2010 DoréDevelopment +# +# Author: Martin Lund +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# + +# Internal directory configuration +TOPDIR=${shell pwd} +TMPDIR=${TOPDIR}/tmp + +# Include default configuration +include default.cfg + +# Add toolchain to path +PATH:=${DG_TOOLCHAIN_DIR}:${PATH} + +# Select test set +ifeq (${DG_TOOLNAME},gcc) + DG_TESTS=$(DG_C_TESTS) +endif +ifeq (${DG_TOOLNAME},g++) + DG_TESTS=$(DG_CPP_TESTS) +endif + +# Check that we have 'runtest' installed +RUNTEST=$(shell which runtest) +ifeq "${RUNTEST}" "" + $(error "DejaGnu 'runtest' not found - please install (eg. apt-get install dejagnu)") +endif + +# Targets +all: test + +gcc-testsuite-${DG_GCC_VERSION}.tar.gz: +# wget -nc ${DG_GCC_URL} + +gcc-${DG_GCC_VERSION}: gcc-testsuite-${DG_GCC_VERSION}.tar.gz +# tar xzf gcc-testsuite-${DG_GCC_VERSION}.tar.gz + +config: + @mkdir -p ${TMPDIR} + @{ echo 'lappend boards_dir "."'; \ + echo "set target_alias ${DG_TARGET}"; } > ${TMPDIR}/site.exp + @{ echo -e "load_generic_config \"unix\""; \ + echo -e "process_multilib_options \"\"" ; \ + echo "set_board_info bmk,use_alarm 1" ; \ + echo "set_board_info rsh_prog ssh" ; \ + echo "set_board_info rcp_prog scp" ; \ + echo "set_board_info hostname ${DG_TARGET_HOSTNAME}"; \ + echo "set_board_info username ${DG_TARGET_USERNAME}"; } > ${TMPDIR}/board.exp + +test: gcc-${DG_GCC_VERSION} config + cd ${TMPDIR} && \ + runtest --tool ${DG_TOOLNAME} \ + --srcdir ${DG_SRC_DIR} \ + --all \ + --target ${DG_TARGET} \ + --target_board board \ + ${DG_TESTS} \ + GXX_UNDER_TEST=${DG_TARGET}-g++ ; \ + mv ${TMPDIR}/*.log ${TOPDIR} ; \ + mv ${TMPDIR}/*.sum ${TOPDIR} + +clean: + rm -rf gcc-testsuite-${DG_GCC_VERSION}.tar.gz gcc-${DG_GCC_VERSION} ${TMPDIR} *.log *.sum + +.PHONY: config test clean