--- a/adaptationlayer/tsy/nokiatsy_dll/internal/test/nokiatsy_test_tool/doc/nokiatsy_test_tool_installer.pl Mon Nov 09 10:31:01 2009 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,797 +0,0 @@
-#
-# Copyright (c) 2007-2008 Nokia Corporation and/or its subsidiary(-ies).
-# All rights reserved.
-# This component and the accompanying materials are made available
-# under the terms of the License "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:
-#
-
-########################################## VARIABLES ##########################################
-
-$appname_and_version = "NokiaTSY Test Tool - installer v1";
-$date_and_author = "20-Nov-2008 Martti Suvanne";
-
-#info string
-$syntax = "\n----------------------------------------------------------------------------\n";
-$syntax = $syntax. " $appname_and_version $date_and_author\n";
-$syntax = $syntax. "----------------------------------------------------------------------------\n\n";
-$syntax = $syntax. "Checks that the environment is ready for testing, and makes the necessary\n";
-$syntax = $syntax. "changes to NokiaTSY. \n";
-$syntax = $syntax. "NOTE: you have to have your environment mapped as a virtual drive \n\n\n";
-$syntax = $syntax. "";
-$syntax = $syntax. "*************************************************************************";
-$syntax = $syntax. "*** THIS SCRIPT SHOULD BE RUN IN THE DIRECTORY IN WHICH IT IS LOCATED ***";
-$syntax = $syntax. "*************************************************************************";
-$syntax = $syntax. "";
-$syntax = $syntax. "Usage: install.pl [/parameters] \n\n";
-$syntax = $syntax. " /? Show this help.\n";
-$syntax = $syntax. " /N NO to ALL, this installs ONLY the modifications that are\n";
-$syntax = $syntax. " not overwriting anything. And does NOT compile anything.\n";
-$syntax = $syntax. " /Y YES to ALL, this installs ALL the modifications and\n";
-$syntax = $syntax. " compiles everything.\n";
-$syntax = $syntax. " /cs Activate scripts only.\n";
-$syntax = $syntax. " /compileonly YES to all COMPILATIONS.\n";
-$syntax = $syntax. " /modifyonly YES to all COMPILATIONS.\n";
-$syntax = $syntax. " /version show version and environment information\n\n\n";
-$syntax = $syntax. "HELP END.\n----------------------------------------------------------------------------\n";
-
-#GLOBAL VARs
-$stif_installation = 0; #0-no stiff, 1-stiff exist, but not compiled, 2-stif ok
-$testtool_installation = 0; #0-no ntsytt, 1-ntsytt exist, but not compiled, 2-ntsytt ok
-$nokiatsy_installation = 0; #0-no ntsy, 1-ntsy exist, but not compiled, 2-ntsy ok
-
-$compileall = 0; #ask, yes, no
-$modifyall = 0; #ask, yes, no
-
-$mod_flag = "INTERNAL_NTSY_TESTTOOL_MOD";
-$nokiatsy_path = "";
-
-########################################## SCRIPT STARTS ##########################################
-
-$amount = @ARGV;
-#if($amount==0){die "\nHelp:".$syntax;} #empty
-
-# Make files modifiable
-chdir ("cd ../../../../../..");
-system ("attrib -R /S");
-
-for($i_args=0;$i_args<$amount;$i_args++)
- {
- #HELP
- if (@ARGV[$i_args] =~ m/^[\/-](\?|h|help)$/i)
- {
- die "\nHelp:".$syntax;
- }
- #VERSION
- elsif(@ARGV[$i_args] =~ m/^[\/-](v|version)$/i)
- {
- die "\n$appname_and_version - $date_and_author\n\n";
- }
- #N
- elsif(@ARGV[$i_args] =~ m/^[\/-](n|no)$/i)
- {
- print "\nNO to all.\n";
- $compileall =2;
- $modifyall =2;
- }
- #Y
- elsif(@ARGV[$i_args] =~ m/^[\/-](y|yes)$/i)
- {
- print "\nYES to all.\n";
- $compileall =1;
- $modifyall =1;
- }
- #compileonly
- elsif(@ARGV[$i_args] =~ m/^[\/-](compileonly)$/i)
- {
- print "\nCOMPILE only.\n";
- $compileall =1;
- $modifyall =2;
- }
- #modifyonly
- elsif(@ARGV[$i_args] =~ m/^[\/-](modifyonly)$/i)
- {
- print "\nMODIFY only.\n";
- $compileall =2;
- $modifyall =1;
- }
- #modifyonly
- elsif(@ARGV[$i_args] =~ m/^[\/-](cs|copyscript)$/i)
- {
- print "\nSCRIPT COPY only.\n";
- $compileall =2;
- $modifyall =2;
- $testroot = "";
- $testroot = ( !length($testroot) && (-e "/CASW_Integrated/modemadaptation/adaptationlayer/tsy/nokiatsy_dll/internal/test/nokiatsy_test_tool/group/bld.inf"))? "/casw" : $testroot; #CASW
- $testroot = ( !length($testroot) && (-e "/nokiatsy_test_tool/core/group/bld.inf"))? "/" : $testroot; #root
- if(!length($testroot))
- {
- die "NO NTSY Test Tool installation found.\n";
- }
- goto ACTIVATESCRIPTS;
- }
- #BAD INPUT
- else
- {
- die "Invalid parameter($i_args): @ARGV[$i_args].\n";
- }
- }
-
-print "\n----------------------------------------------------------------------------\n $appname_and_version $date_and_author\n----------------------------------------------------------------------------\n";
-
-
-### FIND PATHS ###
-
-$stifroot = "";
-$stifroot = ( !length($stifroot) && (-e "/CASW_Integrated/stif/TestEngine/group/bld.inf"))? "/CASW_Integrated" : $stifroot; #CASW
-$stifroot = ( !length($stifroot) && (-e "/stif/TestEngine/group/bld.inf"))? "/" : $stifroot; #root
-if( !length($stifroot) )
- {
- die "NO STIF installation found.\n";
- }
-
-print " - PATH: \"".$stifroot."\"\n";
-
-$testroot = "";
-$testroot = ( !length($testroot) && (-e "/CASW_Integrated/modemadaptation/adaptationlayer/tsy/nokiatsy_dll/internal/test/nokiatsy_test_tool/group/bld.inf"))? "/CASW_Integrated/modemadaptation/adaptationlayer/tsy/nokiatsy_dll/internal/test" : $testroot; #CASW
-$testroot = ( !length($testroot) && (-e "/nokiatsy_test_tool/core/group/bld.inf"))? " " : $testroot; #root
-if(!length($testroot))
- {
- die "NO NTSY Test Tool installation found.\n";
- }
-print " - PATH: \"".$testroot."\"\n";
-
-$nokiatsy_path = "";
-$nokiatsy_path = ( !length($nokiatsy_path) && (-e "/CASW_Integrated/modemadaptation/adaptationlayer/tsy/group/bld.inf"))? "/CASW_Integrated/modemadaptation/adaptationlayer" : $nokiatsy_path; #CASW
-#$nokiatsy_path = ( !length($nokiatsy_path) && (-e "/ncp_sw/corecom/modemadaptation/adaptationlayer/tsy/group/bld.inf"))? "/ncp_sw/corecom/modemadaptation/adaptationlayer" : $nokiatsy_path; #3.0 RND
-#$nokiatsy_path = ( !length($nokiatsy_path) && (-e "/ape_cmt/NokiaTSY/NokiaTSY/group/bld.inf"))? "/ape_cmt/NokiaTSY" : $nokiatsy_path; #2.8 RND
-#$nokiatsy_path = ( !length($nokiatsy_path) && (-e "/bs_adaptation/casw_adaptation/NokiaTSY/NokiaTSY/group/bld.inf" ))? "/bs_adaptation/casw_adaptation/NokiaTSY" : $nokiatsy_path; #OLD 3.0 RND
-#$nokiatsy_path = ( !length($nokiatsy_path) && (-e "/baseservices/adaptation/nokiaadaptation/NokiaTSY/NokiaTSY/group/bld.inf"))? "/baseservices/adaptation/nokiaadaptation/NokiaTSY" : $nokiatsy_path; #2.6
-if(!length($nokiatsy_path))
- {
- die "NO NokiaTSY installation found.\n";
- }
-print " - PATH: \"".$nokiatsy_path."\"\n";
-
-
-########################################## MODIFICATIONs START ##########################################
-#
-# Do the modifications to different files
-
-print "\n____________________________________________________________________________\n1. INSTALLING CHANGES.\n";
-
-if(2!=$modifyall) #NO MODIFY
- {
- $mod_amount = &AddMods();
- #print "MODS: $mod_amount";
-
- for($i_mods=0;$i_mods<$mod_amount;$i_mods++)
- {
- &Modify($mod_file{$i_mods}, $mod_oper{$i_mods}, $mod_srch{$i_mods}, $mod_text{$i_mods},$i_mods, $mod_nodf{$i_mods});
- }
-
- }
-else
- {
- print " - MODIFICATIONS SKIPPED";
- }
-
-########################################## COMPILING PHASES ##########################################
-#
-# it is checked that all the components required are installed properly
-# also if some components haven't been compiled, user is prompted for compilation
-#
-
-#--------------------------------------------------------------------------
-# NokiaTSY
-#--------------------------------------------------------------------------
-print "\n____________________________________________________________________________\n4. NOKIATSY.\n";
-$nokiatsy_installation |= (-e $nokiatsy_path."/tsy/group/bld.inf")? 1 : 0;
-$nokiatsy_installation |= (-e "/epoc32/release/winscw/UREL/NOKIATSY.DLL")? 2 : 0;
-
-
-print " - Clean and export for NokiaTSY (export is needed for Nokia TSY Test Tool)";
-
-#INSTALLATION DIR seems to exist. Clean and export (export is needed for Nokia TSY Test Tool).
-if( $nokiatsy_installation&1 )
- {
- #COMPILE
- print " - CLEAN AND EXPORT. \n";
-
- $cpath= $nokiatsy_path."/tsy/group";
- &Cleanandcompile($cpath,1);
- }
-else
- {
- print " - NokiaTSY was not found! You need to extract the NokiaTSY in order to use the tool\n You can for example get a snapshot\n from NokiaTSY's newest release project from Synergy.\n";
- print " ...ERROR.\n";
- exit;
- }
-print " ...OK.\n";
-
-
-#--------------------------------------------------------------------------
-# NTSY Test Tool
-#--------------------------------------------------------------------------
-print "\n____________________________________________________________________________\n3. NOKIATSY TEST TOOL.\n";
-$testtool_installation |= (-e $testroot."/nokiatsy_test_tool/core/group/bld.inf")? 1 : 0;
-$testtool_installation |= (-e "/epoc32/release/winscw/UREL/NTT_core.dll")? 2 : 0;
-
-
-#INSTALLATION DIR seems to exist
-if( $testtool_installation&1 )
- {
- $cpath=$testroot."/NokiaTSY_Test_Tool/group";
- &Compile($cpath);
- }
-else #if($stif_installation==0 || $stif_installation==2)
- {
- print " - Test Tool was not found! You need to extract the NokiaTSY Test Tool in order to use it\n You can for example get a snapshot\n from NokiaTSY_Test_Tool's newest release project from Synergy.\n";
- print " ...ERROR.\n";
- exit;
- }
-print " ...OK.\n";
-
-
-
-
-
-#--------------------------------------------------------------------------
-# NokiaTSY
-#--------------------------------------------------------------------------
-print "\n____________________________________________________________________________\n4. NOKIATSY.\n";
-$nokiatsy_installation |= (-e $nokiatsy_path."/tsy/group/bld.inf")? 1 : 0;
-$nokiatsy_installation |= (-e "/epoc32/release/winscw/UREL/NOKIATSY.DLL")? 2 : 0;
-
-
-#INSTALLATION DIR seems to exist
-if( $nokiatsy_installation&1 )
- {
- #COMPILE
- $cpath= $nokiatsy_path."/tsy/group";
- &Compile($cpath,1);
- }
-else
- {
- print " - NokiaTSY was not found! You need to extract the NokiaTSY in order to use the tool\n You can for example get a snapshot\n from NokiaTSY's newest release project from Synergy.\n";
- print " ...ERROR.\n";
- exit;
- }
-print " ...OK.\n";
-
-
-########################################## ACTIVATE ALL SCRIPTS ##########################################
-ACTIVATESCRIPTS:
-print "\n____________________________________________________________________________\n6. COPY SCRIPTs.\n";
-if(1!=$compileall)
- {
- #ACTIVATE
- @filesfrom;
- use File::Find;
- find(\&SearchScripts, $testroot.'/NokiaTSY_Test_Tool'); #Fills the $filesfrom
- @filesto2 = ('/epoc32/winscw/c/TestFramework/TestFramework.ini');
- print "\n - ACTIVATE SCRIPTS:\n (NOTE: If you activate ALL the scripts, it may slow down starting test)\n";
- $fop = &ActivateScripts( \@filesfrom, \@filesto2 ); #passing references
- if( $fop != 1)
- {
- print " - error is script activation: $fop\n";
- }
- else
- {
- print " - activating ok.\n";
- }
- }
-
-
-
-########################################## ENDING ##########################################
-
-#ENDING
-print "\n____________________________________________________________________________\n\n";
-print " - Installer ended, to start the NokiaTSY Test Tool:\n Start emulator and give a command in prompt: consoleui\n and browse test cases using arrow keys.\n\n";
-exit;
-
-########################################## MAIN END ##########################################
-#----------------------------------------- MAIN END -----------------------------------------#
-
-
-
-
-
-
-
-
-
-
-
-########################################## SUBROUTINES ##########################################
-
-######### Compile and clean
-sub Compile
- {
- local($comppath) = $_[0]; #Compilation path
- local($notreally) = $_[1]; #No cleaning wanted
-
- chdir $comppath;
- print " - PREPARE BUILD FILES. \n";
- system("bldmake bldfiles") == 0 or exit;
-
- if(!$notreally)
- {
- print " - CLEAN OLD. \n";
- system("abld reallyclean winscw") == 0 or exit;
- }
- print " - BUILD WINSCW. \n";
- system("abld build winscw") == 0 or exit;
- }
-
-######### Compile and clean
-sub Cleanandcompile
- {
- local($comppath) = $_[0]; #Compilation path
-
- chdir $comppath;
- print " - PREPARE BUILD FILES. \n";
- system("bldmake bldfiles") == 0 or exit;
-
- print " - CLEAN OLD. \n";
- system("abld reallyclean winscw nokiatsy_dll") == 0 or exit;
-
- print " - BUILD WINSCW. \n";
- system("abld build winscw nokiatsy_dll") == 0 or exit;
-
- }
-
-######### Search
-sub SearchScripts
- {
- local($filetype) = 'cfg';
- if($_ =~ m/\.$filetype$/i)
- {
- print " ".$File::Find::name."\n";
- push(@filesfrom,$File::Find::name)
- }
- }
-
-######### Modify files
-sub Modify
- {
- local($filepath) = $_[0];
- local($operation) = $_[1];
- local($search) = $_[2];
- local($replace) = $_[3];
- local($id) = $_[4];
- local($nodef) = $_[5];
-
- local($mod_def_start) ="";
- local($mod_def_else) ="";
- local($mod_def_end) ="";
- local($data) = "";
- local($permission) = 1;
-
- #make paths to correct format
- $filepath =~ s/\\/\//g;
-
- my($directory, $filename) = $filepath =~ m/(.*\/)(.*)$/;
- local($linecomment) = ($filename =~ /\.ini$/i )?"#":"//";
-
- #flagging
- local($ifdefs) = ($filename =~ /\.(cpp|h|mmp)$/i )?1:0;
- local($mod_def_name) = ($filename =~ /\.mmp$/i )?$mod_flag."_MMP":$mod_flag;
- #print "def: $mod_def_name\n";
-
- local($changenote) = "\n\n".$linecomment."NOKIATSY TEST TOOL (ID:".$id.")";
-
- #OPEN FILE
- print "\n - modifying file: $filename\n -- reading..\n";
- if(!open( RESOURCE, "< $filepath" ))
- {
- print " -- NOT FOUND! skipped\n";
- return;
- }
-
- #read file
- while ( <RESOURCE> )
- {
- $data .= $_;
- }
- close( RESOURCE );
-
- #check if already modified
- $cn=$changenote;
- $cn =~ s/\s+/\\s\*/g;
- $cn =~ s/([().+?\/])/\\$1/g;
- if($data =~ /$cn/ )
- {
- print " -- File has been modified already, proceed anyway? [y/n] ";
-
- $modcomp= &ReadKey();
-
- if($modcomp =~ m/^[^y]/i)
- {
- $permission = 0;
- }
- }
-
- if($permission!=0)
- {
- print " -- applying modification\n";
-
- if($ifdefs!=0 && $nodef!=1)
- {
- $mod_def_start = ($filename =~ /\.(mmp)$/i )?"\n#if defined $mod_def_name\n":"#ifdef $mod_def_name\n";
- $mod_def_else = "\n#else //$mod_def_name\n";
- $mod_def_end = "\n#endif //$mod_def_name\n";
- }
-
- #PREPARE SEARCH
- $search =~ s/\s+/\\s\*/g;
- $search =~ s/([().+?\/])/\\$1/g;
- $search =~ s/_ANY_/\)\(\(\.\|\\s\)\*\?\)\(/g;
- $mod_text=~ s/\s+/\\s\*/g;
- $mod_text=~ s/([().+?\/])/\\$1/g;
-
- #AFTER ANY
- if("afterany" eq $operation)
- {
- $changenote .= "(added following)\n";
- if($data =~ /($search)/ )
- {
- $mod = ($ifdefs!=0 && $nodef!=1)?"$mod_def_start$replace$mod_def_end":"$replace";
- $data =~ s/($search)/$1$2$changenote$mod\n$4/g;
- }
- else
- {
- print " -- not found:\n $search";
- }
- }
- #REPLACE
- elsif("replace" eq $operation)
- {
- $changenote .= "(replacement)\n";
- if($data =~ /($search)/ )
- {
- $mod = ($ifdefs!=0 && $nodef!=1)?"$mod_def_start$replace$mod_def_else$1$mod_def_end":"$replace";
- $data =~ s/($search)/$changenote$mod\n/g;
- }
- else
- {
- print " -- not found ($operation):\n $search";
- }
- }
-
- #COMMENT
- elsif("comment" eq $operation)
- {
- $changenote .= "(commented following)\n";
- if($data =~ /($search)/ )
- {
- $commented = $1;
- $comm = $commented;
- $commented =~ s/\n/\n$linecomment/g;
- $mod = ($ifdefs!=0 && $nodef!=1)?"$mod_def_start$linecomment$commented$mod_def_else$comm$mod_def_end":"$linecomment$commented";
- $data =~ s/($search)/$changenote$mod/g;
- }
- else
- {
- print " -- not found:\n \"$search\"\n";
- }
- }
- #UNCOMMENT
- elsif("uncomment" eq $operation)
- {
- $changenote .= "(uncommented following)\n";
- if($data =~ /([\s#\/]*$search)/ )
- {
- $uncommented = $1;
- $uncommented =~ s/(^\s*$linecomment|(\n)\s*$linecomment)/$2/g;
- $mod = ($ifdefs!=0 && $nodef!=1)?"$mod_def_start$uncommented$mod_def_else$1$mod_def_end":"$uncommented";
- $data =~ s/([\s#\/]*$search)/$changenote$mod/g;
- }
- else
- {
- print " -- not found:\n \"$search\"\n";
- }
- }
-
- #ADD BELOW (add below search)
- elsif("addbelow" eq $operation)
- {
- $changenote .= "(added)\n";
- if($data =~ /($search)/ )
- {
- $mod = ($ifdefs!=0 && $nodef!=1)?"$mod_def_start$replace$mod_def_end":"$replace";
- $data =~ s/($search)/$1$changenote$mod\n/g;
- }
- else
- {
- print " -- not found:\n \"$search\"\n";
- }
- }
- #ADD TO TOP
- elsif("addtop" eq $operation)
- {
- $changenote .= "(added)\n";
- $mod = ($ifdefs!=0 && $nodef!=1)?"$mod_def_start$replace$mod_def_end":"$replace";
- $data = "$changenote$mod\n$data";
- }
-
- #UNKNOWN
- else
- {
- print " -- unknown modification request: \"$operation\"\n";
- }
-
- $mod="";
- open( OUTFILE, "> $filepath" ) || die " - BREAK: Cannot open output file, is it marked READ ONLY?.\n$!\n";
- print OUTFILE $data;
- close( OUTFILE );
- }
- else
- {
- print " -- modification skipped\n";
- }
- print " -- modification end\n";
- }
-
-######### COPY FROM -> TO
-sub CopyFiles
- {
- my($ref_from, $ref_to) = @_; # Two
- local(@from) = @{$ref_from};
- local(@to) = @{$ref_to};
- local($size_from) = scalar(@from);
- local($size_to) = scalar(@to);
-
- if($size_from==0 || $size_to==0)
- {
- return (" - no files to copy.\n");
- }
-
- local($i_from);
- for( $i_from=0; $i_from<$size_from; $i_from++ )
- {
- local($i_to);
- for( $i_to=0; $i_to<$size_to; $i_to++ )
- {
- #$fromall = join('+', @from);
-
- #make paths to correct format
- @from[$i_from] =~ s/\//\\/g;
- @to[$i_to] =~ s/\//\\/g;
- $command = "copy ".@from[$i_from]." ".@to[$i_to]." /-Y\n";
-
- #print $command;
- system($command) == 0 or return ("Copy Error.");
- }
- }
- print " - COPY FINISHED\n";
- return 1;
- }
-
-
-######### ACTIVATE SCRIPTS
-sub ActivateScripts
- {
- my($ref_name, $ref_location) = @_; # Two
- local(@name) = @{$ref_name};
- local(@location) = @{$ref_location};
- local($size_name) = scalar(@name);
- local($size_location) = scalar(@location);
-
- if($size_name==0 || $size_location==0)
- {
- return (" - no scripts to activate.\n");
- }
-
- #COMMENT DEMO MODULE
- # -----------------------------------------------------------------------
- $scr_id = 100;
- $scr_file{$scr_id} = @location[0]; #'/epoc32/winscw/c/TestFramework/TestFramework.ini';
- $scr_oper{$scr_id} = 'comment';
- $scr_srch{$scr_id} =
- '\[New_Module\]
- ModuleName= demomodule
- \[End_Module\]';
- $scr_text{$scr_id} = '';
- $scr_nodf{$scr_id} = 1; #NOKIATSY defs are not active
- $scr_id++;
-
- #COMMENT ADAPTATION TEST ENV
- # -----------------------------------------------------------------------
- $scr_file{$scr_id} = @location[0]; #'/epoc32/winscw/c/TestFramework/TestFramework.ini';
- $scr_oper{$scr_id} = 'comment';
- $scr_srch{$scr_id} =
-'\[New_Module\]
-ModuleName= adaptationtestenvstifadapter
-\[End_Module\]';
- $scr_text{$scr_id} = '';
- $scr_nodf{$scr_id} = 1; #NOKIATSY defs are not active
- $scr_id++;
-
- local($i_name);
- local($old_name) = "";
- local($activated) = "";
-
- for( $i_name=0; $i_name<$size_name; $i_name++ )
- {
- my($scr_dir, $scr_filename) = @name[$i_name] =~ m/(.*\/)(.*)$/;
-
- if(!(@name[$i_name] eq $old_name))
- {
- print " - Do you want to add '".$scr_filename."' to the TestFramework.ini? [y/n] ";
- $key = &ReadKey();
- }
- if('y' eq $key)
- {
- $activated .= 'TestCaseFile= c:\\TestFramework\\'.$scr_filename."\n";
- }
- else
- {
- $activated .= '#TestCaseFile= c:\\TestFramework\\'.$scr_filename."\n";
- }
- $old_name = @from[$i_name];
- }
-
-if(length($activated))
- {
- #ADD NEW MODULEs
- # -----------------------------------------------------------------------
- $scr_file{$scr_id} = @location[0]; #'/epoc32/winscw/c/TestFramework/TestFramework.ini';
- $scr_oper{$scr_id} = 'addbelow';
- $scr_srch{$scr_id} =
- '# name of the test module when adding new test module';
- $scr_text{$scr_id} =
-'[New_Module]
-ModuleName= testscripter
-'.$activated.'[End_Module]';
- $scr_nodf{$scr_id} = 1; #NOKIATSY defs are not active
- $scr_id++;
- }
-
- $mod_amount = $scr_id;
-
- #modify
- for($i_mods=100;$i_mods<$mod_amount;$i_mods++)
- {
- &Modify($scr_file{$i_mods}, $scr_oper{$i_mods}, $scr_srch{$i_mods}, $scr_text{$i_mods},$i_mods, $scr_nodf{$i_mods});
- }
- print " - ACTIVATING FINISHED\n";
- return 1;
- }
-
-
-######### Read a Key.
-sub ReadKey
- {
- #READKEY
- $readkey=lc( getc(STDIN) );
- while($readkey =~ /([^a-z0-9])/ )
- {
- $readkey=lc( getc(STDIN) );
- }
- return substr( $readkey, 0, 1);
- }
-
-
-######### CREATING A MODIFICATION LIST
-#
-# each MOD shoud have at least three of the following:
-#
-# 1. $mod_file{$mod_id}
-# - path to the file to be modified
-#
-# 2. $mod_oper{$mod_id}
-# - modification operation, currently supported:
-# "addbelow" - adds text($mod_text) to $mod_file right after the $mod_srch -text
-# "replace" - replaces instances of $mod_srch by $mod_text
-# "comment" - puts a c-style comment to every line in $mod_srch
-# "afterany" - adds text($mod_text) to $mod_file according to a keyword "_ANY_" in $mod_srch
-# "addtop" - adds to top of the $mod_file
-#
-# 3. $mod_srch{$mod_id}
-# - search string(can be multiple lines)
-#
-# 4. $mod_text{$mod_id}
-# - text replacement or addition, depending on operation.
-#
-# 5. $mod_nodf{$mod_id}
-# - if the modification should _NOT_ be flagged. Use this only for special cases!
-#
-#
-sub AddMods
- {
- $mod_id = 0;
-
-
- # -----------------------------------------------------------------------
- $mod_file{$mod_id} = $nokiatsy_path.'/tsy/nokiatsy_dll/group/nokiatsy_dll.mmp';
- $mod_oper{$mod_id} = 'replace';
- $mod_srch{$mod_id} = 'LIBRARY commontsy.lib // for using Common Tsy';
- $mod_text{$mod_id} = 'LIBRARY NTT_core.lib // for TEST tool';
- $mod_id++;
-
- # -----------------------------------------------------------------------
- $mod_file{$mod_id} = $nokiatsy_path.'/tsy/nokiatsy_dll/group/nokiatsy_dll.mmp';
- $mod_oper{$mod_id} = 'addbelow';
- $mod_srch{$mod_id} = 'UID 0x1000008D 0x1000A84A';
- $mod_text{$mod_id} =
- ' #define '.$mod_flag.'_MMP
- #if defined('.$mod_flag.'_MMP)
- MACRO '.$mod_flag.'
- #endif //'.$mod_flag.'_MMP
- ';
- $mod_nodf{$mod_id} = 1;
- $mod_id++;
-
-
- #EPOC.INI (for running emulator in textshell)
- # -----------------------------------------------------------------------
- $mod_file{$mod_id} = '/epoc32/data/epoc.ini';
- $mod_oper{$mod_id} = 'addtop';
- $mod_srch{$mod_id} = '';
- $mod_text{$mod_id} = 'textshell';
- $mod_id++;
-
- # -----------------------------------------------------------------------
- $mod_file{$mod_id} = '/epoc32/data/epoc.ini';
- $mod_oper{$mod_id} = 'replace';
- $mod_srch{$mod_id} = 'configuration epoc_480x640.ini';
- $mod_text{$mod_id} = '// configuration epoc_480x640.ini';
- $mod_id++;
-
- # -----------------------------------------------------------------------
- $mod_file{$mod_id} = '/epoc32/data/epoc.ini';
- $mod_oper{$mod_id} = 'replace';
- $mod_srch{$mod_id} = 'configuration epoc_640x480.ini';
- $mod_text{$mod_id} = '// configuration epoc_640x480.ini';
- $mod_id++;
-
-
- #STIF SPEEDUP
- # -----------------------------------------------------------------------
- $mod_file{$mod_id} = $stifroot.'/stif/ConsoleUI/src/ConsoleUI.cpp';
- $mod_oper{$mod_id} = 'comment';
- $mod_srch{$mod_id} =
- ' RDebug::Print(_L("We have to wait until emulator is up & running"));
- User::After(40000000);';
- $mod_text{$mod_id} = '';
- $mod_nodf{$mod_id} = 1; #NOKIATSY defs are not active in STIF
- $mod_id++;
-
-
- #TEST FRAMEWORK INI (create your own additions)
- # -----------------------------------------------------------------------
- #$mod_file = '/stif/Group/TestFrameWork.INI';
- #$mod_file = '/epoc32/data/Z/System/Data/TestFrameWork.INI';
- #$mod_file = '/epoc32/winscw/c/TestFramework/TestFrameWork.INI';
- #$mod_file = '/epoc32/wins/c/TestFramework/TestFrameWork.INI';
- #$mod_id++;
-
-##################### ADD NEW MODIFICATIONS HERE ######################
-
-
- # NEW MOD TASK TEMPLATE
- #$mod_file{$mod_id} = '/filepath';
- #$mod_oper{$mod_id} = 'command'; #POSSIBLE KEYWORDS: ('afterany'|'replace'|'comment'|'addbelow')
- #$mod_srch{$mod_id} = 'searched text (multiline is ok)';
- #$mod_text{$mod_id} = 'text to be added (when relevant, otherwise leave empty)';
- #$mod_id++;
-
-##################### END MODIFICATIONS HERE ######################
- return ($mod_id);
- }
-
-
-
-########### END SUBROUTINES ###########
-
-################### SCRIPT ENDS ###################
\ No newline at end of file