Architecture specific change in rpms/odcs.git
by githook-noreply@fedoraproject.org
The package rpms/odcs.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/odcs.git/commit/?id=ed2013bc38d4a....
Change:
+ExclusiveArch: %{ix86} x86_64
Thanks.
Full change:
============
commit ed2013bc38d4a76e530333baa38653904dcb4733
Author: Jan Kaluza <jkaluza(a)redhat.com>
Date: Tue Jul 18 08:44:35 2017 +0200
Initial import
diff --git a/.gitignore b/.gitignore
index e69de29..439a466 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/odcs-0.0.3.tar.gz
diff --git a/odcs-backend.service b/odcs-backend.service
new file mode 100644
index 0000000..3ce4a1f
--- /dev/null
+++ b/odcs-backend.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=ODCS backend service
+After=network.target remote-fs.target nss-lookup.target
+
+[Service]
+Type=simple
+User=odcs
+Group=apache
+ExecStart=/usr/bin/odcs-backend
+
+[Install]
+WantedBy=multi-user.target
diff --git a/odcs-fedora-conf.patch b/odcs-fedora-conf.patch
new file mode 100644
index 0000000..97960cd
--- /dev/null
+++ b/odcs-fedora-conf.patch
@@ -0,0 +1,13 @@
+diff --git a/conf/config.py b/conf/config.py
+index 2f056f8..2a91236 100644
+--- a/conf/config.py
++++ b/conf/config.py
+@@ -52,7 +52,7 @@ class BaseConfiguration(object):
+ # noauth: no authentication is enabled. Useful for development particularly.
+ # kerberos: Kerberos authentication is enabled.
+ # openidc: OpenIDC authentication is enabled.
+- AUTH_BACKEND = ''
++ AUTH_BACKEND = 'openidc'
+
+ # Used for Kerberos authentication and to query user's groups.
+ # Format: ldap://hostname[:port]
diff --git a/odcs-pythonldap.patch b/odcs-pythonldap.patch
new file mode 100644
index 0000000..fa15af4
--- /dev/null
+++ b/odcs-pythonldap.patch
@@ -0,0 +1,10 @@
+diff --git a/requirements.txt b/requirements.txt
+index ace5a03..f9d8fba 100644
+--- a/requirements.txt
++++ b/requirements.txt
+@@ -17,4 +17,4 @@ Flask-SQLAlchemy
+ Flask-Script
+ requests
+ jinja2
+-pyldap
++python-ldap
diff --git a/odcs.spec b/odcs.spec
new file mode 100644
index 0000000..1fc6452
--- /dev/null
+++ b/odcs.spec
@@ -0,0 +1,208 @@
+Name: odcs
+Version: 0.0.3
+Release: 3%{?dist}
+Summary: The On Demand Compose Service
+
+
+Group: Development/Tools
+License: MIT
+URL: https://pagure.io/odcs
+Source0: https://files.pythonhosted.org/packages/source/o/%{name}/%{name}-%{versio...
+Source1: odcs-backend.service
+# In Fedora, "pyldap" is only for python3, not for python2. Therefore we
+# have to patch the requirements.txt to use python-ldap instead of pyldap.
+# Both ldap bindings are compatible on Python code level.
+Patch0: odcs-pythonldap.patch
+# Fedora related configuration for ODCS.
+Patch1: odcs-fedora-conf.patch
+
+%if 0%{?rhel} && 0%{?rhel} <= 7
+# In EL7 we need flask which needs python-itsdangerous which comes from
+# rhel7-extras which is only available on x86_64 for now.
+ExclusiveArch: %{ix86} x86_64
+%else
+BuildArch: noarch
+%endif
+
+BuildRequires: python2-devel
+
+BuildRequires: help2man
+BuildRequires: python2-pdc-client
+BuildRequires: python-fedora
+BuildRequires: python-flask-script
+BuildRequires: python-httplib2
+BuildRequires: python-m2ext
+BuildRequires: python-munch
+
+BuildRequires: python2-funcsigs
+BuildRequires: python2-modulemd >= 1.1.0
+BuildRequires: python-qpid
+BuildRequires: python2-openidc-client
+BuildRequires: python-ldap
+
+%if 0%{?rhel} && 0%{?rhel} <= 7
+BuildRequires: python-setuptools
+BuildRequires: python-flask-sqlalchemy
+BuildRequires: python-flask-migrate
+BuildRequires: python-nose
+BuildRequires: python-mock
+BuildRequires: python-six
+BuildRequires: pyOpenSSL
+BuildRequires: python-sqlalchemy
+BuildRequires: python-futures
+BuildRequires: python-flask
+BuildRequires: systemd-python
+%else
+BuildRequires: python2-setuptools
+BuildRequires: python2-flask-sqlalchemy
+BuildRequires: python2-flask-migrate
+BuildRequires: python2-nose
+BuildRequires: python2-mock
+BuildRequires: python2-tabulate
+BuildRequires: python2-six
+BuildRequires: python2-futures
+BuildRequires: python2-flask
+BuildRequires: python2-systemd
+
+%if (0%{?fedora} && 0%{?fedora} <= 25) || (0%{?rhel} && 0%{?rhel} <= 7)
+BuildRequires: python2-pyOpenSSL
+BuildRequires: python2-sqlalchemy
+%else
+BuildRequires: pyOpenSSL
+BuildRequires: python-sqlalchemy
+%endif
+
+%endif
+BuildRequires: systemd
+
+%{?systemd_requires}
+
+Requires(pre): shadow-utils
+Requires: systemd
+Requires: pungi
+Requires: python2-pdc-client
+Requires: python-fedora
+Requires: python-flask-script
+Requires: python-httplib2
+Requires: python-m2ext
+Requires: python-munch
+Requires: python2-funcsigs
+Requires: python2-modulemd >= 1.1.0
+Requires: python-qpid
+Requires: python2-openidc-client
+Requires: python-ldap
+
+%if 0%{?rhel} && 0%{?rhel} <= 7
+Requires: python-flask-sqlalchemy
+Requires: python-flask-migrate
+Requires: python-mock
+Requires: python-six
+Requires: pyOpenSSL
+Requires: python-sqlalchemy
+Requires: python-futures
+Requires: python-flask
+Requires: systemd-python
+%else
+Requires: python2-flask-sqlalchemy
+Requires: python2-flask-migrate
+Requires: python2-mock
+Requires: python2-systemd
+Requires: python2-six
+Requires: python2-futures
+Requires: python2-flask
+
+%if (0%{?fedora} && 0%{?fedora} <= 25) || (0%{?rhel} && 0%{?rhel} <= 7)
+Requires: python2-pyOpenSSL
+Requires: python2-sqlalchemy
+%else
+Requires: pyOpenSSL
+Requires: python-sqlalchemy
+%endif
+
+%endif
+
+
+%description
+The On Demand Compose Service (ODCS) creates temporary composes using Pungi
+tool and manages their lifetime. The composes can be requested by external
+services or users using the REST API provided by Flask frontend.
+
+
+%prep
+%setup -q
+
+%patch0 -p1 -b .pyldap
+%patch1 -p1
+
+
+%build
+%py2_build
+
+
+%install
+%py2_install
+
+export PYTHONPATH=%{buildroot}%{python2_sitelib}
+mkdir -p %{buildroot}%{_mandir}/man1
+for command in odcs-manager odcs-frontend odcs-gencert odcs-upgradedb ; do
+export ODCS_CONFIG_FILE=conf/config.py
+help2man -N \
+ --version-string=%{version} %{buildroot}%{_bindir}/$command > \
+ %{buildroot}%{_mandir}/man1/$command.1 || \
+ %{buildroot}%{_bindir}/$command --help
+
+done
+
+install -d -m 0755 %{buildroot}%{_unitdir}
+install -p -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/
+
+install -d -m 0755 %{buildroot}%{_datadir}/odcs
+install -p -m 0644 contrib/odcs.wsgi %{buildroot}%{_datadir}/odcs
+
+%pre
+getent group odcs >/dev/null || groupadd -r odcs
+getent passwd odcs >/dev/null || \
+ useradd -r -g odcs -s /sbin/nologin \
+ -c "On Demand Compose Service user" odcs
+exit 0
+
+%post
+%systemd_post odcs-backend.service
+
+%preun
+%systemd_preun odcs-backend.service
+
+%postun
+%systemd_postun_with_restart odcs-backend.service
+
+%check
+# Test fails currently, reported here: https://pagure.io/odcs/issue/25
+# Should be fixed in next release
+#nosetests-2.7 -v
+
+
+%files
+%doc README.md
+%license LICENSE
+%{_unitdir}/odcs-backend.service
+%{python2_sitelib}/odcs*
+%{_bindir}/odcs-*
+%{_mandir}/man1/odcs-*.1*
+%{_datadir}/odcs
+%dir %{_sysconfdir}/odcs
+%config(noreplace) %{_sysconfdir}/odcs/config.py
+%exclude %{_sysconfdir}/odcs/*.py[co]
+%exclude %{python2_sitelib}/conf/
+
+
+%changelog
+* Mon Jul 17 2017 Jan Kaluza <jkaluza(a)redhat.com> - 0.0.3-3
+- Add python2- prefix to requirements when it makes sense
+- Add -p to install command to preserve timestamp
+- Fix macros formatting, use _datadir instead of /usr/share
+
+* Tue Jul 11 2017 Jan Kaluza <jkaluza(a)redhat.com> - 0.0.3-2
+- fix dependencies
+
+* Thu Jun 29 2017 Jan Kaluza <jkaluza(a)redhat.com> - 0.0.3-1
+- Initial version of spec file
diff --git a/sources b/sources
index e69de29..333e831 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (odcs-0.0.3.tar.gz) = 5676c200c3ef0ee24f58a7f6186054e8aa0b47c2ccd9c7d3403e713b33c184516a7b4acc9eae74887036f0a944726a167fed81b195707bdf630ef44437d63461
6 years, 9 months
Architecture specific change in rpms/odcs.git
by githook-noreply@fedoraproject.org
The package rpms/odcs.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/odcs.git/commit/?id=ed2013bc38d4a....
Change:
+ExclusiveArch: %{ix86} x86_64
Thanks.
Full change:
============
commit ed2013bc38d4a76e530333baa38653904dcb4733
Author: Jan Kaluza <jkaluza(a)redhat.com>
Date: Tue Jul 18 08:44:35 2017 +0200
Initial import
diff --git a/.gitignore b/.gitignore
index e69de29..439a466 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/odcs-0.0.3.tar.gz
diff --git a/odcs-backend.service b/odcs-backend.service
new file mode 100644
index 0000000..3ce4a1f
--- /dev/null
+++ b/odcs-backend.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=ODCS backend service
+After=network.target remote-fs.target nss-lookup.target
+
+[Service]
+Type=simple
+User=odcs
+Group=apache
+ExecStart=/usr/bin/odcs-backend
+
+[Install]
+WantedBy=multi-user.target
diff --git a/odcs-fedora-conf.patch b/odcs-fedora-conf.patch
new file mode 100644
index 0000000..97960cd
--- /dev/null
+++ b/odcs-fedora-conf.patch
@@ -0,0 +1,13 @@
+diff --git a/conf/config.py b/conf/config.py
+index 2f056f8..2a91236 100644
+--- a/conf/config.py
++++ b/conf/config.py
+@@ -52,7 +52,7 @@ class BaseConfiguration(object):
+ # noauth: no authentication is enabled. Useful for development particularly.
+ # kerberos: Kerberos authentication is enabled.
+ # openidc: OpenIDC authentication is enabled.
+- AUTH_BACKEND = ''
++ AUTH_BACKEND = 'openidc'
+
+ # Used for Kerberos authentication and to query user's groups.
+ # Format: ldap://hostname[:port]
diff --git a/odcs-pythonldap.patch b/odcs-pythonldap.patch
new file mode 100644
index 0000000..fa15af4
--- /dev/null
+++ b/odcs-pythonldap.patch
@@ -0,0 +1,10 @@
+diff --git a/requirements.txt b/requirements.txt
+index ace5a03..f9d8fba 100644
+--- a/requirements.txt
++++ b/requirements.txt
+@@ -17,4 +17,4 @@ Flask-SQLAlchemy
+ Flask-Script
+ requests
+ jinja2
+-pyldap
++python-ldap
diff --git a/odcs.spec b/odcs.spec
new file mode 100644
index 0000000..1fc6452
--- /dev/null
+++ b/odcs.spec
@@ -0,0 +1,208 @@
+Name: odcs
+Version: 0.0.3
+Release: 3%{?dist}
+Summary: The On Demand Compose Service
+
+
+Group: Development/Tools
+License: MIT
+URL: https://pagure.io/odcs
+Source0: https://files.pythonhosted.org/packages/source/o/%{name}/%{name}-%{versio...
+Source1: odcs-backend.service
+# In Fedora, "pyldap" is only for python3, not for python2. Therefore we
+# have to patch the requirements.txt to use python-ldap instead of pyldap.
+# Both ldap bindings are compatible on Python code level.
+Patch0: odcs-pythonldap.patch
+# Fedora related configuration for ODCS.
+Patch1: odcs-fedora-conf.patch
+
+%if 0%{?rhel} && 0%{?rhel} <= 7
+# In EL7 we need flask which needs python-itsdangerous which comes from
+# rhel7-extras which is only available on x86_64 for now.
+ExclusiveArch: %{ix86} x86_64
+%else
+BuildArch: noarch
+%endif
+
+BuildRequires: python2-devel
+
+BuildRequires: help2man
+BuildRequires: python2-pdc-client
+BuildRequires: python-fedora
+BuildRequires: python-flask-script
+BuildRequires: python-httplib2
+BuildRequires: python-m2ext
+BuildRequires: python-munch
+
+BuildRequires: python2-funcsigs
+BuildRequires: python2-modulemd >= 1.1.0
+BuildRequires: python-qpid
+BuildRequires: python2-openidc-client
+BuildRequires: python-ldap
+
+%if 0%{?rhel} && 0%{?rhel} <= 7
+BuildRequires: python-setuptools
+BuildRequires: python-flask-sqlalchemy
+BuildRequires: python-flask-migrate
+BuildRequires: python-nose
+BuildRequires: python-mock
+BuildRequires: python-six
+BuildRequires: pyOpenSSL
+BuildRequires: python-sqlalchemy
+BuildRequires: python-futures
+BuildRequires: python-flask
+BuildRequires: systemd-python
+%else
+BuildRequires: python2-setuptools
+BuildRequires: python2-flask-sqlalchemy
+BuildRequires: python2-flask-migrate
+BuildRequires: python2-nose
+BuildRequires: python2-mock
+BuildRequires: python2-tabulate
+BuildRequires: python2-six
+BuildRequires: python2-futures
+BuildRequires: python2-flask
+BuildRequires: python2-systemd
+
+%if (0%{?fedora} && 0%{?fedora} <= 25) || (0%{?rhel} && 0%{?rhel} <= 7)
+BuildRequires: python2-pyOpenSSL
+BuildRequires: python2-sqlalchemy
+%else
+BuildRequires: pyOpenSSL
+BuildRequires: python-sqlalchemy
+%endif
+
+%endif
+BuildRequires: systemd
+
+%{?systemd_requires}
+
+Requires(pre): shadow-utils
+Requires: systemd
+Requires: pungi
+Requires: python2-pdc-client
+Requires: python-fedora
+Requires: python-flask-script
+Requires: python-httplib2
+Requires: python-m2ext
+Requires: python-munch
+Requires: python2-funcsigs
+Requires: python2-modulemd >= 1.1.0
+Requires: python-qpid
+Requires: python2-openidc-client
+Requires: python-ldap
+
+%if 0%{?rhel} && 0%{?rhel} <= 7
+Requires: python-flask-sqlalchemy
+Requires: python-flask-migrate
+Requires: python-mock
+Requires: python-six
+Requires: pyOpenSSL
+Requires: python-sqlalchemy
+Requires: python-futures
+Requires: python-flask
+Requires: systemd-python
+%else
+Requires: python2-flask-sqlalchemy
+Requires: python2-flask-migrate
+Requires: python2-mock
+Requires: python2-systemd
+Requires: python2-six
+Requires: python2-futures
+Requires: python2-flask
+
+%if (0%{?fedora} && 0%{?fedora} <= 25) || (0%{?rhel} && 0%{?rhel} <= 7)
+Requires: python2-pyOpenSSL
+Requires: python2-sqlalchemy
+%else
+Requires: pyOpenSSL
+Requires: python-sqlalchemy
+%endif
+
+%endif
+
+
+%description
+The On Demand Compose Service (ODCS) creates temporary composes using Pungi
+tool and manages their lifetime. The composes can be requested by external
+services or users using the REST API provided by Flask frontend.
+
+
+%prep
+%setup -q
+
+%patch0 -p1 -b .pyldap
+%patch1 -p1
+
+
+%build
+%py2_build
+
+
+%install
+%py2_install
+
+export PYTHONPATH=%{buildroot}%{python2_sitelib}
+mkdir -p %{buildroot}%{_mandir}/man1
+for command in odcs-manager odcs-frontend odcs-gencert odcs-upgradedb ; do
+export ODCS_CONFIG_FILE=conf/config.py
+help2man -N \
+ --version-string=%{version} %{buildroot}%{_bindir}/$command > \
+ %{buildroot}%{_mandir}/man1/$command.1 || \
+ %{buildroot}%{_bindir}/$command --help
+
+done
+
+install -d -m 0755 %{buildroot}%{_unitdir}
+install -p -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/
+
+install -d -m 0755 %{buildroot}%{_datadir}/odcs
+install -p -m 0644 contrib/odcs.wsgi %{buildroot}%{_datadir}/odcs
+
+%pre
+getent group odcs >/dev/null || groupadd -r odcs
+getent passwd odcs >/dev/null || \
+ useradd -r -g odcs -s /sbin/nologin \
+ -c "On Demand Compose Service user" odcs
+exit 0
+
+%post
+%systemd_post odcs-backend.service
+
+%preun
+%systemd_preun odcs-backend.service
+
+%postun
+%systemd_postun_with_restart odcs-backend.service
+
+%check
+# Test fails currently, reported here: https://pagure.io/odcs/issue/25
+# Should be fixed in next release
+#nosetests-2.7 -v
+
+
+%files
+%doc README.md
+%license LICENSE
+%{_unitdir}/odcs-backend.service
+%{python2_sitelib}/odcs*
+%{_bindir}/odcs-*
+%{_mandir}/man1/odcs-*.1*
+%{_datadir}/odcs
+%dir %{_sysconfdir}/odcs
+%config(noreplace) %{_sysconfdir}/odcs/config.py
+%exclude %{_sysconfdir}/odcs/*.py[co]
+%exclude %{python2_sitelib}/conf/
+
+
+%changelog
+* Mon Jul 17 2017 Jan Kaluza <jkaluza(a)redhat.com> - 0.0.3-3
+- Add python2- prefix to requirements when it makes sense
+- Add -p to install command to preserve timestamp
+- Fix macros formatting, use _datadir instead of /usr/share
+
+* Tue Jul 11 2017 Jan Kaluza <jkaluza(a)redhat.com> - 0.0.3-2
+- fix dependencies
+
+* Thu Jun 29 2017 Jan Kaluza <jkaluza(a)redhat.com> - 0.0.3-1
+- Initial version of spec file
diff --git a/sources b/sources
index e69de29..333e831 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (odcs-0.0.3.tar.gz) = 5676c200c3ef0ee24f58a7f6186054e8aa0b47c2ccd9c7d3403e713b33c184516a7b4acc9eae74887036f0a944726a167fed81b195707bdf630ef44437d63461
6 years, 9 months
[Report] Packages Restricting Arches
by root
Package that edited their arches constraints (2)
=============================================
- GtkAda3
was ExclusiveArch: %{GNAT_arches}
is ExclusiveArch: %{GPRbuild_arches}
- aunit
was ExclusiveArch: %GNAT_arches
is ExclusiveArch: %GPRbuild_arches
List of packages currently excluding arches (1877)
===========================================
- 0ad
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- GtkAda
ExclusiveArch: %{GNAT_arches}
- GtkAda3
ExclusiveArch: %{GPRbuild_arches}
- LuxRender
ExclusiveArch: x86_64
- OpenTK
ExclusiveArch: %mono_arches
- PragmARC
ExclusiveArch: %{GNAT_arches}
- R-DynDoc
ExclusiveArch: armv7, ppc, go_arch
- RdRand
ExclusiveArch: %{ix86} x86_64
- YafaRay
ExclusiveArch: %{ix86} x86_64
- aboot
ExclusiveArch: alpha
- acpid
ExclusiveArch: ia64 x86_64 %{ix86} %{arm} aarch64
- ahven
ExclusiveArch: %{GNAT_arches}
- alleyoop
ExclusiveArch: %{ix86} x86_64 ppc ppc64 ppc64le s390x %{arm} aarch64
- american-fuzzy-lop
ExclusiveArch: %{ix86} x86_64
- anet
ExclusiveArch: %{GNAT_arches}
- apmd
ExclusiveArch: %{ix86}
- apmud
ExclusiveArch: ppc
- arm-boot-config
ExclusiveArch: %{arm}
- arm-trusted-firmware
ExclusiveArch: aarch64
- atomic
ExclusiveArch: i386 i486 i586 i686 pentium3 pentium4 athlon geode x86_64 armv3l armv4b armv4l armv4tl armv5tel armv5tejl armv6l armv6hl armv7l armv7hl armv7hnl aarch64 ppc64le s390x mips mipsel mipsr6 mipsr6el mips64 mips64el mips64r6 mips64r6el
ExclusiveArch: x86_64 ppc64le
- aunit
ExclusiveArch: %GPRbuild_arches
- avgtime
ExclusiveArch: %{ldc_arches}
- aws
ExclusiveArch: %GPRbuild_arches
- banshee
ExclusiveArch: %{mono_arches}
- banshee-community-extensions
ExclusiveArch: %ix86 x86_64 ppc ppc64 ia64 %{arm} sparcv9 alpha s390x
- bareftp
ExclusiveArch: %{mono_arches}
- bcc
ExclusiveArch: x86_64
- bcm283x-firmware
ExclusiveArch: %{arm} aarch64
- beignet
ExclusiveArch: x86_64 %{ix86}
- berusky2
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{mips}
- biosdevname
ExclusiveArch: %{ix86} x86_64 ia64
- bless
ExclusiveArch: %mono_arches
- boo
ExclusiveArch: %{mono_arches}
- buildah
ExclusiveArch: x86_64 aarch64 ppc64le
- bwa
ExclusiveArch: x86_64
- cadvisor
ExclusiveArch: %{ix86} x86_64 aarch64 ppc64le
- calamares
ExclusiveArch: %{ix86} x86_64
- cargo
ExclusiveArch: %{rust_arches}
- carto
ExclusiveArch: %{nodejs_arches} noarch
- ccdciel
ExclusiveArch: %{fpc_arches}
- cdcollect
ExclusiveArch: %{mono_arches}
- ceph
ExclusiveArch: x86_64 aarch64 ppc64 ppc64le
ExclusiveArch: x86_64 aarch64
- chromium
ExclusiveArch: x86_64 i686
- chromium-native_client
ExclusiveArch: x86_64
- cjdns
ExclusiveArch: %{nodejs_arches}
- cmospwd
ExclusiveArch: %{ix86} x86_64
- coffee-script
ExclusiveArch: %{nodejs_arches} noarch
- colorful
ExclusiveArch: %{fpc_arches}
- compat-gcc-296
ExclusiveArch: %{ix86} ia64 ppc
- consul
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- copr-dist-git
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le powerpc64le s390x %{mips}
- corosync
ExclusiveArch: i686 x86_64
- cpuid
ExclusiveArch: %{ix86} x86_64
- cqrlog
ExclusiveArch: %{fpc_arches}
- crash
ExclusiveArch: %{ix86} ia64 x86_64 ppc ppc64 s390 s390x %{arm} aarch64 ppc64le
- criu
ExclusiveArch: x86_64 %{arm} ppc64le aarch64
ExclusiveArch: x86_64 ppc64le
- cryptlib
ExclusiveArch: x86_64 %{ix86} aarch64
- cryptobone
ExclusiveArch: x86_64 %{ix86}
- daq
ExclusiveArch: x86_64 aarch64
- darktable
ExclusiveArch: x86_64 aarch64
- dbus-sharp
ExclusiveArch: %mono_arches
- dbus-sharp-glib
ExclusiveArch: %mono_arches
- dbxtool
ExclusiveArch: i386 x86_64 aarch64
- derelict
ExclusiveArch: %{ldc_arches}
- direnv
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- dlm
ExclusiveArch: i686 x86_64
- dmidecode
ExclusiveArch: %{ix86} x86_64 ia64 aarch64
- dmtcp
ExclusiveArch: %ix86 x86_64 aarch64
- docco
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- docker
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}
- docker-anaconda-addon
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}
- docker-distribution
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- docker-latest
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}
- dolphin-emu
ExclusiveArch: x86_64 armv7l aarch64
- dpdk
ExclusiveArch: x86_64 i686 aarch64 ppc64le
- dssi-vst
ExclusiveArch: %{ix86} x86_64
- dustmite
ExclusiveArch: %{ldc_arches}
- dyninst
ExclusiveArch: %{ix86} x86_64 ppc ppc64
- e3
ExclusiveArch: %{ix86} x86_64
- edac-utils
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{power64}
- edb
ExclusiveArch: %{ix86} x86_64
- edk2
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- efibootmgr
ExclusiveArch: %{ix86} x86_64 aarch64 arm
- efivar
ExclusiveArch: %{ix86} x86_64 aarch64
- elasticdump
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- elk
ExclusiveArch: x86_64 %{ix86}
ExclusiveArch: x86_64 %{ix86} aarch64 %{arm} %{power64}
- embree
ExclusiveArch: x86_64
- envytools
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- etcd
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- exciting
ExclusiveArch: x86_64 %{ix86}
ExclusiveArch: x86_64 %{ix86} aarch64 %{arm} %{power64}
- expresso
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- extlinux-bootloader
ExclusiveArch: %{arm} aarch64
- fcitx-libpinyin
ExclusiveArch: %{qt5_qtwebengine_arches}
- fedora-dockerfiles
ExclusiveArch: %{go_arches}
- fedora-gnat-project-common
ExclusiveArch: noarch %{GNAT_arches}
- fence-virt
ExclusiveArch: i686 x86_64
- fes
ExclusiveArch: x86_64
- ffcall
ExclusiveArch: %{ffcall_arches}
- firmware-addon-dell
ExclusiveArch: x86_64 ia64 %{ix86}
- flannel
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- florist
ExclusiveArch: %GPRbuild_arches
- fpc
ExclusiveArch: %{arm} %{ix86} x86_64 ppc ppc64
- frysk
ExclusiveArch: %{ix86} x86_64 ppc64
- fst
ExclusiveArch: i686
- fwupdate
ExclusiveArch: x86_64 %{ix86} aarch64
- ga
ExclusiveArch: %{ix86} x86_64
- gbrainy
ExclusiveArch: %mono_arches
- gdata-sharp
ExclusiveArch: %mono_arches
- gela-asis
ExclusiveArch: %{GNAT_arches}
- ghdl
ExclusiveArch: %{GNAT_arches}
- gio-sharp
ExclusiveArch: %mono_arches
- gir-to-d
ExclusiveArch: %{ldc_arches}
- git-octopus
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- giver
ExclusiveArch: %{mono_arches}
- gkeyfile-sharp
ExclusiveArch: %mono_arches
- gl3n
ExclusiveArch: %{ldc_arches}
- glibc32
ExclusiveArch: x86_64 ppc64 s390x
- glide
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- gmqcc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- gnatcoll
ExclusiveArch: %GPRbuild_arches
- gnome-boxes
ExclusiveArch: x86_64
- gnome-desktop-sharp
ExclusiveArch: %mono_arches
- gnome-do
ExclusiveArch: %mono_arches
- gnome-guitar
ExclusiveArch: %{mono_arches}
- gnome-keyring-sharp
ExclusiveArch: %mono_arches
- gnome-rdp
ExclusiveArch: %{mono_arches}
- gnome-sharp
ExclusiveArch: %mono_arches
- gnome-subtitles
ExclusiveArch: %mono_arches
- gnu-efi
ExclusiveArch: x86_64 aarch64 %{arm} %{ix86}
- gnu-smalltalk
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
- go-bindata
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- go-compilers
ExclusiveArch: %{go_arches}
- go-i18n
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- godep
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- gofed
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}
- golang
ExclusiveArch: %{golang_arches}
- golang-bitbucket-kardianos-osext
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-bitbucket-ww-goautoneg
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-10gen-openssl
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- golang-github-3rf-mongo-lint
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-AdRoll-goamz
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-AudriusButkevicius-cli
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-AudriusButkevicius-go-nat-pmp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-AudriusButkevicius-pfilter
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-Azure-azure-sdk-for-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-BurntSushi-toml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-BurntSushi-toml-test
ExclusiveArch: %{go_arches}
- golang-github-DATA-DOG-go-sqlmock
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-DataDog-datadog-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-MakeNowJust-heredoc
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-Masterminds-semver
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-Masterminds-vcs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-PuerkitoBio-purell
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-PuerkitoBio-urlesc
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-RangelReale-osin
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-RangelReale-osincli
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-SeanDolphin-bqschema
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-Shopify-sarama
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-Shopify-toxiproxy
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-Sirupsen-logrus
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-abbot-go-http-auth
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-agl-ed25519
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-akrennmair-gopcap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-appc-spec
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-armon-circbuf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-armon-go-metrics
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-armon-go-radix
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-armon-gomdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-asaskevich-govalidator
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-auth0-go-jwt-middleware
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-aws-aws-sdk-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-beorn7-perks
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bep-gitmap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bep-inflect
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bgentry-speakeasy
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bkaradzic-go-lz4
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-blang-semver
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bmizerany-assert
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-bmizerany-pat
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-bmizerany-perks
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-boltdb-bolt
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bradfitz-http2
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-bugsnag-bugsnag-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bugsnag-panicwrap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-calmh-du
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-calmh-luhn
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-calmh-xdr
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-ccding-go-stun
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cenkalti-backoff
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-chaseadamsio-goorgeous
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cheggaaa-pb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-chmduquesne-rollinghash
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-circonus-labs-circonus-gometrics
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-circonus-labs-circonusllhist
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cloudfoundry-incubator-candiedyaml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cockroachdb-cmux
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-codegangsta-cli
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-codegangsta-negroni
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-collectd-go-collectd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-coreos-gexpect
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-coreos-go-etcd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-coreos-go-iptables
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-coreos-go-log
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-coreos-go-oidc
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-coreos-go-semver
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-coreos-go-systemd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-coreos-pkg
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cpuguy83-go-md2man
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-cznic-b
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-fileutil
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-internal
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-lexer
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-lldb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-mathutil
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-sortutil
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-strutil
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-zappy
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-d2g-dhcp4
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-d2g-dhcp4client
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-d4l3k-messagediff
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-davecgh-go-spew
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-daviddengcn-go-colortext
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-dchest-cssmin
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-denverdino-aliyungo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-dgnorton-goback
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-dgrijalva-jwt-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-digitalocean-godo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-go-connections
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-go-units
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-libcontainer
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-libkv
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-libtrust
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-spdystream
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docopt-docopt-go
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-dustin-go-humanize
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-dvsekhvalnov-jose2go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-eapache-go-resiliency
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-eapache-queue
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-edsrzf-mmap-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-eknkc-amber
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-elazarl-go-bindata-assetfs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-emicklei-go-restful
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-endophage-gotuf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-evanphx-json-patch
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-fatih-pool
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-fortytw2-leaktest
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-fsnotify-fsnotify
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-fsouza-go-dockerclient
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-garyburd-redigo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gengo-grpc-gateway
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-getsentry-raven-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-ghodss-yaml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-glacjay-goini
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-asn1-ber-asn1-ber
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-errors-errors
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-fsnotify-fsnotify
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-go-ini-ini
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-go-ldap-ldap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-macaron-inject
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-go-mgo-mgo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-sql-driver-mysql
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-tomb-tomb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gobwas-glob
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-godbus-dbus
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-golang-appengine
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-golang-glog
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-golang-groupcache
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-golang-sys
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-golang-time
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-blas
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-floats
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-graph
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-internal
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-lapack
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-matrix
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-google-btree
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-google-go-github
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-google-go-querystring
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-google-gofuzz
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-goraft-raft
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-context
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-handlers
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-mux
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-securecookie
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-sessions
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-websocket
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gosexy-gettext
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-grpc-ecosystem-go-grpc-prometheus
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-grpc-ecosystem-grpc-gateway
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-grpc-grpc-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-consul-migrate
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-errwrap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-go-checkpoint
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-cleanhttp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-immutable-radix
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-memdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-msgpack
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-multierror
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-go-retryablehttp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-go-sockaddr
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-go-syslog
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-uuid
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-golang-lru
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-hcl
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-hil
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-logutils
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-mdns
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-memberlist
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-net-rpc-msgpackrpc
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-raft
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-raft-boltdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-raft-mdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-scada-client
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-serf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-yamux
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hawkular-hawkular-client-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-howeyc-gopass
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-imdario-mergo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-inconshreveable-mousetrap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-inconshreveable-muxado
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-influxdb-hyperleveldb-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-influxdb-influxdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-influxdb-rocksdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jackpal-gateway
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-jacobsa-oglematchers
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jessevdk-go-flags
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jfrazelle-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jinzhu-gorm
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jmespath-go-jmespath
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-jmhodges-levigo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jonboulle-clockwork
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-jtolds-gls
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-juju-ratelimit
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-julienschmidt-httprouter
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-karlseguin-ccache
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-karlseguin-expect
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-kballard-go-shellquote
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-kdar-factorlog
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-kimor79-gollectd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-klauspost-cpuid
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-klauspost-crc32
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-klauspost-reedsolomon
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-knieriem-markdown
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-kr-fs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-kr-pretty
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-kr-pty
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-kr-text
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-kyokomi-emoji
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-lib-pq
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-lpabon-godbc
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-lsegal-gucumber
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-magiconair-properties
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mattn-go-isatty
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mattn-go-runewidth
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mattn-go-sqlite3
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-matttproud-golang_protobuf_extensions
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mesos-mesos-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-miekg-dns
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-miekg-mmark
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-miekg-pkcs11
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-milochristiansen-axis2
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-milochristiansen-lua
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-minio-sha256-simd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mistifyio-go-zfs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mitchellh-cli
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mitchellh-copystructure
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mitchellh-go-homedir
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mitchellh-go-wordwrap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mitchellh-goamz
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mitchellh-mapstructure
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mitchellh-reflectwalk
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mreiferson-go-httpclient
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-mvo5-goconfigparser
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mvo5-uboot-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mxk-go-flowrate
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-ncw-swift
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-noahdesu-go-ceph
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-ojii-gettext.go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-olekukonko-tablewriter
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-olekukonko-ts
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-olivere-elastic
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-onsi-ginkgo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-onsi-gomega
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-opencontainers-runtime-spec
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-opencontainers-specs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-openshift-go-json-rest
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-openshift-go-systemd
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-openshift-openshift-sdn
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-oschwald-geoip2-golang
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-oschwald-maxminddb-golang
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-pelletier-go-buffruneio
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-pelletier-go-toml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-petar-GoLLRB
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-peterh-liner
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-petermattis-goid
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-pkg-errors
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-pkg-profile
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-pkg-sftp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-pmezard-go-difflib
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-prometheus-client_golang
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-prometheus-client_model
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-prometheus-common
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-prometheus-procfs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-prometheus-prometheus
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-racker-perigee
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-rackspace-gophercloud
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-rakyll-globalconf
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-rakyll-pb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-rakyll-statik
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-rcrowley-go-metrics
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-remyoudompheng-bigfft
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-russross-blackfriday
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-ryanuber-columnize
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-samalba-dockerclient
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-samuel-go-zookeeper
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-sasha-s-go-deadlock
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-seccomp-libseccomp-golang
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-shiena-ansicolor
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-shurcooL-sanitized_anchor_name
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-skarademir-naturalsort
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-skratchdot-open-golang
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-skynetservices-skydns
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-smartystreets-assertions
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-smartystreets-go-aws-auth
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-smartystreets-goconvey
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spacejam-loghisto
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-spacemonkeygo-flagfile
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-spacemonkeygo-spacelog
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-spf13-afero
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-cast
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-cobra
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-spf13-fsync
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-jWalterWeatherman
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-nitro
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-spf13-pflag
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-viper
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-stathat-go
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-stevvooe-resumable
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-stretchr-objx
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-stretchr-testify
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-syndtr-gocapability
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-syndtr-goleveldb
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-syndtr-gosnappy
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-tent-http-link-go
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-thejerf-suture
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-tonnerre-golang-pretty
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-ugorji-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-urfave-cli
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-vaughan0-go-ini
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-vbatts-tar-split
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-vishvananda-netlink
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} aarch64 x86_64 %{arm}}
- golang-github-vishvananda-netns
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-vitrun-qart
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-vjeantet-asn1-ber
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-vmware-govcloudair
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-wsxiaoys-terminal
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-xeipuuv-gojsonpointer
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-xeipuuv-gojsonreference
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-xeipuuv-gojsonschema
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-xiang90-probing
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-xtaci-kcp-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-xtaci-smux
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-yosssi-ace
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-yosssi-gohtml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-yvasiyarov-go-metrics
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-yvasiyarov-gorelic
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-yvasiyarov-newrelic_platform_go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-zillode-notify
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-google-golangorg-cloud
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-gcfg
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-googlecode-go-crypto
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-go-decimal-inf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-go-exp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-googlecode-goauth2
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-gogoprotobuf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-gomock
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-googlecode-google-api-client
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-goprotobuf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-log4go
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-googlecode-net
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-sqlite
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-googlecode-text
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-tools
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-uuid
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-gopkg-check
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-gopkg-go-check-check
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-gopkg-go-macaroon-macaroon
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-gopkg-retry-v1
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-gopkg-yaml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golint
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- gomtree
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- gotags
ExclusiveArch: %{go_arches}
- gotun
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
ExclusiveArch: x86_64
- gprbuild
ExclusiveArch: %{GPRbuild_arches} %{bootstrap_arch}
- gprolog
ExclusiveArch: x86_64 %{ix86} ppc alpha
- gsf-sharp
ExclusiveArch: %mono_arches
- gtk-sharp-beans
ExclusiveArch: %mono_arches
- gtk-sharp2
ExclusiveArch: %mono_arches
- gtk-sharp3
ExclusiveArch: %{mono_arches}
- gtkd
ExclusiveArch: %{ldc_arches}
- gudev-sharp
ExclusiveArch: %mono_arches
- hedgewars
ExclusiveArch: %{fpc_arches}
- heketi
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- hub
ExclusiveArch: %{go_arches}
- hyena
ExclusiveArch: %{mono_arches}
- hyperscan
ExclusiveArch: x86_64
- hyperv-daemons
ExclusiveArch: i686 x86_64
- icaro
ExclusiveArch: %{ix86} %{arm} x86_64 noarch
- ikarus
ExclusiveArch: %{ix86}
- imvirt
ExclusiveArch: %{ix86} x86_64 ia64
- indistarter
ExclusiveArch: %{fpc_arches}
- infinipath-psm
ExclusiveArch: x86_64
- intel-cmt-cat
ExclusiveArch: x86_64 i686 i586
ExclusiveArch: x86_64 i686 i586
- ioport
ExclusiveArch: %{ix86} x86_64
- ipw2100-firmware
ExclusiveArch: noarch i386 x86_64
- ipw2200-firmware
ExclusiveArch: noarch i386 x86_64
- ispc
ExclusiveArch: %{arm} %{ix86} x86_64
- iwyu
ExclusiveArch: %{ix86} x86_64
- ixpdimm_sw
ExclusiveArch: x86_64
- jake
ExclusiveArch: %{nodejs_arches} noarch
- jasmine-node
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- java-1.8.0-openjdk-aarch32
ExclusiveArch: %{arm}
- julia
ExclusiveArch: %{ix86} x86_64
- keepass
ExclusiveArch: %{mono_arches}
- kernel
ExclusiveArch: %{all_x86} x86_64 ppc64 ppc64p7 s390x %{arm} aarch64 ppc64le
- knot-resolver
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- kompose
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- kosmtik
ExclusiveArch: %{nodejs_arches} noarch
- kubernetes
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- latrace
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{power64}
- lazarus
ExclusiveArch: %{fpc_arches}
- ldc
ExclusiveArch: %{ldc_arches}
- libbsr
ExclusiveArch: %{power64}
- libclc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{power64} s390x
- libcxl
ExclusiveArch: %{power64}
- libflatarray
ExclusiveArch: %{ix86} x86_64
- libhfi1
ExclusiveArch: x86_64
- libica
ExclusiveArch: s390 s390x
- libinvm-cim
ExclusiveArch: x86_64
- libinvm-cli
ExclusiveArch: x86_64
- libinvm-i18n
ExclusiveArch: x86_64
- libipathverbs
ExclusiveArch: x86_64
- libipt
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
- libjingle
ExclusiveArch: %{ix86} x86_64 %{arm}
- libmfx
ExclusiveArch: %{ix86} x86_64
- libpsm2
ExclusiveArch: x86_64
- librtas
ExclusiveArch: ppc %{power64}
- libseccomp
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 mipsel mips64el ppc64 ppc64le s390 s390x
- libservicelog
ExclusiveArch: ppc %{power64}
- libsmbios
ExclusiveArch: x86_64 ia64 %{ix86}
- libunwind
ExclusiveArch: %{arm} aarch64 hppa ia64 mips ppc %{power64} %{ix86} x86_64
- libvmi
ExclusiveArch: x86_64
- libvpd
ExclusiveArch: ppc %{power64}
- libxsmm
ExclusiveArch: x86_64
- libzfcphbaapi
ExclusiveArch: s390 s390x
- lldb
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- lodash
ExclusiveArch: %{nodejs_arches} noarch
- log4net
ExclusiveArch: %mono_arches
- lrmi
ExclusiveArch: %{ix86}
- lsvpd
ExclusiveArch: ppc %{power64}
- luajit
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- mactel-boot
ExclusiveArch: x86_64
- manifest-tool
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- marked
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- matreshka
ExclusiveArch: %GPRbuild_arches
- maven-eclipse-plugin
ExclusiveArch: %{ix86} x86_64
- maxima
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc sparcv9
ExclusiveArch: %{ix86} x86_64 ppc sparcv9
- mcelog
ExclusiveArch: i686 x86_64
- memkind
ExclusiveArch: x86_64
- memtest86+
ExclusiveArch: %{ix86} x86_64
- mesos
ExclusiveArch: x86_64
- microcode_ctl
ExclusiveArch: %{ix86} x86_64
- micropython
ExclusiveArch: %{arm} %{ix86} x86_64
- mine_detector
ExclusiveArch: %{GNAT_arches}
- minetest
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- mingw-wine-gecko
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- mkbootdisk
ExclusiveArch: %{ix86} sparc sparc64 x86_64
- mnemosyne
ExclusiveArch: noarch %{qt5_qtwebengine_arches}
- mocha
ExclusiveArch: %{nodejs_arches} noarch
- mod_mono
ExclusiveArch: %mono_arches
- module-build-service
ExclusiveArch: %{ix86} x86_64
- mokutil
ExclusiveArch: %{ix86} x86_64 aarch64
- mongo-tools
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- mono
ExclusiveArch: %mono_arches
- mono-addins
ExclusiveArch: %mono_arches
- mono-basic
ExclusiveArch: %{mono_arches}
- mono-bouncycastle
ExclusiveArch: %mono_arches
- mono-cecil
ExclusiveArch: %mono_arches
- mono-cecil-flowanalysis
ExclusiveArch: %mono_arches
- mono-debugger
ExclusiveArch: %ix86 x86_64
- mono-reflection
ExclusiveArch: %mono_arches
- mono-tools
ExclusiveArch: %mono_arches
- mono-zeroconf
ExclusiveArch: %mono_arches
- monobristol
ExclusiveArch: %{mono_arches}
- monodevelop
ExclusiveArch: %mono_arches
- monodevelop-debugger-gdb
ExclusiveArch: %{mono_arches}
- monosim
ExclusiveArch: %mono_arches
- mrrescue
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64 ppc64
- msr-tools
ExclusiveArch: %{ix86} x86_64
- mustache-d
ExclusiveArch: %{ldc_arches}
- mysql-connector-net
ExclusiveArch: %{mono_arches}
- nacl-arm-binutils
ExclusiveArch: x86_64
- nacl-arm-gcc
ExclusiveArch: x86_64
- nacl-arm-newlib
ExclusiveArch: x86_64
- nacl-binutils
ExclusiveArch: x86_64
- nacl-gcc
ExclusiveArch: x86_64
- nacl-newlib
ExclusiveArch: x86_64
- nant
ExclusiveArch: %mono_arches
- nbc
ExclusiveArch: %{fpc_arches}
- ndesk-dbus
ExclusiveArch: %{mono_arches}
- ndesk-dbus-glib
ExclusiveArch: %{mono_arches}
- newtonsoft-json
ExclusiveArch: %{mono_arches}
- nini
ExclusiveArch: %{mono_arches}
- node-gyp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs
ExclusiveArch: %{nodejs_arches}
- nodejs-abbrev
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-accepts
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-acorn
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-after
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-agent-base
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-agentkeepalive
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ain2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-alter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-cyan
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-font
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-green
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-magenta
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-regex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-styles
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-wrap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-yellow
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansicolors
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansidiff
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansistyles
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-any-promise
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ap
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-append-transform
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-aproba
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-archiver
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-archiver-utils
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-archy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-are-we-there-yet
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-argparse
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-argsparser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-arr-diff
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-arr-exclude
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-arr-flatten
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-arr-union
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-differ
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-array-filter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-find-index
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-flatten
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-foreach
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-index
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-reduce
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-union
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-array-uniq
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-array-unique
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-arrify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-as-number
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-asap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ascii-tree
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ascli
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-asn1
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-assert-plus
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-assertion-error
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-assume
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ast-traverse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ast-types
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-astral
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-astral-angular-annotate
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-astral-pass
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async-array-reduce
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-async-cache
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async-each
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async-queue
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async-some
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-aws-sign
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-aws-sign2
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-babel-runtime
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-backbone
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-balanced-match
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-base64-js
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-base64-url
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-basic-auth
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-basic-auth-connect
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-basic-auth-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-batch
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-bcrypt
ExclusiveArch: %{nodejs_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- nodejs-beeper
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-benchmark
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-better-assert
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bignumber-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bindings
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-bl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-block-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bluebird
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-body-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-boolbase
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-boom
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-brace-expansion
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-breakable
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-browser-request
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bson
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-buf-compare
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-buffer-crc32
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-buffer-equal
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-buffer-shims
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-buffer-writer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-buffertools
ExclusiveArch: %{nodejs_arches}
- nodejs-bufferutil
ExclusiveArch: %{nodejs_arches}
- nodejs-builtin-modules
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-builtins
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bundle-dependencies
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-bunker
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-bunyan
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-burrito
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-bytes
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-caching-transform
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-call-signature
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-caller-callsite
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-caller-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-callsite
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-callsites
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-camel-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-camelcase
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-camelcase-keys
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-caniuse-db
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-capture-stack-trace
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-carrier
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-caseless
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chai
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chai-connect-middleware
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chai-passport-strategy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chainsaw
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chalk
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-change-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-char-spinner
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-character-parser
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-charm
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-child-process-close
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chmodr
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chownr
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chrono
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cjson
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-clap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-clean-css
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-clean-yaml-object
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cli
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cli-color
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cli-spinner
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cliui
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-clone
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-clone-stats
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-closure-compiler
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cls
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cmd-shim
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-co
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-co-mocha
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-code-point-at
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-codemirror
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-collections
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-colors
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-colour
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-columnify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-combined-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-commander
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-commondir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-commoner
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-commonmark
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-component-emitter
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-component-indexof
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-compress-commons
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-compressible
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-compression
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-concat-map
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-concat-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-config-chain
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-connect
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-connect-livereload
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-connect-timeout
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-console-browserify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-console-dot-log
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-constant-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-constantinople
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-content-disposition
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-content-type
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-convert-source-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cookie
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cookie-jar
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cookie-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cookie-signature
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cookiejar
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-core-js
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-core-util-is
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-couch-login
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-coveralls
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-crc32-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-create-error-class
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cross-spawn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cross-spawn-async
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cryptiles
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-css
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-css-parse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-css-select
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-css-stringify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-css-what
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-csscomb-core
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-csslint
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cssom
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-csurf
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-csv-generate
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-csv-spectrum
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ctype
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-currently-unhandled
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cycle
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-d
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-dashdash
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-data-uri-to-buffer
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-date-now
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dateformat
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-debug
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-debuglog
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-decamelize
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-decompress-response
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-deep-eql
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-deep-equal
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-deep-extend
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-deep-is
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-deeper
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-default-require-extensions
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-defaults
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-defence
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-defence-cli
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-deferred
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-define-properties
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-defined
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-defs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-degenerator
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-del
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-delayed-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-delegates
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-dep-graph
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-depd
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dependency-lister
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-deprecated
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-destroy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-detect-file
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-detective
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dezalgo
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-diff
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-difflet
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-difflib
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-docopt
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-doctrine
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dom-serializer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-domelementtype
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-domhandler
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-domutils
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dot-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dotfile-regex
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-dreamopt
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dryice
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-dtree
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-duplex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-duplexer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-duplexer2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-duplexer3
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-duplexify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-duration
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-each
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-each-async
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ebnf-parser
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ecstatic
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-editor
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ee-first
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ejs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-emojione
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-encodeurl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-encoding
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-end-of-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-entities
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-error-ex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-errorhandler
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-errs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-es-abstract
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-es-to-primitive
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-es5-ext
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es5-shim
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-iterator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-promise
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-es6-set
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-shim
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-symbol
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-weak-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-escape-html
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-escape-regexp-component
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-escape-string-regexp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-escodegen
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-esprima
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-esprima-fb
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-esprima-harmony-jscs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-esrecurse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-estraverse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-estraverse-fb
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-esutils
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-etag
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-event-emitter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-event-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-eventemitter2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-eventemitter3
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-events
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-events-to-array
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-exit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-expand-brackets
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-expand-tilde
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-expect
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-expect-dot-js
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-express
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-express-session
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-extend
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-extend-shallow
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-extglob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-extsprintf
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-eyes
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-fancy-log
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-far
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fast-levenshtein
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-faye-websocket
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-fd
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fd-slicer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fg-lodash
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-figures
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-file-entry-cache
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-file-sync-cmp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-file-uri-to-path
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-filed
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-filelist
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-filename-regex
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-fileset
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-fill-keys
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fill-range
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-finalhandler
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-find-cache-dir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-find-up
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-findup-sync
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-first-chunk-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-flagged-respawn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-flot
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fn-dot-name
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fn-name
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-follow
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-for-in
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-for-own
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-foreach
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-forever-agent
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-form-data
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-formatio
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-formidable
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-forwarded
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-freetree
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fresh
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-from
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-from2
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fs-exists-sync
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-fs-ext
ExclusiveArch: %{nodejs_arches}
- nodejs-fs-extra
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fs-vacuum
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fs-write-stream-atomic
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fs2
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fstream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fstream-ignore
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fstream-npm
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ftp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-function-bind
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-gauge
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gaze
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gdal
ExclusiveArch: %{nodejs_arches}
- nodejs-generate-function
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-generate-object-property
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-generic-pool
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-get-pkg-repo
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-get-port
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-get-stdin
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-get-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-get-uri
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-getobject
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gettext-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-github-url-from-git
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-github-url-from-username-repo
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-glob
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-glob-base
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-glob-parent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-global-prefix
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-globals
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-globby
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-globule
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-glogg
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gonzales-pe
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-got
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-graceful-fs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-graceful-readlink
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grip
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-growl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-angular-templates
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-banner
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-cli
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-compare-size
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-clean
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-concat
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-connect
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-copy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-contrib-csslint
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-cssmin
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-htmlmin
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-contrib-internal
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-less
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-nodeunit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-requirejs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-contrib-uglify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-watch
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-git-authors
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-html-validation
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-init
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-known-options
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-legacy-log
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-legacy-log-utils
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-legacy-util
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-lib-contrib
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-saucelabs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-sed
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-simple-mocha
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-util-args
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-util-options
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-util-process
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-util-property
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-wrap
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-gulplog
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gzip-size
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-handlebars
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-har-validator
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has-ansi
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has-color
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-has-glob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-has-gulplog
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-has-unicode
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has-yarn
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hash_file
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hawk
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-he
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-heap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-highlight-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hock
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hoek
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hooker
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-hosted-git-info
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-html-minifier
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-htmlparser2
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-http-errors
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-http-proxy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-http-proxy-agent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-http-server
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-http-signature
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-https-proxy-agent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-humanize-ms
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-i
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-i18n-transform
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-i2c
ExclusiveArch: %{nodejs_arches}
- nodejs-iconv
ExclusiveArch: %{nodejs_arches}
- nodejs-iconv-lite
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-iferr
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ignore
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-imurmurhash
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-indent-string
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-infinity-agent
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-inflight
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-inherit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-inherits
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-inherits1
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ini
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-init-package-json
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-inline-source-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-install
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-int64-buffer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-interpret
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-into-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-invert-kv
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ip
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-irc-colors
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-irregular-plurals
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-absolute
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-arrayish
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-arrow-function
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-boolean-object
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-buffer
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-builtin-module
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-callable
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-date-object
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-dir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-dotfile
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-equal
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-equal-shallow
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-extendable
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-extglob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-finite
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-fullwidth-code-point
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-generator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-generator-fn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-generator-function
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-glob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-lower-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-my-json-valid
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-number
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-number-object
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-obj
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-object
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-observable
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-path-cwd
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-path-in-cwd
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-path-inside
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-plain-obj
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-plain-object
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-primitive
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-property
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-redirect
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-regex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-regexp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-relative
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-retry-allowed
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-string
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-symbol
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-text-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-typedarray
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-unc-path
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-upper-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-url
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-utf8
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-valid-glob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-windows
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-isarray
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-isexe
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-iso8601
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-isobject
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-isodate
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-isstream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-istanbul
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jade
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jasmine-growl-reporter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jasmine-reporters
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jison
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jison-lex
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jju
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-joose
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-joosex-namespace-depended
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-joosex-simplerequest
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-js-base64
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-js-yaml
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jschardet
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jscoverage
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jshint
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-json-diff
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-json-localizer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-json-parse-helpfulerror
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-json-stable-stringify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-json-stringify-safe
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jsonfile
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jsonify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jsonm
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jsonparse
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jsonpointer
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jsonselect
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jwt-simple
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-keypress
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-kind-of
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-klaw
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-langdetect
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-latest-version
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-lazystream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-lcid
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lcov-parse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-leaflet
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-leaflet-formbuilder
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-leaflet-hash
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-leche
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-left-pad
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-less
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-levn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-lex-parser
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-libxmljs
ExclusiveArch: %{nodejs_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- nodejs-line-reader
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-linkify-it
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-load-grunt-tasks
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-load-json-file
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-locate-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lockfile
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-log-driver
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-log-symbols
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lolex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-loud-rejection
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-lower-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lower-case-first
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lowercase-keys
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lru-cache
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lru-queue
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ltx
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-make-arrow-function
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-make-generator-function
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-map-obj
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-map-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mapnik
ExclusiveArch: %{nodejs_arches}
- nodejs-mapnik-pool
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mapnik-vector-tile
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-markdown
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-markdown-it-testgen
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-max-timeout
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-maxmin
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mbtiles
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-md5-hex
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-md5-o-matic
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-mdurl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-media-typer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-memoizee
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-meow
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-merge-descriptors
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-merge-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-metascript
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-method-override
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-methods
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-millstone
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mime
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-mime-db
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mime-types
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mimeparse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-minimatch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-minimist
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-minstache
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mkdirp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mkfiletree
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mock-fs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-module-not-found-error
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-moment
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-mongodb
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mongodb-core
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-monocle
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-morgan
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ms
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-muffin
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-multiline
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-multimatch
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-multiparty
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-mustache
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mute-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mv
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-mysql
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mz
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-nan
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nan0
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-nan1
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nano
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-native-or-bluebird
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ncp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-needle
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-negotiator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-nested-error-stacks
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-net-browserify-alt
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-netmask
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-next
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-next-tick
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-node-expat
ExclusiveArch: %{nodejs_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- nodejs-node-int64
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-node-markdown
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-node-print
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-node-static
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-node-status-codes
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-node-stringprep
ExclusiveArch: %{nodejs_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- nodejs-node-uuid
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-nomnom
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nopt
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nopt-usage
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-noptify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-normalize-git-url
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-normalize-package-data
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-normalize-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-cache-filename
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-install-checks
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-license
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-npm-package-arg
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-registry-client
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-npm-run-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-stats
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-user-validate
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npmlog
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nsp-api
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nsp-audit-shrinkwrap
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nth-check
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-number-is-nan
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-numeral
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-oauth
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-oauth-sign
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-object-assign
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-object-dot-entries
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-object-dot-omit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-object-inspect
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-object-is
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-object-keys
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-on-finished
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-on-headers
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-once
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-onetime
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-only-shallow
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-oop
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-open
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-opener
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-opn
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-optionator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-options
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-optjs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-opts
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-orchestrator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ordered-read-streams
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-os-homedir
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-os-locale
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-os-tmpdir
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-osenv
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-output-file-sync
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-p-finally
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-p-is-promise
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-p-limit
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-p-locate
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pac-proxy-agent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pac-resolver
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-package
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-package-info
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-package-json
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-package-license
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-packaging
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-packet-reader
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pad
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pad-left
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-paperboy
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-param-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parse-github-repo-url
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parse-glob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-parse-json
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parse-ms
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parserlib
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-parseurl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pascal-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-passport-oauth
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-passport-oauth1
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-passport-oauth2
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-passport-strategy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-array
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-path-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-exists
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-is-absolute
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-is-inside
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-key
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-to-regexp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-path-type
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pathval
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pause
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pause-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pedding
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pegjs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pem
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pend
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pff
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pg
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pg-connection-string
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pg-escape
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pg-types
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pgpass
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pinkie
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pinkie-promise
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pkg-dir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pkg-up
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pkginfo
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-platform
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-plur
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-portfinder
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-portscanner
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-posix-getopt
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-postgres-array
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-postgres-bytea
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-postgres-date
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-postgres-interval
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-prelude-ls
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-prepend-http
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-preserve
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pretty-bytes
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pretty-hrtime
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pretty-ms
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-private
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-process-nextick-args
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-progress-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-promise
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-promises-aplus-tests
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-prompt
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-promzard
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-propagate
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-proto-list
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-proxy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-proxy-agent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-proxyquire
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pruddy-error
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pseudomap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pubcontrol
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-q
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-q-io
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-qs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-qtdatastream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-queue-async
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-qunit-extras
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-qunitjs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rainbowsocks
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-randomatic
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-range-parser
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-raw-body
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rc
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-re-emitter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-read-all-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-read-cmd-shim
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-dir-files
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-file
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-installed
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-package-json
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-package-tree
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-pkg
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-read-pkg-up
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-readable-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-readdir-scoped-modules
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-readdirp
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-realize-package-specifier
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-recast
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-rechoir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-redent
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-reduce-component
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-regenerator
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-regex-cache
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-registry-url
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-relateurl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-repeat-element
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-repeat-string
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-repeating
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-repl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-replace
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-replace-ext
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-replace-require-self
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-request
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-requestretry
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-require-cs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-require-directory
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-require-inject
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-require-uncached
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-require-yaml
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-requirejs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-requires-port
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-resolve
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-resolve-from
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-resolve-pkg
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-response-time
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-resumer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-retry
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-revalidator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-rewire
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rhea
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-rimraf
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rndm
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ronn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-run-parallel-limit
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-runforcover
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-safe-buffer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-safe-json-stringify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-safecb
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-samsam
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sauce-tunnel
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-saucelabs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sax
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-scmp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-secure-random
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-semver
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-send
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sentence-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-seq
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sequencify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-serialize-error
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-serve-index
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-serve-static
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-set-getter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-set-immediate
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-set-immediate-shim
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-setimmediate
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sha
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-shelljs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-shelljs-nodecli
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-should
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-should-equal
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-should-format
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-should-http
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-should-type
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-showdown
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sigmund
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-signal-exit
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-silent-npm-registry-client
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-simple-assert
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-simple-fmt
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-simple-is
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-simple-markdown
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-single-line-log
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sinon
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sinon-restore
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-slide
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-smart-buffer
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-snake-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-snockets
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sntp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-socks-client
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-socks-proxy-agent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sort-keys
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sorted-object
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-source-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-source-map-fixtures
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sparkles
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-spdx-correct
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-spdx-exceptions
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-spdx-expression-parse
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-spdx-license-ids
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-speedometer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-split
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sprintf
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sprintf-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sqlite3
ExclusiveArch: %{nodejs_arches}
- nodejs-srs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-st
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stable
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stack-trace
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stack-utils
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-static-favicon
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-statuses
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-std-mocks
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-combiner
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-consume
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stream-counter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stream-equal
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-reduce
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-replace
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stream-shift
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-spigot
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-to-array
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-streamsink
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-streamtest
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-string
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-string-dot-prototype-dot-repeat
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-string-dot-prototype-dot-trim
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-string-width
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-string_decoder
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stringmap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stringscanner
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stringset
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stringstream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-strip-ansi
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-strip-bom
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-strip-bom-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-strip-indent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-strip-json-comments
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-strip-path
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-strscanner
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stylus
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-success-symbol
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-superagent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-superagent-proxy
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-supertest
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-supervisor
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-supports-color
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-swap-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-symbol-observable
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tad
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tap
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tap-mocha-reporter
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tap-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tape
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tar
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tar-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-temp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-temporary
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tern
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tern-cordovajs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tern-liferay
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-terst
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-test
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-testjs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-testswarm
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-text-extensions
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-text-table
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-thenify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-thenify-all
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-through
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-through2
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-through2-filter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-thunkify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tildify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tilejson
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tilelive
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tilelive-mapnik
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tiletype
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-time-stamp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-timed-out
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-timers-ext
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tiny-lr-fork
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-title-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tlds
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tmatch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tmp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-to-absolute-glob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-to-object-path
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tough-cookie
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tracejs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-transformers
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-traverse
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-treeify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-trim-newlines
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-try-open
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tryor
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tsscmp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ttembed-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tunnel-agent
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-type-check
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-type-detect
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-type-is
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-type-name
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-typeahead.js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-typedarray
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-typescript
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-uc-dot-micro
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-uglify-to-browserify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-uid-number
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-uid-safe
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-uid2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ultron
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-umask
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-unc-path-regex
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-underscore
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-underscore-dot-logger
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-unicode-7.0.0
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-unicode-length
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-union
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-unique-filename
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-unique-slug
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-unique-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-unpipe
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-unzip-response
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-upper-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-upper-case-first
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-uri-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-url-join
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-url-parse-lax
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-url2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-utfx
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-util
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-util-deprecate
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-util-extend
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-utile
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-utilities
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-utils-merge
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-vali-date
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-validate-npm-package-license
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-validate-npm-package-name
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-vary
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-vasync
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-verror
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-vhost
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-vinyl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-vow
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-vow-fs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-vow-queue
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-vows
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-w3cjs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-walkdir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-watchit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-wcwidth
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-weak-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-websocket-driver
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-when
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-which
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-win-spawn
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-window-size
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-winston
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-with
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-woothee
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-wordwrap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-wrap-ansi
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-wrap-fn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-wrappy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-write-file-atomic
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-write-json-file
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-write-pkg
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ws
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xml2js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xmlbuilder
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xmldom
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xregexp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-xtend
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-y18n
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-yallist
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-yargs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-yauzl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-zap
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-zip-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-zipfile
ExclusiveArch: %{nodejs_arches}
- nodejs-zlib-browserify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-zlibjs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodeunit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- notify-sharp
ExclusiveArch: %{mono_arches}
- notify-sharp3
ExclusiveArch: %{mono_arches}
- nuget
ExclusiveArch: %{mono_arches}
- numatop
ExclusiveArch: %{ix86} x86_64
- nunit
ExclusiveArch: %{mono_arches}
- nunit2
ExclusiveArch: %{mono_arches}
- nvml
ExclusiveArch: x86_64
- nwchem
ExclusiveArch: x86_64 %{ix86}
- oci-register-machine
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- ocitools
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- olpc-kbdshim
ExclusiveArch: %{ix86} %{arm}
- olpc-netutils
ExclusiveArch: %{ix86} %{arm}
- olpc-powerd
ExclusiveArch: %{ix86} %{arm}
- olpc-utils
ExclusiveArch: %{ix86} %{arm}
- opal-prd
ExclusiveArch: ppc64le
- open-vm-tools
ExclusiveArch: x86_64
ExclusiveArch: %{ix86} x86_64
- openblas
ExclusiveArch: %{openblas_arches}
- openjfx
ExclusiveArch: %{ix86} x86_64
- openlibm
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 %{power64}
- openmx
ExclusiveArch: x86_64 %{ix86}
- openni
ExclusiveArch: %{ix86} x86_64 %{arm}
- openni-primesense
ExclusiveArch: %{ix86} x86_64 %{arm}
- openssl-ibmca
ExclusiveArch: s390 s390x
- origin
ExclusiveArch: %{go_arches}
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- orocos-bfl
ExclusiveArch: %{ix86} x86_64
- orthorobot
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64 ppc64
- paflib
ExclusiveArch: ppc %{power64}
- pcc
ExclusiveArch: %{ix86} x86_64
- pcmciautils
ExclusiveArch: %{ix86} x86_64 ia64 ppc ppc64 %{arm}
- pdfmod
ExclusiveArch: %mono_arches
- perl-Dumbbench
ExclusiveArch: %{ix86} x86_64 noarch
- perl-Parse-DMIDecode
ExclusiveArch: %{ix86} x86_64 ia64 aarch64
- pesign
ExclusiveArch: %{ix86} x86_64 ia64 aarch64 arm
- pesign-test-app
ExclusiveArch: i686 x86_64 ia64 aarch64
- pinta
ExclusiveArch: %mono_arches
- pioneer
ExclusiveArch: %{ix86} x86_64
- playonlinux
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- polyml
ExclusiveArch: %{ix86} x86_64 sparc sparcv8 sparcv9 sparcv9v ppc %{power64} %{arm} aarch64 ia64 mips mipsel
- poppler-sharp
ExclusiveArch: %mono_arches
- powerpc-utils
ExclusiveArch: ppc %{power64}
- ppc64-diag
ExclusiveArch: ppc %{power64}
- ppc64-utils
ExclusiveArch: ppc %{power64}
- prelude-correlator
ExclusiveArch: %{ix86} x86_64
- prewikka
ExclusiveArch: %{ix86} x86_64
- publican-jboss
ExclusiveArch: i686 x86_64
- pvs-sbcl
ExclusiveArch: %{ix86} x86_64 ppc sparcv9
- python-afl
ExclusiveArch: %{ix86} x86_64
- python-etcd
ExclusiveArch: noarch %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- python-healpy
ExclusiveArch: aarch64 ppc64 ppc64le x86_64 s390x
- python-openoffice
ExclusiveArch: noarch x86_64
- python-ovirt-register
ExclusiveArch: %{ix86} x86_64
- python-pymoc
ExclusiveArch: aarch64 ppc64 ppc64le x86_64 s390x
- python-rpi-gpio
ExclusiveArch: %{arm} aarch64
- q4wine
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- qcint
ExclusiveArch: x86_64
- qclib
ExclusiveArch: s390 s390x
- qt4pas
ExclusiveArch: %{fpc_arches}
- qt5-qtwebengine
ExclusiveArch: %{qt5_qtwebengine_arches}
- quantum-espresso
ExclusiveArch: x86_64 %{ix86}
ExclusiveArch: %{openblas_arches}
- rear
ExclusiveArch: %ix86 x86_64 ppc ppc64 ppc64le ia64
- redhat-lsb
ExclusiveArch: %{ix86} ia64 x86_64 ppc ppc64 s390 s390x %{arm} aarch64 ppc64le
- reg
ExclusiveArch: x86_64
- reptyr
ExclusiveArch: %{ix86} x86_64 %{arm}
- rescene
ExclusiveArch: %{mono_arches}
- restsharp
ExclusiveArch: %{mono_arches}
- rhythmbox-alternative-toolbar
ExclusiveArch: %{ix86} %{arm} x86_64 ppc64 ppc64le
- rkt
ExclusiveArch: x86_64 aarch64 %{arm} %{ix86}
- runc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le %{mips} s390x
- rust
ExclusiveArch: %{rust_arches}
- rust-packaging
ExclusiveArch: %{rust_arches} noarch
- s390utils
ExclusiveArch: s390 s390x
- sagemath
ExclusiveArch: aarch64 %{arm} %{ix86} x86_64 ppc sparcv9
- sbcl
ExclusiveArch: %{arm} %{ix86} x86_64 ppc sparcv9 aarch64
- sbd
ExclusiveArch: i686 x86_64 s390x
- seamonkey
ExclusiveArch: %{ix86} x86_64
- servicelog
ExclusiveArch: ppc %{power64}
- sharpfont
ExclusiveArch: %mono_arches
- sharpziplib
ExclusiveArch: %{mono_arches}
- shim
ExclusiveArch: x86_64
- shim-signed
ExclusiveArch: x86_64 aarch64
- shim-unsigned-aarch64
ExclusiveArch: aarch64
- sigul
ExclusiveArch: x86_64
- skychart
ExclusiveArch: %{fpc_arches}
- slapi-nis
ExclusiveArch: x86_64 %{ix86}
- smuxi
ExclusiveArch: %{ix86} x86_64 %{arm} ppc64le
- snapd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- source-to-image
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- sparkleshare
ExclusiveArch: %{mono_arches}
- spicctrl
ExclusiveArch: %{ix86} x86_64
- spice
ExclusiveArch: x86_64
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- spice-xpi
ExclusiveArch: i686 x86_64 armv6l armv7l armv7hl aarch64
- spring
ExclusiveArch: %{ix86} x86_64
- springlobby
ExclusiveArch: %{ix86} x86_64
- statsd
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- stripesnoop
ExclusiveArch: %{ix86} x86_64
- supermin
ExclusiveArch: x86_64
- sysbench
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips}
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- syslinux
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
- taglib-sharp
ExclusiveArch: %{mono_arches}
- tarantool
ExclusiveArch: %{ix86} x86_64 armv7hl armv7hnl aarch64
- tboot
ExclusiveArch: %{ix86} x86_64
- templates_parser
ExclusiveArch: %GPRbuild_arches
- themonospot-base
ExclusiveArch: %mono_arches
- themonospot-console
ExclusiveArch: %mono_arches
- themonospot-gui-gtk
ExclusiveArch: %mono_arches
- themonospot-plugin-avi
ExclusiveArch: %mono_arches
- themonospot-plugin-mkv
ExclusiveArch: %mono_arches
- thermald
ExclusiveArch: %{ix86} x86_64
- thunderbird-enigmail
ExclusiveArch: %{ix86} %{arm} ppc64 ppc64le s390x x86_64 noarch
- tilix
ExclusiveArch: %{ldc_arches}
- tmux-top
ExclusiveArch: %{go_arches}
- tomboy
ExclusiveArch: %{mono_arches}
- tpm2-tools
ExclusiveArch: %{ix86} x86_64
- tpm2-tss
ExclusiveArch: %{ix86} x86_64
- uClibc
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips}
- ugene
ExclusiveArch: %{ix86} x86_64
- uglify-js
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- uglify-js1
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- unetbootin
ExclusiveArch: %{ix86} x86_64
- v8
ExclusiveArch: %{ix86} x86_64 ppc ppc64 aarch64 %{mips} s390 s390x
- v8-314
ExclusiveArch: %{ix86} x86_64 %{arm} mips mipsel ppc ppc64
- valgrind
ExclusiveArch: %{ix86} x86_64 ppc ppc64 ppc64le s390x armv7hl aarch64
- vboot-utils
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- vdsm
ExclusiveArch: x86_64 %{power64} aarch64
- vim-go
ExclusiveArch: %{?golang_arches:%{golang_arches} noarch}%{!?golang_arches:%{ix86} x86_64 %{arm}}
- virtualplanet
ExclusiveArch: %{fpc_arches}
- vrq
ExclusiveArch: %{ix86} x86_64
- warsow
ExclusiveArch: %{ix86} x86_64 %{arm}
- warsow-data
ExclusiveArch: %{ix86} x86_64 %{arm}
- webkit-sharp
ExclusiveArch: %mono_arches
- wine
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
ExclusiveArch: %{ix86} %{arm}
- winetricks
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- wiredtiger
ExclusiveArch: x86_64 aarch64 ppc64le
- wraplinux
ExclusiveArch: %{ix86} x86_64
- wxMaxima
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc sparcv9
- x86info
ExclusiveArch: %{ix86} x86_64
- xen
ExclusiveArch: %{ix86} x86_64 armv7hl aarch64
- xmlada
ExclusiveArch: %{GPRbuild_arches}
- xorg-x11-drv-armsoc
ExclusiveArch: %{arm} aarch64
- xorg-x11-drv-freedreno
ExclusiveArch: %{arm} aarch64
- xorg-x11-drv-geode
ExclusiveArch: %{ix86}
- xorg-x11-drv-intel
ExclusiveArch: %{ix86} x86_64 ia64
- xorg-x11-drv-omap
ExclusiveArch: %{arm}
- xorg-x11-drv-openchrome
ExclusiveArch: %{ix86} x86_64
- xorg-x11-drv-opentegra
ExclusiveArch: %{arm}
- xorg-x11-drv-vesa
ExclusiveArch: %{ix86} x86_64
- xorg-x11-drv-vmware
ExclusiveArch: %{ix86} x86_64 ia64
- xsp
ExclusiveArch: %mono_arches
- xsupplicant
ExclusiveArch: %{ix86} x86_64 ppc %{power64}
- ycssmin
ExclusiveArch: %{nodejs_arches} noarch
- zeromq-ada
ExclusiveArch: %{GNAT_arches}
- zlib-ada
ExclusiveArch: %{GNAT_arches}
6 years, 9 months
Architecture specific change in rpms/zfs-fuse.git
by githook-noreply@fedoraproject.org
The package rpms/zfs-fuse.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/zfs-fuse.git/commit/?id=4fd61ea3d....
Change:
+ExcludeArch: s390 s390x aarch64
Thanks.
Full change:
============
commit d92f7fc67d3faeafcffe15a5e71a5be3e9684714
Author: Neal Gompa <ngompa13(a)gmail.com>
Date: Sun Jul 16 13:12:59 2017 -0400
Move binaries to /usr/sbin for compatibility with other zfs implementations
diff --git a/zfs-fuse-helper b/zfs-fuse-helper
index 6d9b9a6..6833f24 100644
--- a/zfs-fuse-helper
+++ b/zfs-fuse-helper
@@ -4,7 +4,7 @@
. /etc/rc.d/init.d/functions
prog="zfs-fuse"
-exec="/usr/bin/$prog"
+exec="/usr/sbin/$prog"
config=/etc/sysconfig/$prog
[ -e $config ] && . $config
@@ -174,7 +174,7 @@ restart() {
pool_status() {
# run checks to determine if the service is running or use generic status
- status $prog && /usr/bin/zpool status
+ status $prog && /usr/sbin/zpool status
}
pool_status_quiet() {
diff --git a/zfs-fuse.init b/zfs-fuse.init
index 808ede0..97200b5 100644
--- a/zfs-fuse.init
+++ b/zfs-fuse.init
@@ -21,7 +21,7 @@
. /etc/rc.d/init.d/functions
prog="zfs-fuse"
-exec="/usr/bin/$prog"
+exec="/usr/sbin/$prog"
config=/etc/sysconfig/$prog
[ -e $config ] && . $config
@@ -191,7 +191,7 @@ restart() {
pool_status() {
# run checks to determine if the service is running or use generic status
- status $prog && /usr/bin/zpool status
+ status $prog && /usr/sbin/zpool status
}
pool_status_quiet() {
diff --git a/zfs-fuse.scrub b/zfs-fuse.scrub
index 9e72ed6..c6ec553 100644
--- a/zfs-fuse.scrub
+++ b/zfs-fuse.scrub
@@ -9,7 +9,7 @@
[ "$ZFS_WEEKLY_SCRUB" != "yes" ] && exit 0
-zpool=/usr/bin/zpool
+zpool=/usr/sbin/zpool
pools=`$zpool list -H | cut -f1`
diff --git a/zfs-fuse.service b/zfs-fuse.service
index 296e1a0..b5a5eee 100644
--- a/zfs-fuse.service
+++ b/zfs-fuse.service
@@ -5,8 +5,8 @@ After=syslog.target
[Service]
Type=forking
PrivateTmp=False
-ExecStart=/usr/bin/zfs-fuse-helper start
-ExecStop=/usr/bin/zfs-fuse-helper stop
+ExecStart=/usr/sbin/zfs-fuse-helper start
+ExecStop=/usr/sbin/zfs-fuse-helper stop
[Install]
WantedBy=multi-user.target
diff --git a/zfs-fuse.spec b/zfs-fuse.spec
index 78ffa22..2ee90ab 100644
--- a/zfs-fuse.spec
+++ b/zfs-fuse.spec
@@ -1,7 +1,7 @@
%define _hardened_build 1
Name: zfs-fuse
Version: 0.7.2.2
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: ZFS ported to Linux FUSE
License: CDDL
URL: https://github.com/gordan-bobic/zfs-fuse
@@ -20,6 +20,13 @@ BuildRequires: systemd
Requires: fuse >= 2.7.4-1
# (2010 karsten(a)redhat.com) zfs-fuse doesn't have s390(x) implementations for atomic instructions
ExcludeArch: s390 s390x aarch64
+# For compatibility for packages expecting slightly other locations
+Provides: /sbin/zfs
+Provides: /sbin/zpool
+Provides: /sbin/zdb
+Provides: /sbin/ztest
+Provides: /sbin/zstreamdump
+Provides: /sbin/mount.zfs
%description
ZFS is an advanced modern general-purpose filesystem from Sun
@@ -52,16 +59,16 @@ scons debug=2 optim='%{optflags}'
%install
pushd src
-scons debug=1 install install_dir=%{buildroot}%{_bindir} man_dir=%{buildroot}%{_mandir}/man8/ cfg_dir=%{buildroot}/%{_sysconfdir}/%{name}
+scons debug=1 install install_dir=%{buildroot}%{_sbindir} man_dir=%{buildroot}%{_mandir}/man8/ cfg_dir=%{buildroot}/%{_sysconfdir}/%{name}
install -Dp -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/%{name}.service
install -Dp -m 0755 %{SOURCE2} %{buildroot}%{_sysconfdir}/cron.weekly/98-%{name}-scrub
install -Dp -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/sysconfig/%{name}
-install -Dp -m 0755 %{SOURCE4} %{buildroot}%{_bindir}/zfs-fuse-helper
+install -Dp -m 0755 %{SOURCE4} %{buildroot}%{_sbindir}/zfs-fuse-helper
%ifnarch aarch64 ppc64le
#set stack not executable, BZ 911150
for i in zdb zfs zfs-fuse zpool ztest; do
- /usr/bin/execstack -c %{buildroot}%{_bindir}/$i
+ /usr/bin/execstack -c %{buildroot}%{_sbindir}/$i
done
%endif
@@ -94,14 +101,14 @@ rm -rf /var/lock/zfs
%files
%doc BUGS CHANGES contrib HACKING LICENSE README
%doc README.NFS STATUS TESTING TODO
-%{_bindir}/zdb
-%{_bindir}/zfs
-%{_bindir}/zfs-fuse
-%{_bindir}/zfs-fuse-helper
-%{_bindir}/zpool
-%{_bindir}/zstreamdump
-%{_bindir}/ztest
-%{_bindir}/mount.zfs
+%{_sbindir}/zdb
+%{_sbindir}/zfs
+%{_sbindir}/zfs-fuse
+%{_sbindir}/zfs-fuse-helper
+%{_sbindir}/zpool
+%{_sbindir}/zstreamdump
+%{_sbindir}/ztest
+%{_sbindir}/mount.zfs
%{_unitdir}/%{name}.service
%{_sysconfdir}/cron.weekly/98-%{name}-scrub
%config(noreplace) %{_sysconfdir}/sysconfig/%{name}
@@ -113,6 +120,9 @@ rm -rf /var/lock/zfs
%{_mandir}/man8/zstreamdump.8.gz
%changelog
+* Sun Jul 16 2017 Neal Gompa <ngompa13(a)gmail.com> - 0.7.2.2-4
+- Move binaries to /usr/sbin for compatibility with other zfs implementations
+
* Tue Mar 14 2017 Jon Ciesla <limburgher(a)gmail.com> - 0.7.2.2-3
- Systemd cleanup
commit 8e11895cfceb72ddba8162d8f95a963a1251ba36
Author: Jon Ciesla <limburgher(a)gmail.com>
Date: Tue Mar 14 13:02:42 2017 -0500
systemd cleanup
diff --git a/zfs-fuse.spec b/zfs-fuse.spec
index 542863e..78ffa22 100644
--- a/zfs-fuse.spec
+++ b/zfs-fuse.spec
@@ -1,9 +1,8 @@
%define _hardened_build 1
Name: zfs-fuse
Version: 0.7.2.2
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: ZFS ported to Linux FUSE
-Group: System Environment/Base
License: CDDL
URL: https://github.com/gordan-bobic/zfs-fuse
Source00: http://github.com/gordan-bobic/zfs-fuse/archive/%{name}-%{version}.tar.gz
@@ -19,9 +18,6 @@ BuildRequires: /usr/bin/execstack
%endif
BuildRequires: systemd
Requires: fuse >= 2.7.4-1
-Requires(post): systemd
-Requires(preun): systemd
-Requires(postun): systemd
# (2010 karsten(a)redhat.com) zfs-fuse doesn't have s390(x) implementations for atomic instructions
ExcludeArch: s390 s390x aarch64
@@ -117,6 +113,9 @@ rm -rf /var/lock/zfs
%{_mandir}/man8/zstreamdump.8.gz
%changelog
+* Tue Mar 14 2017 Jon Ciesla <limburgher(a)gmail.com> - 0.7.2.2-3
+- Systemd cleanup
+
* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.7.2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
commit 8cd758d5faea4957d86f269c36dc3dd389883a56
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Sat Feb 11 18:23:57 2017 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
diff --git a/zfs-fuse.spec b/zfs-fuse.spec
index 0bcbbe0..542863e 100644
--- a/zfs-fuse.spec
+++ b/zfs-fuse.spec
@@ -1,7 +1,7 @@
%define _hardened_build 1
Name: zfs-fuse
Version: 0.7.2.2
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: ZFS ported to Linux FUSE
Group: System Environment/Base
License: CDDL
@@ -117,6 +117,9 @@ rm -rf /var/lock/zfs
%{_mandir}/man8/zstreamdump.8.gz
%changelog
+* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.7.2.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
* Mon Jan 23 2017 Jon Ciesla <limburgher(a)gmail.com> - 0.7.2.2-1
- Update to new upstream, 0.7.2.2, adds ARM build and pool v28.
commit 4fd61ea3d199f208e66bb6df7ad489399b045ba0
Author: Jon Ciesla <limburgher(a)gmail.com>
Date: Mon Jan 23 11:51:02 2017 -0600
Update to new upstream, add ARM support.
diff --git a/sources b/sources
index 8b46e79..7d8976e 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-4b060af9f3604f1b2c5e8984b8a623e4 zfs-fuse-0.7.0.tar.bz2
+SHA512 (zfs-fuse-0.7.2.2.tar.gz) = 84352bd02d5a23308c5c8fee632575649fd4da5705e81d3faace3059a84eabb5af0a7bffb6d8479f42569e88d0635888b15dca52f87c30d9aae913b81336db25
diff --git a/zfs-fuse-0.7.0-ppc64le.patch b/zfs-fuse-0.7.0-ppc64le.patch
deleted file mode 100644
index 67a2c33..0000000
--- a/zfs-fuse-0.7.0-ppc64le.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff -up zfs-fuse-0.7.0/src/lib/libsolcompat/include/sys/isa_defs.h.ppc64le zfs-fuse-0.7.0/src/lib/libsolcompat/include/sys/isa_defs.h
---- zfs-fuse-0.7.0/src/lib/libsolcompat/include/sys/isa_defs.h.ppc64le 2012-01-09 09:31:29.000000000 +0100
-+++ zfs-fuse-0.7.0/src/lib/libsolcompat/include/sys/isa_defs.h 2014-09-08 12:18:28.300576917 +0200
-@@ -475,9 +475,12 @@ extern "C" {
- /*
- * Next defines common features between 32 and 64 bit PowerPC
- */
-+/* ppc64le has __powerpc64__ but not __BIG_ENDIAN__ */
-+#if defined(__BIG_ENDIAN__)
- #ifndef _BIG_ENDIAN
- #define _BIG_ENDIAN
- #endif
-+#endif
- #define _STACK_GROWS_DOWNWARD
- #define _LONG_LONG_HTOL
- #define _BIT_FIELDS_HTOL
-@@ -513,7 +516,9 @@ extern "C" {
- /*
- * Define the appropriate "implementation choices" for PowerPC 64 bit
- */
-+#if !defined(_LP64)
- #define _LP64
-+#endif
- #if !defined(_I32LPx)
- #define _I32LPx
- #endif
diff --git a/zfs-fuse-0.7.0-stack.patch b/zfs-fuse-0.7.0-stack.patch
deleted file mode 100644
index f6ff6de..0000000
--- a/zfs-fuse-0.7.0-stack.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- zfs-fuse-0.7.0.orig/src/lib/libumem/Makefile.in 2012-01-09 03:31:29.000000000 -0500
-+++ zfs-fuse-0.7.0.orig/src/lib/libumem/Makefile.in 2013-02-15 08:54:29.520166292 -0500
-@@ -126,6 +126,7 @@
- CCASFLAGS = @CCASFLAGS@
- CCDEPMODE = @CCDEPMODE@
- CFLAGS = @CFLAGS@
-+AM_CFLAGS = -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4
- CPP = @CPP@
- CPPFLAGS = @CPPFLAGS@
- CXX = @CXX@
---- zfs-fuse-0.7.0.orig/src/SConstruct 2012-01-09 03:31:29.000000000 -0500
-+++ zfs-fuse-0.7.0.orig/src/SConstruct 2013-02-15 08:53:24.286560774 -0500
-@@ -32,7 +32,7 @@
- env.CacheDir('/tmp/.zfs-fuse.scons')
- env['CC'] = 'gcc'
- env['LINKFLAGS'] = Split('-pipe -Wall')
--env['CCFLAGS'] = Split('-pipe -Wall -std=c99 -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses -Wno-uninitialized -fno-strict-aliasing -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DTEXT_DOMAIN=\\"zfs-fuse\\" ')
-+env['CCFLAGS'] = Split('-pipe -Wall -std=c99 -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses -Wno-uninitialized -fno-strict-aliasing -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DTEXT_DOMAIN=\\"zfs-fuse\\" -O2 -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 ')
-
- if osname == "Linux":
- env.Append(CPPFLAGS = " -DLINUX_AIO")
diff --git a/zfs-fuse-0.7.0-umem.patch b/zfs-fuse-0.7.0-umem.patch
deleted file mode 100644
index 0fc9d83..0000000
--- a/zfs-fuse-0.7.0-umem.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/lib/libumem/malloc.c~ 2012-01-09 02:31:29.000000000 -0600
-+++ src/lib/libumem/malloc.c 2012-02-27 14:29:47.694476734 -0600
-@@ -453,7 +453,7 @@
- }
- }
-
--void (*__malloc_initialize_hook)(void) = umem_malloc_init_hook;
-+//void (*__malloc_initialize_hook)(void) = umem_malloc_init_hook;
-
- #else
- void __attribute__((constructor))
diff --git a/zfs-fuse-0.7.2.2-stack.patch b/zfs-fuse-0.7.2.2-stack.patch
new file mode 100644
index 0000000..8664d27
--- /dev/null
+++ b/zfs-fuse-0.7.2.2-stack.patch
@@ -0,0 +1,11 @@
+--- src/SConstruct~ 2015-11-24 10:32:31.000000000 -0600
++++ src/SConstruct 2017-01-23 10:53:53.228548687 -0600
+@@ -32,7 +32,7 @@
+ env['CC'] = os.environ.setdefault("CC","gcc")
+ env['CCFLAGS'] = os.environ.setdefault("CFLAGS","")
+ env['LINKFLAGS'] = Split('-pipe -Wall')
+-env.Append(CCFLAGS = Split('-pipe -Wall -std=c99 -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses -Wno-uninitialized -Wcast-align -fno-strict-aliasing -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DTEXT_DOMAIN=\\"zfs-fuse\\" -O2 -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector -fstrict-volatile-bitfields --param=ssp-buffer-size=4 '))
++env.Append(CCFLAGS = Split('-pipe -Wall -std=c99 -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses -Wno-uninitialized -Wcast-align -fno-strict-aliasing -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DTEXT_DOMAIN=\\"zfs-fuse\\" '))
+
+ if osname == "Linux":
+ env.Append(CPPFLAGS = " -DLINUX_AIO")
diff --git a/zfs-fuse-printf-format.patch b/zfs-fuse-printf-format.patch
deleted file mode 100644
index ed5dba8..0000000
--- a/zfs-fuse-printf-format.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/cmd/zdb/zdb.c~ 2012-01-09 02:31:29.000000000 -0600
-+++ src/cmd/zdb/zdb.c 2014-02-10 10:42:59.775869701 -0600
-@@ -1483,7 +1483,7 @@
- {
- time_t timestamp = ub->ub_timestamp;
-
-- (void) printf(header ? header : "");
-+ (void) printf(header ? "%s", header : "%s", "");
- (void) printf("\tmagic = %016llx\n", (u_longlong_t)ub->ub_magic);
- (void) printf("\tversion = %llu\n", (u_longlong_t)ub->ub_version);
- (void) printf("\ttxg = %llu\n", (u_longlong_t)ub->ub_txg);
-@@ -1495,7 +1495,7 @@
- sprintf_blkptr(blkbuf, &ub->ub_rootbp);
- (void) printf("\trootbp = %s\n", blkbuf);
- }
-- (void) printf(footer ? footer : "");
-+ (void) printf(footer ? "%s", footer : "%s", "");
- }
-
- static void
diff --git a/zfs-fuse.spec b/zfs-fuse.spec
index 3663966..0bcbbe0 100644
--- a/zfs-fuse.spec
+++ b/zfs-fuse.spec
@@ -1,21 +1,19 @@
%define _hardened_build 1
Name: zfs-fuse
-Version: 0.7.0
-Release: 23%{?dist}
+Version: 0.7.2.2
+Release: 1%{?dist}
Summary: ZFS ported to Linux FUSE
Group: System Environment/Base
License: CDDL
-URL: http://zfs-fuse.net/
-Source00: http://zfs-fuse.net/releases/0.7.0/%{name}-%{version}.tar.bz2
+URL: https://github.com/gordan-bobic/zfs-fuse
+Source00: http://github.com/gordan-bobic/zfs-fuse/archive/%{name}-%{version}.tar.gz
Source01: zfs-fuse.service
Source02: zfs-fuse.scrub
Source03: zfs-fuse.sysconfig
Source04: zfs-fuse-helper
-Patch0: zfs-fuse-0.7.0-umem.patch
-Patch1: zfs-fuse-0.7.0-stack.patch
-Patch2: zfs-fuse-printf-format.patch
-Patch3: zfs-fuse-0.7.0-ppc64le.patch
-BuildRequires: fuse-devel libaio-devel perl-generators scons zlib-devel openssl-devel libattr-devel
+Patch0: zfs-fuse-0.7.2.2-stack.patch
+BuildRequires: fuse-devel libaio-devel perl-generators scons
+BuildRequires: zlib-devel openssl-devel libattr-devel lzo-devel bzip2-devel xz-devel
%ifnarch aarch64 ppc64le
BuildRequires: /usr/bin/execstack
%endif
@@ -25,7 +23,7 @@ Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
# (2010 karsten(a)redhat.com) zfs-fuse doesn't have s390(x) implementations for atomic instructions
-ExcludeArch: s390 s390x %{arm} aarch64
+ExcludeArch: s390 s390x aarch64
%description
ZFS is an advanced modern general-purpose filesystem from Sun
@@ -38,9 +36,6 @@ operating system.
%setup -q
%patch0 -p0
-%patch1 -p1
-%patch2 -p0
-%patch3 -p1 -b .ppc64le
f=LICENSE
mv $f $f.iso88591
@@ -57,7 +52,7 @@ cp -f /usr/lib/rpm/config.{guess,sub} src/lib/libumem/
export CCFLAGS="%{optflags}"
pushd src
-scons debug=1 optim='%{optflags}'
+scons debug=2 optim='%{optflags}'
%install
pushd src
@@ -110,6 +105,7 @@ rm -rf /var/lock/zfs
%{_bindir}/zpool
%{_bindir}/zstreamdump
%{_bindir}/ztest
+%{_bindir}/mount.zfs
%{_unitdir}/%{name}.service
%{_sysconfdir}/cron.weekly/98-%{name}-scrub
%config(noreplace) %{_sysconfdir}/sysconfig/%{name}
@@ -121,6 +117,9 @@ rm -rf /var/lock/zfs
%{_mandir}/man8/zstreamdump.8.gz
%changelog
+* Mon Jan 23 2017 Jon Ciesla <limburgher(a)gmail.com> - 0.7.2.2-1
+- Update to new upstream, 0.7.2.2, adds ARM build and pool v28.
+
* Fri Feb 05 2016 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.7.0-23
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
6 years, 9 months
Architecture specific change in rpms/aunit.git
by githook-noreply@fedoraproject.org
The package rpms/aunit.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/aunit.git/commit/?id=fea7f4be729b....
Change:
+ExclusiveArch: %GPRbuild_arches
Thanks.
Full change:
============
commit fea7f4be729bc18c3e5a40bd5eecc7dbc43bff3a
Author: Pavel Zhukov <pzhukov(a)redhat.com>
Date: Sun Jul 16 12:11:15 2017 +0200
Limit to GPRbuild_arches
diff --git a/aunit.spec b/aunit.spec
index 08d79a2..976f9b9 100644
--- a/aunit.spec
+++ b/aunit.spec
@@ -2,7 +2,7 @@
Name: aunit
Version: 2017
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Unit test framework for Ada
Group: Development/Languages
License: GPLv2+
@@ -19,7 +19,7 @@ BuildRequires: chrpath gprbuild gcc-gnat
Requires: fedora-gnat-project-common >= 2
# gprbuild only available on these:
-ExclusiveArch: %GNAT_arches
+ExclusiveArch: %GPRbuild_arches
%description
%{summary}
@@ -84,10 +84,13 @@ rm -rf %{buildroot}
%changelog
+* Sat Jul 16 2017 Pavel Zhukov <landgraf(a)fedoraproject.org> - 2017-2
+- Limit to grpbuild arches
+
* Fri Jul 7 2017 Pavel Zhukov <pzhukov(a)redhat.com> - 2017-1
- New release v2017
-* Mon Feb 13 2017 Pavel Zhukov <pavel(a)desktop-f25.zhukoff.net> - 2015-5
+* Mon Feb 13 2017 Pavel Zhukov <landgraf(a)fedoraproject.org> - 2015-5
- Remove unused link
* Fri Feb 10 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 2015-4
6 years, 9 months
[Report] Packages Restricting Arches
by root
Package that edited their arches constraints (2)
=============================================
- aws
was ExclusiveArch: %GNAT_arches
is ExclusiveArch: %GPRbuild_arches
- templates_parser
was ExclusiveArch: %GNAT_arches
is ExclusiveArch: %GPRbuild_arches
List of packages currently excluding arches (1877)
===========================================
- 0ad
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- GtkAda
ExclusiveArch: %{GNAT_arches}
- GtkAda3
ExclusiveArch: %{GNAT_arches}
- LuxRender
ExclusiveArch: x86_64
- OpenTK
ExclusiveArch: %mono_arches
- PragmARC
ExclusiveArch: %{GNAT_arches}
- R-DynDoc
ExclusiveArch: armv7, ppc, go_arch
- RdRand
ExclusiveArch: %{ix86} x86_64
- YafaRay
ExclusiveArch: %{ix86} x86_64
- aboot
ExclusiveArch: alpha
- acpid
ExclusiveArch: ia64 x86_64 %{ix86} %{arm} aarch64
- ahven
ExclusiveArch: %{GNAT_arches}
- alleyoop
ExclusiveArch: %{ix86} x86_64 ppc ppc64 ppc64le s390x %{arm} aarch64
- american-fuzzy-lop
ExclusiveArch: %{ix86} x86_64
- anet
ExclusiveArch: %{GNAT_arches}
- apmd
ExclusiveArch: %{ix86}
- apmud
ExclusiveArch: ppc
- arm-boot-config
ExclusiveArch: %{arm}
- arm-trusted-firmware
ExclusiveArch: aarch64
- atomic
ExclusiveArch: i386 i486 i586 i686 pentium3 pentium4 athlon geode x86_64 armv3l armv4b armv4l armv4tl armv5tel armv5tejl armv6l armv6hl armv7l armv7hl armv7hnl aarch64 ppc64le s390x mips mipsel mipsr6 mipsr6el mips64 mips64el mips64r6 mips64r6el
ExclusiveArch: x86_64 ppc64le
- aunit
ExclusiveArch: %GNAT_arches
- avgtime
ExclusiveArch: %{ldc_arches}
- aws
ExclusiveArch: %GPRbuild_arches
- banshee
ExclusiveArch: %{mono_arches}
- banshee-community-extensions
ExclusiveArch: %ix86 x86_64 ppc ppc64 ia64 %{arm} sparcv9 alpha s390x
- bareftp
ExclusiveArch: %{mono_arches}
- bcc
ExclusiveArch: x86_64
- bcm283x-firmware
ExclusiveArch: %{arm} aarch64
- beignet
ExclusiveArch: x86_64 %{ix86}
- berusky2
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{mips}
- biosdevname
ExclusiveArch: %{ix86} x86_64 ia64
- bless
ExclusiveArch: %mono_arches
- boo
ExclusiveArch: %{mono_arches}
- buildah
ExclusiveArch: x86_64 aarch64 ppc64le
- bwa
ExclusiveArch: x86_64
- cadvisor
ExclusiveArch: %{ix86} x86_64 aarch64 ppc64le
- calamares
ExclusiveArch: %{ix86} x86_64
- cargo
ExclusiveArch: %{rust_arches}
- carto
ExclusiveArch: %{nodejs_arches} noarch
- ccdciel
ExclusiveArch: %{fpc_arches}
- cdcollect
ExclusiveArch: %{mono_arches}
- ceph
ExclusiveArch: x86_64 aarch64 ppc64 ppc64le
ExclusiveArch: x86_64 aarch64
- chromium
ExclusiveArch: x86_64 i686
- chromium-native_client
ExclusiveArch: x86_64
- cjdns
ExclusiveArch: %{nodejs_arches}
- cmospwd
ExclusiveArch: %{ix86} x86_64
- coffee-script
ExclusiveArch: %{nodejs_arches} noarch
- colorful
ExclusiveArch: %{fpc_arches}
- compat-gcc-296
ExclusiveArch: %{ix86} ia64 ppc
- consul
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- copr-dist-git
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le powerpc64le s390x %{mips}
- corosync
ExclusiveArch: i686 x86_64
- cpuid
ExclusiveArch: %{ix86} x86_64
- cqrlog
ExclusiveArch: %{fpc_arches}
- crash
ExclusiveArch: %{ix86} ia64 x86_64 ppc ppc64 s390 s390x %{arm} aarch64 ppc64le
- criu
ExclusiveArch: x86_64 %{arm} ppc64le aarch64
ExclusiveArch: x86_64 ppc64le
- cryptlib
ExclusiveArch: x86_64 %{ix86} aarch64
- cryptobone
ExclusiveArch: x86_64 %{ix86}
- daq
ExclusiveArch: x86_64 aarch64
- darktable
ExclusiveArch: x86_64 aarch64
- dbus-sharp
ExclusiveArch: %mono_arches
- dbus-sharp-glib
ExclusiveArch: %mono_arches
- dbxtool
ExclusiveArch: i386 x86_64 aarch64
- derelict
ExclusiveArch: %{ldc_arches}
- direnv
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- dlm
ExclusiveArch: i686 x86_64
- dmidecode
ExclusiveArch: %{ix86} x86_64 ia64 aarch64
- dmtcp
ExclusiveArch: %ix86 x86_64 aarch64
- docco
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- docker
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}
- docker-anaconda-addon
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}
- docker-distribution
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- docker-latest
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}
- dolphin-emu
ExclusiveArch: x86_64 armv7l aarch64
- dpdk
ExclusiveArch: x86_64 i686 aarch64 ppc64le
- dssi-vst
ExclusiveArch: %{ix86} x86_64
- dustmite
ExclusiveArch: %{ldc_arches}
- dyninst
ExclusiveArch: %{ix86} x86_64 ppc ppc64
- e3
ExclusiveArch: %{ix86} x86_64
- edac-utils
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{power64}
- edb
ExclusiveArch: %{ix86} x86_64
- edk2
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- efibootmgr
ExclusiveArch: %{ix86} x86_64 aarch64 arm
- efivar
ExclusiveArch: %{ix86} x86_64 aarch64
- elasticdump
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- elk
ExclusiveArch: x86_64 %{ix86}
ExclusiveArch: x86_64 %{ix86} aarch64 %{arm} %{power64}
- embree
ExclusiveArch: x86_64
- envytools
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- etcd
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- exciting
ExclusiveArch: x86_64 %{ix86}
ExclusiveArch: x86_64 %{ix86} aarch64 %{arm} %{power64}
- expresso
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- extlinux-bootloader
ExclusiveArch: %{arm} aarch64
- fcitx-libpinyin
ExclusiveArch: %{qt5_qtwebengine_arches}
- fedora-dockerfiles
ExclusiveArch: %{go_arches}
- fedora-gnat-project-common
ExclusiveArch: noarch %{GNAT_arches}
- fence-virt
ExclusiveArch: i686 x86_64
- fes
ExclusiveArch: x86_64
- ffcall
ExclusiveArch: %{ffcall_arches}
- firmware-addon-dell
ExclusiveArch: x86_64 ia64 %{ix86}
- flannel
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- florist
ExclusiveArch: %GPRbuild_arches
- fpc
ExclusiveArch: %{arm} %{ix86} x86_64 ppc ppc64
- frysk
ExclusiveArch: %{ix86} x86_64 ppc64
- fst
ExclusiveArch: i686
- fwupdate
ExclusiveArch: x86_64 %{ix86} aarch64
- ga
ExclusiveArch: %{ix86} x86_64
- gbrainy
ExclusiveArch: %mono_arches
- gdata-sharp
ExclusiveArch: %mono_arches
- gela-asis
ExclusiveArch: %{GNAT_arches}
- ghdl
ExclusiveArch: %{GNAT_arches}
- gio-sharp
ExclusiveArch: %mono_arches
- gir-to-d
ExclusiveArch: %{ldc_arches}
- git-octopus
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- giver
ExclusiveArch: %{mono_arches}
- gkeyfile-sharp
ExclusiveArch: %mono_arches
- gl3n
ExclusiveArch: %{ldc_arches}
- glibc32
ExclusiveArch: x86_64 ppc64 s390x
- glide
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- gmqcc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- gnatcoll
ExclusiveArch: %GPRbuild_arches
- gnome-boxes
ExclusiveArch: x86_64
- gnome-desktop-sharp
ExclusiveArch: %mono_arches
- gnome-do
ExclusiveArch: %mono_arches
- gnome-guitar
ExclusiveArch: %{mono_arches}
- gnome-keyring-sharp
ExclusiveArch: %mono_arches
- gnome-rdp
ExclusiveArch: %{mono_arches}
- gnome-sharp
ExclusiveArch: %mono_arches
- gnome-subtitles
ExclusiveArch: %mono_arches
- gnu-efi
ExclusiveArch: x86_64 aarch64 %{arm} %{ix86}
- gnu-smalltalk
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
- go-bindata
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- go-compilers
ExclusiveArch: %{go_arches}
- go-i18n
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- godep
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- gofed
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}
- golang
ExclusiveArch: %{golang_arches}
- golang-bitbucket-kardianos-osext
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-bitbucket-ww-goautoneg
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-10gen-openssl
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- golang-github-3rf-mongo-lint
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-AdRoll-goamz
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-AudriusButkevicius-cli
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-AudriusButkevicius-go-nat-pmp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-AudriusButkevicius-pfilter
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-Azure-azure-sdk-for-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-BurntSushi-toml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-BurntSushi-toml-test
ExclusiveArch: %{go_arches}
- golang-github-DATA-DOG-go-sqlmock
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-DataDog-datadog-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-MakeNowJust-heredoc
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-Masterminds-semver
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-Masterminds-vcs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-PuerkitoBio-purell
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-PuerkitoBio-urlesc
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-RangelReale-osin
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-RangelReale-osincli
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-SeanDolphin-bqschema
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-Shopify-sarama
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-Shopify-toxiproxy
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-Sirupsen-logrus
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-abbot-go-http-auth
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-agl-ed25519
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-akrennmair-gopcap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-appc-spec
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-armon-circbuf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-armon-go-metrics
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-armon-go-radix
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-armon-gomdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-asaskevich-govalidator
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-auth0-go-jwt-middleware
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-aws-aws-sdk-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-beorn7-perks
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bep-gitmap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bep-inflect
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bgentry-speakeasy
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bkaradzic-go-lz4
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-blang-semver
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bmizerany-assert
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-bmizerany-pat
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-bmizerany-perks
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-boltdb-bolt
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bradfitz-http2
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-bugsnag-bugsnag-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-bugsnag-panicwrap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-calmh-du
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-calmh-luhn
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-calmh-xdr
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-ccding-go-stun
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cenkalti-backoff
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-chaseadamsio-goorgeous
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cheggaaa-pb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-chmduquesne-rollinghash
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-circonus-labs-circonus-gometrics
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-circonus-labs-circonusllhist
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cloudfoundry-incubator-candiedyaml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cockroachdb-cmux
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-codegangsta-cli
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-codegangsta-negroni
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-collectd-go-collectd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-coreos-gexpect
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-coreos-go-etcd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-coreos-go-iptables
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-coreos-go-log
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-coreos-go-oidc
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-coreos-go-semver
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-coreos-go-systemd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-coreos-pkg
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cpuguy83-go-md2man
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-cznic-b
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-fileutil
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-internal
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-lexer
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-lldb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-mathutil
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-sortutil
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-strutil
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cznic-zappy
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-d2g-dhcp4
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-d2g-dhcp4client
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-d4l3k-messagediff
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-davecgh-go-spew
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-daviddengcn-go-colortext
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-dchest-cssmin
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-denverdino-aliyungo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-dgnorton-goback
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-dgrijalva-jwt-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-digitalocean-godo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-go-connections
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-go-units
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-libcontainer
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-libkv
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-libtrust
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docker-spdystream
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docopt-docopt-go
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-dustin-go-humanize
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-dvsekhvalnov-jose2go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-eapache-go-resiliency
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-eapache-queue
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-edsrzf-mmap-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-eknkc-amber
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-elazarl-go-bindata-assetfs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-emicklei-go-restful
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-endophage-gotuf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-evanphx-json-patch
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-fatih-pool
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-fortytw2-leaktest
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-fsnotify-fsnotify
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-fsouza-go-dockerclient
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-garyburd-redigo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gengo-grpc-gateway
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-getsentry-raven-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-ghodss-yaml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-glacjay-goini
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-asn1-ber-asn1-ber
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-errors-errors
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-fsnotify-fsnotify
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-go-ini-ini
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-go-ldap-ldap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-macaron-inject
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-go-mgo-mgo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-sql-driver-mysql
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-go-tomb-tomb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gobwas-glob
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-godbus-dbus
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-golang-appengine
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-golang-glog
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-golang-groupcache
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-golang-sys
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-golang-time
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-blas
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-floats
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-graph
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-internal
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-lapack
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gonum-matrix
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-google-btree
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-google-go-github
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-google-go-querystring
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-google-gofuzz
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-goraft-raft
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-context
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-handlers
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-mux
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-securecookie
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-sessions
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-websocket
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gosexy-gettext
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-grpc-ecosystem-go-grpc-prometheus
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-grpc-ecosystem-grpc-gateway
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-grpc-grpc-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-consul-migrate
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-errwrap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-go-checkpoint
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-cleanhttp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-immutable-radix
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-memdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-msgpack
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-multierror
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-go-retryablehttp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-go-sockaddr
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-go-syslog
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-go-uuid
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-golang-lru
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-hcl
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-hil
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-logutils
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-mdns
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-memberlist
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-net-rpc-msgpackrpc
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-raft
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-raft-boltdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-raft-mdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-scada-client
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-serf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hashicorp-yamux
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-hawkular-hawkular-client-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-howeyc-gopass
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-imdario-mergo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-inconshreveable-mousetrap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-inconshreveable-muxado
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-influxdb-hyperleveldb-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-influxdb-influxdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-influxdb-rocksdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jackpal-gateway
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-jacobsa-oglematchers
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jessevdk-go-flags
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jfrazelle-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jinzhu-gorm
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jmespath-go-jmespath
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-jmhodges-levigo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-jonboulle-clockwork
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-jtolds-gls
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-juju-ratelimit
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-julienschmidt-httprouter
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-karlseguin-ccache
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-karlseguin-expect
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-kballard-go-shellquote
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-kdar-factorlog
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-kimor79-gollectd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-klauspost-cpuid
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-klauspost-crc32
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-klauspost-reedsolomon
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-knieriem-markdown
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-kr-fs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-kr-pretty
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-kr-pty
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-kr-text
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-kyokomi-emoji
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-lib-pq
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-lpabon-godbc
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-lsegal-gucumber
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-magiconair-properties
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mattn-go-isatty
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mattn-go-runewidth
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mattn-go-sqlite3
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-matttproud-golang_protobuf_extensions
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mesos-mesos-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-miekg-dns
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-miekg-mmark
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-miekg-pkcs11
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-milochristiansen-axis2
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-milochristiansen-lua
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-minio-sha256-simd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mistifyio-go-zfs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mitchellh-cli
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mitchellh-copystructure
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mitchellh-go-homedir
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mitchellh-go-wordwrap
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mitchellh-goamz
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mitchellh-mapstructure
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mitchellh-reflectwalk
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mreiferson-go-httpclient
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-mvo5-goconfigparser
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mvo5-uboot-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-mxk-go-flowrate
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-ncw-swift
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-noahdesu-go-ceph
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-ojii-gettext.go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-olekukonko-tablewriter
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-olekukonko-ts
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-olivere-elastic
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-onsi-ginkgo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-onsi-gomega
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-opencontainers-runtime-spec
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-opencontainers-specs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-openshift-go-json-rest
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-openshift-go-systemd
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-openshift-openshift-sdn
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-oschwald-geoip2-golang
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-oschwald-maxminddb-golang
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-pelletier-go-buffruneio
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-pelletier-go-toml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-petar-GoLLRB
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-peterh-liner
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-petermattis-goid
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-pkg-errors
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-pkg-profile
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-pkg-sftp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-pmezard-go-difflib
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-prometheus-client_golang
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-prometheus-client_model
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-prometheus-common
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-prometheus-procfs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-prometheus-prometheus
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-racker-perigee
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-rackspace-gophercloud
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-rakyll-globalconf
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-rakyll-pb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-rakyll-statik
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-rcrowley-go-metrics
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-remyoudompheng-bigfft
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-russross-blackfriday
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-ryanuber-columnize
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-samalba-dockerclient
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-samuel-go-zookeeper
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-sasha-s-go-deadlock
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-seccomp-libseccomp-golang
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-shiena-ansicolor
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-shurcooL-sanitized_anchor_name
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-skarademir-naturalsort
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-skratchdot-open-golang
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-skynetservices-skydns
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-smartystreets-assertions
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-smartystreets-go-aws-auth
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-smartystreets-goconvey
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spacejam-loghisto
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-spacemonkeygo-flagfile
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-spacemonkeygo-spacelog
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-spf13-afero
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-cast
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-cobra
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-spf13-fsync
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-jWalterWeatherman
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-nitro
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-spf13-pflag
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-viper
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-stathat-go
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-stevvooe-resumable
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-stretchr-objx
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-stretchr-testify
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-syndtr-gocapability
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-syndtr-goleveldb
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-syndtr-gosnappy
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-tent-http-link-go
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-thejerf-suture
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-tonnerre-golang-pretty
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-ugorji-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-urfave-cli
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-vaughan0-go-ini
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-vbatts-tar-split
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-vishvananda-netlink
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} aarch64 x86_64 %{arm}}
- golang-github-vishvananda-netns
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-vitrun-qart
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-vjeantet-asn1-ber
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-vmware-govcloudair
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-wsxiaoys-terminal
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-xeipuuv-gojsonpointer
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-xeipuuv-gojsonreference
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-xeipuuv-gojsonschema
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-xiang90-probing
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-xtaci-kcp-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-xtaci-smux
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-yosssi-ace
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-yosssi-gohtml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-yvasiyarov-go-metrics
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-yvasiyarov-gorelic
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-yvasiyarov-newrelic_platform_go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-zillode-notify
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-google-golangorg-cloud
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-gcfg
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-googlecode-go-crypto
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-go-decimal-inf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-go-exp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-googlecode-goauth2
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-gogoprotobuf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-gomock
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-googlecode-google-api-client
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-goprotobuf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-log4go
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-googlecode-net
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-sqlite
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-googlecode-text
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-tools
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-googlecode-uuid
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-gopkg-check
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-gopkg-go-check-check
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-gopkg-go-macaroon-macaroon
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-gopkg-retry-v1
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-gopkg-yaml
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golint
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- gomtree
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- gotags
ExclusiveArch: %{go_arches}
- gotun
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
ExclusiveArch: x86_64
- gprbuild
ExclusiveArch: %{GPRbuild_arches} %{bootstrap_arch}
- gprolog
ExclusiveArch: x86_64 %{ix86} ppc alpha
- gsf-sharp
ExclusiveArch: %mono_arches
- gtk-sharp-beans
ExclusiveArch: %mono_arches
- gtk-sharp2
ExclusiveArch: %mono_arches
- gtk-sharp3
ExclusiveArch: %{mono_arches}
- gtkd
ExclusiveArch: %{ldc_arches}
- gudev-sharp
ExclusiveArch: %mono_arches
- hedgewars
ExclusiveArch: %{fpc_arches}
- heketi
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- hub
ExclusiveArch: %{go_arches}
- hyena
ExclusiveArch: %{mono_arches}
- hyperscan
ExclusiveArch: x86_64
- hyperv-daemons
ExclusiveArch: i686 x86_64
- icaro
ExclusiveArch: %{ix86} %{arm} x86_64 noarch
- ikarus
ExclusiveArch: %{ix86}
- imvirt
ExclusiveArch: %{ix86} x86_64 ia64
- indistarter
ExclusiveArch: %{fpc_arches}
- infinipath-psm
ExclusiveArch: x86_64
- intel-cmt-cat
ExclusiveArch: x86_64 i686 i586
ExclusiveArch: x86_64 i686 i586
- ioport
ExclusiveArch: %{ix86} x86_64
- ipw2100-firmware
ExclusiveArch: noarch i386 x86_64
- ipw2200-firmware
ExclusiveArch: noarch i386 x86_64
- ispc
ExclusiveArch: %{arm} %{ix86} x86_64
- iwyu
ExclusiveArch: %{ix86} x86_64
- ixpdimm_sw
ExclusiveArch: x86_64
- jake
ExclusiveArch: %{nodejs_arches} noarch
- jasmine-node
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- java-1.8.0-openjdk-aarch32
ExclusiveArch: %{arm}
- julia
ExclusiveArch: %{ix86} x86_64
- keepass
ExclusiveArch: %{mono_arches}
- kernel
ExclusiveArch: %{all_x86} x86_64 ppc64 ppc64p7 s390x %{arm} aarch64 ppc64le
- knot-resolver
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- kompose
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- kosmtik
ExclusiveArch: %{nodejs_arches} noarch
- kubernetes
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- latrace
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{power64}
- lazarus
ExclusiveArch: %{fpc_arches}
- ldc
ExclusiveArch: %{ldc_arches}
- libbsr
ExclusiveArch: %{power64}
- libclc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{power64} s390x
- libcxl
ExclusiveArch: %{power64}
- libflatarray
ExclusiveArch: %{ix86} x86_64
- libhfi1
ExclusiveArch: x86_64
- libica
ExclusiveArch: s390 s390x
- libinvm-cim
ExclusiveArch: x86_64
- libinvm-cli
ExclusiveArch: x86_64
- libinvm-i18n
ExclusiveArch: x86_64
- libipathverbs
ExclusiveArch: x86_64
- libipt
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
- libjingle
ExclusiveArch: %{ix86} x86_64 %{arm}
- libmfx
ExclusiveArch: %{ix86} x86_64
- libpsm2
ExclusiveArch: x86_64
- librtas
ExclusiveArch: ppc %{power64}
- libseccomp
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 mipsel mips64el ppc64 ppc64le s390 s390x
- libservicelog
ExclusiveArch: ppc %{power64}
- libsmbios
ExclusiveArch: x86_64 ia64 %{ix86}
- libunwind
ExclusiveArch: %{arm} aarch64 hppa ia64 mips ppc %{power64} %{ix86} x86_64
- libvmi
ExclusiveArch: x86_64
- libvpd
ExclusiveArch: ppc %{power64}
- libxsmm
ExclusiveArch: x86_64
- libzfcphbaapi
ExclusiveArch: s390 s390x
- lldb
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- lodash
ExclusiveArch: %{nodejs_arches} noarch
- log4net
ExclusiveArch: %mono_arches
- lrmi
ExclusiveArch: %{ix86}
- lsvpd
ExclusiveArch: ppc %{power64}
- luajit
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- mactel-boot
ExclusiveArch: x86_64
- manifest-tool
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- marked
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- matreshka
ExclusiveArch: %GPRbuild_arches
- maven-eclipse-plugin
ExclusiveArch: %{ix86} x86_64
- maxima
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc sparcv9
ExclusiveArch: %{ix86} x86_64 ppc sparcv9
- mcelog
ExclusiveArch: i686 x86_64
- memkind
ExclusiveArch: x86_64
- memtest86+
ExclusiveArch: %{ix86} x86_64
- mesos
ExclusiveArch: x86_64
- microcode_ctl
ExclusiveArch: %{ix86} x86_64
- micropython
ExclusiveArch: %{arm} %{ix86} x86_64
- mine_detector
ExclusiveArch: %{GNAT_arches}
- minetest
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- mingw-wine-gecko
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- mkbootdisk
ExclusiveArch: %{ix86} sparc sparc64 x86_64
- mnemosyne
ExclusiveArch: noarch %{qt5_qtwebengine_arches}
- mocha
ExclusiveArch: %{nodejs_arches} noarch
- mod_mono
ExclusiveArch: %mono_arches
- module-build-service
ExclusiveArch: %{ix86} x86_64
- mokutil
ExclusiveArch: %{ix86} x86_64 aarch64
- mongo-tools
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- mono
ExclusiveArch: %mono_arches
- mono-addins
ExclusiveArch: %mono_arches
- mono-basic
ExclusiveArch: %{mono_arches}
- mono-bouncycastle
ExclusiveArch: %mono_arches
- mono-cecil
ExclusiveArch: %mono_arches
- mono-cecil-flowanalysis
ExclusiveArch: %mono_arches
- mono-debugger
ExclusiveArch: %ix86 x86_64
- mono-reflection
ExclusiveArch: %mono_arches
- mono-tools
ExclusiveArch: %mono_arches
- mono-zeroconf
ExclusiveArch: %mono_arches
- monobristol
ExclusiveArch: %{mono_arches}
- monodevelop
ExclusiveArch: %mono_arches
- monodevelop-debugger-gdb
ExclusiveArch: %{mono_arches}
- monosim
ExclusiveArch: %mono_arches
- mrrescue
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64 ppc64
- msr-tools
ExclusiveArch: %{ix86} x86_64
- mustache-d
ExclusiveArch: %{ldc_arches}
- mysql-connector-net
ExclusiveArch: %{mono_arches}
- nacl-arm-binutils
ExclusiveArch: x86_64
- nacl-arm-gcc
ExclusiveArch: x86_64
- nacl-arm-newlib
ExclusiveArch: x86_64
- nacl-binutils
ExclusiveArch: x86_64
- nacl-gcc
ExclusiveArch: x86_64
- nacl-newlib
ExclusiveArch: x86_64
- nant
ExclusiveArch: %mono_arches
- nbc
ExclusiveArch: %{fpc_arches}
- ndesk-dbus
ExclusiveArch: %{mono_arches}
- ndesk-dbus-glib
ExclusiveArch: %{mono_arches}
- newtonsoft-json
ExclusiveArch: %{mono_arches}
- nini
ExclusiveArch: %{mono_arches}
- node-gyp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs
ExclusiveArch: %{nodejs_arches}
- nodejs-abbrev
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-accepts
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-acorn
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-after
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-agent-base
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-agentkeepalive
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ain2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-alter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-cyan
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-font
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-green
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-magenta
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-regex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-styles
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-wrap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-yellow
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansicolors
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansidiff
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansistyles
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-any-promise
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ap
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-append-transform
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-aproba
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-archiver
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-archiver-utils
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-archy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-are-we-there-yet
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-argparse
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-argsparser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-arr-diff
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-arr-exclude
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-arr-flatten
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-arr-union
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-differ
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-array-filter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-find-index
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-flatten
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-foreach
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-index
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-reduce
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-union
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-array-uniq
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-array-unique
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-arrify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-as-number
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-asap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ascii-tree
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ascli
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-asn1
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-assert-plus
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-assertion-error
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-assume
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ast-traverse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ast-types
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-astral
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-astral-angular-annotate
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-astral-pass
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async-array-reduce
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-async-cache
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async-each
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async-queue
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async-some
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-aws-sign
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-aws-sign2
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-babel-runtime
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-backbone
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-balanced-match
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-base64-js
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-base64-url
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-basic-auth
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-basic-auth-connect
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-basic-auth-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-batch
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-bcrypt
ExclusiveArch: %{nodejs_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- nodejs-beeper
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-benchmark
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-better-assert
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bignumber-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bindings
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-bl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-block-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bluebird
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-body-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-boolbase
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-boom
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-brace-expansion
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-breakable
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-browser-request
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bson
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-buf-compare
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-buffer-crc32
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-buffer-equal
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-buffer-shims
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-buffer-writer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-buffertools
ExclusiveArch: %{nodejs_arches}
- nodejs-bufferutil
ExclusiveArch: %{nodejs_arches}
- nodejs-builtin-modules
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-builtins
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bundle-dependencies
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-bunker
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-bunyan
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-burrito
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-bytes
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-caching-transform
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-call-signature
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-caller-callsite
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-caller-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-callsite
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-callsites
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-camel-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-camelcase
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-camelcase-keys
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-caniuse-db
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-capture-stack-trace
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-carrier
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-caseless
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chai
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chai-connect-middleware
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chai-passport-strategy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chainsaw
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chalk
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-change-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-char-spinner
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-character-parser
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-charm
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-child-process-close
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chmodr
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chownr
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chrono
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cjson
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-clap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-clean-css
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-clean-yaml-object
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cli
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cli-color
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cli-spinner
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cliui
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-clone
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-clone-stats
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-closure-compiler
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cls
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cmd-shim
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-co
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-co-mocha
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-code-point-at
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-codemirror
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-collections
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-colors
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-colour
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-columnify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-combined-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-commander
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-commondir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-commoner
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-commonmark
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-component-emitter
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-component-indexof
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-compress-commons
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-compressible
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-compression
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-concat-map
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-concat-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-config-chain
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-connect
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-connect-livereload
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-connect-timeout
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-console-browserify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-console-dot-log
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-constant-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-constantinople
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-content-disposition
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-content-type
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-convert-source-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cookie
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cookie-jar
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cookie-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cookie-signature
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cookiejar
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-core-js
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-core-util-is
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-couch-login
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-coveralls
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-crc32-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-create-error-class
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cross-spawn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cross-spawn-async
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cryptiles
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-css
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-css-parse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-css-select
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-css-stringify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-css-what
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-csscomb-core
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-csslint
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cssom
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-csurf
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-csv-generate
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-csv-spectrum
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ctype
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-currently-unhandled
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cycle
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-d
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-dashdash
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-data-uri-to-buffer
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-date-now
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dateformat
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-debug
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-debuglog
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-decamelize
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-decompress-response
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-deep-eql
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-deep-equal
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-deep-extend
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-deep-is
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-deeper
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-default-require-extensions
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-defaults
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-defence
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-defence-cli
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-deferred
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-define-properties
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-defined
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-defs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-degenerator
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-del
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-delayed-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-delegates
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-dep-graph
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-depd
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dependency-lister
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-deprecated
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-destroy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-detect-file
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-detective
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dezalgo
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-diff
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-difflet
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-difflib
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-docopt
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-doctrine
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dom-serializer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-domelementtype
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-domhandler
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-domutils
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dot-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dotfile-regex
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-dreamopt
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dryice
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-dtree
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-duplex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-duplexer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-duplexer2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-duplexer3
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-duplexify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-duration
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-each
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-each-async
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ebnf-parser
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ecstatic
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-editor
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ee-first
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ejs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-emojione
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-encodeurl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-encoding
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-end-of-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-entities
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-error-ex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-errorhandler
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-errs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-es-abstract
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-es-to-primitive
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-es5-ext
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es5-shim
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-iterator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-promise
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-es6-set
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-shim
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-symbol
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-es6-weak-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-escape-html
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-escape-regexp-component
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-escape-string-regexp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-escodegen
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-esprima
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-esprima-fb
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-esprima-harmony-jscs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-esrecurse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-estraverse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-estraverse-fb
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-esutils
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-etag
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-event-emitter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-event-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-eventemitter2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-eventemitter3
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-events
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-events-to-array
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-exit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-expand-brackets
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-expand-tilde
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-expect
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-expect-dot-js
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-express
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-express-session
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-extend
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-extend-shallow
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-extglob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-extsprintf
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-eyes
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-fancy-log
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-far
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fast-levenshtein
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-faye-websocket
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-fd
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fd-slicer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fg-lodash
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-figures
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-file-entry-cache
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-file-sync-cmp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-file-uri-to-path
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-filed
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-filelist
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-filename-regex
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-fileset
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-fill-keys
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fill-range
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-finalhandler
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-find-cache-dir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-find-up
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-findup-sync
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-first-chunk-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-flagged-respawn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-flot
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fn-dot-name
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fn-name
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-follow
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-for-in
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-for-own
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-foreach
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-forever-agent
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-form-data
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-formatio
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-formidable
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-forwarded
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-freetree
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fresh
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-from
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-from2
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fs-exists-sync
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-fs-ext
ExclusiveArch: %{nodejs_arches}
- nodejs-fs-extra
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fs-vacuum
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fs-write-stream-atomic
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fs2
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fstream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fstream-ignore
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fstream-npm
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ftp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-function-bind
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-gauge
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gaze
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gdal
ExclusiveArch: %{nodejs_arches}
- nodejs-generate-function
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-generate-object-property
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-generic-pool
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-get-pkg-repo
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-get-port
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-get-stdin
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-get-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-get-uri
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-getobject
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gettext-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-github-url-from-git
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-github-url-from-username-repo
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-glob
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-glob-base
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-glob-parent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-global-prefix
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-globals
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-globby
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-globule
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-glogg
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gonzales-pe
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-got
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-graceful-fs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-graceful-readlink
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grip
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-growl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-angular-templates
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-banner
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-cli
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-compare-size
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-clean
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-concat
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-connect
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-copy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-contrib-csslint
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-cssmin
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-htmlmin
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-contrib-internal
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-less
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-nodeunit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-requirejs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-contrib-uglify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-contrib-watch
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-git-authors
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-html-validation
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-init
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-known-options
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-legacy-log
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-legacy-log-utils
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-legacy-util
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-lib-contrib
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-saucelabs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-sed
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-simple-mocha
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-grunt-util-args
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-util-options
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-util-process
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-util-property
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-grunt-wrap
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-gulplog
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gzip-size
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-handlebars
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-har-validator
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has-ansi
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has-color
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-has-glob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-has-gulplog
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-has-unicode
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has-yarn
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hash_file
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hawk
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-he
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-heap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-highlight-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hock
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hoek
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hooker
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-hosted-git-info
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-html-minifier
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-htmlparser2
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-http-errors
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-http-proxy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-http-proxy-agent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-http-server
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-http-signature
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-https-proxy-agent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-humanize-ms
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-i
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-i18n-transform
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-i2c
ExclusiveArch: %{nodejs_arches}
- nodejs-iconv
ExclusiveArch: %{nodejs_arches}
- nodejs-iconv-lite
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-iferr
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ignore
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-imurmurhash
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-indent-string
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-infinity-agent
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-inflight
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-inherit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-inherits
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-inherits1
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ini
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-init-package-json
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-inline-source-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-install
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-int64-buffer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-interpret
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-into-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-invert-kv
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ip
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-irc-colors
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-irregular-plurals
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-absolute
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-arrayish
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-arrow-function
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-boolean-object
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-buffer
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-builtin-module
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-callable
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-date-object
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-dir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-dotfile
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-equal
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-equal-shallow
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-extendable
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-extglob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-finite
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-fullwidth-code-point
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-generator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-generator-fn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-generator-function
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-glob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-lower-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-my-json-valid
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-number
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-number-object
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-obj
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-object
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-observable
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-path-cwd
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-path-in-cwd
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-path-inside
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-plain-obj
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-plain-object
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-primitive
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-property
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-redirect
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-regex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-regexp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-relative
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-retry-allowed
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-string
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-symbol
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-text-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-typedarray
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-unc-path
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-upper-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-url
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-utf8
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-valid-glob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-is-windows
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-isarray
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-isexe
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-iso8601
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-isobject
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-isodate
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-isstream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-istanbul
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jade
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jasmine-growl-reporter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jasmine-reporters
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jison
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jison-lex
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jju
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-joose
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-joosex-namespace-depended
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-joosex-simplerequest
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-js-base64
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-js-yaml
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jschardet
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jscoverage
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jshint
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-json-diff
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-json-localizer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-json-parse-helpfulerror
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-json-stable-stringify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-json-stringify-safe
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jsonfile
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jsonify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jsonm
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jsonparse
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jsonpointer
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-jsonselect
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-jwt-simple
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-keypress
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-kind-of
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-klaw
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-langdetect
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-latest-version
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-lazystream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-lcid
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lcov-parse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-leaflet
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-leaflet-formbuilder
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-leaflet-hash
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-leche
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-left-pad
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-less
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-levn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-lex-parser
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-libxmljs
ExclusiveArch: %{nodejs_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- nodejs-line-reader
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-linkify-it
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-load-grunt-tasks
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-load-json-file
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-locate-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lockfile
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-log-driver
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-log-symbols
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lolex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-loud-rejection
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-lower-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lower-case-first
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lowercase-keys
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lru-cache
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lru-queue
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ltx
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-make-arrow-function
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-make-generator-function
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-map-obj
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-map-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mapnik
ExclusiveArch: %{nodejs_arches}
- nodejs-mapnik-pool
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mapnik-vector-tile
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-markdown
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-markdown-it-testgen
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-max-timeout
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-maxmin
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mbtiles
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-md5-hex
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-md5-o-matic
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-mdurl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-media-typer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-memoizee
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-meow
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-merge-descriptors
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-merge-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-metascript
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-method-override
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-methods
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-millstone
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mime
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-mime-db
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mime-types
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mimeparse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-minimatch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-minimist
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-minstache
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mkdirp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mkfiletree
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mock-fs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-module-not-found-error
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-moment
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-mongodb
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mongodb-core
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-monocle
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-morgan
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ms
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-muffin
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-multiline
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-multimatch
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-multiparty
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-mustache
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mute-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mv
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-mysql
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mz
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-nan
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nan0
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-nan1
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nano
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-native-or-bluebird
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ncp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-needle
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-negotiator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-nested-error-stacks
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-net-browserify-alt
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-netmask
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-next
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-next-tick
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-node-expat
ExclusiveArch: %{nodejs_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- nodejs-node-int64
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-node-markdown
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-node-print
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-node-static
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-node-status-codes
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-node-stringprep
ExclusiveArch: %{nodejs_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- nodejs-node-uuid
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-nomnom
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nopt
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nopt-usage
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-noptify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-normalize-git-url
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-normalize-package-data
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-normalize-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-cache-filename
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-install-checks
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-license
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-npm-package-arg
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-registry-client
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-npm-run-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-stats
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npm-user-validate
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-npmlog
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nsp-api
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nsp-audit-shrinkwrap
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-nth-check
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-number-is-nan
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-numeral
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-oauth
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-oauth-sign
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-object-assign
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-object-dot-entries
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-object-dot-omit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-object-inspect
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-object-is
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-object-keys
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-on-finished
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-on-headers
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-once
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-onetime
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-only-shallow
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-oop
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-open
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-opener
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-opn
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-optionator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-options
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-optjs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-opts
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-orchestrator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ordered-read-streams
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-os-homedir
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-os-locale
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-os-tmpdir
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-osenv
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-output-file-sync
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-p-finally
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-p-is-promise
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-p-limit
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-p-locate
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pac-proxy-agent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pac-resolver
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-package
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-package-info
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-package-json
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-package-license
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-packaging
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-packet-reader
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pad
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pad-left
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-paperboy
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-param-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parse-github-repo-url
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parse-glob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-parse-json
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parse-ms
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parserlib
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-parseurl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pascal-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-passport-oauth
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-passport-oauth1
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-passport-oauth2
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-passport-strategy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-array
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-path-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-exists
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-is-absolute
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-is-inside
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-key
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-to-regexp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-path-type
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pathval
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pause
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pause-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pedding
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pegjs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pem
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pend
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pff
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pg
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pg-connection-string
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pg-escape
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pg-types
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pgpass
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pinkie
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pinkie-promise
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pkg-dir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pkg-up
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pkginfo
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-platform
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-plur
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-portfinder
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-portscanner
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-posix-getopt
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-postgres-array
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-postgres-bytea
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-postgres-date
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-postgres-interval
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-prelude-ls
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-prepend-http
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-preserve
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pretty-bytes
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pretty-hrtime
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pretty-ms
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-private
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-process-nextick-args
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-progress-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-promise
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-promises-aplus-tests
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-prompt
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-promzard
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-propagate
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-proto-list
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-proxy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-proxy-agent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-proxyquire
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pruddy-error
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pseudomap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pubcontrol
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-q
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-q-io
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-qs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-qtdatastream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-queue-async
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-qunit-extras
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-qunitjs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rainbowsocks
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-randomatic
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-range-parser
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-raw-body
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rc
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-re-emitter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-read-all-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-read-cmd-shim
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-dir-files
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-file
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-installed
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-package-json
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-package-tree
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-read-pkg
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-read-pkg-up
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-readable-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-readdir-scoped-modules
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-readdirp
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-realize-package-specifier
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-recast
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-rechoir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-redent
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-reduce-component
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-regenerator
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-regex-cache
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-registry-url
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-relateurl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-repeat-element
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-repeat-string
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-repeating
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-repl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-replace
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-replace-ext
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-replace-require-self
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-request
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-requestretry
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-require-cs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-require-directory
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-require-inject
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-require-uncached
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-require-yaml
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-requirejs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-requires-port
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-resolve
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-resolve-from
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-resolve-pkg
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-response-time
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-resumer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-retry
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-revalidator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-rewire
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rhea
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-rimraf
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rndm
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ronn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-run-parallel-limit
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-runforcover
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-safe-buffer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-safe-json-stringify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-safecb
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-samsam
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sauce-tunnel
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-saucelabs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sax
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-scmp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-secure-random
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-semver
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-send
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sentence-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-seq
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sequencify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-serialize-error
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-serve-index
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-serve-static
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-set-getter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-set-immediate
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-set-immediate-shim
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-setimmediate
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sha
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-shelljs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-shelljs-nodecli
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-should
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-should-equal
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-should-format
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-should-http
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-should-type
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-showdown
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sigmund
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-signal-exit
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-silent-npm-registry-client
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-simple-assert
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-simple-fmt
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-simple-is
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-simple-markdown
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-single-line-log
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sinon
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sinon-restore
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-slide
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-smart-buffer
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-snake-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-snockets
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sntp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-socks-client
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-socks-proxy-agent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sort-keys
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sorted-object
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-source-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-source-map-fixtures
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sparkles
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-spdx-correct
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-spdx-exceptions
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-spdx-expression-parse
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-spdx-license-ids
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-speedometer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-split
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sprintf
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sprintf-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sqlite3
ExclusiveArch: %{nodejs_arches}
- nodejs-srs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-st
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stable
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stack-trace
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stack-utils
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-static-favicon
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-statuses
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-std-mocks
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-combiner
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-consume
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stream-counter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stream-equal
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-reduce
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-replace
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stream-shift
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-spigot
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-to-array
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-streamsink
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-streamtest
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-string
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-string-dot-prototype-dot-repeat
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-string-dot-prototype-dot-trim
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-string-width
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-string_decoder
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stringmap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stringscanner
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stringset
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-stringstream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-strip-ansi
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-strip-bom
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-strip-bom-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-strip-indent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-strip-json-comments
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-strip-path
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-strscanner
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stylus
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-success-symbol
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-superagent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-superagent-proxy
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-supertest
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-supervisor
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-supports-color
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-swap-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-symbol-observable
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tad
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tap
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tap-mocha-reporter
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tap-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tape
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tar
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tar-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-temp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-temporary
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tern
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tern-cordovajs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tern-liferay
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-terst
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-test
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-testjs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-testswarm
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-text-extensions
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-text-table
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-thenify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-thenify-all
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-through
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-through2
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-through2-filter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-thunkify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tildify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tilejson
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tilelive
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tilelive-mapnik
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tiletype
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-time-stamp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-timed-out
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-timers-ext
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tiny-lr-fork
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-title-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tlds
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tmatch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tmp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-to-absolute-glob
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-to-object-path
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tough-cookie
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tracejs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-transformers
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-traverse
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-treeify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-trim-newlines
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-try-open
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tryor
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tsscmp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ttembed-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tunnel-agent
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-type-check
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-type-detect
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-type-is
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-type-name
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-typeahead.js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-typedarray
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-typescript
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-uc-dot-micro
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-uglify-to-browserify
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-uid-number
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-uid-safe
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-uid2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ultron
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-umask
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-unc-path-regex
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-underscore
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-underscore-dot-logger
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-unicode-7.0.0
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-unicode-length
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-union
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-unique-filename
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-unique-slug
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-unique-stream
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-unpipe
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-unzip-response
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-upper-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-upper-case-first
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-uri-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-url-join
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-url-parse-lax
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-url2
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-utfx
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-util
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-util-deprecate
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-util-extend
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-utile
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-utilities
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-utils-merge
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-vali-date
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-validate-npm-package-license
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-validate-npm-package-name
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-vary
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-vasync
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-verror
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-vhost
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-vinyl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-vow
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-vow-fs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-vow-queue
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-vows
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-w3cjs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-walkdir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-watchit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-wcwidth
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-weak-map
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-websocket-driver
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-when
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-which
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-win-spawn
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-window-size
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-winston
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-with
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-woothee
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-wordwrap
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-wrap-ansi
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-wrap-fn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-wrappy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-write-file-atomic
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-write-json-file
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-write-pkg
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ws
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xml2js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xmlbuilder
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xmldom
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xregexp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-xtend
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-y18n
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-yallist
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-yargs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-yauzl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-zap
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-zip-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-zipfile
ExclusiveArch: %{nodejs_arches}
- nodejs-zlib-browserify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-zlibjs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodeunit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- notify-sharp
ExclusiveArch: %{mono_arches}
- notify-sharp3
ExclusiveArch: %{mono_arches}
- nuget
ExclusiveArch: %{mono_arches}
- numatop
ExclusiveArch: %{ix86} x86_64
- nunit
ExclusiveArch: %{mono_arches}
- nunit2
ExclusiveArch: %{mono_arches}
- nvml
ExclusiveArch: x86_64
- nwchem
ExclusiveArch: x86_64 %{ix86}
- oci-register-machine
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- ocitools
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- olpc-kbdshim
ExclusiveArch: %{ix86} %{arm}
- olpc-netutils
ExclusiveArch: %{ix86} %{arm}
- olpc-powerd
ExclusiveArch: %{ix86} %{arm}
- olpc-utils
ExclusiveArch: %{ix86} %{arm}
- opal-prd
ExclusiveArch: ppc64le
- open-vm-tools
ExclusiveArch: x86_64
ExclusiveArch: %{ix86} x86_64
- openblas
ExclusiveArch: %{openblas_arches}
- openjfx
ExclusiveArch: %{ix86} x86_64
- openlibm
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 %{power64}
- openmx
ExclusiveArch: x86_64 %{ix86}
- openni
ExclusiveArch: %{ix86} x86_64 %{arm}
- openni-primesense
ExclusiveArch: %{ix86} x86_64 %{arm}
- openssl-ibmca
ExclusiveArch: s390 s390x
- origin
ExclusiveArch: %{go_arches}
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- orocos-bfl
ExclusiveArch: %{ix86} x86_64
- orthorobot
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64 ppc64
- paflib
ExclusiveArch: ppc %{power64}
- pcc
ExclusiveArch: %{ix86} x86_64
- pcmciautils
ExclusiveArch: %{ix86} x86_64 ia64 ppc ppc64 %{arm}
- pdfmod
ExclusiveArch: %mono_arches
- perl-Dumbbench
ExclusiveArch: %{ix86} x86_64 noarch
- perl-Parse-DMIDecode
ExclusiveArch: %{ix86} x86_64 ia64 aarch64
- pesign
ExclusiveArch: %{ix86} x86_64 ia64 aarch64 arm
- pesign-test-app
ExclusiveArch: i686 x86_64 ia64 aarch64
- pinta
ExclusiveArch: %mono_arches
- pioneer
ExclusiveArch: %{ix86} x86_64
- playonlinux
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- polyml
ExclusiveArch: %{ix86} x86_64 sparc sparcv8 sparcv9 sparcv9v ppc %{power64} %{arm} aarch64 ia64 mips mipsel
- poppler-sharp
ExclusiveArch: %mono_arches
- powerpc-utils
ExclusiveArch: ppc %{power64}
- ppc64-diag
ExclusiveArch: ppc %{power64}
- ppc64-utils
ExclusiveArch: ppc %{power64}
- prelude-correlator
ExclusiveArch: %{ix86} x86_64
- prewikka
ExclusiveArch: %{ix86} x86_64
- publican-jboss
ExclusiveArch: i686 x86_64
- pvs-sbcl
ExclusiveArch: %{ix86} x86_64 ppc sparcv9
- python-afl
ExclusiveArch: %{ix86} x86_64
- python-etcd
ExclusiveArch: noarch %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- python-healpy
ExclusiveArch: aarch64 ppc64 ppc64le x86_64 s390x
- python-openoffice
ExclusiveArch: noarch x86_64
- python-ovirt-register
ExclusiveArch: %{ix86} x86_64
- python-pymoc
ExclusiveArch: aarch64 ppc64 ppc64le x86_64 s390x
- python-rpi-gpio
ExclusiveArch: %{arm} aarch64
- q4wine
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- qcint
ExclusiveArch: x86_64
- qclib
ExclusiveArch: s390 s390x
- qt4pas
ExclusiveArch: %{fpc_arches}
- qt5-qtwebengine
ExclusiveArch: %{qt5_qtwebengine_arches}
- quantum-espresso
ExclusiveArch: x86_64 %{ix86}
ExclusiveArch: %{openblas_arches}
- rear
ExclusiveArch: %ix86 x86_64 ppc ppc64 ppc64le ia64
- redhat-lsb
ExclusiveArch: %{ix86} ia64 x86_64 ppc ppc64 s390 s390x %{arm} aarch64 ppc64le
- reg
ExclusiveArch: x86_64
- reptyr
ExclusiveArch: %{ix86} x86_64 %{arm}
- rescene
ExclusiveArch: %{mono_arches}
- restsharp
ExclusiveArch: %{mono_arches}
- rhythmbox-alternative-toolbar
ExclusiveArch: %{ix86} %{arm} x86_64 ppc64 ppc64le
- rkt
ExclusiveArch: x86_64 aarch64 %{arm} %{ix86}
- runc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le %{mips} s390x
- rust
ExclusiveArch: %{rust_arches}
- rust-packaging
ExclusiveArch: %{rust_arches} noarch
- s390utils
ExclusiveArch: s390 s390x
- sagemath
ExclusiveArch: aarch64 %{arm} %{ix86} x86_64 ppc sparcv9
- sbcl
ExclusiveArch: %{arm} %{ix86} x86_64 ppc sparcv9 aarch64
- sbd
ExclusiveArch: i686 x86_64 s390x
- seamonkey
ExclusiveArch: %{ix86} x86_64
- servicelog
ExclusiveArch: ppc %{power64}
- sharpfont
ExclusiveArch: %mono_arches
- sharpziplib
ExclusiveArch: %{mono_arches}
- shim
ExclusiveArch: x86_64
- shim-signed
ExclusiveArch: x86_64 aarch64
- shim-unsigned-aarch64
ExclusiveArch: aarch64
- sigul
ExclusiveArch: x86_64
- skychart
ExclusiveArch: %{fpc_arches}
- slapi-nis
ExclusiveArch: x86_64 %{ix86}
- smuxi
ExclusiveArch: %{ix86} x86_64 %{arm} ppc64le
- snapd
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- source-to-image
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- sparkleshare
ExclusiveArch: %{mono_arches}
- spicctrl
ExclusiveArch: %{ix86} x86_64
- spice
ExclusiveArch: x86_64
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- spice-xpi
ExclusiveArch: i686 x86_64 armv6l armv7l armv7hl aarch64
- spring
ExclusiveArch: %{ix86} x86_64
- springlobby
ExclusiveArch: %{ix86} x86_64
- statsd
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- stripesnoop
ExclusiveArch: %{ix86} x86_64
- supermin
ExclusiveArch: x86_64
- sysbench
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips}
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- syslinux
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
- taglib-sharp
ExclusiveArch: %{mono_arches}
- tarantool
ExclusiveArch: %{ix86} x86_64 armv7hl armv7hnl aarch64
- tboot
ExclusiveArch: %{ix86} x86_64
- templates_parser
ExclusiveArch: %GPRbuild_arches
- themonospot-base
ExclusiveArch: %mono_arches
- themonospot-console
ExclusiveArch: %mono_arches
- themonospot-gui-gtk
ExclusiveArch: %mono_arches
- themonospot-plugin-avi
ExclusiveArch: %mono_arches
- themonospot-plugin-mkv
ExclusiveArch: %mono_arches
- thermald
ExclusiveArch: %{ix86} x86_64
- thunderbird-enigmail
ExclusiveArch: %{ix86} %{arm} ppc64 ppc64le s390x x86_64 noarch
- tilix
ExclusiveArch: %{ldc_arches}
- tmux-top
ExclusiveArch: %{go_arches}
- tomboy
ExclusiveArch: %{mono_arches}
- tpm2-tools
ExclusiveArch: %{ix86} x86_64
- tpm2-tss
ExclusiveArch: %{ix86} x86_64
- uClibc
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips}
- ugene
ExclusiveArch: %{ix86} x86_64
- uglify-js
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- uglify-js1
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- unetbootin
ExclusiveArch: %{ix86} x86_64
- v8
ExclusiveArch: %{ix86} x86_64 ppc ppc64 aarch64 %{mips} s390 s390x
- v8-314
ExclusiveArch: %{ix86} x86_64 %{arm} mips mipsel ppc ppc64
- valgrind
ExclusiveArch: %{ix86} x86_64 ppc ppc64 ppc64le s390x armv7hl aarch64
- vboot-utils
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- vdsm
ExclusiveArch: x86_64 %{power64} aarch64
- vim-go
ExclusiveArch: %{?golang_arches:%{golang_arches} noarch}%{!?golang_arches:%{ix86} x86_64 %{arm}}
- virtualplanet
ExclusiveArch: %{fpc_arches}
- vrq
ExclusiveArch: %{ix86} x86_64
- warsow
ExclusiveArch: %{ix86} x86_64 %{arm}
- warsow-data
ExclusiveArch: %{ix86} x86_64 %{arm}
- webkit-sharp
ExclusiveArch: %mono_arches
- wine
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
ExclusiveArch: %{ix86} %{arm}
- winetricks
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- wiredtiger
ExclusiveArch: x86_64 aarch64 ppc64le
- wraplinux
ExclusiveArch: %{ix86} x86_64
- wxMaxima
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc sparcv9
- x86info
ExclusiveArch: %{ix86} x86_64
- xen
ExclusiveArch: %{ix86} x86_64 armv7hl aarch64
- xmlada
ExclusiveArch: %{GPRbuild_arches}
- xorg-x11-drv-armsoc
ExclusiveArch: %{arm} aarch64
- xorg-x11-drv-freedreno
ExclusiveArch: %{arm} aarch64
- xorg-x11-drv-geode
ExclusiveArch: %{ix86}
- xorg-x11-drv-intel
ExclusiveArch: %{ix86} x86_64 ia64
- xorg-x11-drv-omap
ExclusiveArch: %{arm}
- xorg-x11-drv-openchrome
ExclusiveArch: %{ix86} x86_64
- xorg-x11-drv-opentegra
ExclusiveArch: %{arm}
- xorg-x11-drv-vesa
ExclusiveArch: %{ix86} x86_64
- xorg-x11-drv-vmware
ExclusiveArch: %{ix86} x86_64 ia64
- xsp
ExclusiveArch: %mono_arches
- xsupplicant
ExclusiveArch: %{ix86} x86_64 ppc %{power64}
- ycssmin
ExclusiveArch: %{nodejs_arches} noarch
- zeromq-ada
ExclusiveArch: %{GNAT_arches}
- zlib-ada
ExclusiveArch: %{GNAT_arches}
6 years, 9 months
Architecture specific change in rpms/qt5-qtwebengine.git
by githook-noreply@fedoraproject.org
The package rpms/qt5-qtwebengine.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/qt5-qtwebengine.git/commit/?id=5e....
Change:
+%ifnarch x86_64
Thanks.
Full change:
============
commit 5efd916a84adf926c19676fcf7dd574d40a1d97e
Author: Kevin Kofler <Kevin(a)tigcc.ticalc.org>
Date: Sat Jul 15 23:39:56 2017 +0200
Update to 5.6 branch revision ee719ad313e564d4e6f06d74b313ae179169466f
* Sat Jul 15 2017 Kevin Kofler <Kevin(a)tigcc.ticalc.org> - 5.6.3-0.1.20170712gitee719ad313e564
- Update to 5.6 branch revision ee719ad313e564d4e6f06d74b313ae179169466f
- Sync FFmpeg cleaning scripts from 5.7, upstream backported its Chromium
- Update version numbers of bundled stuff
- Update system libvpx/libwebp version requirements (now F24+ only)
- Drop no-format patch, fixed upstream (they stopped passing -Wno-format)
- Rebase linux-pri patch (use_system_protobuf is now a qmake flag)
- Rebase system-nspr-prtime, system-icu-utf and no-sse2 patches
- Fix ARM NEON handling in webrtc gyp files (honor arm_neon=0)
- Restore system-icu54 patch, the fix was lost upstream
- Rebase no-neon patch, add new arm-fpu-fix patch where no-neon not wanted
- Remove Android dependencies from openmax_dl ARM NEON detection (detect.c)
- chromium-skia: build SkUtilsArm.cpp also on non-Android ARM
- webrtc: backport CPU feature detection for ARM Linux, enable it for Chromium
- Enable arm_neon now that #1282495 is fixed
- BR: cmake (for cmake autoprovides support mostly)
- Set CFLAGS, unset both CFLAGS and CXXFLAGS between qmake and make
- Ship the license files
- Filter (designer) plugin provides
- Change qt5-qtbase dependency from >= to =, remove version from the BR
- Qt5WebEngine*Config.cmake: fix when using Qt < %version (#1438877)
diff --git a/.gitignore b/.gitignore
index bcb2a12..12382c8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,7 @@
+/qtwebengine-opensource-src-5.6.1-clean.tar.xz
/qtwebengine-opensource-src-5.6.2-clean.tar.xz
+/qtwebengine-opensource-src-5.6.3-ee719ad313e564d4e6f06d74b313ae179169466f-clean.tar.xz
+/qtwebengine-opensource-src-5.7.0-clean.tar.xz
+/qtwebengine-opensource-src-5.7.1-clean.tar.xz
+/qtwebengine-opensource-src-5.9.0-clean.tar.xz
+/qtwebengine-opensource-src-5.9.1-clean.tar.xz
diff --git a/clean_ffmpeg.sh b/clean_ffmpeg.sh
index c7ad617..cfb37e4 100755
--- a/clean_ffmpeg.sh
+++ b/clean_ffmpeg.sh
@@ -22,12 +22,12 @@
where=`pwd`
-generated_files=`./process_ffmpeg_gyp.py $1`
+generated_files=`./get_free_ffmpeg_source_files.py $1 0`
generated_files_headers="${generated_files//.c/.h}"
generated_files_headers="${generated_files_headers//.S/.h}"
generated_files_headers="${generated_files_headers//.asm/.h}"
-cd $1
+cd $1/third_party/ffmpeg
header_files=" libavutil/x86/asm.h \
libavutil/x86/bswap.h \
@@ -38,6 +38,7 @@ header_files=" libavutil/x86/asm.h \
libavutil/x86/timer.h \
libavutil/aarch64/asm.S \
libavutil/aarch64/bswap.h \
+ libavutil/aarch64/timer.h \
libavutil/arm/asm.S \
libavutil/arm/bswap.h \
libavutil/arm/cpu.h \
@@ -45,6 +46,8 @@ header_files=" libavutil/x86/asm.h \
libavutil/arm/intmath.h \
libavutil/arm/intreadwrite.h \
libavutil/arm/timer.h \
+ libavutil/aes_internal.h \
+ libavutil/atomic.h \
libavutil/atomic_gcc.h \
libavutil/attributes.h \
libavutil/audio_fifo.h \
@@ -64,8 +67,10 @@ header_files=" libavutil/x86/asm.h \
libavutil/lls.h \
libavutil/lzo.h \
libavutil/macros.h \
+ libavutil/mem_internal.h \
libavutil/old_pix_fmts.h \
libavutil/pixfmt.h \
+ libavutil/qsort.h \
libavutil/replaygain.h \
libavutil/softfloat_tables.h \
libavutil/thread.h \
@@ -194,6 +199,7 @@ manual_files=" libavutil/x86/x86inc.asm \
libavcodec/hpel_template.c \
libavcodec/hpeldsp_template.c \
libavcodec/mdct_template.c \
+ libavcodec/pel_template.c \
libavcodec/videodsp_template.c \
libavcodec/h264pred.c \
libavcodec/hpeldsp.c \
@@ -208,14 +214,18 @@ manual_files=" libavutil/x86/x86inc.asm \
chromium/ffmpeg_stub_headers.fragment \
chromium/ffmpegsumo.sigs"
-other_files=" Changelog \
+other_files=" BUILD.gn \
+ Changelog \
COPYING.GPLv2 \
COPYING.GPLv3 \
COPYING.LGPLv2.1 \
COPYING.LGPLv3 \
CREDITS \
- ffmpeg_generated.gypi \
+ CREDITS.chromium \
ffmpeg.gyp \
+ ffmpeg_generated.gypi \
+ ffmpeg_generated.gni \
+ ffmpeg_options.gni \
ffmpegsumo.ver \
INSTALL \
LICENSE \
diff --git a/clean_qtwebengine.sh b/clean_qtwebengine.sh
index 0c97005..084a619 100755
--- a/clean_qtwebengine.sh
+++ b/clean_qtwebengine.sh
@@ -1,5 +1,5 @@
#!/bin/bash
-# Copyright 2015 Kevin Kofler <Kevin(a)tigcc.ticalc.org>
+# Copyright 2015-2016 Kevin Kofler <Kevin(a)tigcc.ticalc.org>
# Permission is hereby granted, free of charge, to any person obtaining
# a copy of this software and associated documentation files (the
# "Software"), to deal in the Software without restriction, including
@@ -21,7 +21,7 @@
if [ -z "$1" ] ; then
echo "usage: ./clean_qtwebengine.sh VERSION"
- echo "e.g.: ./clean_qtwebengine.sh 5.6.0"
+ echo "e.g.: ./clean_qtwebengine.sh 5.7.0"
exit 1
fi
@@ -55,7 +55,10 @@ else
fi
echo "running clean_ffmpeg.sh"
-./clean_ffmpeg.sh "$DIRNAME/src/3rdparty/chromium/third_party/ffmpeg" || exit $?
+./clean_ffmpeg.sh "$DIRNAME/src/3rdparty/chromium" || exit $?
+
+echo "ripping out openh264 sources"
+rm -rf "$DIRNAME/src/3rdparty/chromium/third_party/openh264/src" || exit $?
echo "repacking as $DIRNAME-clean.tar.xz"
XZ_OPT="-9 -f" tar cJf "$DIRNAME-clean.tar.xz" "$DIRNAME" || exit $?
diff --git a/get_free_ffmpeg_source_files.py b/get_free_ffmpeg_source_files.py
new file mode 100755
index 0000000..e659d63
--- /dev/null
+++ b/get_free_ffmpeg_source_files.py
@@ -0,0 +1,73 @@
+#!/usr/bin/python
+# Copyright 2015 Tomas Popela <tpopela(a)redhat.com>
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+import sys
+import re
+
+def append_sources (input_sources, output_sources):
+
+ # Get the source files.
+ source_files = re.findall(r"\"(.*?)\"", input_sources)
+ output_sources += source_files
+
+
+def parse_sources(input_sources, output_sources, arch_not_arm):
+
+ # Get the type of sources in one group and sources itself in the other one.
+ blocks = re.findall(r"(ffmpeg[^\s]*).*?\[(.*?)]", input_sources, re.DOTALL)
+ for block in blocks:
+ if (arch_not_arm):
+ if not 'ffmpeg_gas_sources' in block[0]:
+ append_sources (block[1], output_sources)
+ else:
+ append_sources (block[1], output_sources)
+
+
+def parse_ffmpeg_gyni_file(gyni_path, arch_not_arm):
+
+ with open(gyni_path, "r") as input_file:
+ content = input_file.read().replace('\n', '')
+
+ output_sources = []
+ # Get all the sections.
+ sections = re.findall(r"if (.*?})", content, re.DOTALL)
+ for section in sections:
+ # Get all the conditions (first group) and sources (second group)for the
+ # current section.
+ blocks = re.findall(r"(\(.*?\))\s\{(.*?)\}", section, re.DOTALL)
+ for block in blocks:
+ conditions = re.findall(r"\(?\((.*?)\)", block[0])
+ for condition in conditions:
+ limitations = ['is_linux', 'ffmpeg_branding == "Chromium"']
+ if all(limitation in condition for limitation in limitations):
+ if (arch_not_arm):
+ if ('x64' in condition) or ('x86' in condition):
+ parse_sources (block[1], output_sources, arch_not_arm)
+ else:
+ parse_sources (block[1], output_sources, arch_not_arm)
+
+ print ' '.join(output_sources)
+
+
+if __name__ == "__main__":
+
+ path = "%s/third_party/ffmpeg/ffmpeg_generated.gni" % sys.argv[1]
+ parse_ffmpeg_gyni_file (path, False if sys.argv[2] == "0" else True)
diff --git a/process_ffmpeg_gyp.py b/process_ffmpeg_gyp.py
deleted file mode 100755
index abbeedf..0000000
--- a/process_ffmpeg_gyp.py
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/usr/bin/python
-# Copyright 2013 Tomas Popela <tpopela(a)redhat.com>
-# Permission is hereby granted, free of charge, to any person obtaining
-# a copy of this software and associated documentation files (the
-# "Software"), to deal in the Software without restriction, including
-# without limitation the rights to use, copy, modify, merge, publish,
-# distribute, sublicense, and/or sell copies of the Software, and to
-# permit persons to whom the Software is furnished to do so, subject to
-# the following conditions:
-#
-# The above copyright notice and this permission notice shall be included
-# in all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-import sys
-import re
-
-if __name__ == "__main__":
- path = "%s/ffmpeg_generated.gypi" % sys.argv[1]
- with open(path, "r") as input_file:
- content = input_file.read().replace('\n', '')
-
- brandings = ['ChromeOS', 'ChromiumOS', 'win', 'Chrome']
- output_duplicates = []
- sections = re.findall('\[([^\}]*)\]', content)
- for section in sections:
- condition = re.findall("'([^']*)'", section)
- if not any(x in condition[0] for x in brandings):
- for source_file in condition[1:]:
- output_duplicates.append(
- source_file.replace('<(shared_generated_dir)/', ''))
-
- output = list(set(output_duplicates))
- output.remove('c_sources')
- output.remove('asm_sources')
- print ' '.join(output)
diff --git a/qt5-qtwebengine.spec b/qt5-qtwebengine.spec
index 2c0cf8f..6765bba 100644
--- a/qt5-qtwebengine.spec
+++ b/qt5-qtwebengine.spec
@@ -10,69 +10,93 @@
%global docs 1
%endif
-%if 0%{?fedora} > 22
-# need libvpx >= 1.4.0
+%if 0%{?fedora} > 23
+# need libvpx >= 1.5.0
%global use_system_libvpx 1
%endif
-%if 0%{?fedora} || 0%{?rhel} > 6
-# need libwebp >= 0.4.3
+%if 0%{?fedora} > 23
+# need libwebp >= 0.5.0
%global use_system_libwebp 1
%endif
+# NEON support on ARM (detected at runtime) - disable this if you are hitting
+# FTBFS due to e.g. GCC bug https://bugzilla.redhat.com/show_bug.cgi?id=1282495
+%global arm_neon 1
+
+%global snaphash ee719ad313e564d4e6f06d74b313ae179169466f
+%global snapdate 20170712
+
# exclude plugins (all architectures) and libv8.so (i686, it's static everywhere
# else)
%global __provides_exclude ^lib.*plugin\\.so.*|libv8\\.so$
# exclude libv8.so (i686, it's static everywhere else)
%global __requires_exclude ^libv8\\.so$
+# and designer plugins
+%global __provides_exclude_from ^%{_qt5_plugindir}/.*\\.so$
Summary: Qt5 - QtWebEngine components
Name: qt5-qtwebengine
-Version: 5.6.2
-Release: 1%{?dist}
+Version: 5.6.3
+Release: 0.1.%{snapdate}git%(c=%{snaphash}; echo ${c:0:14})%{?dist}
# See LICENSE.GPL LICENSE.LGPL LGPL_EXCEPTION.txt, for details
# See also http://qt-project.org/doc/qt-5.0/qtdoc/licensing.html
# The other licenses are from Chromium and the code it bundles
License: (LGPLv2 with exceptions or GPLv3 with exceptions) and BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2)
URL: http://www.qt.io
+# snapshot from the git repository
# cleaned tarball with patent-encumbered codecs removed from the bundled FFmpeg
-# wget http://download.qt.io/official_releases/qt/5.6/5.6.1/submodules/qtwebengi...
-# ./clean_qtwebengine.sh 5.6.1
-Source0: qtwebengine-opensource-src-%{version}-clean.tar.xz
+# ./snapshot_qtwebengine.sh ee719ad313e564d4e6f06d74b313ae179169466f 5.6.3
+Source0: qtwebengine-opensource-src-%{version}-%{snaphash}-clean.tar.xz
# cleanup scripts used above
Source1: clean_qtwebengine.sh
Source2: clean_ffmpeg.sh
-Source3: process_ffmpeg_gyp.py
-# do not compile with -Wno-format, which also bypasses -Werror-format-security
-Patch0: qtwebengine-opensource-src-5.6.0-beta-no-format.patch
+Source3: get_free_ffmpeg_source_files.py
+Source4: snapshot_qtwebengine.sh
# some tweaks to linux.pri (system libs, link libpci, run unbundling script)
-Patch1: qtwebengine-opensource-src-5.6.1-linux-pri.patch
+Patch0: qtwebengine-opensource-src-5.7.0-linux-pri.patch
# quick hack to avoid checking for the nonexistent icudtl.dat and silence the
# resulting warnings - not upstreamable as is because it removes the fallback
# mechanism for the ICU data directory (which is not used in our builds because
# we use the system ICU, which embeds the data statically) completely
-Patch2: qtwebengine-opensource-src-5.6.0-no-icudtl-dat.patch
+Patch1: qtwebengine-opensource-src-5.6.0-no-icudtl-dat.patch
# fix extractCFlag to also look in QMAKE_CFLAGS_RELEASE, needed to detect the
# ARM flags with our %%qmake_qt5 macro, including for the next patch
-Patch3: qtwebengine-opensource-src-5.6.0-beta-fix-extractcflag.patch
-# disable NEON vector instructions on ARM for now, the NEON code FTBFS due to
+Patch2: qtwebengine-opensource-src-5.6.0-beta-fix-extractcflag.patch
+# disable NEON vector instructions on ARM where the NEON code FTBFS due to
# GCC bug https://bugzilla.redhat.com/show_bug.cgi?id=1282495
-Patch4: qtwebengine-opensource-src-5.6.0-beta-no-neon.patch
+# otherwise, we use the arm-fpu-fix below instead (which this patch contains)
+Patch3: qtwebengine-opensource-src-5.7.1-no-neon.patch
# use the system NSPR prtime (based on Debian patch)
# We already depend on NSPR, so it is useless to copy these functions here.
# Debian uses this just fine, and I don't see relevant modifications either.
-Patch5: qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime.patch
+Patch4: qtwebengine-opensource-src-5.7.0-system-nspr-prtime.patch
# use the system ICU UTF functions
# We already depend on ICU, so it is useless to copy these functions here.
# I checked the history of that directory, and other than the renames I am
# undoing, there were no modifications at all. Must be applied after Patch5.
-Patch6: qtwebengine-opensource-src-5.6.0-beta-system-icu-utf.patch
+Patch5: qtwebengine-opensource-src-5.7.0-system-icu-utf.patch
# do not require SSE2 on i686
# cumulative revert of upstream reviews 187423002, 308003004, 511773002 (parts
# relevant to QtWebEngine only), 516543004, 1152053004 and 1161853008, along
# with some custom fixes and improvements
# also build V8 shared and twice on i686 (once for x87, once for SSE2)
-Patch7: qtwebengine-opensource-src-5.6.1-no-sse2.patch
+Patch6: qtwebengine-opensource-src-5.7.0-no-sse2.patch
+# fix ARM NEON handling in webrtc gyp files
+# Fix video_processing.gypi to only build NEON files when actually requested
+# (i.e., not if arm_neon=0 arm_neon_optional=0).
+Patch7: qtwebengine-opensource-src-5.7.0-webrtc-neon.patch
+# don't require the time zone detection API backported from ICU 55 (thanks spot)
+Patch8: qtwebengine-opensource-src-5.6.0-beta-system-icu54.patch
+# fix missing ARM -mfpu setting (see the comment in the no-neon patch above)
+Patch9: qtwebengine-opensource-src-5.7.1-arm-fpu-fix.patch
+# remove Android dependencies from openmax_dl ARM NEON detection (detect.c)
+Patch10: qtwebengine-opensource-src-5.7.1-openmax-dl-neon.patch
+# chromium-skia: build SkUtilsArm.cpp also on non-Android ARM
+Patch11: qtwebengine-opensource-src-5.7.1-skia-neon.patch
+# webrtc: backport https://codereview.webrtc.org/1820133002/ "Implement CPU
+# feature detection for ARM Linux." and enable the detection also for Chromium
+Patch12: qtwebengine-opensource-src-5.7.1-webrtc-neon-detect.patch
# the architectures theoretically supported by the version of V8 used (#1298011)
# You may need some minor patching to build on one of the secondary
@@ -82,17 +106,18 @@ Patch7: qtwebengine-opensource-src-5.6.1-no-sse2.patch
# * put #1298011 onto your ExcludeArch tracker.
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 mips mipsel mips64el
-BuildRequires: qt5-qtbase-devel >= %{version}
+BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-qtbase-private-devel
# TODO: check of = is really needed or if >= would be good enough -- rex
%{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}}
-BuildRequires: qt5-qtdeclarative-devel >= %{version}
-BuildRequires: qt5-qtxmlpatterns-devel >= %{version}
-BuildRequires: qt5-qtlocation-devel >= %{version}
-BuildRequires: qt5-qtsensors-devel >= %{version}
-BuildRequires: qt5-qtwebchannel-devel >= %{version}
-BuildRequires: qt5-qttools-static >= %{version}
+BuildRequires: qt5-qtdeclarative-devel
+BuildRequires: qt5-qtxmlpatterns-devel
+BuildRequires: qt5-qtlocation-devel
+BuildRequires: qt5-qtsensors-devel
+BuildRequires: qt5-qtwebchannel-devel
+BuildRequires: qt5-qttools-static
BuildRequires: ninja-build
+BuildRequires: cmake
BuildRequires: bison
BuildRequires: git-core
BuildRequires: gperf
@@ -113,7 +138,7 @@ BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(libudev)
%if 0%{?use_system_libwebp}
-BuildRequires: pkgconfig(libwebp) >= 0.4.3
+BuildRequires: pkgconfig(libwebp) >= 0.5.0
%endif
BuildRequires: pkgconfig(harfbuzz)
BuildRequires: pkgconfig(jsoncpp)
@@ -146,7 +171,7 @@ BuildRequires: pkgconfig(libsrtp)
BuildRequires: perl
BuildRequires: python
%if 0%{?use_system_libvpx}
-BuildRequires: pkgconfig(vpx) >= 1.4.0
+BuildRequires: pkgconfig(vpx) >= 1.5.0
%endif
# extra (non-upstream) functions needed, see
@@ -167,8 +192,8 @@ BuildRequires: pkgconfig(vpx) >= 1.4.0
# Of course, Chromium itself is bundled. It cannot be unbundled because it is
# not a library, but forked (modified) application code.
# Some security fixes are backported, see:
-# http://code.qt.io/cgit/qt/qtwebengine-chromium.git/log/?h=45-based
-Provides: bundled(chromium) = 45
+# http://code.qt.io/cgit/qt/qtwebengine-chromium.git/log/?h=49-based
+Provides: bundled(chromium) = 49
# Bundled in src/3rdparty/chromium/third_party:
# Check src/3rdparty/chromium/third_party/*/README.chromium for version numbers,
@@ -180,28 +205,33 @@ Provides: bundled(angle) = 2422
# completely and produces only ERR_SSL_PROTOCOL_ERROR errors:
# http://kaosx.us/phpBB3/viewtopic.php?t=1235
# https://bugs.launchpad.net/ubuntu/+source/chromium-browser/+bug/1520568
-# So we have to do what Chromium 47 now defaults to: a "chimera build", i.e.,
-# use the BoringSSL code and the system NSS certificates.
+# So we have to do what Chromium now defaults to (since 47): a "chimera build",
+# i.e., use the BoringSSL code and the system NSS certificates.
Provides: bundled(boringssl)
Provides: bundled(brotli)
# Don't get too excited. MPEG and other legally problematic stuff is stripped
-# out. See clean_qtwebengine.sh, clean_ffmpeg.sh, and process_ffmpeg_gyp.py.
+# out. See clean_qtwebengine.sh, clean_ffmpeg.sh, and
+# get_free_ffmpeg_source_files.py.
# see src/3rdparty/chromium/third_party/ffmpeg/Changelog for the version number
-Provides: bundled(ffmpeg) = 2.7
+Provides: bundled(ffmpeg) = 2.8
Provides: bundled(iccjpeg)
# bundled as "khronos", headers only
Provides: bundled(khronos_headers)
# bundled as "leveldatabase"
-Provides: bundled(leveldb) = r80
-Provides: bundled(libjingle) = 9564
+Provides: bundled(leveldb)
+Provides: bundled(libjingle) = 11250
%if !0%{?use_system_libvpx}
-Provides: bundled(libvpx) = 1.4.0
+# bundled as "libvpx_new"
+# the version in README.chromium is wrong, see
+# src/3rdparty/chromium/third_party/libvpx_new/source/libvpx/CHANGELOG for the
+# real version number
+Provides: bundled(libvpx) = 1.5.0
%endif
%if !0%{?use_system_libwebp}
-Provides: bundled(libwebp) = 0.4.3
+Provides: bundled(libwebp) = 0.5.0
%endif
Provides: bundled(libXNVCtrl) = 302.17
-Provides: bundled(libyuv) = 1444
+Provides: bundled(libyuv) = 1563
Provides: bundled(modp_b64)
Provides: bundled(mojo)
# headers only
@@ -209,12 +239,12 @@ Provides: bundled(npapi)
Provides: bundled(openmax_dl) = 1.0.2
Provides: bundled(ots)
Provides: bundled(qcms) = 4
-Provides: bundled(sfntly) = 0-0.1.svn111
+Provides: bundled(sfntly)
Provides: bundled(skia)
# bundled as "smhasher"
Provides: bundled(SMHasher) = 0-0.1.svn147
Provides: bundled(sqlite) = 3.8.7.4
-Provides: bundled(usrsctp) = 0-0.1.svn9045
+Provides: bundled(usrsctp)
Provides: bundled(webrtc) = 90
%ifarch %{ix86} x86_64
# header (for assembly) only
@@ -248,12 +278,12 @@ Provides: bundled(nsURLParsers)
# Bundled outside of third_party, apparently not considered as such by Chromium:
# see src/3rdparty/chromium/v8/include/v8_version.h for the version number
-Provides: bundled(v8) = 4.5.103.35
+Provides: bundled(v8) = 4.9.385.33
# bundled by v8 (src/3rdparty/chromium/v8/src/third_party/fdlibm)
# see src/3rdparty/chromium/v8/src/third_party/fdlibm/README.v8 for the version
Provides: bundled(fdlibm) = 5.3
-%{?_qt5_version:Requires: qt5-qtbase%{?_isa} >= %{_qt5_version}}
+%{?_qt5_version:Requires: qt5-qtbase%{?_isa} = %{_qt5_version}}
%description
@@ -287,14 +317,22 @@ BuildArch: noarch
%prep
%setup -q -n %{qt_module}-opensource-src-%{version}%{?prerelease:-%{prerelease}}
-%patch0 -p1 -b .no-format
-%patch1 -p1 -b .linux-pri
-%patch2 -p1 -b .no-icudtl-dat
-%patch3 -p1 -b .fix-extractcflag
-%patch4 -p1 -b .no-neon
-%patch5 -p1 -b .system-nspr-prtime
-%patch6 -p1 -b .system-icu-utf
-%patch7 -p1 -b .no-sse2
+%patch0 -p1 -b .linux-pri
+%patch1 -p1 -b .no-icudtl-dat
+%patch2 -p1 -b .fix-extractcflag
+%if 0%{?arm_neon}
+%patch9 -p1 -b .arm-fpu-fix
+%else
+%patch3 -p1 -b .no-neon
+%endif
+%patch4 -p1 -b .system-nspr-prtime
+%patch5 -p1 -b .system-icu-utf
+%patch6 -p1 -b .no-sse2
+%patch7 -p1 -b .webrtc-neon
+%patch8 -p1 -b .system-icu54
+%patch10 -p1 -b .openmax-dl-neon
+%patch11 -p1 -b .skia-neon
+%patch12 -p1 -b .webrtc-neon-detect
# fix // in #include in content/renderer/gpu to avoid debugedit failure
sed -i -e 's!gpu//!gpu/!g' \
src/3rdparty/chromium/content/renderer/gpu/compositor_forwarding_message_filter.cc
@@ -305,17 +343,25 @@ sed -i -e 's!\./!!g' \
# http://bugzilla.redhat.com/1337585
# can't just delete, but we'll overwrite with system headers to be on the safe side
-cp -bv /usr/include/re2/*.h src/3rdparty/chromium/third_party/re2/re2/
+cp -bv /usr/include/re2/*.h src/3rdparty/chromium/third_party/re2/src/re2/
%ifnarch x86_64
# most arches run out of memory with full debuginfo, so use -g1 on non-x86_64
sed -i -e 's/=-g$/=-g1/g' src/core/gyp_run.pro
%endif
+# copy the Chromium license so it is installed with the appropriate name
+cp -p src/3rdparty/chromium/LICENSE LICENSE.Chromium
+
%build
export STRIP=strip
export NINJAFLAGS="-v %{_smp_mflags}"
export NINJA_PATH=%{_bindir}/ninja-build
+export CFLAGS="%{optflags}"
+%ifnarch x86_64
+# most arches run out of memory with full debuginfo, so use -g1 on non-x86_64
+export CFLAGS=`echo "$CFLAGS" | sed -e 's/ -g / -g1 /g'`
+%endif
export CXXFLAGS="%{optflags} -fno-delete-null-pointer-checks"
%ifnarch x86_64
# most arches run out of memory with full debuginfo, so use -g1 on non-x86_64
@@ -325,7 +371,13 @@ export CXXFLAGS=`echo "$CXXFLAGS" | sed -e 's/ -g / -g1 /g'`
mkdir %{_target_platform}
pushd %{_target_platform}
-%{qmake_qt5} CONFIG+="webcore_debug v8base_debug force_debug_info" WEBENGINE_CONFIG+="use_system_icu" ..
+%{qmake_qt5} CONFIG+="webcore_debug v8base_debug force_debug_info" WEBENGINE_CONFIG+="use_system_icu use_system_protobuf" ..
+
+# if we keep these set here, gyp picks up duplicate flags
+unset CFLAGS
+export CFLAGS
+unset CXXFLAGS
+export CXXFLAGS
# workaround, disable parallel compilation as it fails to compile in brew
make %{?_smp_mflags}
@@ -354,10 +406,16 @@ for prl_file in libQt5*.prl ; do
done
popd
+# adjust cmake dep(s) to allow for using the same Qt5 that was used to build it
+# (which is 5.6.2, whereas this is a snapshot of 5.6.3)
+sed -i -e "s|%{version} \${_Qt5WebEngine|%{_qt5_version} \${_Qt5WebEngine|" \
+ %{buildroot}%{_qt5_libdir}/cmake/Qt5WebEngine*/Qt5WebEngine*Config.cmake
+
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
+%license LICENSE.* src/webengine/doc/src/qtwebengine-3rdparty.qdoc
%{_qt5_libdir}/libQt5*.so.*
%{_qt5_libdir}/qt5/qml/*
%{_qt5_libdir}/qt5/libexec/QtWebEngineProcess
@@ -440,6 +498,28 @@ popd
%changelog
+* Sat Jul 15 2017 Kevin Kofler <Kevin(a)tigcc.ticalc.org> - 5.6.3-0.1.20170712gitee719ad313e564
+- Update to 5.6 branch revision ee719ad313e564d4e6f06d74b313ae179169466f
+- Sync FFmpeg cleaning scripts from 5.7, upstream backported its Chromium
+- Update version numbers of bundled stuff
+- Update system libvpx/libwebp version requirements (now F24+ only)
+- Drop no-format patch, fixed upstream (they stopped passing -Wno-format)
+- Rebase linux-pri patch (use_system_protobuf is now a qmake flag)
+- Rebase system-nspr-prtime, system-icu-utf and no-sse2 patches
+- Fix ARM NEON handling in webrtc gyp files (honor arm_neon=0)
+- Restore system-icu54 patch, the fix was lost upstream
+- Rebase no-neon patch, add new arm-fpu-fix patch where no-neon not wanted
+- Remove Android dependencies from openmax_dl ARM NEON detection (detect.c)
+- chromium-skia: build SkUtilsArm.cpp also on non-Android ARM
+- webrtc: backport CPU feature detection for ARM Linux, enable it for Chromium
+- Enable arm_neon now that #1282495 is fixed
+- BR: cmake (for cmake autoprovides support mostly)
+- Set CFLAGS, unset both CFLAGS and CXXFLAGS between qmake and make
+- Ship the license files
+- Filter (designer) plugin provides
+- Change qt5-qtbase dependency from >= to =, remove version from the BR
+- Qt5WebEngine*Config.cmake: fix when using Qt < %%version (#1438877)
+
* Wed Nov 02 2016 Rex Dieter <rdieter(a)fedoraproject.org> - 5.6.2-1
- 5.6.2
diff --git a/qtwebengine-opensource-src-5.6.0-beta-no-format.patch b/qtwebengine-opensource-src-5.6.0-beta-no-format.patch
deleted file mode 100644
index 650854f..0000000
--- a/qtwebengine-opensource-src-5.6.0-beta-no-format.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -ur qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/build/common.gypi qtwebengine-opensource-src-5.6.0-beta-no-format/src/3rdparty/chromium/build/common.gypi
---- qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/build/common.gypi 2015-12-10 18:17:21.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.0-beta-no-format/src/3rdparty/chromium/build/common.gypi 2016-01-05 05:58:55.336938182 +0100
-@@ -3142,11 +3142,6 @@
- # Don't warn about hash_map in third-party code.
- '-Wno-deprecated',
- ],
-- 'cflags': [
-- # Don't warn about printf format problems.
-- # This is off by default in gcc but on in Ubuntu's gcc(!).
-- '-Wno-format',
-- ],
- 'cflags_cc!': [
- # Necessary because llvm.org/PR10448 is WONTFIX (crbug.com/90453).
- '-Wsign-compare',
-diff -ur qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/build/config/compiler/BUILD.gn qtwebengine-opensource-src-5.6.0-beta-no-format/src/3rdparty/chromium/build/config/compiler/BUILD.gn
---- qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/build/config/compiler/BUILD.gn 2015-12-10 18:17:21.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.0-beta-no-format/src/3rdparty/chromium/build/config/compiler/BUILD.gn 2016-01-05 05:58:55.362938322 +0100
-@@ -1013,11 +1013,6 @@
- }
-
- if (is_linux || is_android) {
-- cflags += [
-- # Don't warn about printf format problems. This is off by default in gcc
-- # but on in Ubuntu's gcc(!).
-- "-Wno-format",
-- ]
- cflags_cc += [
- # Don't warn about hash_map in third-party code.
- "-Wno-deprecated",
diff --git a/qtwebengine-opensource-src-5.6.0-beta-no-neon.patch b/qtwebengine-opensource-src-5.6.0-beta-no-neon.patch
deleted file mode 100644
index af9bbf7..0000000
--- a/qtwebengine-opensource-src-5.6.0-beta-no-neon.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff -ur qtwebengine-opensource-src-5.6.0-beta/src/core/gyp_run.pro qtwebengine-opensource-src-5.6.0-beta-no-neon/src/core/gyp_run.pro
---- qtwebengine-opensource-src-5.6.0-beta/src/core/gyp_run.pro 2015-12-14 16:27:24.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.0-beta-no-neon/src/core/gyp_run.pro 2016-01-10 17:48:45.689954050 +0100
-@@ -74,7 +74,10 @@
- # we use arm_neon_optional for ARMv7 and newer and let chromium decide
- # about the mfpu option.
- contains(MFPU, "neon")|contains(MFPU, "neon-vfpv4"): GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=1
-- else:!lessThan(MARMV, 7): GYP_CONFIG += arm_neon=0 arm_neon_optional=1
-+ # Disable NEON entirely for now, because it fails to build:
-+ # https://bugzilla.redhat.com/show_bug.cgi?id=1282495
-+ # (This line was also missing the required arm_fpu flag, which I added.)
-+ # else:!lessThan(MARMV, 7): GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=0 arm_neon_optional=1
- else: GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=0 arm_neon_optional=0
- }
-
diff --git a/qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime.patch b/qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime.patch
deleted file mode 100644
index dffa81e..0000000
--- a/qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-diff -ur qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/base/base.gypi qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime/src/3rdparty/chromium/base/base.gypi
---- qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/base/base.gypi 2015-12-10 18:17:21.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime/src/3rdparty/chromium/base/base.gypi 2016-01-12 03:01:20.875004550 +0100
-@@ -623,8 +623,6 @@
- 'third_party/dmg_fp/g_fmt.cc',
- 'third_party/icu/icu_utf.cc',
- 'third_party/icu/icu_utf.h',
-- 'third_party/nspr/prtime.cc',
-- 'third_party/nspr/prtime.h',
- 'third_party/superfasthash/superfasthash.c',
- 'third_party/xdg_mime/xdgmime.h',
- 'thread_task_runner_handle.cc',
-diff -ur qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/base/BUILD.gn qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn
---- qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/base/BUILD.gn 2015-12-10 18:17:21.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn 2016-01-12 03:03:08.040591492 +0100
-@@ -506,8 +506,6 @@
- "third_party/dmg_fp/g_fmt.cc",
- "third_party/icu/icu_utf.cc",
- "third_party/icu/icu_utf.h",
-- "third_party/nspr/prtime.cc",
-- "third_party/nspr/prtime.h",
- "third_party/superfasthash/superfasthash.c",
- "thread_task_runner_handle.cc",
- "thread_task_runner_handle.h",
-diff -ur qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/base/time/pr_time_unittest.cc qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime/src/3rdparty/chromium/base/time/pr_time_unittest.cc
---- qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/base/time/pr_time_unittest.cc 2015-12-10 18:17:21.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime/src/3rdparty/chromium/base/time/pr_time_unittest.cc 2016-01-12 03:01:20.876004555 +0100
-@@ -6,7 +6,7 @@
- #include <time.h>
-
- #include "base/compiler_specific.h"
--#include "base/third_party/nspr/prtime.h"
-+#include <nspr4/prtime.h>
- #include "base/time/time.h"
- #include "testing/gtest/include/gtest/gtest.h"
-
-diff -ur qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/base/time/time.cc qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime/src/3rdparty/chromium/base/time/time.cc
---- qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/base/time/time.cc 2015-12-10 18:17:21.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.0-beta-system-nspr-prtime/src/3rdparty/chromium/base/time/time.cc 2016-01-12 03:01:20.877004561 +0100
-@@ -13,7 +13,8 @@
- #include "base/lazy_instance.h"
- #include "base/logging.h"
- #include "base/strings/stringprintf.h"
--#include "base/third_party/nspr/prtime.h"
-+
-+#include <nspr4/prtime.h>
-
- namespace base {
-
diff --git a/qtwebengine-opensource-src-5.6.1-linux-pri.patch b/qtwebengine-opensource-src-5.6.1-linux-pri.patch
deleted file mode 100644
index 16f2767..0000000
--- a/qtwebengine-opensource-src-5.6.1-linux-pri.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff -ur qtwebengine-opensource-src-5.6.1/src/core/config/linux.pri qtwebengine-opensource-src-5.6.1-linux-pri/src/core/config/linux.pri
---- qtwebengine-opensource-src-5.6.1/src/core/config/linux.pri 2016-05-26 20:01:25.000000000 +0200
-+++ qtwebengine-opensource-src-5.6.1-linux-pri/src/core/config/linux.pri 2016-06-11 01:17:26.494650774 +0200
-@@ -46,3 +46,25 @@
- use?(system_icu): GYP_CONFIG += use_system_icu=1 icu_use_data_file_flag=0
- use?(system_ffmpeg): GYP_CONFIG += use_system_ffmpeg=1
-
-+# some more system packages, that are not checked for for some reason
-+GYP_CONFIG += \
-+ use_system_expat=1 \
-+ use_system_re2=1 \
-+ use_system_protobuf=1
-+
-+# yasm is only used on x86, and passing use_system_yasm makes the build fail on
-+# other architectures (e.g., ARM), so make it conditional on the architecture
-+contains(QT_ARCH, "x86_64")|contains(QT_ARCH, "i386") {
-+ GYP_CONFIG += use_system_yasm=1
-+}
-+
-+# link libpci instead of dlopening it, our Qt packaging depends on it anyway
-+GYP_CONFIG += linux_link_libpci=1
-+
-+# run the unbundling script Chromium provides
-+CHROMIUM_SRC_DIR = "$$QTWEBENGINE_ROOT/$$getChromiumSrcDir()"
-+R_G_F_PY = "$$CHROMIUM_SRC_DIR/build/linux/unbundle/replace_gyp_files.py"
-+R_G_F_PY_ARGS =
-+for (config, GYP_CONFIG): R_G_F_PY_ARGS += "-D $$config"
-+log("Running python $$R_G_F_PY $$R_G_F_PY_ARGS$${EOL}")
-+!system("python $$R_G_F_PY $$R_G_F_PY_ARGS"): error("-- unbundling failed")
diff --git a/qtwebengine-opensource-src-5.6.1-no-sse2.patch b/qtwebengine-opensource-src-5.6.1-no-sse2.patch
deleted file mode 100644
index b6fed7e..0000000
--- a/qtwebengine-opensource-src-5.6.1-no-sse2.patch
+++ /dev/null
@@ -1,4896 +0,0 @@
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/breakpad/src/build/common.gypi qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/breakpad/src/build/common.gypi
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/breakpad/src/build/common.gypi 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/breakpad/src/build/common.gypi 2016-02-25 00:47:14.856720934 +0100
-@@ -80,8 +80,8 @@
- # The system root for cross-compiles. Default: none.
- 'sysroot%': '',
-
-- # On Linux, we build with sse2 for Chromium builds.
-- 'disable_sse2%': 0,
-+ # Do not assume SSE2 by default (Fedora patch).
-+ 'disable_sse2%': 1
- },
-
- 'target_arch%': '<(target_arch)',
-@@ -725,17 +725,13 @@
- 'conditions': [
- ['disable_sse2==0', {
- 'cflags': [
-- '-march=pentium4',
- '-msse2',
- '-mfpmath=sse',
- ],
- }],
- ],
-- # -mmmx allows mmintrin.h to be used for mmx intrinsics.
-- # video playback is mmx and sse2 optimized.
- 'cflags': [
- '-m32',
-- '-mmmx',
- ],
- 'ldflags': [
- '-m32',
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/build/common.gypi qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/build/common.gypi
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/build/common.gypi 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/build/common.gypi 2016-02-25 00:47:14.883721079 +0100
-@@ -3904,15 +3904,7 @@
- # value used during computation does not change depending on
- # how the compiler optimized the code, since the value is
- # always kept in its specified precision.
-- #
-- # Refer to http://crbug.com/348761 for rationale behind SSE2
-- # being a minimum requirement for 32-bit Linux builds and
-- # http://crbug.com/313032 for an example where this has "bit"
-- # us in the past.
- 'cflags': [
-- '-msse2',
-- '-mfpmath=sse',
-- '-mmmx', # Allows mmintrin.h for MMX intrinsics.
- '-m32',
- ],
- 'ldflags': [
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/cc/BUILD.gn qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/cc/BUILD.gn
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/cc/BUILD.gn 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/cc/BUILD.gn 2016-02-25 00:47:14.892721127 +0100
-@@ -502,13 +502,6 @@
- "trees/tree_synchronizer.h",
- ]
-
-- if (target_cpu == "x86" || target_cpu == "x64") {
-- sources += [
-- "raster/texture_compressor_etc1_sse.cc",
-- "raster/texture_compressor_etc1_sse.h",
-- ]
-- }
--
- public_deps = [
- "//cc/base",
- "//skia",
-@@ -516,6 +509,7 @@
- deps = [
- "//base",
- "//base/third_party/dynamic_annotations",
-+ "//cc:cc_opts",
- "//cc/surfaces:surface_id",
- "//gpu",
- "//gpu/command_buffer/client:gles2_interface",
-@@ -533,6 +527,36 @@
- }
- }
-
-+source_set("cc_opts") {
-+ public_deps = [
-+ "//cc:cc_opts_sse",
-+ ]
-+}
-+
-+source_set("cc_opts_sse") {
-+ if (target_cpu == "x86" || target_cpu == "x64") {
-+ deps = [
-+ "//base",
-+ ]
-+
-+ defines = [ "CC_IMPLEMENTATION=1" ]
-+
-+ if (!is_debug && (is_win || is_android)) {
-+ configs -= [ "//build/config/compiler:optimize" ]
-+ configs += [ "//build/config/compiler:optimize_max" ]
-+ }
-+
-+ sources = [
-+ "raster/texture_compressor.h",
-+ "raster/texture_compressor_etc1.h",
-+ "raster/texture_compressor_etc1_sse.cc",
-+ "raster/texture_compressor_etc1_sse.h",
-+ ]
-+
-+ cflags = [ "-msse2" ]
-+ }
-+}
-+
- source_set("test_support") {
- testonly = true
- sources = [
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/cc/cc.gyp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/cc/cc.gyp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/cc/cc.gyp 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/cc/cc.gyp 2016-02-25 00:47:14.903721186 +0100
-@@ -21,6 +21,7 @@
- '<(DEPTH)/ui/events/events.gyp:events_base',
- '<(DEPTH)/ui/gfx/gfx.gyp:gfx',
- '<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
-+ 'cc_opts',
- ],
- 'variables': {
- 'optimize': 'max',
-@@ -563,14 +564,6 @@
- 'includes': [
- '../build/android/increase_size_for_speed.gypi',
- ],
-- 'conditions': [
-- ['target_arch == "ia32" or target_arch == "x64"', {
-- 'sources': [
-- 'raster/texture_compressor_etc1_sse.cc',
-- 'raster/texture_compressor_etc1_sse.h',
-- ],
-- }],
-- ],
- },
- {
- # GN version: //cc/surfaces
-@@ -621,5 +614,41 @@
- '../build/android/increase_size_for_speed.gypi',
- ],
- },
-+ {
-+ 'target_name': 'cc_opts',
-+ 'type': 'static_library',
-+ 'conditions': [
-+ ['target_arch == "ia32" or target_arch == "x64"', {
-+ 'defines': [
-+ 'CC_IMPLEMENTATION=1',
-+ ],
-+ 'dependencies': [
-+ 'cc_opts_sse',
-+ ]
-+ }],
-+ ],
-+ },
-+ {
-+ 'target_name': 'cc_opts_sse',
-+ 'type': 'static_library',
-+ 'dependencies': [
-+ '<(DEPTH)/base/base.gyp:base',
-+ ],
-+ 'conditions': [
-+ ['target_arch == "ia32" or target_arch == "x64"', {
-+ 'defines': [
-+ 'CC_IMPLEMENTATION=1',
-+ ],
-+ 'sources': [
-+ # Conditional compilation for SSE2 code on x86 and x64 machines
-+ 'raster/texture_compressor_etc1_sse.cc',
-+ 'raster/texture_compressor_etc1_sse.h',
-+ ],
-+ 'cflags': [
-+ '-msse2',
-+ ],
-+ }],
-+ ],
-+ },
- ],
- }
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/BUILD.gn qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/BUILD.gn
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/BUILD.gn 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/BUILD.gn 2016-02-25 00:47:14.941721390 +0100
-@@ -270,13 +270,13 @@
- }
-
- if (current_cpu == "x86" || current_cpu == "x64") {
-- sources += [
-- "simd/convert_rgb_to_yuv_sse2.cc",
-- "simd/convert_rgb_to_yuv_ssse3.cc",
-- "simd/convert_yuv_to_rgb_x86.cc",
-- "simd/filter_yuv_sse2.cc",
-+ sources += [ "simd/convert_yuv_to_rgb_x86.cc" ]
-+ deps += [
-+ ":media_yasm",
-+ ":media_mmx",
-+ ":media_sse",
-+ ":media_sse2",
- ]
-- deps += [ ":media_yasm" ]
- }
-
- configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
-@@ -462,10 +462,47 @@
- }
-
- if (current_cpu == "x86" || current_cpu == "x64") {
-+ source_set("media_mmx") {
-+ sources = [ "simd/filter_yuv_mmx.cc" ]
-+ configs += [ "//media:media_config" ]
-+ if (!is_win) {
-+ cflags = [ "-mmmx" ]
-+ }
-+ }
-+
-+ source_set("media_sse") {
-+ sources = [
-+ "simd/sinc_resampler_sse.cc",
-+ ]
-+ configs += [
-+ "//media:media_config",
-+ "//media:media_implementation",
-+ ]
-+ if (!is_win) {
-+ cflags = [ "-msse" ]
-+ }
-+ }
-+
-+ source_set("media_sse2") {
-+ sources = [
-+ "simd/convert_rgb_to_yuv_sse2.cc",
-+ "simd/convert_rgb_to_yuv_ssse3.cc",
-+ "simd/filter_yuv_sse2.cc",
-+ ]
-+ configs += [
-+ "//media:media_config",
-+ "//media:media_implementation",
-+ ]
-+ if (!is_win) {
-+ cflags = [ "-msse2" ]
-+ }
-+ }
-+
- import("//third_party/yasm/yasm_assemble.gni")
- yasm_assemble("media_yasm") {
- sources = [
- "simd/convert_rgb_to_yuv_ssse3.asm",
-+ "simd/convert_yuv_to_rgb_mmx.asm",
- "simd/convert_yuv_to_rgb_sse.asm",
- "simd/convert_yuva_to_argb_mmx.asm",
- "simd/empty_register_state_mmx.asm",
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/media.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/media.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/media.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/media.cc 2016-02-25 00:47:14.954721460 +0100
-@@ -9,6 +9,8 @@
- #include "base/path_service.h"
- #include "base/synchronization/lock.h"
- #include "build/build_config.h"
-+#include "media/base/sinc_resampler.h"
-+#include "media/base/vector_math.h"
- #include "media/base/yuv_convert.h"
-
- #if !defined(MEDIA_DISABLE_FFMPEG)
-@@ -24,6 +26,8 @@
-
- MediaInitializer() {
- // Perform initialization of libraries which require runtime CPU detection.
-+ vector_math::Initialize();
-+ SincResampler::InitializeCPUSpecificFeatures();
- InitializeCPUSpecificYUVConversions();
-
- #if !defined(MEDIA_DISABLE_FFMPEG)
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb.h qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb.h
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb.h 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb.h 2016-02-25 00:47:14.968721535 +0100
-@@ -63,6 +63,17 @@
- int rgbstride,
- YUVType yuv_type);
-
-+MEDIA_EXPORT void ConvertYUVToRGB32_MMX(const uint8* yplane,
-+ const uint8* uplane,
-+ const uint8* vplane,
-+ uint8* rgbframe,
-+ int width,
-+ int height,
-+ int ystride,
-+ int uvstride,
-+ int rgbstride,
-+ YUVType yuv_type);
-+
- MEDIA_EXPORT void ConvertYUVAToARGB_MMX(const uint8* yplane,
- const uint8* uplane,
- const uint8* vplane,
-@@ -114,6 +125,13 @@
- // issue on at least Win64. The C-equivalent RowProc versions' prototypes
- // include the same change to ptrdiff_t to reuse the typedefs.
-
-+MEDIA_EXPORT void ConvertYUVToRGB32Row_MMX(const uint8* yplane,
-+ const uint8* uplane,
-+ const uint8* vplane,
-+ uint8* rgbframe,
-+ ptrdiff_t width,
-+ const int16* convert_table);
-+
- MEDIA_EXPORT void ConvertYUVAToARGBRow_MMX(const uint8* yplane,
- const uint8* uplane,
- const uint8* vplane,
-@@ -129,6 +147,14 @@
- ptrdiff_t width,
- const int16* convert_table);
-
-+MEDIA_EXPORT void ScaleYUVToRGB32Row_MMX(const uint8* y_buf,
-+ const uint8* u_buf,
-+ const uint8* v_buf,
-+ uint8* rgb_buf,
-+ ptrdiff_t width,
-+ ptrdiff_t source_dx,
-+ const int16* convert_table);
-+
- MEDIA_EXPORT void ScaleYUVToRGB32Row_SSE(const uint8* y_buf,
- const uint8* u_buf,
- const uint8* v_buf,
-@@ -145,6 +171,14 @@
- ptrdiff_t source_dx,
- const int16* convert_table);
-
-+MEDIA_EXPORT void LinearScaleYUVToRGB32Row_MMX(const uint8* y_buf,
-+ const uint8* u_buf,
-+ const uint8* v_buf,
-+ uint8* rgb_buf,
-+ ptrdiff_t width,
-+ ptrdiff_t source_dx,
-+ const int16* convert_table);
-+
- MEDIA_EXPORT void LinearScaleYUVToRGB32Row_SSE(const uint8* y_buf,
- const uint8* u_buf,
- const uint8* v_buf,
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_mmx.asm qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_mmx.asm
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_mmx.asm 1970-01-01 01:00:00.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_mmx.asm 2016-02-25 00:47:14.968721535 +0100
-@@ -0,0 +1,23 @@
-+; Copyright (c) 2011 The Chromium Authors. All rights reserved.
-+; Use of this source code is governed by a BSD-style license that can be
-+; found in the LICENSE file.
-+
-+%include "third_party/x86inc/x86inc.asm"
-+
-+;
-+; This file uses MMX instructions.
-+;
-+ SECTION_TEXT
-+ CPU MMX
-+
-+; Use movq to save the output.
-+%define MOVQ movq
-+
-+; extern "C" void ConvertYUVToRGB32Row_MMX(const uint8* y_buf,
-+; const uint8* u_buf,
-+; const uint8* v_buf,
-+; uint8* rgb_buf,
-+; ptrdiff_t width,
-+; const int16* convert_table);
-+%define SYMBOL ConvertYUVToRGB32Row_MMX
-+%include "convert_yuv_to_rgb_mmx.inc"
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_x86.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_x86.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_x86.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_x86.cc 2016-02-25 00:47:14.976721578 +0100
-@@ -13,6 +13,34 @@
-
- namespace media {
-
-+void ConvertYUVToRGB32_MMX(const uint8* yplane,
-+ const uint8* uplane,
-+ const uint8* vplane,
-+ uint8* rgbframe,
-+ int width,
-+ int height,
-+ int ystride,
-+ int uvstride,
-+ int rgbstride,
-+ YUVType yuv_type) {
-+ unsigned int y_shift = GetVerticalShift(yuv_type);
-+ for (int y = 0; y < height; ++y) {
-+ uint8* rgb_row = rgbframe + y * rgbstride;
-+ const uint8* y_ptr = yplane + y * ystride;
-+ const uint8* u_ptr = uplane + (y >> y_shift) * uvstride;
-+ const uint8* v_ptr = vplane + (y >> y_shift) * uvstride;
-+
-+ ConvertYUVToRGB32Row_MMX(y_ptr,
-+ u_ptr,
-+ v_ptr,
-+ rgb_row,
-+ width,
-+ GetLookupTable(yuv_type));
-+ }
-+
-+ EmptyRegisterState();
-+}
-+
- void ConvertYUVAToARGB_MMX(const uint8* yplane,
- const uint8* uplane,
- const uint8* vplane,
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/filter_yuv.h qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/filter_yuv.h
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/filter_yuv.h 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/filter_yuv.h 2016-02-25 00:47:14.977721583 +0100
-@@ -19,6 +19,12 @@
- int source_width,
- uint8 source_y_fraction);
-
-+MEDIA_EXPORT void FilterYUVRows_MMX(uint8* ybuf,
-+ const uint8* y0_ptr,
-+ const uint8* y1_ptr,
-+ int source_width,
-+ uint8 source_y_fraction);
-+
- MEDIA_EXPORT void FilterYUVRows_SSE2(uint8* ybuf,
- const uint8* y0_ptr,
- const uint8* y1_ptr,
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/filter_yuv_mmx.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/filter_yuv_mmx.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/filter_yuv_mmx.cc 1970-01-01 01:00:00.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/filter_yuv_mmx.cc 2016-02-25 00:47:14.978721589 +0100
-@@ -0,0 +1,79 @@
-+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style license that can be
-+// found in the LICENSE file.
-+
-+#if defined(_MSC_VER)
-+#include <intrin.h>
-+#else
-+#include <mmintrin.h>
-+#endif
-+
-+#include "build/build_config.h"
-+#include "media/base/simd/filter_yuv.h"
-+
-+namespace media {
-+
-+#if defined(COMPILER_MSVC)
-+// Warning 4799 is about calling emms before the function exits.
-+// We calls emms in a frame level so suppress this warning.
-+#pragma warning(push)
-+#pragma warning(disable: 4799)
-+#endif
-+
-+void FilterYUVRows_MMX(uint8* dest,
-+ const uint8* src0,
-+ const uint8* src1,
-+ int width,
-+ uint8 fraction) {
-+ int pixel = 0;
-+
-+ // Process the unaligned bytes first.
-+ int unaligned_width =
-+ (8 - (reinterpret_cast<uintptr_t>(dest) & 7)) & 7;
-+ while (pixel < width && pixel < unaligned_width) {
-+ dest[pixel] = (src0[pixel] * (256 - fraction) +
-+ src1[pixel] * fraction) >> 8;
-+ ++pixel;
-+ }
-+
-+ __m64 zero = _mm_setzero_si64();
-+ __m64 src1_fraction = _mm_set1_pi16(fraction);
-+ __m64 src0_fraction = _mm_set1_pi16(256 - fraction);
-+ const __m64* src0_64 = reinterpret_cast<const __m64*>(src0 + pixel);
-+ const __m64* src1_64 = reinterpret_cast<const __m64*>(src1 + pixel);
-+ __m64* dest64 = reinterpret_cast<__m64*>(dest + pixel);
-+ __m64* end64 = reinterpret_cast<__m64*>(
-+ reinterpret_cast<uintptr_t>(dest + width) & ~7);
-+
-+ while (dest64 < end64) {
-+ __m64 src0 = *src0_64++;
-+ __m64 src1 = *src1_64++;
-+ __m64 src2 = _mm_unpackhi_pi8(src0, zero);
-+ __m64 src3 = _mm_unpackhi_pi8(src1, zero);
-+ src0 = _mm_unpacklo_pi8(src0, zero);
-+ src1 = _mm_unpacklo_pi8(src1, zero);
-+ src0 = _mm_mullo_pi16(src0, src0_fraction);
-+ src1 = _mm_mullo_pi16(src1, src1_fraction);
-+ src2 = _mm_mullo_pi16(src2, src0_fraction);
-+ src3 = _mm_mullo_pi16(src3, src1_fraction);
-+ src0 = _mm_add_pi16(src0, src1);
-+ src2 = _mm_add_pi16(src2, src3);
-+ src0 = _mm_srli_pi16(src0, 8);
-+ src2 = _mm_srli_pi16(src2, 8);
-+ src0 = _mm_packs_pu16(src0, src2);
-+ *dest64++ = src0;
-+ pixel += 8;
-+ }
-+
-+ while (pixel < width) {
-+ dest[pixel] = (src0[pixel] * (256 - fraction) +
-+ src1[pixel] * fraction) >> 8;
-+ ++pixel;
-+ }
-+}
-+
-+#if defined(COMPILER_MSVC)
-+#pragma warning(pop)
-+#endif
-+
-+} // namespace media
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/sinc_resampler_sse.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/sinc_resampler_sse.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/sinc_resampler_sse.cc 1970-01-01 01:00:00.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/sinc_resampler_sse.cc 2016-02-25 00:47:14.978721589 +0100
-@@ -0,0 +1,50 @@
-+// Copyright 2013 The Chromium Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style license that can be
-+// found in the LICENSE file.
-+
-+#include "media/base/sinc_resampler.h"
-+
-+#include <xmmintrin.h>
-+
-+namespace media {
-+
-+float SincResampler::Convolve_SSE(const float* input_ptr, const float* k1,
-+ const float* k2,
-+ double kernel_interpolation_factor) {
-+ __m128 m_input;
-+ __m128 m_sums1 = _mm_setzero_ps();
-+ __m128 m_sums2 = _mm_setzero_ps();
-+
-+ // Based on |input_ptr| alignment, we need to use loadu or load. Unrolling
-+ // these loops hurt performance in local testing.
-+ if (reinterpret_cast<uintptr_t>(input_ptr) & 0x0F) {
-+ for (int i = 0; i < kKernelSize; i += 4) {
-+ m_input = _mm_loadu_ps(input_ptr + i);
-+ m_sums1 = _mm_add_ps(m_sums1, _mm_mul_ps(m_input, _mm_load_ps(k1 + i)));
-+ m_sums2 = _mm_add_ps(m_sums2, _mm_mul_ps(m_input, _mm_load_ps(k2 + i)));
-+ }
-+ } else {
-+ for (int i = 0; i < kKernelSize; i += 4) {
-+ m_input = _mm_load_ps(input_ptr + i);
-+ m_sums1 = _mm_add_ps(m_sums1, _mm_mul_ps(m_input, _mm_load_ps(k1 + i)));
-+ m_sums2 = _mm_add_ps(m_sums2, _mm_mul_ps(m_input, _mm_load_ps(k2 + i)));
-+ }
-+ }
-+
-+ // Linearly interpolate the two "convolutions".
-+ m_sums1 = _mm_mul_ps(m_sums1, _mm_set_ps1(
-+ static_cast<float>(1.0 - kernel_interpolation_factor)));
-+ m_sums2 = _mm_mul_ps(m_sums2, _mm_set_ps1(
-+ static_cast<float>(kernel_interpolation_factor)));
-+ m_sums1 = _mm_add_ps(m_sums1, m_sums2);
-+
-+ // Sum components together.
-+ float result;
-+ m_sums2 = _mm_add_ps(_mm_movehl_ps(m_sums1, m_sums1), m_sums1);
-+ _mm_store_ss(&result, _mm_add_ss(m_sums2, _mm_shuffle_ps(
-+ m_sums2, m_sums2, 1)));
-+
-+ return result;
-+}
-+
-+} // namespace media
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/vector_math_sse.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/vector_math_sse.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/simd/vector_math_sse.cc 1970-01-01 01:00:00.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/simd/vector_math_sse.cc 2016-02-25 00:47:14.978721589 +0100
-@@ -0,0 +1,118 @@
-+// Copyright 2013 The Chromium Authors. All rights reserved.
-+// Use of this source code is governed by a BSD-style license that can be
-+// found in the LICENSE file.
-+
-+#include "media/base/vector_math_testing.h"
-+
-+#include <algorithm>
-+
-+#include <xmmintrin.h> // NOLINT
-+
-+namespace media {
-+namespace vector_math {
-+
-+void FMUL_SSE(const float src[], float scale, int len, float dest[]) {
-+ const int rem = len % 4;
-+ const int last_index = len - rem;
-+ __m128 m_scale = _mm_set_ps1(scale);
-+ for (int i = 0; i < last_index; i += 4)
-+ _mm_store_ps(dest + i, _mm_mul_ps(_mm_load_ps(src + i), m_scale));
-+
-+ // Handle any remaining values that wouldn't fit in an SSE pass.
-+ for (int i = last_index; i < len; ++i)
-+ dest[i] = src[i] * scale;
-+}
-+
-+void FMAC_SSE(const float src[], float scale, int len, float dest[]) {
-+ const int rem = len % 4;
-+ const int last_index = len - rem;
-+ __m128 m_scale = _mm_set_ps1(scale);
-+ for (int i = 0; i < last_index; i += 4) {
-+ _mm_store_ps(dest + i, _mm_add_ps(_mm_load_ps(dest + i),
-+ _mm_mul_ps(_mm_load_ps(src + i), m_scale)));
-+ }
-+
-+ // Handle any remaining values that wouldn't fit in an SSE pass.
-+ for (int i = last_index; i < len; ++i)
-+ dest[i] += src[i] * scale;
-+}
-+
-+// Convenience macro to extract float 0 through 3 from the vector |a|. This is
-+// needed because compilers other than clang don't support access via
-+// operator[]().
-+#define EXTRACT_FLOAT(a, i) \
-+ (i == 0 ? \
-+ _mm_cvtss_f32(a) : \
-+ _mm_cvtss_f32(_mm_shuffle_ps(a, a, i)))
-+
-+std::pair<float, float> EWMAAndMaxPower_SSE(
-+ float initial_value, const float src[], int len, float smoothing_factor) {
-+ // When the recurrence is unrolled, we see that we can split it into 4
-+ // separate lanes of evaluation:
-+ //
-+ // y[n] = a(S[n]^2) + (1-a)(y[n-1])
-+ // = a(S[n]^2) + (1-a)^1(aS[n-1]^2) + (1-a)^2(aS[n-2]^2) + ...
-+ // = z[n] + (1-a)^1(z[n-1]) + (1-a)^2(z[n-2]) + (1-a)^3(z[n-3])
-+ //
-+ // where z[n] = a(S[n]^2) + (1-a)^4(z[n-4]) + (1-a)^8(z[n-8]) + ...
-+ //
-+ // Thus, the strategy here is to compute z[n], z[n-1], z[n-2], and z[n-3] in
-+ // each of the 4 lanes, and then combine them to give y[n].
-+
-+ const int rem = len % 4;
-+ const int last_index = len - rem;
-+
-+ const __m128 smoothing_factor_x4 = _mm_set_ps1(smoothing_factor);
-+ const float weight_prev = 1.0f - smoothing_factor;
-+ const __m128 weight_prev_x4 = _mm_set_ps1(weight_prev);
-+ const __m128 weight_prev_squared_x4 =
-+ _mm_mul_ps(weight_prev_x4, weight_prev_x4);
-+ const __m128 weight_prev_4th_x4 =
-+ _mm_mul_ps(weight_prev_squared_x4, weight_prev_squared_x4);
-+
-+ // Compute z[n], z[n-1], z[n-2], and z[n-3] in parallel in lanes 3, 2, 1 and
-+ // 0, respectively.
-+ __m128 max_x4 = _mm_setzero_ps();
-+ __m128 ewma_x4 = _mm_setr_ps(0.0f, 0.0f, 0.0f, initial_value);
-+ int i;
-+ for (i = 0; i < last_index; i += 4) {
-+ ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_4th_x4);
-+ const __m128 sample_x4 = _mm_load_ps(src + i);
-+ const __m128 sample_squared_x4 = _mm_mul_ps(sample_x4, sample_x4);
-+ max_x4 = _mm_max_ps(max_x4, sample_squared_x4);
-+ // Note: The compiler optimizes this to a single multiply-and-accumulate
-+ // instruction:
-+ ewma_x4 = _mm_add_ps(ewma_x4,
-+ _mm_mul_ps(sample_squared_x4, smoothing_factor_x4));
-+ }
-+
-+ // y[n] = z[n] + (1-a)^1(z[n-1]) + (1-a)^2(z[n-2]) + (1-a)^3(z[n-3])
-+ float ewma = EXTRACT_FLOAT(ewma_x4, 3);
-+ ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_x4);
-+ ewma += EXTRACT_FLOAT(ewma_x4, 2);
-+ ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_x4);
-+ ewma += EXTRACT_FLOAT(ewma_x4, 1);
-+ ewma_x4 = _mm_mul_ss(ewma_x4, weight_prev_x4);
-+ ewma += EXTRACT_FLOAT(ewma_x4, 0);
-+
-+ // Fold the maximums together to get the overall maximum.
-+ max_x4 = _mm_max_ps(max_x4,
-+ _mm_shuffle_ps(max_x4, max_x4, _MM_SHUFFLE(3, 3, 1, 1)));
-+ max_x4 = _mm_max_ss(max_x4, _mm_shuffle_ps(max_x4, max_x4, 2));
-+
-+ std::pair<float, float> result(ewma, EXTRACT_FLOAT(max_x4, 0));
-+
-+ // Handle remaining values at the end of |src|.
-+ for (; i < len; ++i) {
-+ result.first *= weight_prev;
-+ const float sample = src[i];
-+ const float sample_squared = sample * sample;
-+ result.first += sample_squared * smoothing_factor;
-+ result.second = std::max(result.second, sample_squared);
-+ }
-+
-+ return result;
-+}
-+
-+} // namespace vector_math
-+} // namespace media
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/sinc_resampler.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/sinc_resampler.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler.cc 2016-02-25 00:47:15.049721970 +0100
-@@ -81,16 +81,11 @@
- #include <cmath>
- #include <limits>
-
-+#include "base/cpu.h"
- #include "base/logging.h"
-
--#if defined(ARCH_CPU_X86_FAMILY)
--#include <xmmintrin.h>
--#define CONVOLVE_FUNC Convolve_SSE
--#elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
-+#if defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
- #include <arm_neon.h>
--#define CONVOLVE_FUNC Convolve_NEON
--#else
--#define CONVOLVE_FUNC Convolve_C
- #endif
-
- namespace media {
-@@ -111,10 +106,41 @@
- return sinc_scale_factor;
- }
-
-+#undef CONVOLVE_FUNC
-+
- static int CalculateChunkSize(int block_size_, double io_ratio) {
- return block_size_ / io_ratio;
- }
-
-+// If we know the minimum architecture at compile time, avoid CPU detection.
-+// Force NaCl code to use C routines since (at present) nothing there uses these
-+// methods and plumbing the -msse built library is non-trivial.
-+#if defined(ARCH_CPU_X86_FAMILY) && !defined(OS_NACL)
-+#if defined(__SSE__)
-+#define CONVOLVE_FUNC Convolve_SSE
-+void SincResampler::InitializeCPUSpecificFeatures() {}
-+#else
-+// X86 CPU detection required. Functions will be set by
-+// InitializeCPUSpecificFeatures().
-+#define CONVOLVE_FUNC g_convolve_proc_
-+
-+typedef float (*ConvolveProc)(const float*, const float*, const float*, double);
-+static ConvolveProc g_convolve_proc_ = NULL;
-+
-+void SincResampler::InitializeCPUSpecificFeatures() {
-+ CHECK(!g_convolve_proc_);
-+ g_convolve_proc_ = base::CPU().has_sse() ? Convolve_SSE : Convolve_C;
-+}
-+#endif
-+#elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
-+#define CONVOLVE_FUNC Convolve_NEON
-+void SincResampler::InitializeCPUSpecificFeatures() {}
-+#else
-+// Unknown architecture.
-+#define CONVOLVE_FUNC Convolve_C
-+void SincResampler::InitializeCPUSpecificFeatures() {}
-+#endif
-+
- SincResampler::SincResampler(double io_sample_rate_ratio,
- int request_frames,
- const ReadCB& read_cb)
-@@ -342,46 +368,7 @@
- kernel_interpolation_factor * sum2);
- }
-
--#if defined(ARCH_CPU_X86_FAMILY)
--float SincResampler::Convolve_SSE(const float* input_ptr, const float* k1,
-- const float* k2,
-- double kernel_interpolation_factor) {
-- __m128 m_input;
-- __m128 m_sums1 = _mm_setzero_ps();
-- __m128 m_sums2 = _mm_setzero_ps();
--
-- // Based on |input_ptr| alignment, we need to use loadu or load. Unrolling
-- // these loops hurt performance in local testing.
-- if (reinterpret_cast<uintptr_t>(input_ptr) & 0x0F) {
-- for (int i = 0; i < kKernelSize; i += 4) {
-- m_input = _mm_loadu_ps(input_ptr + i);
-- m_sums1 = _mm_add_ps(m_sums1, _mm_mul_ps(m_input, _mm_load_ps(k1 + i)));
-- m_sums2 = _mm_add_ps(m_sums2, _mm_mul_ps(m_input, _mm_load_ps(k2 + i)));
-- }
-- } else {
-- for (int i = 0; i < kKernelSize; i += 4) {
-- m_input = _mm_load_ps(input_ptr + i);
-- m_sums1 = _mm_add_ps(m_sums1, _mm_mul_ps(m_input, _mm_load_ps(k1 + i)));
-- m_sums2 = _mm_add_ps(m_sums2, _mm_mul_ps(m_input, _mm_load_ps(k2 + i)));
-- }
-- }
--
-- // Linearly interpolate the two "convolutions".
-- m_sums1 = _mm_mul_ps(m_sums1, _mm_set_ps1(
-- static_cast<float>(1.0 - kernel_interpolation_factor)));
-- m_sums2 = _mm_mul_ps(m_sums2, _mm_set_ps1(
-- static_cast<float>(kernel_interpolation_factor)));
-- m_sums1 = _mm_add_ps(m_sums1, m_sums2);
--
-- // Sum components together.
-- float result;
-- m_sums2 = _mm_add_ps(_mm_movehl_ps(m_sums1, m_sums1), m_sums1);
-- _mm_store_ss(&result, _mm_add_ss(m_sums2, _mm_shuffle_ps(
-- m_sums2, m_sums2, 1)));
--
-- return result;
--}
--#elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
-+#if defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
- float SincResampler::Convolve_NEON(const float* input_ptr, const float* k1,
- const float* k2,
- double kernel_interpolation_factor) {
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/sinc_resampler.h qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler.h
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/sinc_resampler.h 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler.h 2016-02-25 00:47:15.055722002 +0100
-@@ -34,6 +34,10 @@
- kKernelStorageSize = kKernelSize * (kKernelOffsetCount + 1),
- };
-
-+ // Selects runtime specific CPU features like SSE. Must be called before
-+ // using SincResampler.
-+ static void InitializeCPUSpecificFeatures();
-+
- // Callback type for providing more data into the resampler. Expects |frames|
- // of data to be rendered into |destination|; zero padded if not enough frames
- // are available to satisfy the request.
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/sinc_resampler_perftest.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler_perftest.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/sinc_resampler_perftest.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler_perftest.cc 2016-02-25 00:47:15.057722012 +0100
-@@ -4,6 +4,7 @@
-
- #include "base/bind.h"
- #include "base/bind_helpers.h"
-+#include "base/cpu.h"
- #include "base/time/time.h"
- #include "media/base/sinc_resampler.h"
- #include "testing/gmock/include/gmock/gmock.h"
-@@ -60,6 +61,9 @@
- &resampler, SincResampler::Convolve_C, true, "unoptimized_aligned");
-
- #if defined(CONVOLVE_FUNC)
-+#if defined(ARCH_CPU_X86_FAMILY)
-+ ASSERT_TRUE(base::CPU().has_sse());
-+#endif
- RunConvolveBenchmark(
- &resampler, SincResampler::CONVOLVE_FUNC, true, "optimized_aligned");
- RunConvolveBenchmark(
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/sinc_resampler_unittest.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler_unittest.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/sinc_resampler_unittest.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler_unittest.cc 2016-02-25 00:47:15.060722029 +0100
-@@ -9,6 +9,7 @@
-
- #include "base/bind.h"
- #include "base/bind_helpers.h"
-+#include "base/cpu.h"
- #include "base/strings/string_number_conversions.h"
- #include "base/time/time.h"
- #include "build/build_config.h"
-@@ -163,6 +164,10 @@
- static const double kKernelInterpolationFactor = 0.5;
-
- TEST(SincResamplerTest, Convolve) {
-+#if defined(ARCH_CPU_X86_FAMILY)
-+ ASSERT_TRUE(base::CPU().has_sse());
-+#endif
-+
- // Initialize a dummy resampler.
- MockSource mock_source;
- SincResampler resampler(
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/vector_math.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/vector_math.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/vector_math.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/vector_math.cc 2016-02-25 00:47:15.063722045 +0100
-@@ -7,12 +7,17 @@
-
- #include <algorithm>
-
-+#include "base/cpu.h"
- #include "base/logging.h"
- #include "build/build_config.h"
-
-+namespace media {
-+namespace vector_math {
-+
-+// If we know the minimum architecture at compile time, avoid CPU detection.
- // NaCl does not allow intrinsics.
- #if defined(ARCH_CPU_X86_FAMILY) && !defined(OS_NACL)
--#include <xmmintrin.h>
-+#if defined(__SSE__)
- // Don't use custom SSE versions where the auto-vectorized C version performs
- // better, which is anywhere clang is used.
- #if !defined(__clang__)
-@@ -23,20 +28,52 @@
- #define FMUL_FUNC FMUL_C
- #endif
- #define EWMAAndMaxPower_FUNC EWMAAndMaxPower_SSE
-+void Initialize() {}
-+#else
-+// X86 CPU detection required. Functions will be set by Initialize().
-+#if !defined(__clang__)
-+#define FMAC_FUNC g_fmac_proc_
-+#define FMUL_FUNC g_fmul_proc_
-+#else
-+#define FMAC_FUNC FMAC_C
-+#define FMUL_FUNC FMUL_C
-+#endif
-+#define EWMAAndMaxPower_FUNC g_ewma_power_proc_
-+
-+#if !defined(__clang__)
-+typedef void (*MathProc)(const float src[], float scale, int len, float dest[]);
-+static MathProc g_fmac_proc_ = NULL;
-+static MathProc g_fmul_proc_ = NULL;
-+#endif
-+typedef std::pair<float, float> (*EWMAAndMaxPowerProc)(
-+ float initial_value, const float src[], int len, float smoothing_factor);
-+static EWMAAndMaxPowerProc g_ewma_power_proc_ = NULL;
-+
-+void Initialize() {
-+ CHECK(!g_fmac_proc_);
-+ CHECK(!g_fmul_proc_);
-+ CHECK(!g_ewma_power_proc_);
-+ const bool kUseSSE = base::CPU().has_sse();
-+#if !defined(__clang__)
-+ g_fmac_proc_ = kUseSSE ? FMAC_SSE : FMAC_C;
-+ g_fmul_proc_ = kUseSSE ? FMUL_SSE : FMUL_C;
-+#endif
-+ g_ewma_power_proc_ = kUseSSE ? EWMAAndMaxPower_SSE : EWMAAndMaxPower_C;
-+}
-+#endif
- #elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
- #include <arm_neon.h>
- #define FMAC_FUNC FMAC_NEON
- #define FMUL_FUNC FMUL_NEON
- #define EWMAAndMaxPower_FUNC EWMAAndMaxPower_NEON
-+void Initialize() {}
- #else
- #define FMAC_FUNC FMAC_C
- #define FMUL_FUNC FMUL_C
- #define EWMAAndMaxPower_FUNC EWMAAndMaxPower_C
-+void Initialize() {}
- #endif
-
--namespace media {
--namespace vector_math {
--
- void FMAC(const float src[], float scale, int len, float dest[]) {
- // Ensure |src| and |dest| are 16-byte aligned.
- DCHECK_EQ(0u, reinterpret_cast<uintptr_t>(src) & (kRequiredAlignment - 1));
-@@ -89,111 +126,6 @@
- return result;
- }
-
--#if defined(ARCH_CPU_X86_FAMILY) && !defined(OS_NACL)
--void FMUL_SSE(const float src[], float scale, int len, float dest[]) {
-- const int rem = len % 4;
-- const int last_index = len - rem;
-- __m128 m_scale = _mm_set_ps1(scale);
-- for (int i = 0; i < last_index; i += 4)
-- _mm_store_ps(dest + i, _mm_mul_ps(_mm_load_ps(src + i), m_scale));
--
-- // Handle any remaining values that wouldn't fit in an SSE pass.
-- for (int i = last_index; i < len; ++i)
-- dest[i] = src[i] * scale;
--}
--
--void FMAC_SSE(const float src[], float scale, int len, float dest[]) {
-- const int rem = len % 4;
-- const int last_index = len - rem;
-- __m128 m_scale = _mm_set_ps1(scale);
-- for (int i = 0; i < last_index; i += 4) {
-- _mm_store_ps(dest + i, _mm_add_ps(_mm_load_ps(dest + i),
-- _mm_mul_ps(_mm_load_ps(src + i), m_scale)));
-- }
--
-- // Handle any remaining values that wouldn't fit in an SSE pass.
-- for (int i = last_index; i < len; ++i)
-- dest[i] += src[i] * scale;
--}
--
--// Convenience macro to extract float 0 through 3 from the vector |a|. This is
--// needed because compilers other than clang don't support access via
--// operator[]().
--#define EXTRACT_FLOAT(a, i) \
-- (i == 0 ? \
-- _mm_cvtss_f32(a) : \
-- _mm_cvtss_f32(_mm_shuffle_ps(a, a, i)))
--
--std::pair<float, float> EWMAAndMaxPower_SSE(
-- float initial_value, const float src[], int len, float smoothing_factor) {
-- // When the recurrence is unrolled, we see that we can split it into 4
-- // separate lanes of evaluation:
-- //
-- // y[n] = a(S[n]^2) + (1-a)(y[n-1])
-- // = a(S[n]^2) + (1-a)^1(aS[n-1]^2) + (1-a)^2(aS[n-2]^2) + ...
-- // = z[n] + (1-a)^1(z[n-1]) + (1-a)^2(z[n-2]) + (1-a)^3(z[n-3])
-- //
-- // where z[n] = a(S[n]^2) + (1-a)^4(z[n-4]) + (1-a)^8(z[n-8]) + ...
-- //
-- // Thus, the strategy here is to compute z[n], z[n-1], z[n-2], and z[n-3] in
-- // each of the 4 lanes, and then combine them to give y[n].
--
-- const int rem = len % 4;
-- const int last_index = len - rem;
--
-- const __m128 smoothing_factor_x4 = _mm_set_ps1(smoothing_factor);
-- const float weight_prev = 1.0f - smoothing_factor;
-- const __m128 weight_prev_x4 = _mm_set_ps1(weight_prev);
-- const __m128 weight_prev_squared_x4 =
-- _mm_mul_ps(weight_prev_x4, weight_prev_x4);
-- const __m128 weight_prev_4th_x4 =
-- _mm_mul_ps(weight_prev_squared_x4, weight_prev_squared_x4);
--
-- // Compute z[n], z[n-1], z[n-2], and z[n-3] in parallel in lanes 3, 2, 1 and
-- // 0, respectively.
-- __m128 max_x4 = _mm_setzero_ps();
-- __m128 ewma_x4 = _mm_setr_ps(0.0f, 0.0f, 0.0f, initial_value);
-- int i;
-- for (i = 0; i < last_index; i += 4) {
-- ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_4th_x4);
-- const __m128 sample_x4 = _mm_load_ps(src + i);
-- const __m128 sample_squared_x4 = _mm_mul_ps(sample_x4, sample_x4);
-- max_x4 = _mm_max_ps(max_x4, sample_squared_x4);
-- // Note: The compiler optimizes this to a single multiply-and-accumulate
-- // instruction:
-- ewma_x4 = _mm_add_ps(ewma_x4,
-- _mm_mul_ps(sample_squared_x4, smoothing_factor_x4));
-- }
--
-- // y[n] = z[n] + (1-a)^1(z[n-1]) + (1-a)^2(z[n-2]) + (1-a)^3(z[n-3])
-- float ewma = EXTRACT_FLOAT(ewma_x4, 3);
-- ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_x4);
-- ewma += EXTRACT_FLOAT(ewma_x4, 2);
-- ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_x4);
-- ewma += EXTRACT_FLOAT(ewma_x4, 1);
-- ewma_x4 = _mm_mul_ss(ewma_x4, weight_prev_x4);
-- ewma += EXTRACT_FLOAT(ewma_x4, 0);
--
-- // Fold the maximums together to get the overall maximum.
-- max_x4 = _mm_max_ps(max_x4,
-- _mm_shuffle_ps(max_x4, max_x4, _MM_SHUFFLE(3, 3, 1, 1)));
-- max_x4 = _mm_max_ss(max_x4, _mm_shuffle_ps(max_x4, max_x4, 2));
--
-- std::pair<float, float> result(ewma, EXTRACT_FLOAT(max_x4, 0));
--
-- // Handle remaining values at the end of |src|.
-- for (; i < len; ++i) {
-- result.first *= weight_prev;
-- const float sample = src[i];
-- const float sample_squared = sample * sample;
-- result.first += sample_squared * smoothing_factor;
-- result.second = std::max(result.second, sample_squared);
-- }
--
-- return result;
--}
--#endif
--
- #if defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
- void FMAC_NEON(const float src[], float scale, int len, float dest[]) {
- const int rem = len % 4;
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/vector_math.h qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/vector_math.h
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/vector_math.h 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/vector_math.h 2016-02-25 00:47:15.068722072 +0100
-@@ -15,6 +15,11 @@
- // Required alignment for inputs and outputs to all vector math functions
- enum { kRequiredAlignment = 16 };
-
-+// Selects runtime specific optimizations such as SSE. Must be called prior to
-+// calling FMAC() or FMUL(). Called during media library initialization; most
-+// users should never have to call this.
-+MEDIA_EXPORT void Initialize();
-+
- // Multiply each element of |src| (up to |len|) by |scale| and add to |dest|.
- // |src| and |dest| must be aligned by kRequiredAlignment.
- MEDIA_EXPORT void FMAC(const float src[], float scale, int len, float dest[]);
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/vector_math_perftest.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/vector_math_perftest.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/vector_math_perftest.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/vector_math_perftest.cc 2016-02-25 00:47:15.068722072 +0100
-@@ -2,6 +2,7 @@
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
-
-+#include "base/cpu.h"
- #include "base/memory/aligned_memory.h"
- #include "base/memory/scoped_ptr.h"
- #include "base/time/time.h"
-@@ -79,15 +80,11 @@
- DISALLOW_COPY_AND_ASSIGN(VectorMathPerfTest);
- };
-
--// Define platform dependent function names for SIMD optimized methods.
-+// Define platform independent function name for FMAC* perf tests.
- #if defined(ARCH_CPU_X86_FAMILY)
- #define FMAC_FUNC FMAC_SSE
--#define FMUL_FUNC FMUL_SSE
--#define EWMAAndMaxPower_FUNC EWMAAndMaxPower_SSE
- #elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
- #define FMAC_FUNC FMAC_NEON
--#define FMUL_FUNC FMUL_NEON
--#define EWMAAndMaxPower_FUNC EWMAAndMaxPower_NEON
- #endif
-
- // Benchmark for each optimized vector_math::FMAC() method.
-@@ -96,6 +93,9 @@
- RunBenchmark(
- vector_math::FMAC_C, true, "vector_math_fmac", "unoptimized");
- #if defined(FMAC_FUNC)
-+#if defined(ARCH_CPU_X86_FAMILY)
-+ ASSERT_TRUE(base::CPU().has_sse());
-+#endif
- // Benchmark FMAC_FUNC() with unaligned size.
- ASSERT_NE((kVectorSize - 1) % (vector_math::kRequiredAlignment /
- sizeof(float)), 0U);
-@@ -109,12 +109,24 @@
- #endif
- }
-
-+#undef FMAC_FUNC
-+
-+// Define platform independent function name for FMULBenchmark* tests.
-+#if defined(ARCH_CPU_X86_FAMILY)
-+#define FMUL_FUNC FMUL_SSE
-+#elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
-+#define FMUL_FUNC FMUL_NEON
-+#endif
-+
- // Benchmark for each optimized vector_math::FMUL() method.
- TEST_F(VectorMathPerfTest, FMUL) {
- // Benchmark FMUL_C().
- RunBenchmark(
- vector_math::FMUL_C, true, "vector_math_fmul", "unoptimized");
- #if defined(FMUL_FUNC)
-+#if defined(ARCH_CPU_X86_FAMILY)
-+ ASSERT_TRUE(base::CPU().has_sse());
-+#endif
- // Benchmark FMUL_FUNC() with unaligned size.
- ASSERT_NE((kVectorSize - 1) % (vector_math::kRequiredAlignment /
- sizeof(float)), 0U);
-@@ -128,6 +140,14 @@
- #endif
- }
-
-+#undef FMUL_FUNC
-+
-+#if defined(ARCH_CPU_X86_FAMILY)
-+#define EWMAAndMaxPower_FUNC EWMAAndMaxPower_SSE
-+#elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
-+#define EWMAAndMaxPower_FUNC EWMAAndMaxPower_NEON
-+#endif
-+
- // Benchmark for each optimized vector_math::EWMAAndMaxPower() method.
- TEST_F(VectorMathPerfTest, EWMAAndMaxPower) {
- // Benchmark EWMAAndMaxPower_C().
-@@ -136,6 +156,9 @@
- "vector_math_ewma_and_max_power",
- "unoptimized");
- #if defined(EWMAAndMaxPower_FUNC)
-+#if defined(ARCH_CPU_X86_FAMILY)
-+ ASSERT_TRUE(base::CPU().has_sse());
-+#endif
- // Benchmark EWMAAndMaxPower_FUNC() with unaligned size.
- ASSERT_NE((kVectorSize - 1) % (vector_math::kRequiredAlignment /
- sizeof(float)), 0U);
-@@ -153,4 +176,6 @@
- #endif
- }
-
-+#undef EWMAAndMaxPower_FUNC
-+
- } // namespace media
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/vector_math_testing.h qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/vector_math_testing.h
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/vector_math_testing.h 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/vector_math_testing.h 2016-02-25 00:47:15.076722114 +0100
-@@ -19,7 +19,7 @@
- MEDIA_EXPORT std::pair<float, float> EWMAAndMaxPower_C(
- float initial_value, const float src[], int len, float smoothing_factor);
-
--#if defined(ARCH_CPU_X86_FAMILY) && !defined(OS_NACL)
-+#if defined(ARCH_CPU_X86_FAMILY)
- MEDIA_EXPORT void FMAC_SSE(const float src[], float scale, int len,
- float dest[]);
- MEDIA_EXPORT void FMUL_SSE(const float src[], float scale, int len,
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/vector_math_unittest.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/vector_math_unittest.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/vector_math_unittest.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/vector_math_unittest.cc 2016-02-25 00:47:15.084722157 +0100
-@@ -6,6 +6,7 @@
- #define _USE_MATH_DEFINES
- #include <cmath>
-
-+#include "base/cpu.h"
- #include "base/memory/aligned_memory.h"
- #include "base/memory/scoped_ptr.h"
- #include "base/strings/string_number_conversions.h"
-@@ -75,6 +76,7 @@
-
- #if defined(ARCH_CPU_X86_FAMILY)
- {
-+ ASSERT_TRUE(base::CPU().has_sse());
- SCOPED_TRACE("FMAC_SSE");
- FillTestVectors(kInputFillValue, kOutputFillValue);
- vector_math::FMAC_SSE(
-@@ -116,6 +118,7 @@
-
- #if defined(ARCH_CPU_X86_FAMILY)
- {
-+ ASSERT_TRUE(base::CPU().has_sse());
- SCOPED_TRACE("FMUL_SSE");
- FillTestVectors(kInputFillValue, kOutputFillValue);
- vector_math::FMUL_SSE(
-@@ -224,6 +227,7 @@
-
- #if defined(ARCH_CPU_X86_FAMILY)
- {
-+ ASSERT_TRUE(base::CPU().has_sse());
- SCOPED_TRACE("EWMAAndMaxPower_SSE");
- const std::pair<float, float>& result = vector_math::EWMAAndMaxPower_SSE(
- initial_value_, data_.get(), data_len_, smoothing_factor_);
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/yuv_convert.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/yuv_convert.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/yuv_convert.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/yuv_convert.cc 2016-02-25 00:47:15.088722179 +0100
-@@ -29,7 +29,7 @@
- #include "media/base/simd/convert_yuv_to_rgb.h"
- #include "media/base/simd/filter_yuv.h"
-
--#if defined(ARCH_CPU_X86_FAMILY)
-+#if defined(ARCH_CPU_X86_FAMILY) && defined(__MMX__)
- #if defined(COMPILER_MSVC)
- #include <intrin.h>
- #else
-@@ -133,7 +133,7 @@
-
- // Empty SIMD registers state after using them.
- void EmptyRegisterStateStub() {}
--#if defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
-+#if defined(MEDIA_MMX_INTRINSICS_AVAILABLE) && defined(__MMX__)
- void EmptyRegisterStateIntrinsic() { _mm_empty(); }
- #endif
- typedef void (*EmptyRegisterStateProc)();
-@@ -247,34 +247,46 @@
- // Assembly code confuses MemorySanitizer. Also not available in iOS builds.
- #if defined(ARCH_CPU_X86_FAMILY) && !defined(MEMORY_SANITIZER) && \
- !defined(OS_IOS)
-- g_convert_yuva_to_argb_proc_ = ConvertYUVAToARGB_MMX;
-+ base::CPU cpu;
-+ if (cpu.has_mmx()) {
-+ g_convert_yuv_to_rgb32_row_proc_ = ConvertYUVToRGB32Row_MMX;
-+ g_scale_yuv_to_rgb32_row_proc_ = ScaleYUVToRGB32Row_MMX;
-+ g_convert_yuv_to_rgb32_proc_ = ConvertYUVToRGB32_MMX;
-+ g_convert_yuva_to_argb_proc_ = ConvertYUVAToARGB_MMX;
-+ g_linear_scale_yuv_to_rgb32_row_proc_ = LinearScaleYUVToRGB32Row_MMX;
-
- #if defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
-- g_empty_register_state_proc_ = EmptyRegisterStateIntrinsic;
-+ g_filter_yuv_rows_proc_ = FilterYUVRows_MMX;
-+#endif
-+#if defined(MEDIA_MMX_INTRINSICS_AVAILABLE) && defined(__MMX__)
-+ g_empty_register_state_proc_ = EmptyRegisterStateIntrinsic;
- #else
-- g_empty_register_state_proc_ = EmptyRegisterState_MMX;
-+ g_empty_register_state_proc_ = EmptyRegisterState_MMX;
- #endif
-+ }
-
-- g_convert_yuv_to_rgb32_row_proc_ = ConvertYUVToRGB32Row_SSE;
-- g_convert_yuv_to_rgb32_proc_ = ConvertYUVToRGB32_SSE;
-+ if (cpu.has_sse()) {
-+ g_convert_yuv_to_rgb32_row_proc_ = ConvertYUVToRGB32Row_SSE;
-+ g_scale_yuv_to_rgb32_row_proc_ = ScaleYUVToRGB32Row_SSE;
-+ g_linear_scale_yuv_to_rgb32_row_proc_ = LinearScaleYUVToRGB32Row_SSE;
-+ g_convert_yuv_to_rgb32_proc_ = ConvertYUVToRGB32_SSE;
-+ }
-
-- g_filter_yuv_rows_proc_ = FilterYUVRows_SSE2;
-- g_convert_rgb32_to_yuv_proc_ = ConvertRGB32ToYUV_SSE2;
-+ if (cpu.has_sse2()) {
-+ g_filter_yuv_rows_proc_ = FilterYUVRows_SSE2;
-+ g_convert_rgb32_to_yuv_proc_ = ConvertRGB32ToYUV_SSE2;
-
- #if defined(ARCH_CPU_X86_64)
-- g_scale_yuv_to_rgb32_row_proc_ = ScaleYUVToRGB32Row_SSE2_X64;
-+ g_scale_yuv_to_rgb32_row_proc_ = ScaleYUVToRGB32Row_SSE2_X64;
-
-- // Technically this should be in the MMX section, but MSVC will optimize out
-- // the export of LinearScaleYUVToRGB32Row_MMX, which is required by the unit
-- // tests, if that decision can be made at compile time. Since all X64 CPUs
-- // have SSE2, we can hack around this by making the selection here.
-- g_linear_scale_yuv_to_rgb32_row_proc_ = LinearScaleYUVToRGB32Row_MMX_X64;
--#else
-- g_scale_yuv_to_rgb32_row_proc_ = ScaleYUVToRGB32Row_SSE;
-- g_linear_scale_yuv_to_rgb32_row_proc_ = LinearScaleYUVToRGB32Row_SSE;
-+ // Technically this should be in the MMX section, but MSVC will optimize out
-+ // the export of LinearScaleYUVToRGB32Row_MMX, which is required by the unit
-+ // tests, if that decision can be made at compile time. Since all X64 CPUs
-+ // have SSE2, we can hack around this by making the selection here.
-+ g_linear_scale_yuv_to_rgb32_row_proc_ = LinearScaleYUVToRGB32Row_MMX_X64;
- #endif
-+ }
-
-- base::CPU cpu;
- if (cpu.has_ssse3()) {
- g_convert_rgb24_to_yuv_proc_ = &ConvertRGB24ToYUV_SSSE3;
-
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/yuv_convert_perftest.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/yuv_convert_perftest.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/yuv_convert_perftest.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/yuv_convert_perftest.cc 2016-02-25 00:47:15.089722184 +0100
-@@ -64,6 +64,31 @@
- DISALLOW_COPY_AND_ASSIGN(YUVConvertPerfTest);
- };
-
-+TEST_F(YUVConvertPerfTest, ConvertYUVToRGB32Row_MMX) {
-+ ASSERT_TRUE(base::CPU().has_mmx());
-+
-+ base::TimeTicks start = base::TimeTicks::HighResNow();
-+ for (int i = 0; i < kPerfTestIterations; ++i) {
-+ for (int row = 0; row < kSourceHeight; ++row) {
-+ int chroma_row = row / 2;
-+ ConvertYUVToRGB32Row_MMX(
-+ yuv_bytes_.get() + row * kSourceWidth,
-+ yuv_bytes_.get() + kSourceUOffset + (chroma_row * kSourceWidth / 2),
-+ yuv_bytes_.get() + kSourceVOffset + (chroma_row * kSourceWidth / 2),
-+ rgb_bytes_converted_.get(),
-+ kWidth,
-+ GetLookupTable(YV12));
-+ }
-+ }
-+ double total_time_seconds =
-+ (base::TimeTicks::HighResNow() - start).InSecondsF();
-+ perf_test::PrintResult(
-+ "yuv_convert_perftest", "", "ConvertYUVToRGB32Row_MMX",
-+ kPerfTestIterations / total_time_seconds, "runs/s", true);
-+
-+ media::EmptyRegisterState();
-+}
-+
- TEST_F(YUVConvertPerfTest, ConvertYUVToRGB32Row_SSE) {
- ASSERT_TRUE(base::CPU().has_sse());
-
-@@ -87,9 +112,33 @@
- media::EmptyRegisterState();
- }
-
--// 64-bit release + component builds on Windows are too smart and optimizes
--// away the function being tested.
--#if defined(OS_WIN) && (defined(ARCH_CPU_X86) || !defined(COMPONENT_BUILD))
-+TEST_F(YUVConvertPerfTest, ScaleYUVToRGB32Row_MMX) {
-+ ASSERT_TRUE(base::CPU().has_mmx());
-+
-+ const int kSourceDx = 80000; // This value means a scale down.
-+
-+ base::TimeTicks start = base::TimeTicks::HighResNow();
-+ for (int i = 0; i < kPerfTestIterations; ++i) {
-+ for (int row = 0; row < kSourceHeight; ++row) {
-+ int chroma_row = row / 2;
-+ ScaleYUVToRGB32Row_MMX(
-+ yuv_bytes_.get() + row * kSourceWidth,
-+ yuv_bytes_.get() + kSourceUOffset + (chroma_row * kSourceWidth / 2),
-+ yuv_bytes_.get() + kSourceVOffset + (chroma_row * kSourceWidth / 2),
-+ rgb_bytes_converted_.get(),
-+ kWidth,
-+ kSourceDx,
-+ GetLookupTable(YV12));
-+ }
-+ }
-+ double total_time_seconds =
-+ (base::TimeTicks::HighResNow() - start).InSecondsF();
-+ perf_test::PrintResult(
-+ "yuv_convert_perftest", "", "ScaleYUVToRGB32Row_MMX",
-+ kPerfTestIterations / total_time_seconds, "runs/s", true);
-+ media::EmptyRegisterState();
-+}
-+
- TEST_F(YUVConvertPerfTest, ScaleYUVToRGB32Row_SSE) {
- ASSERT_TRUE(base::CPU().has_sse());
-
-@@ -116,6 +165,33 @@
- media::EmptyRegisterState();
- }
-
-+TEST_F(YUVConvertPerfTest, LinearScaleYUVToRGB32Row_MMX) {
-+ ASSERT_TRUE(base::CPU().has_mmx());
-+
-+ const int kSourceDx = 80000; // This value means a scale down.
-+
-+ base::TimeTicks start = base::TimeTicks::HighResNow();
-+ for (int i = 0; i < kPerfTestIterations; ++i) {
-+ for (int row = 0; row < kSourceHeight; ++row) {
-+ int chroma_row = row / 2;
-+ LinearScaleYUVToRGB32Row_MMX(
-+ yuv_bytes_.get() + row * kSourceWidth,
-+ yuv_bytes_.get() + kSourceUOffset + (chroma_row * kSourceWidth / 2),
-+ yuv_bytes_.get() + kSourceVOffset + (chroma_row * kSourceWidth / 2),
-+ rgb_bytes_converted_.get(),
-+ kWidth,
-+ kSourceDx,
-+ GetLookupTable(YV12));
-+ }
-+ }
-+ double total_time_seconds =
-+ (base::TimeTicks::HighResNow() - start).InSecondsF();
-+ perf_test::PrintResult(
-+ "yuv_convert_perftest", "", "LinearScaleYUVToRGB32Row_MMX",
-+ kPerfTestIterations / total_time_seconds, "runs/s", true);
-+ media::EmptyRegisterState();
-+}
-+
- TEST_F(YUVConvertPerfTest, LinearScaleYUVToRGB32Row_SSE) {
- ASSERT_TRUE(base::CPU().has_sse());
-
-@@ -141,7 +217,6 @@
- kPerfTestIterations / total_time_seconds, "runs/s", true);
- media::EmptyRegisterState();
- }
--#endif // defined(OS_WIN) && (ARCH_CPU_X86 || COMPONENT_BUILD)
-
- #endif // !defined(ARCH_CPU_ARM_FAMILY) && !defined(ARCH_CPU_MIPS_FAMILY)
-
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/yuv_convert_unittest.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/yuv_convert_unittest.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/base/yuv_convert_unittest.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/base/yuv_convert_unittest.cc 2016-02-25 00:47:15.090722190 +0100
-@@ -658,6 +658,37 @@
- EXPECT_EQ(0, error);
- }
-
-+TEST(YUVConvertTest, ConvertYUVToRGB32Row_MMX) {
-+ base::CPU cpu;
-+ if (!cpu.has_mmx()) {
-+ LOG(WARNING) << "System not supported. Test skipped.";
-+ return;
-+ }
-+
-+ scoped_ptr<uint8[]> yuv_bytes(new uint8[kYUV12Size]);
-+ scoped_ptr<uint8[]> rgb_bytes_reference(new uint8[kRGBSize]);
-+ scoped_ptr<uint8[]> rgb_bytes_converted(new uint8[kRGBSize]);
-+ ReadYV12Data(&yuv_bytes);
-+
-+ const int kWidth = 167;
-+ ConvertYUVToRGB32Row_C(yuv_bytes.get(),
-+ yuv_bytes.get() + kSourceUOffset,
-+ yuv_bytes.get() + kSourceVOffset,
-+ rgb_bytes_reference.get(),
-+ kWidth,
-+ GetLookupTable(YV12));
-+ ConvertYUVToRGB32Row_MMX(yuv_bytes.get(),
-+ yuv_bytes.get() + kSourceUOffset,
-+ yuv_bytes.get() + kSourceVOffset,
-+ rgb_bytes_converted.get(),
-+ kWidth,
-+ GetLookupTable(YV12));
-+ media::EmptyRegisterState();
-+ EXPECT_EQ(0, memcmp(rgb_bytes_reference.get(),
-+ rgb_bytes_converted.get(),
-+ kWidth * kBpp));
-+}
-+
- TEST(YUVConvertTest, ConvertYUVToRGB32Row_SSE) {
- base::CPU cpu;
- if (!cpu.has_sse()) {
-@@ -689,9 +720,40 @@
- kWidth * kBpp));
- }
-
--// 64-bit release + component builds on Windows are too smart and optimizes
--// away the function being tested.
--#if defined(OS_WIN) && (defined(ARCH_CPU_X86) || !defined(COMPONENT_BUILD))
-+TEST(YUVConvertTest, ScaleYUVToRGB32Row_MMX) {
-+ base::CPU cpu;
-+ if (!cpu.has_mmx()) {
-+ LOG(WARNING) << "System not supported. Test skipped.";
-+ return;
-+ }
-+
-+ scoped_ptr<uint8[]> yuv_bytes(new uint8[kYUV12Size]);
-+ scoped_ptr<uint8[]> rgb_bytes_reference(new uint8[kRGBSize]);
-+ scoped_ptr<uint8[]> rgb_bytes_converted(new uint8[kRGBSize]);
-+ ReadYV12Data(&yuv_bytes);
-+
-+ const int kWidth = 167;
-+ const int kSourceDx = 80000; // This value means a scale down.
-+ ScaleYUVToRGB32Row_C(yuv_bytes.get(),
-+ yuv_bytes.get() + kSourceUOffset,
-+ yuv_bytes.get() + kSourceVOffset,
-+ rgb_bytes_reference.get(),
-+ kWidth,
-+ kSourceDx,
-+ GetLookupTable(YV12));
-+ ScaleYUVToRGB32Row_MMX(yuv_bytes.get(),
-+ yuv_bytes.get() + kSourceUOffset,
-+ yuv_bytes.get() + kSourceVOffset,
-+ rgb_bytes_converted.get(),
-+ kWidth,
-+ kSourceDx,
-+ GetLookupTable(YV12));
-+ media::EmptyRegisterState();
-+ EXPECT_EQ(0, memcmp(rgb_bytes_reference.get(),
-+ rgb_bytes_converted.get(),
-+ kWidth * kBpp));
-+}
-+
- TEST(YUVConvertTest, ScaleYUVToRGB32Row_SSE) {
- base::CPU cpu;
- if (!cpu.has_sse()) {
-@@ -726,6 +788,40 @@
- kWidth * kBpp));
- }
-
-+TEST(YUVConvertTest, LinearScaleYUVToRGB32Row_MMX) {
-+ base::CPU cpu;
-+ if (!cpu.has_mmx()) {
-+ LOG(WARNING) << "System not supported. Test skipped.";
-+ return;
-+ }
-+
-+ scoped_ptr<uint8[]> yuv_bytes(new uint8[kYUV12Size]);
-+ scoped_ptr<uint8[]> rgb_bytes_reference(new uint8[kRGBSize]);
-+ scoped_ptr<uint8[]> rgb_bytes_converted(new uint8[kRGBSize]);
-+ ReadYV12Data(&yuv_bytes);
-+
-+ const int kWidth = 167;
-+ const int kSourceDx = 80000; // This value means a scale down.
-+ LinearScaleYUVToRGB32Row_C(yuv_bytes.get(),
-+ yuv_bytes.get() + kSourceUOffset,
-+ yuv_bytes.get() + kSourceVOffset,
-+ rgb_bytes_reference.get(),
-+ kWidth,
-+ kSourceDx,
-+ GetLookupTable(YV12));
-+ LinearScaleYUVToRGB32Row_MMX(yuv_bytes.get(),
-+ yuv_bytes.get() + kSourceUOffset,
-+ yuv_bytes.get() + kSourceVOffset,
-+ rgb_bytes_converted.get(),
-+ kWidth,
-+ kSourceDx,
-+ GetLookupTable(YV12));
-+ media::EmptyRegisterState();
-+ EXPECT_EQ(0, memcmp(rgb_bytes_reference.get(),
-+ rgb_bytes_converted.get(),
-+ kWidth * kBpp));
-+}
-+
- TEST(YUVConvertTest, LinearScaleYUVToRGB32Row_SSE) {
- base::CPU cpu;
- if (!cpu.has_sse()) {
-@@ -759,7 +855,6 @@
- rgb_bytes_converted.get(),
- kWidth * kBpp));
- }
--#endif // defined(OS_WIN) && (ARCH_CPU_X86 || COMPONENT_BUILD)
-
- TEST(YUVConvertTest, FilterYUVRows_C_OutOfBounds) {
- scoped_ptr<uint8[]> src(new uint8[16]);
-@@ -776,6 +871,30 @@
- }
- }
-
-+#if defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
-+TEST(YUVConvertTest, FilterYUVRows_MMX_OutOfBounds) {
-+ base::CPU cpu;
-+ if (!cpu.has_mmx()) {
-+ LOG(WARNING) << "System not supported. Test skipped.";
-+ return;
-+ }
-+
-+ scoped_ptr<uint8[]> src(new uint8[16]);
-+ scoped_ptr<uint8[]> dst(new uint8[16]);
-+
-+ memset(src.get(), 0xff, 16);
-+ memset(dst.get(), 0, 16);
-+
-+ media::FilterYUVRows_MMX(dst.get(), src.get(), src.get(), 1, 255);
-+ media::EmptyRegisterState();
-+
-+ EXPECT_EQ(255u, dst[0]);
-+ for (int i = 1; i < 16; ++i) {
-+ EXPECT_EQ(0u, dst[i]);
-+ }
-+}
-+#endif // defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
-+
- TEST(YUVConvertTest, FilterYUVRows_SSE2_OutOfBounds) {
- base::CPU cpu;
- if (!cpu.has_sse2()) {
-@@ -797,6 +916,38 @@
- }
- }
-
-+#if defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
-+TEST(YUVConvertTest, FilterYUVRows_MMX_UnalignedDestination) {
-+ base::CPU cpu;
-+ if (!cpu.has_mmx()) {
-+ LOG(WARNING) << "System not supported. Test skipped.";
-+ return;
-+ }
-+
-+ const int kSize = 32;
-+ scoped_ptr<uint8[]> src(new uint8[kSize]);
-+ scoped_ptr<uint8[]> dst_sample(new uint8[kSize]);
-+ scoped_ptr<uint8[]> dst(new uint8[kSize]);
-+
-+ memset(dst_sample.get(), 0, kSize);
-+ memset(dst.get(), 0, kSize);
-+ for (int i = 0; i < kSize; ++i)
-+ src[i] = 100 + i;
-+
-+ media::FilterYUVRows_C(dst_sample.get(),
-+ src.get(), src.get(), 17, 128);
-+
-+ // Generate an unaligned output address.
-+ uint8* dst_ptr =
-+ reinterpret_cast<uint8*>(
-+ (reinterpret_cast<uintptr_t>(dst.get() + 8) & ~7) + 1);
-+ media::FilterYUVRows_MMX(dst_ptr, src.get(), src.get(), 17, 128);
-+ media::EmptyRegisterState();
-+
-+ EXPECT_EQ(0, memcmp(dst_sample.get(), dst_ptr, 17));
-+}
-+#endif // defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
-+
- TEST(YUVConvertTest, FilterYUVRows_SSE2_UnalignedDestination) {
- base::CPU cpu;
- if (!cpu.has_sse2()) {
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/BUILD.gn qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/BUILD.gn
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/BUILD.gn 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/BUILD.gn 2016-02-25 00:47:15.118722340 +0100
-@@ -747,6 +747,26 @@
- deps = [
- "//base",
- ]
-+ if (current_cpu == "x86" || current_cpu == "x64") {
-+ deps += [
-+ ":shared_memory_support_sse",
-+ ]
-+ }
-+}
-+
-+if (current_cpu == "x86" || current_cpu == "x64") {
-+ source_set("shared_memory_support_sse") {
-+ sources = [
-+ "base/simd/vector_math_sse.cc",
-+ ]
-+ configs += [
-+ "//media:media_config",
-+ "//media:media_implementation",
-+ ]
-+ if (!is_win) {
-+ cflags = [ "-msse" ]
-+ }
-+ }
- }
-
- if (media_use_ffmpeg) {
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/media.gyp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/media.gyp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/media/media.gyp 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/media/media.gyp 2016-02-25 00:47:15.126722383 +0100
-@@ -1053,12 +1053,12 @@
- ['target_arch=="ia32" or target_arch=="x64"', {
- 'dependencies': [
- 'media_asm',
-+ 'media_mmx',
-+ 'media_sse',
-+ 'media_sse2',
- ],
- 'sources': [
-- 'base/simd/convert_rgb_to_yuv_sse2.cc',
-- 'base/simd/convert_rgb_to_yuv_ssse3.cc',
- 'base/simd/convert_yuv_to_rgb_x86.cc',
-- 'base/simd/filter_yuv_sse2.cc',
- ],
- }],
- ['OS!="linux" and OS!="win"', {
-@@ -1572,6 +1572,11 @@
- 'USE_NEON'
- ],
- }],
-+ ['target_arch=="ia32" or target_arch=="x64"', {
-+ 'dependencies': [
-+ 'shared_memory_support_sse'
-+ ],
-+ }],
- ],
- },
- ],
-@@ -1583,6 +1588,7 @@
- 'type': 'static_library',
- 'sources': [
- 'base/simd/convert_rgb_to_yuv_ssse3.asm',
-+ 'base/simd/convert_yuv_to_rgb_mmx.asm',
- 'base/simd/convert_yuv_to_rgb_sse.asm',
- 'base/simd/convert_yuva_to_argb_mmx.asm',
- 'base/simd/empty_register_state_mmx.asm',
-@@ -1663,6 +1669,75 @@
- '../third_party/yasm/yasm_compile.gypi',
- ],
- },
-+ {
-+ # GN version: //media/base:media_mmx
-+ 'target_name': 'media_mmx',
-+ 'type': 'static_library',
-+ 'cflags': [
-+ '-mmmx',
-+ ],
-+ 'defines': [
-+ 'MEDIA_IMPLEMENTATION',
-+ ],
-+ 'include_dirs': [
-+ '..',
-+ ],
-+ 'sources': [
-+ 'base/simd/filter_yuv_mmx.cc',
-+ ],
-+ },
-+ {
-+ # GN version: //media/base:media_sse
-+ 'target_name': 'media_sse',
-+ 'type': 'static_library',
-+ 'cflags': [
-+ '-msse',
-+ ],
-+ 'defines': [
-+ 'MEDIA_IMPLEMENTATION',
-+ ],
-+ 'include_dirs': [
-+ '..',
-+ ],
-+ 'sources': [
-+ 'base/simd/sinc_resampler_sse.cc',
-+ ],
-+ },
-+ {
-+ # GN version: //media/base:media_sse2
-+ 'target_name': 'media_sse2',
-+ 'type': 'static_library',
-+ 'cflags': [
-+ '-msse2',
-+ ],
-+ 'defines': [
-+ 'MEDIA_IMPLEMENTATION',
-+ ],
-+ 'include_dirs': [
-+ '..',
-+ ],
-+ 'sources': [
-+ 'base/simd/convert_rgb_to_yuv_sse2.cc',
-+ 'base/simd/convert_rgb_to_yuv_ssse3.cc',
-+ 'base/simd/filter_yuv_sse2.cc',
-+ ],
-+ },
-+ {
-+ 'target_name': 'shared_memory_support_sse',
-+ 'type': 'static_library',
-+ 'cflags': [
-+ '-msse',
-+ ],
-+ 'defines': [
-+ 'MEDIA_IMPLEMENTATION',
-+ ],
-+ 'include_dirs': [
-+ '..',
-+ ],
-+ 'sources': [
-+ 'base/simd/vector_math_sse.cc',
-+ ],
-+ },
- ], # targets
- }],
- ['OS=="android"', {
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/BUILD.gn qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/BUILD.gn
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/BUILD.gn 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/BUILD.gn 2016-02-25 00:47:15.128722393 +0100
-@@ -300,12 +300,6 @@
- "ext/skia_utils_win.cc",
- ]
-
-- if (current_cpu == "x86" || current_cpu == "x64") {
-- sources += [ "ext/convolver_SSE2.cc" ]
-- } else if (current_cpu == "mipsel" && mips_dsp_rev >= 2) {
-- sources += [ "ext/convolver_mips_dspr2.cc" ]
-- }
--
- # The skia gypi values are relative to the skia_dir, so we need to rebase.
- sources += gypi_skia_core.sources
- sources += gypi_skia_effects.sources
-@@ -532,7 +526,15 @@
- ]
-
- if (current_cpu == "x86" || current_cpu == "x64") {
-- sources = gypi_skia_opts.sse2_sources
-+ sources = gypi_skia_opts.sse2_sources +
-+ [
-+ # Chrome-specific.
-+ "ext/convolver_SSE2.cc",
-+ "ext/convolver_SSE2.h",
-+ ]
-+ if (!is_win || is_clang) {
-+ cflags += [ "-msse2" ]
-+ }
- deps += [
- ":skia_opts_sse3",
- ":skia_opts_sse4",
-@@ -562,6 +564,13 @@
-
- if (mips_dsp_rev >= 1) {
- sources = gypi_skia_opts.mips_dsp_sources
-+ if (mips_dsp_rev >= 2) {
-+ sources += [
-+ # Chrome-specific.
-+ "ext/convolver_mips_dspr2.cc",
-+ "ext/convolver_mips_dspr2.h",
-+ ]
-+ }
- } else {
- sources = gypi_skia_opts.none_sources
- }
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/ext/convolver.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/ext/convolver.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/ext/convolver.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/ext/convolver.cc 2016-02-25 00:47:15.165722592 +0100
-@@ -362,10 +362,13 @@
-
- void SetupSIMD(ConvolveProcs *procs) {
- #ifdef SIMD_SSE2
-- procs->extra_horizontal_reads = 3;
-- procs->convolve_vertically = &ConvolveVertically_SSE2;
-- procs->convolve_4rows_horizontally = &Convolve4RowsHorizontally_SSE2;
-- procs->convolve_horizontally = &ConvolveHorizontally_SSE2;
-+ base::CPU cpu;
-+ if (cpu.has_sse2()) {
-+ procs->extra_horizontal_reads = 3;
-+ procs->convolve_vertically = &ConvolveVertically_SSE2;
-+ procs->convolve_4rows_horizontally = &Convolve4RowsHorizontally_SSE2;
-+ procs->convolve_horizontally = &ConvolveHorizontally_SSE2;
-+ }
- #elif defined SIMD_MIPS_DSPR2
- procs->extra_horizontal_reads = 3;
- procs->convolve_vertically = &ConvolveVertically_mips_dspr2;
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/ext/convolver.h qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/ext/convolver.h
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/ext/convolver.h 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/ext/convolver.h 2016-02-25 00:47:15.177722656 +0100
-@@ -9,6 +9,7 @@
- #include <vector>
-
- #include "base/basictypes.h"
-+#include "base/cpu.h"
- #include "third_party/skia/include/core/SkSize.h"
- #include "third_party/skia/include/core/SkTypes.h"
-
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/skia_chrome.gypi qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/skia_chrome.gypi
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/skia_chrome.gypi 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/skia_chrome.gypi 2016-02-25 00:47:15.178722662 +0100
-@@ -9,6 +9,7 @@
- {
- 'dependencies': [
- 'skia_library',
-+ 'skia_chrome_opts',
- '../base/base.gyp:base',
- '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
- ],
-@@ -60,22 +61,16 @@
- 'ext/skia_utils_base.cc',
- ],
- }],
-+ ['OS == "ios"', {
-+ 'dependencies!': [
-+ 'skia_chrome_opts',
-+ ],
-+ }],
- [ 'OS != "android" and (OS != "linux" or use_cairo==1)', {
- 'sources!': [
- 'ext/bitmap_platform_device_skia.cc',
- ],
- }],
-- [ 'OS != "ios" and target_arch != "arm" and target_arch != "mipsel" and \
-- target_arch != "arm64" and target_arch != "mips64el"', {
-- 'sources': [
-- 'ext/convolver_SSE2.cc',
-- ],
-- }],
-- [ 'target_arch == "mipsel" and mips_dsp_rev >= 2',{
-- 'sources': [
-- 'ext/convolver_mips_dspr2.cc',
-- ],
-- }],
- ],
-
- 'target_conditions': [
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/skia.gyp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/skia.gyp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/skia.gyp 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/skia.gyp 2016-02-25 00:47:15.178722662 +0100
-@@ -91,6 +91,37 @@
- # targets that are not dependent upon the component type
- 'targets': [
- {
-+ 'target_name': 'skia_chrome_opts',
-+ 'type': 'static_library',
-+ 'include_dirs': [
-+ '..',
-+ 'config',
-+ '../third_party/skia/include/core',
-+ ],
-+ 'conditions': [
-+ [ 'os_posix == 1 and OS != "mac" and OS != "android" and \
-+ target_arch != "arm" and target_arch != "mipsel" and \
-+ target_arch != "arm64" and target_arch != "mips64el"', {
-+ 'cflags': [
-+ '-msse2',
-+ ],
-+ }],
-+ [ 'target_arch != "arm" and target_arch != "mipsel" and \
-+ target_arch != "arm64" and target_arch != "mips64el"', {
-+ 'sources': [
-+ 'ext/convolver_SSE2.cc',
-+ 'ext/convolver_SSE2.h',
-+ ],
-+ }],
-+ [ 'target_arch == "mipsel" and mips_dsp_rev >= 2',{
-+ 'sources': [
-+ 'ext/convolver_mips_dspr2.cc',
-+ 'ext/convolver_mips_dspr2.h',
-+ ],
-+ }],
-+ ],
-+ },
-+ {
- 'target_name': 'image_operations_bench',
- 'type': 'executable',
- 'dependencies': [
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/skia_library_opts.gyp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/skia_library_opts.gyp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/skia/skia_library_opts.gyp 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/skia/skia_library_opts.gyp 2016-02-25 00:47:15.179722667 +0100
-@@ -18,10 +18,22 @@
- },
-
- 'targets': [
-- # SSE files have to be built in a separate target, because gcc needs
-- # different -msse flags for different SSE levels which enable use of SSE
-- # intrinsics but also allow emission of SSE2 instructions for scalar code.
-- # gyp does not allow per-file compiler flags.
-+ # Due to an unfortunate intersection of lameness between gcc and gyp,
-+ # we have to build the *_SSE2.cpp files in a separate target. The
-+ # gcc lameness is that, in order to compile SSE2 intrinsics code, it
-+ # must be passed the -msse2 flag. However, with this flag, it may
-+ # emit SSE2 instructions even for scalar code, such as the CPUID
-+ # test used to test for the presence of SSE2. So that, and all other
-+ # code must be compiled *without* -msse2. The gyp lameness is that it
-+ # does not allow file-specific CFLAGS, so we must create this extra
-+ # target for those files to be compiled with -msse2.
-+ #
-+ # This is actually only a problem on 32-bit Linux (all Intel Macs have
-+ # SSE2, Linux x86_64 has SSE2 by definition, and MSC will happily emit
-+ # SSE2 from instrinsics, which generating plain ol' 386 for everything
-+ # else). However, to keep the .gyp file simple and avoid platform-specific
-+ # build breakage, we do this on all platforms.
-+
- # For about the same reason, we need to compile the ARM opts files
- # separately as well.
- {
-@@ -37,12 +49,13 @@
- ],
- 'include_dirs': [ '<@(include_dirs)' ],
- 'conditions': [
-+ [ 'os_posix == 1 and OS != "mac" and OS != "android" and \
-+ target_arch != "arm" and target_arch != "arm64" and \
-+ target_arch != "mipsel" and target_arch != "mips64el"', {
-+ 'cflags': [ '-msse2' ],
-+ }],
- [ 'target_arch != "arm" and target_arch != "mipsel" and \
- target_arch != "arm64" and target_arch != "mips64el"', {
-- # Chrome builds with -msse2 locally, so sse2_sources could in theory
-- # be in the regular skia target. But we need skia_opts for arm
-- # anyway, so putting sse2_sources here is simpler than making this
-- # conditionally a type none target on x86.
- 'sources': [ '<@(sse2_sources)' ],
- 'dependencies': [
- 'skia_opts_ssse3',
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/qcms/BUILD.gn qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/qcms/BUILD.gn
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/qcms/BUILD.gn 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/qcms/BUILD.gn 2016-02-25 00:47:15.202722790 +0100
-@@ -26,8 +26,8 @@
- public_configs = [ ":qcms_config" ]
-
- if (current_cpu == "x86" || current_cpu == "x64") {
-- defines = [ "SSE2_ENABLE" ]
-- sources += [ "src/transform-sse2.c" ]
-+ defines = [ "SSE2_ENABLE" ] # runtime detection
-+ deps = [ "qcms_sse2" ]
- }
-
- if (is_win) {
-@@ -37,3 +37,15 @@
- ]
- }
- }
-+
-+source_set("qcms_sse2") {
-+ configs -= [ "//build/config/compiler:chromium_code" ]
-+ configs += [ "//build/config/compiler:no_chromium_code" ]
-+ public_configs = [ ":qcms_config" ]
-+
-+ if (current_cpu == "x86" || current_cpu == "x64") {
-+ defines = [ "SSE2_ENABLE" ]
-+ sources = [ "src/transform-sse2.c" ]
-+ cflags = [ "-msse2" ]
-+ }
-+}
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/qcms/qcms.gyp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/qcms/qcms.gyp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/qcms/qcms.gyp 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/qcms/qcms.gyp 2016-02-25 00:47:15.202722790 +0100
-@@ -33,10 +33,10 @@
- 'conditions': [
- ['target_arch=="ia32" or target_arch=="x64"', {
- 'defines': [
-- 'SSE2_ENABLE',
-+ 'SSE2_ENABLE', # runtime detection
- ],
-- 'sources': [
-- 'src/transform-sse2.c',
-+ 'dependencies': [
-+ 'qcms_sse2',
- ],
- }],
- ['OS == "win"', {
-@@ -47,6 +47,29 @@
- }],
- ],
- },
-+ {
-+ 'target_name': 'qcms_sse2',
-+ 'type': 'static_library',
-+ 'conditions': [
-+ ['target_arch == "ia32" or target_arch == "x64"', {
-+ 'defines': [
-+ 'SSE2_ENABLE',
-+ ],
-+ 'sources': [
-+ # Conditional compilation for SSE2 code on x86 and x64 machines
-+ 'src/transform-sse2.c',
-+ ],
-+ 'cflags': [
-+ '-msse2',
-+ ],
-+ }],
-+ ],
-+ 'direct_dependent_settings': {
-+ 'include_dirs': [
-+ './src',
-+ ],
-+ },
-+ },
- ],
- }
-
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.cpp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.cpp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.cpp 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.cpp 2016-02-25 00:47:15.220722887 +0100
-@@ -30,6 +30,9 @@
-
- #if ENABLE(WEB_AUDIO)
-
-+// include this first to get it before the CPU() function-like macro
-+#include "base/cpu.h"
-+
- #include "platform/audio/DirectConvolver.h"
-
- #if OS(MACOSX)
-@@ -39,14 +42,20 @@
- #include "platform/audio/VectorMath.h"
- #include "wtf/CPU.h"
-
--#if (CPU(X86) || CPU(X86_64)) && !(OS(MACOSX) || USE(WEBAUDIO_IPP))
-+#if ((CPU(X86) && defined(__SSE2__)) || CPU(X86_64)) && !(OS(MACOSX) || USE(WEBAUDIO_IPP))
- #include <emmintrin.h>
- #endif
-
-+#if defined(BUILD_ONLY_THE_SSE2_PARTS) && !defined(__SSE2__)
-+#error SSE2 parts must be built with -msse2
-+#endif
-+
- namespace blink {
-
- using namespace VectorMath;
-
-+#ifndef BUILD_ONLY_THE_SSE2_PARTS
-+
- DirectConvolver::DirectConvolver(size_t inputBlockSize)
- : m_inputBlockSize(inputBlockSize)
- #if USE(WEBAUDIO_IPP)
-@@ -54,10 +63,26 @@
- #endif // USE(WEBAUDIO_IPP)
- , m_buffer(inputBlockSize * 2)
- {
-+#if CPU(X86)
-+ base::CPU cpu;
-+ m_haveSSE2 = cpu.has_sse2();
-+#endif
- }
-
-+#endif
-+
-+#ifdef BUILD_ONLY_THE_SSE2_PARTS
-+void DirectConvolver::m_processSSE2(AudioFloatArray* convolutionKernel, const float* sourceP, float* destP, size_t framesToProcess)
-+#else
- void DirectConvolver::process(AudioFloatArray* convolutionKernel, const float* sourceP, float* destP, size_t framesToProcess)
-+#endif
- {
-+#if CPU(X86) && !defined(__SSE2__)
-+ if (m_haveSSE2) {
-+ m_processSSE2(convolutionKernel, sourceP, destP, framesToProcess);
-+ return;
-+ }
-+#endif
- ASSERT(framesToProcess == m_inputBlockSize);
- if (framesToProcess != m_inputBlockSize)
- return;
-@@ -102,7 +127,7 @@
- #endif // CPU(X86)
- #else
- size_t i = 0;
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- // Convolution using SSE2. Currently only do this if both |kernelSize| and |framesToProcess|
- // are multiples of 4. If not, use the straightforward loop below.
-
-@@ -412,7 +437,7 @@
- }
- destP[i++] = sum;
- }
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- }
- #endif
- #endif // OS(MACOSX)
-@@ -422,6 +447,8 @@
- #endif
- }
-
-+#ifndef BUILD_ONLY_THE_SSE2_PARTS
-+
- void DirectConvolver::reset()
- {
- m_buffer.zero();
-@@ -430,6 +457,8 @@
- #endif // USE(WEBAUDIO_IPP)
- }
-
-+#endif
-+
- } // namespace blink
-
- #endif // ENABLE(WEB_AUDIO)
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.h qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.h
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.h 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.h 2016-02-25 00:47:15.221722892 +0100
-@@ -31,6 +31,7 @@
-
- #include "platform/PlatformExport.h"
- #include "platform/audio/AudioArray.h"
-+#include "wtf/CPU.h"
-
- #if USE(WEBAUDIO_IPP)
- #include <ipps.h>
-@@ -53,6 +54,11 @@
- AudioFloatArray m_overlayBuffer;
- #endif // USE(WEBAUDIO_IPP)
- AudioFloatArray m_buffer;
-+
-+#if CPU(X86)
-+ bool m_haveSSE2;
-+ void m_processSSE2(AudioFloatArray* convolutionKernel, const float* sourceP, float* destP, size_t framesToProcess);
-+#endif
- };
-
- } // namespace blink
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolverSSE2.cpp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolverSSE2.cpp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolverSSE2.cpp 1970-01-01 01:00:00.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolverSSE2.cpp 2016-02-25 00:47:15.221722892 +0100
-@@ -0,0 +1,2 @@
-+#define BUILD_ONLY_THE_SSE2_PARTS
-+#include "DirectConvolver.cpp"
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.cpp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.cpp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.cpp 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.cpp 2016-02-25 00:47:15.230722941 +0100
-@@ -30,16 +30,23 @@
-
- #if ENABLE(WEB_AUDIO)
-
-+// include this first to get it before the CPU() function-like macro
-+#include "base/cpu.h"
-+
- #include "platform/audio/SincResampler.h"
-
- #include "platform/audio/AudioBus.h"
- #include "wtf/CPU.h"
- #include "wtf/MathExtras.h"
-
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- #include <emmintrin.h>
- #endif
-
-+#if defined(BUILD_ONLY_THE_SSE2_PARTS) && !defined(__SSE2__)
-+#error SSE2 parts must be built with -msse2
-+#endif
-+
- // Input buffer layout, dividing the total buffer into regions (r0 - r5):
- //
- // |----------------|----------------------------------------------------------------|----------------|
-@@ -69,6 +76,8 @@
-
- namespace blink {
-
-+#ifndef BUILD_ONLY_THE_SSE2_PARTS
-+
- SincResampler::SincResampler(double scaleFactor, unsigned kernelSize, unsigned numberOfKernelOffsets)
- : m_scaleFactor(scaleFactor)
- , m_kernelSize(kernelSize)
-@@ -82,6 +91,10 @@
- , m_sourceProvider(nullptr)
- , m_isBufferPrimed(false)
- {
-+#if CPU(X86)
-+ base::CPU cpu;
-+ m_haveSSE2 = cpu.has_sse2();
-+#endif
- initializeKernel();
- }
-
-@@ -198,8 +211,20 @@
- }
- }
-
-+#endif
-+
-+#ifdef BUILD_ONLY_THE_SSE2_PARTS
-+void SincResampler::m_processSSE2(AudioSourceProvider* sourceProvider, float* destination, size_t framesToProcess)
-+#else
- void SincResampler::process(AudioSourceProvider* sourceProvider, float* destination, size_t framesToProcess)
-+#endif
- {
-+#if CPU(X86) && !defined(__SSE2__)
-+ if (m_haveSSE2) {
-+ m_processSSE2(sourceProvider, destination, framesToProcess);
-+ return;
-+ }
-+#endif
- bool isGood = sourceProvider && m_blockSize > m_kernelSize && m_inputBuffer.size() >= m_blockSize + m_kernelSize && !(m_kernelSize % 2);
- ASSERT(isGood);
- if (!isGood)
-@@ -261,7 +286,7 @@
- {
- float input;
-
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- // If the sourceP address is not 16-byte aligned, the first several frames (at most three) should be processed seperately.
- while ((reinterpret_cast<uintptr_t>(inputP) & 0x0F) && n) {
- CONVOLVE_ONE_SAMPLE
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.h qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.h
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.h 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.h 2016-02-25 00:47:15.236722973 +0100
-@@ -32,6 +32,7 @@
- #include "platform/PlatformExport.h"
- #include "platform/audio/AudioArray.h"
- #include "platform/audio/AudioSourceProvider.h"
-+#include "wtf/CPU.h"
-
- namespace blink {
-
-@@ -80,6 +81,11 @@
-
- // The buffer is primed once at the very beginning of processing.
- bool m_isBufferPrimed;
-+
-+#if CPU(X86)
-+ bool m_haveSSE2;
-+ void m_processSSE2(AudioSourceProvider*, float* destination, size_t framesToProcess);
-+#endif
- };
-
- } // namespace blink
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResamplerSSE2.cpp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResamplerSSE2.cpp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResamplerSSE2.cpp 1970-01-01 01:00:00.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResamplerSSE2.cpp 2016-02-25 00:47:15.236722973 +0100
-@@ -0,0 +1,2 @@
-+#define BUILD_ONLY_THE_SSE2_PARTS
-+#include "SincResampler.cpp"
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.cpp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.cpp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.cpp 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.cpp 2016-02-25 00:47:15.237722978 +0100
-@@ -26,6 +26,9 @@
-
- #if ENABLE(WEB_AUDIO)
-
-+// include this first to get it before the CPU() function-like macro
-+#include "base/cpu.h"
-+
- #include "platform/audio/VectorMath.h"
- #include "wtf/Assertions.h"
- #include "wtf/CPU.h"
-@@ -35,10 +38,14 @@
- #include <Accelerate/Accelerate.h>
- #endif
-
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- #include <emmintrin.h>
- #endif
-
-+#if defined(BUILD_ONLY_THE_SSE2_PARTS) && !defined(__SSE2__)
-+#error SSE2 parts must be built with -msse2
-+#endif
-+
- #if HAVE(ARM_NEON_INTRINSICS)
- #include <arm_neon.h>
- #endif
-@@ -121,11 +128,25 @@
- }
- #else
-
-+#ifdef BUILD_ONLY_THE_SSE2_PARTS
-+namespace SSE2 {
-+#endif
-+
-+#if CPU(X86) && !defined(__SSE2__)
-+static base::CPU cpu;
-+#endif
-+
- void vsma(const float* sourceP, int sourceStride, const float* scale, float* destP, int destStride, size_t framesToProcess)
- {
-+#if CPU(X86) && !defined(__SSE2__)
-+ if (cpu.has_sse2()) {
-+ blink::VectorMath::SSE2::vsma(sourceP, sourceStride, scale, destP, destStride, framesToProcess);
-+ return;
-+ }
-+#endif
- int n = framesToProcess;
-
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- if ((sourceStride == 1) && (destStride == 1)) {
- float k = *scale;
-
-@@ -196,9 +217,15 @@
-
- void vsmul(const float* sourceP, int sourceStride, const float* scale, float* destP, int destStride, size_t framesToProcess)
- {
-+#if CPU(X86) && !defined(__SSE2__)
-+ if (cpu.has_sse2()) {
-+ blink::VectorMath::SSE2::vsmul(sourceP, sourceStride, scale, destP, destStride, framesToProcess);
-+ return;
-+ }
-+#endif
- int n = framesToProcess;
-
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- if ((sourceStride == 1) && (destStride == 1)) {
- float k = *scale;
-
-@@ -269,16 +296,22 @@
- sourceP += sourceStride;
- destP += destStride;
- }
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- }
- #endif
- }
-
- void vadd(const float* source1P, int sourceStride1, const float* source2P, int sourceStride2, float* destP, int destStride, size_t framesToProcess)
- {
-+#if CPU(X86) && !defined(__SSE2__)
-+ if (cpu.has_sse2()) {
-+ blink::VectorMath::SSE2::vadd(source1P, sourceStride1, source2P, sourceStride2, destP, destStride, framesToProcess);
-+ return;
-+ }
-+#endif
- int n = framesToProcess;
-
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- if ((sourceStride1 ==1) && (sourceStride2 == 1) && (destStride == 1)) {
- // If the sourceP address is not 16-byte aligned, the first several frames (at most three) should be processed separately.
- while ((reinterpret_cast<size_t>(source1P) & 0x0F) && n) {
-@@ -381,17 +414,23 @@
- source2P += sourceStride2;
- destP += destStride;
- }
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- }
- #endif
- }
-
- void vmul(const float* source1P, int sourceStride1, const float* source2P, int sourceStride2, float* destP, int destStride, size_t framesToProcess)
- {
-+#if CPU(X86) && !defined(__SSE2__)
-+ if (cpu.has_sse2()) {
-+ blink::VectorMath::SSE2::vmul(source1P, sourceStride1, source2P, sourceStride2, destP, destStride, framesToProcess);
-+ return;
-+ }
-+#endif
-
- int n = framesToProcess;
-
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- if ((sourceStride1 == 1) && (sourceStride2 == 1) && (destStride == 1)) {
- // If the source1P address is not 16-byte aligned, the first several frames (at most three) should be processed separately.
- while ((reinterpret_cast<uintptr_t>(source1P) & 0x0F) && n) {
-@@ -463,8 +502,14 @@
-
- void zvmul(const float* real1P, const float* imag1P, const float* real2P, const float* imag2P, float* realDestP, float* imagDestP, size_t framesToProcess)
- {
-+#if CPU(X86) && !defined(__SSE2__)
-+ if (cpu.has_sse2()) {
-+ blink::VectorMath::SSE2::zvmul(real1P, imag1P, real2P, imag2P, realDestP, imagDestP, framesToProcess);
-+ return;
-+ }
-+#endif
- unsigned i = 0;
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- // Only use the SSE optimization in the very common case that all addresses are 16-byte aligned.
- // Otherwise, fall through to the scalar code below.
- if (!(reinterpret_cast<uintptr_t>(real1P) & 0x0F)
-@@ -519,10 +564,16 @@
-
- void vsvesq(const float* sourceP, int sourceStride, float* sumP, size_t framesToProcess)
- {
-+#if CPU(X86) && !defined(__SSE2__)
-+ if (cpu.has_sse2()) {
-+ blink::VectorMath::SSE2::vsvesq(sourceP, sourceStride, sumP, framesToProcess);
-+ return;
-+ }
-+#endif
- int n = framesToProcess;
- float sum = 0;
-
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- if (sourceStride == 1) {
- // If the sourceP address is not 16-byte aligned, the first several frames (at most three) should be processed separately.
- while ((reinterpret_cast<uintptr_t>(sourceP) & 0x0F) && n) {
-@@ -584,10 +635,16 @@
-
- void vmaxmgv(const float* sourceP, int sourceStride, float* maxP, size_t framesToProcess)
- {
-+#if CPU(X86) && !defined(__SSE2__)
-+ if (cpu.has_sse2()) {
-+ blink::VectorMath::SSE2::vmaxmgv(sourceP, sourceStride, maxP, framesToProcess);
-+ return;
-+ }
-+#endif
- int n = framesToProcess;
- float max = 0;
-
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- if (sourceStride == 1) {
- // If the sourceP address is not 16-byte aligned, the first several frames (at most three) should be processed separately.
- while ((reinterpret_cast<uintptr_t>(sourceP) & 0x0F) && n) {
-@@ -651,6 +708,8 @@
- *maxP = max;
- }
-
-+#ifndef BUILD_ONLY_THE_SSE2_PARTS
-+
- void vclip(const float* sourceP, int sourceStride, const float* lowThresholdP, const float* highThresholdP, float* destP, int destStride, size_t framesToProcess)
- {
- int n = framesToProcess;
-@@ -681,6 +740,12 @@
- }
- }
-
-+#endif
-+
-+#ifdef BUILD_ONLY_THE_SSE2_PARTS
-+} // namespace SSE2
-+#endif
-+
- #endif // OS(MACOSX)
-
- } // namespace VectorMath
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.h qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.h
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.h 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.h 2016-02-25 00:47:15.253723064 +0100
-@@ -26,6 +26,7 @@
- #define VectorMath_h
-
- #include "platform/PlatformExport.h"
-+#include "wtf/CPU.h"
-
- // Defines the interface for several vector math functions whose implementation will ideally be optimized.
-
-@@ -53,6 +54,28 @@
- // Copies elements while clipping values to the threshold inputs.
- PLATFORM_EXPORT void vclip(const float* sourceP, int sourceStride, const float* lowThresholdP, const float* highThresholdP, float* destP, int destStride, size_t framesToProcess);
-
-+#if CPU(X86)
-+namespace SSE2 {
-+// Vector scalar multiply and then add.
-+PLATFORM_EXPORT void vsma(const float* sourceP, int sourceStride, const float* scale, float* destP, int destStride, size_t framesToProcess);
-+
-+PLATFORM_EXPORT void vsmul(const float* sourceP, int sourceStride, const float* scale, float* destP, int destStride, size_t framesToProcess);
-+PLATFORM_EXPORT void vadd(const float* source1P, int sourceStride1, const float* source2P, int sourceStride2, float* destP, int destStride, size_t framesToProcess);
-+
-+// Finds the maximum magnitude of a float vector.
-+PLATFORM_EXPORT void vmaxmgv(const float* sourceP, int sourceStride, float* maxP, size_t framesToProcess);
-+
-+// Sums the squares of a float vector's elements.
-+PLATFORM_EXPORT void vsvesq(const float* sourceP, int sourceStride, float* sumP, size_t framesToProcess);
-+
-+// For an element-by-element multiply of two float vectors.
-+PLATFORM_EXPORT void vmul(const float* source1P, int sourceStride1, const float* source2P, int sourceStride2, float* destP, int destStride, size_t framesToProcess);
-+
-+// Multiplies two complex vectors.
-+PLATFORM_EXPORT void zvmul(const float* real1P, const float* imag1P, const float* real2P, const float* imag2P, float* realDestP, float* imagDestP, size_t framesToProcess);
-+}
-+#endif
-+
- } // namespace VectorMath
- } // namespace blink
-
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMathSSE2.cpp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMathSSE2.cpp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMathSSE2.cpp 1970-01-01 01:00:00.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMathSSE2.cpp 2016-02-25 00:47:15.255723075 +0100
-@@ -0,0 +1,2 @@
-+#define BUILD_ONLY_THE_SSE2_PARTS
-+#include "VectorMath.cpp"
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/blink_platform.gyp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/blink_platform.gyp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/blink_platform.gyp 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/blink_platform.gyp 2016-02-25 00:47:15.279723203 +0100
-@@ -419,6 +419,11 @@
- '<(DEPTH)/third_party/openmax_dl/dl/dl.gyp:openmax_dl',
- ],
- }],
-+ ['target_arch == "ia32"', {
-+ 'dependencies': [
-+ 'blink_sse2',
-+ ],
-+ }],
- ['target_arch=="arm"', {
- 'dependencies': [
- 'blink_arm_neon',
-@@ -434,6 +439,37 @@
- }],
- ],
- },
-+ {
-+ 'target_name': 'blink_sse2',
-+ 'conditions': [
-+ ['target_arch=="ia32"', {
-+ 'type': 'static_library',
-+ 'dependencies': [
-+ '<(DEPTH)/third_party/khronos/khronos.gyp:khronos_headers',
-+ '../config.gyp:config',
-+ '../wtf/wtf.gyp:wtf',
-+ 'blink_common',
-+ 'blink_heap_asm_stubs',
-+ 'blink_prerequisites',
-+ ],
-+ 'defines': [
-+ 'BLINK_PLATFORM_IMPLEMENTATION=1',
-+ 'INSIDE_BLINK',
-+ ],
-+ 'sources': [
-+ 'audio/DirectConvolverSSE2.cpp',
-+ 'audio/SincResamplerSSE2.cpp',
-+ 'audio/VectorMathSSE2.cpp',
-+ ],
-+ 'cflags': [
-+ '-msse2',
-+ '-mfpmath=sse',
-+ ],
-+ },{ # target_arch != "ia32"
-+ 'type': 'none',
-+ }],
-+ ],
-+ },
- # The *NEON.cpp files fail to compile when -mthumb is passed. Force
- # them to build in ARM mode.
- # See https://bugs.webkit.org/show_bug.cgi?id=62916.
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/cpu/x86/WebGLImageConversionSSE.h qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/cpu/x86/WebGLImageConversionSSE.h
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/cpu/x86/WebGLImageConversionSSE.h 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/cpu/x86/WebGLImageConversionSSE.h 2016-02-25 00:47:15.279723203 +0100
-@@ -5,7 +5,7 @@
- #ifndef WebGLImageConversionSSE_h
- #define WebGLImageConversionSSE_h
-
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
-
- #include <emmintrin.h>
-
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/gpu/WebGLImageConversion.cpp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/gpu/WebGLImageConversion.cpp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/gpu/WebGLImageConversion.cpp 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/gpu/WebGLImageConversion.cpp 2016-02-25 00:47:15.280723209 +0100
-@@ -422,7 +422,7 @@
- const uint32_t* source32 = reinterpret_cast_ptr<const uint32_t*>(source);
- uint32_t* destination32 = reinterpret_cast_ptr<uint32_t*>(destination);
-
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- SIMD::unpackOneRowOfBGRA8LittleToRGBA8(source32, destination32, pixelsPerRow);
- #endif
- for (unsigned i = 0; i < pixelsPerRow; ++i) {
-@@ -623,7 +623,7 @@
- // FIXME: this routine is lossy and must be removed.
- template<> void pack<WebGLImageConversion::DataFormatR8, WebGLImageConversion::AlphaDoUnmultiply, uint8_t, uint8_t>(const uint8_t* source, uint8_t* destination, unsigned pixelsPerRow)
- {
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- SIMD::packOneRowOfRGBA8LittleToR8(source, destination, pixelsPerRow);
- #endif
- for (unsigned i = 0; i < pixelsPerRow; ++i) {
-@@ -731,7 +731,7 @@
- // FIXME: this routine is lossy and must be removed.
- template<> void pack<WebGLImageConversion::DataFormatRGBA8, WebGLImageConversion::AlphaDoUnmultiply, uint8_t, uint8_t>(const uint8_t* source, uint8_t* destination, unsigned pixelsPerRow)
- {
--#if CPU(X86) || CPU(X86_64)
-+#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
- SIMD::packOneRowOfRGBA8LittleToRGBA8(source, destination, pixelsPerRow);
- #else
- for (unsigned i = 0; i < pixelsPerRow; ++i) {
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/webrtc/common_audio/real_fourier.cc qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/webrtc/common_audio/real_fourier.cc
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/third_party/webrtc/common_audio/real_fourier.cc 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/third_party/webrtc/common_audio/real_fourier.cc 2016-02-25 00:47:15.316723402 +0100
-@@ -14,6 +14,7 @@
- #include "webrtc/common_audio/real_fourier_ooura.h"
- #include "webrtc/common_audio/real_fourier_openmax.h"
- #include "webrtc/common_audio/signal_processing/include/spl_inl.h"
-+#include "webrtc/system_wrappers/interface/cpu_features_wrapper.h"
-
- namespace webrtc {
-
-@@ -23,7 +24,15 @@
-
- rtc::scoped_ptr<RealFourier> RealFourier::Create(int fft_order) {
- #if defined(RTC_USE_OPENMAX_DL)
-+#if defined(WEBRTC_ARCH_X86_FAMILY) && !defined(__SSE2__)
-+ // x86 CPU detection required.
-+ if (WebRtc_GetCPUInfo(kSSE2))
-+ return rtc::scoped_ptr<RealFourier>(new RealFourierOpenmax(fft_order));
-+ else
-+ return rtc::scoped_ptr<RealFourier>(new RealFourierOoura(fft_order));
-+#else
- return rtc::scoped_ptr<RealFourier>(new RealFourierOpenmax(fft_order));
-+#endif
- #else
- return rtc::scoped_ptr<RealFourier>(new RealFourierOoura(fft_order));
- #endif
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/tools/gyp/pylib/gyp/generator/ninja.py qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/tools/gyp/pylib/gyp/generator/ninja.py
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/tools/gyp/pylib/gyp/generator/ninja.py 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/tools/gyp/pylib/gyp/generator/ninja.py 2016-02-25 00:47:15.345723558 +0100
-@@ -1282,6 +1282,8 @@
- # Make sure that we have relative paths to our out/(Release|Debug), where we generate our .pri file, and then prepend $$PWD to them.
- prefixed_objects = ['$$PWD/' + o for o in toAbsPaths(objects)]
- prefixed_archives = ['$$PWD/' + o for o in toAbsPaths(libs)]
-+ if len(solibs):
-+ prefixed_solibs = ['$$PWD/' + so for so in toAbsPaths(solibs)]
-
- pri_file.write("QMAKE_LFLAGS += %s\n" % qmakeLiteral(' '.join(prefixed_lflags)))
- pri_file.write("OBJECTS += %s\n" % qmakeLiteral(' '.join(prefixed_objects)))
-@@ -1290,6 +1292,8 @@
- pri_file.write("LIBS_PRIVATE += -Wl,--start-group %s -Wl,--end-group\n" % qmakeLiteral(' '.join(prefixed_archives)))
- else:
- pri_file.write("LIBS_PRIVATE += %s\n" % qmakeLiteral(' '.join(prefixed_archives)))
-+ if len(solibs):
-+ pri_file.write("LIBS_PRIVATE += %s\n" % qmakeLiteral(' '.join(prefixed_solibs)))
- # External libs have to come after objects/archives, the linker resolve them in order.
- pri_file.write("LIBS_PRIVATE += %s\n" % qmakeLiteral(' '.join(prefixed_library_dirs + prefixed_libraries)))
- # Make sure that if ninja modifies one of the inputs, qmake/make will link again.
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/build/standalone.gypi qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/build/standalone.gypi
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/build/standalone.gypi 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/build/standalone.gypi 2016-02-25 00:47:15.361723643 +0100
-@@ -94,6 +94,9 @@
- 'use_goma%': 0,
- 'gomadir%': '',
- 'conditions': [
-+ ['target_arch=="ia32"', {
-+ 'v8_target_arch%': 'x87',
-+ }],
- # Set default gomadir.
- ['OS=="win"', {
- 'gomadir': 'c:\\goma\\goma-win',
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/build/toolchain.gypi qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/build/toolchain.gypi
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/build/toolchain.gypi 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/build/toolchain.gypi 2016-02-25 00:47:15.364723659 +0100
-@@ -93,6 +93,9 @@
- 'binutils_dir%': '',
-
- 'conditions': [
-+ ['target_arch=="ia32"', {
-+ 'v8_target_arch%': 'x87',
-+ }],
- ['OS=="linux" and host_arch=="x64"', {
- 'binutils_dir%': 'third_party/binutils/Linux_x64/Release/bin',
- }],
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/BUILD.gn qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/BUILD.gn
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/BUILD.gn 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/BUILD.gn 2016-02-25 00:47:15.377723729 +0100
-@@ -1135,41 +1135,41 @@
-
- if (v8_target_arch == "x86") {
- sources += [
-- "src/ia32/assembler-ia32-inl.h",
-- "src/ia32/assembler-ia32.cc",
-- "src/ia32/assembler-ia32.h",
-- "src/ia32/builtins-ia32.cc",
-- "src/ia32/code-stubs-ia32.cc",
-- "src/ia32/code-stubs-ia32.h",
-- "src/ia32/codegen-ia32.cc",
-- "src/ia32/codegen-ia32.h",
-- "src/ia32/cpu-ia32.cc",
-- "src/ia32/debug-ia32.cc",
-- "src/ia32/deoptimizer-ia32.cc",
-- "src/ia32/disasm-ia32.cc",
-- "src/ia32/frames-ia32.cc",
-- "src/ia32/frames-ia32.h",
-- "src/ia32/full-codegen-ia32.cc",
-- "src/ia32/interface-descriptors-ia32.cc",
-- "src/ia32/lithium-codegen-ia32.cc",
-- "src/ia32/lithium-codegen-ia32.h",
-- "src/ia32/lithium-gap-resolver-ia32.cc",
-- "src/ia32/lithium-gap-resolver-ia32.h",
-- "src/ia32/lithium-ia32.cc",
-- "src/ia32/lithium-ia32.h",
-- "src/ia32/macro-assembler-ia32.cc",
-- "src/ia32/macro-assembler-ia32.h",
-- "src/ia32/regexp-macro-assembler-ia32.cc",
-- "src/ia32/regexp-macro-assembler-ia32.h",
-- "src/compiler/ia32/code-generator-ia32.cc",
-- "src/compiler/ia32/instruction-codes-ia32.h",
-- "src/compiler/ia32/instruction-selector-ia32.cc",
-- "src/compiler/ia32/linkage-ia32.cc",
-- "src/ic/ia32/access-compiler-ia32.cc",
-- "src/ic/ia32/handler-compiler-ia32.cc",
-- "src/ic/ia32/ic-ia32.cc",
-- "src/ic/ia32/ic-compiler-ia32.cc",
-- "src/ic/ia32/stub-cache-ia32.cc",
-+ "src/x87/assembler-x87-inl.h",
-+ "src/x87/assembler-x87.cc",
-+ "src/x87/assembler-x87.h",
-+ "src/x87/builtins-x87.cc",
-+ "src/x87/code-stubs-x87.cc",
-+ "src/x87/code-stubs-x87.h",
-+ "src/x87/codegen-x87.cc",
-+ "src/x87/codegen-x87.h",
-+ "src/x87/cpu-x87.cc",
-+ "src/x87/debug-x87.cc",
-+ "src/x87/deoptimizer-x87.cc",
-+ "src/x87/disasm-x87.cc",
-+ "src/x87/frames-x87.cc",
-+ "src/x87/frames-x87.h",
-+ "src/x87/full-codegen-x87.cc",
-+ "src/x87/interface-descriptors-x87.cc",
-+ "src/x87/lithium-codegen-x87.cc",
-+ "src/x87/lithium-codegen-x87.h",
-+ "src/x87/lithium-gap-resolver-x87.cc",
-+ "src/x87/lithium-gap-resolver-x87.h",
-+ "src/x87/lithium-x87.cc",
-+ "src/x87/lithium-x87.h",
-+ "src/x87/macro-assembler-x87.cc",
-+ "src/x87/macro-assembler-x87.h",
-+ "src/x87/regexp-macro-assembler-x87.cc",
-+ "src/x87/regexp-macro-assembler-x87.h",
-+ "src/compiler/x87/code-generator-x87.cc",
-+ "src/compiler/x87/instruction-codes-x87.h",
-+ "src/compiler/x87/instruction-selector-x87.cc",
-+ "src/compiler/x87/linkage-x87.cc",
-+ "src/ic/x87/access-compiler-x87.cc",
-+ "src/ic/x87/handler-compiler-x87.cc",
-+ "src/ic/x87/ic-x87.cc",
-+ "src/ic/x87/ic-compiler-x87.cc",
-+ "src/ic/x87/stub-cache-x87.cc",
- ]
- } else if (v8_target_arch == "x64") {
- sources += [
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/tools/gyp/make-v8-sse2-gyp.sh qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/tools/gyp/make-v8-sse2-gyp.sh
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/tools/gyp/make-v8-sse2-gyp.sh 1970-01-01 01:00:00.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/tools/gyp/make-v8-sse2-gyp.sh 2016-02-25 00:47:15.377723729 +0100
-@@ -0,0 +1,56 @@
-+#!/bin/sh
-+# This script renames the v8 targets to _sse2 names so that they do not conflict
-+# with the non-SSE2 versions.
-+
-+# Copyright 2016 Kevin Kofler. All rights reserved.
-+# Redistribution and use in source and binary forms, with or without
-+# modification, are permitted provided that the following conditions are
-+# met:
-+#
-+# * Redistributions of source code must retain the above copyright
-+# notice, this list of conditions and the following disclaimer.
-+# * Redistributions in binary form must reproduce the above
-+# copyright notice, this list of conditions and the following
-+# disclaimer in the documentation and/or other materials provided
-+# with the distribution.
-+# * Neither the name of Google Inc. nor the names of its
-+# contributors may be used to endorse or promote products derived
-+# from this software without specific prior written permission.
-+#
-+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+
-+# add comment noting that the file is generated
-+echo "# Generated from v8.gyp by make-v8-sse2-gyp.sh" >v8_sse2.gyp
-+# rename all target names
-+SUBTARGETS=`grep "'target_name': '" v8.gyp | sed -e "s/^.*'target_name': '//g" -e "s/',$//g"`
-+SEDS=
-+for SUBTARGET in $SUBTARGETS ; do
-+ SEDS=$SEDS\ -e\ "s/'$SUBTARGET\(['#]\)/'${SUBTARGET}_sse2\1/g"
-+done
-+# in addition:
-+# * set v8_target_arch to "ia32" (instead of "x87")
-+# * rename all actions
-+# * fix mksnapshot_exec to match the renamed target
-+# * rename the generated snapshot.cc (but not mksnapshot.cc) to snapshot_sse2.cc
-+# * rename the generated *libraries.cc to *libraries_sse2.cc
-+# * rename the generated *.bin to *_sse2.bin
-+# * set product_name and product_dir for the v8_sse2 target
-+sed -e "s/^\( 'variables': {\)/\1\n 'v8_target_arch': 'ia32',/g" \
-+ -e "s/\('action_name': '\)/\1v8_sse2_/g" \
-+ $SEDS \
-+ -e "s/\('mksnapshot_exec': '.*mksnapshot\)/\1_sse2/g" \
-+ -e "s#/snapshot\.cc#/snapshot_sse2.cc#g" \
-+ -e "s/libraries\.cc/libraries_sse2.cc/g" \
-+ -e "s/\.bin/_sse2.bin/g" \
-+ -e "s#^\( *\)\('target_name': 'v8_sse2',\)#\1\2\n\1'product_name': 'v8',\n\1'product_dir': '<(PRODUCT_DIR)/lib/sse2',#g" \
-+ v8.gyp >>v8_sse2.gyp
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/tools/gyp/v8.gyp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/tools/gyp/v8.gyp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/tools/gyp/v8.gyp 2016-02-10 11:20:27.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/tools/gyp/v8.gyp 2016-02-25 00:47:15.395723826 +0100
-@@ -34,6 +34,14 @@
- 'v8_extra_library_files%': [],
- 'mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABLE_SUFFIX)',
- 'remove_v8base_debug_symbols%': 0,
-+ 'conditions': [
-+ # build V8 shared on ia32 so we can swap x87 vs. SSE2 builds
-+ ['target_arch == "ia32"', {
-+ 'v8_component%': 'shared_library',
-+ }, {
-+ 'v8_component%': '<(component)',
-+ }],
-+ ],
- },
- 'includes': ['../../build/toolchain.gypi', '../../build/features.gypi'],
- 'targets': [
-@@ -47,8 +55,8 @@
- }, {
- 'toolsets': ['target'],
- }],
-- ['component=="shared_library"', {
-- 'type': '<(component)',
-+ ['v8_component=="shared_library"', {
-+ 'type': '<(v8_component)',
- 'sources': [
- # Note: on non-Windows we still build this file so that gyp
- # has some sources to link into the component.
-@@ -159,7 +167,7 @@
- 'js2c',
- ],
- }],
-- ['component=="shared_library"', {
-+ ['v8_component=="shared_library"', {
- 'defines': [
- 'V8_SHARED',
- 'BUILDING_V8_SHARED',
-@@ -237,7 +245,7 @@
- 'toolsets': ['target'],
- 'dependencies': ['js2c'],
- }],
-- ['component=="shared_library"', {
-+ ['v8_component=="shared_library"', {
- 'defines': [
- 'BUILDING_V8_SHARED',
- 'V8_SHARED',
-@@ -265,7 +273,7 @@
- 'natives_blob',
- ],
- }],
-- ['component=="shared_library"', {
-+ ['v8_component=="shared_library"', {
- 'defines': [
- 'V8_SHARED',
- 'BUILDING_V8_SHARED',
-@@ -1340,7 +1348,7 @@
- # See http://crbug.com/485155.
- 'msvs_shard': 4,
- }],
-- ['component=="shared_library"', {
-+ ['v8_component=="shared_library"', {
- 'defines': [
- 'BUILDING_V8_SHARED',
- 'V8_SHARED',
-diff -Nur qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/tools/gyp/v8_sse2.gyp qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/tools/gyp/v8_sse2.gyp
---- qtwebengine-opensource-src-5.6.1/src/3rdparty/chromium/v8/tools/gyp/v8_sse2.gyp 1970-01-01 01:00:00.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/3rdparty/chromium/v8/tools/gyp/v8_sse2.gyp 2016-02-25 00:47:15.396723831 +0100
-@@ -0,0 +1,1952 @@
-+# Generated from v8.gyp by make-v8-sse2-gyp.sh
-+# Copyright 2012 the V8 project authors. All rights reserved.
-+# Redistribution and use in source and binary forms, with or without
-+# modification, are permitted provided that the following conditions are
-+# met:
-+#
-+# * Redistributions of source code must retain the above copyright
-+# notice, this list of conditions and the following disclaimer.
-+# * Redistributions in binary form must reproduce the above
-+# copyright notice, this list of conditions and the following
-+# disclaimer in the documentation and/or other materials provided
-+# with the distribution.
-+# * Neither the name of Google Inc. nor the names of its
-+# contributors may be used to endorse or promote products derived
-+# from this software without specific prior written permission.
-+#
-+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+
-+{
-+ 'variables': {
-+ 'v8_target_arch': 'ia32',
-+ 'icu_use_data_file_flag%': 0,
-+ 'v8_code': 1,
-+ 'v8_random_seed%': 314159265,
-+ 'embed_script%': "",
-+ 'v8_extra_library_files%': [],
-+ 'mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot_sse2<(EXECUTABLE_SUFFIX)',
-+ 'remove_v8base_debug_symbols%': 0,
-+ 'conditions': [
-+ # build V8 shared on ia32 so we can swap x87 vs. SSE2 builds
-+ ['target_arch == "ia32"', {
-+ 'v8_component%': 'shared_library',
-+ }, {
-+ 'v8_component%': '<(component)',
-+ }],
-+ ],
-+ },
-+ 'includes': ['../../build/toolchain.gypi', '../../build/features.gypi'],
-+ 'targets': [
-+ {
-+ 'target_name': 'v8_sse2',
-+ 'product_name': 'v8',
-+ 'product_dir': '<(PRODUCT_DIR)/lib/sse2',
-+ 'dependencies_traverse': 1,
-+ 'dependencies': ['v8_maybe_snapshot_sse2'],
-+ 'conditions': [
-+ ['want_separate_host_toolset==1', {
-+ 'toolsets': ['host', 'target'],
-+ }, {
-+ 'toolsets': ['target'],
-+ }],
-+ ['v8_component=="shared_library"', {
-+ 'type': '<(v8_component)',
-+ 'sources': [
-+ # Note: on non-Windows we still build this file so that gyp
-+ # has some sources to link into the component.
-+ '../../src/v8dll-main.cc',
-+ ],
-+ 'include_dirs': [
-+ '../..',
-+ ],
-+ 'defines': [
-+ 'V8_SHARED',
-+ 'BUILDING_V8_SHARED',
-+ ],
-+ 'direct_dependent_settings': {
-+ 'defines': [
-+ 'V8_SHARED',
-+ 'USING_V8_SHARED',
-+ ],
-+ },
-+ 'target_conditions': [
-+ ['OS=="android" and _toolset=="target"', {
-+ 'libraries': [
-+ '-llog',
-+ ],
-+ 'include_dirs': [
-+ 'src/common/android/include',
-+ ],
-+ }],
-+ ],
-+ 'conditions': [
-+ ['OS=="mac"', {
-+ 'xcode_settings': {
-+ 'OTHER_LDFLAGS': ['-dynamiclib', '-all_load']
-+ },
-+ }],
-+ ['soname_version!=""', {
-+ 'product_extension': 'so.<(soname_version)',
-+ }],
-+ ],
-+ },
-+ {
-+ 'type': 'none',
-+ }],
-+ ],
-+ 'direct_dependent_settings': {
-+ 'include_dirs': [
-+ '../../include',
-+ ],
-+ },
-+ },
-+ {
-+ # This rule delegates to either v8_snapshot, v8_nosnapshot, or
-+ # v8_external_snapshot, depending on the current variables.
-+ # The intention is to make the 'calling' rules a bit simpler.
-+ 'target_name': 'v8_maybe_snapshot_sse2',
-+ 'type': 'none',
-+ 'conditions': [
-+ ['v8_use_snapshot!="true"', {
-+ # The dependency on v8_base should come from a transitive
-+ # dependency however the Android toolchain requires libv8_base.a
-+ # to appear before libv8_snapshot.a so it's listed explicitly.
-+ 'dependencies': ['v8_base_sse2', 'v8_nosnapshot_sse2'],
-+ }],
-+ ['v8_use_snapshot=="true" and v8_use_external_startup_data==0', {
-+ # The dependency on v8_base should come from a transitive
-+ # dependency however the Android toolchain requires libv8_base.a
-+ # to appear before libv8_snapshot.a so it's listed explicitly.
-+ 'dependencies': ['v8_base_sse2', 'v8_snapshot_sse2'],
-+ }],
-+ ['v8_use_snapshot=="true" and v8_use_external_startup_data==1 and want_separate_host_toolset==0', {
-+ 'dependencies': ['v8_base_sse2', 'v8_external_snapshot_sse2'],
-+ 'inputs': [ '<(PRODUCT_DIR)/snapshot_blob_sse2.bin', ],
-+ }],
-+ ['v8_use_snapshot=="true" and v8_use_external_startup_data==1 and want_separate_host_toolset==1', {
-+ 'dependencies': ['v8_base_sse2', 'v8_external_snapshot_sse2'],
-+ 'target_conditions': [
-+ ['_toolset=="host"', {
-+ 'inputs': [
-+ '<(PRODUCT_DIR)/snapshot_blob_host_sse2.bin',
-+ ],
-+ }, {
-+ 'inputs': [
-+ '<(PRODUCT_DIR)/snapshot_blob_sse2.bin',
-+ ],
-+ }],
-+ ],
-+ }],
-+ ['want_separate_host_toolset==1', {
-+ 'toolsets': ['host', 'target'],
-+ }, {
-+ 'toolsets': ['target'],
-+ }],
-+ ]
-+ },
-+ {
-+ 'target_name': 'v8_snapshot_sse2',
-+ 'type': 'static_library',
-+ 'conditions': [
-+ ['want_separate_host_toolset==1', {
-+ 'toolsets': ['host', 'target'],
-+ 'dependencies': [
-+ 'mksnapshot_sse2#host',
-+ 'js2c_sse2#host',
-+ ],
-+ }, {
-+ 'toolsets': ['target'],
-+ 'dependencies': [
-+ 'mksnapshot_sse2',
-+ 'js2c_sse2',
-+ ],
-+ }],
-+ ['v8_component=="shared_library"', {
-+ 'defines': [
-+ 'V8_SHARED',
-+ 'BUILDING_V8_SHARED',
-+ ],
-+ 'direct_dependent_settings': {
-+ 'defines': [
-+ 'V8_SHARED',
-+ 'USING_V8_SHARED',
-+ ],
-+ },
-+ }],
-+ ],
-+ 'dependencies': [
-+ 'v8_base_sse2',
-+ ],
-+ 'include_dirs+': [
-+ '../..',
-+ ],
-+ 'sources': [
-+ '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.cc',
-+ '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries_sse2.cc',
-+ '<(SHARED_INTERMEDIATE_DIR)/extras-libraries_sse2.cc',
-+ '<(INTERMEDIATE_DIR)/snapshot_sse2.cc',
-+ ],
-+ 'actions': [
-+ {
-+ 'action_name': 'v8_sse2_run_mksnapshot',
-+ 'inputs': [
-+ '<(mksnapshot_exec)',
-+ '<(embed_script)',
-+ ],
-+ 'outputs': [
-+ '<(INTERMEDIATE_DIR)/snapshot_sse2.cc',
-+ ],
-+ 'variables': {
-+ 'mksnapshot_flags': [
-+ '--log-snapshot-positions',
-+ '--logfile', '<(INTERMEDIATE_DIR)/snapshot.log',
-+ ],
-+ 'conditions': [
-+ ['v8_random_seed!=0', {
-+ 'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
-+ }],
-+ ],
-+ },
-+ 'action': [
-+ '<(mksnapshot_exec)',
-+ '<@(mksnapshot_flags)',
-+ '<@(INTERMEDIATE_DIR)/snapshot_sse2.cc',
-+ '<(embed_script)',
-+ ],
-+ },
-+ ],
-+ },
-+ {
-+ 'target_name': 'v8_nosnapshot_sse2',
-+ 'type': 'static_library',
-+ 'dependencies': [
-+ 'v8_base_sse2',
-+ ],
-+ 'include_dirs+': [
-+ '../..',
-+ ],
-+ 'sources': [
-+ '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.cc',
-+ '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries_sse2.cc',
-+ '<(SHARED_INTERMEDIATE_DIR)/extras-libraries_sse2.cc',
-+ '../../src/snapshot/snapshot-empty.cc',
-+ ],
-+ 'conditions': [
-+ ['want_separate_host_toolset==1', {
-+ 'toolsets': ['host', 'target'],
-+ 'dependencies': ['js2c_sse2#host'],
-+ }, {
-+ 'toolsets': ['target'],
-+ 'dependencies': ['js2c_sse2'],
-+ }],
-+ ['v8_component=="shared_library"', {
-+ 'defines': [
-+ 'BUILDING_V8_SHARED',
-+ 'V8_SHARED',
-+ ],
-+ }],
-+ ]
-+ },
-+ {
-+ 'target_name': 'v8_external_snapshot_sse2',
-+ 'type': 'static_library',
-+ 'conditions': [
-+ [ 'v8_use_external_startup_data==1', {
-+ 'conditions': [
-+ ['want_separate_host_toolset==1', {
-+ 'toolsets': ['host', 'target'],
-+ 'dependencies': [
-+ 'mksnapshot_sse2#host',
-+ 'js2c_sse2#host',
-+ 'natives_blob_sse2',
-+ ]}, {
-+ 'toolsets': ['target'],
-+ 'dependencies': [
-+ 'mksnapshot_sse2',
-+ 'js2c_sse2',
-+ 'natives_blob_sse2',
-+ ],
-+ }],
-+ ['v8_component=="shared_library"', {
-+ 'defines': [
-+ 'V8_SHARED',
-+ 'BUILDING_V8_SHARED',
-+ ],
-+ 'direct_dependent_settings': {
-+ 'defines': [
-+ 'V8_SHARED',
-+ 'USING_V8_SHARED',
-+ ],
-+ },
-+ }],
-+ ],
-+ 'dependencies': [
-+ 'v8_base_sse2',
-+ ],
-+ 'include_dirs+': [
-+ '../..',
-+ ],
-+ 'sources': [
-+ '../../src/snapshot/natives-external.cc',
-+ '../../src/snapshot/snapshot-external.cc',
-+ ],
-+ 'actions': [
-+ {
-+ 'action_name': 'v8_sse2_run_mksnapshot (external)',
-+ 'inputs': [
-+ '<(mksnapshot_exec)',
-+ ],
-+ 'variables': {
-+ 'mksnapshot_flags': [
-+ '--log-snapshot-positions',
-+ '--logfile', '<(INTERMEDIATE_DIR)/snapshot.log',
-+ ],
-+ 'conditions': [
-+ ['v8_random_seed!=0', {
-+ 'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
-+ }],
-+ ],
-+ },
-+ 'conditions': [
-+ ['want_separate_host_toolset==1', {
-+ 'target_conditions': [
-+ ['_toolset=="host"', {
-+ 'outputs': [
-+ '<(INTERMEDIATE_DIR)/snapshot_sse2.cc',
-+ '<(PRODUCT_DIR)/snapshot_blob_host_sse2.bin',
-+ ],
-+ 'action': [
-+ '<(mksnapshot_exec)',
-+ '<@(mksnapshot_flags)',
-+ '<@(INTERMEDIATE_DIR)/snapshot_sse2.cc',
-+ '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob_host_sse2.bin',
-+ '<(embed_script)',
-+ ],
-+ }, {
-+ 'outputs': [
-+ '<(INTERMEDIATE_DIR)/snapshot_sse2.cc',
-+ '<(PRODUCT_DIR)/snapshot_blob_sse2.bin',
-+ ],
-+ 'action': [
-+ '<(mksnapshot_exec)',
-+ '<@(mksnapshot_flags)',
-+ '<@(INTERMEDIATE_DIR)/snapshot_sse2.cc',
-+ '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob_sse2.bin',
-+ '<(embed_script)',
-+ ],
-+ }],
-+ ],
-+ }, {
-+ 'outputs': [
-+ '<(INTERMEDIATE_DIR)/snapshot_sse2.cc',
-+ '<(PRODUCT_DIR)/snapshot_blob_sse2.bin',
-+ ],
-+ 'action': [
-+ '<(mksnapshot_exec)',
-+ '<@(mksnapshot_flags)',
-+ '<@(INTERMEDIATE_DIR)/snapshot_sse2.cc',
-+ '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob_sse2.bin',
-+ '<(embed_script)',
-+ ],
-+ }],
-+ ],
-+ },
-+ ],
-+ }],
-+ ],
-+ },
-+ {
-+ 'target_name': 'v8_base_sse2',
-+ 'type': 'static_library',
-+ 'dependencies': [
-+ 'v8_libbase_sse2',
-+ ],
-+ 'variables': {
-+ 'optimize': 'max',
-+ },
-+ 'include_dirs+': [
-+ '../..',
-+ ],
-+ 'defines': [
-+ # TODO(jochen): Remove again after this is globally turned on.
-+ 'V8_IMMINENT_DEPRECATION_WARNINGS',
-+ ],
-+ 'sources': [ ### gcmole(all) ###
-+ '../../include/v8-debug.h',
-+ '../../include/v8-platform.h',
-+ '../../include/v8-profiler.h',
-+ '../../include/v8-testing.h',
-+ '../../include/v8-util.h',
-+ '../../include/v8-version.h',
-+ '../../include/v8.h',
-+ '../../include/v8config.h',
-+ '../../src/accessors.cc',
-+ '../../src/accessors.h',
-+ '../../src/allocation.cc',
-+ '../../src/allocation.h',
-+ '../../src/allocation-site-scopes.cc',
-+ '../../src/allocation-site-scopes.h',
-+ '../../src/allocation-tracker.cc',
-+ '../../src/allocation-tracker.h',
-+ '../../src/api.cc',
-+ '../../src/api.h',
-+ '../../src/api-natives.cc',
-+ '../../src/api-natives.h',
-+ '../../src/arguments.cc',
-+ '../../src/arguments.h',
-+ '../../src/assembler.cc',
-+ '../../src/assembler.h',
-+ '../../src/assert-scope.h',
-+ '../../src/assert-scope.cc',
-+ '../../src/ast-value-factory.cc',
-+ '../../src/ast-value-factory.h',
-+ '../../src/ast-literal-reindexer.cc',
-+ '../../src/ast-literal-reindexer.h',
-+ '../../src/ast-numbering.cc',
-+ '../../src/ast-numbering.h',
-+ '../../src/ast.cc',
-+ '../../src/ast.h',
-+ '../../src/background-parsing-task.cc',
-+ '../../src/background-parsing-task.h',
-+ '../../src/bailout-reason.cc',
-+ '../../src/bailout-reason.h',
-+ '../../src/basic-block-profiler.cc',
-+ '../../src/basic-block-profiler.h',
-+ '../../src/bignum-dtoa.cc',
-+ '../../src/bignum-dtoa.h',
-+ '../../src/bignum.cc',
-+ '../../src/bignum.h',
-+ '../../src/bit-vector.cc',
-+ '../../src/bit-vector.h',
-+ '../../src/bootstrapper.cc',
-+ '../../src/bootstrapper.h',
-+ '../../src/builtins.cc',
-+ '../../src/builtins.h',
-+ '../../src/bytecodes-irregexp.h',
-+ '../../src/cached-powers.cc',
-+ '../../src/cached-powers.h',
-+ '../../src/char-predicates.cc',
-+ '../../src/char-predicates-inl.h',
-+ '../../src/char-predicates.h',
-+ '../../src/checks.cc',
-+ '../../src/checks.h',
-+ '../../src/circular-queue-inl.h',
-+ '../../src/circular-queue.h',
-+ '../../src/code-factory.cc',
-+ '../../src/code-factory.h',
-+ '../../src/code-stubs.cc',
-+ '../../src/code-stubs.h',
-+ '../../src/code-stubs-hydrogen.cc',
-+ '../../src/code.h',
-+ '../../src/codegen.cc',
-+ '../../src/codegen.h',
-+ '../../src/compilation-cache.cc',
-+ '../../src/compilation-cache.h',
-+ '../../src/compilation-dependencies.cc',
-+ '../../src/compilation-dependencies.h',
-+ '../../src/compilation-statistics.cc',
-+ '../../src/compilation-statistics.h',
-+ '../../src/compiler/access-builder.cc',
-+ '../../src/compiler/access-builder.h',
-+ '../../src/compiler/all-nodes.cc',
-+ '../../src/compiler/all-nodes.h',
-+ '../../src/compiler/ast-graph-builder.cc',
-+ '../../src/compiler/ast-graph-builder.h',
-+ '../../src/compiler/ast-loop-assignment-analyzer.cc',
-+ '../../src/compiler/ast-loop-assignment-analyzer.h',
-+ '../../src/compiler/basic-block-instrumentor.cc',
-+ '../../src/compiler/basic-block-instrumentor.h',
-+ '../../src/compiler/change-lowering.cc',
-+ '../../src/compiler/change-lowering.h',
-+ '../../src/compiler/coalesced-live-ranges.cc',
-+ '../../src/compiler/coalesced-live-ranges.h',
-+ '../../src/compiler/code-generator-impl.h',
-+ '../../src/compiler/code-generator.cc',
-+ '../../src/compiler/code-generator.h',
-+ '../../src/compiler/common-node-cache.cc',
-+ '../../src/compiler/common-node-cache.h',
-+ '../../src/compiler/common-operator-reducer.cc',
-+ '../../src/compiler/common-operator-reducer.h',
-+ '../../src/compiler/common-operator.cc',
-+ '../../src/compiler/common-operator.h',
-+ '../../src/compiler/control-builders.cc',
-+ '../../src/compiler/control-builders.h',
-+ '../../src/compiler/control-equivalence.cc',
-+ '../../src/compiler/control-equivalence.h',
-+ '../../src/compiler/control-flow-optimizer.cc',
-+ '../../src/compiler/control-flow-optimizer.h',
-+ '../../src/compiler/dead-code-elimination.cc',
-+ '../../src/compiler/dead-code-elimination.h',
-+ '../../src/compiler/diamond.h',
-+ '../../src/compiler/frame.h',
-+ '../../src/compiler/frame-elider.cc',
-+ '../../src/compiler/frame-elider.h',
-+ "../../src/compiler/frame-states.cc",
-+ "../../src/compiler/frame-states.h",
-+ '../../src/compiler/gap-resolver.cc',
-+ '../../src/compiler/gap-resolver.h',
-+ '../../src/compiler/graph-builder.h',
-+ '../../src/compiler/graph-reducer.cc',
-+ '../../src/compiler/graph-reducer.h',
-+ '../../src/compiler/graph-replay.cc',
-+ '../../src/compiler/graph-replay.h',
-+ '../../src/compiler/graph-trimmer.cc',
-+ '../../src/compiler/graph-trimmer.h',
-+ '../../src/compiler/graph-visualizer.cc',
-+ '../../src/compiler/graph-visualizer.h',
-+ '../../src/compiler/graph.cc',
-+ '../../src/compiler/graph.h',
-+ '../../src/compiler/greedy-allocator.cc',
-+ '../../src/compiler/greedy-allocator.h',
-+ '../../src/compiler/instruction-codes.h',
-+ '../../src/compiler/instruction-selector-impl.h',
-+ '../../src/compiler/instruction-selector.cc',
-+ '../../src/compiler/instruction-selector.h',
-+ '../../src/compiler/instruction.cc',
-+ '../../src/compiler/instruction.h',
-+ '../../src/compiler/js-builtin-reducer.cc',
-+ '../../src/compiler/js-builtin-reducer.h',
-+ '../../src/compiler/js-context-specialization.cc',
-+ '../../src/compiler/js-context-specialization.h',
-+ '../../src/compiler/js-frame-specialization.cc',
-+ '../../src/compiler/js-frame-specialization.h',
-+ '../../src/compiler/js-generic-lowering.cc',
-+ '../../src/compiler/js-generic-lowering.h',
-+ '../../src/compiler/js-graph.cc',
-+ '../../src/compiler/js-graph.h',
-+ '../../src/compiler/js-inlining.cc',
-+ '../../src/compiler/js-inlining.h',
-+ '../../src/compiler/js-intrinsic-lowering.cc',
-+ '../../src/compiler/js-intrinsic-lowering.h',
-+ '../../src/compiler/js-operator.cc',
-+ '../../src/compiler/js-operator.h',
-+ '../../src/compiler/js-type-feedback.cc',
-+ '../../src/compiler/js-type-feedback.h',
-+ '../../src/compiler/js-typed-lowering.cc',
-+ '../../src/compiler/js-typed-lowering.h',
-+ '../../src/compiler/jump-threading.cc',
-+ '../../src/compiler/jump-threading.h',
-+ '../../src/compiler/linkage-impl.h',
-+ '../../src/compiler/linkage.cc',
-+ '../../src/compiler/linkage.h',
-+ '../../src/compiler/liveness-analyzer.cc',
-+ '../../src/compiler/liveness-analyzer.h',
-+ '../../src/compiler/load-elimination.cc',
-+ '../../src/compiler/load-elimination.h',
-+ '../../src/compiler/loop-analysis.cc',
-+ '../../src/compiler/loop-analysis.h',
-+ '../../src/compiler/loop-peeling.cc',
-+ '../../src/compiler/loop-peeling.h',
-+ '../../src/compiler/machine-operator-reducer.cc',
-+ '../../src/compiler/machine-operator-reducer.h',
-+ '../../src/compiler/machine-operator.cc',
-+ '../../src/compiler/machine-operator.h',
-+ '../../src/compiler/machine-type.cc',
-+ '../../src/compiler/machine-type.h',
-+ '../../src/compiler/move-optimizer.cc',
-+ '../../src/compiler/move-optimizer.h',
-+ '../../src/compiler/node-aux-data.h',
-+ '../../src/compiler/node-cache.cc',
-+ '../../src/compiler/node-cache.h',
-+ '../../src/compiler/node-marker.cc',
-+ '../../src/compiler/node-marker.h',
-+ '../../src/compiler/node-matchers.cc',
-+ '../../src/compiler/node-matchers.h',
-+ '../../src/compiler/node-properties.cc',
-+ '../../src/compiler/node-properties.h',
-+ '../../src/compiler/node.cc',
-+ '../../src/compiler/node.h',
-+ '../../src/compiler/opcodes.cc',
-+ '../../src/compiler/opcodes.h',
-+ '../../src/compiler/operator-properties.cc',
-+ '../../src/compiler/operator-properties.h',
-+ '../../src/compiler/operator.cc',
-+ '../../src/compiler/operator.h',
-+ '../../src/compiler/osr.cc',
-+ '../../src/compiler/osr.h',
-+ '../../src/compiler/pipeline.cc',
-+ '../../src/compiler/pipeline.h',
-+ '../../src/compiler/pipeline-statistics.cc',
-+ '../../src/compiler/pipeline-statistics.h',
-+ '../../src/compiler/raw-machine-assembler.cc',
-+ '../../src/compiler/raw-machine-assembler.h',
-+ '../../src/compiler/register-allocator.cc',
-+ '../../src/compiler/register-allocator.h',
-+ '../../src/compiler/register-allocator-verifier.cc',
-+ '../../src/compiler/register-allocator-verifier.h',
-+ '../../src/compiler/register-configuration.cc',
-+ '../../src/compiler/register-configuration.h',
-+ '../../src/compiler/representation-change.h',
-+ '../../src/compiler/schedule.cc',
-+ '../../src/compiler/schedule.h',
-+ '../../src/compiler/scheduler.cc',
-+ '../../src/compiler/scheduler.h',
-+ '../../src/compiler/select-lowering.cc',
-+ '../../src/compiler/select-lowering.h',
-+ '../../src/compiler/simplified-lowering.cc',
-+ '../../src/compiler/simplified-lowering.h',
-+ '../../src/compiler/simplified-operator-reducer.cc',
-+ '../../src/compiler/simplified-operator-reducer.h',
-+ '../../src/compiler/simplified-operator.cc',
-+ '../../src/compiler/simplified-operator.h',
-+ '../../src/compiler/source-position.cc',
-+ '../../src/compiler/source-position.h',
-+ '../../src/compiler/state-values-utils.cc',
-+ '../../src/compiler/state-values-utils.h',
-+ '../../src/compiler/tail-call-optimization.cc',
-+ '../../src/compiler/tail-call-optimization.h',
-+ '../../src/compiler/typer.cc',
-+ '../../src/compiler/typer.h',
-+ '../../src/compiler/value-numbering-reducer.cc',
-+ '../../src/compiler/value-numbering-reducer.h',
-+ '../../src/compiler/verifier.cc',
-+ '../../src/compiler/verifier.h',
-+ '../../src/compiler/zone-pool.cc',
-+ '../../src/compiler/zone-pool.h',
-+ '../../src/compiler.cc',
-+ '../../src/compiler.h',
-+ '../../src/contexts.cc',
-+ '../../src/contexts.h',
-+ '../../src/conversions-inl.h',
-+ '../../src/conversions.cc',
-+ '../../src/conversions.h',
-+ '../../src/counters.cc',
-+ '../../src/counters.h',
-+ '../../src/cpu-profiler-inl.h',
-+ '../../src/cpu-profiler.cc',
-+ '../../src/cpu-profiler.h',
-+ '../../src/date.cc',
-+ '../../src/date.h',
-+ '../../src/dateparser-inl.h',
-+ '../../src/dateparser.cc',
-+ '../../src/dateparser.h',
-+ '../../src/debug.cc',
-+ '../../src/debug.h',
-+ '../../src/deoptimizer.cc',
-+ '../../src/deoptimizer.h',
-+ '../../src/disasm.h',
-+ '../../src/disassembler.cc',
-+ '../../src/disassembler.h',
-+ '../../src/diy-fp.cc',
-+ '../../src/diy-fp.h',
-+ '../../src/double.h',
-+ '../../src/dtoa.cc',
-+ '../../src/dtoa.h',
-+ '../../src/effects.h',
-+ '../../src/elements-kind.cc',
-+ '../../src/elements-kind.h',
-+ '../../src/elements.cc',
-+ '../../src/elements.h',
-+ '../../src/execution.cc',
-+ '../../src/execution.h',
-+ '../../src/expression-classifier.h',
-+ '../../src/extensions/externalize-string-extension.cc',
-+ '../../src/extensions/externalize-string-extension.h',
-+ '../../src/extensions/free-buffer-extension.cc',
-+ '../../src/extensions/free-buffer-extension.h',
-+ '../../src/extensions/gc-extension.cc',
-+ '../../src/extensions/gc-extension.h',
-+ '../../src/extensions/statistics-extension.cc',
-+ '../../src/extensions/statistics-extension.h',
-+ '../../src/extensions/trigger-failure-extension.cc',
-+ '../../src/extensions/trigger-failure-extension.h',
-+ '../../src/factory.cc',
-+ '../../src/factory.h',
-+ '../../src/fast-dtoa.cc',
-+ '../../src/fast-dtoa.h',
-+ '../../src/field-index.h',
-+ '../../src/field-index-inl.h',
-+ '../../src/fixed-dtoa.cc',
-+ '../../src/fixed-dtoa.h',
-+ '../../src/flag-definitions.h',
-+ '../../src/flags.cc',
-+ '../../src/flags.h',
-+ '../../src/frames-inl.h',
-+ '../../src/frames.cc',
-+ '../../src/frames.h',
-+ '../../src/full-codegen.cc',
-+ '../../src/full-codegen.h',
-+ '../../src/func-name-inferrer.cc',
-+ '../../src/func-name-inferrer.h',
-+ '../../src/gdb-jit.cc',
-+ '../../src/gdb-jit.h',
-+ '../../src/global-handles.cc',
-+ '../../src/global-handles.h',
-+ '../../src/globals.h',
-+ '../../src/handles-inl.h',
-+ '../../src/handles.cc',
-+ '../../src/handles.h',
-+ '../../src/hashmap.h',
-+ '../../src/heap-profiler.cc',
-+ '../../src/heap-profiler.h',
-+ '../../src/heap-snapshot-generator-inl.h',
-+ '../../src/heap-snapshot-generator.cc',
-+ '../../src/heap-snapshot-generator.h',
-+ '../../src/heap/memory-reducer.cc',
-+ '../../src/heap/memory-reducer.h',
-+ '../../src/heap/gc-idle-time-handler.cc',
-+ '../../src/heap/gc-idle-time-handler.h',
-+ '../../src/heap/gc-tracer.cc',
-+ '../../src/heap/gc-tracer.h',
-+ '../../src/heap/heap-inl.h',
-+ '../../src/heap/heap.cc',
-+ '../../src/heap/heap.h',
-+ '../../src/heap/identity-map.cc',
-+ '../../src/heap/identity-map.h',
-+ '../../src/heap/incremental-marking-inl.h',
-+ '../../src/heap/incremental-marking.cc',
-+ '../../src/heap/incremental-marking.h',
-+ '../../src/heap/mark-compact-inl.h',
-+ '../../src/heap/mark-compact.cc',
-+ '../../src/heap/mark-compact.h',
-+ '../../src/heap/objects-visiting-inl.h',
-+ '../../src/heap/objects-visiting.cc',
-+ '../../src/heap/objects-visiting.h',
-+ '../../src/heap/spaces-inl.h',
-+ '../../src/heap/spaces.cc',
-+ '../../src/heap/spaces.h',
-+ '../../src/heap/store-buffer-inl.h',
-+ '../../src/heap/store-buffer.cc',
-+ '../../src/heap/store-buffer.h',
-+ '../../src/hydrogen-alias-analysis.h',
-+ '../../src/hydrogen-bce.cc',
-+ '../../src/hydrogen-bce.h',
-+ '../../src/hydrogen-bch.cc',
-+ '../../src/hydrogen-bch.h',
-+ '../../src/hydrogen-canonicalize.cc',
-+ '../../src/hydrogen-canonicalize.h',
-+ '../../src/hydrogen-check-elimination.cc',
-+ '../../src/hydrogen-check-elimination.h',
-+ '../../src/hydrogen-dce.cc',
-+ '../../src/hydrogen-dce.h',
-+ '../../src/hydrogen-dehoist.cc',
-+ '../../src/hydrogen-dehoist.h',
-+ '../../src/hydrogen-environment-liveness.cc',
-+ '../../src/hydrogen-environment-liveness.h',
-+ '../../src/hydrogen-escape-analysis.cc',
-+ '../../src/hydrogen-escape-analysis.h',
-+ '../../src/hydrogen-flow-engine.h',
-+ '../../src/hydrogen-instructions.cc',
-+ '../../src/hydrogen-instructions.h',
-+ '../../src/hydrogen.cc',
-+ '../../src/hydrogen.h',
-+ '../../src/hydrogen-gvn.cc',
-+ '../../src/hydrogen-gvn.h',
-+ '../../src/hydrogen-infer-representation.cc',
-+ '../../src/hydrogen-infer-representation.h',
-+ '../../src/hydrogen-infer-types.cc',
-+ '../../src/hydrogen-infer-types.h',
-+ '../../src/hydrogen-load-elimination.cc',
-+ '../../src/hydrogen-load-elimination.h',
-+ '../../src/hydrogen-mark-deoptimize.cc',
-+ '../../src/hydrogen-mark-deoptimize.h',
-+ '../../src/hydrogen-mark-unreachable.cc',
-+ '../../src/hydrogen-mark-unreachable.h',
-+ '../../src/hydrogen-osr.cc',
-+ '../../src/hydrogen-osr.h',
-+ '../../src/hydrogen-range-analysis.cc',
-+ '../../src/hydrogen-range-analysis.h',
-+ '../../src/hydrogen-redundant-phi.cc',
-+ '../../src/hydrogen-redundant-phi.h',
-+ '../../src/hydrogen-removable-simulates.cc',
-+ '../../src/hydrogen-removable-simulates.h',
-+ '../../src/hydrogen-representation-changes.cc',
-+ '../../src/hydrogen-representation-changes.h',
-+ '../../src/hydrogen-sce.cc',
-+ '../../src/hydrogen-sce.h',
-+ '../../src/hydrogen-store-elimination.cc',
-+ '../../src/hydrogen-store-elimination.h',
-+ '../../src/hydrogen-types.cc',
-+ '../../src/hydrogen-types.h',
-+ '../../src/hydrogen-uint32-analysis.cc',
-+ '../../src/hydrogen-uint32-analysis.h',
-+ '../../src/i18n.cc',
-+ '../../src/i18n.h',
-+ '../../src/icu_util.cc',
-+ '../../src/icu_util.h',
-+ '../../src/ic/access-compiler.cc',
-+ '../../src/ic/access-compiler.h',
-+ '../../src/ic/call-optimization.cc',
-+ '../../src/ic/call-optimization.h',
-+ '../../src/ic/handler-compiler.cc',
-+ '../../src/ic/handler-compiler.h',
-+ '../../src/ic/ic-inl.h',
-+ '../../src/ic/ic-state.cc',
-+ '../../src/ic/ic-state.h',
-+ '../../src/ic/ic.cc',
-+ '../../src/ic/ic.h',
-+ '../../src/ic/ic-compiler.cc',
-+ '../../src/ic/ic-compiler.h',
-+ '../../src/interface-descriptors.cc',
-+ '../../src/interface-descriptors.h',
-+ '../../src/interpreter-irregexp.cc',
-+ '../../src/interpreter-irregexp.h',
-+ '../../src/isolate.cc',
-+ '../../src/isolate.h',
-+ '../../src/json-parser.h',
-+ '../../src/json-stringifier.h',
-+ '../../src/jsregexp-inl.h',
-+ '../../src/jsregexp.cc',
-+ '../../src/jsregexp.h',
-+ '../../src/layout-descriptor-inl.h',
-+ '../../src/layout-descriptor.cc',
-+ '../../src/layout-descriptor.h',
-+ '../../src/list-inl.h',
-+ '../../src/list.h',
-+ '../../src/lithium-allocator-inl.h',
-+ '../../src/lithium-allocator.cc',
-+ '../../src/lithium-allocator.h',
-+ '../../src/lithium-codegen.cc',
-+ '../../src/lithium-codegen.h',
-+ '../../src/lithium.cc',
-+ '../../src/lithium.h',
-+ '../../src/lithium-inl.h',
-+ '../../src/liveedit.cc',
-+ '../../src/liveedit.h',
-+ '../../src/log-inl.h',
-+ '../../src/log-utils.cc',
-+ '../../src/log-utils.h',
-+ '../../src/log.cc',
-+ '../../src/log.h',
-+ '../../src/lookup-inl.h',
-+ '../../src/lookup.cc',
-+ '../../src/lookup.h',
-+ '../../src/macro-assembler.h',
-+ '../../src/messages.cc',
-+ '../../src/messages.h',
-+ '../../src/modules.cc',
-+ '../../src/modules.h',
-+ '../../src/msan.h',
-+ '../../src/objects-debug.cc',
-+ '../../src/objects-inl.h',
-+ '../../src/objects-printer.cc',
-+ '../../src/objects.cc',
-+ '../../src/objects.h',
-+ '../../src/optimizing-compile-dispatcher.cc',
-+ '../../src/optimizing-compile-dispatcher.h',
-+ '../../src/ostreams.cc',
-+ '../../src/ostreams.h',
-+ '../../src/pattern-rewriter.cc',
-+ '../../src/parser.cc',
-+ '../../src/parser.h',
-+ '../../src/pending-compilation-error-handler.cc',
-+ '../../src/pending-compilation-error-handler.h',
-+ '../../src/preparse-data-format.h',
-+ '../../src/preparse-data.cc',
-+ '../../src/preparse-data.h',
-+ '../../src/preparser.cc',
-+ '../../src/preparser.h',
-+ '../../src/prettyprinter.cc',
-+ '../../src/prettyprinter.h',
-+ '../../src/profile-generator-inl.h',
-+ '../../src/profile-generator.cc',
-+ '../../src/profile-generator.h',
-+ '../../src/property-details.h',
-+ '../../src/property.cc',
-+ '../../src/property.h',
-+ '../../src/prototype.h',
-+ '../../src/regexp-macro-assembler-irregexp-inl.h',
-+ '../../src/regexp-macro-assembler-irregexp.cc',
-+ '../../src/regexp-macro-assembler-irregexp.h',
-+ '../../src/regexp-macro-assembler-tracer.cc',
-+ '../../src/regexp-macro-assembler-tracer.h',
-+ '../../src/regexp-macro-assembler.cc',
-+ '../../src/regexp-macro-assembler.h',
-+ '../../src/regexp-stack.cc',
-+ '../../src/regexp-stack.h',
-+ '../../src/rewriter.cc',
-+ '../../src/rewriter.h',
-+ '../../src/runtime-profiler.cc',
-+ '../../src/runtime-profiler.h',
-+ '../../src/runtime/runtime-array.cc',
-+ '../../src/runtime/runtime-atomics.cc',
-+ '../../src/runtime/runtime-classes.cc',
-+ '../../src/runtime/runtime-collections.cc',
-+ '../../src/runtime/runtime-compiler.cc',
-+ '../../src/runtime/runtime-date.cc',
-+ '../../src/runtime/runtime-debug.cc',
-+ '../../src/runtime/runtime-forin.cc',
-+ '../../src/runtime/runtime-function.cc',
-+ '../../src/runtime/runtime-generator.cc',
-+ '../../src/runtime/runtime-i18n.cc',
-+ '../../src/runtime/runtime-internal.cc',
-+ '../../src/runtime/runtime-json.cc',
-+ '../../src/runtime/runtime-literals.cc',
-+ '../../src/runtime/runtime-liveedit.cc',
-+ '../../src/runtime/runtime-maths.cc',
-+ '../../src/runtime/runtime-numbers.cc',
-+ '../../src/runtime/runtime-object.cc',
-+ '../../src/runtime/runtime-observe.cc',
-+ '../../src/runtime/runtime-proxy.cc',
-+ '../../src/runtime/runtime-regexp.cc',
-+ '../../src/runtime/runtime-scopes.cc',
-+ '../../src/runtime/runtime-strings.cc',
-+ '../../src/runtime/runtime-symbol.cc',
-+ '../../src/runtime/runtime-test.cc',
-+ '../../src/runtime/runtime-typedarray.cc',
-+ '../../src/runtime/runtime-uri.cc',
-+ '../../src/runtime/runtime-utils.h',
-+ '../../src/runtime/runtime.cc',
-+ '../../src/runtime/runtime.h',
-+ '../../src/safepoint-table.cc',
-+ '../../src/safepoint-table.h',
-+ '../../src/sampler.cc',
-+ '../../src/sampler.h',
-+ '../../src/scanner-character-streams.cc',
-+ '../../src/scanner-character-streams.h',
-+ '../../src/scanner.cc',
-+ '../../src/scanner.h',
-+ '../../src/scopeinfo.cc',
-+ '../../src/scopeinfo.h',
-+ '../../src/scopes.cc',
-+ '../../src/scopes.h',
-+ '../../src/signature.h',
-+ '../../src/simulator.h',
-+ '../../src/small-pointer-list.h',
-+ '../../src/smart-pointers.h',
-+ '../../src/snapshot/natives.h',
-+ '../../src/snapshot/serialize.cc',
-+ '../../src/snapshot/serialize.h',
-+ '../../src/snapshot/snapshot.h',
-+ '../../src/snapshot/snapshot-common.cc',
-+ '../../src/snapshot/snapshot-source-sink.cc',
-+ '../../src/snapshot/snapshot-source-sink.h',
-+ '../../src/splay-tree.h',
-+ '../../src/splay-tree-inl.h',
-+ '../../src/startup-data-util.cc',
-+ '../../src/startup-data-util.h',
-+ '../../src/string-builder.cc',
-+ '../../src/string-builder.h',
-+ '../../src/string-search.cc',
-+ '../../src/string-search.h',
-+ '../../src/string-stream.cc',
-+ '../../src/string-stream.h',
-+ '../../src/strings-storage.cc',
-+ '../../src/strings-storage.h',
-+ '../../src/strtod.cc',
-+ '../../src/strtod.h',
-+ '../../src/ic/stub-cache.cc',
-+ '../../src/ic/stub-cache.h',
-+ '../../src/token.cc',
-+ '../../src/token.h',
-+ '../../src/transitions-inl.h',
-+ '../../src/transitions.cc',
-+ '../../src/transitions.h',
-+ '../../src/type-feedback-vector-inl.h',
-+ '../../src/type-feedback-vector.cc',
-+ '../../src/type-feedback-vector.h',
-+ '../../src/type-info.cc',
-+ '../../src/type-info.h',
-+ '../../src/types-inl.h',
-+ '../../src/types.cc',
-+ '../../src/types.h',
-+ '../../src/typing.cc',
-+ '../../src/typing.h',
-+ '../../src/unbound-queue-inl.h',
-+ '../../src/unbound-queue.h',
-+ '../../src/unicode-inl.h',
-+ '../../src/unicode.cc',
-+ '../../src/unicode.h',
-+ '../../src/unicode-decoder.cc',
-+ '../../src/unicode-decoder.h',
-+ '../../src/unique.h',
-+ '../../src/utils.cc',
-+ '../../src/utils.h',
-+ '../../src/v8.cc',
-+ '../../src/v8.h',
-+ '../../src/v8memory.h',
-+ '../../src/v8threads.cc',
-+ '../../src/v8threads.h',
-+ '../../src/variables.cc',
-+ '../../src/variables.h',
-+ '../../src/vector.h',
-+ '../../src/version.cc',
-+ '../../src/version.h',
-+ '../../src/vm-state-inl.h',
-+ '../../src/vm-state.h',
-+ '../../src/zone.cc',
-+ '../../src/zone.h',
-+ '../../src/zone-allocator.h',
-+ '../../src/zone-containers.h',
-+ '../../src/third_party/fdlibm/fdlibm.cc',
-+ '../../src/third_party/fdlibm/fdlibm.h',
-+ ],
-+ 'conditions': [
-+ ['OS!="win" and remove_v8base_debug_symbols==1', {
-+ 'cflags!': ['-g', '-gdwarf-4'],
-+ }],
-+ ['want_separate_host_toolset==1', {
-+ 'toolsets': ['host', 'target'],
-+ }, {
-+ 'toolsets': ['target'],
-+ }],
-+ ['v8_target_arch=="arm"', {
-+ 'sources': [ ### gcmole(arch:arm) ###
-+ '../../src/arm/assembler-arm-inl.h',
-+ '../../src/arm/assembler-arm.cc',
-+ '../../src/arm/assembler-arm.h',
-+ '../../src/arm/builtins-arm.cc',
-+ '../../src/arm/code-stubs-arm.cc',
-+ '../../src/arm/code-stubs-arm.h',
-+ '../../src/arm/codegen-arm.cc',
-+ '../../src/arm/codegen-arm.h',
-+ '../../src/arm/constants-arm.h',
-+ '../../src/arm/constants-arm.cc',
-+ '../../src/arm/cpu-arm.cc',
-+ '../../src/arm/debug-arm.cc',
-+ '../../src/arm/deoptimizer-arm.cc',
-+ '../../src/arm/disasm-arm.cc',
-+ '../../src/arm/frames-arm.cc',
-+ '../../src/arm/frames-arm.h',
-+ '../../src/arm/full-codegen-arm.cc',
-+ '../../src/arm/interface-descriptors-arm.cc',
-+ '../../src/arm/interface-descriptors-arm.h',
-+ '../../src/arm/lithium-arm.cc',
-+ '../../src/arm/lithium-arm.h',
-+ '../../src/arm/lithium-codegen-arm.cc',
-+ '../../src/arm/lithium-codegen-arm.h',
-+ '../../src/arm/lithium-gap-resolver-arm.cc',
-+ '../../src/arm/lithium-gap-resolver-arm.h',
-+ '../../src/arm/macro-assembler-arm.cc',
-+ '../../src/arm/macro-assembler-arm.h',
-+ '../../src/arm/regexp-macro-assembler-arm.cc',
-+ '../../src/arm/regexp-macro-assembler-arm.h',
-+ '../../src/arm/simulator-arm.cc',
-+ '../../src/arm/simulator-arm.h',
-+ '../../src/compiler/arm/code-generator-arm.cc',
-+ '../../src/compiler/arm/instruction-codes-arm.h',
-+ '../../src/compiler/arm/instruction-selector-arm.cc',
-+ '../../src/compiler/arm/linkage-arm.cc',
-+ '../../src/ic/arm/access-compiler-arm.cc',
-+ '../../src/ic/arm/handler-compiler-arm.cc',
-+ '../../src/ic/arm/ic-arm.cc',
-+ '../../src/ic/arm/ic-compiler-arm.cc',
-+ '../../src/ic/arm/stub-cache-arm.cc',
-+ ],
-+ }],
-+ ['v8_target_arch=="arm64"', {
-+ 'sources': [ ### gcmole(arch:arm64) ###
-+ '../../src/arm64/assembler-arm64.cc',
-+ '../../src/arm64/assembler-arm64.h',
-+ '../../src/arm64/assembler-arm64-inl.h',
-+ '../../src/arm64/builtins-arm64.cc',
-+ '../../src/arm64/codegen-arm64.cc',
-+ '../../src/arm64/codegen-arm64.h',
-+ '../../src/arm64/code-stubs-arm64.cc',
-+ '../../src/arm64/code-stubs-arm64.h',
-+ '../../src/arm64/constants-arm64.h',
-+ '../../src/arm64/cpu-arm64.cc',
-+ '../../src/arm64/debug-arm64.cc',
-+ '../../src/arm64/decoder-arm64.cc',
-+ '../../src/arm64/decoder-arm64.h',
-+ '../../src/arm64/decoder-arm64-inl.h',
-+ '../../src/arm64/delayed-masm-arm64.cc',
-+ '../../src/arm64/delayed-masm-arm64.h',
-+ '../../src/arm64/delayed-masm-arm64-inl.h',
-+ '../../src/arm64/deoptimizer-arm64.cc',
-+ '../../src/arm64/disasm-arm64.cc',
-+ '../../src/arm64/disasm-arm64.h',
-+ '../../src/arm64/frames-arm64.cc',
-+ '../../src/arm64/frames-arm64.h',
-+ '../../src/arm64/full-codegen-arm64.cc',
-+ '../../src/arm64/instructions-arm64.cc',
-+ '../../src/arm64/instructions-arm64.h',
-+ '../../src/arm64/instrument-arm64.cc',
-+ '../../src/arm64/instrument-arm64.h',
-+ '../../src/arm64/interface-descriptors-arm64.cc',
-+ '../../src/arm64/interface-descriptors-arm64.h',
-+ '../../src/arm64/lithium-arm64.cc',
-+ '../../src/arm64/lithium-arm64.h',
-+ '../../src/arm64/lithium-codegen-arm64.cc',
-+ '../../src/arm64/lithium-codegen-arm64.h',
-+ '../../src/arm64/lithium-gap-resolver-arm64.cc',
-+ '../../src/arm64/lithium-gap-resolver-arm64.h',
-+ '../../src/arm64/macro-assembler-arm64.cc',
-+ '../../src/arm64/macro-assembler-arm64.h',
-+ '../../src/arm64/macro-assembler-arm64-inl.h',
-+ '../../src/arm64/regexp-macro-assembler-arm64.cc',
-+ '../../src/arm64/regexp-macro-assembler-arm64.h',
-+ '../../src/arm64/simulator-arm64.cc',
-+ '../../src/arm64/simulator-arm64.h',
-+ '../../src/arm64/utils-arm64.cc',
-+ '../../src/arm64/utils-arm64.h',
-+ '../../src/compiler/arm64/code-generator-arm64.cc',
-+ '../../src/compiler/arm64/instruction-codes-arm64.h',
-+ '../../src/compiler/arm64/instruction-selector-arm64.cc',
-+ '../../src/compiler/arm64/linkage-arm64.cc',
-+ '../../src/ic/arm64/access-compiler-arm64.cc',
-+ '../../src/ic/arm64/handler-compiler-arm64.cc',
-+ '../../src/ic/arm64/ic-arm64.cc',
-+ '../../src/ic/arm64/ic-compiler-arm64.cc',
-+ '../../src/ic/arm64/stub-cache-arm64.cc',
-+ ],
-+ }],
-+ ['v8_target_arch=="ia32"', {
-+ 'sources': [ ### gcmole(arch:ia32) ###
-+ '../../src/ia32/assembler-ia32-inl.h',
-+ '../../src/ia32/assembler-ia32.cc',
-+ '../../src/ia32/assembler-ia32.h',
-+ '../../src/ia32/builtins-ia32.cc',
-+ '../../src/ia32/code-stubs-ia32.cc',
-+ '../../src/ia32/code-stubs-ia32.h',
-+ '../../src/ia32/codegen-ia32.cc',
-+ '../../src/ia32/codegen-ia32.h',
-+ '../../src/ia32/cpu-ia32.cc',
-+ '../../src/ia32/debug-ia32.cc',
-+ '../../src/ia32/deoptimizer-ia32.cc',
-+ '../../src/ia32/disasm-ia32.cc',
-+ '../../src/ia32/frames-ia32.cc',
-+ '../../src/ia32/frames-ia32.h',
-+ '../../src/ia32/full-codegen-ia32.cc',
-+ '../../src/ia32/interface-descriptors-ia32.cc',
-+ '../../src/ia32/lithium-codegen-ia32.cc',
-+ '../../src/ia32/lithium-codegen-ia32.h',
-+ '../../src/ia32/lithium-gap-resolver-ia32.cc',
-+ '../../src/ia32/lithium-gap-resolver-ia32.h',
-+ '../../src/ia32/lithium-ia32.cc',
-+ '../../src/ia32/lithium-ia32.h',
-+ '../../src/ia32/macro-assembler-ia32.cc',
-+ '../../src/ia32/macro-assembler-ia32.h',
-+ '../../src/ia32/regexp-macro-assembler-ia32.cc',
-+ '../../src/ia32/regexp-macro-assembler-ia32.h',
-+ '../../src/compiler/ia32/code-generator-ia32.cc',
-+ '../../src/compiler/ia32/instruction-codes-ia32.h',
-+ '../../src/compiler/ia32/instruction-selector-ia32.cc',
-+ '../../src/compiler/ia32/linkage-ia32.cc',
-+ '../../src/ic/ia32/access-compiler-ia32.cc',
-+ '../../src/ic/ia32/handler-compiler-ia32.cc',
-+ '../../src/ic/ia32/ic-ia32.cc',
-+ '../../src/ic/ia32/ic-compiler-ia32.cc',
-+ '../../src/ic/ia32/stub-cache-ia32.cc',
-+ ],
-+ }],
-+ ['v8_target_arch=="x87"', {
-+ 'sources': [ ### gcmole(arch:x87) ###
-+ '../../src/x87/assembler-x87-inl.h',
-+ '../../src/x87/assembler-x87.cc',
-+ '../../src/x87/assembler-x87.h',
-+ '../../src/x87/builtins-x87.cc',
-+ '../../src/x87/code-stubs-x87.cc',
-+ '../../src/x87/code-stubs-x87.h',
-+ '../../src/x87/codegen-x87.cc',
-+ '../../src/x87/codegen-x87.h',
-+ '../../src/x87/cpu-x87.cc',
-+ '../../src/x87/debug-x87.cc',
-+ '../../src/x87/deoptimizer-x87.cc',
-+ '../../src/x87/disasm-x87.cc',
-+ '../../src/x87/frames-x87.cc',
-+ '../../src/x87/frames-x87.h',
-+ '../../src/x87/full-codegen-x87.cc',
-+ '../../src/x87/interface-descriptors-x87.cc',
-+ '../../src/x87/lithium-codegen-x87.cc',
-+ '../../src/x87/lithium-codegen-x87.h',
-+ '../../src/x87/lithium-gap-resolver-x87.cc',
-+ '../../src/x87/lithium-gap-resolver-x87.h',
-+ '../../src/x87/lithium-x87.cc',
-+ '../../src/x87/lithium-x87.h',
-+ '../../src/x87/macro-assembler-x87.cc',
-+ '../../src/x87/macro-assembler-x87.h',
-+ '../../src/x87/regexp-macro-assembler-x87.cc',
-+ '../../src/x87/regexp-macro-assembler-x87.h',
-+ '../../src/compiler/x87/code-generator-x87.cc',
-+ '../../src/compiler/x87/instruction-codes-x87.h',
-+ '../../src/compiler/x87/instruction-selector-x87.cc',
-+ '../../src/compiler/x87/linkage-x87.cc',
-+ '../../src/ic/x87/access-compiler-x87.cc',
-+ '../../src/ic/x87/handler-compiler-x87.cc',
-+ '../../src/ic/x87/ic-x87.cc',
-+ '../../src/ic/x87/ic-compiler-x87.cc',
-+ '../../src/ic/x87/stub-cache-x87.cc',
-+ ],
-+ }],
-+ ['v8_target_arch=="mips" or v8_target_arch=="mipsel"', {
-+ 'sources': [ ### gcmole(arch:mipsel) ###
-+ '../../src/mips/assembler-mips.cc',
-+ '../../src/mips/assembler-mips.h',
-+ '../../src/mips/assembler-mips-inl.h',
-+ '../../src/mips/builtins-mips.cc',
-+ '../../src/mips/codegen-mips.cc',
-+ '../../src/mips/codegen-mips.h',
-+ '../../src/mips/code-stubs-mips.cc',
-+ '../../src/mips/code-stubs-mips.h',
-+ '../../src/mips/constants-mips.cc',
-+ '../../src/mips/constants-mips.h',
-+ '../../src/mips/cpu-mips.cc',
-+ '../../src/mips/debug-mips.cc',
-+ '../../src/mips/deoptimizer-mips.cc',
-+ '../../src/mips/disasm-mips.cc',
-+ '../../src/mips/frames-mips.cc',
-+ '../../src/mips/frames-mips.h',
-+ '../../src/mips/full-codegen-mips.cc',
-+ '../../src/mips/interface-descriptors-mips.cc',
-+ '../../src/mips/lithium-codegen-mips.cc',
-+ '../../src/mips/lithium-codegen-mips.h',
-+ '../../src/mips/lithium-gap-resolver-mips.cc',
-+ '../../src/mips/lithium-gap-resolver-mips.h',
-+ '../../src/mips/lithium-mips.cc',
-+ '../../src/mips/lithium-mips.h',
-+ '../../src/mips/macro-assembler-mips.cc',
-+ '../../src/mips/macro-assembler-mips.h',
-+ '../../src/mips/regexp-macro-assembler-mips.cc',
-+ '../../src/mips/regexp-macro-assembler-mips.h',
-+ '../../src/mips/simulator-mips.cc',
-+ '../../src/mips/simulator-mips.h',
-+ '../../src/compiler/mips/code-generator-mips.cc',
-+ '../../src/compiler/mips/instruction-codes-mips.h',
-+ '../../src/compiler/mips/instruction-selector-mips.cc',
-+ '../../src/compiler/mips/linkage-mips.cc',
-+ '../../src/ic/mips/access-compiler-mips.cc',
-+ '../../src/ic/mips/handler-compiler-mips.cc',
-+ '../../src/ic/mips/ic-mips.cc',
-+ '../../src/ic/mips/ic-compiler-mips.cc',
-+ '../../src/ic/mips/stub-cache-mips.cc',
-+ ],
-+ }],
-+ ['v8_target_arch=="mips64el"', {
-+ 'sources': [ ### gcmole(arch:mips64el) ###
-+ '../../src/mips64/assembler-mips64.cc',
-+ '../../src/mips64/assembler-mips64.h',
-+ '../../src/mips64/assembler-mips64-inl.h',
-+ '../../src/mips64/builtins-mips64.cc',
-+ '../../src/mips64/codegen-mips64.cc',
-+ '../../src/mips64/codegen-mips64.h',
-+ '../../src/mips64/code-stubs-mips64.cc',
-+ '../../src/mips64/code-stubs-mips64.h',
-+ '../../src/mips64/constants-mips64.cc',
-+ '../../src/mips64/constants-mips64.h',
-+ '../../src/mips64/cpu-mips64.cc',
-+ '../../src/mips64/debug-mips64.cc',
-+ '../../src/mips64/deoptimizer-mips64.cc',
-+ '../../src/mips64/disasm-mips64.cc',
-+ '../../src/mips64/frames-mips64.cc',
-+ '../../src/mips64/frames-mips64.h',
-+ '../../src/mips64/full-codegen-mips64.cc',
-+ '../../src/mips64/interface-descriptors-mips64.cc',
-+ '../../src/mips64/lithium-codegen-mips64.cc',
-+ '../../src/mips64/lithium-codegen-mips64.h',
-+ '../../src/mips64/lithium-gap-resolver-mips64.cc',
-+ '../../src/mips64/lithium-gap-resolver-mips64.h',
-+ '../../src/mips64/lithium-mips64.cc',
-+ '../../src/mips64/lithium-mips64.h',
-+ '../../src/mips64/macro-assembler-mips64.cc',
-+ '../../src/mips64/macro-assembler-mips64.h',
-+ '../../src/mips64/regexp-macro-assembler-mips64.cc',
-+ '../../src/mips64/regexp-macro-assembler-mips64.h',
-+ '../../src/mips64/simulator-mips64.cc',
-+ '../../src/mips64/simulator-mips64.h',
-+ '../../src/compiler/mips64/code-generator-mips64.cc',
-+ '../../src/compiler/mips64/instruction-codes-mips64.h',
-+ '../../src/compiler/mips64/instruction-selector-mips64.cc',
-+ '../../src/compiler/mips64/linkage-mips64.cc',
-+ '../../src/ic/mips64/access-compiler-mips64.cc',
-+ '../../src/ic/mips64/handler-compiler-mips64.cc',
-+ '../../src/ic/mips64/ic-mips64.cc',
-+ '../../src/ic/mips64/ic-compiler-mips64.cc',
-+ '../../src/ic/mips64/stub-cache-mips64.cc',
-+ ],
-+ }],
-+ ['v8_target_arch=="x64" or v8_target_arch=="x32"', {
-+ 'sources': [ ### gcmole(arch:x64) ###
-+ '../../src/x64/assembler-x64-inl.h',
-+ '../../src/x64/assembler-x64.cc',
-+ '../../src/x64/assembler-x64.h',
-+ '../../src/x64/builtins-x64.cc',
-+ '../../src/x64/code-stubs-x64.cc',
-+ '../../src/x64/code-stubs-x64.h',
-+ '../../src/x64/codegen-x64.cc',
-+ '../../src/x64/codegen-x64.h',
-+ '../../src/x64/cpu-x64.cc',
-+ '../../src/x64/debug-x64.cc',
-+ '../../src/x64/deoptimizer-x64.cc',
-+ '../../src/x64/disasm-x64.cc',
-+ '../../src/x64/frames-x64.cc',
-+ '../../src/x64/frames-x64.h',
-+ '../../src/x64/full-codegen-x64.cc',
-+ '../../src/x64/interface-descriptors-x64.cc',
-+ '../../src/x64/lithium-codegen-x64.cc',
-+ '../../src/x64/lithium-codegen-x64.h',
-+ '../../src/x64/lithium-gap-resolver-x64.cc',
-+ '../../src/x64/lithium-gap-resolver-x64.h',
-+ '../../src/x64/lithium-x64.cc',
-+ '../../src/x64/lithium-x64.h',
-+ '../../src/x64/macro-assembler-x64.cc',
-+ '../../src/x64/macro-assembler-x64.h',
-+ '../../src/x64/regexp-macro-assembler-x64.cc',
-+ '../../src/x64/regexp-macro-assembler-x64.h',
-+ '../../src/ic/x64/access-compiler-x64.cc',
-+ '../../src/ic/x64/handler-compiler-x64.cc',
-+ '../../src/ic/x64/ic-x64.cc',
-+ '../../src/ic/x64/ic-compiler-x64.cc',
-+ '../../src/ic/x64/stub-cache-x64.cc',
-+ ],
-+ }],
-+ ['v8_target_arch=="x64"', {
-+ 'sources': [
-+ '../../src/compiler/x64/code-generator-x64.cc',
-+ '../../src/compiler/x64/instruction-codes-x64.h',
-+ '../../src/compiler/x64/instruction-selector-x64.cc',
-+ '../../src/compiler/x64/linkage-x64.cc',
-+ ],
-+ }],
-+ ['v8_target_arch=="ppc" or v8_target_arch=="ppc64"', {
-+ 'sources': [ ### gcmole(arch:ppc) ###
-+ '../../src/ppc/assembler-ppc-inl.h',
-+ '../../src/ppc/assembler-ppc.cc',
-+ '../../src/ppc/assembler-ppc.h',
-+ '../../src/ppc/builtins-ppc.cc',
-+ '../../src/ppc/code-stubs-ppc.cc',
-+ '../../src/ppc/code-stubs-ppc.h',
-+ '../../src/ppc/codegen-ppc.cc',
-+ '../../src/ppc/codegen-ppc.h',
-+ '../../src/ppc/constants-ppc.h',
-+ '../../src/ppc/constants-ppc.cc',
-+ '../../src/ppc/cpu-ppc.cc',
-+ '../../src/ppc/debug-ppc.cc',
-+ '../../src/ppc/deoptimizer-ppc.cc',
-+ '../../src/ppc/disasm-ppc.cc',
-+ '../../src/ppc/frames-ppc.cc',
-+ '../../src/ppc/frames-ppc.h',
-+ '../../src/ppc/full-codegen-ppc.cc',
-+ '../../src/ppc/interface-descriptors-ppc.cc',
-+ '../../src/ppc/interface-descriptors-ppc.h',
-+ '../../src/ppc/lithium-ppc.cc',
-+ '../../src/ppc/lithium-ppc.h',
-+ '../../src/ppc/lithium-codegen-ppc.cc',
-+ '../../src/ppc/lithium-codegen-ppc.h',
-+ '../../src/ppc/lithium-gap-resolver-ppc.cc',
-+ '../../src/ppc/lithium-gap-resolver-ppc.h',
-+ '../../src/ppc/macro-assembler-ppc.cc',
-+ '../../src/ppc/macro-assembler-ppc.h',
-+ '../../src/ppc/regexp-macro-assembler-ppc.cc',
-+ '../../src/ppc/regexp-macro-assembler-ppc.h',
-+ '../../src/ppc/simulator-ppc.cc',
-+ '../../src/ppc/simulator-ppc.h',
-+ '../../src/compiler/ppc/code-generator-ppc.cc',
-+ '../../src/compiler/ppc/instruction-codes-ppc.h',
-+ '../../src/compiler/ppc/instruction-selector-ppc.cc',
-+ '../../src/compiler/ppc/linkage-ppc.cc',
-+ '../../src/ic/ppc/access-compiler-ppc.cc',
-+ '../../src/ic/ppc/handler-compiler-ppc.cc',
-+ '../../src/ic/ppc/ic-ppc.cc',
-+ '../../src/ic/ppc/ic-compiler-ppc.cc',
-+ '../../src/ic/ppc/stub-cache-ppc.cc',
-+ ],
-+ }],
-+ ['OS=="win"', {
-+ 'variables': {
-+ 'gyp_generators': '<!(echo $GYP_GENERATORS)',
-+ },
-+ 'msvs_disabled_warnings': [4351, 4355, 4800],
-+ # When building Official, the .lib is too large and exceeds the 2G
-+ # limit. This breaks it into multiple pieces to avoid the limit.
-+ # See http://crbug.com/485155.
-+ 'msvs_shard': 4,
-+ }],
-+ ['v8_component=="shared_library"', {
-+ 'defines': [
-+ 'BUILDING_V8_SHARED',
-+ 'V8_SHARED',
-+ ],
-+ }],
-+ ['v8_postmortem_support=="true"', {
-+ 'sources': [
-+ '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc',
-+ ]
-+ }],
-+ ['v8_enable_i18n_support==1', {
-+ 'dependencies': [
-+ '<(icu_gyp_path):icui18n',
-+ '<(icu_gyp_path):icuuc',
-+ ]
-+ }, { # v8_enable_i18n_support==0
-+ 'sources!': [
-+ '../../src/i18n.cc',
-+ '../../src/i18n.h',
-+ ],
-+ }],
-+ ['OS=="win" and v8_enable_i18n_support==1', {
-+ 'dependencies': [
-+ '<(icu_gyp_path):icudata',
-+ ],
-+ }],
-+ ['icu_use_data_file_flag==1', {
-+ 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE'],
-+ }, { # else icu_use_data_file_flag !=1
-+ 'conditions': [
-+ ['OS=="win"', {
-+ 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_SHARED'],
-+ }, {
-+ 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC'],
-+ }],
-+ ],
-+ }],
-+ ],
-+ },
-+ {
-+ 'target_name': 'v8_libbase_sse2',
-+ 'type': 'static_library',
-+ 'variables': {
-+ 'optimize': 'max',
-+ },
-+ 'include_dirs+': [
-+ '../..',
-+ ],
-+ 'sources': [
-+ '../../src/base/adapters.h',
-+ '../../src/base/atomicops.h',
-+ '../../src/base/atomicops_internals_arm64_gcc.h',
-+ '../../src/base/atomicops_internals_arm_gcc.h',
-+ '../../src/base/atomicops_internals_atomicword_compat.h',
-+ '../../src/base/atomicops_internals_mac.h',
-+ '../../src/base/atomicops_internals_mips_gcc.h',
-+ '../../src/base/atomicops_internals_mips64_gcc.h',
-+ '../../src/base/atomicops_internals_portable.h',
-+ '../../src/base/atomicops_internals_ppc_gcc.h',
-+ '../../src/base/atomicops_internals_tsan.h',
-+ '../../src/base/atomicops_internals_x86_gcc.cc',
-+ '../../src/base/atomicops_internals_x86_gcc.h',
-+ '../../src/base/atomicops_internals_x86_msvc.h',
-+ '../../src/base/bits.cc',
-+ '../../src/base/bits.h',
-+ '../../src/base/build_config.h',
-+ '../../src/base/compiler-specific.h',
-+ '../../src/base/cpu.cc',
-+ '../../src/base/cpu.h',
-+ '../../src/base/division-by-constant.cc',
-+ '../../src/base/division-by-constant.h',
-+ '../../src/base/flags.h',
-+ '../../src/base/functional.cc',
-+ '../../src/base/functional.h',
-+ '../../src/base/iterator.h',
-+ '../../src/base/lazy-instance.h',
-+ '../../src/base/logging.cc',
-+ '../../src/base/logging.h',
-+ '../../src/base/macros.h',
-+ '../../src/base/once.cc',
-+ '../../src/base/once.h',
-+ '../../src/base/platform/elapsed-timer.h',
-+ '../../src/base/platform/time.cc',
-+ '../../src/base/platform/time.h',
-+ '../../src/base/platform/condition-variable.cc',
-+ '../../src/base/platform/condition-variable.h',
-+ '../../src/base/platform/mutex.cc',
-+ '../../src/base/platform/mutex.h',
-+ '../../src/base/platform/platform.h',
-+ '../../src/base/platform/semaphore.cc',
-+ '../../src/base/platform/semaphore.h',
-+ '../../src/base/safe_conversions.h',
-+ '../../src/base/safe_conversions_impl.h',
-+ '../../src/base/safe_math.h',
-+ '../../src/base/safe_math_impl.h',
-+ '../../src/base/sys-info.cc',
-+ '../../src/base/sys-info.h',
-+ '../../src/base/utils/random-number-generator.cc',
-+ '../../src/base/utils/random-number-generator.h',
-+ ],
-+ 'conditions': [
-+ ['want_separate_host_toolset==1', {
-+ 'toolsets': ['host', 'target'],
-+ }, {
-+ 'toolsets': ['target'],
-+ }],
-+ ['OS=="linux"', {
-+ 'conditions': [
-+ ['nacl_target_arch=="none"', {
-+ 'link_settings': {
-+ 'libraries': [
-+ '-ldl',
-+ '-lrt'
-+ ],
-+ },
-+ }, {
-+ 'defines': [
-+ 'V8_LIBRT_NOT_AVAILABLE=1',
-+ ],
-+ }],
-+ ],
-+ 'sources': [
-+ '../../src/base/platform/platform-linux.cc',
-+ '../../src/base/platform/platform-posix.cc'
-+ ],
-+ }
-+ ],
-+ ['OS=="android"', {
-+ 'sources': [
-+ '../../src/base/platform/platform-posix.cc'
-+ ],
-+ 'link_settings': {
-+ 'target_conditions': [
-+ ['_toolset=="host"', {
-+ # Only include libdl and librt on host builds because they
-+ # are included by default on Android target builds, and we
-+ # don't want to re-include them here since this will change
-+ # library order and break (see crbug.com/469973).
-+ 'libraries': [
-+ '-ldl',
-+ '-lrt'
-+ ]
-+ }]
-+ ]
-+ },
-+ 'conditions': [
-+ ['host_os=="mac"', {
-+ 'target_conditions': [
-+ ['_toolset=="host"', {
-+ 'sources': [
-+ '../../src/base/platform/platform-macos.cc'
-+ ]
-+ }, {
-+ 'sources': [
-+ '../../src/base/platform/platform-linux.cc'
-+ ]
-+ }],
-+ ],
-+ }, {
-+ 'sources': [
-+ '../../src/base/platform/platform-linux.cc'
-+ ]
-+ }],
-+ ],
-+ },
-+ ],
-+ ['OS=="qnx"', {
-+ 'link_settings': {
-+ 'target_conditions': [
-+ ['_toolset=="host" and host_os=="linux"', {
-+ 'libraries': [
-+ '-lrt'
-+ ],
-+ }],
-+ ['_toolset=="target"', {
-+ 'libraries': [
-+ '-lbacktrace'
-+ ],
-+ }],
-+ ],
-+ },
-+ 'sources': [
-+ '../../src/base/platform/platform-posix.cc',
-+ '../../src/base/qnx-math.h',
-+ ],
-+ 'target_conditions': [
-+ ['_toolset=="host" and host_os=="linux"', {
-+ 'sources': [
-+ '../../src/base/platform/platform-linux.cc'
-+ ],
-+ }],
-+ ['_toolset=="host" and host_os=="mac"', {
-+ 'sources': [
-+ '../../src/base/platform/platform-macos.cc'
-+ ],
-+ }],
-+ ['_toolset=="target"', {
-+ 'sources': [
-+ '../../src/base/platform/platform-qnx.cc'
-+ ],
-+ }],
-+ ],
-+ },
-+ ],
-+ ['OS=="freebsd"', {
-+ 'link_settings': {
-+ 'libraries': [
-+ '-L/usr/local/lib -lexecinfo',
-+ ]},
-+ 'sources': [
-+ '../../src/base/platform/platform-freebsd.cc',
-+ '../../src/base/platform/platform-posix.cc'
-+ ],
-+ }
-+ ],
-+ ['OS=="openbsd"', {
-+ 'link_settings': {
-+ 'libraries': [
-+ '-L/usr/local/lib -lexecinfo',
-+ ]},
-+ 'sources': [
-+ '../../src/base/platform/platform-openbsd.cc',
-+ '../../src/base/platform/platform-posix.cc'
-+ ],
-+ }
-+ ],
-+ ['OS=="netbsd"', {
-+ 'link_settings': {
-+ 'libraries': [
-+ '-L/usr/pkg/lib -Wl,-R/usr/pkg/lib -lexecinfo',
-+ ]},
-+ 'sources': [
-+ '../../src/base/platform/platform-openbsd.cc',
-+ '../../src/base/platform/platform-posix.cc'
-+ ],
-+ }
-+ ],
-+ ['OS=="aix"', {
-+ 'sources': [
-+ '../../src/base/platform/platform-aix.cc',
-+ '../../src/base/platform/platform-posix.cc'
-+ ]},
-+ ],
-+ ['OS=="solaris"', {
-+ 'link_settings': {
-+ 'libraries': [
-+ '-lnsl -lrt',
-+ ]},
-+ 'sources': [
-+ '../../src/base/platform/platform-solaris.cc',
-+ '../../src/base/platform/platform-posix.cc'
-+ ],
-+ }
-+ ],
-+ ['OS=="mac"', {
-+ 'sources': [
-+ '../../src/base/platform/platform-macos.cc',
-+ '../../src/base/platform/platform-posix.cc'
-+ ]},
-+ ],
-+ ['OS=="win"', {
-+ 'defines': [
-+ '_CRT_RAND_S' # for rand_s()
-+ ],
-+ 'variables': {
-+ 'gyp_generators': '<!(echo $GYP_GENERATORS)',
-+ },
-+ 'conditions': [
-+ ['gyp_generators=="make"', {
-+ 'variables': {
-+ 'build_env': '<!(uname -o)',
-+ },
-+ 'conditions': [
-+ ['build_env=="Cygwin"', {
-+ 'sources': [
-+ '../../src/base/platform/platform-cygwin.cc',
-+ '../../src/base/platform/platform-posix.cc'
-+ ],
-+ }, {
-+ 'sources': [
-+ '../../src/base/platform/platform-win32.cc',
-+ '../../src/base/win32-headers.h',
-+ ],
-+ }],
-+ ],
-+ 'link_settings': {
-+ 'libraries': [ '-lwinmm', '-lws2_32' ],
-+ },
-+ }, {
-+ 'sources': [
-+ '../../src/base/platform/platform-win32.cc',
-+ '../../src/base/win32-headers.h',
-+ ],
-+ 'msvs_disabled_warnings': [4351, 4355, 4800],
-+ 'link_settings': {
-+ 'libraries': [ '-lwinmm.lib', '-lws2_32.lib' ],
-+ },
-+ }],
-+ ],
-+ }],
-+ ],
-+ },
-+ {
-+ 'target_name': 'v8_libplatform_sse2',
-+ 'type': 'static_library',
-+ 'variables': {
-+ 'optimize': 'max',
-+ },
-+ 'dependencies': [
-+ 'v8_libbase_sse2',
-+ ],
-+ 'include_dirs+': [
-+ '../..',
-+ ],
-+ 'sources': [
-+ '../../include/libplatform/libplatform.h',
-+ '../../src/libplatform/default-platform.cc',
-+ '../../src/libplatform/default-platform.h',
-+ '../../src/libplatform/task-queue.cc',
-+ '../../src/libplatform/task-queue.h',
-+ '../../src/libplatform/worker-thread.cc',
-+ '../../src/libplatform/worker-thread.h',
-+ ],
-+ 'conditions': [
-+ ['want_separate_host_toolset==1', {
-+ 'toolsets': ['host', 'target'],
-+ }, {
-+ 'toolsets': ['target'],
-+ }],
-+ ],
-+ },
-+ {
-+ 'target_name': 'natives_blob_sse2',
-+ 'type': 'none',
-+ 'conditions': [
-+ [ 'v8_use_external_startup_data==1', {
-+ 'conditions': [
-+ ['want_separate_host_toolset==1', {
-+ 'dependencies': ['js2c_sse2#host'],
-+ }, {
-+ 'dependencies': ['js2c_sse2'],
-+ }],
-+ ],
-+ 'actions': [{
-+ 'action_name': 'v8_sse2_concatenate_natives_blob',
-+ 'inputs': [
-+ '../../tools/concatenate-files.py',
-+ '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.bin',
-+ '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental_sse2.bin',
-+ '<(SHARED_INTERMEDIATE_DIR)/libraries-extras_sse2.bin',
-+ ],
-+ 'conditions': [
-+ ['want_separate_host_toolset==1', {
-+ 'target_conditions': [
-+ ['_toolset=="host"', {
-+ 'outputs': [
-+ '<(PRODUCT_DIR)/natives_blob_host_sse2.bin',
-+ ],
-+ 'action': [
-+ 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob_host_sse2.bin'
-+ ],
-+ }, {
-+ 'outputs': [
-+ '<(PRODUCT_DIR)/natives_blob_sse2.bin',
-+ ],
-+ 'action': [
-+ 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob_sse2.bin'
-+ ],
-+ }],
-+ ],
-+ }, {
-+ 'outputs': [
-+ '<(PRODUCT_DIR)/natives_blob_sse2.bin',
-+ ],
-+ 'action': [
-+ 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob_sse2.bin'
-+ ],
-+ }],
-+ ],
-+ }],
-+ }],
-+ ['want_separate_host_toolset==1', {
-+ 'toolsets': ['host', 'target'],
-+ }, {
-+ 'toolsets': ['target'],
-+ }],
-+ ]
-+ },
-+ {
-+ 'target_name': 'js2c_sse2',
-+ 'type': 'none',
-+ 'conditions': [
-+ ['want_separate_host_toolset==1', {
-+ 'toolsets': ['host'],
-+ }, {
-+ 'toolsets': ['target'],
-+ }],
-+ ['v8_enable_i18n_support==1', {
-+ 'variables': {
-+ 'i18n_library_files': [
-+ '../../src/i18n.js',
-+ ],
-+ },
-+ }, {
-+ 'variables': {
-+ 'i18n_library_files': [],
-+ },
-+ }],
-+ ],
-+ 'variables': {
-+ 'library_files': [
-+ '../../src/macros.py',
-+ '../../src/messages.h',
-+ '../../src/runtime.js',
-+ '../../src/prologue.js',
-+ '../../src/v8natives.js',
-+ '../../src/symbol.js',
-+ '../../src/array.js',
-+ '../../src/string.js',
-+ '../../src/uri.js',
-+ '../../src/math.js',
-+ '../../src/third_party/fdlibm/fdlibm.js',
-+ '../../src/date.js',
-+ '../../src/regexp.js',
-+ '../../src/arraybuffer.js',
-+ '../../src/typedarray.js',
-+ '../../src/iterator-prototype.js',
-+ '../../src/generator.js',
-+ '../../src/object-observe.js',
-+ '../../src/collection.js',
-+ '../../src/weak-collection.js',
-+ '../../src/collection-iterator.js',
-+ '../../src/promise.js',
-+ '../../src/messages.js',
-+ '../../src/json.js',
-+ '../../src/array-iterator.js',
-+ '../../src/string-iterator.js',
-+ '../../src/debug-debugger.js',
-+ '../../src/mirror-debugger.js',
-+ '../../src/liveedit-debugger.js',
-+ '../../src/templates.js',
-+ '../../src/harmony-array.js',
-+ '../../src/harmony-typedarray.js',
-+ ],
-+ 'experimental_library_files': [
-+ '../../src/macros.py',
-+ '../../src/messages.h',
-+ '../../src/proxy.js',
-+ '../../src/generator.js',
-+ '../../src/harmony-atomics.js',
-+ '../../src/harmony-array-includes.js',
-+ '../../src/harmony-concat-spreadable.js',
-+ '../../src/harmony-tostring.js',
-+ '../../src/harmony-regexp.js',
-+ '../../src/harmony-reflect.js',
-+ '../../src/harmony-spread.js',
-+ '../../src/harmony-object.js',
-+ '../../src/harmony-sharedarraybuffer.js',
-+ ],
-+ 'libraries_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.bin',
-+ 'libraries_experimental_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental_sse2.bin',
-+ 'libraries_extras_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries-extras_sse2.bin',
-+ },
-+ 'actions': [
-+ {
-+ 'action_name': 'v8_sse2_js2c',
-+ 'inputs': [
-+ '../../tools/js2c.py',
-+ '<@(library_files)',
-+ '<@(i18n_library_files)'
-+ ],
-+ 'outputs': [
-+ '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.cc',
-+ ],
-+ 'action': [
-+ 'python',
-+ '../../tools/js2c.py',
-+ '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.cc',
-+ 'CORE',
-+ '<@(library_files)',
-+ '<@(i18n_library_files)'
-+ ],
-+ 'conditions': [
-+ [ 'v8_use_external_startup_data==1', {
-+ 'outputs': ['<@(libraries_bin_file)'],
-+ 'action': [
-+ '--startup_blob', '<@(libraries_bin_file)',
-+ ],
-+ }],
-+ ],
-+ },
-+ {
-+ 'action_name': 'v8_sse2_js2c_experimental',
-+ 'inputs': [
-+ '../../tools/js2c.py',
-+ '<@(experimental_library_files)',
-+ ],
-+ 'outputs': [
-+ '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries_sse2.cc',
-+ ],
-+ 'action': [
-+ 'python',
-+ '../../tools/js2c.py',
-+ '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries_sse2.cc',
-+ 'EXPERIMENTAL',
-+ '<@(experimental_library_files)'
-+ ],
-+ 'conditions': [
-+ [ 'v8_use_external_startup_data==1', {
-+ 'outputs': ['<@(libraries_experimental_bin_file)'],
-+ 'action': [
-+ '--startup_blob', '<@(libraries_experimental_bin_file)'
-+ ],
-+ }],
-+ ],
-+ },
-+ {
-+ 'action_name': 'v8_sse2_js2c_extras',
-+ 'inputs': [
-+ '../../tools/js2c.py',
-+ '<@(v8_extra_library_files)',
-+ ],
-+ 'outputs': [
-+ '<(SHARED_INTERMEDIATE_DIR)/extras-libraries_sse2.cc',
-+ ],
-+ 'action': [
-+ 'python',
-+ '../../tools/js2c.py',
-+ '<(SHARED_INTERMEDIATE_DIR)/extras-libraries_sse2.cc',
-+ 'EXTRAS',
-+ '<@(v8_extra_library_files)',
-+ ],
-+ 'conditions': [
-+ [ 'v8_use_external_startup_data==1', {
-+ 'outputs': ['<@(libraries_extras_bin_file)'],
-+ 'action': [
-+ '--startup_blob', '<@(libraries_extras_bin_file)',
-+ ],
-+ }],
-+ ],
-+ },
-+ ],
-+ },
-+ {
-+ 'target_name': 'postmortem-metadata_sse2',
-+ 'type': 'none',
-+ 'variables': {
-+ 'heapobject_files': [
-+ '../../src/objects.h',
-+ '../../src/objects-inl.h',
-+ ],
-+ },
-+ 'actions': [
-+ {
-+ 'action_name': 'v8_sse2_gen-postmortem-metadata',
-+ 'inputs': [
-+ '../../tools/gen-postmortem-metadata.py',
-+ '<@(heapobject_files)',
-+ ],
-+ 'outputs': [
-+ '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc',
-+ ],
-+ 'action': [
-+ 'python',
-+ '../../tools/gen-postmortem-metadata.py',
-+ '<@(_outputs)',
-+ '<@(heapobject_files)'
-+ ]
-+ }
-+ ]
-+ },
-+ {
-+ 'target_name': 'mksnapshot_sse2',
-+ 'type': 'executable',
-+ 'dependencies': ['v8_base_sse2', 'v8_nosnapshot_sse2', 'v8_libplatform_sse2'],
-+ 'include_dirs+': [
-+ '../..',
-+ ],
-+ 'sources': [
-+ '../../src/snapshot/mksnapshot.cc',
-+ ],
-+ 'conditions': [
-+ ['v8_enable_i18n_support==1', {
-+ 'dependencies': [
-+ '<(icu_gyp_path):icui18n',
-+ '<(icu_gyp_path):icuuc',
-+ ]
-+ }],
-+ ['want_separate_host_toolset==1', {
-+ 'toolsets': ['host'],
-+ }, {
-+ 'toolsets': ['target'],
-+ }],
-+ ],
-+ },
-+ ],
-+}
-diff -Nur qtwebengine-opensource-src-5.6.1/src/core/core_module.pro qtwebengine-opensource-src-5.6.1-no-sse2/src/core/core_module.pro
---- qtwebengine-opensource-src-5.6.1/src/core/core_module.pro 2016-05-26 20:01:25.000000000 +0200
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/core/core_module.pro 2016-06-11 01:25:56.463419047 +0200
-@@ -9,6 +9,29 @@
- error("Could not find the linking information that gyp should have generated.")
- }
-
-+# find the shared libraries in the link line
-+# remove those in lib/sse2 that are only replacements for the normal ones
-+# collect all shared libraries so they can be installed
-+for(private_lib, LIBS_PRIVATE) {
-+ contains(private_lib, .*\.so) {
-+ contains(private_lib, .*/lib/sse2/.*) {
-+ LIBS_PRIVATE -= $$private_lib
-+ shlibs_sse2 += $$private_lib
-+ } else {
-+ shlibs += $$private_lib
-+ }
-+ }
-+}
-+
-+# set the shared libraries to be installed
-+# add an rpath to their installation location
-+shlib_install_path = $$[QT_INSTALL_LIBS]/qtwebengine
-+!isEmpty(shlibs) {
-+ shlibs.files += $$shlibs
-+ shlibs_sse2.files += $$shlibs_sse2
-+ LIBS_PRIVATE += -Wl,--rpath,$$shlib_install_path
-+}
-+
- load(qt_module)
-
- api_library_name = qtwebenginecoreapi$$qtPlatformTargetSuffix()
-@@ -71,7 +94,12 @@
- locales.path = $$[QT_INSTALL_TRANSLATIONS]/qtwebengine_locales
- resources.CONFIG += no_check_exist
- resources.path = $$[QT_INSTALL_DATA]/resources
-- INSTALLS += locales resources
-+ # install the shared libraries
-+ shlibs.CONFIG += no_check_exist
-+ shlibs.path = $$shlib_install_path
-+ shlibs_sse2.CONFIG += no_check_exist
-+ shlibs_sse2.path = $$shlib_install_path/sse2
-+ INSTALLS += locales resources shlibs shlibs_sse2
-
- !use?(system_icu) {
- icu.CONFIG += no_check_exist
-diff -Nur qtwebengine-opensource-src-5.6.1/src/core/qtwebengine.gypi qtwebengine-opensource-src-5.6.1-no-sse2/src/core/qtwebengine.gypi
---- qtwebengine-opensource-src-5.6.1/src/core/qtwebengine.gypi 2016-02-15 16:18:46.000000000 +0100
-+++ qtwebengine-opensource-src-5.6.1-no-sse2/src/core/qtwebengine.gypi 2016-02-25 00:47:15.416723938 +0100
-@@ -58,6 +58,11 @@
- },
- },
- 'conditions': [
-+ ['target_arch=="ia32"', {
-+ 'dependencies': [
-+ '<(chromium_src_dir)/v8/tools/gyp/v8_sse2.gyp:v8_sse2',
-+ ],
-+ }],
- ['OS=="win" and win_use_allocator_shim==1', {
- 'dependencies': [
- '<(chromium_src_dir)/base/allocator/allocator.gyp:allocator',
diff --git a/qtwebengine-opensource-src-5.7.0-linux-pri.patch b/qtwebengine-opensource-src-5.7.0-linux-pri.patch
new file mode 100644
index 0000000..321a1d7
--- /dev/null
+++ b/qtwebengine-opensource-src-5.7.0-linux-pri.patch
@@ -0,0 +1,26 @@
+diff -ur qtwebengine-opensource-src-5.7.0/src/core/config/linux.pri qtwebengine-opensource-src-5.7.0-linux-pri/src/core/config/linux.pri
+--- qtwebengine-opensource-src-5.7.0/src/core/config/linux.pri 2016-06-07 06:20:06.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-linux-pri/src/core/config/linux.pri 2016-07-17 22:18:17.312471202 +0200
+@@ -46,3 +46,22 @@
+ use?(system_icu): GYP_CONFIG += use_system_icu=1 icu_use_data_file_flag=0
+ use?(system_ffmpeg): GYP_CONFIG += use_system_ffmpeg=1
+ use?(system_protobuf): GYP_CONFIG += use_system_protobuf=1
++
++# some more system packages, that are not checked for for some reason
++GYP_CONFIG += use_system_re2=1
++
++# yasm is only used on x86, and passing use_system_yasm makes the build fail on
++# other architectures (e.g., ARM), so make it conditional on the architecture
++contains(QT_ARCH, "x86_64")|contains(QT_ARCH, "i386") {
++ GYP_CONFIG += use_system_yasm=1
++}
++
++# link libpci instead of dlopening it, our Qt packaging depends on it anyway
++GYP_CONFIG += linux_link_libpci=1
++
++# run the unbundling script Chromium provides
++CHROMIUM_SRC_DIR = "$$QTWEBENGINE_ROOT/$$getChromiumSrcDir()"
++R_G_F_PY = "$$CHROMIUM_SRC_DIR/build/linux/unbundle/replace_gyp_files.py"
++R_G_F_PY_ARGS = "-D use_system_re2=1"
++log("Running python $$R_G_F_PY $$R_G_F_PY_ARGS$${EOL}")
++!system("python $$R_G_F_PY $$R_G_F_PY_ARGS"): error("-- unbundling failed")
diff --git a/qtwebengine-opensource-src-5.7.0-no-sse2.patch b/qtwebengine-opensource-src-5.7.0-no-sse2.patch
new file mode 100644
index 0000000..a49b6d7
--- /dev/null
+++ b/qtwebengine-opensource-src-5.7.0-no-sse2.patch
@@ -0,0 +1,5154 @@
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/breakpad/src/build/common.gypi qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/breakpad/src/build/common.gypi
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/breakpad/src/build/common.gypi 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/breakpad/src/build/common.gypi 2016-07-17 18:06:28.022746102 +0200
+@@ -80,8 +80,8 @@
+ # The system root for cross-compiles. Default: none.
+ 'sysroot%': '',
+
+- # On Linux, we build with sse2 for Chromium builds.
+- 'disable_sse2%': 0,
++ # Do not assume SSE2 by default (Fedora patch).
++ 'disable_sse2%': 1
+ },
+
+ 'target_arch%': '<(target_arch)',
+@@ -725,17 +725,13 @@
+ 'conditions': [
+ ['disable_sse2==0', {
+ 'cflags': [
+- '-march=pentium4',
+ '-msse2',
+ '-mfpmath=sse',
+ ],
+ }],
+ ],
+- # -mmmx allows mmintrin.h to be used for mmx intrinsics.
+- # video playback is mmx and sse2 optimized.
+ 'cflags': [
+ '-m32',
+- '-mmmx',
+ ],
+ 'ldflags': [
+ '-m32',
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/build/common.gypi qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/build/common.gypi
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/build/common.gypi 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/build/common.gypi 2016-07-17 18:06:28.025746118 +0200
+@@ -3898,15 +3898,7 @@
+ # value used during computation does not change depending on
+ # how the compiler optimized the code, since the value is
+ # always kept in its specified precision.
+- #
+- # Refer to http://crbug.com/348761 for rationale behind SSE2
+- # being a minimum requirement for 32-bit Linux builds and
+- # http://crbug.com/313032 for an example where this has "bit"
+- # us in the past.
+ 'cflags': [
+- '-msse2',
+- '-mfpmath=sse',
+- '-mmmx', # Allows mmintrin.h for MMX intrinsics.
+ '-m32',
+ ],
+ 'ldflags': [
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/cc/BUILD.gn qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/cc/BUILD.gn
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/cc/BUILD.gn 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/cc/BUILD.gn 2016-07-17 19:24:47.069349645 +0200
+@@ -528,13 +528,6 @@
+ "trees/tree_synchronizer.h",
+ ]
+
+- if (target_cpu == "x86" || target_cpu == "x64") {
+- sources += [
+- "raster/texture_compressor_etc1_sse.cc",
+- "raster/texture_compressor_etc1_sse.h",
+- ]
+- }
+-
+ configs += [ "//build/config:precompiled_headers" ]
+
+ public_deps = [
+@@ -544,6 +537,7 @@
+ deps = [
+ "//base",
+ "//base/third_party/dynamic_annotations",
++ "//cc:cc_opts",
+ "//cc/proto",
+ "//cc/surfaces:surface_id",
+ "//gpu",
+@@ -563,6 +557,36 @@
+ }
+ }
+
++source_set("cc_opts") {
++ public_deps = [
++ "//cc:cc_opts_sse",
++ ]
++}
++
++source_set("cc_opts_sse") {
++ if (target_cpu == "x86" || target_cpu == "x64") {
++ deps = [
++ "//base",
++ ]
++
++ defines = [ "CC_IMPLEMENTATION=1" ]
++
++ if (!is_debug && (is_win || is_android)) {
++ configs -= [ "//build/config/compiler:optimize" ]
++ configs += [ "//build/config/compiler:optimize_max" ]
++ }
++
++ sources = [
++ "raster/texture_compressor.h",
++ "raster/texture_compressor_etc1.h",
++ "raster/texture_compressor_etc1_sse.cc",
++ "raster/texture_compressor_etc1_sse.h",
++ ]
++
++ cflags = [ "-msse2" ]
++ }
++}
++
+ source_set("test_support") {
+ testonly = true
+ sources = [
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/cc/cc.gyp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/cc/cc.gyp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/cc/cc.gyp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/cc/cc.gyp 2016-07-17 19:23:10.962834059 +0200
+@@ -595,14 +595,6 @@
+ 'includes': [
+ '../build/android/increase_size_for_speed.gypi',
+ ],
+- 'conditions': [
+- ['target_arch == "ia32" or target_arch == "x64"', {
+- 'sources': [
+- 'raster/texture_compressor_etc1_sse.cc',
+- 'raster/texture_compressor_etc1_sse.h',
+- ],
+- }],
+- ],
+ },
+ {
+ # GN version: "//cc/proto"
+@@ -667,6 +659,7 @@
+ '<(DEPTH)/ui/events/events.gyp:events_base',
+ '<(DEPTH)/ui/gfx/gfx.gyp:gfx',
+ '<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
++ 'cc_opts',
+ ],
+ 'defines': [
+ 'CC_SURFACES_IMPLEMENTATION=1',
+@@ -704,5 +697,41 @@
+ '../build/android/increase_size_for_speed.gypi',
+ ],
+ },
++ {
++ 'target_name': 'cc_opts',
++ 'type': 'static_library',
++ 'conditions': [
++ ['target_arch == "ia32" or target_arch == "x64"', {
++ 'defines': [
++ 'CC_IMPLEMENTATION=1',
++ ],
++ 'dependencies': [
++ 'cc_opts_sse',
++ ]
++ }],
++ ],
++ },
++ {
++ 'target_name': 'cc_opts_sse',
++ 'type': 'static_library',
++ 'dependencies': [
++ '<(DEPTH)/base/base.gyp:base',
++ ],
++ 'conditions': [
++ ['target_arch == "ia32" or target_arch == "x64"', {
++ 'defines': [
++ 'CC_IMPLEMENTATION=1',
++ ],
++ 'sources': [
++ # Conditional compilation for SSE2 code on x86 and x64 machines
++ 'raster/texture_compressor_etc1_sse.cc',
++ 'raster/texture_compressor_etc1_sse.h',
++ ],
++ 'cflags': [
++ '-msse2',
++ ],
++ }],
++ ],
++ },
+ ],
+ }
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/BUILD.gn qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/BUILD.gn
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/BUILD.gn 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/BUILD.gn 2016-07-17 18:06:36.080790050 +0200
+@@ -279,13 +279,13 @@
+ }
+
+ if (current_cpu == "x86" || current_cpu == "x64") {
+- sources += [
+- "simd/convert_rgb_to_yuv_sse2.cc",
+- "simd/convert_rgb_to_yuv_ssse3.cc",
+- "simd/convert_yuv_to_rgb_x86.cc",
+- "simd/filter_yuv_sse2.cc",
++ sources += [ "simd/convert_yuv_to_rgb_x86.cc" ]
++ deps += [
++ ":media_yasm",
++ ":media_mmx",
++ ":media_sse",
++ ":media_sse2",
+ ]
+- deps += [ ":media_yasm" ]
+ }
+
+ configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
+@@ -484,10 +484,47 @@
+ }
+
+ if (current_cpu == "x86" || current_cpu == "x64") {
++ source_set("media_mmx") {
++ sources = [ "simd/filter_yuv_mmx.cc" ]
++ configs += [ "//media:media_config" ]
++ if (!is_win) {
++ cflags = [ "-mmmx" ]
++ }
++ }
++
++ source_set("media_sse") {
++ sources = [
++ "simd/sinc_resampler_sse.cc",
++ ]
++ configs += [
++ "//media:media_config",
++ "//media:media_implementation",
++ ]
++ if (!is_win) {
++ cflags = [ "-msse" ]
++ }
++ }
++
++ source_set("media_sse2") {
++ sources = [
++ "simd/convert_rgb_to_yuv_sse2.cc",
++ "simd/convert_rgb_to_yuv_ssse3.cc",
++ "simd/filter_yuv_sse2.cc",
++ ]
++ configs += [
++ "//media:media_config",
++ "//media:media_implementation",
++ ]
++ if (!is_win) {
++ cflags = [ "-msse2" ]
++ }
++ }
++
+ import("//third_party/yasm/yasm_assemble.gni")
+ yasm_assemble("media_yasm") {
+ sources = [
+ "simd/convert_rgb_to_yuv_ssse3.asm",
++ "simd/convert_yuv_to_rgb_mmx.asm",
+ "simd/convert_yuv_to_rgb_sse.asm",
+ "simd/convert_yuva_to_argb_mmx.asm",
+ "simd/empty_register_state_mmx.asm",
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/media.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/media.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/media.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/media.cc 2016-07-17 18:06:36.080790050 +0200
+@@ -11,6 +11,8 @@
+ #include "base/synchronization/lock.h"
+ #include "base/trace_event/trace_event.h"
+ #include "build/build_config.h"
++#include "media/base/sinc_resampler.h"
++#include "media/base/vector_math.h"
+ #include "media/base/yuv_convert.h"
+
+ #if !defined(MEDIA_DISABLE_FFMPEG)
+@@ -29,6 +31,8 @@
+ TRACE_EVENT_WARMUP_CATEGORY("media");
+
+ // Perform initialization of libraries which require runtime CPU detection.
++ vector_math::Initialize();
++ SincResampler::InitializeCPUSpecificFeatures();
+ InitializeCPUSpecificYUVConversions();
+
+ #if !defined(MEDIA_DISABLE_FFMPEG)
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb.h qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb.h
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb.h 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb.h 2016-07-17 19:32:39.210872688 +0200
+@@ -65,6 +65,17 @@
+ int rgbstride,
+ YUVType yuv_type);
+
++MEDIA_EXPORT void ConvertYUVToRGB32_MMX(const uint8_t* yplane,
++ const uint8_t* uplane,
++ const uint8_t* vplane,
++ uint8_t* rgbframe,
++ int width,
++ int height,
++ int ystride,
++ int uvstride,
++ int rgbstride,
++ YUVType yuv_type);
++
+ MEDIA_EXPORT void ConvertYUVAToARGB_MMX(const uint8_t* yplane,
+ const uint8_t* uplane,
+ const uint8_t* vplane,
+@@ -124,6 +135,13 @@
+ ptrdiff_t width,
+ const int16_t* convert_table);
+
++MEDIA_EXPORT void ConvertYUVToRGB32Row_MMX(const uint8_t* yplane,
++ const uint8_t* uplane,
++ const uint8_t* vplane,
++ uint8_t* rgbframe,
++ ptrdiff_t width,
++ const int16_t* convert_table);
++
+ MEDIA_EXPORT void ConvertYUVToRGB32Row_SSE(const uint8_t* yplane,
+ const uint8_t* uplane,
+ const uint8_t* vplane,
+@@ -131,6 +149,14 @@
+ ptrdiff_t width,
+ const int16_t* convert_table);
+
++MEDIA_EXPORT void ScaleYUVToRGB32Row_MMX(const uint8_t* y_buf,
++ const uint8_t* u_buf,
++ const uint8_t* v_buf,
++ uint8_t* rgb_buf,
++ ptrdiff_t width,
++ ptrdiff_t source_dx,
++ const int16_t* convert_table);
++
+ MEDIA_EXPORT void ScaleYUVToRGB32Row_SSE(const uint8_t* y_buf,
+ const uint8_t* u_buf,
+ const uint8_t* v_buf,
+@@ -147,6 +173,14 @@
+ ptrdiff_t source_dx,
+ const int16_t* convert_table);
+
++MEDIA_EXPORT void LinearScaleYUVToRGB32Row_MMX(const uint8_t* y_buf,
++ const uint8_t* u_buf,
++ const uint8_t* v_buf,
++ uint8_t* rgb_buf,
++ ptrdiff_t width,
++ ptrdiff_t source_dx,
++ const int16_t* convert_table);
++
+ MEDIA_EXPORT void LinearScaleYUVToRGB32Row_SSE(const uint8_t* y_buf,
+ const uint8_t* u_buf,
+ const uint8_t* v_buf,
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_mmx.asm qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_mmx.asm
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_mmx.asm 1970-01-01 01:00:00.000000000 +0100
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_mmx.asm 2016-07-17 18:06:36.101790164 +0200
+@@ -0,0 +1,23 @@
++; Copyright (c) 2011 The Chromium Authors. All rights reserved.
++; Use of this source code is governed by a BSD-style license that can be
++; found in the LICENSE file.
++
++%include "third_party/x86inc/x86inc.asm"
++
++;
++; This file uses MMX instructions.
++;
++ SECTION_TEXT
++ CPU MMX
++
++; Use movq to save the output.
++%define MOVQ movq
++
++; extern "C" void ConvertYUVToRGB32Row_MMX(const uint8* y_buf,
++; const uint8* u_buf,
++; const uint8* v_buf,
++; uint8* rgb_buf,
++; ptrdiff_t width,
++; const int16* convert_table);
++%define SYMBOL ConvertYUVToRGB32Row_MMX
++%include "convert_yuv_to_rgb_mmx.inc"
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_x86.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_x86.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_x86.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/convert_yuv_to_rgb_x86.cc 2016-07-17 19:36:04.063964591 +0200
+@@ -47,6 +47,34 @@
+ EmptyRegisterState();
+ }
+
++void ConvertYUVToRGB32_MMX(const uint8_t* yplane,
++ const uint8_t* uplane,
++ const uint8_t* vplane,
++ uint8_t* rgbframe,
++ int width,
++ int height,
++ int ystride,
++ int uvstride,
++ int rgbstride,
++ YUVType yuv_type) {
++ unsigned int y_shift = GetVerticalShift(yuv_type);
++ for (int y = 0; y < height; ++y) {
++ uint8_t* rgb_row = rgbframe + y * rgbstride;
++ const uint8_t* y_ptr = yplane + y * ystride;
++ const uint8_t* u_ptr = uplane + (y >> y_shift) * uvstride;
++ const uint8_t* v_ptr = vplane + (y >> y_shift) * uvstride;
++
++ ConvertYUVToRGB32Row_MMX(y_ptr,
++ u_ptr,
++ v_ptr,
++ rgb_row,
++ width,
++ GetLookupTable(yuv_type));
++ }
++
++ EmptyRegisterState();
++}
++
+ void ConvertYUVToRGB32_SSE(const uint8_t* yplane,
+ const uint8_t* uplane,
+ const uint8_t* vplane,
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/filter_yuv.h qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/filter_yuv.h
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/filter_yuv.h 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/filter_yuv.h 2016-07-17 19:37:17.605356580 +0200
+@@ -20,6 +20,12 @@
+ int source_width,
+ uint8_t source_y_fraction);
+
++MEDIA_EXPORT void FilterYUVRows_MMX(uint8_t* ybuf,
++ const uint8_t* y0_ptr,
++ const uint8_t* y1_ptr,
++ int source_width,
++ uint8_t source_y_fraction);
++
+ MEDIA_EXPORT void FilterYUVRows_SSE2(uint8_t* ybuf,
+ const uint8_t* y0_ptr,
+ const uint8_t* y1_ptr,
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/filter_yuv_mmx.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/filter_yuv_mmx.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/filter_yuv_mmx.cc 1970-01-01 01:00:00.000000000 +0100
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/filter_yuv_mmx.cc 2016-07-17 19:37:56.249562560 +0200
+@@ -0,0 +1,79 @@
++// Copyright (c) 2011 The Chromium Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style license that can be
++// found in the LICENSE file.
++
++#if defined(_MSC_VER)
++#include <intrin.h>
++#else
++#include <mmintrin.h>
++#endif
++
++#include "build/build_config.h"
++#include "media/base/simd/filter_yuv.h"
++
++namespace media {
++
++#if defined(COMPILER_MSVC)
++// Warning 4799 is about calling emms before the function exits.
++// We calls emms in a frame level so suppress this warning.
++#pragma warning(push)
++#pragma warning(disable: 4799)
++#endif
++
++void FilterYUVRows_MMX(uint8_t* dest,
++ const uint8_t* src0,
++ const uint8_t* src1,
++ int width,
++ uint8_t fraction) {
++ int pixel = 0;
++
++ // Process the unaligned bytes first.
++ int unaligned_width =
++ (8 - (reinterpret_cast<uintptr_t>(dest) & 7)) & 7;
++ while (pixel < width && pixel < unaligned_width) {
++ dest[pixel] = (src0[pixel] * (256 - fraction) +
++ src1[pixel] * fraction) >> 8;
++ ++pixel;
++ }
++
++ __m64 zero = _mm_setzero_si64();
++ __m64 src1_fraction = _mm_set1_pi16(fraction);
++ __m64 src0_fraction = _mm_set1_pi16(256 - fraction);
++ const __m64* src0_64 = reinterpret_cast<const __m64*>(src0 + pixel);
++ const __m64* src1_64 = reinterpret_cast<const __m64*>(src1 + pixel);
++ __m64* dest64 = reinterpret_cast<__m64*>(dest + pixel);
++ __m64* end64 = reinterpret_cast<__m64*>(
++ reinterpret_cast<uintptr_t>(dest + width) & ~7);
++
++ while (dest64 < end64) {
++ __m64 src0 = *src0_64++;
++ __m64 src1 = *src1_64++;
++ __m64 src2 = _mm_unpackhi_pi8(src0, zero);
++ __m64 src3 = _mm_unpackhi_pi8(src1, zero);
++ src0 = _mm_unpacklo_pi8(src0, zero);
++ src1 = _mm_unpacklo_pi8(src1, zero);
++ src0 = _mm_mullo_pi16(src0, src0_fraction);
++ src1 = _mm_mullo_pi16(src1, src1_fraction);
++ src2 = _mm_mullo_pi16(src2, src0_fraction);
++ src3 = _mm_mullo_pi16(src3, src1_fraction);
++ src0 = _mm_add_pi16(src0, src1);
++ src2 = _mm_add_pi16(src2, src3);
++ src0 = _mm_srli_pi16(src0, 8);
++ src2 = _mm_srli_pi16(src2, 8);
++ src0 = _mm_packs_pu16(src0, src2);
++ *dest64++ = src0;
++ pixel += 8;
++ }
++
++ while (pixel < width) {
++ dest[pixel] = (src0[pixel] * (256 - fraction) +
++ src1[pixel] * fraction) >> 8;
++ ++pixel;
++ }
++}
++
++#if defined(COMPILER_MSVC)
++#pragma warning(pop)
++#endif
++
++} // namespace media
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/sinc_resampler_sse.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/sinc_resampler_sse.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/sinc_resampler_sse.cc 1970-01-01 01:00:00.000000000 +0100
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/sinc_resampler_sse.cc 2016-07-17 18:06:36.111790219 +0200
+@@ -0,0 +1,50 @@
++// Copyright 2013 The Chromium Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style license that can be
++// found in the LICENSE file.
++
++#include "media/base/sinc_resampler.h"
++
++#include <xmmintrin.h>
++
++namespace media {
++
++float SincResampler::Convolve_SSE(const float* input_ptr, const float* k1,
++ const float* k2,
++ double kernel_interpolation_factor) {
++ __m128 m_input;
++ __m128 m_sums1 = _mm_setzero_ps();
++ __m128 m_sums2 = _mm_setzero_ps();
++
++ // Based on |input_ptr| alignment, we need to use loadu or load. Unrolling
++ // these loops hurt performance in local testing.
++ if (reinterpret_cast<uintptr_t>(input_ptr) & 0x0F) {
++ for (int i = 0; i < kKernelSize; i += 4) {
++ m_input = _mm_loadu_ps(input_ptr + i);
++ m_sums1 = _mm_add_ps(m_sums1, _mm_mul_ps(m_input, _mm_load_ps(k1 + i)));
++ m_sums2 = _mm_add_ps(m_sums2, _mm_mul_ps(m_input, _mm_load_ps(k2 + i)));
++ }
++ } else {
++ for (int i = 0; i < kKernelSize; i += 4) {
++ m_input = _mm_load_ps(input_ptr + i);
++ m_sums1 = _mm_add_ps(m_sums1, _mm_mul_ps(m_input, _mm_load_ps(k1 + i)));
++ m_sums2 = _mm_add_ps(m_sums2, _mm_mul_ps(m_input, _mm_load_ps(k2 + i)));
++ }
++ }
++
++ // Linearly interpolate the two "convolutions".
++ m_sums1 = _mm_mul_ps(m_sums1, _mm_set_ps1(
++ static_cast<float>(1.0 - kernel_interpolation_factor)));
++ m_sums2 = _mm_mul_ps(m_sums2, _mm_set_ps1(
++ static_cast<float>(kernel_interpolation_factor)));
++ m_sums1 = _mm_add_ps(m_sums1, m_sums2);
++
++ // Sum components together.
++ float result;
++ m_sums2 = _mm_add_ps(_mm_movehl_ps(m_sums1, m_sums1), m_sums1);
++ _mm_store_ss(&result, _mm_add_ss(m_sums2, _mm_shuffle_ps(
++ m_sums2, m_sums2, 1)));
++
++ return result;
++}
++
++} // namespace media
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/vector_math_sse.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/vector_math_sse.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/simd/vector_math_sse.cc 1970-01-01 01:00:00.000000000 +0100
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/simd/vector_math_sse.cc 2016-07-17 18:06:36.112790224 +0200
+@@ -0,0 +1,118 @@
++// Copyright 2013 The Chromium Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style license that can be
++// found in the LICENSE file.
++
++#include "media/base/vector_math_testing.h"
++
++#include <algorithm>
++
++#include <xmmintrin.h> // NOLINT
++
++namespace media {
++namespace vector_math {
++
++void FMUL_SSE(const float src[], float scale, int len, float dest[]) {
++ const int rem = len % 4;
++ const int last_index = len - rem;
++ __m128 m_scale = _mm_set_ps1(scale);
++ for (int i = 0; i < last_index; i += 4)
++ _mm_store_ps(dest + i, _mm_mul_ps(_mm_load_ps(src + i), m_scale));
++
++ // Handle any remaining values that wouldn't fit in an SSE pass.
++ for (int i = last_index; i < len; ++i)
++ dest[i] = src[i] * scale;
++}
++
++void FMAC_SSE(const float src[], float scale, int len, float dest[]) {
++ const int rem = len % 4;
++ const int last_index = len - rem;
++ __m128 m_scale = _mm_set_ps1(scale);
++ for (int i = 0; i < last_index; i += 4) {
++ _mm_store_ps(dest + i, _mm_add_ps(_mm_load_ps(dest + i),
++ _mm_mul_ps(_mm_load_ps(src + i), m_scale)));
++ }
++
++ // Handle any remaining values that wouldn't fit in an SSE pass.
++ for (int i = last_index; i < len; ++i)
++ dest[i] += src[i] * scale;
++}
++
++// Convenience macro to extract float 0 through 3 from the vector |a|. This is
++// needed because compilers other than clang don't support access via
++// operator[]().
++#define EXTRACT_FLOAT(a, i) \
++ (i == 0 ? \
++ _mm_cvtss_f32(a) : \
++ _mm_cvtss_f32(_mm_shuffle_ps(a, a, i)))
++
++std::pair<float, float> EWMAAndMaxPower_SSE(
++ float initial_value, const float src[], int len, float smoothing_factor) {
++ // When the recurrence is unrolled, we see that we can split it into 4
++ // separate lanes of evaluation:
++ //
++ // y[n] = a(S[n]^2) + (1-a)(y[n-1])
++ // = a(S[n]^2) + (1-a)^1(aS[n-1]^2) + (1-a)^2(aS[n-2]^2) + ...
++ // = z[n] + (1-a)^1(z[n-1]) + (1-a)^2(z[n-2]) + (1-a)^3(z[n-3])
++ //
++ // where z[n] = a(S[n]^2) + (1-a)^4(z[n-4]) + (1-a)^8(z[n-8]) + ...
++ //
++ // Thus, the strategy here is to compute z[n], z[n-1], z[n-2], and z[n-3] in
++ // each of the 4 lanes, and then combine them to give y[n].
++
++ const int rem = len % 4;
++ const int last_index = len - rem;
++
++ const __m128 smoothing_factor_x4 = _mm_set_ps1(smoothing_factor);
++ const float weight_prev = 1.0f - smoothing_factor;
++ const __m128 weight_prev_x4 = _mm_set_ps1(weight_prev);
++ const __m128 weight_prev_squared_x4 =
++ _mm_mul_ps(weight_prev_x4, weight_prev_x4);
++ const __m128 weight_prev_4th_x4 =
++ _mm_mul_ps(weight_prev_squared_x4, weight_prev_squared_x4);
++
++ // Compute z[n], z[n-1], z[n-2], and z[n-3] in parallel in lanes 3, 2, 1 and
++ // 0, respectively.
++ __m128 max_x4 = _mm_setzero_ps();
++ __m128 ewma_x4 = _mm_setr_ps(0.0f, 0.0f, 0.0f, initial_value);
++ int i;
++ for (i = 0; i < last_index; i += 4) {
++ ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_4th_x4);
++ const __m128 sample_x4 = _mm_load_ps(src + i);
++ const __m128 sample_squared_x4 = _mm_mul_ps(sample_x4, sample_x4);
++ max_x4 = _mm_max_ps(max_x4, sample_squared_x4);
++ // Note: The compiler optimizes this to a single multiply-and-accumulate
++ // instruction:
++ ewma_x4 = _mm_add_ps(ewma_x4,
++ _mm_mul_ps(sample_squared_x4, smoothing_factor_x4));
++ }
++
++ // y[n] = z[n] + (1-a)^1(z[n-1]) + (1-a)^2(z[n-2]) + (1-a)^3(z[n-3])
++ float ewma = EXTRACT_FLOAT(ewma_x4, 3);
++ ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_x4);
++ ewma += EXTRACT_FLOAT(ewma_x4, 2);
++ ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_x4);
++ ewma += EXTRACT_FLOAT(ewma_x4, 1);
++ ewma_x4 = _mm_mul_ss(ewma_x4, weight_prev_x4);
++ ewma += EXTRACT_FLOAT(ewma_x4, 0);
++
++ // Fold the maximums together to get the overall maximum.
++ max_x4 = _mm_max_ps(max_x4,
++ _mm_shuffle_ps(max_x4, max_x4, _MM_SHUFFLE(3, 3, 1, 1)));
++ max_x4 = _mm_max_ss(max_x4, _mm_shuffle_ps(max_x4, max_x4, 2));
++
++ std::pair<float, float> result(ewma, EXTRACT_FLOAT(max_x4, 0));
++
++ // Handle remaining values at the end of |src|.
++ for (; i < len; ++i) {
++ result.first *= weight_prev;
++ const float sample = src[i];
++ const float sample_squared = sample * sample;
++ result.first += sample_squared * smoothing_factor;
++ result.second = std::max(result.second, sample_squared);
++ }
++
++ return result;
++}
++
++} // namespace vector_math
++} // namespace media
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/sinc_resampler.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/sinc_resampler.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler.cc 2016-07-17 19:40:18.772322232 +0200
+@@ -81,17 +81,12 @@
+ #include <cmath>
+ #include <limits>
+
++#include "base/cpu.h"
+ #include "base/logging.h"
+ #include "build/build_config.h"
+
+-#if defined(ARCH_CPU_X86_FAMILY)
+-#include <xmmintrin.h>
+-#define CONVOLVE_FUNC Convolve_SSE
+-#elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
++#if defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
+ #include <arm_neon.h>
+-#define CONVOLVE_FUNC Convolve_NEON
+-#else
+-#define CONVOLVE_FUNC Convolve_C
+ #endif
+
+ namespace media {
+@@ -112,10 +107,41 @@
+ return sinc_scale_factor;
+ }
+
++#undef CONVOLVE_FUNC
++
+ static int CalculateChunkSize(int block_size_, double io_ratio) {
+ return block_size_ / io_ratio;
+ }
+
++// If we know the minimum architecture at compile time, avoid CPU detection.
++// Force NaCl code to use C routines since (at present) nothing there uses these
++// methods and plumbing the -msse built library is non-trivial.
++#if defined(ARCH_CPU_X86_FAMILY) && !defined(OS_NACL)
++#if defined(__SSE__)
++#define CONVOLVE_FUNC Convolve_SSE
++void SincResampler::InitializeCPUSpecificFeatures() {}
++#else
++// X86 CPU detection required. Functions will be set by
++// InitializeCPUSpecificFeatures().
++#define CONVOLVE_FUNC g_convolve_proc_
++
++typedef float (*ConvolveProc)(const float*, const float*, const float*, double);
++static ConvolveProc g_convolve_proc_ = NULL;
++
++void SincResampler::InitializeCPUSpecificFeatures() {
++ CHECK(!g_convolve_proc_);
++ g_convolve_proc_ = base::CPU().has_sse() ? Convolve_SSE : Convolve_C;
++}
++#endif
++#elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
++#define CONVOLVE_FUNC Convolve_NEON
++void SincResampler::InitializeCPUSpecificFeatures() {}
++#else
++// Unknown architecture.
++#define CONVOLVE_FUNC Convolve_C
++void SincResampler::InitializeCPUSpecificFeatures() {}
++#endif
++
+ SincResampler::SincResampler(double io_sample_rate_ratio,
+ int request_frames,
+ const ReadCB& read_cb)
+@@ -343,46 +369,7 @@
+ kernel_interpolation_factor * sum2);
+ }
+
+-#if defined(ARCH_CPU_X86_FAMILY)
+-float SincResampler::Convolve_SSE(const float* input_ptr, const float* k1,
+- const float* k2,
+- double kernel_interpolation_factor) {
+- __m128 m_input;
+- __m128 m_sums1 = _mm_setzero_ps();
+- __m128 m_sums2 = _mm_setzero_ps();
+-
+- // Based on |input_ptr| alignment, we need to use loadu or load. Unrolling
+- // these loops hurt performance in local testing.
+- if (reinterpret_cast<uintptr_t>(input_ptr) & 0x0F) {
+- for (int i = 0; i < kKernelSize; i += 4) {
+- m_input = _mm_loadu_ps(input_ptr + i);
+- m_sums1 = _mm_add_ps(m_sums1, _mm_mul_ps(m_input, _mm_load_ps(k1 + i)));
+- m_sums2 = _mm_add_ps(m_sums2, _mm_mul_ps(m_input, _mm_load_ps(k2 + i)));
+- }
+- } else {
+- for (int i = 0; i < kKernelSize; i += 4) {
+- m_input = _mm_load_ps(input_ptr + i);
+- m_sums1 = _mm_add_ps(m_sums1, _mm_mul_ps(m_input, _mm_load_ps(k1 + i)));
+- m_sums2 = _mm_add_ps(m_sums2, _mm_mul_ps(m_input, _mm_load_ps(k2 + i)));
+- }
+- }
+-
+- // Linearly interpolate the two "convolutions".
+- m_sums1 = _mm_mul_ps(m_sums1, _mm_set_ps1(
+- static_cast<float>(1.0 - kernel_interpolation_factor)));
+- m_sums2 = _mm_mul_ps(m_sums2, _mm_set_ps1(
+- static_cast<float>(kernel_interpolation_factor)));
+- m_sums1 = _mm_add_ps(m_sums1, m_sums2);
+-
+- // Sum components together.
+- float result;
+- m_sums2 = _mm_add_ps(_mm_movehl_ps(m_sums1, m_sums1), m_sums1);
+- _mm_store_ss(&result, _mm_add_ss(m_sums2, _mm_shuffle_ps(
+- m_sums2, m_sums2, 1)));
+-
+- return result;
+-}
+-#elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
++#if defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
+ float SincResampler::Convolve_NEON(const float* input_ptr, const float* k1,
+ const float* k2,
+ double kernel_interpolation_factor) {
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/sinc_resampler.h qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler.h
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/sinc_resampler.h 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler.h 2016-07-17 18:06:36.163790503 +0200
+@@ -35,6 +35,10 @@
+ kKernelStorageSize = kKernelSize * (kKernelOffsetCount + 1),
+ };
+
++ // Selects runtime specific CPU features like SSE. Must be called before
++ // using SincResampler.
++ static void InitializeCPUSpecificFeatures();
++
+ // Callback type for providing more data into the resampler. Expects |frames|
+ // of data to be rendered into |destination|; zero padded if not enough frames
+ // are available to satisfy the request.
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/sinc_resampler_perftest.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler_perftest.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/sinc_resampler_perftest.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler_perftest.cc 2016-07-17 18:06:36.171790546 +0200
+@@ -4,6 +4,7 @@
+
+ #include "base/bind.h"
+ #include "base/bind_helpers.h"
++#include "base/cpu.h"
+ #include "base/time/time.h"
+ #include "build/build_config.h"
+ #include "media/base/sinc_resampler.h"
+@@ -61,6 +62,9 @@
+ &resampler, SincResampler::Convolve_C, true, "unoptimized_aligned");
+
+ #if defined(CONVOLVE_FUNC)
++#if defined(ARCH_CPU_X86_FAMILY)
++ ASSERT_TRUE(base::CPU().has_sse());
++#endif
+ RunConvolveBenchmark(
+ &resampler, SincResampler::CONVOLVE_FUNC, true, "optimized_aligned");
+ RunConvolveBenchmark(
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/sinc_resampler_unittest.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler_unittest.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/sinc_resampler_unittest.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/sinc_resampler_unittest.cc 2016-07-17 19:41:45.620785149 +0200
+@@ -9,6 +9,7 @@
+
+ #include "base/bind.h"
+ #include "base/bind_helpers.h"
++#include "base/cpu.h"
+ #include "base/macros.h"
+ #include "base/strings/string_number_conversions.h"
+ #include "base/time/time.h"
+@@ -164,6 +165,10 @@
+ static const double kKernelInterpolationFactor = 0.5;
+
+ TEST(SincResamplerTest, Convolve) {
++#if defined(ARCH_CPU_X86_FAMILY)
++ ASSERT_TRUE(base::CPU().has_sse());
++#endif
++
+ // Initialize a dummy resampler.
+ MockSource mock_source;
+ SincResampler resampler(
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/vector_math.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/vector_math.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/vector_math.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/vector_math.cc 2016-07-17 18:06:36.173790557 +0200
+@@ -7,12 +7,17 @@
+
+ #include <algorithm>
+
++#include "base/cpu.h"
+ #include "base/logging.h"
+ #include "build/build_config.h"
+
++namespace media {
++namespace vector_math {
++
++// If we know the minimum architecture at compile time, avoid CPU detection.
+ // NaCl does not allow intrinsics.
+ #if defined(ARCH_CPU_X86_FAMILY) && !defined(OS_NACL)
+-#include <xmmintrin.h>
++#if defined(__SSE__)
+ // Don't use custom SSE versions where the auto-vectorized C version performs
+ // better, which is anywhere clang is used.
+ #if !defined(__clang__)
+@@ -23,20 +28,52 @@
+ #define FMUL_FUNC FMUL_C
+ #endif
+ #define EWMAAndMaxPower_FUNC EWMAAndMaxPower_SSE
++void Initialize() {}
++#else
++// X86 CPU detection required. Functions will be set by Initialize().
++#if !defined(__clang__)
++#define FMAC_FUNC g_fmac_proc_
++#define FMUL_FUNC g_fmul_proc_
++#else
++#define FMAC_FUNC FMAC_C
++#define FMUL_FUNC FMUL_C
++#endif
++#define EWMAAndMaxPower_FUNC g_ewma_power_proc_
++
++#if !defined(__clang__)
++typedef void (*MathProc)(const float src[], float scale, int len, float dest[]);
++static MathProc g_fmac_proc_ = NULL;
++static MathProc g_fmul_proc_ = NULL;
++#endif
++typedef std::pair<float, float> (*EWMAAndMaxPowerProc)(
++ float initial_value, const float src[], int len, float smoothing_factor);
++static EWMAAndMaxPowerProc g_ewma_power_proc_ = NULL;
++
++void Initialize() {
++ CHECK(!g_fmac_proc_);
++ CHECK(!g_fmul_proc_);
++ CHECK(!g_ewma_power_proc_);
++ const bool kUseSSE = base::CPU().has_sse();
++#if !defined(__clang__)
++ g_fmac_proc_ = kUseSSE ? FMAC_SSE : FMAC_C;
++ g_fmul_proc_ = kUseSSE ? FMUL_SSE : FMUL_C;
++#endif
++ g_ewma_power_proc_ = kUseSSE ? EWMAAndMaxPower_SSE : EWMAAndMaxPower_C;
++}
++#endif
+ #elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
+ #include <arm_neon.h>
+ #define FMAC_FUNC FMAC_NEON
+ #define FMUL_FUNC FMUL_NEON
+ #define EWMAAndMaxPower_FUNC EWMAAndMaxPower_NEON
++void Initialize() {}
+ #else
+ #define FMAC_FUNC FMAC_C
+ #define FMUL_FUNC FMUL_C
+ #define EWMAAndMaxPower_FUNC EWMAAndMaxPower_C
++void Initialize() {}
+ #endif
+
+-namespace media {
+-namespace vector_math {
+-
+ void FMAC(const float src[], float scale, int len, float dest[]) {
+ // Ensure |src| and |dest| are 16-byte aligned.
+ DCHECK_EQ(0u, reinterpret_cast<uintptr_t>(src) & (kRequiredAlignment - 1));
+@@ -89,111 +126,6 @@
+ return result;
+ }
+
+-#if defined(ARCH_CPU_X86_FAMILY) && !defined(OS_NACL)
+-void FMUL_SSE(const float src[], float scale, int len, float dest[]) {
+- const int rem = len % 4;
+- const int last_index = len - rem;
+- __m128 m_scale = _mm_set_ps1(scale);
+- for (int i = 0; i < last_index; i += 4)
+- _mm_store_ps(dest + i, _mm_mul_ps(_mm_load_ps(src + i), m_scale));
+-
+- // Handle any remaining values that wouldn't fit in an SSE pass.
+- for (int i = last_index; i < len; ++i)
+- dest[i] = src[i] * scale;
+-}
+-
+-void FMAC_SSE(const float src[], float scale, int len, float dest[]) {
+- const int rem = len % 4;
+- const int last_index = len - rem;
+- __m128 m_scale = _mm_set_ps1(scale);
+- for (int i = 0; i < last_index; i += 4) {
+- _mm_store_ps(dest + i, _mm_add_ps(_mm_load_ps(dest + i),
+- _mm_mul_ps(_mm_load_ps(src + i), m_scale)));
+- }
+-
+- // Handle any remaining values that wouldn't fit in an SSE pass.
+- for (int i = last_index; i < len; ++i)
+- dest[i] += src[i] * scale;
+-}
+-
+-// Convenience macro to extract float 0 through 3 from the vector |a|. This is
+-// needed because compilers other than clang don't support access via
+-// operator[]().
+-#define EXTRACT_FLOAT(a, i) \
+- (i == 0 ? \
+- _mm_cvtss_f32(a) : \
+- _mm_cvtss_f32(_mm_shuffle_ps(a, a, i)))
+-
+-std::pair<float, float> EWMAAndMaxPower_SSE(
+- float initial_value, const float src[], int len, float smoothing_factor) {
+- // When the recurrence is unrolled, we see that we can split it into 4
+- // separate lanes of evaluation:
+- //
+- // y[n] = a(S[n]^2) + (1-a)(y[n-1])
+- // = a(S[n]^2) + (1-a)^1(aS[n-1]^2) + (1-a)^2(aS[n-2]^2) + ...
+- // = z[n] + (1-a)^1(z[n-1]) + (1-a)^2(z[n-2]) + (1-a)^3(z[n-3])
+- //
+- // where z[n] = a(S[n]^2) + (1-a)^4(z[n-4]) + (1-a)^8(z[n-8]) + ...
+- //
+- // Thus, the strategy here is to compute z[n], z[n-1], z[n-2], and z[n-3] in
+- // each of the 4 lanes, and then combine them to give y[n].
+-
+- const int rem = len % 4;
+- const int last_index = len - rem;
+-
+- const __m128 smoothing_factor_x4 = _mm_set_ps1(smoothing_factor);
+- const float weight_prev = 1.0f - smoothing_factor;
+- const __m128 weight_prev_x4 = _mm_set_ps1(weight_prev);
+- const __m128 weight_prev_squared_x4 =
+- _mm_mul_ps(weight_prev_x4, weight_prev_x4);
+- const __m128 weight_prev_4th_x4 =
+- _mm_mul_ps(weight_prev_squared_x4, weight_prev_squared_x4);
+-
+- // Compute z[n], z[n-1], z[n-2], and z[n-3] in parallel in lanes 3, 2, 1 and
+- // 0, respectively.
+- __m128 max_x4 = _mm_setzero_ps();
+- __m128 ewma_x4 = _mm_setr_ps(0.0f, 0.0f, 0.0f, initial_value);
+- int i;
+- for (i = 0; i < last_index; i += 4) {
+- ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_4th_x4);
+- const __m128 sample_x4 = _mm_load_ps(src + i);
+- const __m128 sample_squared_x4 = _mm_mul_ps(sample_x4, sample_x4);
+- max_x4 = _mm_max_ps(max_x4, sample_squared_x4);
+- // Note: The compiler optimizes this to a single multiply-and-accumulate
+- // instruction:
+- ewma_x4 = _mm_add_ps(ewma_x4,
+- _mm_mul_ps(sample_squared_x4, smoothing_factor_x4));
+- }
+-
+- // y[n] = z[n] + (1-a)^1(z[n-1]) + (1-a)^2(z[n-2]) + (1-a)^3(z[n-3])
+- float ewma = EXTRACT_FLOAT(ewma_x4, 3);
+- ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_x4);
+- ewma += EXTRACT_FLOAT(ewma_x4, 2);
+- ewma_x4 = _mm_mul_ps(ewma_x4, weight_prev_x4);
+- ewma += EXTRACT_FLOAT(ewma_x4, 1);
+- ewma_x4 = _mm_mul_ss(ewma_x4, weight_prev_x4);
+- ewma += EXTRACT_FLOAT(ewma_x4, 0);
+-
+- // Fold the maximums together to get the overall maximum.
+- max_x4 = _mm_max_ps(max_x4,
+- _mm_shuffle_ps(max_x4, max_x4, _MM_SHUFFLE(3, 3, 1, 1)));
+- max_x4 = _mm_max_ss(max_x4, _mm_shuffle_ps(max_x4, max_x4, 2));
+-
+- std::pair<float, float> result(ewma, EXTRACT_FLOAT(max_x4, 0));
+-
+- // Handle remaining values at the end of |src|.
+- for (; i < len; ++i) {
+- result.first *= weight_prev;
+- const float sample = src[i];
+- const float sample_squared = sample * sample;
+- result.first += sample_squared * smoothing_factor;
+- result.second = std::max(result.second, sample_squared);
+- }
+-
+- return result;
+-}
+-#endif
+-
+ #if defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
+ void FMAC_NEON(const float src[], float scale, int len, float dest[]) {
+ const int rem = len % 4;
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/vector_math.h qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/vector_math.h
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/vector_math.h 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/vector_math.h 2016-07-17 18:06:36.174790563 +0200
+@@ -15,6 +15,11 @@
+ // Required alignment for inputs and outputs to all vector math functions
+ enum { kRequiredAlignment = 16 };
+
++// Selects runtime specific optimizations such as SSE. Must be called prior to
++// calling FMAC() or FMUL(). Called during media library initialization; most
++// users should never have to call this.
++MEDIA_EXPORT void Initialize();
++
+ // Multiply each element of |src| (up to |len|) by |scale| and add to |dest|.
+ // |src| and |dest| must be aligned by kRequiredAlignment.
+ MEDIA_EXPORT void FMAC(const float src[], float scale, int len, float dest[]);
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/vector_math_perftest.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/vector_math_perftest.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/vector_math_perftest.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/vector_math_perftest.cc 2016-07-17 19:43:25.736318783 +0200
+@@ -3,6 +3,7 @@
+ // found in the LICENSE file.
+
+ #include "base/macros.h"
++#include "base/cpu.h"
+ #include "base/memory/aligned_memory.h"
+ #include "base/memory/scoped_ptr.h"
+ #include "base/time/time.h"
+@@ -81,15 +82,11 @@
+ DISALLOW_COPY_AND_ASSIGN(VectorMathPerfTest);
+ };
+
+-// Define platform dependent function names for SIMD optimized methods.
++// Define platform independent function name for FMAC* perf tests.
+ #if defined(ARCH_CPU_X86_FAMILY)
+ #define FMAC_FUNC FMAC_SSE
+-#define FMUL_FUNC FMUL_SSE
+-#define EWMAAndMaxPower_FUNC EWMAAndMaxPower_SSE
+ #elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
+ #define FMAC_FUNC FMAC_NEON
+-#define FMUL_FUNC FMUL_NEON
+-#define EWMAAndMaxPower_FUNC EWMAAndMaxPower_NEON
+ #endif
+
+ // Benchmark for each optimized vector_math::FMAC() method.
+@@ -98,6 +95,9 @@
+ RunBenchmark(
+ vector_math::FMAC_C, true, "vector_math_fmac", "unoptimized");
+ #if defined(FMAC_FUNC)
++#if defined(ARCH_CPU_X86_FAMILY)
++ ASSERT_TRUE(base::CPU().has_sse());
++#endif
+ // Benchmark FMAC_FUNC() with unaligned size.
+ ASSERT_NE((kVectorSize - 1) % (vector_math::kRequiredAlignment /
+ sizeof(float)), 0U);
+@@ -111,12 +111,24 @@
+ #endif
+ }
+
++#undef FMAC_FUNC
++
++// Define platform independent function name for FMULBenchmark* tests.
++#if defined(ARCH_CPU_X86_FAMILY)
++#define FMUL_FUNC FMUL_SSE
++#elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
++#define FMUL_FUNC FMUL_NEON
++#endif
++
+ // Benchmark for each optimized vector_math::FMUL() method.
+ TEST_F(VectorMathPerfTest, FMUL) {
+ // Benchmark FMUL_C().
+ RunBenchmark(
+ vector_math::FMUL_C, true, "vector_math_fmul", "unoptimized");
+ #if defined(FMUL_FUNC)
++#if defined(ARCH_CPU_X86_FAMILY)
++ ASSERT_TRUE(base::CPU().has_sse());
++#endif
+ // Benchmark FMUL_FUNC() with unaligned size.
+ ASSERT_NE((kVectorSize - 1) % (vector_math::kRequiredAlignment /
+ sizeof(float)), 0U);
+@@ -130,6 +142,14 @@
+ #endif
+ }
+
++#undef FMUL_FUNC
++
++#if defined(ARCH_CPU_X86_FAMILY)
++#define EWMAAndMaxPower_FUNC EWMAAndMaxPower_SSE
++#elif defined(ARCH_CPU_ARM_FAMILY) && defined(USE_NEON)
++#define EWMAAndMaxPower_FUNC EWMAAndMaxPower_NEON
++#endif
++
+ // Benchmark for each optimized vector_math::EWMAAndMaxPower() method.
+ TEST_F(VectorMathPerfTest, EWMAAndMaxPower) {
+ // Benchmark EWMAAndMaxPower_C().
+@@ -138,6 +158,9 @@
+ "vector_math_ewma_and_max_power",
+ "unoptimized");
+ #if defined(EWMAAndMaxPower_FUNC)
++#if defined(ARCH_CPU_X86_FAMILY)
++ ASSERT_TRUE(base::CPU().has_sse());
++#endif
+ // Benchmark EWMAAndMaxPower_FUNC() with unaligned size.
+ ASSERT_NE((kVectorSize - 1) % (vector_math::kRequiredAlignment /
+ sizeof(float)), 0U);
+@@ -155,4 +178,6 @@
+ #endif
+ }
+
++#undef EWMAAndMaxPower_FUNC
++
+ } // namespace media
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/vector_math_testing.h qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/vector_math_testing.h
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/vector_math_testing.h 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/vector_math_testing.h 2016-07-17 18:06:36.193790666 +0200
+@@ -19,7 +19,7 @@
+ MEDIA_EXPORT std::pair<float, float> EWMAAndMaxPower_C(
+ float initial_value, const float src[], int len, float smoothing_factor);
+
+-#if defined(ARCH_CPU_X86_FAMILY) && !defined(OS_NACL)
++#if defined(ARCH_CPU_X86_FAMILY)
+ MEDIA_EXPORT void FMAC_SSE(const float src[], float scale, int len,
+ float dest[]);
+ MEDIA_EXPORT void FMUL_SSE(const float src[], float scale, int len,
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/vector_math_unittest.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/vector_math_unittest.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/vector_math_unittest.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/vector_math_unittest.cc 2016-07-17 19:44:10.094555220 +0200
+@@ -7,6 +7,7 @@
+ #include <cmath>
+
+ #include "base/macros.h"
++#include "base/cpu.h"
+ #include "base/memory/aligned_memory.h"
+ #include "base/memory/scoped_ptr.h"
+ #include "base/strings/string_number_conversions.h"
+@@ -77,6 +78,7 @@
+
+ #if defined(ARCH_CPU_X86_FAMILY)
+ {
++ ASSERT_TRUE(base::CPU().has_sse());
+ SCOPED_TRACE("FMAC_SSE");
+ FillTestVectors(kInputFillValue, kOutputFillValue);
+ vector_math::FMAC_SSE(
+@@ -118,6 +120,7 @@
+
+ #if defined(ARCH_CPU_X86_FAMILY)
+ {
++ ASSERT_TRUE(base::CPU().has_sse());
+ SCOPED_TRACE("FMUL_SSE");
+ FillTestVectors(kInputFillValue, kOutputFillValue);
+ vector_math::FMUL_SSE(
+@@ -226,6 +229,7 @@
+
+ #if defined(ARCH_CPU_X86_FAMILY)
+ {
++ ASSERT_TRUE(base::CPU().has_sse());
+ SCOPED_TRACE("EWMAAndMaxPower_SSE");
+ const std::pair<float, float>& result = vector_math::EWMAAndMaxPower_SSE(
+ initial_value_, data_.get(), data_len_, smoothing_factor_);
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/yuv_convert.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/yuv_convert.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/yuv_convert.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/yuv_convert.cc 2016-07-17 18:06:36.196790682 +0200
+@@ -33,7 +33,7 @@
+ #include "media/base/simd/convert_yuv_to_rgb.h"
+ #include "media/base/simd/filter_yuv.h"
+
+-#if defined(ARCH_CPU_X86_FAMILY)
++#if defined(ARCH_CPU_X86_FAMILY) && defined(__MMX__)
+ #if defined(COMPILER_MSVC)
+ #include <intrin.h>
+ #else
+@@ -134,7 +134,7 @@
+
+ // Empty SIMD registers state after using them.
+ void EmptyRegisterStateStub() {}
+-#if defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
++#if defined(MEDIA_MMX_INTRINSICS_AVAILABLE) && defined(__MMX__)
+ void EmptyRegisterStateIntrinsic() { _mm_empty(); }
+ #endif
+ typedef void (*EmptyRegisterStateProc)();
+@@ -248,34 +248,46 @@
+ // Assembly code confuses MemorySanitizer. Also not available in iOS builds.
+ #if defined(ARCH_CPU_X86_FAMILY) && !defined(MEMORY_SANITIZER) && \
+ !defined(OS_IOS)
+- g_convert_yuva_to_argb_proc_ = ConvertYUVAToARGB_MMX;
++ base::CPU cpu;
++ if (cpu.has_mmx()) {
++ g_convert_yuv_to_rgb32_row_proc_ = ConvertYUVToRGB32Row_MMX;
++ g_scale_yuv_to_rgb32_row_proc_ = ScaleYUVToRGB32Row_MMX;
++ g_convert_yuv_to_rgb32_proc_ = ConvertYUVToRGB32_MMX;
++ g_convert_yuva_to_argb_proc_ = ConvertYUVAToARGB_MMX;
++ g_linear_scale_yuv_to_rgb32_row_proc_ = LinearScaleYUVToRGB32Row_MMX;
+
+ #if defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
+- g_empty_register_state_proc_ = EmptyRegisterStateIntrinsic;
++ g_filter_yuv_rows_proc_ = FilterYUVRows_MMX;
++#endif
++#if defined(MEDIA_MMX_INTRINSICS_AVAILABLE) && defined(__MMX__)
++ g_empty_register_state_proc_ = EmptyRegisterStateIntrinsic;
+ #else
+- g_empty_register_state_proc_ = EmptyRegisterState_MMX;
++ g_empty_register_state_proc_ = EmptyRegisterState_MMX;
+ #endif
++ }
+
+- g_convert_yuv_to_rgb32_row_proc_ = ConvertYUVToRGB32Row_SSE;
+- g_convert_yuv_to_rgb32_proc_ = ConvertYUVToRGB32_SSE;
++ if (cpu.has_sse()) {
++ g_convert_yuv_to_rgb32_row_proc_ = ConvertYUVToRGB32Row_SSE;
++ g_scale_yuv_to_rgb32_row_proc_ = ScaleYUVToRGB32Row_SSE;
++ g_linear_scale_yuv_to_rgb32_row_proc_ = LinearScaleYUVToRGB32Row_SSE;
++ g_convert_yuv_to_rgb32_proc_ = ConvertYUVToRGB32_SSE;
++ }
+
+- g_filter_yuv_rows_proc_ = FilterYUVRows_SSE2;
+- g_convert_rgb32_to_yuv_proc_ = ConvertRGB32ToYUV_SSE2;
++ if (cpu.has_sse2()) {
++ g_filter_yuv_rows_proc_ = FilterYUVRows_SSE2;
++ g_convert_rgb32_to_yuv_proc_ = ConvertRGB32ToYUV_SSE2;
+
+ #if defined(ARCH_CPU_X86_64)
+- g_scale_yuv_to_rgb32_row_proc_ = ScaleYUVToRGB32Row_SSE2_X64;
++ g_scale_yuv_to_rgb32_row_proc_ = ScaleYUVToRGB32Row_SSE2_X64;
+
+- // Technically this should be in the MMX section, but MSVC will optimize out
+- // the export of LinearScaleYUVToRGB32Row_MMX, which is required by the unit
+- // tests, if that decision can be made at compile time. Since all X64 CPUs
+- // have SSE2, we can hack around this by making the selection here.
+- g_linear_scale_yuv_to_rgb32_row_proc_ = LinearScaleYUVToRGB32Row_MMX_X64;
+-#else
+- g_scale_yuv_to_rgb32_row_proc_ = ScaleYUVToRGB32Row_SSE;
+- g_linear_scale_yuv_to_rgb32_row_proc_ = LinearScaleYUVToRGB32Row_SSE;
++ // Technically this should be in the MMX section, but MSVC will optimize out
++ // the export of LinearScaleYUVToRGB32Row_MMX, which is required by the unit
++ // tests, if that decision can be made at compile time. Since all X64 CPUs
++ // have SSE2, we can hack around this by making the selection here.
++ g_linear_scale_yuv_to_rgb32_row_proc_ = LinearScaleYUVToRGB32Row_MMX_X64;
+ #endif
++ }
+
+- base::CPU cpu;
+ if (cpu.has_ssse3()) {
+ g_convert_rgb24_to_yuv_proc_ = &ConvertRGB24ToYUV_SSSE3;
+
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/yuv_convert_perftest.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/yuv_convert_perftest.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/yuv_convert_perftest.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/yuv_convert_perftest.cc 2016-07-17 19:48:57.702119844 +0200
+@@ -69,6 +69,29 @@
+ DISALLOW_COPY_AND_ASSIGN(YUVConvertPerfTest);
+ };
+
++TEST_F(YUVConvertPerfTest, ConvertYUVToRGB32Row_MMX) {
++ ASSERT_TRUE(base::CPU().has_mmx());
++
++ base::TimeTicks start = base::TimeTicks::Now();
++ for (int i = 0; i < kPerfTestIterations; ++i) {
++ for (int row = 0; row < kSourceHeight; ++row) {
++ int chroma_row = row / 2;
++ ConvertYUVToRGB32Row_MMX(
++ yuv_bytes_.get() + row * kSourceWidth,
++ yuv_bytes_.get() + kSourceUOffset + (chroma_row * kSourceWidth / 2),
++ yuv_bytes_.get() + kSourceVOffset + (chroma_row * kSourceWidth / 2),
++ rgb_bytes_converted_.get(),
++ kWidth,
++ GetLookupTable(YV12));
++ }
++ }
++ media::EmptyRegisterState();
++ double total_time_seconds = (base::TimeTicks::Now() - start).InSecondsF();
++ perf_test::PrintResult(
++ "yuv_convert_perftest", "", "ConvertYUVToRGB32Row_MMX",
++ kPerfTestIterations / total_time_seconds, "runs/s", true);
++}
++
+ TEST_F(YUVConvertPerfTest, ConvertYUVToRGB32Row_SSE) {
+ ASSERT_TRUE(base::CPU().has_sse());
+
+@@ -159,9 +182,32 @@
+ }
+ #endif
+
+-// 64-bit release + component builds on Windows are too smart and optimizes
+-// away the function being tested.
+-#if defined(OS_WIN) && (defined(ARCH_CPU_X86) || !defined(COMPONENT_BUILD))
++TEST_F(YUVConvertPerfTest, ScaleYUVToRGB32Row_MMX) {
++ ASSERT_TRUE(base::CPU().has_mmx());
++
++ const int kSourceDx = 80000; // This value means a scale down.
++
++ base::TimeTicks start = base::TimeTicks::Now();
++ for (int i = 0; i < kPerfTestIterations; ++i) {
++ for (int row = 0; row < kSourceHeight; ++row) {
++ int chroma_row = row / 2;
++ ScaleYUVToRGB32Row_MMX(
++ yuv_bytes_.get() + row * kSourceWidth,
++ yuv_bytes_.get() + kSourceUOffset + (chroma_row * kSourceWidth / 2),
++ yuv_bytes_.get() + kSourceVOffset + (chroma_row * kSourceWidth / 2),
++ rgb_bytes_converted_.get(),
++ kWidth,
++ kSourceDx,
++ GetLookupTable(YV12));
++ }
++ }
++ media::EmptyRegisterState();
++ double total_time_seconds = (base::TimeTicks::Now() - start).InSecondsF();
++ perf_test::PrintResult(
++ "yuv_convert_perftest", "", "ScaleYUVToRGB32Row_MMX",
++ kPerfTestIterations / total_time_seconds, "runs/s", true);
++}
++
+ TEST_F(YUVConvertPerfTest, ScaleYUVToRGB32Row_SSE) {
+ ASSERT_TRUE(base::CPU().has_sse());
+
+@@ -188,6 +234,32 @@
+ kPerfTestIterations / total_time_seconds, "runs/s", true);
+ }
+
++TEST_F(YUVConvertPerfTest, LinearScaleYUVToRGB32Row_MMX) {
++ ASSERT_TRUE(base::CPU().has_mmx());
++
++ const int kSourceDx = 80000; // This value means a scale down.
++
++ base::TimeTicks start = base::TimeTicks::Now();
++ for (int i = 0; i < kPerfTestIterations; ++i) {
++ for (int row = 0; row < kSourceHeight; ++row) {
++ int chroma_row = row / 2;
++ LinearScaleYUVToRGB32Row_MMX(
++ yuv_bytes_.get() + row * kSourceWidth,
++ yuv_bytes_.get() + kSourceUOffset + (chroma_row * kSourceWidth / 2),
++ yuv_bytes_.get() + kSourceVOffset + (chroma_row * kSourceWidth / 2),
++ rgb_bytes_converted_.get(),
++ kWidth,
++ kSourceDx,
++ GetLookupTable(YV12));
++ }
++ }
++ media::EmptyRegisterState();
++ double total_time_seconds = (base::TimeTicks::Now() - start).InSecondsF();
++ perf_test::PrintResult(
++ "yuv_convert_perftest", "", "LinearScaleYUVToRGB32Row_MMX",
++ kPerfTestIterations / total_time_seconds, "runs/s", true);
++}
++
+ TEST_F(YUVConvertPerfTest, LinearScaleYUVToRGB32Row_SSE) {
+ ASSERT_TRUE(base::CPU().has_sse());
+
+@@ -213,7 +285,6 @@
+ "yuv_convert_perftest", "", "LinearScaleYUVToRGB32Row_SSE",
+ kPerfTestIterations / total_time_seconds, "runs/s", true);
+ }
+-#endif // defined(OS_WIN) && (ARCH_CPU_X86 || COMPONENT_BUILD)
+
+ #endif // !defined(ARCH_CPU_ARM_FAMILY) && !defined(ARCH_CPU_MIPS_FAMILY)
+
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/yuv_convert_unittest.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/yuv_convert_unittest.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/base/yuv_convert_unittest.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/base/yuv_convert_unittest.cc 2016-07-17 18:06:36.201790710 +0200
+@@ -635,6 +635,37 @@
+ EXPECT_EQ(0, error);
+ }
+
++TEST(YUVConvertTest, ConvertYUVToRGB32Row_MMX) {
++ base::CPU cpu;
++ if (!cpu.has_mmx()) {
++ LOG(WARNING) << "System not supported. Test skipped.";
++ return;
++ }
++
++ scoped_ptr<uint8[]> yuv_bytes(new uint8[kYUV12Size]);
++ scoped_ptr<uint8[]> rgb_bytes_reference(new uint8[kRGBSize]);
++ scoped_ptr<uint8[]> rgb_bytes_converted(new uint8[kRGBSize]);
++ ReadYV12Data(&yuv_bytes);
++
++ const int kWidth = 167;
++ ConvertYUVToRGB32Row_C(yuv_bytes.get(),
++ yuv_bytes.get() + kSourceUOffset,
++ yuv_bytes.get() + kSourceVOffset,
++ rgb_bytes_reference.get(),
++ kWidth,
++ GetLookupTable(YV12));
++ ConvertYUVToRGB32Row_MMX(yuv_bytes.get(),
++ yuv_bytes.get() + kSourceUOffset,
++ yuv_bytes.get() + kSourceVOffset,
++ rgb_bytes_converted.get(),
++ kWidth,
++ GetLookupTable(YV12));
++ media::EmptyRegisterState();
++ EXPECT_EQ(0, memcmp(rgb_bytes_reference.get(),
++ rgb_bytes_converted.get(),
++ kWidth * kBpp));
++}
++
+ TEST(YUVConvertTest, ConvertYUVToRGB32Row_SSE) {
+ base::CPU cpu;
+ if (!cpu.has_sse()) {
+@@ -666,9 +697,40 @@
+ kWidth * kBpp));
+ }
+
+-// 64-bit release + component builds on Windows are too smart and optimizes
+-// away the function being tested.
+-#if defined(OS_WIN) && (defined(ARCH_CPU_X86) || !defined(COMPONENT_BUILD))
++TEST(YUVConvertTest, ScaleYUVToRGB32Row_MMX) {
++ base::CPU cpu;
++ if (!cpu.has_mmx()) {
++ LOG(WARNING) << "System not supported. Test skipped.";
++ return;
++ }
++
++ scoped_ptr<uint8[]> yuv_bytes(new uint8[kYUV12Size]);
++ scoped_ptr<uint8[]> rgb_bytes_reference(new uint8[kRGBSize]);
++ scoped_ptr<uint8[]> rgb_bytes_converted(new uint8[kRGBSize]);
++ ReadYV12Data(&yuv_bytes);
++
++ const int kWidth = 167;
++ const int kSourceDx = 80000; // This value means a scale down.
++ ScaleYUVToRGB32Row_C(yuv_bytes.get(),
++ yuv_bytes.get() + kSourceUOffset,
++ yuv_bytes.get() + kSourceVOffset,
++ rgb_bytes_reference.get(),
++ kWidth,
++ kSourceDx,
++ GetLookupTable(YV12));
++ ScaleYUVToRGB32Row_MMX(yuv_bytes.get(),
++ yuv_bytes.get() + kSourceUOffset,
++ yuv_bytes.get() + kSourceVOffset,
++ rgb_bytes_converted.get(),
++ kWidth,
++ kSourceDx,
++ GetLookupTable(YV12));
++ media::EmptyRegisterState();
++ EXPECT_EQ(0, memcmp(rgb_bytes_reference.get(),
++ rgb_bytes_converted.get(),
++ kWidth * kBpp));
++}
++
+ TEST(YUVConvertTest, ScaleYUVToRGB32Row_SSE) {
+ base::CPU cpu;
+ if (!cpu.has_sse()) {
+@@ -703,6 +765,40 @@
+ kWidth * kBpp));
+ }
+
++TEST(YUVConvertTest, LinearScaleYUVToRGB32Row_MMX) {
++ base::CPU cpu;
++ if (!cpu.has_mmx()) {
++ LOG(WARNING) << "System not supported. Test skipped.";
++ return;
++ }
++
++ scoped_ptr<uint8[]> yuv_bytes(new uint8[kYUV12Size]);
++ scoped_ptr<uint8[]> rgb_bytes_reference(new uint8[kRGBSize]);
++ scoped_ptr<uint8[]> rgb_bytes_converted(new uint8[kRGBSize]);
++ ReadYV12Data(&yuv_bytes);
++
++ const int kWidth = 167;
++ const int kSourceDx = 80000; // This value means a scale down.
++ LinearScaleYUVToRGB32Row_C(yuv_bytes.get(),
++ yuv_bytes.get() + kSourceUOffset,
++ yuv_bytes.get() + kSourceVOffset,
++ rgb_bytes_reference.get(),
++ kWidth,
++ kSourceDx,
++ GetLookupTable(YV12));
++ LinearScaleYUVToRGB32Row_MMX(yuv_bytes.get(),
++ yuv_bytes.get() + kSourceUOffset,
++ yuv_bytes.get() + kSourceVOffset,
++ rgb_bytes_converted.get(),
++ kWidth,
++ kSourceDx,
++ GetLookupTable(YV12));
++ media::EmptyRegisterState();
++ EXPECT_EQ(0, memcmp(rgb_bytes_reference.get(),
++ rgb_bytes_converted.get(),
++ kWidth * kBpp));
++}
++
+ TEST(YUVConvertTest, LinearScaleYUVToRGB32Row_SSE) {
+ base::CPU cpu;
+ if (!cpu.has_sse()) {
+@@ -736,7 +832,6 @@
+ rgb_bytes_converted.get(),
+ kWidth * kBpp));
+ }
+-#endif // defined(OS_WIN) && (ARCH_CPU_X86 || COMPONENT_BUILD)
+
+ TEST(YUVConvertTest, FilterYUVRows_C_OutOfBounds) {
+ scoped_ptr<uint8_t[]> src(new uint8_t[16]);
+@@ -753,6 +848,30 @@
+ }
+ }
+
++#if defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
++TEST(YUVConvertTest, FilterYUVRows_MMX_OutOfBounds) {
++ base::CPU cpu;
++ if (!cpu.has_mmx()) {
++ LOG(WARNING) << "System not supported. Test skipped.";
++ return;
++ }
++
++ scoped_ptr<uint8[]> src(new uint8[16]);
++ scoped_ptr<uint8[]> dst(new uint8[16]);
++
++ memset(src.get(), 0xff, 16);
++ memset(dst.get(), 0, 16);
++
++ media::FilterYUVRows_MMX(dst.get(), src.get(), src.get(), 1, 255);
++ media::EmptyRegisterState();
++
++ EXPECT_EQ(255u, dst[0]);
++ for (int i = 1; i < 16; ++i) {
++ EXPECT_EQ(0u, dst[i]);
++ }
++}
++#endif // defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
++
+ TEST(YUVConvertTest, FilterYUVRows_SSE2_OutOfBounds) {
+ base::CPU cpu;
+ if (!cpu.has_sse2()) {
+@@ -774,6 +893,38 @@
+ }
+ }
+
++#if defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
++TEST(YUVConvertTest, FilterYUVRows_MMX_UnalignedDestination) {
++ base::CPU cpu;
++ if (!cpu.has_mmx()) {
++ LOG(WARNING) << "System not supported. Test skipped.";
++ return;
++ }
++
++ const int kSize = 32;
++ scoped_ptr<uint8[]> src(new uint8[kSize]);
++ scoped_ptr<uint8[]> dst_sample(new uint8[kSize]);
++ scoped_ptr<uint8[]> dst(new uint8[kSize]);
++
++ memset(dst_sample.get(), 0, kSize);
++ memset(dst.get(), 0, kSize);
++ for (int i = 0; i < kSize; ++i)
++ src[i] = 100 + i;
++
++ media::FilterYUVRows_C(dst_sample.get(),
++ src.get(), src.get(), 17, 128);
++
++ // Generate an unaligned output address.
++ uint8* dst_ptr =
++ reinterpret_cast<uint8*>(
++ (reinterpret_cast<uintptr_t>(dst.get() + 8) & ~7) + 1);
++ media::FilterYUVRows_MMX(dst_ptr, src.get(), src.get(), 17, 128);
++ media::EmptyRegisterState();
++
++ EXPECT_EQ(0, memcmp(dst_sample.get(), dst_ptr, 17));
++}
++#endif // defined(MEDIA_MMX_INTRINSICS_AVAILABLE)
++
+ TEST(YUVConvertTest, FilterYUVRows_SSE2_UnalignedDestination) {
+ base::CPU cpu;
+ if (!cpu.has_sse2()) {
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/BUILD.gn qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/BUILD.gn
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/BUILD.gn 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/BUILD.gn 2016-07-17 19:52:10.846175461 +0200
+@@ -907,6 +907,26 @@
+ "//base",
+ "//ui/gfx/geometry",
+ ]
++ if (current_cpu == "x86" || current_cpu == "x64") {
++ deps += [
++ ":shared_memory_support_sse",
++ ]
++ }
++}
++
++if (current_cpu == "x86" || current_cpu == "x64") {
++ source_set("shared_memory_support_sse") {
++ sources = [
++ "base/simd/vector_math_sse.cc",
++ ]
++ configs += [
++ "//media:media_config",
++ "//media:media_implementation",
++ ]
++ if (!is_win) {
++ cflags = [ "-msse" ]
++ }
++ }
+ }
+
+ # TODO(watk): Refactor tests that could be made to run on Android. See
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/media.gyp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/media.gyp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/media.gyp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/media/media.gyp 2016-07-17 18:06:36.231790873 +0200
+@@ -1138,12 +1138,12 @@
+ ['target_arch=="ia32" or target_arch=="x64"', {
+ 'dependencies': [
+ 'media_asm',
++ 'media_mmx',
++ 'media_sse',
++ 'media_sse2',
+ ],
+ 'sources': [
+- 'base/simd/convert_rgb_to_yuv_sse2.cc',
+- 'base/simd/convert_rgb_to_yuv_ssse3.cc',
+ 'base/simd/convert_yuv_to_rgb_x86.cc',
+- 'base/simd/filter_yuv_sse2.cc',
+ ],
+ }],
+ ['OS!="linux" and OS!="win"', {
+@@ -1712,6 +1712,11 @@
+ 'USE_NEON'
+ ],
+ }],
++ ['target_arch=="ia32" or target_arch=="x64"', {
++ 'dependencies': [
++ 'shared_memory_support_sse'
++ ],
++ }],
+ ],
+ },
+ ],
+@@ -1723,6 +1728,7 @@
+ 'type': 'static_library',
+ 'sources': [
+ 'base/simd/convert_rgb_to_yuv_ssse3.asm',
++ 'base/simd/convert_yuv_to_rgb_mmx.asm',
+ 'base/simd/convert_yuv_to_rgb_sse.asm',
+ 'base/simd/convert_yuva_to_argb_mmx.asm',
+ 'base/simd/empty_register_state_mmx.asm',
+@@ -1803,6 +1809,75 @@
+ '../third_party/yasm/yasm_compile.gypi',
+ ],
+ },
++ {
++ # GN version: //media/base:media_mmx
++ 'target_name': 'media_mmx',
++ 'type': 'static_library',
++ 'cflags': [
++ '-mmmx',
++ ],
++ 'defines': [
++ 'MEDIA_IMPLEMENTATION',
++ ],
++ 'include_dirs': [
++ '..',
++ ],
++ 'sources': [
++ 'base/simd/filter_yuv_mmx.cc',
++ ],
++ },
++ {
++ # GN version: //media/base:media_sse
++ 'target_name': 'media_sse',
++ 'type': 'static_library',
++ 'cflags': [
++ '-msse',
++ ],
++ 'defines': [
++ 'MEDIA_IMPLEMENTATION',
++ ],
++ 'include_dirs': [
++ '..',
++ ],
++ 'sources': [
++ 'base/simd/sinc_resampler_sse.cc',
++ ],
++ },
++ {
++ # GN version: //media/base:media_sse2
++ 'target_name': 'media_sse2',
++ 'type': 'static_library',
++ 'cflags': [
++ '-msse2',
++ ],
++ 'defines': [
++ 'MEDIA_IMPLEMENTATION',
++ ],
++ 'include_dirs': [
++ '..',
++ ],
++ 'sources': [
++ 'base/simd/convert_rgb_to_yuv_sse2.cc',
++ 'base/simd/convert_rgb_to_yuv_ssse3.cc',
++ 'base/simd/filter_yuv_sse2.cc',
++ ],
++ },
++ {
++ 'target_name': 'shared_memory_support_sse',
++ 'type': 'static_library',
++ 'cflags': [
++ '-msse',
++ ],
++ 'defines': [
++ 'MEDIA_IMPLEMENTATION',
++ ],
++ 'include_dirs': [
++ '..',
++ ],
++ 'sources': [
++ 'base/simd/vector_math_sse.cc',
++ ],
++ },
+ ], # targets
+ }],
+ ['OS=="android"', {
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/BUILD.gn qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/BUILD.gn
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/BUILD.gn 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/BUILD.gn 2016-07-17 19:56:57.665743057 +0200
+@@ -307,11 +307,6 @@
+ if (!is_ios) {
+ sources += [ "ext/platform_canvas.cc" ]
+ }
+- if (!is_ios && (current_cpu == "x86" || current_cpu == "x64")) {
+- sources += [ "ext/convolver_SSE2.cc" ]
+- } else if (current_cpu == "mipsel" && mips_dsp_rev >= 2) {
+- sources += [ "ext/convolver_mips_dspr2.cc" ]
+- }
+
+ # The skia gypi values are relative to the skia_dir, so we need to rebase.
+ sources += gypi_skia_core.sources
+@@ -597,7 +592,15 @@
+ ]
+
+ if (current_cpu == "x86" || current_cpu == "x64") {
+- sources = gypi_skia_opts.sse2_sources
++ sources = gypi_skia_opts.sse2_sources +
++ [
++ # Chrome-specific.
++ "ext/convolver_SSE2.cc",
++ "ext/convolver_SSE2.h",
++ ]
++ if (!is_win || is_clang) {
++ cflags += [ "-msse2" ]
++ }
+ deps += [
+ ":skia_opts_avx",
+ ":skia_opts_avx2",
+@@ -632,6 +635,13 @@
+
+ if (mips_dsp_rev >= 1) {
+ sources = gypi_skia_opts.mips_dsp_sources
++ if (mips_dsp_rev >= 2) {
++ sources += [
++ # Chrome-specific.
++ "ext/convolver_mips_dspr2.cc",
++ "ext/convolver_mips_dspr2.h",
++ ]
++ }
+ } else {
+ sources = gypi_skia_opts.none_sources
+ }
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/ext/convolver.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/ext/convolver.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/ext/convolver.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/ext/convolver.cc 2016-07-17 18:06:40.213812591 +0200
+@@ -362,10 +362,13 @@
+
+ void SetupSIMD(ConvolveProcs *procs) {
+ #ifdef SIMD_SSE2
+- procs->extra_horizontal_reads = 3;
+- procs->convolve_vertically = &ConvolveVertically_SSE2;
+- procs->convolve_4rows_horizontally = &Convolve4RowsHorizontally_SSE2;
+- procs->convolve_horizontally = &ConvolveHorizontally_SSE2;
++ base::CPU cpu;
++ if (cpu.has_sse2()) {
++ procs->extra_horizontal_reads = 3;
++ procs->convolve_vertically = &ConvolveVertically_SSE2;
++ procs->convolve_4rows_horizontally = &Convolve4RowsHorizontally_SSE2;
++ procs->convolve_horizontally = &ConvolveHorizontally_SSE2;
++ }
+ #elif defined SIMD_MIPS_DSPR2
+ procs->extra_horizontal_reads = 3;
+ procs->convolve_vertically = &ConvolveVertically_mips_dspr2;
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/ext/convolver.h qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/ext/convolver.h
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/ext/convolver.h 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/ext/convolver.h 2016-07-17 20:01:19.498174087 +0200
+@@ -11,6 +11,7 @@
+ #include <vector>
+
+ #include "build/build_config.h"
++#include "base/cpu.h"
+ #include "third_party/skia/include/core/SkSize.h"
+ #include "third_party/skia/include/core/SkTypes.h"
+
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/skia_chrome.gypi qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/skia_chrome.gypi
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/skia_chrome.gypi 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/skia_chrome.gypi 2016-07-17 18:06:40.215812602 +0200
+@@ -9,6 +9,7 @@
+ {
+ 'dependencies': [
+ 'skia_library',
++ 'skia_chrome_opts',
+ '../base/base.gyp:base',
+ '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
+ ],
+@@ -66,22 +67,16 @@
+ 'ext/skia_utils_base.cc',
+ ],
+ }],
++ ['OS == "ios"', {
++ 'dependencies!': [
++ 'skia_chrome_opts',
++ ],
++ }],
+ [ 'OS != "android" and (OS != "linux" or use_cairo==1)', {
+ 'sources!': [
+ 'ext/bitmap_platform_device_skia.cc',
+ ],
+ }],
+- [ 'OS != "ios" and target_arch != "arm" and target_arch != "mipsel" and \
+- target_arch != "arm64" and target_arch != "mips64el"', {
+- 'sources': [
+- 'ext/convolver_SSE2.cc',
+- ],
+- }],
+- [ 'target_arch == "mipsel" and mips_dsp_rev >= 2',{
+- 'sources': [
+- 'ext/convolver_mips_dspr2.cc',
+- ],
+- }],
+ ],
+
+ 'target_conditions': [
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/skia.gyp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/skia.gyp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/skia.gyp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/skia.gyp 2016-07-17 18:06:40.215812602 +0200
+@@ -128,6 +128,37 @@
+ # targets that are not dependent upon the component type
+ 'targets': [
+ {
++ 'target_name': 'skia_chrome_opts',
++ 'type': 'static_library',
++ 'include_dirs': [
++ '..',
++ 'config',
++ '../third_party/skia/include/core',
++ ],
++ 'conditions': [
++ [ 'os_posix == 1 and OS != "mac" and OS != "android" and \
++ target_arch != "arm" and target_arch != "mipsel" and \
++ target_arch != "arm64" and target_arch != "mips64el"', {
++ 'cflags': [
++ '-msse2',
++ ],
++ }],
++ [ 'target_arch != "arm" and target_arch != "mipsel" and \
++ target_arch != "arm64" and target_arch != "mips64el"', {
++ 'sources': [
++ 'ext/convolver_SSE2.cc',
++ 'ext/convolver_SSE2.h',
++ ],
++ }],
++ [ 'target_arch == "mipsel" and mips_dsp_rev >= 2',{
++ 'sources': [
++ 'ext/convolver_mips_dspr2.cc',
++ 'ext/convolver_mips_dspr2.h',
++ ],
++ }],
++ ],
++ },
++ {
+ 'target_name': 'image_operations_bench',
+ # The optimize: 'max' scattered throughout are particularly
+ # important when compiled by MSVC 2013, which seems
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/skia_library_opts.gyp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/skia_library_opts.gyp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/skia/skia_library_opts.gyp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/skia/skia_library_opts.gyp 2016-07-17 18:06:40.216812607 +0200
+@@ -19,10 +19,22 @@
+ },
+
+ 'targets': [
+- # SSE files have to be built in a separate target, because gcc needs
+- # different -msse flags for different SSE levels which enable use of SSE
+- # intrinsics but also allow emission of SSE2 instructions for scalar code.
+- # gyp does not allow per-file compiler flags.
++ # Due to an unfortunate intersection of lameness between gcc and gyp,
++ # we have to build the *_SSE2.cpp files in a separate target. The
++ # gcc lameness is that, in order to compile SSE2 intrinsics code, it
++ # must be passed the -msse2 flag. However, with this flag, it may
++ # emit SSE2 instructions even for scalar code, such as the CPUID
++ # test used to test for the presence of SSE2. So that, and all other
++ # code must be compiled *without* -msse2. The gyp lameness is that it
++ # does not allow file-specific CFLAGS, so we must create this extra
++ # target for those files to be compiled with -msse2.
++ #
++ # This is actually only a problem on 32-bit Linux (all Intel Macs have
++ # SSE2, Linux x86_64 has SSE2 by definition, and MSC will happily emit
++ # SSE2 from instrinsics, which generating plain ol' 386 for everything
++ # else). However, to keep the .gyp file simple and avoid platform-specific
++ # build breakage, we do this on all platforms.
++
+ # For about the same reason, we need to compile the ARM opts files
+ # separately as well.
+ {
+@@ -45,12 +57,13 @@
+ ],
+ 'include_dirs': [ '<@(include_dirs)' ],
+ 'conditions': [
++ [ 'os_posix == 1 and OS != "mac" and OS != "android" and \
++ target_arch != "arm" and target_arch != "arm64" and \
++ target_arch != "mipsel" and target_arch != "mips64el"', {
++ 'cflags': [ '-msse2' ],
++ }],
+ [ 'target_arch != "arm" and target_arch != "mipsel" and \
+ target_arch != "arm64" and target_arch != "mips64el"', {
+- # Chrome builds with -msse2 locally, so sse2_sources could in theory
+- # be in the regular skia target. But we need skia_opts for arm
+- # anyway, so putting sse2_sources here is simpler than making this
+- # conditionally a type none target on x86.
+ 'sources': [ '<@(sse2_sources)' ],
+ 'dependencies': [
+ 'skia_opts_ssse3',
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/qcms/BUILD.gn qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/qcms/BUILD.gn
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/qcms/BUILD.gn 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/qcms/BUILD.gn 2016-07-17 20:06:47.037962770 +0200
+@@ -27,8 +27,8 @@
+ ]
+
+ if (current_cpu == "x86" || current_cpu == "x64") {
+- defines = [ "SSE2_ENABLE" ]
+- sources += [ "src/transform-sse2.c" ]
++ defines = [ "SSE2_ENABLE" ] # runtime detection
++ deps = [ "qcms_sse2" ]
+ }
+ }
+
+@@ -64,3 +64,15 @@
+ public_configs = [ ":qcms_config" ]
+ }
+ }
++
++source_set("qcms_sse2") {
++ configs -= [ "//build/config/compiler:chromium_code" ]
++ configs += [ "//build/config/compiler:no_chromium_code" ]
++ public_configs = [ ":qcms_config" ]
++
++ if (current_cpu == "x86" || current_cpu == "x64") {
++ defines = [ "SSE2_ENABLE" ]
++ sources = [ "src/transform-sse2.c" ]
++ cflags = [ "-msse2" ]
++ }
++}
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/qcms/qcms.gyp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/qcms/qcms.gyp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/qcms/qcms.gyp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/qcms/qcms.gyp 2016-07-17 20:08:22.446483691 +0200
+@@ -42,10 +42,10 @@
+ 'conditions': [
+ ['target_arch=="ia32" or target_arch=="x64"', {
+ 'defines': [
+- 'SSE2_ENABLE',
++ 'SSE2_ENABLE', # runtime detection
+ ],
+- 'sources': [
+- 'src/transform-sse2.c',
++ 'dependencies': [
++ 'qcms_sse2',
+ ],
+ }],
+ ],
+@@ -85,6 +85,29 @@
+ }],
+ ],
+ },
++ {
++ 'target_name': 'qcms_sse2',
++ 'type': 'static_library',
++ 'conditions': [
++ ['target_arch == "ia32" or target_arch == "x64"', {
++ 'defines': [
++ 'SSE2_ENABLE',
++ ],
++ 'sources': [
++ # Conditional compilation for SSE2 code on x86 and x64 machines
++ 'src/transform-sse2.c',
++ ],
++ 'cflags': [
++ '-msse2',
++ ],
++ }],
++ ],
++ 'direct_dependent_settings': {
++ 'include_dirs': [
++ './src',
++ ],
++ },
++ },
+ ],
+ }
+
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/modules/webaudio/AudioParamTimeline.cpp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/modules/webaudio/AudioParamTimeline.cpp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/modules/webaudio/AudioParamTimeline.cpp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/modules/webaudio/AudioParamTimeline.cpp 2016-07-19 00:52:57.847430161 +0200
+@@ -32,7 +32,7 @@
+ #include "wtf/MathExtras.h"
+ #include <algorithm>
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ #include <emmintrin.h>
+ #endif
+
+@@ -438,7 +438,7 @@
+ // First handle linear and exponential ramps which require looking ahead to the next event.
+ if (nextEventType == ParamEvent::LinearRampToValue) {
+ const float valueDelta = value2 - value1;
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ // Minimize in-loop operations. Calculate starting value and increment. Next step: value += inc.
+ // value = value1 + (currentFrame/sampleRate - time1) * k * (value2 - value1);
+ // inc = 4 / sampleRate * k * (value2 - value1);
+@@ -581,7 +581,7 @@
+ for (; writeIndex < fillToFrame; ++writeIndex)
+ values[writeIndex] = target;
+ } else {
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ // Resolve recursion by expanding constants to achieve a 4-step loop unrolling.
+ // v1 = v0 + (t - v0) * c
+ // v2 = v1 + (t - v1) * c
+@@ -674,7 +674,7 @@
+ // Render the stretched curve data using linear interpolation. Oversampled
+ // curve data can be provided if sharp discontinuities are desired.
+ unsigned k = 0;
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ const __m128 vCurveVirtualIndex = _mm_set_ps1(curveVirtualIndex);
+ const __m128 vCurvePointsPerFrame = _mm_set_ps1(curvePointsPerFrame);
+ const __m128 vNumberOfCurvePointsM1 = _mm_set_ps1(numberOfCurvePoints - 1);
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.cpp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.cpp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.cpp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.cpp 2016-07-17 18:06:40.274812924 +0200
+@@ -26,6 +26,9 @@
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
++// include this first to get it before the CPU() function-like macro
++#include "base/cpu.h"
++
+ #include "platform/audio/DirectConvolver.h"
+
+ #if OS(MACOSX)
+@@ -35,14 +38,20 @@
+ #include "platform/audio/VectorMath.h"
+ #include "wtf/CPU.h"
+
+-#if (CPU(X86) || CPU(X86_64)) && !(OS(MACOSX) || USE(WEBAUDIO_IPP))
++#if ((CPU(X86) && defined(__SSE2__)) || CPU(X86_64)) && !(OS(MACOSX) || USE(WEBAUDIO_IPP))
+ #include <emmintrin.h>
+ #endif
+
++#if defined(BUILD_ONLY_THE_SSE2_PARTS) && !defined(__SSE2__)
++#error SSE2 parts must be built with -msse2
++#endif
++
+ namespace blink {
+
+ using namespace VectorMath;
+
++#ifndef BUILD_ONLY_THE_SSE2_PARTS
++
+ DirectConvolver::DirectConvolver(size_t inputBlockSize)
+ : m_inputBlockSize(inputBlockSize)
+ #if USE(WEBAUDIO_IPP)
+@@ -50,10 +59,26 @@
+ #endif // USE(WEBAUDIO_IPP)
+ , m_buffer(inputBlockSize * 2)
+ {
++#if CPU(X86)
++ base::CPU cpu;
++ m_haveSSE2 = cpu.has_sse2();
++#endif
+ }
+
++#endif
++
++#ifdef BUILD_ONLY_THE_SSE2_PARTS
++void DirectConvolver::m_processSSE2(AudioFloatArray* convolutionKernel, const float* sourceP, float* destP, size_t framesToProcess)
++#else
+ void DirectConvolver::process(AudioFloatArray* convolutionKernel, const float* sourceP, float* destP, size_t framesToProcess)
++#endif
+ {
++#if CPU(X86) && !defined(__SSE2__)
++ if (m_haveSSE2) {
++ m_processSSE2(convolutionKernel, sourceP, destP, framesToProcess);
++ return;
++ }
++#endif
+ ASSERT(framesToProcess == m_inputBlockSize);
+ if (framesToProcess != m_inputBlockSize)
+ return;
+@@ -98,7 +123,7 @@
+ #endif // CPU(X86)
+ #else
+ size_t i = 0;
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ // Convolution using SSE2. Currently only do this if both |kernelSize| and |framesToProcess|
+ // are multiples of 4. If not, use the straightforward loop below.
+
+@@ -408,7 +433,7 @@
+ }
+ destP[i++] = sum;
+ }
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ }
+ #endif
+ #endif // OS(MACOSX)
+@@ -418,6 +443,8 @@
+ #endif
+ }
+
++#ifndef BUILD_ONLY_THE_SSE2_PARTS
++
+ void DirectConvolver::reset()
+ {
+ m_buffer.zero();
+@@ -426,5 +453,7 @@
+ #endif // USE(WEBAUDIO_IPP)
+ }
+
++#endif
++
+ } // namespace blink
+
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.h qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.h
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.h 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolver.h 2016-07-17 20:16:19.967090904 +0200
+@@ -32,6 +32,7 @@
+ #include "platform/PlatformExport.h"
+ #include "platform/audio/AudioArray.h"
+ #include "wtf/Allocator.h"
++#include "wtf/CPU.h"
+ #include "wtf/Noncopyable.h"
+
+ #if USE(WEBAUDIO_IPP)
+@@ -57,6 +58,11 @@
+ AudioFloatArray m_overlayBuffer;
+ #endif // USE(WEBAUDIO_IPP)
+ AudioFloatArray m_buffer;
++
++#if CPU(X86)
++ bool m_haveSSE2;
++ void m_processSSE2(AudioFloatArray* convolutionKernel, const float* sourceP, float* destP, size_t framesToProcess);
++#endif
+ };
+
+ } // namespace blink
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolverSSE2.cpp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolverSSE2.cpp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolverSSE2.cpp 1970-01-01 01:00:00.000000000 +0100
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/DirectConvolverSSE2.cpp 2016-07-17 18:06:40.274812924 +0200
+@@ -0,0 +1,2 @@
++#define BUILD_ONLY_THE_SSE2_PARTS
++#include "DirectConvolver.cpp"
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.cpp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.cpp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.cpp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.cpp 2016-07-17 20:18:38.755848676 +0200
+@@ -26,15 +26,22 @@
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
++// include this first to get it before the CPU() function-like macro
++#include "base/cpu.h"
++
+ #include "platform/audio/SincResampler.h"
+ #include "platform/audio/AudioBus.h"
+ #include "wtf/CPU.h"
+ #include "wtf/MathExtras.h"
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ #include <emmintrin.h>
+ #endif
+
++#if defined(BUILD_ONLY_THE_SSE2_PARTS) && !defined(__SSE2__)
++#error SSE2 parts must be built with -msse2
++#endif
++
+ // Input buffer layout, dividing the total buffer into regions (r0 - r5):
+ //
+ // |----------------|----------------------------------------------------------------|----------------|
+@@ -64,6 +71,8 @@
+
+ namespace blink {
+
++#ifndef BUILD_ONLY_THE_SSE2_PARTS
++
+ SincResampler::SincResampler(double scaleFactor, unsigned kernelSize, unsigned numberOfKernelOffsets)
+ : m_scaleFactor(scaleFactor)
+ , m_kernelSize(kernelSize)
+@@ -77,6 +86,10 @@
+ , m_sourceProvider(nullptr)
+ , m_isBufferPrimed(false)
+ {
++#if CPU(X86)
++ base::CPU cpu;
++ m_haveSSE2 = cpu.has_sse2();
++#endif
+ initializeKernel();
+ }
+
+@@ -193,8 +206,20 @@
+ }
+ }
+
++#endif
++
++#ifdef BUILD_ONLY_THE_SSE2_PARTS
++void SincResampler::m_processSSE2(AudioSourceProvider* sourceProvider, float* destination, size_t framesToProcess)
++#else
+ void SincResampler::process(AudioSourceProvider* sourceProvider, float* destination, size_t framesToProcess)
++#endif
+ {
++#if CPU(X86) && !defined(__SSE2__)
++ if (m_haveSSE2) {
++ m_processSSE2(sourceProvider, destination, framesToProcess);
++ return;
++ }
++#endif
+ bool isGood = sourceProvider && m_blockSize > m_kernelSize && m_inputBuffer.size() >= m_blockSize + m_kernelSize && !(m_kernelSize % 2);
+ ASSERT(isGood);
+ if (!isGood)
+@@ -256,7 +281,7 @@
+ {
+ float input;
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ // If the sourceP address is not 16-byte aligned, the first several frames (at most three) should be processed seperately.
+ while ((reinterpret_cast<uintptr_t>(inputP) & 0x0F) && n) {
+ CONVOLVE_ONE_SAMPLE
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.h qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.h
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.h 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResampler.h 2016-07-17 20:19:17.818061951 +0200
+@@ -33,6 +33,7 @@
+ #include "platform/audio/AudioArray.h"
+ #include "platform/audio/AudioSourceProvider.h"
+ #include "wtf/Allocator.h"
++#include "wtf/CPU.h"
+ #include "wtf/Noncopyable.h"
+
+ namespace blink {
+@@ -84,6 +85,11 @@
+
+ // The buffer is primed once at the very beginning of processing.
+ bool m_isBufferPrimed;
++
++#if CPU(X86)
++ bool m_haveSSE2;
++ void m_processSSE2(AudioSourceProvider*, float* destination, size_t framesToProcess);
++#endif
+ };
+
+ } // namespace blink
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResamplerSSE2.cpp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResamplerSSE2.cpp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResamplerSSE2.cpp 1970-01-01 01:00:00.000000000 +0100
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/SincResamplerSSE2.cpp 2016-07-17 18:06:40.282812967 +0200
+@@ -0,0 +1,2 @@
++#define BUILD_ONLY_THE_SSE2_PARTS
++#include "SincResampler.cpp"
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.cpp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.cpp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.cpp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.cpp 2016-07-17 18:06:40.282812967 +0200
+@@ -22,6 +22,9 @@
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
++// include this first to get it before the CPU() function-like macro
++#include "base/cpu.h"
++
+ #include "platform/audio/VectorMath.h"
+ #include "wtf/Assertions.h"
+ #include "wtf/CPU.h"
+@@ -32,10 +35,14 @@
+ #include <Accelerate/Accelerate.h>
+ #endif
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ #include <emmintrin.h>
+ #endif
+
++#if defined(BUILD_ONLY_THE_SSE2_PARTS) && !defined(__SSE2__)
++#error SSE2 parts must be built with -msse2
++#endif
++
+ #if HAVE(ARM_NEON_INTRINSICS)
+ #include <arm_neon.h>
+ #endif
+@@ -118,11 +125,25 @@
+ }
+ #else
+
++#ifdef BUILD_ONLY_THE_SSE2_PARTS
++namespace SSE2 {
++#endif
++
++#if CPU(X86) && !defined(__SSE2__)
++static base::CPU cpu;
++#endif
++
+ void vsma(const float* sourceP, int sourceStride, const float* scale, float* destP, int destStride, size_t framesToProcess)
+ {
++#if CPU(X86) && !defined(__SSE2__)
++ if (cpu.has_sse2()) {
++ blink::VectorMath::SSE2::vsma(sourceP, sourceStride, scale, destP, destStride, framesToProcess);
++ return;
++ }
++#endif
+ int n = framesToProcess;
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ if ((sourceStride == 1) && (destStride == 1)) {
+ float k = *scale;
+
+@@ -193,9 +214,15 @@
+
+ void vsmul(const float* sourceP, int sourceStride, const float* scale, float* destP, int destStride, size_t framesToProcess)
+ {
++#if CPU(X86) && !defined(__SSE2__)
++ if (cpu.has_sse2()) {
++ blink::VectorMath::SSE2::vsmul(sourceP, sourceStride, scale, destP, destStride, framesToProcess);
++ return;
++ }
++#endif
+ int n = framesToProcess;
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ if ((sourceStride == 1) && (destStride == 1)) {
+ float k = *scale;
+
+@@ -266,16 +293,22 @@
+ sourceP += sourceStride;
+ destP += destStride;
+ }
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ }
+ #endif
+ }
+
+ void vadd(const float* source1P, int sourceStride1, const float* source2P, int sourceStride2, float* destP, int destStride, size_t framesToProcess)
+ {
++#if CPU(X86) && !defined(__SSE2__)
++ if (cpu.has_sse2()) {
++ blink::VectorMath::SSE2::vadd(source1P, sourceStride1, source2P, sourceStride2, destP, destStride, framesToProcess);
++ return;
++ }
++#endif
+ int n = framesToProcess;
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ if ((sourceStride1 ==1) && (sourceStride2 == 1) && (destStride == 1)) {
+ // If the sourceP address is not 16-byte aligned, the first several frames (at most three) should be processed separately.
+ while ((reinterpret_cast<size_t>(source1P) & 0x0F) && n) {
+@@ -378,17 +411,23 @@
+ source2P += sourceStride2;
+ destP += destStride;
+ }
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ }
+ #endif
+ }
+
+ void vmul(const float* source1P, int sourceStride1, const float* source2P, int sourceStride2, float* destP, int destStride, size_t framesToProcess)
+ {
++#if CPU(X86) && !defined(__SSE2__)
++ if (cpu.has_sse2()) {
++ blink::VectorMath::SSE2::vmul(source1P, sourceStride1, source2P, sourceStride2, destP, destStride, framesToProcess);
++ return;
++ }
++#endif
+
+ int n = framesToProcess;
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ if ((sourceStride1 == 1) && (sourceStride2 == 1) && (destStride == 1)) {
+ // If the source1P address is not 16-byte aligned, the first several frames (at most three) should be processed separately.
+ while ((reinterpret_cast<uintptr_t>(source1P) & 0x0F) && n) {
+@@ -460,8 +499,14 @@
+
+ void zvmul(const float* real1P, const float* imag1P, const float* real2P, const float* imag2P, float* realDestP, float* imagDestP, size_t framesToProcess)
+ {
++#if CPU(X86) && !defined(__SSE2__)
++ if (cpu.has_sse2()) {
++ blink::VectorMath::SSE2::zvmul(real1P, imag1P, real2P, imag2P, realDestP, imagDestP, framesToProcess);
++ return;
++ }
++#endif
+ unsigned i = 0;
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ // Only use the SSE optimization in the very common case that all addresses are 16-byte aligned.
+ // Otherwise, fall through to the scalar code below.
+ if (!(reinterpret_cast<uintptr_t>(real1P) & 0x0F)
+@@ -516,10 +561,16 @@
+
+ void vsvesq(const float* sourceP, int sourceStride, float* sumP, size_t framesToProcess)
+ {
++#if CPU(X86) && !defined(__SSE2__)
++ if (cpu.has_sse2()) {
++ blink::VectorMath::SSE2::vsvesq(sourceP, sourceStride, sumP, framesToProcess);
++ return;
++ }
++#endif
+ int n = framesToProcess;
+ float sum = 0;
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ if (sourceStride == 1) {
+ // If the sourceP address is not 16-byte aligned, the first several frames (at most three) should be processed separately.
+ while ((reinterpret_cast<uintptr_t>(sourceP) & 0x0F) && n) {
+@@ -581,10 +632,16 @@
+
+ void vmaxmgv(const float* sourceP, int sourceStride, float* maxP, size_t framesToProcess)
+ {
++#if CPU(X86) && !defined(__SSE2__)
++ if (cpu.has_sse2()) {
++ blink::VectorMath::SSE2::vmaxmgv(sourceP, sourceStride, maxP, framesToProcess);
++ return;
++ }
++#endif
+ int n = framesToProcess;
+ float max = 0;
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ if (sourceStride == 1) {
+ // If the sourceP address is not 16-byte aligned, the first several frames (at most three) should be processed separately.
+ while ((reinterpret_cast<uintptr_t>(sourceP) & 0x0F) && n) {
+@@ -648,6 +705,8 @@
+ *maxP = max;
+ }
+
++#ifndef BUILD_ONLY_THE_SSE2_PARTS
++
+ void vclip(const float* sourceP, int sourceStride, const float* lowThresholdP, const float* highThresholdP, float* destP, int destStride, size_t framesToProcess)
+ {
+ int n = framesToProcess;
+@@ -678,6 +737,12 @@
+ }
+ }
+
++#endif
++
++#ifdef BUILD_ONLY_THE_SSE2_PARTS
++} // namespace SSE2
++#endif
++
+ #endif // OS(MACOSX)
+
+ } // namespace VectorMath
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.h qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.h
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.h 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMath.h 2016-07-17 20:23:13.405325950 +0200
+@@ -26,6 +26,7 @@
+ #define VectorMath_h
+
+ #include "platform/PlatformExport.h"
++#include "wtf/CPU.h"
+ #include "wtf/build_config.h"
+ #include <cstddef>
+
+@@ -55,6 +56,28 @@
+ // Copies elements while clipping values to the threshold inputs.
+ PLATFORM_EXPORT void vclip(const float* sourceP, int sourceStride, const float* lowThresholdP, const float* highThresholdP, float* destP, int destStride, size_t framesToProcess);
+
++#if CPU(X86)
++namespace SSE2 {
++// Vector scalar multiply and then add.
++PLATFORM_EXPORT void vsma(const float* sourceP, int sourceStride, const float* scale, float* destP, int destStride, size_t framesToProcess);
++
++PLATFORM_EXPORT void vsmul(const float* sourceP, int sourceStride, const float* scale, float* destP, int destStride, size_t framesToProcess);
++PLATFORM_EXPORT void vadd(const float* source1P, int sourceStride1, const float* source2P, int sourceStride2, float* destP, int destStride, size_t framesToProcess);
++
++// Finds the maximum magnitude of a float vector.
++PLATFORM_EXPORT void vmaxmgv(const float* sourceP, int sourceStride, float* maxP, size_t framesToProcess);
++
++// Sums the squares of a float vector's elements.
++PLATFORM_EXPORT void vsvesq(const float* sourceP, int sourceStride, float* sumP, size_t framesToProcess);
++
++// For an element-by-element multiply of two float vectors.
++PLATFORM_EXPORT void vmul(const float* source1P, int sourceStride1, const float* source2P, int sourceStride2, float* destP, int destStride, size_t framesToProcess);
++
++// Multiplies two complex vectors.
++PLATFORM_EXPORT void zvmul(const float* real1P, const float* imag1P, const float* real2P, const float* imag2P, float* realDestP, float* imagDestP, size_t framesToProcess);
++}
++#endif
++
+ } // namespace VectorMath
+ } // namespace blink
+
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMathSSE2.cpp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMathSSE2.cpp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMathSSE2.cpp 1970-01-01 01:00:00.000000000 +0100
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/audio/VectorMathSSE2.cpp 2016-07-17 18:06:40.283812973 +0200
+@@ -0,0 +1,2 @@
++#define BUILD_ONLY_THE_SSE2_PARTS
++#include "VectorMath.cpp"
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/blink_platform.gyp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/blink_platform.gyp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/blink_platform.gyp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/blink_platform.gyp 2016-07-17 23:45:35.669652872 +0200
+@@ -379,6 +379,11 @@
+ '<(DEPTH)/third_party/openmax_dl/dl/dl.gyp:openmax_dl',
+ ],
+ }],
++ ['target_arch == "ia32"', {
++ 'dependencies': [
++ 'blink_sse2',
++ ],
++ }],
+ ['target_arch=="arm"', {
+ 'dependencies': [
+ 'blink_arm_neon',
+@@ -394,6 +399,36 @@
+ }],
+ ],
+ },
++ {
++ 'target_name': 'blink_sse2',
++ 'conditions': [
++ ['target_arch=="ia32"', {
++ 'type': 'static_library',
++ 'dependencies': [
++ '<(DEPTH)/third_party/khronos/khronos.gyp:khronos_headers',
++ '../config.gyp:config',
++ '../wtf/wtf.gyp:wtf',
++ 'blink_common',
++ 'blink_heap_asm_stubs',
++ ],
++ 'defines': [
++ 'BLINK_PLATFORM_IMPLEMENTATION=1',
++ 'INSIDE_BLINK',
++ ],
++ 'sources': [
++ 'audio/DirectConvolverSSE2.cpp',
++ 'audio/SincResamplerSSE2.cpp',
++ 'audio/VectorMathSSE2.cpp',
++ ],
++ 'cflags': [
++ '-msse2',
++ '-mfpmath=sse',
++ ],
++ },{ # target_arch != "ia32"
++ 'type': 'none',
++ }],
++ ],
++ },
+ # The *NEON.cpp files fail to compile when -mthumb is passed. Force
+ # them to build in ARM mode.
+ # See https://bugs.webkit.org/show_bug.cgi?id=62916.
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/cpu/x86/WebGLImageConversionSSE.h qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/cpu/x86/WebGLImageConversionSSE.h
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/cpu/x86/WebGLImageConversionSSE.h 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/cpu/x86/WebGLImageConversionSSE.h 2016-07-17 18:06:40.284812978 +0200
+@@ -5,7 +5,7 @@
+ #ifndef WebGLImageConversionSSE_h
+ #define WebGLImageConversionSSE_h
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+
+ #include <emmintrin.h>
+
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/gpu/WebGLImageConversion.cpp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/gpu/WebGLImageConversion.cpp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/gpu/WebGLImageConversion.cpp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/WebKit/Source/platform/graphics/gpu/WebGLImageConversion.cpp 2016-07-18 22:28:24.771187623 +0200
+@@ -422,7 +422,7 @@
+ const uint32_t* source32 = reinterpret_cast_ptr<const uint32_t*>(source);
+ uint32_t* destination32 = reinterpret_cast_ptr<uint32_t*>(destination);
+
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ SIMD::unpackOneRowOfBGRA8LittleToRGBA8(source32, destination32, pixelsPerRow);
+ #endif
+ for (unsigned i = 0; i < pixelsPerRow; ++i) {
+@@ -441,7 +441,7 @@
+
+ template<> void unpack<WebGLImageConversion::DataFormatRGBA5551, uint16_t, uint8_t>(const uint16_t* source, uint8_t* destination, unsigned pixelsPerRow)
+ {
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ SIMD::unpackOneRowOfRGBA5551LittleToRGBA8(source, destination, pixelsPerRow);
+ #endif
+ #if HAVE(ARM_NEON_INTRINSICS)
+@@ -463,7 +463,7 @@
+
+ template<> void unpack<WebGLImageConversion::DataFormatRGBA4444, uint16_t, uint8_t>(const uint16_t* source, uint8_t* destination, unsigned pixelsPerRow)
+ {
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ SIMD::unpackOneRowOfRGBA4444LittleToRGBA8(source, destination, pixelsPerRow);
+ #endif
+ #if HAVE(ARM_NEON_INTRINSICS)
+@@ -629,7 +629,7 @@
+ // FIXME: this routine is lossy and must be removed.
+ template<> void pack<WebGLImageConversion::DataFormatR8, WebGLImageConversion::AlphaDoUnmultiply, uint8_t, uint8_t>(const uint8_t* source, uint8_t* destination, unsigned pixelsPerRow)
+ {
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ SIMD::packOneRowOfRGBA8LittleToR8(source, destination, pixelsPerRow);
+ #endif
+ for (unsigned i = 0; i < pixelsPerRow; ++i) {
+@@ -666,7 +666,7 @@
+ // FIXME: this routine is lossy and must be removed.
+ template<> void pack<WebGLImageConversion::DataFormatRA8, WebGLImageConversion::AlphaDoUnmultiply, uint8_t, uint8_t>(const uint8_t* source, uint8_t* destination, unsigned pixelsPerRow)
+ {
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ SIMD::packOneRowOfRGBA8LittleToRA8(source, destination, pixelsPerRow);
+ #endif
+ for (unsigned i = 0; i < pixelsPerRow; ++i) {
+@@ -740,7 +740,7 @@
+ // FIXME: this routine is lossy and must be removed.
+ template<> void pack<WebGLImageConversion::DataFormatRGBA8, WebGLImageConversion::AlphaDoUnmultiply, uint8_t, uint8_t>(const uint8_t* source, uint8_t* destination, unsigned pixelsPerRow)
+ {
+-#if CPU(X86) || CPU(X86_64)
++#if (CPU(X86) && defined(__SSE2__)) || CPU(X86_64)
+ SIMD::packOneRowOfRGBA8LittleToRGBA8(source, destination, pixelsPerRow);
+ #else
+ for (unsigned i = 0; i < pixelsPerRow; ++i) {
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/webrtc/common_audio/real_fourier.cc qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/webrtc/common_audio/real_fourier.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/webrtc/common_audio/real_fourier.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/third_party/webrtc/common_audio/real_fourier.cc 2016-07-18 19:27:29.285890664 +0200
+@@ -14,6 +14,7 @@
+ #include "webrtc/common_audio/real_fourier_ooura.h"
+ #include "webrtc/common_audio/real_fourier_openmax.h"
+ #include "webrtc/common_audio/signal_processing/include/spl_inl.h"
++#include "webrtc/system_wrappers/include/cpu_features_wrapper.h"
+
+ namespace webrtc {
+
+@@ -23,7 +24,15 @@
+
+ rtc::scoped_ptr<RealFourier> RealFourier::Create(int fft_order) {
+ #if defined(RTC_USE_OPENMAX_DL)
++#if defined(WEBRTC_ARCH_X86_FAMILY) && !defined(__SSE2__)
++ // x86 CPU detection required.
++ if (WebRtc_GetCPUInfo(kSSE2))
++ return rtc::scoped_ptr<RealFourier>(new RealFourierOpenmax(fft_order));
++ else
++ return rtc::scoped_ptr<RealFourier>(new RealFourierOoura(fft_order));
++#else
+ return rtc::scoped_ptr<RealFourier>(new RealFourierOpenmax(fft_order));
++#endif
+ #else
+ return rtc::scoped_ptr<RealFourier>(new RealFourierOoura(fft_order));
+ #endif
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/tools/gyp/pylib/gyp/generator/ninja.py qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/tools/gyp/pylib/gyp/generator/ninja.py
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/tools/gyp/pylib/gyp/generator/ninja.py 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/tools/gyp/pylib/gyp/generator/ninja.py 2016-07-17 18:06:40.306813098 +0200
+@@ -1302,6 +1302,8 @@
+ # Make sure that we have relative paths to our out/(Release|Debug), where we generate our .pri file, and then prepend $$PWD to them.
+ prefixed_objects = ['$$PWD/' + o for o in toAbsPaths(objects)]
+ prefixed_archives = ['$$PWD/' + o for o in toAbsPaths(libs)]
++ if len(solibs):
++ prefixed_solibs = ['$$PWD/' + so for so in toAbsPaths(solibs)]
+
+ pri_file.write("QMAKE_LFLAGS += %s\n" % qmakeLiteral(' '.join(prefixed_lflags)))
+ pri_file.write("OBJECTS += %s\n" % qmakeLiteral(' '.join(prefixed_objects)))
+@@ -1310,6 +1312,8 @@
+ pri_file.write("LIBS_PRIVATE += -Wl,--start-group %s -Wl,--end-group\n" % qmakeLiteral(' '.join(prefixed_archives)))
+ else:
+ pri_file.write("LIBS_PRIVATE += %s\n" % qmakeLiteral(' '.join(prefixed_archives)))
++ if len(solibs):
++ pri_file.write("LIBS_PRIVATE += %s\n" % qmakeLiteral(' '.join(prefixed_solibs)))
+ # External libs have to come after objects/archives, the linker resolve them in order.
+ pri_file.write("LIBS_PRIVATE += %s\n" % qmakeLiteral(' '.join(prefixed_library_dirs + prefixed_libraries)))
+ # Make sure that if ninja modifies one of the inputs, qmake/make will link again.
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/build/standalone.gypi qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/build/standalone.gypi
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/build/standalone.gypi 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/build/standalone.gypi 2016-07-17 20:29:04.969207948 +0200
+@@ -117,6 +117,9 @@
+ }, {
+ 'gomadir': '<!(/bin/echo -n ${HOME}/goma)',
+ }],
++ ['target_arch=="ia32"', {
++ 'v8_target_arch%': 'x87',
++ }],
+ ['host_arch!="ppc" and host_arch!="ppc64" and host_arch!="ppc64le" and host_arch!="s390" and host_arch!="s390x" and \
+ coverage==0', {
+ 'host_clang%': 1,
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/build/toolchain.gypi qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/build/toolchain.gypi
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/build/toolchain.gypi 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/build/toolchain.gypi 2016-07-17 18:06:40.325813202 +0200
+@@ -93,6 +93,9 @@
+ 'binutils_dir%': '',
+
+ 'conditions': [
++ ['target_arch=="ia32"', {
++ 'v8_target_arch%': 'x87',
++ }],
+ ['OS=="linux" and host_arch=="x64"', {
+ 'binutils_dir%': 'third_party/binutils/Linux_x64/Release/bin',
+ }],
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/BUILD.gn qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/BUILD.gn
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/BUILD.gn 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/BUILD.gn 2016-07-17 20:30:58.750817046 +0200
+@@ -1339,41 +1339,41 @@
+
+ if (v8_target_arch == "x86") {
+ sources += [
+- "src/crankshaft/ia32/lithium-codegen-ia32.cc",
+- "src/crankshaft/ia32/lithium-codegen-ia32.h",
+- "src/crankshaft/ia32/lithium-gap-resolver-ia32.cc",
+- "src/crankshaft/ia32/lithium-gap-resolver-ia32.h",
+- "src/crankshaft/ia32/lithium-ia32.cc",
+- "src/crankshaft/ia32/lithium-ia32.h",
+- "src/compiler/ia32/code-generator-ia32.cc",
+- "src/compiler/ia32/instruction-codes-ia32.h",
+- "src/compiler/ia32/instruction-scheduler-ia32.cc",
+- "src/compiler/ia32/instruction-selector-ia32.cc",
+- "src/debug/ia32/debug-ia32.cc",
+- "src/full-codegen/ia32/full-codegen-ia32.cc",
+- "src/ia32/assembler-ia32-inl.h",
+- "src/ia32/assembler-ia32.cc",
+- "src/ia32/assembler-ia32.h",
+- "src/ia32/builtins-ia32.cc",
+- "src/ia32/code-stubs-ia32.cc",
+- "src/ia32/code-stubs-ia32.h",
+- "src/ia32/codegen-ia32.cc",
+- "src/ia32/codegen-ia32.h",
+- "src/ia32/cpu-ia32.cc",
+- "src/ia32/deoptimizer-ia32.cc",
+- "src/ia32/disasm-ia32.cc",
+- "src/ia32/frames-ia32.cc",
+- "src/ia32/frames-ia32.h",
+- "src/ia32/interface-descriptors-ia32.cc",
+- "src/ia32/macro-assembler-ia32.cc",
+- "src/ia32/macro-assembler-ia32.h",
+- "src/ic/ia32/access-compiler-ia32.cc",
+- "src/ic/ia32/handler-compiler-ia32.cc",
+- "src/ic/ia32/ic-ia32.cc",
+- "src/ic/ia32/ic-compiler-ia32.cc",
+- "src/ic/ia32/stub-cache-ia32.cc",
+- "src/regexp/ia32/regexp-macro-assembler-ia32.cc",
+- "src/regexp/ia32/regexp-macro-assembler-ia32.h",
++ "src/crankshaft/x87/lithium-codegen-x87.cc",
++ "src/crankshaft/x87/lithium-codegen-x87.h",
++ "src/crankshaft/x87/lithium-gap-resolver-x87.cc",
++ "src/crankshaft/x87/lithium-gap-resolver-x87.h",
++ "src/crankshaft/x87/lithium-x87.cc",
++ "src/crankshaft/x87/lithium-x87.h",
++ "src/compiler/x87/code-generator-x87.cc",
++ "src/compiler/x87/instruction-codes-x87.h",
++ "src/compiler/x87/instruction-scheduler-x87.cc",
++ "src/compiler/x87/instruction-selector-x87.cc",
++ "src/debug/x87/debug-x87.cc",
++ "src/full-codegen/x87/full-codegen-x87.cc",
++ "src/x87/assembler-x87-inl.h",
++ "src/x87/assembler-x87.cc",
++ "src/x87/assembler-x87.h",
++ "src/x87/builtins-x87.cc",
++ "src/x87/code-stubs-x87.cc",
++ "src/x87/code-stubs-x87.h",
++ "src/x87/codegen-x87.cc",
++ "src/x87/codegen-x87.h",
++ "src/x87/cpu-x87.cc",
++ "src/x87/deoptimizer-x87.cc",
++ "src/x87/disasm-x87.cc",
++ "src/x87/frames-x87.cc",
++ "src/x87/frames-x87.h",
++ "src/x87/interface-descriptors-x87.cc",
++ "src/x87/macro-assembler-x87.cc",
++ "src/x87/macro-assembler-x87.h",
++ "src/ic/x87/access-compiler-x87.cc",
++ "src/ic/x87/handler-compiler-x87.cc",
++ "src/ic/x87/ic-x87.cc",
++ "src/ic/x87/ic-compiler-x87.cc",
++ "src/ic/x87/stub-cache-x87.cc",
++ "src/regexp/x87/regexp-macro-assembler-x87.cc",
++ "src/regexp/x87/regexp-macro-assembler-x87.h",
+ ]
+ } else if (v8_target_arch == "x64") {
+ sources += [
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/tools/gyp/make-v8-sse2-gyp.sh qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/tools/gyp/make-v8-sse2-gyp.sh
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/tools/gyp/make-v8-sse2-gyp.sh 1970-01-01 01:00:00.000000000 +0100
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/tools/gyp/make-v8-sse2-gyp.sh 2016-07-17 18:06:40.347813322 +0200
+@@ -0,0 +1,56 @@
++#!/bin/sh
++# This script renames the v8 targets to _sse2 names so that they do not conflict
++# with the non-SSE2 versions.
++
++# Copyright 2016 Kevin Kofler. All rights reserved.
++# Redistribution and use in source and binary forms, with or without
++# modification, are permitted provided that the following conditions are
++# met:
++#
++# * Redistributions of source code must retain the above copyright
++# notice, this list of conditions and the following disclaimer.
++# * Redistributions in binary form must reproduce the above
++# copyright notice, this list of conditions and the following
++# disclaimer in the documentation and/or other materials provided
++# with the distribution.
++# * Neither the name of Google Inc. nor the names of its
++# contributors may be used to endorse or promote products derived
++# from this software without specific prior written permission.
++#
++# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
++# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
++# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
++# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
++# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
++# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
++# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
++# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
++# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
++# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++
++# add comment noting that the file is generated
++echo "# Generated from v8.gyp by make-v8-sse2-gyp.sh" >v8_sse2.gyp
++# rename all target names
++SUBTARGETS=`grep "'target_name': '" v8.gyp | sed -e "s/^.*'target_name': '//g" -e "s/',$//g"`
++SEDS=
++for SUBTARGET in $SUBTARGETS ; do
++ SEDS=$SEDS\ -e\ "s/'$SUBTARGET\(['#]\)/'${SUBTARGET}_sse2\1/g"
++done
++# in addition:
++# * set v8_target_arch to "ia32" (instead of "x87")
++# * rename all actions
++# * fix mksnapshot_exec to match the renamed target
++# * rename the generated snapshot.cc (but not mksnapshot.cc) to snapshot_sse2.cc
++# * rename the generated *libraries.cc to *libraries_sse2.cc
++# * rename the generated *.bin to *_sse2.bin
++# * set product_name and product_dir for the v8_sse2 target
++sed -e "s/^\( 'variables': {\)/\1\n 'v8_target_arch': 'ia32',/g" \
++ -e "s/\('action_name': '\)/\1v8_sse2_/g" \
++ $SEDS \
++ -e "s/\('mksnapshot_exec': '.*mksnapshot\)/\1_sse2/g" \
++ -e "s#/snapshot\.cc#/snapshot_sse2.cc#g" \
++ -e "s/libraries\.cc/libraries_sse2.cc/g" \
++ -e "s/\.bin/_sse2.bin/g" \
++ -e "s#^\( *\)\('target_name': 'v8_sse2',\)#\1\2\n\1'product_name': 'v8',\n\1'product_dir': '<(PRODUCT_DIR)/lib/sse2',#g" \
++ v8.gyp >>v8_sse2.gyp
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/tools/gyp/v8.gyp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/tools/gyp/v8.gyp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/tools/gyp/v8.gyp 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/tools/gyp/v8.gyp 2016-07-17 18:06:40.366813425 +0200
+@@ -36,6 +36,14 @@
+ 'v8_experimental_extra_library_files%': [],
+ 'mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABLE_SUFFIX)',
+ 'remove_v8base_debug_symbols%': 0,
++ 'conditions': [
++ # build V8 shared on ia32 so we can swap x87 vs. SSE2 builds
++ ['target_arch == "ia32"', {
++ 'v8_component%': 'shared_library',
++ }, {
++ 'v8_component%': '<(component)',
++ }],
++ ],
+ },
+ 'includes': ['../../build/toolchain.gypi', '../../build/features.gypi'],
+ 'targets': [
+@@ -49,8 +57,8 @@
+ }, {
+ 'toolsets': ['target'],
+ }],
+- ['component=="shared_library"', {
+- 'type': '<(component)',
++ ['v8_component=="shared_library"', {
++ 'type': '<(v8_component)',
+ 'sources': [
+ # Note: on non-Windows we still build this file so that gyp
+ # has some sources to link into the component.
+@@ -161,7 +169,7 @@
+ 'js2c',
+ ],
+ }],
+- ['component=="shared_library"', {
++ ['v8_component=="shared_library"', {
+ 'defines': [
+ 'V8_SHARED',
+ 'BUILDING_V8_SHARED',
+@@ -244,7 +252,7 @@
+ 'toolsets': ['target'],
+ 'dependencies': ['js2c'],
+ }],
+- ['component=="shared_library"', {
++ ['v8_component=="shared_library"', {
+ 'defines': [
+ 'BUILDING_V8_SHARED',
+ 'V8_SHARED',
+@@ -272,7 +280,7 @@
+ 'natives_blob',
+ ],
+ }],
+- ['component=="shared_library"', {
++ ['v8_component=="shared_library"', {
+ 'defines': [
+ 'V8_SHARED',
+ 'BUILDING_V8_SHARED',
+@@ -1481,7 +1489,7 @@
+ # See http://crbug.com/485155.
+ 'msvs_shard': 4,
+ }],
+- ['component=="shared_library"', {
++ ['v8_component=="shared_library"', {
+ 'defines': [
+ 'BUILDING_V8_SHARED',
+ 'V8_SHARED',
+diff -Nur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/tools/gyp/v8_sse2.gyp qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/tools/gyp/v8_sse2.gyp
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/v8/tools/gyp/v8_sse2.gyp 1970-01-01 01:00:00.000000000 +0100
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/3rdparty/chromium/v8/tools/gyp/v8_sse2.gyp 2016-07-17 20:34:22.753909119 +0200
+@@ -0,0 +1,2151 @@
++# Generated from v8.gyp by make-v8-sse2-gyp.sh
++# Copyright 2012 the V8 project authors. All rights reserved.
++# Redistribution and use in source and binary forms, with or without
++# modification, are permitted provided that the following conditions are
++# met:
++#
++# * Redistributions of source code must retain the above copyright
++# notice, this list of conditions and the following disclaimer.
++# * Redistributions in binary form must reproduce the above
++# copyright notice, this list of conditions and the following
++# disclaimer in the documentation and/or other materials provided
++# with the distribution.
++# * Neither the name of Google Inc. nor the names of its
++# contributors may be used to endorse or promote products derived
++# from this software without specific prior written permission.
++#
++# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
++# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
++# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
++# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
++# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
++# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
++# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
++# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
++# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
++# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
++# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++
++{
++ 'variables': {
++ 'v8_target_arch': 'ia32',
++ 'icu_use_data_file_flag%': 0,
++ 'v8_code': 1,
++ 'v8_random_seed%': 314159265,
++ 'v8_vector_stores%': 0,
++ 'embed_script%': "",
++ 'v8_extra_library_files%': [],
++ 'v8_experimental_extra_library_files%': [],
++ 'mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot_sse2<(EXECUTABLE_SUFFIX)',
++ 'remove_v8base_debug_symbols%': 0,
++ 'conditions': [
++ # build V8 shared on ia32 so we can swap x87 vs. SSE2 builds
++ ['target_arch == "ia32"', {
++ 'v8_component%': 'shared_library',
++ }, {
++ 'v8_component%': '<(component)',
++ }],
++ ],
++ },
++ 'includes': ['../../build/toolchain.gypi', '../../build/features.gypi'],
++ 'targets': [
++ {
++ 'target_name': 'v8_sse2',
++ 'product_name': 'v8',
++ 'product_dir': '<(PRODUCT_DIR)/lib/sse2',
++ 'dependencies_traverse': 1,
++ 'dependencies': ['v8_maybe_snapshot_sse2'],
++ 'conditions': [
++ ['want_separate_host_toolset==1', {
++ 'toolsets': ['host', 'target'],
++ }, {
++ 'toolsets': ['target'],
++ }],
++ ['v8_component=="shared_library"', {
++ 'type': '<(v8_component)',
++ 'sources': [
++ # Note: on non-Windows we still build this file so that gyp
++ # has some sources to link into the component.
++ '../../src/v8dll-main.cc',
++ ],
++ 'include_dirs': [
++ '../..',
++ ],
++ 'defines': [
++ 'V8_SHARED',
++ 'BUILDING_V8_SHARED',
++ ],
++ 'direct_dependent_settings': {
++ 'defines': [
++ 'V8_SHARED',
++ 'USING_V8_SHARED',
++ ],
++ },
++ 'target_conditions': [
++ ['OS=="android" and _toolset=="target"', {
++ 'libraries': [
++ '-llog',
++ ],
++ 'include_dirs': [
++ 'src/common/android/include',
++ ],
++ }],
++ ],
++ 'conditions': [
++ ['OS=="mac"', {
++ 'xcode_settings': {
++ 'OTHER_LDFLAGS': ['-dynamiclib', '-all_load']
++ },
++ }],
++ ['soname_version!=""', {
++ 'product_extension': 'so.<(soname_version)',
++ }],
++ ],
++ },
++ {
++ 'type': 'none',
++ }],
++ ],
++ 'direct_dependent_settings': {
++ 'include_dirs': [
++ '../../include',
++ ],
++ },
++ },
++ {
++ # This rule delegates to either v8_snapshot, v8_nosnapshot, or
++ # v8_external_snapshot, depending on the current variables.
++ # The intention is to make the 'calling' rules a bit simpler.
++ 'target_name': 'v8_maybe_snapshot_sse2',
++ 'type': 'none',
++ 'conditions': [
++ ['v8_use_snapshot!="true"', {
++ # The dependency on v8_base should come from a transitive
++ # dependency however the Android toolchain requires libv8_base.a
++ # to appear before libv8_snapshot.a so it's listed explicitly.
++ 'dependencies': ['v8_base_sse2', 'v8_nosnapshot_sse2'],
++ }],
++ ['v8_use_snapshot=="true" and v8_use_external_startup_data==0', {
++ # The dependency on v8_base should come from a transitive
++ # dependency however the Android toolchain requires libv8_base.a
++ # to appear before libv8_snapshot.a so it's listed explicitly.
++ 'dependencies': ['v8_base_sse2', 'v8_snapshot_sse2'],
++ }],
++ ['v8_use_snapshot=="true" and v8_use_external_startup_data==1 and want_separate_host_toolset==0', {
++ 'dependencies': ['v8_base_sse2', 'v8_external_snapshot_sse2'],
++ 'inputs': [ '<(PRODUCT_DIR)/snapshot_blob_sse2.bin', ],
++ }],
++ ['v8_use_snapshot=="true" and v8_use_external_startup_data==1 and want_separate_host_toolset==1', {
++ 'dependencies': ['v8_base_sse2', 'v8_external_snapshot_sse2'],
++ 'target_conditions': [
++ ['_toolset=="host"', {
++ 'inputs': [
++ '<(PRODUCT_DIR)/snapshot_blob_host_sse2.bin',
++ ],
++ }, {
++ 'inputs': [
++ '<(PRODUCT_DIR)/snapshot_blob_sse2.bin',
++ ],
++ }],
++ ],
++ }],
++ ['want_separate_host_toolset==1', {
++ 'toolsets': ['host', 'target'],
++ }, {
++ 'toolsets': ['target'],
++ }],
++ ]
++ },
++ {
++ 'target_name': 'v8_snapshot_sse2',
++ 'type': 'static_library',
++ 'conditions': [
++ ['want_separate_host_toolset==1', {
++ 'toolsets': ['host', 'target'],
++ 'dependencies': [
++ 'mksnapshot_sse2#host',
++ 'js2c_sse2#host',
++ ],
++ }, {
++ 'toolsets': ['target'],
++ 'dependencies': [
++ 'mksnapshot_sse2',
++ 'js2c_sse2',
++ ],
++ }],
++ ['v8_component=="shared_library"', {
++ 'defines': [
++ 'V8_SHARED',
++ 'BUILDING_V8_SHARED',
++ ],
++ 'direct_dependent_settings': {
++ 'defines': [
++ 'V8_SHARED',
++ 'USING_V8_SHARED',
++ ],
++ },
++ }],
++ ],
++ 'dependencies': [
++ 'v8_base_sse2',
++ ],
++ 'include_dirs+': [
++ '../..',
++ ],
++ 'sources': [
++ '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.cc',
++ '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries_sse2.cc',
++ '<(SHARED_INTERMEDIATE_DIR)/extras-libraries_sse2.cc',
++ '<(SHARED_INTERMEDIATE_DIR)/experimental-extras-libraries_sse2.cc',
++ '<(INTERMEDIATE_DIR)/snapshot_sse2.cc',
++ ],
++ 'actions': [
++ {
++ 'action_name': 'v8_sse2_run_mksnapshot',
++ 'inputs': [
++ '<(mksnapshot_exec)',
++ '<(embed_script)',
++ ],
++ 'outputs': [
++ '<(INTERMEDIATE_DIR)/snapshot_sse2.cc',
++ ],
++ 'variables': {
++ 'mksnapshot_flags': [
++ '--log-snapshot-positions',
++ '--logfile', '<(INTERMEDIATE_DIR)/snapshot.log',
++ ],
++ 'conditions': [
++ ['v8_random_seed!=0', {
++ 'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
++ }],
++ ['v8_vector_stores!=0', {
++ 'mksnapshot_flags': ['--vector-stores'],
++ }],
++ ],
++ },
++ 'action': [
++ '<(mksnapshot_exec)',
++ '<@(mksnapshot_flags)',
++ '--startup_src', '<@(INTERMEDIATE_DIR)/snapshot_sse2.cc',
++ '<(embed_script)',
++ ],
++ },
++ ],
++ },
++ {
++ 'target_name': 'v8_nosnapshot_sse2',
++ 'type': 'static_library',
++ 'dependencies': [
++ 'v8_base_sse2',
++ ],
++ 'include_dirs+': [
++ '../..',
++ ],
++ 'sources': [
++ '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.cc',
++ '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries_sse2.cc',
++ '<(SHARED_INTERMEDIATE_DIR)/extras-libraries_sse2.cc',
++ '<(SHARED_INTERMEDIATE_DIR)/experimental-extras-libraries_sse2.cc',
++ '../../src/snapshot/snapshot-empty.cc',
++ ],
++ 'conditions': [
++ ['want_separate_host_toolset==1', {
++ 'toolsets': ['host', 'target'],
++ 'dependencies': ['js2c_sse2#host'],
++ }, {
++ 'toolsets': ['target'],
++ 'dependencies': ['js2c_sse2'],
++ }],
++ ['v8_component=="shared_library"', {
++ 'defines': [
++ 'BUILDING_V8_SHARED',
++ 'V8_SHARED',
++ ],
++ }],
++ ]
++ },
++ {
++ 'target_name': 'v8_external_snapshot_sse2',
++ 'type': 'static_library',
++ 'conditions': [
++ [ 'v8_use_external_startup_data==1', {
++ 'conditions': [
++ ['want_separate_host_toolset==1', {
++ 'toolsets': ['host', 'target'],
++ 'dependencies': [
++ 'mksnapshot_sse2#host',
++ 'js2c_sse2#host',
++ 'natives_blob_sse2',
++ ]}, {
++ 'toolsets': ['target'],
++ 'dependencies': [
++ 'mksnapshot_sse2',
++ 'js2c_sse2',
++ 'natives_blob_sse2',
++ ],
++ }],
++ ['v8_component=="shared_library"', {
++ 'defines': [
++ 'V8_SHARED',
++ 'BUILDING_V8_SHARED',
++ ],
++ 'direct_dependent_settings': {
++ 'defines': [
++ 'V8_SHARED',
++ 'USING_V8_SHARED',
++ ],
++ },
++ }],
++ ],
++ 'dependencies': [
++ 'v8_base_sse2',
++ ],
++ 'include_dirs+': [
++ '../..',
++ ],
++ 'sources': [
++ '../../src/snapshot/natives-external.cc',
++ '../../src/snapshot/snapshot-external.cc',
++ ],
++ 'actions': [
++ {
++ 'action_name': 'v8_sse2_run_mksnapshot (external)',
++ 'inputs': [
++ '<(mksnapshot_exec)',
++ ],
++ 'variables': {
++ 'mksnapshot_flags': [
++ '--log-snapshot-positions',
++ '--logfile', '<(INTERMEDIATE_DIR)/snapshot.log',
++ ],
++ 'conditions': [
++ ['v8_random_seed!=0', {
++ 'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
++ }],
++ ['v8_vector_stores!=0', {
++ 'mksnapshot_flags': ['--vector-stores'],
++ }],
++ ],
++ },
++ 'conditions': [
++ ['want_separate_host_toolset==1', {
++ 'target_conditions': [
++ ['_toolset=="host"', {
++ 'outputs': [
++ '<(PRODUCT_DIR)/snapshot_blob_host_sse2.bin',
++ ],
++ 'action': [
++ '<(mksnapshot_exec)',
++ '<@(mksnapshot_flags)',
++ '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob_host_sse2.bin',
++ '<(embed_script)',
++ ],
++ }, {
++ 'outputs': [
++ '<(PRODUCT_DIR)/snapshot_blob_sse2.bin',
++ ],
++ 'action': [
++ '<(mksnapshot_exec)',
++ '<@(mksnapshot_flags)',
++ '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob_sse2.bin',
++ '<(embed_script)',
++ ],
++ }],
++ ],
++ }, {
++ 'outputs': [
++ '<(PRODUCT_DIR)/snapshot_blob_sse2.bin',
++ ],
++ 'action': [
++ '<(mksnapshot_exec)',
++ '<@(mksnapshot_flags)',
++ '--startup_blob', '<(PRODUCT_DIR)/snapshot_blob_sse2.bin',
++ '<(embed_script)',
++ ],
++ }],
++ ],
++ },
++ ],
++ }],
++ ],
++ },
++ {
++ 'target_name': 'v8_base_sse2',
++ 'type': 'static_library',
++ 'dependencies': [
++ 'v8_libbase_sse2',
++ ],
++ 'variables': {
++ 'optimize': 'max',
++ },
++ 'include_dirs+': [
++ '../..',
++ # To be able to find base/trace_event/common/trace_event_common.h
++ '../../..',
++ ],
++ 'defines': [
++ # TODO(jochen): Remove again after this is globally turned on.
++ 'V8_IMMINENT_DEPRECATION_WARNINGS',
++ ],
++ 'sources': [ ### gcmole(all) ###
++ '../../include/v8-debug.h',
++ '../../include/v8-experimental.h',
++ '../../include/v8-platform.h',
++ '../../include/v8-profiler.h',
++ '../../include/v8-testing.h',
++ '../../include/v8-util.h',
++ '../../include/v8-version.h',
++ '../../include/v8.h',
++ '../../include/v8config.h',
++ '../../src/accessors.cc',
++ '../../src/accessors.h',
++ '../../src/address-map.cc',
++ '../../src/address-map.h',
++ '../../src/allocation.cc',
++ '../../src/allocation.h',
++ '../../src/allocation-site-scopes.cc',
++ '../../src/allocation-site-scopes.h',
++ '../../src/api-experimental.cc',
++ '../../src/api-experimental.h',
++ '../../src/api.cc',
++ '../../src/api.h',
++ '../../src/api-natives.cc',
++ '../../src/api-natives.h',
++ '../../src/arguments.cc',
++ '../../src/arguments.h',
++ '../../src/assembler.cc',
++ '../../src/assembler.h',
++ '../../src/assert-scope.h',
++ '../../src/assert-scope.cc',
++ '../../src/ast/ast-expression-rewriter.cc',
++ '../../src/ast/ast-expression-rewriter.h',
++ '../../src/ast/ast-expression-visitor.cc',
++ '../../src/ast/ast-expression-visitor.h',
++ '../../src/ast/ast-literal-reindexer.cc',
++ '../../src/ast/ast-literal-reindexer.h',
++ '../../src/ast/ast-numbering.cc',
++ '../../src/ast/ast-numbering.h',
++ '../../src/ast/ast-value-factory.cc',
++ '../../src/ast/ast-value-factory.h',
++ '../../src/ast/ast.cc',
++ '../../src/ast/ast.h',
++ '../../src/ast/modules.cc',
++ '../../src/ast/modules.h',
++ '../../src/ast/prettyprinter.cc',
++ '../../src/ast/prettyprinter.h',
++ '../../src/ast/scopeinfo.cc',
++ '../../src/ast/scopeinfo.h',
++ '../../src/ast/scopes.cc',
++ '../../src/ast/scopes.h',
++ '../../src/ast/variables.cc',
++ '../../src/ast/variables.h',
++ '../../src/atomic-utils.h',
++ '../../src/background-parsing-task.cc',
++ '../../src/background-parsing-task.h',
++ '../../src/bailout-reason.cc',
++ '../../src/bailout-reason.h',
++ '../../src/basic-block-profiler.cc',
++ '../../src/basic-block-profiler.h',
++ '../../src/bignum-dtoa.cc',
++ '../../src/bignum-dtoa.h',
++ '../../src/bignum.cc',
++ '../../src/bignum.h',
++ '../../src/bit-vector.cc',
++ '../../src/bit-vector.h',
++ '../../src/bootstrapper.cc',
++ '../../src/bootstrapper.h',
++ '../../src/builtins.cc',
++ '../../src/builtins.h',
++ '../../src/cached-powers.cc',
++ '../../src/cached-powers.h',
++ '../../src/cancelable-task.cc',
++ '../../src/cancelable-task.h',
++ '../../src/char-predicates.cc',
++ '../../src/char-predicates-inl.h',
++ '../../src/char-predicates.h',
++ '../../src/checks.h',
++ '../../src/code-factory.cc',
++ '../../src/code-factory.h',
++ '../../src/code-stubs.cc',
++ '../../src/code-stubs.h',
++ '../../src/code-stubs-hydrogen.cc',
++ '../../src/codegen.cc',
++ '../../src/codegen.h',
++ '../../src/compilation-cache.cc',
++ '../../src/compilation-cache.h',
++ '../../src/compilation-dependencies.cc',
++ '../../src/compilation-dependencies.h',
++ '../../src/compilation-statistics.cc',
++ '../../src/compilation-statistics.h',
++ '../../src/compiler/access-builder.cc',
++ '../../src/compiler/access-builder.h',
++ '../../src/compiler/access-info.cc',
++ '../../src/compiler/access-info.h',
++ '../../src/compiler/all-nodes.cc',
++ '../../src/compiler/all-nodes.h',
++ '../../src/compiler/ast-graph-builder.cc',
++ '../../src/compiler/ast-graph-builder.h',
++ '../../src/compiler/ast-loop-assignment-analyzer.cc',
++ '../../src/compiler/ast-loop-assignment-analyzer.h',
++ '../../src/compiler/basic-block-instrumentor.cc',
++ '../../src/compiler/basic-block-instrumentor.h',
++ '../../src/compiler/branch-elimination.cc',
++ '../../src/compiler/branch-elimination.h',
++ '../../src/compiler/bytecode-branch-analysis.cc',
++ '../../src/compiler/bytecode-branch-analysis.h',
++ '../../src/compiler/bytecode-graph-builder.cc',
++ '../../src/compiler/bytecode-graph-builder.h',
++ '../../src/compiler/change-lowering.cc',
++ '../../src/compiler/change-lowering.h',
++ '../../src/compiler/c-linkage.cc',
++ '../../src/compiler/coalesced-live-ranges.cc',
++ '../../src/compiler/coalesced-live-ranges.h',
++ '../../src/compiler/code-generator-impl.h',
++ '../../src/compiler/code-generator.cc',
++ '../../src/compiler/code-generator.h',
++ '../../src/compiler/code-stub-assembler.cc',
++ '../../src/compiler/code-stub-assembler.h',
++ '../../src/compiler/common-node-cache.cc',
++ '../../src/compiler/common-node-cache.h',
++ '../../src/compiler/common-operator-reducer.cc',
++ '../../src/compiler/common-operator-reducer.h',
++ '../../src/compiler/common-operator.cc',
++ '../../src/compiler/common-operator.h',
++ '../../src/compiler/control-builders.cc',
++ '../../src/compiler/control-builders.h',
++ '../../src/compiler/control-equivalence.cc',
++ '../../src/compiler/control-equivalence.h',
++ '../../src/compiler/control-flow-optimizer.cc',
++ '../../src/compiler/control-flow-optimizer.h',
++ '../../src/compiler/dead-code-elimination.cc',
++ '../../src/compiler/dead-code-elimination.h',
++ '../../src/compiler/diamond.h',
++ '../../src/compiler/escape-analysis.cc',
++ '../../src/compiler/escape-analysis.h',
++ "../../src/compiler/escape-analysis-reducer.cc",
++ "../../src/compiler/escape-analysis-reducer.h",
++ '../../src/compiler/fast-accessor-assembler.cc',
++ '../../src/compiler/fast-accessor-assembler.h',
++ '../../src/compiler/frame.cc',
++ '../../src/compiler/frame.h',
++ '../../src/compiler/frame-elider.cc',
++ '../../src/compiler/frame-elider.h',
++ "../../src/compiler/frame-states.cc",
++ "../../src/compiler/frame-states.h",
++ '../../src/compiler/gap-resolver.cc',
++ '../../src/compiler/gap-resolver.h',
++ '../../src/compiler/graph-reducer.cc',
++ '../../src/compiler/graph-reducer.h',
++ '../../src/compiler/graph-replay.cc',
++ '../../src/compiler/graph-replay.h',
++ '../../src/compiler/graph-trimmer.cc',
++ '../../src/compiler/graph-trimmer.h',
++ '../../src/compiler/graph-visualizer.cc',
++ '../../src/compiler/graph-visualizer.h',
++ '../../src/compiler/graph.cc',
++ '../../src/compiler/graph.h',
++ '../../src/compiler/greedy-allocator.cc',
++ '../../src/compiler/greedy-allocator.h',
++ '../../src/compiler/instruction-codes.h',
++ '../../src/compiler/instruction-selector-impl.h',
++ '../../src/compiler/instruction-selector.cc',
++ '../../src/compiler/instruction-selector.h',
++ '../../src/compiler/instruction-scheduler.cc',
++ '../../src/compiler/instruction-scheduler.h',
++ '../../src/compiler/instruction.cc',
++ '../../src/compiler/instruction.h',
++ '../../src/compiler/interpreter-assembler.cc',
++ '../../src/compiler/interpreter-assembler.h',
++ '../../src/compiler/js-builtin-reducer.cc',
++ '../../src/compiler/js-builtin-reducer.h',
++ '../../src/compiler/js-call-reducer.cc',
++ '../../src/compiler/js-call-reducer.h',
++ '../../src/compiler/js-context-relaxation.cc',
++ '../../src/compiler/js-context-relaxation.h',
++ '../../src/compiler/js-context-specialization.cc',
++ '../../src/compiler/js-context-specialization.h',
++ '../../src/compiler/js-frame-specialization.cc',
++ '../../src/compiler/js-frame-specialization.h',
++ '../../src/compiler/js-generic-lowering.cc',
++ '../../src/compiler/js-generic-lowering.h',
++ '../../src/compiler/js-global-object-specialization.cc',
++ '../../src/compiler/js-global-object-specialization.h',
++ '../../src/compiler/js-graph.cc',
++ '../../src/compiler/js-graph.h',
++ '../../src/compiler/js-inlining.cc',
++ '../../src/compiler/js-inlining.h',
++ '../../src/compiler/js-inlining-heuristic.cc',
++ '../../src/compiler/js-inlining-heuristic.h',
++ '../../src/compiler/js-intrinsic-lowering.cc',
++ '../../src/compiler/js-intrinsic-lowering.h',
++ '../../src/compiler/js-native-context-specialization.cc',
++ '../../src/compiler/js-native-context-specialization.h',
++ '../../src/compiler/js-operator.cc',
++ '../../src/compiler/js-operator.h',
++ '../../src/compiler/js-typed-lowering.cc',
++ '../../src/compiler/js-typed-lowering.h',
++ '../../src/compiler/jump-threading.cc',
++ '../../src/compiler/jump-threading.h',
++ '../../src/compiler/linkage.cc',
++ '../../src/compiler/linkage.h',
++ '../../src/compiler/liveness-analyzer.cc',
++ '../../src/compiler/liveness-analyzer.h',
++ '../../src/compiler/live-range-separator.cc',
++ '../../src/compiler/live-range-separator.h',
++ '../../src/compiler/load-elimination.cc',
++ '../../src/compiler/load-elimination.h',
++ '../../src/compiler/loop-analysis.cc',
++ '../../src/compiler/loop-analysis.h',
++ '../../src/compiler/loop-peeling.cc',
++ '../../src/compiler/loop-peeling.h',
++ '../../src/compiler/machine-operator-reducer.cc',
++ '../../src/compiler/machine-operator-reducer.h',
++ '../../src/compiler/machine-operator.cc',
++ '../../src/compiler/machine-operator.h',
++ '../../src/compiler/move-optimizer.cc',
++ '../../src/compiler/move-optimizer.h',
++ '../../src/compiler/node-aux-data.h',
++ '../../src/compiler/node-cache.cc',
++ '../../src/compiler/node-cache.h',
++ '../../src/compiler/node-marker.cc',
++ '../../src/compiler/node-marker.h',
++ '../../src/compiler/node-matchers.cc',
++ '../../src/compiler/node-matchers.h',
++ '../../src/compiler/node-properties.cc',
++ '../../src/compiler/node-properties.h',
++ '../../src/compiler/node.cc',
++ '../../src/compiler/node.h',
++ '../../src/compiler/opcodes.cc',
++ '../../src/compiler/opcodes.h',
++ '../../src/compiler/operator-properties.cc',
++ '../../src/compiler/operator-properties.h',
++ '../../src/compiler/operator.cc',
++ '../../src/compiler/operator.h',
++ '../../src/compiler/osr.cc',
++ '../../src/compiler/osr.h',
++ '../../src/compiler/pipeline.cc',
++ '../../src/compiler/pipeline.h',
++ '../../src/compiler/pipeline-statistics.cc',
++ '../../src/compiler/pipeline-statistics.h',
++ '../../src/compiler/raw-machine-assembler.cc',
++ '../../src/compiler/raw-machine-assembler.h',
++ '../../src/compiler/register-allocator.cc',
++ '../../src/compiler/register-allocator.h',
++ '../../src/compiler/register-allocator-verifier.cc',
++ '../../src/compiler/register-allocator-verifier.h',
++ '../../src/compiler/representation-change.cc',
++ '../../src/compiler/representation-change.h',
++ '../../src/compiler/schedule.cc',
++ '../../src/compiler/schedule.h',
++ '../../src/compiler/scheduler.cc',
++ '../../src/compiler/scheduler.h',
++ '../../src/compiler/select-lowering.cc',
++ '../../src/compiler/select-lowering.h',
++ '../../src/compiler/simplified-lowering.cc',
++ '../../src/compiler/simplified-lowering.h',
++ '../../src/compiler/simplified-operator-reducer.cc',
++ '../../src/compiler/simplified-operator-reducer.h',
++ '../../src/compiler/simplified-operator.cc',
++ '../../src/compiler/simplified-operator.h',
++ '../../src/compiler/source-position.cc',
++ '../../src/compiler/source-position.h',
++ '../../src/compiler/state-values-utils.cc',
++ '../../src/compiler/state-values-utils.h',
++ '../../src/compiler/tail-call-optimization.cc',
++ '../../src/compiler/tail-call-optimization.h',
++ '../../src/compiler/type-hint-analyzer.cc',
++ '../../src/compiler/type-hint-analyzer.h',
++ '../../src/compiler/type-hints.cc',
++ '../../src/compiler/type-hints.h',
++ '../../src/compiler/typer.cc',
++ '../../src/compiler/typer.h',
++ '../../src/compiler/value-numbering-reducer.cc',
++ '../../src/compiler/value-numbering-reducer.h',
++ '../../src/compiler/verifier.cc',
++ '../../src/compiler/verifier.h',
++ '../../src/compiler/wasm-compiler.cc',
++ '../../src/compiler/wasm-compiler.h',
++ '../../src/compiler/wasm-linkage.cc',
++ '../../src/compiler/zone-pool.cc',
++ '../../src/compiler/zone-pool.h',
++ '../../src/compiler.cc',
++ '../../src/compiler.h',
++ '../../src/context-measure.cc',
++ '../../src/context-measure.h',
++ '../../src/contexts-inl.h',
++ '../../src/contexts.cc',
++ '../../src/contexts.h',
++ '../../src/conversions-inl.h',
++ '../../src/conversions.cc',
++ '../../src/conversions.h',
++ '../../src/counters.cc',
++ '../../src/counters.h',
++ '../../src/crankshaft/hydrogen-alias-analysis.h',
++ '../../src/crankshaft/hydrogen-bce.cc',
++ '../../src/crankshaft/hydrogen-bce.h',
++ '../../src/crankshaft/hydrogen-bch.cc',
++ '../../src/crankshaft/hydrogen-bch.h',
++ '../../src/crankshaft/hydrogen-canonicalize.cc',
++ '../../src/crankshaft/hydrogen-canonicalize.h',
++ '../../src/crankshaft/hydrogen-check-elimination.cc',
++ '../../src/crankshaft/hydrogen-check-elimination.h',
++ '../../src/crankshaft/hydrogen-dce.cc',
++ '../../src/crankshaft/hydrogen-dce.h',
++ '../../src/crankshaft/hydrogen-dehoist.cc',
++ '../../src/crankshaft/hydrogen-dehoist.h',
++ '../../src/crankshaft/hydrogen-environment-liveness.cc',
++ '../../src/crankshaft/hydrogen-environment-liveness.h',
++ '../../src/crankshaft/hydrogen-escape-analysis.cc',
++ '../../src/crankshaft/hydrogen-escape-analysis.h',
++ '../../src/crankshaft/hydrogen-flow-engine.h',
++ '../../src/crankshaft/hydrogen-gvn.cc',
++ '../../src/crankshaft/hydrogen-gvn.h',
++ '../../src/crankshaft/hydrogen-infer-representation.cc',
++ '../../src/crankshaft/hydrogen-infer-representation.h',
++ '../../src/crankshaft/hydrogen-infer-types.cc',
++ '../../src/crankshaft/hydrogen-infer-types.h',
++ '../../src/crankshaft/hydrogen-instructions.cc',
++ '../../src/crankshaft/hydrogen-instructions.h',
++ '../../src/crankshaft/hydrogen-load-elimination.cc',
++ '../../src/crankshaft/hydrogen-load-elimination.h',
++ '../../src/crankshaft/hydrogen-mark-deoptimize.cc',
++ '../../src/crankshaft/hydrogen-mark-deoptimize.h',
++ '../../src/crankshaft/hydrogen-mark-unreachable.cc',
++ '../../src/crankshaft/hydrogen-mark-unreachable.h',
++ '../../src/crankshaft/hydrogen-osr.cc',
++ '../../src/crankshaft/hydrogen-osr.h',
++ '../../src/crankshaft/hydrogen-range-analysis.cc',
++ '../../src/crankshaft/hydrogen-range-analysis.h',
++ '../../src/crankshaft/hydrogen-redundant-phi.cc',
++ '../../src/crankshaft/hydrogen-redundant-phi.h',
++ '../../src/crankshaft/hydrogen-removable-simulates.cc',
++ '../../src/crankshaft/hydrogen-removable-simulates.h',
++ '../../src/crankshaft/hydrogen-representation-changes.cc',
++ '../../src/crankshaft/hydrogen-representation-changes.h',
++ '../../src/crankshaft/hydrogen-sce.cc',
++ '../../src/crankshaft/hydrogen-sce.h',
++ '../../src/crankshaft/hydrogen-store-elimination.cc',
++ '../../src/crankshaft/hydrogen-store-elimination.h',
++ '../../src/crankshaft/hydrogen-types.cc',
++ '../../src/crankshaft/hydrogen-types.h',
++ '../../src/crankshaft/hydrogen-uint32-analysis.cc',
++ '../../src/crankshaft/hydrogen-uint32-analysis.h',
++ '../../src/crankshaft/hydrogen.cc',
++ '../../src/crankshaft/hydrogen.h',
++ '../../src/crankshaft/lithium-allocator-inl.h',
++ '../../src/crankshaft/lithium-allocator.cc',
++ '../../src/crankshaft/lithium-allocator.h',
++ '../../src/crankshaft/lithium-codegen.cc',
++ '../../src/crankshaft/lithium-codegen.h',
++ '../../src/crankshaft/lithium.cc',
++ '../../src/crankshaft/lithium.h',
++ '../../src/crankshaft/lithium-inl.h',
++ '../../src/crankshaft/typing.cc',
++ '../../src/crankshaft/typing.h',
++ '../../src/crankshaft/unique.h',
++ '../../src/date.cc',
++ '../../src/date.h',
++ '../../src/dateparser-inl.h',
++ '../../src/dateparser.cc',
++ '../../src/dateparser.h',
++ '../../src/debug/debug-evaluate.cc',
++ '../../src/debug/debug-evaluate.h',
++ '../../src/debug/debug-frames.cc',
++ '../../src/debug/debug-frames.h',
++ '../../src/debug/debug-scopes.cc',
++ '../../src/debug/debug-scopes.h',
++ '../../src/debug/debug.cc',
++ '../../src/debug/debug.h',
++ '../../src/debug/liveedit.cc',
++ '../../src/debug/liveedit.h',
++ '../../src/deoptimizer.cc',
++ '../../src/deoptimizer.h',
++ '../../src/disasm.h',
++ '../../src/disassembler.cc',
++ '../../src/disassembler.h',
++ '../../src/diy-fp.cc',
++ '../../src/diy-fp.h',
++ '../../src/double.h',
++ '../../src/dtoa.cc',
++ '../../src/dtoa.h',
++ '../../src/effects.h',
++ '../../src/elements-kind.cc',
++ '../../src/elements-kind.h',
++ '../../src/elements.cc',
++ '../../src/elements.h',
++ '../../src/execution.cc',
++ '../../src/execution.h',
++ '../../src/extensions/externalize-string-extension.cc',
++ '../../src/extensions/externalize-string-extension.h',
++ '../../src/extensions/free-buffer-extension.cc',
++ '../../src/extensions/free-buffer-extension.h',
++ '../../src/extensions/gc-extension.cc',
++ '../../src/extensions/gc-extension.h',
++ '../../src/extensions/statistics-extension.cc',
++ '../../src/extensions/statistics-extension.h',
++ '../../src/extensions/trigger-failure-extension.cc',
++ '../../src/extensions/trigger-failure-extension.h',
++ '../../src/factory.cc',
++ '../../src/factory.h',
++ '../../src/fast-dtoa.cc',
++ '../../src/fast-dtoa.h',
++ '../../src/field-index.h',
++ '../../src/field-index-inl.h',
++ '../../src/fixed-dtoa.cc',
++ '../../src/fixed-dtoa.h',
++ '../../src/flag-definitions.h',
++ '../../src/flags.cc',
++ '../../src/flags.h',
++ '../../src/frames-inl.h',
++ '../../src/frames.cc',
++ '../../src/frames.h',
++ '../../src/full-codegen/full-codegen.cc',
++ '../../src/full-codegen/full-codegen.h',
++ '../../src/futex-emulation.cc',
++ '../../src/futex-emulation.h',
++ '../../src/gdb-jit.cc',
++ '../../src/gdb-jit.h',
++ '../../src/global-handles.cc',
++ '../../src/global-handles.h',
++ '../../src/globals.h',
++ '../../src/handles-inl.h',
++ '../../src/handles.cc',
++ '../../src/handles.h',
++ '../../src/hashmap.h',
++ '../../src/heap/array-buffer-tracker.cc',
++ '../../src/heap/array-buffer-tracker.h',
++ '../../src/heap/memory-reducer.cc',
++ '../../src/heap/memory-reducer.h',
++ '../../src/heap/gc-idle-time-handler.cc',
++ '../../src/heap/gc-idle-time-handler.h',
++ '../../src/heap/gc-tracer.cc',
++ '../../src/heap/gc-tracer.h',
++ '../../src/heap/heap-inl.h',
++ '../../src/heap/heap.cc',
++ '../../src/heap/heap.h',
++ '../../src/heap/incremental-marking-inl.h',
++ '../../src/heap/incremental-marking-job.cc',
++ '../../src/heap/incremental-marking-job.h',
++ '../../src/heap/incremental-marking.cc',
++ '../../src/heap/incremental-marking.h',
++ '../../src/heap/mark-compact-inl.h',
++ '../../src/heap/mark-compact.cc',
++ '../../src/heap/mark-compact.h',
++ '../../src/heap/object-stats.cc',
++ '../../src/heap/object-stats.h',
++ '../../src/heap/objects-visiting-inl.h',
++ '../../src/heap/objects-visiting.cc',
++ '../../src/heap/objects-visiting.h',
++ '../../src/heap/scavenge-job.h',
++ '../../src/heap/scavenge-job.cc',
++ '../../src/heap/scavenger-inl.h',
++ '../../src/heap/scavenger.cc',
++ '../../src/heap/scavenger.h',
++ '../../src/heap/slots-buffer.cc',
++ '../../src/heap/slots-buffer.h',
++ '../../src/heap/spaces-inl.h',
++ '../../src/heap/spaces.cc',
++ '../../src/heap/spaces.h',
++ '../../src/heap/store-buffer-inl.h',
++ '../../src/heap/store-buffer.cc',
++ '../../src/heap/store-buffer.h',
++ '../../src/i18n.cc',
++ '../../src/i18n.h',
++ '../../src/icu_util.cc',
++ '../../src/icu_util.h',
++ '../../src/ic/access-compiler.cc',
++ '../../src/ic/access-compiler.h',
++ '../../src/ic/call-optimization.cc',
++ '../../src/ic/call-optimization.h',
++ '../../src/ic/handler-compiler.cc',
++ '../../src/ic/handler-compiler.h',
++ '../../src/ic/ic-inl.h',
++ '../../src/ic/ic-state.cc',
++ '../../src/ic/ic-state.h',
++ '../../src/ic/ic.cc',
++ '../../src/ic/ic.h',
++ '../../src/ic/ic-compiler.cc',
++ '../../src/ic/ic-compiler.h',
++ '../../src/identity-map.cc',
++ '../../src/identity-map.h',
++ '../../src/interface-descriptors.cc',
++ '../../src/interface-descriptors.h',
++ '../../src/interpreter/bytecodes.cc',
++ '../../src/interpreter/bytecodes.h',
++ '../../src/interpreter/bytecode-array-builder.cc',
++ '../../src/interpreter/bytecode-array-builder.h',
++ '../../src/interpreter/bytecode-array-iterator.cc',
++ '../../src/interpreter/bytecode-array-iterator.h',
++ '../../src/interpreter/bytecode-register-allocator.cc',
++ '../../src/interpreter/bytecode-register-allocator.h',
++ '../../src/interpreter/bytecode-generator.cc',
++ '../../src/interpreter/bytecode-generator.h',
++ '../../src/interpreter/bytecode-traits.h',
++ '../../src/interpreter/constant-array-builder.cc',
++ '../../src/interpreter/constant-array-builder.h',
++ '../../src/interpreter/control-flow-builders.cc',
++ '../../src/interpreter/control-flow-builders.h',
++ '../../src/interpreter/interpreter.cc',
++ '../../src/interpreter/interpreter.h',
++ '../../src/isolate-inl.h',
++ '../../src/isolate.cc',
++ '../../src/isolate.h',
++ '../../src/json-stringifier.h',
++ '../../src/key-accumulator.h',
++ '../../src/key-accumulator.cc',
++ '../../src/layout-descriptor-inl.h',
++ '../../src/layout-descriptor.cc',
++ '../../src/layout-descriptor.h',
++ '../../src/list-inl.h',
++ '../../src/list.h',
++ '../../src/locked-queue-inl.h',
++ '../../src/locked-queue.h',
++ '../../src/log-inl.h',
++ '../../src/log-utils.cc',
++ '../../src/log-utils.h',
++ '../../src/log.cc',
++ '../../src/log.h',
++ '../../src/lookup.cc',
++ '../../src/lookup.h',
++ '../../src/macro-assembler.h',
++ '../../src/machine-type.cc',
++ '../../src/machine-type.h',
++ '../../src/messages.cc',
++ '../../src/messages.h',
++ '../../src/msan.h',
++ '../../src/objects-body-descriptors-inl.h',
++ '../../src/objects-body-descriptors.h',
++ '../../src/objects-debug.cc',
++ '../../src/objects-inl.h',
++ '../../src/objects-printer.cc',
++ '../../src/objects.cc',
++ '../../src/objects.h',
++ '../../src/optimizing-compile-dispatcher.cc',
++ '../../src/optimizing-compile-dispatcher.h',
++ '../../src/ostreams.cc',
++ '../../src/ostreams.h',
++ '../../src/parsing/expression-classifier.h',
++ '../../src/parsing/func-name-inferrer.cc',
++ '../../src/parsing/func-name-inferrer.h',
++ '../../src/parsing/json-parser.h',
++ '../../src/parsing/parameter-initializer-rewriter.cc',
++ '../../src/parsing/parameter-initializer-rewriter.h',
++ '../../src/parsing/parser-base.h',
++ '../../src/parsing/parser.cc',
++ '../../src/parsing/parser.h',
++ '../../src/parsing/pattern-rewriter.cc',
++ '../../src/parsing/preparse-data-format.h',
++ '../../src/parsing/preparse-data.cc',
++ '../../src/parsing/preparse-data.h',
++ '../../src/parsing/preparser.cc',
++ '../../src/parsing/preparser.h',
++ '../../src/parsing/rewriter.cc',
++ '../../src/parsing/rewriter.h',
++ '../../src/parsing/scanner-character-streams.cc',
++ '../../src/parsing/scanner-character-streams.h',
++ '../../src/parsing/scanner.cc',
++ '../../src/parsing/scanner.h',
++ '../../src/parsing/token.cc',
++ '../../src/parsing/token.h',
++ '../../src/pending-compilation-error-handler.cc',
++ '../../src/pending-compilation-error-handler.h',
++ '../../src/profiler/allocation-tracker.cc',
++ '../../src/profiler/allocation-tracker.h',
++ '../../src/profiler/circular-queue-inl.h',
++ '../../src/profiler/circular-queue.h',
++ '../../src/profiler/cpu-profiler-inl.h',
++ '../../src/profiler/cpu-profiler.cc',
++ '../../src/profiler/cpu-profiler.h',
++ '../../src/profiler/heap-profiler.cc',
++ '../../src/profiler/heap-profiler.h',
++ '../../src/profiler/heap-snapshot-generator-inl.h',
++ '../../src/profiler/heap-snapshot-generator.cc',
++ '../../src/profiler/heap-snapshot-generator.h',
++ '../../src/profiler/profile-generator-inl.h',
++ '../../src/profiler/profile-generator.cc',
++ '../../src/profiler/profile-generator.h',
++ '../../src/profiler/sampler.cc',
++ '../../src/profiler/sampler.h',
++ '../../src/profiler/strings-storage.cc',
++ '../../src/profiler/strings-storage.h',
++ '../../src/profiler/unbound-queue-inl.h',
++ '../../src/profiler/unbound-queue.h',
++ '../../src/property-descriptor.cc',
++ '../../src/property-descriptor.h',
++ '../../src/property-details.h',
++ '../../src/property.cc',
++ '../../src/property.h',
++ '../../src/prototype.h',
++ '../../src/regexp/bytecodes-irregexp.h',
++ '../../src/regexp/interpreter-irregexp.cc',
++ '../../src/regexp/interpreter-irregexp.h',
++ '../../src/regexp/jsregexp-inl.h',
++ '../../src/regexp/jsregexp.cc',
++ '../../src/regexp/jsregexp.h',
++ '../../src/regexp/regexp-ast.cc',
++ '../../src/regexp/regexp-ast.h',
++ '../../src/regexp/regexp-macro-assembler-irregexp-inl.h',
++ '../../src/regexp/regexp-macro-assembler-irregexp.cc',
++ '../../src/regexp/regexp-macro-assembler-irregexp.h',
++ '../../src/regexp/regexp-macro-assembler-tracer.cc',
++ '../../src/regexp/regexp-macro-assembler-tracer.h',
++ '../../src/regexp/regexp-macro-assembler.cc',
++ '../../src/regexp/regexp-macro-assembler.h',
++ '../../src/regexp/regexp-parser.cc',
++ '../../src/regexp/regexp-parser.h',
++ '../../src/regexp/regexp-stack.cc',
++ '../../src/regexp/regexp-stack.h',
++ '../../src/register-configuration.cc',
++ '../../src/register-configuration.h',
++ '../../src/runtime-profiler.cc',
++ '../../src/runtime-profiler.h',
++ '../../src/runtime/runtime-array.cc',
++ '../../src/runtime/runtime-atomics.cc',
++ '../../src/runtime/runtime-classes.cc',
++ '../../src/runtime/runtime-collections.cc',
++ '../../src/runtime/runtime-compiler.cc',
++ '../../src/runtime/runtime-date.cc',
++ '../../src/runtime/runtime-debug.cc',
++ '../../src/runtime/runtime-forin.cc',
++ '../../src/runtime/runtime-function.cc',
++ '../../src/runtime/runtime-futex.cc',
++ '../../src/runtime/runtime-generator.cc',
++ '../../src/runtime/runtime-i18n.cc',
++ '../../src/runtime/runtime-internal.cc',
++ '../../src/runtime/runtime-interpreter.cc',
++ '../../src/runtime/runtime-json.cc',
++ '../../src/runtime/runtime-literals.cc',
++ '../../src/runtime/runtime-liveedit.cc',
++ '../../src/runtime/runtime-maths.cc',
++ '../../src/runtime/runtime-numbers.cc',
++ '../../src/runtime/runtime-object.cc',
++ '../../src/runtime/runtime-observe.cc',
++ '../../src/runtime/runtime-operators.cc',
++ '../../src/runtime/runtime-proxy.cc',
++ '../../src/runtime/runtime-regexp.cc',
++ '../../src/runtime/runtime-scopes.cc',
++ '../../src/runtime/runtime-simd.cc',
++ '../../src/runtime/runtime-strings.cc',
++ '../../src/runtime/runtime-symbol.cc',
++ '../../src/runtime/runtime-test.cc',
++ '../../src/runtime/runtime-typedarray.cc',
++ '../../src/runtime/runtime-uri.cc',
++ '../../src/runtime/runtime-utils.h',
++ '../../src/runtime/runtime.cc',
++ '../../src/runtime/runtime.h',
++ '../../src/safepoint-table.cc',
++ '../../src/safepoint-table.h',
++ '../../src/signature.h',
++ '../../src/simulator.h',
++ '../../src/small-pointer-list.h',
++ '../../src/snapshot/natives.h',
++ '../../src/snapshot/natives-common.cc',
++ '../../src/snapshot/serialize.cc',
++ '../../src/snapshot/serialize.h',
++ '../../src/snapshot/snapshot.h',
++ '../../src/snapshot/snapshot-common.cc',
++ '../../src/snapshot/snapshot-source-sink.cc',
++ '../../src/snapshot/snapshot-source-sink.h',
++ '../../src/splay-tree.h',
++ '../../src/splay-tree-inl.h',
++ '../../src/startup-data-util.cc',
++ '../../src/startup-data-util.h',
++ '../../src/string-builder.cc',
++ '../../src/string-builder.h',
++ '../../src/string-search.h',
++ '../../src/string-stream.cc',
++ '../../src/string-stream.h',
++ '../../src/strtod.cc',
++ '../../src/strtod.h',
++ '../../src/ic/stub-cache.cc',
++ '../../src/ic/stub-cache.h',
++ '../../src/tracing/trace-event.cc',
++ '../../src/tracing/trace-event.h',
++ '../../src/transitions-inl.h',
++ '../../src/transitions.cc',
++ '../../src/transitions.h',
++ '../../src/type-cache.cc',
++ '../../src/type-cache.h',
++ '../../src/type-feedback-vector-inl.h',
++ '../../src/type-feedback-vector.cc',
++ '../../src/type-feedback-vector.h',
++ '../../src/type-info.cc',
++ '../../src/type-info.h',
++ '../../src/types-inl.h',
++ '../../src/types.cc',
++ '../../src/types.h',
++ '../../src/typing-asm.cc',
++ '../../src/typing-asm.h',
++ '../../src/typing-reset.cc',
++ '../../src/typing-reset.h',
++ '../../src/unicode-inl.h',
++ '../../src/unicode.cc',
++ '../../src/unicode.h',
++ '../../src/unicode-cache-inl.h',
++ '../../src/unicode-cache.h',
++ '../../src/unicode-decoder.cc',
++ '../../src/unicode-decoder.h',
++ '../../src/utils.cc',
++ '../../src/utils.h',
++ '../../src/v8.cc',
++ '../../src/v8.h',
++ '../../src/v8memory.h',
++ '../../src/v8threads.cc',
++ '../../src/v8threads.h',
++ '../../src/vector.h',
++ '../../src/version.cc',
++ '../../src/version.h',
++ '../../src/vm-state-inl.h',
++ '../../src/vm-state.h',
++ '../../src/wasm/asm-wasm-builder.cc',
++ '../../src/wasm/asm-wasm-builder.h',
++ '../../src/wasm/ast-decoder.cc',
++ '../../src/wasm/ast-decoder.h',
++ '../../src/wasm/decoder.h',
++ '../../src/wasm/encoder.cc',
++ '../../src/wasm/encoder.h',
++ '../../src/wasm/module-decoder.cc',
++ '../../src/wasm/module-decoder.h',
++ '../../src/wasm/wasm-js.cc',
++ '../../src/wasm/wasm-js.h',
++ '../../src/wasm/wasm-macro-gen.h',
++ '../../src/wasm/wasm-module.cc',
++ '../../src/wasm/wasm-module.h',
++ '../../src/wasm/wasm-opcodes.cc',
++ '../../src/wasm/wasm-opcodes.h',
++ '../../src/wasm/wasm-result.cc',
++ '../../src/wasm/wasm-result.h',
++ '../../src/zone.cc',
++ '../../src/zone.h',
++ '../../src/zone-allocator.h',
++ '../../src/zone-containers.h',
++ '../../src/third_party/fdlibm/fdlibm.cc',
++ '../../src/third_party/fdlibm/fdlibm.h',
++ ],
++ 'conditions': [
++ ['OS!="win" and remove_v8base_debug_symbols==1', {
++ 'cflags!': ['-g', '-gdwarf-4'],
++ }],
++ ['want_separate_host_toolset==1', {
++ 'toolsets': ['host', 'target'],
++ }, {
++ 'toolsets': ['target'],
++ }],
++ ['v8_target_arch=="arm"', {
++ 'sources': [ ### gcmole(arch:arm) ###
++ '../../src/arm/assembler-arm-inl.h',
++ '../../src/arm/assembler-arm.cc',
++ '../../src/arm/assembler-arm.h',
++ '../../src/arm/builtins-arm.cc',
++ '../../src/arm/code-stubs-arm.cc',
++ '../../src/arm/code-stubs-arm.h',
++ '../../src/arm/codegen-arm.cc',
++ '../../src/arm/codegen-arm.h',
++ '../../src/arm/constants-arm.h',
++ '../../src/arm/constants-arm.cc',
++ '../../src/arm/cpu-arm.cc',
++ '../../src/arm/deoptimizer-arm.cc',
++ '../../src/arm/disasm-arm.cc',
++ '../../src/arm/frames-arm.cc',
++ '../../src/arm/frames-arm.h',
++ '../../src/arm/interface-descriptors-arm.cc',
++ '../../src/arm/interface-descriptors-arm.h',
++ '../../src/arm/macro-assembler-arm.cc',
++ '../../src/arm/macro-assembler-arm.h',
++ '../../src/arm/simulator-arm.cc',
++ '../../src/arm/simulator-arm.h',
++ '../../src/compiler/arm/code-generator-arm.cc',
++ '../../src/compiler/arm/instruction-codes-arm.h',
++ '../../src/compiler/arm/instruction-scheduler-arm.cc',
++ '../../src/compiler/arm/instruction-selector-arm.cc',
++ '../../src/crankshaft/arm/lithium-arm.cc',
++ '../../src/crankshaft/arm/lithium-arm.h',
++ '../../src/crankshaft/arm/lithium-codegen-arm.cc',
++ '../../src/crankshaft/arm/lithium-codegen-arm.h',
++ '../../src/crankshaft/arm/lithium-gap-resolver-arm.cc',
++ '../../src/crankshaft/arm/lithium-gap-resolver-arm.h',
++ '../../src/debug/arm/debug-arm.cc',
++ '../../src/full-codegen/arm/full-codegen-arm.cc',
++ '../../src/ic/arm/access-compiler-arm.cc',
++ '../../src/ic/arm/handler-compiler-arm.cc',
++ '../../src/ic/arm/ic-arm.cc',
++ '../../src/ic/arm/ic-compiler-arm.cc',
++ '../../src/ic/arm/stub-cache-arm.cc',
++ '../../src/regexp/arm/regexp-macro-assembler-arm.cc',
++ '../../src/regexp/arm/regexp-macro-assembler-arm.h',
++ ],
++ }],
++ ['v8_target_arch=="arm64"', {
++ 'sources': [ ### gcmole(arch:arm64) ###
++ '../../src/arm64/assembler-arm64.cc',
++ '../../src/arm64/assembler-arm64.h',
++ '../../src/arm64/assembler-arm64-inl.h',
++ '../../src/arm64/builtins-arm64.cc',
++ '../../src/arm64/codegen-arm64.cc',
++ '../../src/arm64/codegen-arm64.h',
++ '../../src/arm64/code-stubs-arm64.cc',
++ '../../src/arm64/code-stubs-arm64.h',
++ '../../src/arm64/constants-arm64.h',
++ '../../src/arm64/cpu-arm64.cc',
++ '../../src/arm64/decoder-arm64.cc',
++ '../../src/arm64/decoder-arm64.h',
++ '../../src/arm64/decoder-arm64-inl.h',
++ '../../src/arm64/deoptimizer-arm64.cc',
++ '../../src/arm64/disasm-arm64.cc',
++ '../../src/arm64/disasm-arm64.h',
++ '../../src/arm64/frames-arm64.cc',
++ '../../src/arm64/frames-arm64.h',
++ '../../src/arm64/instructions-arm64.cc',
++ '../../src/arm64/instructions-arm64.h',
++ '../../src/arm64/instrument-arm64.cc',
++ '../../src/arm64/instrument-arm64.h',
++ '../../src/arm64/interface-descriptors-arm64.cc',
++ '../../src/arm64/interface-descriptors-arm64.h',
++ '../../src/arm64/macro-assembler-arm64.cc',
++ '../../src/arm64/macro-assembler-arm64.h',
++ '../../src/arm64/macro-assembler-arm64-inl.h',
++ '../../src/arm64/simulator-arm64.cc',
++ '../../src/arm64/simulator-arm64.h',
++ '../../src/arm64/utils-arm64.cc',
++ '../../src/arm64/utils-arm64.h',
++ '../../src/compiler/arm64/code-generator-arm64.cc',
++ '../../src/compiler/arm64/instruction-codes-arm64.h',
++ '../../src/compiler/arm64/instruction-scheduler-arm64.cc',
++ '../../src/compiler/arm64/instruction-selector-arm64.cc',
++ '../../src/crankshaft/arm64/delayed-masm-arm64.cc',
++ '../../src/crankshaft/arm64/delayed-masm-arm64.h',
++ '../../src/crankshaft/arm64/delayed-masm-arm64-inl.h',
++ '../../src/crankshaft/arm64/lithium-arm64.cc',
++ '../../src/crankshaft/arm64/lithium-arm64.h',
++ '../../src/crankshaft/arm64/lithium-codegen-arm64.cc',
++ '../../src/crankshaft/arm64/lithium-codegen-arm64.h',
++ '../../src/crankshaft/arm64/lithium-gap-resolver-arm64.cc',
++ '../../src/crankshaft/arm64/lithium-gap-resolver-arm64.h',
++ '../../src/debug/arm64/debug-arm64.cc',
++ '../../src/full-codegen/arm64/full-codegen-arm64.cc',
++ '../../src/ic/arm64/access-compiler-arm64.cc',
++ '../../src/ic/arm64/handler-compiler-arm64.cc',
++ '../../src/ic/arm64/ic-arm64.cc',
++ '../../src/ic/arm64/ic-compiler-arm64.cc',
++ '../../src/ic/arm64/stub-cache-arm64.cc',
++ '../../src/regexp/arm64/regexp-macro-assembler-arm64.cc',
++ '../../src/regexp/arm64/regexp-macro-assembler-arm64.h',
++ ],
++ }],
++ ['v8_target_arch=="ia32"', {
++ 'sources': [ ### gcmole(arch:ia32) ###
++ '../../src/ia32/assembler-ia32-inl.h',
++ '../../src/ia32/assembler-ia32.cc',
++ '../../src/ia32/assembler-ia32.h',
++ '../../src/ia32/builtins-ia32.cc',
++ '../../src/ia32/code-stubs-ia32.cc',
++ '../../src/ia32/code-stubs-ia32.h',
++ '../../src/ia32/codegen-ia32.cc',
++ '../../src/ia32/codegen-ia32.h',
++ '../../src/ia32/cpu-ia32.cc',
++ '../../src/ia32/deoptimizer-ia32.cc',
++ '../../src/ia32/disasm-ia32.cc',
++ '../../src/ia32/frames-ia32.cc',
++ '../../src/ia32/frames-ia32.h',
++ '../../src/ia32/interface-descriptors-ia32.cc',
++ '../../src/ia32/macro-assembler-ia32.cc',
++ '../../src/ia32/macro-assembler-ia32.h',
++ '../../src/compiler/ia32/code-generator-ia32.cc',
++ '../../src/compiler/ia32/instruction-codes-ia32.h',
++ '../../src/compiler/ia32/instruction-scheduler-ia32.cc',
++ '../../src/compiler/ia32/instruction-selector-ia32.cc',
++ '../../src/crankshaft/ia32/lithium-codegen-ia32.cc',
++ '../../src/crankshaft/ia32/lithium-codegen-ia32.h',
++ '../../src/crankshaft/ia32/lithium-gap-resolver-ia32.cc',
++ '../../src/crankshaft/ia32/lithium-gap-resolver-ia32.h',
++ '../../src/crankshaft/ia32/lithium-ia32.cc',
++ '../../src/crankshaft/ia32/lithium-ia32.h',
++ '../../src/debug/ia32/debug-ia32.cc',
++ '../../src/full-codegen/ia32/full-codegen-ia32.cc',
++ '../../src/ic/ia32/access-compiler-ia32.cc',
++ '../../src/ic/ia32/handler-compiler-ia32.cc',
++ '../../src/ic/ia32/ic-ia32.cc',
++ '../../src/ic/ia32/ic-compiler-ia32.cc',
++ '../../src/ic/ia32/stub-cache-ia32.cc',
++ '../../src/regexp/ia32/regexp-macro-assembler-ia32.cc',
++ '../../src/regexp/ia32/regexp-macro-assembler-ia32.h',
++ ],
++ }],
++ ['v8_target_arch=="x87"', {
++ 'sources': [ ### gcmole(arch:x87) ###
++ '../../src/x87/assembler-x87-inl.h',
++ '../../src/x87/assembler-x87.cc',
++ '../../src/x87/assembler-x87.h',
++ '../../src/x87/builtins-x87.cc',
++ '../../src/x87/code-stubs-x87.cc',
++ '../../src/x87/code-stubs-x87.h',
++ '../../src/x87/codegen-x87.cc',
++ '../../src/x87/codegen-x87.h',
++ '../../src/x87/cpu-x87.cc',
++ '../../src/x87/deoptimizer-x87.cc',
++ '../../src/x87/disasm-x87.cc',
++ '../../src/x87/frames-x87.cc',
++ '../../src/x87/frames-x87.h',
++ '../../src/x87/interface-descriptors-x87.cc',
++ '../../src/x87/macro-assembler-x87.cc',
++ '../../src/x87/macro-assembler-x87.h',
++ '../../src/compiler/x87/code-generator-x87.cc',
++ '../../src/compiler/x87/instruction-codes-x87.h',
++ '../../src/compiler/x87/instruction-scheduler-x87.cc',
++ '../../src/compiler/x87/instruction-selector-x87.cc',
++ '../../src/crankshaft/x87/lithium-codegen-x87.cc',
++ '../../src/crankshaft/x87/lithium-codegen-x87.h',
++ '../../src/crankshaft/x87/lithium-gap-resolver-x87.cc',
++ '../../src/crankshaft/x87/lithium-gap-resolver-x87.h',
++ '../../src/crankshaft/x87/lithium-x87.cc',
++ '../../src/crankshaft/x87/lithium-x87.h',
++ '../../src/debug/x87/debug-x87.cc',
++ '../../src/full-codegen/x87/full-codegen-x87.cc',
++ '../../src/ic/x87/access-compiler-x87.cc',
++ '../../src/ic/x87/handler-compiler-x87.cc',
++ '../../src/ic/x87/ic-x87.cc',
++ '../../src/ic/x87/ic-compiler-x87.cc',
++ '../../src/ic/x87/stub-cache-x87.cc',
++ '../../src/regexp/x87/regexp-macro-assembler-x87.cc',
++ '../../src/regexp/x87/regexp-macro-assembler-x87.h',
++ ],
++ }],
++ ['v8_target_arch=="mips" or v8_target_arch=="mipsel"', {
++ 'sources': [ ### gcmole(arch:mipsel) ###
++ '../../src/mips/assembler-mips.cc',
++ '../../src/mips/assembler-mips.h',
++ '../../src/mips/assembler-mips-inl.h',
++ '../../src/mips/builtins-mips.cc',
++ '../../src/mips/codegen-mips.cc',
++ '../../src/mips/codegen-mips.h',
++ '../../src/mips/code-stubs-mips.cc',
++ '../../src/mips/code-stubs-mips.h',
++ '../../src/mips/constants-mips.cc',
++ '../../src/mips/constants-mips.h',
++ '../../src/mips/cpu-mips.cc',
++ '../../src/mips/deoptimizer-mips.cc',
++ '../../src/mips/disasm-mips.cc',
++ '../../src/mips/frames-mips.cc',
++ '../../src/mips/frames-mips.h',
++ '../../src/mips/interface-descriptors-mips.cc',
++ '../../src/mips/macro-assembler-mips.cc',
++ '../../src/mips/macro-assembler-mips.h',
++ '../../src/mips/simulator-mips.cc',
++ '../../src/mips/simulator-mips.h',
++ '../../src/compiler/mips/code-generator-mips.cc',
++ '../../src/compiler/mips/instruction-codes-mips.h',
++ '../../src/compiler/mips/instruction-scheduler-mips.cc',
++ '../../src/compiler/mips/instruction-selector-mips.cc',
++ '../../src/crankshaft/mips/lithium-codegen-mips.cc',
++ '../../src/crankshaft/mips/lithium-codegen-mips.h',
++ '../../src/crankshaft/mips/lithium-gap-resolver-mips.cc',
++ '../../src/crankshaft/mips/lithium-gap-resolver-mips.h',
++ '../../src/crankshaft/mips/lithium-mips.cc',
++ '../../src/crankshaft/mips/lithium-mips.h',
++ '../../src/full-codegen/mips/full-codegen-mips.cc',
++ '../../src/debug/mips/debug-mips.cc',
++ '../../src/ic/mips/access-compiler-mips.cc',
++ '../../src/ic/mips/handler-compiler-mips.cc',
++ '../../src/ic/mips/ic-mips.cc',
++ '../../src/ic/mips/ic-compiler-mips.cc',
++ '../../src/ic/mips/stub-cache-mips.cc',
++ '../../src/regexp/mips/regexp-macro-assembler-mips.cc',
++ '../../src/regexp/mips/regexp-macro-assembler-mips.h',
++ ],
++ }],
++ ['v8_target_arch=="mips64" or v8_target_arch=="mips64el"', {
++ 'sources': [ ### gcmole(arch:mips64el) ###
++ '../../src/mips64/assembler-mips64.cc',
++ '../../src/mips64/assembler-mips64.h',
++ '../../src/mips64/assembler-mips64-inl.h',
++ '../../src/mips64/builtins-mips64.cc',
++ '../../src/mips64/codegen-mips64.cc',
++ '../../src/mips64/codegen-mips64.h',
++ '../../src/mips64/code-stubs-mips64.cc',
++ '../../src/mips64/code-stubs-mips64.h',
++ '../../src/mips64/constants-mips64.cc',
++ '../../src/mips64/constants-mips64.h',
++ '../../src/mips64/cpu-mips64.cc',
++ '../../src/mips64/deoptimizer-mips64.cc',
++ '../../src/mips64/disasm-mips64.cc',
++ '../../src/mips64/frames-mips64.cc',
++ '../../src/mips64/frames-mips64.h',
++ '../../src/mips64/interface-descriptors-mips64.cc',
++ '../../src/mips64/macro-assembler-mips64.cc',
++ '../../src/mips64/macro-assembler-mips64.h',
++ '../../src/mips64/simulator-mips64.cc',
++ '../../src/mips64/simulator-mips64.h',
++ '../../src/compiler/mips64/code-generator-mips64.cc',
++ '../../src/compiler/mips64/instruction-codes-mips64.h',
++ '../../src/compiler/mips64/instruction-scheduler-mips64.cc',
++ '../../src/compiler/mips64/instruction-selector-mips64.cc',
++ '../../src/crankshaft/mips64/lithium-codegen-mips64.cc',
++ '../../src/crankshaft/mips64/lithium-codegen-mips64.h',
++ '../../src/crankshaft/mips64/lithium-gap-resolver-mips64.cc',
++ '../../src/crankshaft/mips64/lithium-gap-resolver-mips64.h',
++ '../../src/crankshaft/mips64/lithium-mips64.cc',
++ '../../src/crankshaft/mips64/lithium-mips64.h',
++ '../../src/debug/mips64/debug-mips64.cc',
++ '../../src/full-codegen/mips64/full-codegen-mips64.cc',
++ '../../src/ic/mips64/access-compiler-mips64.cc',
++ '../../src/ic/mips64/handler-compiler-mips64.cc',
++ '../../src/ic/mips64/ic-mips64.cc',
++ '../../src/ic/mips64/ic-compiler-mips64.cc',
++ '../../src/ic/mips64/stub-cache-mips64.cc',
++ '../../src/regexp/mips64/regexp-macro-assembler-mips64.cc',
++ '../../src/regexp/mips64/regexp-macro-assembler-mips64.h',
++ ],
++ }],
++ ['v8_target_arch=="x64" or v8_target_arch=="x32"', {
++ 'sources': [ ### gcmole(arch:x64) ###
++ '../../src/crankshaft/x64/lithium-codegen-x64.cc',
++ '../../src/crankshaft/x64/lithium-codegen-x64.h',
++ '../../src/crankshaft/x64/lithium-gap-resolver-x64.cc',
++ '../../src/crankshaft/x64/lithium-gap-resolver-x64.h',
++ '../../src/crankshaft/x64/lithium-x64.cc',
++ '../../src/crankshaft/x64/lithium-x64.h',
++ '../../src/x64/assembler-x64-inl.h',
++ '../../src/x64/assembler-x64.cc',
++ '../../src/x64/assembler-x64.h',
++ '../../src/x64/builtins-x64.cc',
++ '../../src/x64/code-stubs-x64.cc',
++ '../../src/x64/code-stubs-x64.h',
++ '../../src/x64/codegen-x64.cc',
++ '../../src/x64/codegen-x64.h',
++ '../../src/x64/cpu-x64.cc',
++ '../../src/x64/deoptimizer-x64.cc',
++ '../../src/x64/disasm-x64.cc',
++ '../../src/x64/frames-x64.cc',
++ '../../src/x64/frames-x64.h',
++ '../../src/x64/interface-descriptors-x64.cc',
++ '../../src/x64/macro-assembler-x64.cc',
++ '../../src/x64/macro-assembler-x64.h',
++ '../../src/debug/x64/debug-x64.cc',
++ '../../src/full-codegen/x64/full-codegen-x64.cc',
++ '../../src/ic/x64/access-compiler-x64.cc',
++ '../../src/ic/x64/handler-compiler-x64.cc',
++ '../../src/ic/x64/ic-x64.cc',
++ '../../src/ic/x64/ic-compiler-x64.cc',
++ '../../src/ic/x64/stub-cache-x64.cc',
++ '../../src/regexp/x64/regexp-macro-assembler-x64.cc',
++ '../../src/regexp/x64/regexp-macro-assembler-x64.h',
++ ],
++ }],
++ ['v8_target_arch=="x64"', {
++ 'sources': [
++ '../../src/compiler/x64/code-generator-x64.cc',
++ '../../src/compiler/x64/instruction-codes-x64.h',
++ '../../src/compiler/x64/instruction-scheduler-x64.cc',
++ '../../src/compiler/x64/instruction-selector-x64.cc',
++ ],
++ }],
++ ['v8_target_arch=="ppc" or v8_target_arch=="ppc64"', {
++ 'sources': [ ### gcmole(arch:ppc) ###
++ '../../src/compiler/ppc/code-generator-ppc.cc',
++ '../../src/compiler/ppc/instruction-codes-ppc.h',
++ '../../src/compiler/ppc/instruction-scheduler-ppc.cc',
++ '../../src/compiler/ppc/instruction-selector-ppc.cc',
++ '../../src/crankshaft/ppc/lithium-ppc.cc',
++ '../../src/crankshaft/ppc/lithium-ppc.h',
++ '../../src/crankshaft/ppc/lithium-codegen-ppc.cc',
++ '../../src/crankshaft/ppc/lithium-codegen-ppc.h',
++ '../../src/crankshaft/ppc/lithium-gap-resolver-ppc.cc',
++ '../../src/crankshaft/ppc/lithium-gap-resolver-ppc.h',
++ '../../src/debug/ppc/debug-ppc.cc',
++ '../../src/full-codegen/ppc/full-codegen-ppc.cc',
++ '../../src/ic/ppc/access-compiler-ppc.cc',
++ '../../src/ic/ppc/handler-compiler-ppc.cc',
++ '../../src/ic/ppc/ic-ppc.cc',
++ '../../src/ic/ppc/ic-compiler-ppc.cc',
++ '../../src/ic/ppc/stub-cache-ppc.cc',
++ '../../src/ppc/assembler-ppc-inl.h',
++ '../../src/ppc/assembler-ppc.cc',
++ '../../src/ppc/assembler-ppc.h',
++ '../../src/ppc/builtins-ppc.cc',
++ '../../src/ppc/code-stubs-ppc.cc',
++ '../../src/ppc/code-stubs-ppc.h',
++ '../../src/ppc/codegen-ppc.cc',
++ '../../src/ppc/codegen-ppc.h',
++ '../../src/ppc/constants-ppc.h',
++ '../../src/ppc/constants-ppc.cc',
++ '../../src/ppc/cpu-ppc.cc',
++ '../../src/ppc/deoptimizer-ppc.cc',
++ '../../src/ppc/disasm-ppc.cc',
++ '../../src/ppc/frames-ppc.cc',
++ '../../src/ppc/frames-ppc.h',
++ '../../src/ppc/interface-descriptors-ppc.cc',
++ '../../src/ppc/interface-descriptors-ppc.h',
++ '../../src/ppc/macro-assembler-ppc.cc',
++ '../../src/ppc/macro-assembler-ppc.h',
++ '../../src/ppc/simulator-ppc.cc',
++ '../../src/ppc/simulator-ppc.h',
++ '../../src/regexp/ppc/regexp-macro-assembler-ppc.cc',
++ '../../src/regexp/ppc/regexp-macro-assembler-ppc.h',
++ ],
++ }],
++ ['OS=="win"', {
++ 'variables': {
++ 'gyp_generators': '<!(echo $GYP_GENERATORS)',
++ },
++ 'msvs_disabled_warnings': [4351, 4355, 4800],
++ # When building Official, the .lib is too large and exceeds the 2G
++ # limit. This breaks it into multiple pieces to avoid the limit.
++ # See http://crbug.com/485155.
++ 'msvs_shard': 4,
++ }],
++ ['v8_component=="shared_library"', {
++ 'defines': [
++ 'BUILDING_V8_SHARED',
++ 'V8_SHARED',
++ ],
++ }],
++ ['v8_postmortem_support=="true"', {
++ 'sources': [
++ '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc',
++ ]
++ }],
++ ['v8_enable_i18n_support==1', {
++ 'dependencies': [
++ '<(icu_gyp_path):icui18n',
++ '<(icu_gyp_path):icuuc',
++ ]
++ }, { # v8_enable_i18n_support==0
++ 'sources!': [
++ '../../src/i18n.cc',
++ '../../src/i18n.h',
++ ],
++ }],
++ ['OS=="win" and v8_enable_i18n_support==1', {
++ 'dependencies': [
++ '<(icu_gyp_path):icudata',
++ ],
++ }],
++ ['icu_use_data_file_flag==1', {
++ 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE'],
++ }, { # else icu_use_data_file_flag !=1
++ 'conditions': [
++ ['OS=="win"', {
++ 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_SHARED'],
++ }, {
++ 'defines': ['ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC'],
++ }],
++ ],
++ }],
++ ],
++ },
++ {
++ 'target_name': 'v8_libbase_sse2',
++ 'type': 'static_library',
++ 'variables': {
++ 'optimize': 'max',
++ },
++ 'include_dirs+': [
++ '../..',
++ ],
++ 'sources': [
++ '../../src/base/adapters.h',
++ '../../src/base/atomicops.h',
++ '../../src/base/atomicops_internals_arm64_gcc.h',
++ '../../src/base/atomicops_internals_arm_gcc.h',
++ '../../src/base/atomicops_internals_atomicword_compat.h',
++ '../../src/base/atomicops_internals_mac.h',
++ '../../src/base/atomicops_internals_mips_gcc.h',
++ '../../src/base/atomicops_internals_mips64_gcc.h',
++ '../../src/base/atomicops_internals_portable.h',
++ '../../src/base/atomicops_internals_ppc_gcc.h',
++ '../../src/base/atomicops_internals_tsan.h',
++ '../../src/base/atomicops_internals_x86_gcc.cc',
++ '../../src/base/atomicops_internals_x86_gcc.h',
++ '../../src/base/atomicops_internals_x86_msvc.h',
++ '../../src/base/bits.cc',
++ '../../src/base/bits.h',
++ '../../src/base/build_config.h',
++ '../../src/base/compiler-specific.h',
++ '../../src/base/cpu.cc',
++ '../../src/base/cpu.h',
++ '../../src/base/division-by-constant.cc',
++ '../../src/base/division-by-constant.h',
++ '../../src/base/flags.h',
++ '../../src/base/functional.cc',
++ '../../src/base/functional.h',
++ '../../src/base/iterator.h',
++ '../../src/base/lazy-instance.h',
++ '../../src/base/logging.cc',
++ '../../src/base/logging.h',
++ '../../src/base/macros.h',
++ '../../src/base/once.cc',
++ '../../src/base/once.h',
++ '../../src/base/platform/elapsed-timer.h',
++ '../../src/base/platform/time.cc',
++ '../../src/base/platform/time.h',
++ '../../src/base/platform/condition-variable.cc',
++ '../../src/base/platform/condition-variable.h',
++ '../../src/base/platform/mutex.cc',
++ '../../src/base/platform/mutex.h',
++ '../../src/base/platform/platform.h',
++ '../../src/base/platform/semaphore.cc',
++ '../../src/base/platform/semaphore.h',
++ '../../src/base/safe_conversions.h',
++ '../../src/base/safe_conversions_impl.h',
++ '../../src/base/safe_math.h',
++ '../../src/base/safe_math_impl.h',
++ '../../src/base/smart-pointers.h',
++ '../../src/base/sys-info.cc',
++ '../../src/base/sys-info.h',
++ '../../src/base/utils/random-number-generator.cc',
++ '../../src/base/utils/random-number-generator.h',
++ ],
++ 'conditions': [
++ ['want_separate_host_toolset==1', {
++ 'toolsets': ['host', 'target'],
++ }, {
++ 'toolsets': ['target'],
++ }],
++ ['OS=="linux"', {
++ 'conditions': [
++ ['nacl_target_arch=="none"', {
++ 'link_settings': {
++ 'libraries': [
++ '-ldl',
++ '-lrt'
++ ],
++ },
++ }, {
++ 'defines': [
++ 'V8_LIBRT_NOT_AVAILABLE=1',
++ ],
++ }],
++ ],
++ 'sources': [
++ '../../src/base/platform/platform-linux.cc',
++ '../../src/base/platform/platform-posix.cc'
++ ],
++ }
++ ],
++ ['OS=="android"', {
++ 'sources': [
++ '../../src/base/platform/platform-posix.cc'
++ ],
++ 'link_settings': {
++ 'target_conditions': [
++ ['_toolset=="host"', {
++ # Only include libdl and librt on host builds because they
++ # are included by default on Android target builds, and we
++ # don't want to re-include them here since this will change
++ # library order and break (see crbug.com/469973).
++ 'libraries': [
++ '-ldl',
++ '-lrt'
++ ]
++ }]
++ ]
++ },
++ 'conditions': [
++ ['host_os=="mac"', {
++ 'target_conditions': [
++ ['_toolset=="host"', {
++ 'sources': [
++ '../../src/base/platform/platform-macos.cc'
++ ]
++ }, {
++ 'sources': [
++ '../../src/base/platform/platform-linux.cc'
++ ]
++ }],
++ ],
++ }, {
++ 'sources': [
++ '../../src/base/platform/platform-linux.cc'
++ ]
++ }],
++ ],
++ },
++ ],
++ ['OS=="qnx"', {
++ 'link_settings': {
++ 'target_conditions': [
++ ['_toolset=="host" and host_os=="linux"', {
++ 'libraries': [
++ '-lrt'
++ ],
++ }],
++ ['_toolset=="target"', {
++ 'libraries': [
++ '-lbacktrace'
++ ],
++ }],
++ ],
++ },
++ 'sources': [
++ '../../src/base/platform/platform-posix.cc',
++ '../../src/base/qnx-math.h',
++ ],
++ 'target_conditions': [
++ ['_toolset=="host" and host_os=="linux"', {
++ 'sources': [
++ '../../src/base/platform/platform-linux.cc'
++ ],
++ }],
++ ['_toolset=="host" and host_os=="mac"', {
++ 'sources': [
++ '../../src/base/platform/platform-macos.cc'
++ ],
++ }],
++ ['_toolset=="target"', {
++ 'sources': [
++ '../../src/base/platform/platform-qnx.cc'
++ ],
++ }],
++ ],
++ },
++ ],
++ ['OS=="freebsd"', {
++ 'link_settings': {
++ 'libraries': [
++ '-L/usr/local/lib -lexecinfo',
++ ]},
++ 'sources': [
++ '../../src/base/platform/platform-freebsd.cc',
++ '../../src/base/platform/platform-posix.cc'
++ ],
++ }
++ ],
++ ['OS=="openbsd"', {
++ 'link_settings': {
++ 'libraries': [
++ '-L/usr/local/lib -lexecinfo',
++ ]},
++ 'sources': [
++ '../../src/base/platform/platform-openbsd.cc',
++ '../../src/base/platform/platform-posix.cc'
++ ],
++ }
++ ],
++ ['OS=="netbsd"', {
++ 'link_settings': {
++ 'libraries': [
++ '-L/usr/pkg/lib -Wl,-R/usr/pkg/lib -lexecinfo',
++ ]},
++ 'sources': [
++ '../../src/base/platform/platform-openbsd.cc',
++ '../../src/base/platform/platform-posix.cc'
++ ],
++ }
++ ],
++ ['OS=="aix"', {
++ 'sources': [
++ '../../src/base/platform/platform-aix.cc',
++ '../../src/base/platform/platform-posix.cc'
++ ]},
++ ],
++ ['OS=="solaris"', {
++ 'link_settings': {
++ 'libraries': [
++ '-lnsl -lrt',
++ ]},
++ 'sources': [
++ '../../src/base/platform/platform-solaris.cc',
++ '../../src/base/platform/platform-posix.cc'
++ ],
++ }
++ ],
++ ['OS=="mac"', {
++ 'sources': [
++ '../../src/base/platform/platform-macos.cc',
++ '../../src/base/platform/platform-posix.cc'
++ ]},
++ ],
++ ['OS=="win"', {
++ 'defines': [
++ '_CRT_RAND_S' # for rand_s()
++ ],
++ 'variables': {
++ 'gyp_generators': '<!(echo $GYP_GENERATORS)',
++ },
++ 'conditions': [
++ ['gyp_generators=="make"', {
++ 'variables': {
++ 'build_env': '<!(uname -o)',
++ },
++ 'conditions': [
++ ['build_env=="Cygwin"', {
++ 'sources': [
++ '../../src/base/platform/platform-cygwin.cc',
++ '../../src/base/platform/platform-posix.cc'
++ ],
++ }, {
++ 'sources': [
++ '../../src/base/platform/platform-win32.cc',
++ '../../src/base/win32-headers.h',
++ ],
++ }],
++ ],
++ 'link_settings': {
++ 'libraries': [ '-lwinmm', '-lws2_32' ],
++ },
++ }, {
++ 'sources': [
++ '../../src/base/platform/platform-win32.cc',
++ '../../src/base/win32-headers.h',
++ ],
++ 'msvs_disabled_warnings': [4351, 4355, 4800],
++ 'link_settings': {
++ 'libraries': [ '-lwinmm.lib', '-lws2_32.lib' ],
++ },
++ }],
++ ],
++ }],
++ ],
++ },
++ {
++ 'target_name': 'v8_libplatform_sse2',
++ 'type': 'static_library',
++ 'variables': {
++ 'optimize': 'max',
++ },
++ 'dependencies': [
++ 'v8_libbase_sse2',
++ ],
++ 'include_dirs+': [
++ '../..',
++ ],
++ 'sources': [
++ '../../include/libplatform/libplatform.h',
++ '../../src/libplatform/default-platform.cc',
++ '../../src/libplatform/default-platform.h',
++ '../../src/libplatform/task-queue.cc',
++ '../../src/libplatform/task-queue.h',
++ '../../src/libplatform/worker-thread.cc',
++ '../../src/libplatform/worker-thread.h',
++ ],
++ 'conditions': [
++ ['want_separate_host_toolset==1', {
++ 'toolsets': ['host', 'target'],
++ }, {
++ 'toolsets': ['target'],
++ }],
++ ],
++ },
++ {
++ 'target_name': 'natives_blob_sse2',
++ 'type': 'none',
++ 'conditions': [
++ [ 'v8_use_external_startup_data==1', {
++ 'conditions': [
++ ['want_separate_host_toolset==1', {
++ 'dependencies': ['js2c_sse2#host'],
++ }, {
++ 'dependencies': ['js2c_sse2'],
++ }],
++ ],
++ 'actions': [{
++ 'action_name': 'v8_sse2_concatenate_natives_blob',
++ 'inputs': [
++ '../../tools/concatenate-files.py',
++ '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.bin',
++ '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental_sse2.bin',
++ '<(SHARED_INTERMEDIATE_DIR)/libraries-extras_sse2.bin',
++ '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental-extras_sse2.bin',
++ ],
++ 'conditions': [
++ ['want_separate_host_toolset==1', {
++ 'target_conditions': [
++ ['_toolset=="host"', {
++ 'outputs': [
++ '<(PRODUCT_DIR)/natives_blob_host_sse2.bin',
++ ],
++ 'action': [
++ 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob_host_sse2.bin'
++ ],
++ }, {
++ 'outputs': [
++ '<(PRODUCT_DIR)/natives_blob_sse2.bin',
++ ],
++ 'action': [
++ 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob_sse2.bin'
++ ],
++ }],
++ ],
++ }, {
++ 'outputs': [
++ '<(PRODUCT_DIR)/natives_blob_sse2.bin',
++ ],
++ 'action': [
++ 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob_sse2.bin'
++ ],
++ }],
++ ],
++ }],
++ }],
++ ['want_separate_host_toolset==1', {
++ 'toolsets': ['host', 'target'],
++ }, {
++ 'toolsets': ['target'],
++ }],
++ ]
++ },
++ {
++ 'target_name': 'js2c_sse2',
++ 'type': 'none',
++ 'conditions': [
++ ['want_separate_host_toolset==1', {
++ 'toolsets': ['host'],
++ }, {
++ 'toolsets': ['target'],
++ }],
++ ['v8_enable_i18n_support==1', {
++ 'variables': {
++ 'i18n_library_files': [
++ '../../src/js/i18n.js',
++ ],
++ },
++ }, {
++ 'variables': {
++ 'i18n_library_files': [],
++ },
++ }],
++ ],
++ 'variables': {
++ 'library_files': [
++ '../../src/js/macros.py',
++ '../../src/messages.h',
++ '../../src/js/prologue.js',
++ '../../src/js/runtime.js',
++ '../../src/js/v8natives.js',
++ '../../src/js/symbol.js',
++ '../../src/js/array.js',
++ '../../src/js/string.js',
++ '../../src/js/uri.js',
++ '../../src/js/math.js',
++ '../../src/third_party/fdlibm/fdlibm.js',
++ '../../src/js/regexp.js',
++ '../../src/js/arraybuffer.js',
++ '../../src/js/typedarray.js',
++ '../../src/js/iterator-prototype.js',
++ '../../src/js/generator.js',
++ '../../src/js/object-observe.js',
++ '../../src/js/collection.js',
++ '../../src/js/weak-collection.js',
++ '../../src/js/collection-iterator.js',
++ '../../src/js/promise.js',
++ '../../src/js/messages.js',
++ '../../src/js/json.js',
++ '../../src/js/array-iterator.js',
++ '../../src/js/string-iterator.js',
++ '../../src/js/templates.js',
++ '../../src/js/spread.js',
++ '../../src/debug/mirrors.js',
++ '../../src/debug/debug.js',
++ '../../src/debug/liveedit.js',
++ ],
++ 'experimental_library_files': [
++ '../../src/js/macros.py',
++ '../../src/messages.h',
++ '../../src/js/proxy.js',
++ '../../src/js/generator.js',
++ '../../src/js/harmony-atomics.js',
++ '../../src/js/harmony-regexp.js',
++ '../../src/js/harmony-reflect.js',
++ '../../src/js/harmony-object-observe.js',
++ '../../src/js/harmony-sharedarraybuffer.js',
++ '../../src/js/harmony-simd.js',
++ '../../src/js/harmony-species.js',
++ '../../src/js/harmony-unicode-regexps.js',
++ '../../src/js/promise-extra.js',
++ ],
++ 'libraries_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.bin',
++ 'libraries_experimental_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental_sse2.bin',
++ 'libraries_extras_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries-extras_sse2.bin',
++ 'libraries_experimental_extras_bin_file': '<(SHARED_INTERMEDIATE_DIR)/libraries-experimental-extras_sse2.bin',
++ },
++ 'actions': [
++ {
++ 'action_name': 'v8_sse2_js2c',
++ 'inputs': [
++ '../../tools/js2c.py',
++ '<@(library_files)',
++ '<@(i18n_library_files)'
++ ],
++ 'outputs': ['<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.cc'],
++ 'action': [
++ 'python',
++ '../../tools/js2c.py',
++ '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.cc',
++ 'CORE',
++ '<@(library_files)',
++ '<@(i18n_library_files)'
++ ],
++ },
++ {
++ 'action_name': 'v8_sse2_js2c_bin',
++ 'inputs': [
++ '../../tools/js2c.py',
++ '<@(library_files)',
++ '<@(i18n_library_files)'
++ ],
++ 'outputs': ['<@(libraries_bin_file)'],
++ 'action': [
++ 'python',
++ '../../tools/js2c.py',
++ '<(SHARED_INTERMEDIATE_DIR)/libraries_sse2.cc',
++ 'CORE',
++ '<@(library_files)',
++ '<@(i18n_library_files)',
++ '--startup_blob', '<@(libraries_bin_file)',
++ '--nojs',
++ ],
++ },
++ {
++ 'action_name': 'v8_sse2_js2c_experimental',
++ 'inputs': [
++ '../../tools/js2c.py',
++ '<@(experimental_library_files)',
++ ],
++ 'outputs': ['<(SHARED_INTERMEDIATE_DIR)/experimental-libraries_sse2.cc'],
++ 'action': [
++ 'python',
++ '../../tools/js2c.py',
++ '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries_sse2.cc',
++ 'EXPERIMENTAL',
++ '<@(experimental_library_files)'
++ ],
++ },
++ {
++ 'action_name': 'v8_sse2_js2c_experimental_bin',
++ 'inputs': [
++ '../../tools/js2c.py',
++ '<@(experimental_library_files)',
++ ],
++ 'outputs': ['<@(libraries_experimental_bin_file)'],
++ 'action': [
++ 'python',
++ '../../tools/js2c.py',
++ '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries_sse2.cc',
++ 'EXPERIMENTAL',
++ '<@(experimental_library_files)',
++ '--startup_blob', '<@(libraries_experimental_bin_file)',
++ '--nojs',
++ ],
++ },
++ {
++ 'action_name': 'v8_sse2_js2c_extras',
++ 'inputs': [
++ '../../tools/js2c.py',
++ '<@(v8_extra_library_files)',
++ ],
++ 'outputs': ['<(SHARED_INTERMEDIATE_DIR)/extras-libraries_sse2.cc'],
++ 'action': [
++ 'python',
++ '../../tools/js2c.py',
++ '<(SHARED_INTERMEDIATE_DIR)/extras-libraries_sse2.cc',
++ 'EXTRAS',
++ '<@(v8_extra_library_files)',
++ ],
++ },
++ {
++ 'action_name': 'v8_sse2_js2c_extras_bin',
++ 'inputs': [
++ '../../tools/js2c.py',
++ '<@(v8_extra_library_files)',
++ ],
++ 'outputs': ['<@(libraries_extras_bin_file)'],
++ 'action': [
++ 'python',
++ '../../tools/js2c.py',
++ '<(SHARED_INTERMEDIATE_DIR)/extras-libraries_sse2.cc',
++ 'EXTRAS',
++ '<@(v8_extra_library_files)',
++ '--startup_blob', '<@(libraries_extras_bin_file)',
++ '--nojs',
++ ],
++ },
++ {
++ 'action_name': 'v8_sse2_js2c_experimental_extras',
++ 'inputs': [
++ '../../tools/js2c.py',
++ '<@(v8_experimental_extra_library_files)',
++ ],
++ 'outputs': [
++ '<(SHARED_INTERMEDIATE_DIR)/experimental-extras-libraries_sse2.cc',
++ ],
++ 'action': [
++ 'python',
++ '../../tools/js2c.py',
++ '<(SHARED_INTERMEDIATE_DIR)/experimental-extras-libraries_sse2.cc',
++ 'EXPERIMENTAL_EXTRAS',
++ '<@(v8_experimental_extra_library_files)',
++ ],
++ },
++ {
++ 'action_name': 'v8_sse2_js2c_experimental_extras_bin',
++ 'inputs': [
++ '../../tools/js2c.py',
++ '<@(v8_experimental_extra_library_files)',
++ ],
++ 'outputs': ['<@(libraries_experimental_extras_bin_file)'],
++ 'action': [
++ 'python',
++ '../../tools/js2c.py',
++ '<(SHARED_INTERMEDIATE_DIR)/experimental-extras-libraries_sse2.cc',
++ 'EXPERIMENTAL_EXTRAS',
++ '<@(v8_experimental_extra_library_files)',
++ '--startup_blob', '<@(libraries_experimental_extras_bin_file)',
++ '--nojs',
++ ],
++ },
++ ],
++ },
++ {
++ 'target_name': 'postmortem-metadata_sse2',
++ 'type': 'none',
++ 'variables': {
++ 'heapobject_files': [
++ '../../src/objects.h',
++ '../../src/objects-inl.h',
++ ],
++ },
++ 'actions': [
++ {
++ 'action_name': 'v8_sse2_gen-postmortem-metadata',
++ 'inputs': [
++ '../../tools/gen-postmortem-metadata.py',
++ '<@(heapobject_files)',
++ ],
++ 'outputs': [
++ '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc',
++ ],
++ 'action': [
++ 'python',
++ '../../tools/gen-postmortem-metadata.py',
++ '<@(_outputs)',
++ '<@(heapobject_files)'
++ ]
++ }
++ ]
++ },
++ {
++ 'target_name': 'mksnapshot_sse2',
++ 'type': 'executable',
++ 'dependencies': ['v8_base_sse2', 'v8_nosnapshot_sse2', 'v8_libplatform_sse2'],
++ 'include_dirs+': [
++ '../..',
++ ],
++ 'sources': [
++ '../../src/snapshot/mksnapshot.cc',
++ ],
++ 'conditions': [
++ ['v8_enable_i18n_support==1', {
++ 'dependencies': [
++ '<(icu_gyp_path):icui18n',
++ '<(icu_gyp_path):icuuc',
++ ]
++ }],
++ ['want_separate_host_toolset==1', {
++ 'toolsets': ['host'],
++ }, {
++ 'toolsets': ['target'],
++ }],
++ ],
++ },
++ ],
++}
+diff -Nur qtwebengine-opensource-src-5.7.0/src/core/core_module.pro qtwebengine-opensource-src-5.7.0-no-sse2/src/core/core_module.pro
+--- qtwebengine-opensource-src-5.7.0/src/core/core_module.pro 2016-06-07 06:20:06.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/core/core_module.pro 2016-07-17 18:06:40.383813518 +0200
+@@ -9,6 +9,29 @@
+ error("Could not find the linking information that gyp should have generated.")
+ }
+
++# find the shared libraries in the link line
++# remove those in lib/sse2 that are only replacements for the normal ones
++# collect all shared libraries so they can be installed
++for(private_lib, LIBS_PRIVATE) {
++ contains(private_lib, .*\.so) {
++ contains(private_lib, .*/lib/sse2/.*) {
++ LIBS_PRIVATE -= $$private_lib
++ shlibs_sse2 += $$private_lib
++ } else {
++ shlibs += $$private_lib
++ }
++ }
++}
++
++# set the shared libraries to be installed
++# add an rpath to their installation location
++shlib_install_path = $$[QT_INSTALL_LIBS]/qtwebengine
++!isEmpty(shlibs) {
++ shlibs.files += $$shlibs
++ shlibs_sse2.files += $$shlibs_sse2
++ LIBS_PRIVATE += -Wl,--rpath,$$shlib_install_path
++}
++
+ load(qt_module)
+
+ api_library_name = qtwebenginecoreapi$$qtPlatformTargetSuffix()
+@@ -72,7 +95,12 @@
+ locales.path = $$[QT_INSTALL_TRANSLATIONS]/qtwebengine_locales
+ resources.CONFIG += no_check_exist
+ resources.path = $$[QT_INSTALL_DATA]/resources
+- INSTALLS += locales resources
++ # install the shared libraries
++ shlibs.CONFIG += no_check_exist
++ shlibs.path = $$shlib_install_path
++ shlibs_sse2.CONFIG += no_check_exist
++ shlibs_sse2.path = $$shlib_install_path/sse2
++ INSTALLS += locales resources shlibs shlibs_sse2
+
+ !use?(system_icu) {
+ icu.CONFIG += no_check_exist
+diff -Nur qtwebengine-opensource-src-5.7.0/src/core/qtwebengine.gypi qtwebengine-opensource-src-5.7.0-no-sse2/src/core/qtwebengine.gypi
+--- qtwebengine-opensource-src-5.7.0/src/core/qtwebengine.gypi 2016-06-07 06:20:06.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-no-sse2/src/core/qtwebengine.gypi 2016-07-17 18:06:40.391813562 +0200
+@@ -60,6 +60,11 @@
+ },
+ },
+ 'conditions': [
++ ['target_arch=="ia32"', {
++ 'dependencies': [
++ '<(chromium_src_dir)/v8/tools/gyp/v8_sse2.gyp:v8_sse2',
++ ],
++ }],
+ ['OS=="win" and win_use_allocator_shim==1', {
+ 'dependencies': [
+ '<(chromium_src_dir)/base/allocator/allocator.gyp:allocator',
diff --git a/qtwebengine-opensource-src-5.7.0-system-icu-utf.patch b/qtwebengine-opensource-src-5.7.0-system-icu-utf.patch
new file mode 100644
index 0000000..80b53a4
--- /dev/null
+++ b/qtwebengine-opensource-src-5.7.0-system-icu-utf.patch
@@ -0,0 +1,362 @@
+diff -ur qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/base.gypi qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/base.gypi
+--- qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/base.gypi 2016-07-17 16:52:03.641799106 +0200
++++ qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/base.gypi 2016-07-17 17:20:50.666600419 +0200
+@@ -632,8 +632,6 @@
+ 'third_party/dmg_fp/dmg_fp.h',
+ 'third_party/dmg_fp/dtoa_wrapper.cc',
+ 'third_party/dmg_fp/g_fmt.cc',
+- 'third_party/icu/icu_utf.cc',
+- 'third_party/icu/icu_utf.h',
+ 'third_party/superfasthash/superfasthash.c',
+ 'third_party/xdg_mime/xdgmime.h',
+ 'thread_task_runner_handle.cc',
+diff -ur qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/BUILD.gn
+--- qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn 2016-07-17 16:52:03.642799111 +0200
++++ qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/BUILD.gn 2016-07-17 17:20:50.667600425 +0200
+@@ -741,8 +741,6 @@
+ "third_party/dmg_fp/dmg_fp.h",
+ "third_party/dmg_fp/dtoa_wrapper.cc",
+ "third_party/dmg_fp/g_fmt.cc",
+- "third_party/icu/icu_utf.cc",
+- "third_party/icu/icu_utf.h",
+ "third_party/superfasthash/superfasthash.c",
+ "thread_task_runner_handle.cc",
+ "thread_task_runner_handle.h",
+diff -ur qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/files/file_path.cc qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/files/file_path.cc
+--- qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/files/file_path.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/files/file_path.cc 2016-07-17 17:20:50.668600430 +0200
+@@ -18,7 +18,7 @@
+
+ #if defined(OS_MACOSX)
+ #include "base/mac/scoped_cftyperef.h"
+-#include "base/third_party/icu/icu_utf.h"
++#include <unicode/utf.h>
+ #endif
+
+ #if defined(OS_WIN)
+@@ -1138,9 +1138,9 @@
+ int* index) {
+ int codepoint = 0;
+ while (*index < length && codepoint == 0) {
+- // CBU8_NEXT returns a value < 0 in error cases. For purposes of string
++ // U8_NEXT returns a value < 0 in error cases. For purposes of string
+ // comparison, we just use that value and flag it with DCHECK.
+- CBU8_NEXT(string, *index, length, codepoint);
++ U8_NEXT(string, *index, length, codepoint);
+ DCHECK_GT(codepoint, 0);
+ if (codepoint > 0) {
+ // Check if there is a subtable for this upper byte.
+diff -ur qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/json/json_parser.cc qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/json/json_parser.cc
+--- qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/json/json_parser.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/json/json_parser.cc 2016-07-17 17:25:23.443128277 +0200
+@@ -15,7 +15,7 @@
+ #include "base/strings/stringprintf.h"
+ #include "base/strings/utf_string_conversion_utils.h"
+ #include "base/strings/utf_string_conversions.h"
+-#include "base/third_party/icu/icu_utf.h"
++#include <unicode/utf.h>
+ #include "base/values.h"
+
+ namespace base {
+@@ -625,8 +625,8 @@
+ int32_t next_char = 0;
+
+ while (CanConsume(1)) {
+- pos_ = start_pos_ + index_; // CBU8_NEXT is postcrement.
+- CBU8_NEXT(start_pos_, index_, length, next_char);
++ pos_ = start_pos_ + index_; // U8_NEXT is postcrement.
++ U8_NEXT(start_pos_, index_, length, next_char);
+ if (next_char < 0 || !IsValidCharacter(next_char)) {
+ ReportError(JSONReader::JSON_UNSUPPORTED_ENCODING, 1);
+ return false;
+@@ -719,7 +719,7 @@
+ return false;
+ }
+ } else if (next_char == '"') {
+- --index_; // Rewind by one because of CBU8_NEXT.
++ --index_; // Rewind by one because of U8_NEXT.
+ out->Swap(&string);
+ return true;
+ } else {
+@@ -759,10 +759,10 @@
+
+ // If this is a high surrogate, consume the next code unit to get the
+ // low surrogate.
+- if (CBU16_IS_SURROGATE(code_unit16_high)) {
++ if (U16_IS_SURROGATE(code_unit16_high)) {
+ // Make sure this is the high surrogate. If not, it's an encoding
+ // error.
+- if (!CBU16_IS_SURROGATE_LEAD(code_unit16_high))
++ if (!U16_IS_SURROGATE_LEAD(code_unit16_high))
+ return false;
+
+ // Make sure that the token has more characters to consume the
+@@ -779,24 +779,24 @@
+
+ NextNChars(3);
+
+- if (!CBU16_IS_TRAIL(code_unit16_low)) {
++ if (!U16_IS_TRAIL(code_unit16_low)) {
+ return false;
+ }
+
+ uint32_t code_point =
+- CBU16_GET_SUPPLEMENTARY(code_unit16_high, code_unit16_low);
++ U16_GET_SUPPLEMENTARY(code_unit16_high, code_unit16_low);
+ if (!IsValidCharacter(code_point))
+ return false;
+
+ offset = 0;
+- CBU8_APPEND_UNSAFE(code_unit8, offset, code_point);
++ U8_APPEND_UNSAFE(code_unit8, offset, code_point);
+ } else {
+ // Not a surrogate.
+- DCHECK(CBU16_IS_SINGLE(code_unit16_high));
++ DCHECK(U16_IS_SINGLE(code_unit16_high));
+ if (!IsValidCharacter(code_unit16_high))
+ return false;
+
+- CBU8_APPEND_UNSAFE(code_unit8, offset, code_unit16_high);
++ U8_APPEND_UNSAFE(code_unit8, offset, code_unit16_high);
+ }
+
+ dest_string->append(code_unit8);
+@@ -813,9 +813,9 @@
+ } else {
+ char utf8_units[4] = { 0 };
+ int offset = 0;
+- CBU8_APPEND_UNSAFE(utf8_units, offset, point);
++ U8_APPEND_UNSAFE(utf8_units, offset, point);
+ dest->Convert();
+- // CBU8_APPEND_UNSAFE can overwrite up to 4 bytes, so utf8_units may not be
++ // U8_APPEND_UNSAFE can overwrite up to 4 bytes, so utf8_units may not be
+ // zero terminated at this point. |offset| contains the correct length.
+ dest->AppendString(std::string(utf8_units, offset));
+ }
+diff -ur qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/json/string_escape.cc qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/json/string_escape.cc
+--- qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/json/string_escape.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/json/string_escape.cc 2016-07-17 17:20:50.668600430 +0200
+@@ -14,7 +14,7 @@
+ #include "base/strings/stringprintf.h"
+ #include "base/strings/utf_string_conversion_utils.h"
+ #include "base/strings/utf_string_conversions.h"
+-#include "base/third_party/icu/icu_utf.h"
++#include <unicode/utf.h>
+
+ namespace base {
+
+diff -ur qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/pattern.cc qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/strings/pattern.cc
+--- qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/pattern.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/strings/pattern.cc 2016-07-17 17:20:50.669600436 +0200
+@@ -4,13 +4,13 @@
+
+ #include "base/strings/pattern.h"
+
+-#include "base/third_party/icu/icu_utf.h"
++#include <unicode/utf.h>
+
+ namespace base {
+
+ namespace {
+
+-static bool IsWildcard(base_icu::UChar32 character) {
++static bool IsWildcard(UChar32 character) {
+ return character == '*' || character == '?';
+ }
+
+@@ -37,9 +37,9 @@
+ // Check if the chars match, if so, increment the ptrs.
+ const CHAR* pattern_next = *pattern;
+ const CHAR* string_next = *string;
+- base_icu::UChar32 pattern_char = next(&pattern_next, pattern_end);
++ UChar32 pattern_char = next(&pattern_next, pattern_end);
+ if (pattern_char == next(&string_next, string_end) &&
+- pattern_char != CBU_SENTINEL) {
++ pattern_char != U_SENTINEL) {
+ *pattern = pattern_next;
+ *string = string_next;
+ } else {
+@@ -133,20 +133,20 @@
+ }
+
+ struct NextCharUTF8 {
+- base_icu::UChar32 operator()(const char** p, const char* end) {
+- base_icu::UChar32 c;
++ UChar32 operator()(const char** p, const char* end) {
++ UChar32 c;
+ int offset = 0;
+- CBU8_NEXT(*p, offset, end - *p, c);
++ U8_NEXT(*p, offset, end - *p, c);
+ *p += offset;
+ return c;
+ }
+ };
+
+ struct NextCharUTF16 {
+- base_icu::UChar32 operator()(const char16** p, const char16* end) {
+- base_icu::UChar32 c;
++ UChar32 operator()(const char16** p, const char16* end) {
++ UChar32 c;
+ int offset = 0;
+- CBU16_NEXT(*p, offset, end - *p, c);
++ U16_NEXT(*p, offset, end - *p, c);
+ *p += offset;
+ return c;
+ }
+diff -ur qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_split.cc qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_split.cc
+--- qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_split.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_split.cc 2016-07-17 17:20:50.669600436 +0200
+@@ -8,7 +8,7 @@
+
+ #include "base/logging.h"
+ #include "base/strings/string_util.h"
+-#include "base/third_party/icu/icu_utf.h"
++#include <unicode/utf.h>
+
+ namespace base {
+
+diff -ur qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_util.cc qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_util.cc
+--- qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/string_util.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/strings/string_util.cc 2016-07-17 17:29:39.032552674 +0200
+@@ -26,7 +26,7 @@
+ #include "base/strings/string_split.h"
+ #include "base/strings/utf_string_conversion_utils.h"
+ #include "base/strings/utf_string_conversions.h"
+-#include "base/third_party/icu/icu_utf.h"
++#include <unicode/utf.h>
+ #include "build/build_config.h"
+
+ namespace base {
+@@ -358,19 +358,19 @@
+ }
+ DCHECK_LE(byte_size,
+ static_cast<uint32_t>(std::numeric_limits<int32_t>::max()));
+- // Note: This cast is necessary because CBU8_NEXT uses int32_ts.
++ // Note: This cast is necessary because U8_NEXT uses int32_ts.
+ int32_t truncation_length = static_cast<int32_t>(byte_size);
+ int32_t char_index = truncation_length - 1;
+ const char* data = input.data();
+
+- // Using CBU8, we will move backwards from the truncation point
++ // Using U8, we will move backwards from the truncation point
+ // to the beginning of the string looking for a valid UTF8
+ // character. Once a full UTF8 character is found, we will
+ // truncate the string to the end of that character.
+ while (char_index >= 0) {
+ int32_t prev = char_index;
+- base_icu::UChar32 code_point = 0;
+- CBU8_NEXT(data, char_index, truncation_length, code_point);
++ UChar32 code_point = 0;
++ U8_NEXT(data, char_index, truncation_length, code_point);
+ if (!IsValidCharacter(code_point) ||
+ !IsValidCodepoint(code_point)) {
+ char_index = prev - 1;
+@@ -523,7 +523,7 @@
+
+ while (char_index < src_len) {
+ int32_t code_point;
+- CBU8_NEXT(src, char_index, src_len, code_point);
++ U8_NEXT(src, char_index, src_len, code_point);
+ if (!IsValidCharacter(code_point))
+ return false;
+ }
+diff -ur qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc
+--- qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/base/strings/utf_string_conversion_utils.cc 2016-07-17 17:31:29.363164013 +0200
+@@ -4,7 +4,7 @@
+
+ #include "base/strings/utf_string_conversion_utils.h"
+
+-#include "base/third_party/icu/icu_utf.h"
++#include <unicode/utf.h>
+
+ namespace base {
+
+@@ -18,7 +18,7 @@
+ // use a signed type for code_point. But this function returns false
+ // on error anyway, so code_point_out is unsigned.
+ int32_t code_point;
+- CBU8_NEXT(src, *char_index, src_len, code_point);
++ U8_NEXT(src, *char_index, src_len, code_point);
+ *code_point_out = static_cast<uint32_t>(code_point);
+
+ // The ICU macro above moves to the next char, we want to point to the last
+@@ -33,16 +33,16 @@
+ int32_t src_len,
+ int32_t* char_index,
+ uint32_t* code_point) {
+- if (CBU16_IS_SURROGATE(src[*char_index])) {
+- if (!CBU16_IS_SURROGATE_LEAD(src[*char_index]) ||
++ if (U16_IS_SURROGATE(src[*char_index])) {
++ if (!U16_IS_SURROGATE_LEAD(src[*char_index]) ||
+ *char_index + 1 >= src_len ||
+- !CBU16_IS_TRAIL(src[*char_index + 1])) {
++ !U16_IS_TRAIL(src[*char_index + 1])) {
+ // Invalid surrogate pair.
+ return false;
+ }
+
+ // Valid surrogate pair.
+- *code_point = CBU16_GET_SUPPLEMENTARY(src[*char_index],
++ *code_point = U16_GET_SUPPLEMENTARY(src[*char_index],
+ src[*char_index + 1]);
+ (*char_index)++;
+ } else {
+@@ -76,30 +76,30 @@
+ }
+
+
+- // CBU8_APPEND_UNSAFE can append up to 4 bytes.
++ // U8_APPEND_UNSAFE can append up to 4 bytes.
+ size_t char_offset = output->length();
+ size_t original_char_offset = char_offset;
+- output->resize(char_offset + CBU8_MAX_LENGTH);
++ output->resize(char_offset + U8_MAX_LENGTH);
+
+- CBU8_APPEND_UNSAFE(&(*output)[0], char_offset, code_point);
++ U8_APPEND_UNSAFE(&(*output)[0], char_offset, code_point);
+
+- // CBU8_APPEND_UNSAFE will advance our pointer past the inserted character, so
++ // U8_APPEND_UNSAFE will advance our pointer past the inserted character, so
+ // it will represent the new length of the string.
+ output->resize(char_offset);
+ return char_offset - original_char_offset;
+ }
+
+ size_t WriteUnicodeCharacter(uint32_t code_point, string16* output) {
+- if (CBU16_LENGTH(code_point) == 1) {
++ if (U16_LENGTH(code_point) == 1) {
+ // Thie code point is in the Basic Multilingual Plane (BMP).
+ output->push_back(static_cast<char16>(code_point));
+ return 1;
+ }
+ // Non-BMP characters use a double-character encoding.
+ size_t char_offset = output->length();
+- output->resize(char_offset + CBU16_MAX_LENGTH);
+- CBU16_APPEND_UNSAFE(&(*output)[0], char_offset, code_point);
+- return CBU16_MAX_LENGTH;
++ output->resize(char_offset + U16_MAX_LENGTH);
++ U16_APPEND_UNSAFE(&(*output)[0], char_offset, code_point);
++ return U16_MAX_LENGTH;
+ }
+
+ // Generalized Unicode converter -----------------------------------------------
+diff -ur qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc
+--- qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-icu-utf/src/3rdparty/chromium/ui/gfx/utf16_indexing.cc 2016-07-17 17:20:50.687600537 +0200
+@@ -5,13 +5,13 @@
+ #include "ui/gfx/utf16_indexing.h"
+
+ #include "base/logging.h"
+-#include "base/third_party/icu/icu_utf.h"
++#include <unicode/utf.h>
+
+ namespace gfx {
+
+ bool IsValidCodePointIndex(const base::string16& s, size_t index) {
+ return index == 0 || index == s.length() ||
+- !(CBU16_IS_TRAIL(s[index]) && CBU16_IS_LEAD(s[index - 1]));
++ !(U16_IS_TRAIL(s[index]) && U16_IS_LEAD(s[index - 1]));
+ }
+
+ ptrdiff_t UTF16IndexToOffset(const base::string16& s, size_t base, size_t pos) {
diff --git a/qtwebengine-opensource-src-5.7.0-system-nspr-prtime.patch b/qtwebengine-opensource-src-5.7.0-system-nspr-prtime.patch
new file mode 100644
index 0000000..04933fc
--- /dev/null
+++ b/qtwebengine-opensource-src-5.7.0-system-nspr-prtime.patch
@@ -0,0 +1,48 @@
+diff -ur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/base/base.gypi qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/base.gypi
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/base/base.gypi 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/base.gypi 2016-07-17 16:52:03.641799106 +0200
+@@ -634,8 +634,6 @@
+ 'third_party/dmg_fp/g_fmt.cc',
+ 'third_party/icu/icu_utf.cc',
+ 'third_party/icu/icu_utf.h',
+- 'third_party/nspr/prtime.cc',
+- 'third_party/nspr/prtime.h',
+ 'third_party/superfasthash/superfasthash.c',
+ 'third_party/xdg_mime/xdgmime.h',
+ 'thread_task_runner_handle.cc',
+diff -ur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/base/BUILD.gn qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/base/BUILD.gn 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/BUILD.gn 2016-07-17 16:52:03.642799111 +0200
+@@ -743,8 +743,6 @@
+ "third_party/dmg_fp/g_fmt.cc",
+ "third_party/icu/icu_utf.cc",
+ "third_party/icu/icu_utf.h",
+- "third_party/nspr/prtime.cc",
+- "third_party/nspr/prtime.h",
+ "third_party/superfasthash/superfasthash.c",
+ "thread_task_runner_handle.cc",
+ "thread_task_runner_handle.h",
+diff -ur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/base/time/pr_time_unittest.cc qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/time/pr_time_unittest.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/base/time/pr_time_unittest.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/time/pr_time_unittest.cc 2016-07-17 16:55:11.749868819 +0200
+@@ -7,7 +7,7 @@
+
+ #include "base/compiler_specific.h"
+ #include "base/macros.h"
+-#include "base/third_party/nspr/prtime.h"
++#include <nspr4/prtime.h>
+ #include "base/time/time.h"
+ #include "build/build_config.h"
+ #include "testing/gtest/include/gtest/gtest.h"
+diff -ur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/base/time/time.cc qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/time/time.cc
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/base/time/time.cc 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-system-nspr-prtime/src/3rdparty/chromium/base/time/time.cc 2016-07-17 16:55:54.895115802 +0200
+@@ -14,7 +14,7 @@
+ #include "base/logging.h"
+ #include "base/macros.h"
+ #include "base/strings/stringprintf.h"
+-#include "base/third_party/nspr/prtime.h"
++#include <nspr4/prtime.h>
+ #include "build/build_config.h"
+
+ namespace base {
diff --git a/qtwebengine-opensource-src-5.7.0-webrtc-neon.patch b/qtwebengine-opensource-src-5.7.0-webrtc-neon.patch
new file mode 100644
index 0000000..33e0df9
--- /dev/null
+++ b/qtwebengine-opensource-src-5.7.0-webrtc-neon.patch
@@ -0,0 +1,21 @@
+diff -ur qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/webrtc/modules/video_processing/video_processing.gypi qtwebengine-opensource-src-5.7.0-webrtc-neon/src/3rdparty/chromium/third_party/webrtc/modules/video_processing/video_processing.gypi
+--- qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/webrtc/modules/video_processing/video_processing.gypi 2016-05-26 15:53:47.000000000 +0200
++++ qtwebengine-opensource-src-5.7.0-webrtc-neon/src/3rdparty/chromium/third_party/webrtc/modules/video_processing/video_processing.gypi 2016-07-18 14:29:24.841980563 +0200
+@@ -47,7 +47,7 @@
+ ['target_arch=="ia32" or target_arch=="x64"', {
+ 'dependencies': [ 'video_processing_sse2', ],
+ }],
+- ['target_arch=="arm" or target_arch == "arm64"', {
++ ['build_with_neon==1', {
+ 'dependencies': [ 'video_processing_neon', ],
+ }],
+ ],
+@@ -77,7 +77,7 @@
+ },
+ ],
+ }],
+- ['target_arch=="arm" or target_arch == "arm64"', {
++ ['build_with_neon==1', {
+ 'targets': [
+ {
+ 'target_name': 'video_processing_neon',
diff --git a/qtwebengine-opensource-src-5.7.1-arm-fpu-fix.patch b/qtwebengine-opensource-src-5.7.1-arm-fpu-fix.patch
new file mode 100644
index 0000000..04ae6e2
--- /dev/null
+++ b/qtwebengine-opensource-src-5.7.1-arm-fpu-fix.patch
@@ -0,0 +1,12 @@
+diff -ur qtwebengine-opensource-src-5.7.1/src/core/gyp_run.pro qtwebengine-opensource-src-5.7.1-arm-fpu-fix/src/core/gyp_run.pro
+--- qtwebengine-opensource-src-5.7.1/src/core/gyp_run.pro 2016-11-09 06:28:31.000000000 +0100
++++ qtwebengine-opensource-src-5.7.1-arm-fpu-fix/src/core/gyp_run.pro 2016-12-03 16:38:33.531711958 +0100
+@@ -80,7 +80,7 @@
+ # we use arm_neon_optional for ARMv7 and newer and let chromium decide
+ # about the mfpu option.
+ contains(MFPU, ".*neon.*"): GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=1
+- else:!lessThan(MARMV, 7): GYP_CONFIG += arm_neon=0 arm_neon_optional=1
++ else:!lessThan(MARMV, 7): GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=0 arm_neon_optional=1
+ else: GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=0 arm_neon_optional=0
+ } else {
+ # Chromium defaults to arm_neon=1, Qt does not.
diff --git a/qtwebengine-opensource-src-5.7.1-no-neon.patch b/qtwebengine-opensource-src-5.7.1-no-neon.patch
new file mode 100644
index 0000000..d520694
--- /dev/null
+++ b/qtwebengine-opensource-src-5.7.1-no-neon.patch
@@ -0,0 +1,15 @@
+diff -ur qtwebengine-opensource-src-5.7.1/src/core/gyp_run.pro qtwebengine-opensource-src-5.7.1-no-neon/src/core/gyp_run.pro
+--- qtwebengine-opensource-src-5.7.1/src/core/gyp_run.pro 2016-11-09 06:28:31.000000000 +0100
++++ qtwebengine-opensource-src-5.7.1-no-neon/src/core/gyp_run.pro 2016-12-03 16:36:39.039443117 +0100
+@@ -80,7 +80,10 @@
+ # we use arm_neon_optional for ARMv7 and newer and let chromium decide
+ # about the mfpu option.
+ contains(MFPU, ".*neon.*"): GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=1
+- else:!lessThan(MARMV, 7): GYP_CONFIG += arm_neon=0 arm_neon_optional=1
++ # Disable NEON entirely for now, because it fails to build:
++ # https://bugzilla.redhat.com/show_bug.cgi?id=1282495
++ # (This line was also missing the required arm_fpu flag, which I added.)
++ # else:!lessThan(MARMV, 7): GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=0 arm_neon_optional=1
+ else: GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=0 arm_neon_optional=0
+ } else {
+ # Chromium defaults to arm_neon=1, Qt does not.
diff --git a/qtwebengine-opensource-src-5.7.1-openmax-dl-neon.patch b/qtwebengine-opensource-src-5.7.1-openmax-dl-neon.patch
new file mode 100644
index 0000000..08ff6e5
--- /dev/null
+++ b/qtwebengine-opensource-src-5.7.1-openmax-dl-neon.patch
@@ -0,0 +1,98 @@
+diff -ur qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/openmax_dl/dl/dl.gyp qtwebengine-opensource-src-5.7.1-openmax-dl-neon/src/3rdparty/chromium/third_party/openmax_dl/dl/dl.gyp
+--- qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/openmax_dl/dl/dl.gyp 2016-11-07 15:46:18.000000000 +0100
++++ qtwebengine-opensource-src-5.7.1-openmax-dl-neon/src/3rdparty/chromium/third_party/openmax_dl/dl/dl.gyp 2016-12-03 22:50:19.369158276 +0100
+@@ -219,15 +219,6 @@
+ 'conditions': [
+ ['arm_neon_optional==1', {
+ # Run-time NEON detection.
+- 'dependencies': [
+- '../../../build/android/ndk.gyp:cpu_features',
+- ],
+- 'link_settings' : {
+- 'libraries': [
+- # To get the __android_log_print routine
+- '-llog',
+- ],
+- },
+ 'sources': [
+ # Detection routine
+ 'sp/src/arm/detect.c',
+diff -ur qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/openmax_dl/dl/sp/src/arm/detect.c qtwebengine-opensource-src-5.7.1-openmax-dl-neon/src/3rdparty/chromium/third_party/openmax_dl/dl/sp/src/arm/detect.c
+--- qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/openmax_dl/dl/sp/src/arm/detect.c 2016-11-07 15:46:18.000000000 +0100
++++ qtwebengine-opensource-src-5.7.1-openmax-dl-neon/src/3rdparty/chromium/third_party/openmax_dl/dl/sp/src/arm/detect.c 2016-12-03 22:48:13.745095083 +0100
+@@ -9,13 +9,57 @@
+ *
+ */
+
+-#include <cpu-features.h>
+-
+-#include "android/log.h"
+ #include "dl/sp/api/omxSP.h"
+
++// For ArmCpuCaps()
++#include <stdio.h>
++#include <string.h>
++
++// based on libvpx arm_cpudetect.c
++static int ArmCpuCaps(const char* cpuinfo_name) {
++ char cpuinfo_line[512];
++ FILE* f = fopen(cpuinfo_name, "r");
++ if (!f) {
++ // Assume Neon if /proc/cpuinfo is unavailable.
++ // This will occur for Chrome sandbox for Pepper or Render process.
++ return 1;
++ }
++ while (fgets(cpuinfo_line, sizeof(cpuinfo_line) - 1, f)) {
++ if (memcmp(cpuinfo_line, "Features", 8) == 0) {
++ char* p = strstr(cpuinfo_line, " neon");
++ if (p && (p[5] == ' ' || p[5] == '\n')) {
++ fclose(f);
++ return 1;
++ }
++ // aarch64 uses asimd for Neon.
++ p = strstr(cpuinfo_line, " asimd");
++ if (p && (p[6] == ' ' || p[6] == '\n')) {
++ fclose(f);
++ return 1;
++ }
++ }
++ }
++ fclose(f);
++ return 0;
++}
++
+ int omxSP_HasArmNeon() {
+- return (android_getCpuFeatures() & ANDROID_CPU_ARM_FEATURE_NEON) != 0;
++#if defined(__arm__) || defined(__aarch64__)
++// gcc -mfpu=neon defines __ARM_NEON__
++// __ARM_NEON__ generates code that requires Neon. NaCL also requires Neon.
++// For Linux, /proc/cpuinfo can be tested but without that assume Neon.
++#if defined(__ARM_NEON__) || defined(__native_client__) || !defined(__linux__)
++ return 1;
++// For aarch64(arm64), /proc/cpuinfo's feature is not complete, e.g. no neon
++// flag in it.
++// So for aarch64, neon enabling is hard coded here.
++#elif defined(__aarch64__)
++ return 1;
++#else
++ // Linux arm parse text file for neon detect.
++ return ArmCpuCaps("/proc/cpuinfo");
++#endif
++#endif // __arm__
+ }
+
+ static void SetFFTRoutines() {
+@@ -24,13 +68,9 @@
+ * forward and inverse FFTs
+ */
+ if (omxSP_HasArmNeon()) {
+- __android_log_print(ANDROID_LOG_INFO, "OpenMAX DL FFT",
+- "Using NEON FFT");
+ omxSP_FFTFwd_RToCCS_F32 = omxSP_FFTFwd_RToCCS_F32_Sfs;
+ omxSP_FFTInv_CCSToR_F32 = omxSP_FFTInv_CCSToR_F32_Sfs;
+ } else {
+- __android_log_print(ANDROID_LOG_INFO, "OpenMAX DL FFT",
+- "Using non-NEON FFT");
+ omxSP_FFTFwd_RToCCS_F32 = omxSP_FFTFwd_RToCCS_F32_Sfs_vfp;
+ omxSP_FFTInv_CCSToR_F32 = omxSP_FFTInv_CCSToR_F32_Sfs_vfp;
+ }
diff --git a/qtwebengine-opensource-src-5.7.1-skia-neon.patch b/qtwebengine-opensource-src-5.7.1-skia-neon.patch
new file mode 100644
index 0000000..c9b385b
--- /dev/null
+++ b/qtwebengine-opensource-src-5.7.1-skia-neon.patch
@@ -0,0 +1,15 @@
+diff -ur qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/skia/skia_library.gypi qtwebengine-opensource-src-5.7.1-skia-neon/src/3rdparty/chromium/skia/skia_library.gypi
+--- qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/skia/skia_library.gypi 2016-11-07 15:46:18.000000000 +0100
++++ qtwebengine-opensource-src-5.7.1-skia-neon/src/3rdparty/chromium/skia/skia_library.gypi 2016-12-04 14:34:12.531877529 +0100
+@@ -159,6 +159,11 @@
+ '../build/android/ndk.gyp:cpu_features',
+ ],
+ }],
++ [ 'OS != "android" and target_arch == "arm"', {
++ 'sources': [
++ '../third_party/skia/src/core/SkUtilsArm.cpp',
++ ],
++ }],
+ [ 'desktop_linux == 1 or chromeos == 1 or qt_os=="embedded_linux"', {
+ 'dependencies': [
+ '../build/linux/system.gyp:fontconfig',
diff --git a/qtwebengine-opensource-src-5.7.1-webrtc-neon-detect.patch b/qtwebengine-opensource-src-5.7.1-webrtc-neon-detect.patch
new file mode 100644
index 0000000..325b869
--- /dev/null
+++ b/qtwebengine-opensource-src-5.7.1-webrtc-neon-detect.patch
@@ -0,0 +1,159 @@
+diff -Nur qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/webrtc/system_wrappers/BUILD.gn qtwebengine-opensource-src-5.7.1-webrtc-neon-detect/src/3rdparty/chromium/third_party/webrtc/system_wrappers/BUILD.gn
+--- qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/webrtc/system_wrappers/BUILD.gn 2016-11-07 15:46:18.000000000 +0100
++++ qtwebengine-opensource-src-5.7.1-webrtc-neon-detect/src/3rdparty/chromium/third_party/webrtc/system_wrappers/BUILD.gn 2016-12-04 15:06:23.886224907 +0100
+@@ -133,6 +133,8 @@
+ #"WEBRTC_CLOCK_TYPE_REALTIME",
+ ]
+
++ deps += [ ":cpu_features_linux" ]
++
+ libs += [ "rt" ]
+ }
+
+@@ -206,3 +208,14 @@
+ ]
+ }
+ }
++
++if (is_linux) {
++ source_set("cpu_features_linux") {
++ sources = [
++ "source/cpu_features_linux.c",
++ ]
++
++ configs += [ "..:common_config" ]
++ public_configs = [ "..:common_inherited_config" ]
++ }
++}
+diff -Nur qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/webrtc/system_wrappers/cpu_features_webrtc.gyp qtwebengine-opensource-src-5.7.1-webrtc-neon-detect/src/3rdparty/chromium/third_party/webrtc/system_wrappers/cpu_features_webrtc.gyp
+--- qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/webrtc/system_wrappers/cpu_features_webrtc.gyp 2016-11-07 15:46:18.000000000 +0100
++++ qtwebengine-opensource-src-5.7.1-webrtc-neon-detect/src/3rdparty/chromium/third_party/webrtc/system_wrappers/cpu_features_webrtc.gyp 2016-12-04 15:05:24.150142787 +0100
+@@ -7,6 +7,7 @@
+ # be found in the AUTHORS file in the root of the source tree.
+
+ {
++ 'includes': [ '../build/common.gypi', ],
+ 'conditions': [
+ ['OS=="android"', {
+ 'targets': [
+@@ -21,6 +22,20 @@
+ ],
+ },
+ ],
++ }],
++ ['OS=="linux"', {
++ 'targets': [
++ {
++ 'target_name': 'cpu_features_linux',
++ 'type': 'static_library',
++ 'sources': [
++ 'source/cpu_features_linux.c',
++ ],
++ 'dependencies': [
++ '<(webrtc_root)/common.gyp:webrtc_common',
++ ],
++ },
++ ],
+ }],
+ ], # conditions
+ }
+diff -Nur qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/webrtc/system_wrappers/source/cpu_features_linux.c qtwebengine-opensource-src-5.7.1-webrtc-neon-detect/src/3rdparty/chromium/third_party/webrtc/system_wrappers/source/cpu_features_linux.c
+--- qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/webrtc/system_wrappers/source/cpu_features_linux.c 1970-01-01 01:00:00.000000000 +0100
++++ qtwebengine-opensource-src-5.7.1-webrtc-neon-detect/src/3rdparty/chromium/third_party/webrtc/system_wrappers/source/cpu_features_linux.c 2016-12-04 15:05:24.150142787 +0100
+@@ -0,0 +1,83 @@
++/*
++ * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
++ *
++ * Use of this source code is governed by a BSD-style license
++ * that can be found in the LICENSE file in the root of the source
++ * tree. An additional intellectual property rights grant can be found
++ * in the file PATENTS. All contributing project authors may
++ * be found in the AUTHORS file in the root of the source tree.
++ */
++
++#include <stdlib.h>
++#include <string.h>
++#include <features.h>
++#if __GLIBC_PREREQ(2, 16)
++#include <sys/auxv.h>
++#else
++#include <fcntl.h>
++#include <unistd.h>
++#include <errno.h>
++#include <link.h>
++#endif
++#include "webrtc/system_wrappers/include/cpu_features_wrapper.h"
++
++#if defined(WEBRTC_ARCH_ARM_FAMILY)
++#include <asm/hwcap.h>
++
++uint64_t WebRtc_GetCPUFeaturesARM(void) {
++ uint64_t result = 0;
++ int architecture = 0;
++ unsigned long hwcap = 0;
++ const char* platform = NULL;
++#if __GLIBC_PREREQ(2, 16)
++ hwcap = getauxval(AT_HWCAP);
++ platform = (const char*)getauxval(AT_PLATFORM);
++#else
++ ElfW(auxv_t) auxv;
++ int fd = open("/proc/self/auxv", O_RDONLY);
++ if (fd >= 0) {
++ while (hwcap == 0 || platform == NULL) {
++ if (read(fd, &auxv, sizeof(auxv)) < (ssize_t)sizeof(auxv)) {
++ if (errno == EINTR)
++ continue;
++ break;
++ }
++ switch (auxv.a_type) {
++ case AT_HWCAP:
++ hwcap = auxv.a_un.a_val;
++ break;
++ case AT_PLATFORM:
++ platform = (const char*)auxv.a_un.a_val;
++ break;
++ }
++ }
++ close(fd);
++ }
++#endif // __GLIBC_PREREQ(2,16)
++#if defined(__aarch64__)
++ architecture = 8;
++ if ((hwcap & HWCAP_FP) != 0)
++ result |= kCPUFeatureVFPv3;
++ if ((hwcap & HWCAP_ASIMD) != 0)
++ result |= kCPUFeatureNEON;
++#else
++ if (platform != NULL) {
++ /* expect a string in the form "v6l" or "v7l", etc.
++ */
++ if (platform[0] == 'v' && '0' <= platform[1] && platform[1] <= '9' &&
++ (platform[2] == 'l' || platform[2] == 'b')) {
++ architecture = platform[1] - '0';
++ }
++ }
++ if ((hwcap & HWCAP_VFPv3) != 0)
++ result |= kCPUFeatureVFPv3;
++ if ((hwcap & HWCAP_NEON) != 0)
++ result |= kCPUFeatureNEON;
++#endif
++ if (architecture >= 7)
++ result |= kCPUFeatureARMv7;
++ if (architecture >= 6)
++ result |= kCPUFeatureLDREXSTREX;
++ return result;
++}
++#endif // WEBRTC_ARCH_ARM_FAMILY
+diff -Nur qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/webrtc/system_wrappers/system_wrappers.gyp qtwebengine-opensource-src-5.7.1-webrtc-neon-detect/src/3rdparty/chromium/third_party/webrtc/system_wrappers/system_wrappers.gyp
+--- qtwebengine-opensource-src-5.7.1/src/3rdparty/chromium/third_party/webrtc/system_wrappers/system_wrappers.gyp 2016-11-07 15:46:18.000000000 +0100
++++ qtwebengine-opensource-src-5.7.1-webrtc-neon-detect/src/3rdparty/chromium/third_party/webrtc/system_wrappers/system_wrappers.gyp 2016-12-04 15:09:09.323684522 +0100
+@@ -143,6 +143,9 @@
+ # Define this if the Linux system does not support CLOCK_MONOTONIC.
+ #'WEBRTC_CLOCK_TYPE_REALTIME',
+ ],
++ 'dependencies': [
++ 'cpu_features_webrtc.gyp:cpu_features_linux',
++ ],
+ 'link_settings': {
+ 'libraries': [ '-lrt', ],
+ },
diff --git a/snapshot_qtwebengine.sh b/snapshot_qtwebengine.sh
new file mode 100755
index 0000000..843b197
--- /dev/null
+++ b/snapshot_qtwebengine.sh
@@ -0,0 +1,70 @@
+#!/bin/bash
+# Copyright 2017 Kevin Kofler <Kevin(a)tigcc.ticalc.org>
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+if [ -z "$2" ] ; then
+ echo "usage: ./snapshot_qtwebengine.sh COMMIT VERSION"
+ echo "e.g.: ./snapshot_qtwebengine.sh ee719ad313e564d4e6f06d74b313ae179169466f 5.6.3"
+ exit 1
+fi
+
+COMMIT="$1"
+VERSION="$2"
+
+SRCDIRNAME="qtwebengine-git"
+DIRNAME="qtwebengine-opensource-src-$VERSION"
+
+echo "checking out git://code.qt.io/qt/qtwebengine.git"
+rm -rf "$SRCDIRNAME" || exit $?
+git clone --recurse-submodules git://code.qt.io/qt/qtwebengine.git \
+ "$SRCDIRNAME" || exit $?
+
+echo "exporting revision $COMMIT to $DIRNAME"
+rm -rf "$DIRNAME" || exit $?
+BASEDIR=`pwd`
+cd "$SRCDIRNAME" || exit $?
+git reset --hard "$COMMIT" || exit $?
+git archive --format=tar --prefix="$DIRNAME/" "$COMMIT" | tar -x -C "$BASEDIR" \
+ || exit $?
+git submodule foreach --recursive \
+ 'git archive --format=tar --prefix="'"$DIRNAME"'/$path/" "$sha1" | tar -x -C "'"$BASEDIR"'"' \
+ || exit $?
+cd .. || exit $?
+rm -rf "$SRCDIRNAME" || exit $?
+
+echo "running syncqt.pl in $DIRNAME"
+cd "$DIRNAME" || exit $?
+syncqt.pl -version "$VERSION" sync.profile || exit $?
+cd .. || exit $?
+
+echo "creating $DIRNAME.tar.xz"
+XZ_OPT="-9 -f" tar cJf "$DIRNAME.tar.xz" "$DIRNAME" || exit $?
+
+echo "running ./clean_qtwebengine.sh $VERSION"
+./clean_qtwebengine.sh "$VERSION" || exit $?
+
+echo "renaming $DIRNAME.tar.xz to $DIRNAME-$COMMIT.tar.xz"
+mv "$DIRNAME.tar.xz" "$DIRNAME-$COMMIT.tar.xz" || exit $?
+
+echo "renaming $DIRNAME-clean.tar.xz to $DIRNAME-$COMMIT-clean.tar.xz"
+mv "$DIRNAME-clean.tar.xz" "$DIRNAME-$COMMIT-clean.tar.xz" || exit $?
+
+echo "done"
+exit 0
diff --git a/sources b/sources
index 47b5780..be3114b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-b6a5f507fb8d335212a380c6b3a06e2a qtwebengine-opensource-src-5.6.2-clean.tar.xz
+SHA512 (qtwebengine-opensource-src-5.6.3-ee719ad313e564d4e6f06d74b313ae179169466f-clean.tar.xz) = e013c3059188420ca2a3aaca6037a2f8fd57d435d53857cf3f5c076adfdb7038c6778e6c3c13ca89ba4bc288d776c47a61889fdfcba5a70e729cbedca7212228
6 years, 9 months
Architecture specific change in rpms/templates_parser.git
by githook-noreply@fedoraproject.org
The package rpms/templates_parser.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/templates_parser.git/commit/?id=5....
Change:
+ExclusiveArch: %GPRbuild_arches
Thanks.
Full change:
============
commit 5825cf9373f5e9b66c09ff73ea452e5a98ef7159
Author: Pavel Zhukov <pzhukov(a)redhat.com>
Date: Sat Jul 15 13:47:51 2017 +0200
Limit arches to gprbuild_arches
diff --git a/templates_parser.spec b/templates_parser.spec
index e7a5ed1..41a2c73 100644
--- a/templates_parser.spec
+++ b/templates_parser.spec
@@ -2,7 +2,7 @@
Name: templates_parser
Version: 11.8.0
-Release: 14%{?dist}
+Release: 15%{?dist}
Summary: AWS templates engine
Group: System Environment/Libraries
@@ -25,7 +25,7 @@ Patch2: %{name}-gpr.patch
# All Ada packages have to contain these
BuildRequires: gcc-gnat fedora-gnat-project-common gprbuild
# gprbuild only available on these:
-ExclusiveArch: %GNAT_arches
+ExclusiveArch: %GPRbuild_arches
BuildRequires: xmlada-devel
BuildRequires: chrpath
@@ -123,6 +123,9 @@ cp -p %SOURCE2 $RPM_BUILD_ROOT%{_mandir}/man1/
%changelog
+* Sat Jul 15 2017 Pavel Zhukov <pzhukov(a)redhat.com> - 11.8.0-15
+- Build on GPRbuild_arches only
+
* Mon Jul 10 2017 Pavel Zhukov <pzhukov(a)redhat.com> - 11.8.0-14
- Rebuild with new gnat
6 years, 9 months
Architecture specific change in rpms/aws.git
by githook-noreply@fedoraproject.org
The package rpms/aws.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/aws.git/commit/?id=d5a327390efe80....
Change:
+ExclusiveArch: %GPRbuild_arches
Thanks.
Full change:
============
commit d5a327390efe80fe1d39d1e2e77afd699436a042
Author: Pavel Zhukov <pzhukov(a)redhat.com>
Date: Sat Jul 15 13:17:23 2017 +0200
Limit to GPRbuild_arches
diff --git a/aws.spec b/aws.spec
index a4bbf05..ec8829a 100644
--- a/aws.spec
+++ b/aws.spec
@@ -3,7 +3,7 @@
%global with_gps 0
Name: aws
Version: 2017
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: Ada Web Server
Group: System Environment/Libraries
@@ -31,7 +31,7 @@ BuildRequires: python2-sphinx
## gprinstall uses it
BuildRequires: fedora-gnat-project-common >= 3
# gcc-gnat only available on these:
-ExclusiveArch: %GNAT_arches
+ExclusiveArch: %GPRbuild_arches
%description
@@ -151,6 +151,9 @@ rm -rf %{buildroot}%{_GNAT_project_dir}/manifests
%changelog
+* Sat Jul 15 2017 Pavel Zhukov <pzhukov(a)redhat.com> - 2017-4
+- aws needs gprbuild. Limit to gprbuild_arches
+
* Mon Jul 10 2017 Pavel Zhukov <pzhukov(a)redhat.com> - 2017-3
- Add python version
6 years, 9 months
Architecture specific change in rpms/gprbuild.git
by githook-noreply@fedoraproject.org
The package rpms/gprbuild.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/gprbuild.git/commit/?id=2a2ff702a....
Change:
+%ifarch %{bootstrap_arch}
Thanks.
Full change:
============
commit 2a2ff702a2846644fcf9ad5b9b01e90a787a38bf
Author: Pavel Zhukov <pzhukov(a)redhat.com>
Date: Sat Jul 15 11:14:07 2017 +0200
Re-bootstrap because of arm archiver
diff --git a/gprbuild-2017-fedora_compilers.patch b/gprbuild-2017-fedora_compilers.patch
new file mode 100644
index 0000000..13fca2f
--- /dev/null
+++ b/gprbuild-2017-fedora_compilers.patch
@@ -0,0 +1,13 @@
+diff --git a/share/gprconfig/linker.xml b/share/gprconfig/linker.xml
+index e1f637d..575d926 100644
+--- a/share/gprconfig/linker.xml
++++ b/share/gprconfig/linker.xml
+@@ -797,7 +797,6 @@
+ <target name="^.*-pikeos$" />
+ <target name="^arm-linux-androideabi$" />
+ <target name="^.*-gnueabihf$" />
+- <target name="^.*-gnueabi$" />
+ </targets>
+ <config>
+ for Archive_Builder use ("ar", "cr");
+
diff --git a/gprbuild.spec b/gprbuild.spec
index 6884a66..51892b6 100644
--- a/gprbuild.spec
+++ b/gprbuild.spec
@@ -1,9 +1,8 @@
%undefine _hardened_build
-%define gprbuild_bootstrap 1
Name: gprbuild
Version: 2017
-Release: 2%{?dist}
+Release: 5%{?dist}
Summary: Ada project builder
Group: Development/Languages
License: GPLv3+
@@ -17,14 +16,15 @@ Patch2: %{name}-2016-gcc5.patch
# would be needed to handle other possible setups.
Patch3: %{name}-2016-usrmove.patch
## FIXME ??
-##Patch6: %{name}-2016-arm_compiler.patch
+Patch6: %{name}-2017-fedora_compilers.patch
##Patch7: %{name}-2016-mingw.patch
# Adaptation to a change in GCC's version numbering:
Patch8: %{name}-2016-gcc7.patch
Patch9: gprbuild-2017-bootstrap.patch
-%global bootstrap_arch currently_not_bootstrapping
+## %%%global bootstrap_arch none
+%global bootstrap_arch %{GPRbuild_arches}
# When bootstrapping GPRbuild for a new architecture, set bootstrap_arch to the
# name of that architecture and add a tarball with binaries as Source100.
# When not bootstrapping bootstrap_arch must have a nonempty value that isn't
@@ -47,9 +47,12 @@ Patch9: gprbuild-2017-bootstrap.patch
#
# Static linkage exception: https://fedorahosted.org/fesco/ticket/1551
+BuildRequires: xmlada-static
+
%ifnarch %{bootstrap_arch}
-BuildRequires: xmlada-static gprbuild
+BuildRequires: gprbuild
%endif
+
# XMLada is built with GPRbuild, so it's unavailable when GPRbuild hasn't been
# bootstrapped yet.
@@ -78,7 +81,7 @@ and libraries and is particularly well-suited for compiled languages.
%patch2 -p1
%patch3 -p1
-##%%%patch6 -p1
+%patch6 -p1
###%patch7 -p1
%patch8 -p0
%patch9 -p1 -b .bootstrap
@@ -87,25 +90,26 @@ and libraries and is particularly well-suited for compiled languages.
cp /usr/lib/rpm/config.* .
%build
-
-echo "XXX ARCH CHECK"
-uname -m
-uname -a
-uname -r
-echo "YYY ARCH CHECK"
-%if %{gprbuild_bootstrap}
-## bootstraping
+%ifarch %{bootstrap_arch}
./bootstrap.sh --with-xmlada=%{_includedir}/xmlada --prefix=./bootstrap
+cp %{SOURCE2} bootstrap/share/gprconfig/
+export PATH="$PWD/bootstrap/bin:${PATH}"
%endif
+gcc -v
+gcc -dumpmachine
+gcc -dumpversion
+gnatls -v --version
# The build won't work when GPRbuild is unavailable or broken, so do nothing in
# this stage when bootstrapping.
-%ifnarch %{bootstrap_arch}
-##%%configure --disable-rpath --datadir="%{buildroot}/%{_datadir}" --libdir="%{buildroot}/%{_libdir}" --bindir="%{buildroot}/%{_bindir}" --libexecdir="%{buildroot}/%{_libexecdir}"
make prefix=%{buildroot}/%{_prefix} setup
# Build it, and link statically by setting XMLADA_BUILD to "static".
-XMLADA_BUILD=static make ADA_PROJECT_PATH=%_GNAT_project_dir BUILDER="gprbuild %{GPRbuild_optflags}"
+
+%ifarch %{bootstrap_arch}
+XMLADA_BUILD=static make ADA_PROJECT_PATH=%_GNAT_project_dir BUILDER="gprbuild -v %{GPRbuild_optflags}"
+%else
+XMLADA_BUILD=shared make ADA_PROJECT_PATH=%_GNAT_project_dir BUILDER="gprbuild -v %{GPRbuild_optflags}"
%endif
%install
@@ -116,11 +120,8 @@ XMLADA_BUILD=static make ADA_PROJECT_PATH=%_GNAT_project_dir BUILDER="gprbuild %
}
rm -rf %{buildroot}
%ifarch %{bootstrap_arch}
-# Bootstrapping. Just unpack the bootstrap tarball in the staging directory.
-mkdir -p %{buildroot}
-tar -C %{buildroot} -xf %{SOURCE100}
-%else
-# Not bootstrapping. Install normally into the staging directory.
+export PATH="$PWD/exe/:${PATH}"
+%endif
make install DESTDIR=%{buildroot}
find %{buildroot}%{_datadir}/gprconfig -type f -name "*.xml" -exec chmod -x {} \;
# Add target patterns for Fedora's architectures.
@@ -130,10 +131,7 @@ mv %{buildroot}/%{_datadir}/doc/%{name}/* __doc
mv %{buildroot}/%{_datadir}/examples __doc
rm -rf %{buildroot}/%{_datadir}/doc/%{name}
##%%find __doc/examples -type f -exec chmod -x {} \;
-%endif
-%if %{gprbuild_bootstrap}
rm -f %{buildroot}/%{_prefix}/doinstall
-%endif
%files
%defattr(-,root,root,-)
@@ -149,6 +147,10 @@ rm -f %{buildroot}/%{_prefix}/doinstall
%_GNAT_project_dir/*
%changelog
+* Sat Jul 15 2017 Pavel Zhukov <landgraf(a)fedoraproject.org> - 2017-5
+- Use upstream bootstrap
+- Enable bootstrap for all %{GPRbuild_arches}
+
* Fri Jul 14 2017 Pavel Zhukov <landgraf(a)fedoraproject.org> - 2017-2
- New version 2017
- Drop dev suffix
6 years, 9 months