widgettools/wrtwidgetpreinstaller/src/installwidgets.pl
branchRCL_3
changeset 31 b685c59de105
parent 30 0891752adab8
equal deleted inserted replaced
30:0891752adab8 31:b685c59de105
    19 use File::Spec::Functions;
    19 use File::Spec::Functions;
    20 use Getopt::Long;
    20 use Getopt::Long;
    21 use Pod::Usage;
    21 use Pod::Usage;
    22 
    22 
    23 # Version of the script - just use the date
    23 # Version of the script - just use the date
    24 $main::VERSION = '22-June-2010';
    24 $main::VERSION = '12-July-2010';
    25 
    25 
    26 # New getopt::long provides this - but old version doesn't?
    26 # New getopt::long provides this - but old version doesn't?
    27 sub version
    27 sub version
    28   {
    28   {
    29   print sprintf("$0: $main::VERSION\n$^X: %vd\nos: $^O", $^V);
    29   print sprintf("$0: $main::VERSION\n$^X: %vd\nos: $^O", $^V);
   483 	  } else {
   483 	  } else {
   484 	  	$isSecureWidget = 0;
   484 	  	$isSecureWidget = 0;
   485 	  }
   485 	  }
   486 
   486 
   487     if( $w3c_widget )
   487     if( $w3c_widget )
   488       { 
   488     { 
   489       if( $widgetdata->{'MainHTML'} )
   489       if( $widgetdata->{'MainHTML'} )
   490         {
   490         {
   491         $startsrc = $widgetdata->{'MainHTML'};
   491         $startsrc = $widgetdata->{'MainHTML'};
   492         }
   492         }
   493       else
   493       else
   511   		{
   511   		{
   512       		$widgetdata->{'ProcessUid'} = CWRT_WIDGET_UI_UID;
   512       		$widgetdata->{'ProcessUid'} = CWRT_WIDGET_UI_UID;
   513       	}
   513       	}
   514       
   514       
   515       $widgetdata->{'MimeType'} = "application/widget";
   515       $widgetdata->{'MimeType'} = "application/widget";
   516       }         
   516     }         
   517 
   517 
   518     print "Identifier: $widgetdata->{'BundleIdentifier'}\n" if $self->{args}->{'verbose'};
   518     print "Identifier: $widgetdata->{'BundleIdentifier'}\n" if $self->{args}->{'verbose'};
   519     
   519     
   520     # Set widget package properties
   520     # Set widget package properties
   521     $widgetdata->{'FileName'} = $filename;
   521     $widgetdata->{'FileName'} = $filename;
  1390            $featureMap = WIDGET_FEATURE . $featureCount;
  1390            $featureMap = WIDGET_FEATURE . $featureCount;
  1391            $attributeMap = $attributeMap.$featureMap.KEY_VALUE_SEPERATOR.KEY_VALUE_PAIR_SEPERATOR;
  1391            $attributeMap = $attributeMap.$featureMap.KEY_VALUE_SEPERATOR.KEY_VALUE_PAIR_SEPERATOR;
  1392            
  1392            
  1393            if ( $atts{"name"} )
  1393            if ( $atts{"name"} )
  1394              {
  1394              {
  1395               $attributeMap = $attributeMap.$featureMap. KEY_ATTR_SEPERATOR."name".KEY_VALUE_SEPERATOR.$atts{"name"}.KEY_VALUE_PAIR_SEPERATOR;
  1395               $attributeMap = $attributeMap.$featureMap.KEY_ATTR_SEPERATOR."name".KEY_VALUE_SEPERATOR.$atts{"name"}.KEY_VALUE_PAIR_SEPERATOR;
  1396               my $jilFeature = "http://jil.org/jil";
  1396               my $jilFeature = "http://jil.org/jil";
  1397               if($atts{"name"}=~ m/^$jilFeature/i)
  1397               if($atts{"name"}=~ m/^$jilFeature/i)
  1398               {
  1398               {
  1399                 $plisthash->{'WidgetPackagingFormat'} = "jil";
  1399                 $plisthash->{'WidgetPackagingFormat'} = "jil";
  1400               }
  1400               }
  1405              }
  1405              }
  1406          }
  1406          }
  1407        elsif($el eq "param")
  1407        elsif($el eq "param")
  1408           {
  1408           {
  1409               $featureParamMap = $featureMap. WIDGET_FEATURE_PARAM . $paramCount;
  1409               $featureParamMap = $featureMap. WIDGET_FEATURE_PARAM . $paramCount;
  1410               $attributeMap = $attributeMap.$featureParamMap. KEY_VALUE_SEPERATOR.KEY_VALUE_PAIR_SEPERATOR;
  1410               $attributeMap = $attributeMap.$featureParamMap.KEY_VALUE_SEPERATOR.KEY_VALUE_PAIR_SEPERATOR;
  1411               if ($atts{"name"}) 
  1411               if ($atts{"name"}) 
  1412               {
  1412               {
  1413                   $attributeMap = $attributeMap.$featureParamMap.KEY_ATTR_SEPERATOR."name".KEY_VALUE_SEPERATOR.$atts{"name"}.KEY_VALUE_PAIR_SEPERATOR;
  1413                   $attributeMap = $attributeMap.$featureParamMap.KEY_ATTR_SEPERATOR."name".KEY_VALUE_SEPERATOR.$atts{"name"}.KEY_VALUE_PAIR_SEPERATOR;
  1414               }
  1414               }
  1415               if ($atts{"value"})
  1415               if ($atts{"value"})
  1422               $accessMap = WIDGET_ACCESS . $accessCount;
  1422               $accessMap = WIDGET_ACCESS . $accessCount;
  1423               $attributeMap = $attributeMap.$accessMap.KEY_VALUE_SEPERATOR.KEY_VALUE_PAIR_SEPERATOR;
  1423               $attributeMap = $attributeMap.$accessMap.KEY_VALUE_SEPERATOR.KEY_VALUE_PAIR_SEPERATOR;
  1424            
  1424            
  1425               if ( $atts{"network"} )
  1425               if ( $atts{"network"} )
  1426              {
  1426              {
  1427                 $attributeMap = $attributeMap.$accessMap. KEY_ATTR_SEPERATOR."network".KEY_VALUE_SEPERATOR.$atts{"network"}.KEY_VALUE_PAIR_SEPERATOR;
  1427                 $attributeMap = $attributeMap.$accessMap.KEY_ATTR_SEPERATOR."network".KEY_VALUE_SEPERATOR.$atts{"network"}.KEY_VALUE_PAIR_SEPERATOR;
  1428              }
  1428              }
  1429             if ( $atts{"remotescripts"} )
  1429             if ( $atts{"remotescripts"} )
  1430              {
  1430              {
  1431                 $attributeMap = $attributeMap.$accessMap. KEY_ATTR_SEPERATOR."remotescripts".KEY_VALUE_SEPERATOR.$atts{"remotescripts"}.KEY_VALUE_PAIR_SEPERATOR;
  1431                 $attributeMap = $attributeMap.$accessMap.KEY_ATTR_SEPERATOR."remotescripts".KEY_VALUE_SEPERATOR.$atts{"remotescripts"}.KEY_VALUE_PAIR_SEPERATOR;
  1432              }
  1432              }
  1433              if ( $atts{"localfs"} )
  1433              if ( $atts{"localfs"} )
  1434              {
  1434              {
  1435                 $attributeMap = $attributeMap.$accessMap. KEY_ATTR_SEPERATOR."localfs".KEY_VALUE_SEPERATOR.$atts{"localfs"}.KEY_VALUE_PAIR_SEPERATOR;
  1435                 $attributeMap = $attributeMap.$accessMap.KEY_ATTR_SEPERATOR."localfs".KEY_VALUE_SEPERATOR.$atts{"localfs"}.KEY_VALUE_PAIR_SEPERATOR;
  1436              }
  1436              }
  1437              if ( $atts{"origin"} )
  1437              if ( $atts{"origin"} )
  1438              {
  1438              {
  1439                 $attributeMap = $attributeMap.$accessMap. KEY_ATTR_SEPERATOR."origin".KEY_VALUE_SEPERATOR.$atts{"origin"}.KEY_VALUE_PAIR_SEPERATOR;
  1439                 $attributeMap = $attributeMap.$accessMap.KEY_ATTR_SEPERATOR."origin".KEY_VALUE_SEPERATOR.$atts{"origin"}.KEY_VALUE_PAIR_SEPERATOR;
  1440              }
  1440              }
  1441              if ( $atts{"subdomains"} )
  1441              if ( $atts{"subdomains"} )
  1442              {
  1442              {
  1443                 $attributeMap = $attributeMap.$accessMap. KEY_ATTR_SEPERATOR."subdomains".KEY_VALUE_SEPERATOR.$atts{"subdomains"}.KEY_VALUE_PAIR_SEPERATOR;
  1443                 $attributeMap = $attributeMap.$accessMap. KEY_ATTR_SEPERATOR."subdomains".KEY_VALUE_SEPERATOR.$atts{"subdomains"}.KEY_VALUE_PAIR_SEPERATOR;
  1444              }
  1444              }
  1511         {
  1511         {
  1512             chomp($val);
  1512             chomp($val);
  1513             if( lc($val) eq "true" )
  1513             if( lc($val) eq "true" )
  1514             {
  1514             {
  1515                 $isSharedWidget = 1;
  1515                 $isSharedWidget = 1;
       
  1516                 $plisthash->{'WidgetPackagingFormat'} = "w3c-partial-v1";
  1516             }
  1517             }
  1517             $attributeMap = $attributeMap.WIDGET_NOKIA_SHAREDLIB_WIDGET.KEY_VALUE_SEPERATOR.$val.KEY_VALUE_PAIR_SEPERATOR;
  1518             $attributeMap = $attributeMap.WIDGET_NOKIA_SHAREDLIB_WIDGET.KEY_VALUE_SEPERATOR.$val.KEY_VALUE_PAIR_SEPERATOR;
  1518         }
  1519         }
  1519     elsif ($el eq "NOKIA:icon")
  1520     elsif ($el eq "NOKIA:icon")
  1520         {
  1521         {
  1641           {
  1642           {
  1642           	$non_nokia_widget = 1;	
  1643           	$non_nokia_widget = 1;	
  1643           }
  1644           }
  1644            #sharedFolderName TBD
  1645            #sharedFolderName TBD
  1645           my $dir = $self->installDir($drive, $id);
  1646           my $dir = $self->installDir($drive, $id);
  1646                 rmtree $dir;
  1647           rmtree $dir;
  1647                 
  1648                 
  1648           print("BasePath:$basepath \nIs Non-Nokia? $non_nokia_widget		Is SharedLibrary? $isSharedLibrary \nDirectory:$dir \n");
  1649           print("BasePath:$basepath \nIs Non-Nokia? $non_nokia_widget		Is SharedLibrary? $isSharedLibrary \nDirectory:$dir \n");
  1649     
  1650     
  1650             $dir =~ s/widgets_21D_4C7/data/;
  1651             $dir =~ s/widgets_21D_4C7/data/;
  1651           rmtree $dir;
  1652           rmtree $dir;
  2094 
  2095 
  2095 =item 3
  2096 =item 3
  2096 
  2097 
  2097 Run the foll command to generate UDA
  2098 Run the foll command to generate UDA
  2098 
  2099 
  2099 B<product1:>
  2100 B<Gadget:>
  2100 X:\epoc32\tools>imaker -f /epoc32/rom/s60_makefiles/image_conf_sp_rnd_product1.mk VARIANT_DIR=/variants variantuda
  2101 X:\epoc32\tools>imaker -f /epoc32/rom/s60_makefiles/image_conf_sp_rnd_gadget.mk VARIANT_DIR=/variants variantuda
  2101 
  2102 
  2102 B<product2:>
  2103 B<Tube:>
  2103 Y:\epoc32\tools>imaker -f /epoc32/rom/config/ncp52/product2/image_conf_product2_ui.mk VARIANT_DIR=/variants variantuda 
  2104 Y:\epoc32\tools>imaker -f /epoc32/rom/config/ncp52/tube/image_conf_tube_ui.mk VARIANT_DIR=/variants variantuda 
  2104 
  2105 
  2105 =item 4
  2106 =item 4
  2106 
  2107 
  2107 Flash the fpsx file generated under X:\epoc32\rombuild\product1\uda for Product 1 and Y:\epoc32\rombuild\product2\uda for Product 2 to your device.
  2108 Flash the fpsx file generated under X:\epoc32\rombuild\gadget\uda for Gadget and Y:\epoc32\rombuild\tube\uda for Tube to your device.
       
  2109 
       
  2110 Note: More info on iMaker tool at: L<http://configurationtools.nmp.nokia.com/imaker/wiki/iMakerUserGuide>
  2108 
  2111 
  2109 =back
  2112 =back
  2110 
  2113 
  2111 =head3 LOCALISATION
  2114 =head3 LOCALISATION
  2112 
  2115