diff -r 7c11c3d8d025 -r 44b0e894b7ab deprecated/buildtools/buildsystemtools/BuildClient.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/deprecated/buildtools/buildsystemtools/BuildClient.pl Wed Oct 27 19:35:19 2010 +0800 @@ -0,0 +1,88 @@ +# Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies). +# All rights reserved. +# This component and the accompanying materials are made available +# under the terms of "Eclipse Public License v1.0" +# which accompanies this distribution, and is available +# at the URL "http://www.eclipse.org/legal/epl-v10.html". +# +# Initial Contributors: +# Nokia Corporation - initial contribution. +# +# Contributors: +# +# Description: +# Script to Process builds commands sent from the Build Server via TCP/IP +# +# + +use strict; +use FindBin; # for FindBin::Bin +use Getopt::Long; + +# Add the directory contain this perl script into the path to find modules +use lib $FindBin::Bin; + +use BuildClient; + +# Process the commandline +my ($iDataSource, $iConnectWait, $iClientName, $iExitAfter, $iDebug) = ProcessCommandLine(); + +# Create socket to server +&BuildClient::Connect($iDataSource, $iConnectWait, $iClientName, $iExitAfter, $iDebug); + +# ProcessCommandLine +# +# Inputs +# +# Outputs +# $iDataSource - Reference to array of Hostname:Port combinations to try in sequence +# $iConnectWait (How often it polls for a build server) +# $iClientName (Client name used to help identify the machine, Must be unique) +# $iExitAfter - Number of succesful connections to exit after +# $iDebug - Prints Command output to screen to help debug +# +# Description +# This function processes the commandline + +sub ProcessCommandLine { + my ($iHelp, @iDataSource, $iConnectWait, $iDebug); + my ($iExitAfter) = -1; #Set default to never exit + GetOptions('h' => \$iHelp, 'd=s' => \@iDataSource, 'debug:s' => \$iDebug, 'w=i' => \$iConnectWait, 'c=s' => \$iClientName, 'e=i' => \$iExitAfter); + + if (($iHelp) || (!defined @iDataSource) || (!defined $iConnectWait) || (!defined $iClientName)) + { + &Usage(); + } else { + foreach my $iMachine (@iDataSource) + { + &Usage() if ($iMachine !~ /^\S+:\d+/); + } + return(\@iDataSource, $iConnectWait, $iClientName, $iExitAfter, $iDebug); + } +} + +# Usage +# +# Output Usage Information. +# + +sub Usage { + print <