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); |
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 } |
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 |