diff -r d6c1cc3e4806 -r dbd79466b1ed browserui/browser/IadSis/createIADpackages.pl --- a/browserui/browser/IadSis/createIADpackages.pl Fri Feb 19 22:53:19 2010 +0200 +++ b/browserui/browser/IadSis/createIADpackages.pl Fri Mar 12 15:43:05 2010 +0200 @@ -1,19 +1,31 @@ +#!perl +# ============================================================================ +# Name: createIADPackages.pl # -# Copyright (c) 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: This script generate various SIS package files depeding on the +# Description: This script generate various SIS package files depeding on the # depending on the variant selection. for example variant 01 will create # a package support English, French, Germany and Portuguese. +# +# Example for using this script: +# perl %name create_package.pl -v 15 -p armv5 -r urel -bmajor 7 -bminor 1 -bnumber 32 +# +# Copyright © 2008 Nokia. All rights reserved. +# This material, including documentation and any related computer +# programs, is protected by copyright controlled by Nokia. All +# rights are reserved. Copying, including reproducing, storing, +# adapting or translating, any or all of this material requires the +# prior written consent of Nokia. This material also contains +# confidential information which may not be disclosed to others +# without the prior written consent of Nokia. +# ============================================================================ +# +# TODOs +# If possible, make all the components configurable +# Support 5.0 and onward +# Notes: +# Currently only armv5 is supported, winscw is not supported +# Currently only urel is supported. udeb is not supported +# Currently variant support only CCB on 323 # use Getopt::Long; use File::Copy; @@ -26,12 +38,13 @@ use fcntl; my $usage = q{ -Description: This script generate browser SISx package file automatically. +Description: This script generate browser sisx package file automatically. This script usually is called by buildIADsis.pl. However it can be used separately as well. -Example: create_package.pl -v 01 -p armv5 -r urel -bmajor 7 -bminor 1 -bnumber 32 +Example: create_package.pl -s S60.323 -v 01 -p armv5 -r urel -bmajor 7 -bminor 1 -bnumber 32 Mandatory arguments: +-s: S60 platform. Value such as S60.323 or S60.50 -v: S60 language variant number -p: Build target platform. Valid values are: armv5 or winscw, only armv5 supported right now -r: Release build. Valid values are: urel or udeb, only urel supported right now @@ -43,8 +56,8 @@ - None Limitations -- This script is currently valid only for 'armv5 urel' builds on S60 3.2.3 platform. - +- This script only support armv5 urel currently +- This script is valid for CCB on 323 build currently }; my %num_lang = ( @@ -81,16 +94,20 @@ print @ARGV; print "\n"; -my ($variant_num,$platform,$release,$bmajor,$bminor,$bnumber); +my ($s60,$variant_num,$platform,$release,$bmajor,$bminor,$bnumber,$udeburel); +$s60 = "S60.323"; # Initialize the default value +$udeburel = "urel"; #my ($test1, $test2, $test3); -GetOptions("v=s", => \$variant_num, "p=s",=> \$platform, "r=s",=> \$release, - "bmajor=s", => \$bmajor, "bminor=s",=> \$bminor, "bnumber=s",=> \$bnumber) or die $usage; +GetOptions("s=s", => \$s60, "v=s", => \$variant_num, "p=s",=> \$platform, "r=s",=> \$release, + "bmajor=s", => \$bmajor, "bminor=s",=> \$bminor, "bnumber=s",=> \$bnumber, + "build=s", => \$udeburel) or die $usage; print "variant $variant_num \n"; -print "platform $platform \n"; +print "s60platform $s60 \n"; print "release $release \n"; print "bmajor, $bmajor \n"; print "bminor, $bminor \n"; print "bnumber, $bnumber \n"; +print "build $udeburel \n"; print "... package variant $variant_num\n"; print "... package platform $platform \n"; @@ -115,9 +132,20 @@ :"Nokia" ;Supports S60 3rd Edition -[0x102032BE], 0, 0, 0, {"Series60ProductID"} +ENDHEADER0 +# consider the platform support +# [0x102032BE], 0, 0, 0, {"Series60ProductID"} +# [0x1028315F], 0, 0, 0, {"Series60ProductID"} +# if ( $s60platform eq "S60.50" ) +if ( $s60 eq "S60.323" ) +{ + print CENPKGFILE "[0x102032BE], 0, 0, 0, \{\"Series60ProductID\"\} \n\n"; +} +if ( $s60 eq "S60.50" ) +{ + print CENPKGFILE "[0x1028315F], 0, 0, 0, \{\"Series60ProductID\"\} \n\n"; +} -ENDHEADER0 print CENPKGFILE "\; CenRep ini file\n"; my $SrcDir = "\\epoc32\\data\\z\\private\\10202be9\\"; my $TargetDir = "c:\\private\\10202be9\\"; @@ -153,9 +181,17 @@ :"Nokia" ;Supports S60 3rd Edition -[0x102032BE], 0, 0, 0, {"Series60ProductID"} - ENDHEADER +#[0x102032BE], 0, 0, 0, {"Series60ProductID"} +#[0x1028315F], 0, 0, 0, {"Series60ProductID"} +if ( $s60 eq "S60.323" ) +{ + print PKGFILE "[0x102032BE], 0, 0, 0, \{\"Series60ProductID\"\} \n\n"; +} +if ( $s60 eq "S60.50" ) +{ + print PKGFILE "[0x1028315F], 0, 0, 0, \{\"Series60ProductID\"\} \n\n"; +} # MIF resource files ot install $SrcDir = "\\epoc32\\data\\Z\\resource\\apps\\"; @@ -292,6 +328,8 @@ $SrcDir = "\\epoc32\\data\\z\\resource\\plugins\\"; $TargetDir = "!:\\resource\\plugins\\"; print PKGFILE "\n"; +if ( $s60 eq "S60.323" ) +{ @install_files = ( "AiwBrowserProvider", "BrowserRec", @@ -301,8 +339,6 @@ "DeflateFilter", "HttpFilterAcceptHeader", "HttpFilterAuthentication", - "HttpFilterCache", - "HttpFilterPipeliningConfig", "PushMtmPushContentHandler", "PushMtmWhiteListAdapter", "SchemeDispatcher", @@ -317,16 +353,52 @@ "npSystemInfoPlugin", "uaproffilter", "widgetmemoryplugin" -); + ); +} +# Note: Some way of figuring out what need to be on the packages and +# hope we will be able to develp an algorithms for it +# 1. The components change you're aware of. For example gesture lib addition to browser +# 2. Build system, you can find out what's are builded from the build system +# 3. Search for iby files +if ( $s60 eq "S60.50" ) +{ +@install_files = ( + "AiwBrowserProvider", + "BrowserRec", + "CodRecog", + "CookieFilter", + "DdRecog", + "DeflateFilter", + "HttpFilterAcceptHeader", + "HttpFilterAuthentication", + "PushMtmPushContentHandler", + "PushMtmWhiteListAdapter", + "SchemeDispatcher", + "WidgetInstallerUI", + "widgetRecognizer", + "httpfilterIop", + "httpfilterconnhandler", + "httpfilterproxy", + "memoryplugin", + "npBrowserAudioVideoPlugin", + "npGpsPlugin", + "npSystemInfoPlugin", + "uaproffilter", + "widgetmemoryplugin" + ); +} print PKGFILE "\n"; for my$install_file (@install_files) { print PKGFILE "\"$SrcDir$install_file.rsc\"\n - \"$TargetDir$install_file.rsc\" \n"; } # Files to install (binaries - DLL) -$SrcDir = "\\epoc32\\release\\armv5\\urel\\"; +$SrcDir = "\\epoc32\\release\\armv5\\" . $udeburel . "\\"; $TargetDir = "!:\\sys\\bin\\"; print PKGFILE "\n"; + +if ( $s60 eq "S60.323" ) +{ @install_files = ( "AiwBrowserProvider", "BrowserCache", @@ -345,13 +417,10 @@ "FavouritesEngine", "FeedsServerApi", "FeedsServerClient", - "HttpCacheManager", "HttpDMServEng", "HttpFilterAcceptHeader", "HttpFilterAuthentication", - "HttpFilterCache", "HttpFilterCommon", - "HttpFilterPipeliningConfig", "JavaScriptCore", "MemMan", "Multipartparser", @@ -384,14 +453,77 @@ "widgetengine", "WidgetInstaller", "widgetmemoryplugin", - "wmlEngine" + "wmlEngine", + "jsdevice", ); +} +if ( $s60 eq "S60.50" ) +{ +@install_files = ( + "AiwBrowserProvider", + "BrowserCache", + "BrowserLauncher", + "BrowserRec", + "BrowserTelService", + "CodDownload", + "CodEng", + "CodRecog", + "CodUi", + "ConnectionManager", + "DdRecog", + "DeflateFilter", + "DownloadMgr", + "DownloadMgrUiLib", + "FavouritesEngine", + "FeedsServerApi", + "FeedsServerClient", + "HttpDMServEng", + "HttpFilterAcceptHeader", + "HttpFilterAuthentication", + "HttpFilterCommon", + "JavaScriptCore", + "MemMan", + "Multipartparser", + "PushMtmCliSrv", + "PushMtmPushContentHandler", + "PushMtmUi", + "PushMtmUtil", + "PushMtmWhiteListAdapter", + "RECENTURLSTORE", + "SchemeDispatcher", + "WidgetInstallerUI", + "WidgetRecognizer", + "WidgetRegistryClient", + "browserdialogsprovider", + "browserengine", + "cXmlParser", + "cookiefilter", + "cookiemanager", + "httpfilterIop", + "httpfilterconnhandler", + "httpfilterproxy", + "memoryplugin", + "npBrowserAudioVideoPlugin", + "npGpsPlugin", + "npSystemInfoPlugin", + "pagescaler", + "uaproffilter", + "webkitutils", + "webutils", + "widgetengine", + "WidgetInstaller", + "widgetmemoryplugin", + "wmlEngine", + "stmgesturefw", + "jsdevice", + ); +} for my$install_file (@install_files) { print PKGFILE "\"$SrcDir$install_file.dll\"\n - \"$TargetDir$install_file.dll\" \n"; } # Files to install (binaries - EXE) -$SrcDir = "\\epoc32\\release\\armv5\\urel\\"; +$SrcDir = "\\epoc32\\release\\armv5\\" . $udeburel . "\\"; $TargetDir = "!:\\sys\\bin\\"; print PKGFILE "\n"; @install_files = (