Index: trunk/bin/createpackage.pl
===================================================================
--- trunk/bin/createpackage.pl	(revision 651)
+++ trunk/bin/createpackage.pl	(revision 769)
@@ -55,4 +55,6 @@
 # Use File::Spec services mainly rel2abs
 use File::Spec;
+# Use File::Path - to make stub sis target directory
+use File::Path;
 # use CWD abs_bath, which is exported only on request
 use Cwd 'abs_path';
@@ -112,9 +114,11 @@
 my $certfile = "";
 my $preserveUnsigned = "";
+my $stub = "";
 
 unless (GetOptions('i|install' => \$install,
                    'p|preprocess' => \$preprocessonly,
                    'c|certfile=s' => \$certfile,
-                   'u|unsigned' => \$preserveUnsigned,)){
+                   'u|unsigned' => \$preserveUnsigned,
+                   's|stub' => \$stub,)){
     Usage();
 }
@@ -154,4 +158,5 @@
 my $unsigned_sis_name = $sisoutputbasename."_unsigned.sis";
 my $signed_sis_name = $sisoutputbasename.".sis";
+my $stub_sis_name = $sisoutputbasename."_stub.sis";
 
 # Store some utility variables
@@ -257,47 +262,56 @@
 }
 
-# Create SIS.
-system ("makesis $pkgoutput $unsigned_sis_name");
-
-# Sign SIS with certificate info given as an argument.
-system ("signsis $unsigned_sis_name $signed_sis_name $certificate $key $passphrase");
-
-# Check if creating signed SIS Succeeded
-stat($signed_sis_name);
-if( -e _ ) {
-    my $targetInsert = "";
-    if ($targetplatform ne "-") {
-        $targetInsert = "for $targetplatform ";
-    }
-    print ("\nSuccessfully created $signed_sis_name ${targetInsert}using certificate: $certtext!\n");
-
-    # Sign with additional certificates & keys
-    for my $row ( @certificates ) {
-        # Get certificate absolute file names, relative paths are relative to certfilepath
-        my $abscert = File::Spec->rel2abs( $row->[0], $certfilepath);
-        my $abskey = File::Spec->rel2abs( $row->[1], $certfilepath);
-
-        system ("signsis $signed_sis_name $signed_sis_name $abscert $abskey $row->[2]");
-        print ("\tAdditionally signed the SIS with certificate: $row->[0]!\n");
-    }
-
-    # remove temporary pkg and unsigned sis
-    if (!$preservePkgOutput) {
-        unlink $pkgoutput;
-    }
-    if (!$preserveUnsigned) {
-        unlink $unsigned_sis_name;
-    }
-
-    # Install the sis if requested
-    if ($install) {
-        print ("\nInstalling $signed_sis_name...\n");
-        system ("$signed_sis_name");
-    }
+if($stub) {
+    if(!($ENV{EPOCROOT})) { die("EPOCROOT must be set to create stub sis files"); }
+    my $systeminstall = "$ENV{EPOCROOT}epoc32/data/z/system/install";
+    mkpath($systeminstall);
+    my $stub_sis_name = $systeminstall."/".$stub_sis_name;
+    # Create stub SIS.
+    system ("makesis -s $pkgoutput $stub_sis_name");
 } else {
-    # Lets leave the generated PKG for problem solving purposes
-    print ("\nSIS creation failed!\n");
-}
-
+    # Create SIS.
+    system ("makesis $pkgoutput $unsigned_sis_name");
+    print("\n");
+
+    # Sign SIS with certificate info given as an argument.
+    system ("signsis $unsigned_sis_name $signed_sis_name $certificate $key $passphrase");
+
+    # Check if creating signed SIS Succeeded
+    stat($signed_sis_name);
+    if( -e _ ) {
+        my $targetInsert = "";
+        if ($targetplatform ne "-") {
+            $targetInsert = "for $targetplatform ";
+        }
+        print ("Successfully created $signed_sis_name ${targetInsert}using certificate: $certtext!\n");
+
+        # Sign with additional certificates & keys
+        for my $row ( @certificates ) {
+            # Get certificate absolute file names, relative paths are relative to certfilepath
+            my $abscert = File::Spec->rel2abs( $row->[0], $certfilepath);
+            my $abskey = File::Spec->rel2abs( $row->[1], $certfilepath);
+
+            system ("signsis $signed_sis_name $signed_sis_name $abscert $abskey $row->[2]");
+            print ("\tAdditionally signed the SIS with certificate: $row->[0]!\n");
+        }
+
+        # remove temporary pkg and unsigned sis
+        if (!$preservePkgOutput) {
+            unlink $pkgoutput;
+        }
+        if (!$preserveUnsigned) {
+            unlink $unsigned_sis_name;
+        }
+
+        # Install the sis if requested
+        if ($install) {
+            print ("\nInstalling $signed_sis_name...\n");
+            system ("$signed_sis_name");
+        }
+    } else {
+        # Lets leave the generated PKG for problem solving purposes
+        print ("\nSIS creation failed!\n");
+    }
+}
 
 #end of file
Index: trunk/bin/patch_capabilities.bat
===================================================================
--- trunk/bin/patch_capabilities.bat	(revision 769)
+++ trunk/bin/patch_capabilities.bat	(revision 769)
@@ -0,0 +1,1 @@
+@perl.exe -S %~dp0patch_capabilities.pl %*
Index: trunk/bin/syncqt
===================================================================
--- trunk/bin/syncqt	(revision 651)
+++ trunk/bin/syncqt	(revision 769)
@@ -195,4 +195,6 @@
     } elsif(basename($iheader) eq "qtconcurrentrun.h") {
         push @ret, "QtConcurrentRun"
+    } elsif(basename($iheader) eq "qaudio.h") {
+        push @ret, "QAudio"
     }
 
