diff options
Diffstat (limited to 'bin')
-rw-r--r-- | bin/patch_capabilities.bat | 1 | ||||
-rwxr-xr-x | bin/patch_capabilities.pl | 21 |
2 files changed, 21 insertions, 1 deletions
diff --git a/bin/patch_capabilities.bat b/bin/patch_capabilities.bat new file mode 100644 index 0000000..6a0c4d7 --- /dev/null +++ b/bin/patch_capabilities.bat @@ -0,0 +1 @@ +@perl.exe -S %~dp0patch_capabilities.pl %* diff --git a/bin/patch_capabilities.pl b/bin/patch_capabilities.pl index b6bf5c3..9daa13e 100755 --- a/bin/patch_capabilities.pl +++ b/bin/patch_capabilities.pl @@ -111,12 +111,31 @@ if (@ARGV) # Parse each line. while (<PKG>) { + # Patch pkg UID my $line = $_; my $newLine = $line; - if ( $line =~ m/^\#.*\(0x[0-9|a-f|A-F]*\).*$/) + if ($line =~ m/^\#.*\(0x[0-9|a-f|A-F]*\).*$/) { $newLine =~ s/\(0x./\(0xE/; } + + # Patch embedded sis name and UID + if ($line =~ m/^@.*\.sis.*\(0x[0-9|a-f|A-F]*\).*$/) + { + $newLine =~ s/\(0x./\(0xE/; + if ($line !~ m/^.*_selfsigned.sis.*$/) + { + $newLine =~ s/\.sis/_selfsigned\.sis/i; + } + } + + # Remove all dependencies to other packages to reduce unnecessary error messages + # from depended packages that are also patched and therefore have different UID. + if ($line =~ m/^\(0x[0-9|a-f|A-F]*\).*\{.*\}$/) + { + $newLine = "" + } + print NEW_PKG $newLine; chomp ($line); |