contrib/gcc-test-suite/README
author Daniel Price <daniel.price@gmail.com>
Tue Nov 20 16:59:17 2012 -0800 (2012-11-20)
changeset 3126 333d3e40cbd1
parent 1966 10ad7f230f4b
permissions -rw-r--r--
scripts: refine static linking check to better guide the user

The current mechanism to check if static linking is possible, and the mesage
displayed on failure, can be puzzling to the unsuspecting user.

Also, the current implementation is not using the existing infrastructure,
and is thus difficult to enhance with new tests.

So, switch to using the standard CT_DoExecLog infra, and use four tests to
check for the host compiler:
- check we can run it
- check it can build a trivial program
- check it can statically link that program
- check if it statically link with libstdc++

That should cover most of the problems. Hopefully.

(At the same time, fix a typo in a comment)

Signed-off-by: Daniel Price <daniel.price@gmail.com>
[yann.morin.1998@free.fr: split original patch for self-contained changes]
[yann.morin.1998@free.fr: use steps to better see gcc's output]
[yann.morin.1998@free.fr: commit log]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Message-Id: <163f86b5216fc08c672a.1353459722@nipigon.dssd.com>
Patchwork-Id: 200536
     1 
     2 Helper Makefile for testing gcc toolchains using the gcc-testsuite
     3 ==================================================================
     4 
     5 Requirements
     6 ------------
     7 
     8 * DejaGnu 'runtest' v1.4.4+
     9 * Make v3.81+
    10 
    11 
    12 Configuration
    13 -------------
    14 
    15 Edit default.cfg to reflect your toolchain and target configuration.
    16 
    17 Alternatively, override configuration variables on the command line.
    18 
    19 Available config variables:
    20 
    21 DG_TOOLNAME
    22   The name of the tool you want to test.
    23   Currently supported: gcc or g++
    24   Default: gcc
    25 
    26 DG_TARGET_HOSTNAME
    27   The hostname or IP of the machine to execute run-tests
    28   Default: 127.0.0.1
    29 
    30 DG_TARGET_USERNAME
    31   Execute the run-test as this user on DG_TARGET_HOSTNAME
    32   Default: root
    33 
    34 DG_C_TESTS
    35 DG_CPP_TESTS
    36   The C/C++ tests you want to check
    37   Default: (empty, means all tests)
    38 
    39 
    40 Run examples
    41 ------------
    42 
    43 The first two examples require a networked target with ssh access and automatic
    44 ssh login (see section below). Target SW should be compiled with the toolchain 
    45 to be tested.
    46 
    47 Run default gcc compile/execution tests:
    48 $ make DG_TOOLNAME=gcc DG_TARGET_HOSTNAME=192.168.17.93 DG_TARGET_USERNAME=root
    49 
    50 Run default g++ compile/execution tests:
    51 $ make DG_TOOLNAME=g++ DG_TARGET_HOSTNAME=192.168.17.93 DG_TARGET_USERNAME=root
    52 
    53 Run selected gcc compile only tests (no target required):
    54 $ make DG_TOOLNAME=gcc DG_C_TESTS="compile.exp noncompile.exp" 
    55 
    56 
    57 SSH automatic login configuration example
    58 -----------------------------------------
    59 
    60 On host do: 
    61 ssh-keygen -t rsa (then simply press enter thru all steps)
    62 ssh-copy-id -i ~/.ssh/id_rsa.pub <username>@<target IP>
    63 
    64 Now automatic ssh login should work - test by doing a simple ssh session to target.
    65 
    66 Note: The procedure might be slightly different for your particular target.
    67 
    68 
    69 Getting rid of the test-suite
    70 -----------------------------
    71 
    72 If you no longer have a need for the test-suite, then you can remove it altogether
    73 from your toolchain. Just delete the test-suite/ dub-dir.
    74 
    75 
    76 Author
    77 ------
    78 Martin Lund <mgl@doredevelopment.dk>
    79   Initial content
    80 
    81 "Yann E. MORIN" <yann.morin.1998@free.fr>
    82   Getting rid of the test-suite
    83   Minor fixes