sbsv2/raptor/test/smoke_suite/toolchain_macros.py
author Richard Taylor <richard.i.taylor@nokia.com>
Wed, 14 Jul 2010 14:50:01 +0100
changeset 616 24e4ef208cca
parent 591 22486c9c7b15
permissions -rw-r--r--
sbs version 2.14.2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
591
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     1
#
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     2
# Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     3
# All rights reserved.
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     4
# This component and the accompanying materials are made available
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     5
# under the terms of the License "Eclipse Public License v1.0"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     6
# which accompanies this distribution, and is available
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     7
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     8
#
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     9
# Initial Contributors:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    10
# Nokia Corporation - initial contribution.
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    11
#
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    12
# Contributors:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    13
#
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    14
# Description: 
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    15
#
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    16
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    17
from raptor_tests import SmokeTest
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    18
import string
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    19
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    20
def run():
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    21
	t = SmokeTest()
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    22
	t.description = "Check that ARM toolchain specific macros are used in both metadata and source processing."
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    23
	t.warnings = -1
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    24
	
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    25
	toolchains = {
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    26
				'rvct2_2':   ['ARMCC', 'ARMCC_2', 'ARMCC_2_2', '__ARMCC__', '__ARMCC_2__',  '__ARMCC_2_2__'],
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    27
				'rvct3_1':   ['ARMCC', 'ARMCC_3', 'ARMCC_3_1', '__ARMCC__', '__ARMCC_3__' , '__ARMCC_3_1__'],
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    28
				'rvct4_0':   ['ARMCC', 'ARMCC_4', 'ARMCC_4_0', '__ARMCC__', '__ARMCC_4__' , '__ARMCC_4_0__'],
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    29
				'gcce4_3_2': ['GCCE',  'GCCE_4',  'GCCE_4_3',  '__GCCE__',  '__GCCE_4__' ,  '__GCCE_4_3__'],
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    30
				'gcce4_3_3': ['GCCE', 'GCCE_4', 'GCCE_4_3', '__GCCE__', '__GCCE_4__' , '__GCCE_4_3__'],
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    31
				'gcce4_4_1': ['GCCE', 'GCCE_4', 'GCCE_4_4', '__GCCE__', '__GCCE_4__' , '__GCCE_4_4__']
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    32
				}
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    33
	
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    34
	rootname = "toolchain_macros_armv5_%s_%s"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    35
	rootcommand = "sbs -b smoke_suite/test_resources/toolchain_macros/bld.inf -c arm.v5.urel."
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    36
	macromatch = ": #warning( directive:)? %s(</warning>)?$"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    37
	
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    38
	count = 0	
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    39
	for toolchain in sorted(toolchains.keys()):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    40
		t.id = "0095" + string.ascii_lowercase[count]
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    41
		t.name = rootname % (toolchain, "clean")
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    42
		t.command = rootcommand + toolchain + " clean"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    43
		t.mustmatch_singleline = []
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    44
		t.run()
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    45
		count += 1
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    46
		
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    47
		t.id = "0095" + string.ascii_lowercase[count]
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    48
		t.name = rootname % (toolchain, "build")
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    49
		t.command = rootcommand + toolchain
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    50
		mustmatch = []	
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    51
		for macro in toolchains[toolchain]:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    52
			mustmatch.append(macromatch % macro)
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    53
		t.mustmatch_singleline = mustmatch
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    54
		t.run()
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    55
		count += 1
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    56
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    57
	t.id = "95"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    58
	t.name = "toolchain_macros"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    59
	t.print_result()
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    60
	return t