summaryrefslogtreecommitdiffstats
path: root/bin/patch_capabilities.pl
diff options
context:
space:
mode:
Diffstat (limited to 'bin/patch_capabilities.pl')
-rwxr-xr-xbin/patch_capabilities.pl15
1 files changed, 8 insertions, 7 deletions
diff --git a/bin/patch_capabilities.pl b/bin/patch_capabilities.pl
index 0ba8bc5..a6345e0 100755
--- a/bin/patch_capabilities.pl
+++ b/bin/patch_capabilities.pl
@@ -49,6 +49,7 @@
#
# Note: Please make sure to output all changes done to the pkg file in a print statements
# starting with "Patching: " to ease integration into IDEs!
+# Similarly, any actual error messages should start with "ERROR:"
#
use File::Copy;
@@ -103,13 +104,16 @@ if (@ARGV)
# Parse the first given script argument as a ".pkg" file name.
my $pkgFileName = shift(@ARGV);
my $justCheck = "";
+ my $errorPrefix = "ERROR:";
my $msgPrefix = "Patching:";
my $tempPatchPath = "";
if ($pkgFileName eq "-c") {
$pkgFileName = shift(@ARGV);
$justCheck = true;
+ # All messages are simply warnings, as no actual patching is attempted.
$msgPrefix = "Warning:";
+ $errorPrefix = "Warning:";
}
if ($pkgFileName eq "-t") {
@@ -302,7 +306,7 @@ if (@ARGV)
if ($binaryBaseName =~ /\.exe$/) {
# Installer refuses to install protected executables in a self signed package, so abort if one is detected.
# We can't simply just patch the executable SID, as any registration resources executable uses will be linked to it via SID.
- print ("$msgPrefix Executable with SID in the protected range (0x$exeSid) detected: \"$binaryBaseName\". A self-signed sis with protected executables is not supported.\n\n");
+ print ("$errorPrefix Executable with SID in the protected range (0x$exeSid) detected: \"$binaryBaseName\". A self-signed sis with protected executables is not supported.\n\n");
$checkFailed = true;
}
}
@@ -315,9 +319,6 @@ if (@ARGV)
$_ = trim($_);
if ($capabilitiesToAllow =~ /$_/) {
push(@capabilitiesToSet, $_);
- if (Location =~ /$_/i) {
- print ("$msgPrefix \"Location\" capability detected for binary: \"$binaryBaseName\". This capability is not self-signable for S60 3rd edition feature pack 1 devices, so installing this package on those devices will most likely not work.\n\n");
- }
} else {
push(@capabilitiesToDrop, $_);
}
@@ -345,7 +346,7 @@ if (@ARGV)
if ($binaryBaseName =~ /\.exe$/) {
# While libraries often have capabilities they do not themselves need just to enable them to be loaded by wider variety of processes,
# executables are more likely to need every capability they have been assigned or they won't function correctly.
- print ("$msgPrefix Executable with capabilities incompatible with self-signing detected: \"$binaryBaseName\". (Incompatible capabilities: \"$capsToDropStr\".) Reducing capabilities is only supported for libraries.\n");
+ print ("$errorPrefix Executable with capabilities incompatible with self-signing detected: \"$binaryBaseName\". (Incompatible capabilities: \"$capsToDropStr\".) Reducing capabilities is only supported for libraries.\n");
$checkFailed = true;
} else {
print ("$msgPrefix The following capabilities used in \"$binaryBaseName\" are not compatible with a self-signed package and will be removed: \"$capsToDropStr\".\n");
@@ -368,9 +369,9 @@ if (@ARGV)
if ($checkFailed) {
print ("\n");
if ($justCheck) {
- print ("$msgPrefix The package is not compatible with self-signing.\n");
+ print ("$msgPrefix The package is not compatible with self-signing. ");
} else {
- print ("$msgPrefix Unable to patch the package for self-singing.\n");
+ print ("$errorPrefix Unable to patch the package for self-singing. ");
}
print ("Use a proper developer certificate for signing this package.\n\n");
exit(1);