author | Matti Laitinen <matti.t.laitinen@nokia.com> |
Thu, 11 Feb 2010 15:51:35 +0200 | |
changeset 0 | f0f2b8682603 |
permissions | -rw-r--r-- |
0
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
1 |
/* |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
2 |
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
3 |
* All rights reserved. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
4 |
* This component and the accompanying materials are made available |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
5 |
* under the terms of "Eclipse Public License v1.0" |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html". |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
8 |
* |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
10 |
* Nokia Corporation - initial contribution. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
11 |
* |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
12 |
* Contributors: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
13 |
* |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
14 |
* Description: Defines the entry point for the console application. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
15 |
* |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
16 |
*/ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
17 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
18 |
// Includes. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
19 |
#include "../inc/ATCommonDefines.h" |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
20 |
#include "../inc/CATDatParser.h" |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
21 |
#include "../inc/CATParseTraceFile.h" |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
22 |
#include "../inc/CATProject.h" |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
23 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
24 |
//Debug logging parameters |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
25 |
//To enable debugging as argument to atool.exe use: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
26 |
//--show_debug / -show_debug : Normal logging in console. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
27 |
//--show_debug_all / -show_debug_all : Log all (low level functions also) to console. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
28 |
//--show_dbgview / -show_dbgview : Normal logging to windows debug messages. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
29 |
//--show_dbgview_all / -show_dbgview_all : Log all (low level functions also) to windows debug messages. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
30 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
31 |
//Return codes (errorlevel) defined in AT_RETURN_CODE structure see ATCommonDefines.h. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
32 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
33 |
extern bool g_bDebugConsole = false; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
34 |
extern bool g_bDebugDbgView = false; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
35 |
extern bool g_bDebugLowLevel = false; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
36 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
37 |
//Argument parsing. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
38 |
extern bool parseBaseArguments( vector<string>& vArgs, ARGUMENTS& args ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
39 |
extern bool parseHookArguments( vector<string>& vArgs, ARGUMENTS& args ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
40 |
extern bool parseOldHookArguments( vector<string>& vArgs, ARGUMENTS& args ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
41 |
extern bool parseAnalyzeArguments( vector<string>& vArgs, ARGUMENTS& args ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
42 |
extern bool parseHtiArguments( vector<string>& vArgs, ARGUMENTS& args ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
43 |
extern bool parseParseArguments( vector<string>& vArgs, ARGUMENTS& args ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
44 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
45 |
//Helps. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
46 |
extern void print_help( void ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
47 |
extern void print_syntax_examples( void ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
48 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
49 |
//AT Library check functions |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
50 |
extern bool CheckATLibrariesArmv5( string sEpocRoot ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
51 |
extern bool CheckATLibrariesArmv5Abiv2( string sEpocRoot ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
52 |
extern bool CheckATLibrariesWinscw( string sEpocRoot ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
53 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
54 |
//Hti functions. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
55 |
#ifdef HTI_SUPPORT |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
56 |
extern int htiGetReport( int argc, _TCHAR* argv[] ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
57 |
extern int htiDeleteFile( int argc, _TCHAR* argv[] ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
58 |
#endif |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
59 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
60 |
//CLE version functions. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
61 |
extern int showVersionInfo( void ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
62 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
63 |
//Miscelllanaeous functions. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
64 |
extern bool CheckSBS2Folder( void ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
65 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
66 |
const char DEBUG_PARAMETER_CONSOLE[] = "-debug"; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
67 |
const char DEBUG_PARAMETER_DBGVIEW[] = "-dbgview"; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
68 |
const char SBS2_PARAMETER[] = "-sbs2"; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
69 |
char g_cCurrentDir[MAX_LINE_LENGTH]; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
70 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
71 |
//Global compile class objects are neededif ctrl+c is pressed mmp file must be restored. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
72 |
CATProject project_module; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
73 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
74 |
//Parse object. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
75 |
CATParseTraceFile Parser; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
76 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
77 |
/** |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
78 |
* Handle process control signals. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
79 |
*/ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
80 |
BOOL WINAPI HandlerRoutine( DWORD dwCtrlType ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
81 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
82 |
//Run recovery and exit for project if user presses ctrl+c |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
83 |
//or close signal is received. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
84 |
if( dwCtrlType == CTRL_C_EVENT || dwCtrlType == CTRL_CLOSE_EVENT ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
85 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
86 |
int iMode = project_module.GetMode(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
87 |
if ( iMode == CATProject::COMPILE |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
88 |
|| iMode == CATProject::INSTRUMENT |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
89 |
|| iMode == CATProject::INSTRUMENT_CONSOLE ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
90 |
project_module.RunRecoveryAndExit(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
91 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
92 |
//Return false so program execution is stopped. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
93 |
return false; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
94 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
95 |
// TESTING |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
96 |
int _tmain( int argc, _TCHAR* argv[] ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
97 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
98 |
#ifdef MEM_LEAK_CHECK |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
99 |
_CrtSetDbgFlag ( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
100 |
#endif |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
101 |
try { |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
102 |
//Set function to handle process control signals. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
103 |
SetConsoleCtrlHandler( HandlerRoutine, true ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
104 |
vector<string> vArguments; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
105 |
for( int i = 1 ; i < argc ; i++ ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
106 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
107 |
vArguments.push_back( argv[i] ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
108 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
109 |
//Help variables. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
110 |
string sEpocRoot(""); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
111 |
//Parse base arguments. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
112 |
ARGUMENTS args; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
113 |
parseBaseArguments( vArguments, args ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
114 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
115 |
// Debugging messages. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
116 |
if ( args.bDebugConsole == true ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
117 |
g_bDebugConsole = true; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
118 |
if ( args.bDebugDbgView == true ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
119 |
g_bDebugDbgView = true; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
120 |
if ( args.bDebugLowLevel == true ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
121 |
g_bDebugLowLevel = true; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
122 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
123 |
//According to main switch parse rest arguments. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
124 |
switch( args.eMainSwitch ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
125 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
126 |
case SWITCH_UNKNOWN: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
127 |
print_help(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
128 |
return AT_RETURN_CODE::INVALID_ARGUMENT_ERROR; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
129 |
case SWITCH_ANALYZE: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
130 |
if ( ! parseAnalyzeArguments( vArguments, args ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
131 |
return AT_RETURN_CODE::INVALID_ARGUMENT_ERROR; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
132 |
// Get epocroot |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
133 |
if( ! CATBase::GetEpocRoot( sEpocRoot ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
134 |
return AT_RETURN_CODE::CANNOT_FIND_EPOCROOT; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
135 |
project_module.SetEpocRoot( sEpocRoot ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
136 |
// project not uninstrumented run it first. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
137 |
if ( ! project_module.IsUninstrumented() ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
138 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
139 |
project_module.SetMode( CATProject::UNINSTRUMENT_CONSOLE ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
140 |
project_module.Run(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
141 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
142 |
// Set mode. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
143 |
project_module.SetMode( CATProject::ANALYZE ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
144 |
project_module.SetLogLevel( args.ANALYZE.iLoggingLevel ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
145 |
project_module.SetDataFile( args.ANALYZE.sDataFile ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
146 |
if ( args.ANALYZE.bSymbolFile ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
147 |
project_module.SetRomSymbolFiles( args.ANALYZE.vSymbolFiles ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
148 |
project_module.SetDataFileOutput( args.ANALYZE.sOutputFile); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
149 |
return project_module.Run(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
150 |
case SWITCH_HOOK: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
151 |
// Parse arguments related to hooking. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
152 |
if ( ! parseHookArguments( vArguments, args ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
153 |
return AT_RETURN_CODE::INVALID_ARGUMENT_ERROR; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
154 |
// Set variables for project. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
155 |
if ( ! project_module.SetArguments( args ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
156 |
return AT_RETURN_CODE::INVALID_ARGUMENT_ERROR; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
157 |
// Get epocroot |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
158 |
if( ! CATBase::GetEpocRoot( sEpocRoot ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
159 |
return AT_RETURN_CODE::CANNOT_FIND_EPOCROOT; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
160 |
project_module.SetEpocRoot( sEpocRoot ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
161 |
// Check AnalyzeTool libraries |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
162 |
if ( _stricmp( args.HOOK.sPlatform.c_str(), "winscw") == 0 ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
163 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
164 |
// Emulator winscw platform |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
165 |
if ( ! CheckATLibrariesWinscw(sEpocRoot) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
166 |
return AT_RETURN_CODE::AT_LIBS_MISSING; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
167 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
168 |
else |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
169 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
170 |
// Armv5 |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
171 |
if ( args.HOOK.iBuildSystem == 2 ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
172 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
173 |
// Abiv2 |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
174 |
if ( ! CheckATLibrariesArmv5Abiv2(sEpocRoot) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
175 |
return AT_RETURN_CODE::AT_LIBS_MISSING; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
176 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
177 |
else |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
178 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
179 |
// Abiv1 |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
180 |
if( ! CheckATLibrariesArmv5(sEpocRoot) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
181 |
return AT_RETURN_CODE::AT_LIBS_MISSING; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
182 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
183 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
184 |
// Run hooking. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
185 |
return project_module.Run(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
186 |
//Uninstrument |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
187 |
case SWITCH_UNHOOK: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
188 |
// Set variables for project. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
189 |
if ( ! project_module.SetArguments( args ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
190 |
return AT_RETURN_CODE::INVALID_ARGUMENT_ERROR; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
191 |
// Get epocroot |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
192 |
if( ! CATBase::GetEpocRoot( sEpocRoot ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
193 |
return AT_RETURN_CODE::CANNOT_FIND_EPOCROOT; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
194 |
project_module.SetEpocRoot( sEpocRoot ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
195 |
return project_module.Run(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
196 |
//Support for old extensions. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
197 |
case SWITCH_OLD_HOOK: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
198 |
// Parse old style arguments related to hooking. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
199 |
if ( ! parseOldHookArguments( vArguments, args ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
200 |
return AT_RETURN_CODE::INVALID_ARGUMENT_ERROR; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
201 |
// Set mode for project. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
202 |
if( args.eHookSwitch == HOOK_OLD_EXTENSION_INSTRUMENT ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
203 |
project_module.SetMode( CATProject::INSTRUMENT ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
204 |
else if( args.eHookSwitch == HOOK_OLD_EXTENSION_UNINSTRUMENT ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
205 |
project_module.SetMode( CATProject::UNINSTRUMENT ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
206 |
else if( args.eHookSwitch == HOOK_OLD_EXTENSION_FAILED ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
207 |
project_module.SetMode( CATProject::UNINSTRUMENT_FAILED ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
208 |
else |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
209 |
return AT_RETURN_CODE::INVALID_ARGUMENT_ERROR; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
210 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
211 |
// Get epocroot |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
212 |
if( ! CATBase::GetEpocRoot( sEpocRoot ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
213 |
return AT_RETURN_CODE::CANNOT_FIND_EPOCROOT; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
214 |
project_module.SetEpocRoot( sEpocRoot ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
215 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
216 |
// Check AnalyzeTool libraries |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
217 |
if ( _stricmp( args.HOOK.sPlatform.c_str(), "winscw") == 0 ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
218 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
219 |
// Emulator winscw platform |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
220 |
if ( ! CheckATLibrariesWinscw(sEpocRoot) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
221 |
return AT_RETURN_CODE::AT_LIBS_MISSING; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
222 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
223 |
else |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
224 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
225 |
// Armv5 |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
226 |
if ( args.bEnableSbs2 == true ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
227 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
228 |
// Abiv2 |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
229 |
if ( ! CheckATLibrariesArmv5Abiv2(sEpocRoot) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
230 |
return AT_RETURN_CODE::AT_LIBS_MISSING; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
231 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
232 |
else |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
233 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
234 |
// Abiv1 |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
235 |
if( ! CheckATLibrariesArmv5(sEpocRoot) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
236 |
return AT_RETURN_CODE::AT_LIBS_MISSING; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
237 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
238 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
239 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
240 |
// In uninstrument we check folder otherwise the switch for sbs version. |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
241 |
if ( project_module.GetMode() == CATProject::UNINSTRUMENT ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
242 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
243 |
if ( CheckSBS2Folder() ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
244 |
project_module.SetBuildSystem( CATProject::SBS_V2 ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
245 |
else |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
246 |
project_module.SetBuildSystem( CATProject::SBS_V1 ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
247 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
248 |
else |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
249 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
250 |
if ( args.bEnableSbs2 == true ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
251 |
project_module.SetBuildSystem( CATProject::SBS_V2 ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
252 |
else |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
253 |
project_module.SetBuildSystem( CATProject::SBS_V1 ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
254 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
255 |
// platform |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
256 |
project_module.SetPlatform( args.HOOK.sPlatform ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
257 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
258 |
// build type |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
259 |
if ( !_stricmp( args.HOOK.sBuildType.c_str(), "urel" ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
260 |
project_module.SetBuildType( CATProject::UREL ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
261 |
else if ( !_stricmp( args.HOOK.sBuildType.c_str(), "udeb" ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
262 |
project_module.SetBuildType( CATProject::UDEB ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
263 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
264 |
// Variant |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
265 |
project_module.SetVariant( args.HOOK.sFeatureVariant ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
266 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
267 |
// If selected modules to be compiled |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
268 |
project_module.SetTargetModules( args.HOOK.vTargetPrograms ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
269 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
270 |
// S60 data file name |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
271 |
if ( args.HOOK.bDataFileName ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
272 |
project_module.SetS60FileName( args.HOOK.sDataFileName ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
273 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
274 |
// logging mode |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
275 |
if ( args.HOOK.iLoggingMode == 2 ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
276 |
project_module.SetLoggingMode( CATProject::S60 ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
277 |
else |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
278 |
project_module.SetLoggingMode( CATProject::XTI ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
279 |
// run |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
280 |
return project_module.Run(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
281 |
case SWITCH_VERSION: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
282 |
return showVersionInfo(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
283 |
case SWITCH_CLEAN: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
284 |
project_module.SetMode( CATProject::CLEAN ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
285 |
if ( CheckSBS2Folder() ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
286 |
project_module.SetBuildSystem( CATProject::SBS_V2 ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
287 |
else |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
288 |
project_module.SetBuildSystem( CATProject::SBS_V1 ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
289 |
return project_module.Run(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
290 |
case SWITCH_PARSE_TRACE: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
291 |
if ( ! parseParseArguments( vArguments, args ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
292 |
return AT_RETURN_CODE::INVALID_ARGUMENT_ERROR; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
293 |
if ( CATBase::IsDataFile( args.PARSE.sDataFile ) ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
294 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
295 |
cout << AT_MSG << "Error, " << args.PARSE.sDataFile << " is already parsed." << endl; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
296 |
return AT_RETURN_CODE::INVALID_ARGUMENT_ERROR; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
297 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
298 |
if ( args.PARSE.bOutputFile ) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
299 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
300 |
//Save data with name in arguments[3] |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
301 |
Parser.StartParse( args.PARSE.sDataFile.c_str(), args.PARSE.sOutputFile.c_str() ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
302 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
303 |
else |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
304 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
305 |
Parser.StartParse( args.PARSE.sDataFile.c_str(), NULL ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
306 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
307 |
return AT_RETURN_CODE::OK; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
308 |
#ifdef HTI_SUPPORT |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
309 |
case SWITCH_HTI_DELETE: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
310 |
return htiDeleteFile( argc, argv ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
311 |
case SWITCH_HTI_GET: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
312 |
return htiGetReport( argc, argv ); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
313 |
#endif |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
314 |
case SWITCH_HELP: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
315 |
print_help(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
316 |
print_syntax_examples(); |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
317 |
return AT_RETURN_CODE::OK; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
318 |
default: |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
319 |
cout << AT_MSG << "Invalid parameters." << endl; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
320 |
return AT_RETURN_CODE::INVALID_ARGUMENT_ERROR; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
321 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
322 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
323 |
} catch(...) |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
324 |
{ |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
325 |
cout << AT_MSG << "Error, unhandled exception." << endl; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
326 |
return AT_RETURN_CODE::UNHANDLED_EXCEPTION; |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
327 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
328 |
} |
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
329 |
|
f0f2b8682603
Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
330 |
//EOF |