summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMart Raudsepp <leio@gentoo.org>2017-06-01 16:30:10 +0300
committerMart Raudsepp <leio@gentoo.org>2017-06-01 16:30:10 +0300
commit3b051f7b2952adfd1911a590f42aea6cecdddf5a (patch)
tree678064abff42da8852753a25b877955bd47459df /net-libs/webkit-gtk/files
parentwww-apps/grafana-bin: Bump to 4.3.2 (diff)
downloadgentoo-3b051f7b2952adfd1911a590f42aea6cecdddf5a.tar.gz
gentoo-3b051f7b2952adfd1911a590f42aea6cecdddf5a.tar.bz2
gentoo-3b051f7b2952adfd1911a590f42aea6cecdddf5a.zip
net-libs/webkit-gtk: security cleanup
Gentoo-bug: 619788 Package-Manager: Portage-2.3.5, Repoman-2.3.2
Diffstat (limited to 'net-libs/webkit-gtk/files')
-rw-r--r--net-libs/webkit-gtk/files/2.16.1-avoid-perl-ithreads.patch88
-rw-r--r--net-libs/webkit-gtk/files/2.16.2-avoid-perl-ithreads.patch130
2 files changed, 0 insertions, 218 deletions
diff --git a/net-libs/webkit-gtk/files/2.16.1-avoid-perl-ithreads.patch b/net-libs/webkit-gtk/files/2.16.1-avoid-perl-ithreads.patch
deleted file mode 100644
index 506696fcc7a9..000000000000
--- a/net-libs/webkit-gtk/files/2.16.1-avoid-perl-ithreads.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From 1ac17bea2273df0dfec21897b00efb8351648e1b Mon Sep 17 00:00:00 2001
-From: Kent Fredric <kentnl@gentoo.org>
-Date: Sun, 9 Apr 2017 04:10:52 +1200
-Subject: Remove need for threaded perl at expense of being single-threaded
-
-This could theoretically be implemented with forks, but I opted not
-to because its too hard, and the platform specifics are too messy.
-
-This could theoretically also have support for automatic detection
-as to which strategy to use based on OS/availability, but the
-implementation details of that are too much for my pateience today.
-
-In an ideal world, this file would support:
-
-1. Single threaded builds for spartans
-2. Forked builds for people who are on linux but don't want to rebuild
- their perl just to have threads ( which produce negligible benefit
- and measurable performance penalties to all code )
-3. Threaded builds for people who are on windows where forks may not
- be entirely sane.
-
-But #1 is good enough atm.
-
-This is important for Gentoo, because end users decide on their own
-choices with regards to threading support for perl, and threading
-support is off by default due to the performance issues mentioned in #2
-in conjunction with the fact that "threads" is officially discouraged
-by Perl Upstream.
-
-And as Gentoo users have to have a system Perl to compile WebkitGTK,
-this means installing WebkitGTK requires rebuilding their system Perl
-with threads.
-
-And this *also* means that all packages presently compiled against Perl
-become broken, because non-threaded perl and threaded perl are not ABI
-compatible with each other, and this can scale into hundreds of
-packages and significant transient breakage.
-
-This ends up in practice being *far* *worse* in terms of time wasted
-than the mediocre time inefficiency created by needing a single
-threaded build.
----
- Source/WebCore/bindings/scripts/generate-bindings-all.pl | 15 +++++----------
- 1 file changed, 5 insertions(+), 10 deletions(-)
-
-diff --git a/Source/WebCore/bindings/scripts/generate-bindings-all.pl b/Source/WebCore/bindings/scripts/generate-bindings-all.pl
-index 37b27cc74..b3a378df0 100755
---- a/Source/WebCore/bindings/scripts/generate-bindings-all.pl
-+++ b/Source/WebCore/bindings/scripts/generate-bindings-all.pl
-@@ -32,9 +32,6 @@ use File::Basename;
- use File::Spec;
- use File::Find;
- use Getopt::Long;
--use threads;
--use threads::shared;
--use Thread::Queue;
-
- my $perl = $^X;
- my $scriptDir = $FindBin::Bin;
-@@ -121,13 +118,11 @@ my @idlFilesToUpdate = grep &{sub {
- implicitDependencies($depFile));
- needsUpdate(\@output, \@deps);
- }}, @idlFiles;
--my $queue = Thread::Queue->new(@idlFilesToUpdate);
--my $abort :shared = 0;
--my $totalCount = @idlFilesToUpdate;
--my $currentCount :shared = 0;
-
--my @threadPool = map { threads->create(\&worker) } (1 .. $numOfJobs);
--$_->join for @threadPool;
-+my $abort = 0;
-+my $totalCount = @idlFilesToUpdate;
-+my $currentCount = 0;
-+worker();
- exit $abort;
-
- sub needsUpdate
-@@ -158,7 +153,7 @@ sub mtime
- }
-
- sub worker {
-- while (my $file = $queue->dequeue_nb()) {
-+ while (my $file = shift @idlFilesToUpdate) {
- last if $abort;
- eval {
- $currentCount++;
---
-2.12.2
diff --git a/net-libs/webkit-gtk/files/2.16.2-avoid-perl-ithreads.patch b/net-libs/webkit-gtk/files/2.16.2-avoid-perl-ithreads.patch
deleted file mode 100644
index fb49731de1f5..000000000000
--- a/net-libs/webkit-gtk/files/2.16.2-avoid-perl-ithreads.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-From b9ee99577992ccb7a94840f5f7f2d77b31c4e0bd Mon Sep 17 00:00:00 2001
-From: "commit-queue@webkit.org"
- <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
-Date: Sun, 9 Apr 2017 21:48:06 +0000
-Subject: [PATCH] generate-bindings-all.pl shouldn't use Perl threads
- https://bugs.webkit.org/show_bug.cgi?id=170106
-
-Patch by Fujii Hironori <Hironori.Fujii@sony.com> on 2017-04-09
-Reviewed by Yusuke Suzuki.
-
-The use of interpreter-based threads in Perl is officially
-discouraged and not all Linux distributions and BSD compile Perl
-with threads support. Use fork instead of threads to run
-generate-bindings.pl in parallel.
-
-* bindings/scripts/generate-bindings-all.pl:
-(spawnGenerateBindingsIfNeeded): Added.
-(executeCommand): Removed the workaround for Cygwin Perl threads.
-(spawnCommand): Added.
-(worker): Deleted.
-
-git-svn-id: http://svn.webkit.org/repository/webkit/trunk@215166 268f45cc-cd09-0410-ab3c-d52691b4dbfc
----
- .../bindings/scripts/generate-bindings-all.pl | 63 +++++++++++-----------
-diff --git a/Source/WebCore/bindings/scripts/generate-bindings-all.pl b/Source/WebCore/bindings/scripts/generate-bindings-all.pl
-index 37b27cc..968ea11 100755
---- a/Source/WebCore/bindings/scripts/generate-bindings-all.pl
-+++ b/Source/WebCore/bindings/scripts/generate-bindings-all.pl
-@@ -32,9 +32,6 @@ use File::Basename;
- use File::Spec;
- use File::Find;
- use Getopt::Long;
--use threads;
--use threads::shared;
--use Thread::Queue;
-
- my $perl = $^X;
- my $scriptDir = $FindBin::Bin;
-@@ -121,13 +118,18 @@ my @idlFilesToUpdate = grep &{sub {
- implicitDependencies($depFile));
- needsUpdate(\@output, \@deps);
- }}, @idlFiles;
--my $queue = Thread::Queue->new(@idlFilesToUpdate);
--my $abort :shared = 0;
-+
-+my $abort = 0;
- my $totalCount = @idlFilesToUpdate;
--my $currentCount :shared = 0;
-+my $currentCount = 0;
-
--my @threadPool = map { threads->create(\&worker) } (1 .. $numOfJobs);
--$_->join for @threadPool;
-+spawnGenerateBindingsIfNeeded() for (1 .. $numOfJobs);
-+while (waitpid(-1, 0) != -1) {
-+ if ($?) {
-+ $abort = 1;
-+ }
-+ spawnGenerateBindingsIfNeeded();
-+}
- exit $abort;
-
- sub needsUpdate
-@@ -157,20 +159,16 @@ sub mtime
- return (stat $file)[9];
- }
-
--sub worker {
-- while (my $file = $queue->dequeue_nb()) {
-- last if $abort;
-- eval {
-- $currentCount++;
-- my $basename = basename($file);
-- printProgress("[$currentCount/$totalCount] $basename");
-- executeCommand($perl, @args, $file) == 0 or die;
-- };
-- if ($@) {
-- $abort = 1;
-- die;
-- }
-- }
-+sub spawnGenerateBindingsIfNeeded
-+{
-+ return if $abort;
-+ return unless @idlFilesToUpdate;
-+ my $file = shift @idlFilesToUpdate;
-+ $currentCount++;
-+ my $basename = basename($file);
-+ printProgress("[$currentCount/$totalCount] $basename");
-+ my $pid = spawnCommand($perl, @args, $file);
-+ $abort = 1 unless defined $pid;
- }
-
- sub buildDirectoryCache
-@@ -196,22 +194,23 @@ sub implicitDependencies
-
- sub executeCommand
- {
-- if ($^O eq 'cygwin') {
-- # 'system' of Cygwin Perl doesn't seem thread-safe
-- my $pid = fork();
-- defined($pid) or die;
-- if ($pid == 0) {
-- exec(@_) or die;
-- }
-- waitpid($pid, 0);
-- return $?;
-- }
- if ($^O eq 'MSWin32') {
- return system(quoteCommand(@_));
- }
- return system(@_);
- }
-
-+sub spawnCommand
-+{
-+ my $pid = fork();
-+ if ($pid == 0) {
-+ @_ = quoteCommand(@_) if ($^O eq 'MSWin32');
-+ exec(@_);
-+ die "Cannot exec";
-+ }
-+ return $pid;
-+}
-+
- sub quoteCommand
- {
- return map {
---
-1.8.3.1
-