common/tools/generate_diamonds_tags_xml.pl
author Simon Howkins <simonh@symbian.org>
Wed, 27 Oct 2010 15:01:28 +0100
changeset 1315 8d797b367538
parent 693 9f583ada8e4e
permissions -rw-r--r--
Added new attributes found in v3 system definitions
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
601
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
     1
#! perl -w
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
     2
# Copyright (c) 2009 Symbian Foundation Ltd
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
     3
# This component and the accompanying materials are made available
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
     4
# under the terms of the License "Eclipse Public License v1.0"
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
     5
# which accompanies this distribution, and is available
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
     6
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
     7
#
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
     8
# Initial Contributors:
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
     9
# Symbian Foundation Ltd - initial contribution.
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    10
# 
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    11
# Contributors:
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    12
#
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    13
# Description:
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    14
# Generate an XML file in the Diamonds format to upload build tags to Diamonds
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    15
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    16
use strict;
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    17
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    18
use Getopt::Long;
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    19
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    20
my $taglist = 0;
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    21
my $outputfile = 0;
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    22
my $help = 0;
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    23
GetOptions((
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    24
	'tags:s' => \$taglist,
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    25
	'output:s' => \$outputfile,
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    26
	'help!' => \$help,
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    27
));
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    28
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    29
if ($help or !$outputfile)
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    30
{
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    31
	print "Usage: perl generate_diamonds_tags_xml.pl --tags COMMA_SEPARATED_TAG_LIST --output OUTPUT_FILE\n";
693
9f583ada8e4e Make script stop execution after help is displayed if --help
Dario Sestito <darios@symbian.org>
parents: 601
diff changeset
    32
	exit(0);
601
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    33
}
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    34
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    35
open(FILE, ">$outputfile");
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    36
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    37
print FILE <<_END_HEADER;
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    38
<?xml version=\"1.0\" encoding=\"utf-8\"?>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    39
<diamonds-build>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    40
  <schema>13</schema>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    41
  <tags>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    42
_END_HEADER
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    43
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    44
my @tags = split(/,/, $taglist);
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    45
for (@tags)
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    46
{
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    47
	print FILE "    <tag>$_</tag>\n";
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    48
}
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    49
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    50
print FILE <<_END_TRAILER;  
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    51
  </tags>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    52
</diamonds-build>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    53
_END_TRAILER
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    54
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents:
diff changeset
    55
close(FILE);