Architecture specific change in rpms/petsc.git
by githook-noreply@fedoraproject.org
The package rpms/petsc.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/petsc.git/commit/?id=c3c3682ba7fc....
Change:
-%ifarch s390x
Thanks.
Full change:
============
commit ec327e91630534cc297ae0d1fcee5988a11597d9
Author: sagitter <sagitter(a)fedoraproject.org>
Date: Mon Oct 2 13:54:52 2017 +0200
Unset default compiler flags when tests are built
diff --git a/petsc.spec b/petsc.spec
index 1be6c40..0b06bec 100644
--- a/petsc.spec
+++ b/petsc.spec
@@ -5,7 +5,7 @@
%bcond_without check
## Debug builds ?
-%bcond_without debug
+%bcond_with debug
#
# Define _pkgdocdir macro on epel
@@ -110,7 +110,7 @@
Name: petsc
Summary: Portable Extensible Toolkit for Scientific Computation
Version: 3.7.7
-Release: 4%{?dist}
+Release: 5%{?dist}
License: BSD
URL: https://www.mcs.anl.gov/petsc
Source0: http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-%{version}.tar.gz
@@ -381,8 +381,8 @@ cp -a %{name}-%{version} buildmpich_dir
pushd %{name}-%{version}
%configure \
%if %{with debug}
-CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
- CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{_libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
+ CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{_libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
%else
CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
COPTFLAGS="$COPTFLAGS" CXXOPTFLAGS="$CXXOPTFLAGS" FOPTFLAGS="$FOPTFLAGS -Wl,-z,now -fPIC" \
@@ -461,8 +461,8 @@ popd
pushd build64
%configure \
%if %{with debug}
-CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
- CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{_libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
+ CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{_libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
%else
CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
COPTFLAGS="$COPTFLAGS" CXXOPTFLAGS="$CXXOPTFLAGS" FOPTFLAGS="$FOPTFLAGS -Wl,-z,now -fPIC" \
@@ -523,8 +523,8 @@ pushd buildopenmpi_dir
%{_openmpi_load}
%configure \
%if %{with debug}
-CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
- CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{_libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
+ CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{_libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
%else
CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
COPTFLAGS="$COPTFLAGS" CXXOPTFLAGS="$CXXOPTFLAGS" FOPTFLAGS="$FOPTFLAGS -Wl,-z,now -fPIC" \
@@ -635,8 +635,8 @@ pushd buildmpich_dir
%{_mpich_load}
%configure \
%if %{with debug}
-CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
- CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{_libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
+ CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{_libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
%else
CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
COPTFLAGS="$COPTFLAGS" CXXOPTFLAGS="$CXXOPTFLAGS" FOPTFLAGS="$FOPTFLAGS -Wl,-z,now -fPIC" \
@@ -917,7 +917,9 @@ export PETSC_ARCH=%{_arch}
export PETSCVALGRIND_OPTIONS=" --tool=memcheck --leak-check=yes --track-origins=yes"
make -C %{name}-%{version} test MPIEXEC='%{_builddir}/%{name}-%{version}/%{name}-%{version}/bin/petscmpiexec -valgrind'
%else
-
+export CFLAGS="-O0 -g -Wl,-z,now -fPIC"
+export CXXFLAGS="-O0 -g -Wl,-z,now -fPIC"
+export FFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{_libdir}/gfortran/modules"
make -C %{name}-%{version} test
%endif
@@ -934,6 +936,9 @@ ln -s %{_builddir}/%{name}-%{version}/build64/%{_arch}/lib/libpetsc64.so %{_buil
export PETSCVALGRIND_OPTIONS=" --tool=memcheck --leak-check=yes --track-origins=yes"
make -C build64 test MPIEXEC='%{_builddir}/%{name}-%{version}/build64/bin/petscmpiexec -valgrind'
%else
+export CFLAGS="-O0 -g -Wl,-z,now -fPIC"
+export CXXFLAGS="-O0 -g -Wl,-z,now -fPIC"
+export FFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{_libdir}/gfortran/modules"
make -C build64 test
%endif
%endif
@@ -944,6 +949,9 @@ export LD_LIBRARY_PATH=$MPI_LIB:%{_libdir}:%{_builddir}/%{name}-%{version}/build
export PETSC_DIR=%{_builddir}/%{name}-%{version}/buildopenmpi_dir
export PETSC_ARCH=%{_arch}
export MPI_INTERFACE_HOSTNAME=localhost
+export CFLAGS="-O0 -g -Wl,-z,now -fPIC"
+export CXXFLAGS="-O0 -g -Wl,-z,now -fPIC"
+export FFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{_libdir}/gfortran/modules"
make -C buildopenmpi_dir test
%{_openmpi_unload}
@@ -956,6 +964,9 @@ export LD_LIBRARY_PATH=$MPI_LIB:%{_libdir}:%{_builddir}/%{name}-%{version}/build
export PETSC_DIR=%{_builddir}/%{name}-%{version}/buildmpich_dir
export PETSC_ARCH=%{_arch}
export MPI_INTERFACE_HOSTNAME=localhost
+export CFLAGS="-O0 -g -Wl,-z,now -fPIC"
+export CXXFLAGS="-O0 -g -Wl,-z,now -fPIC"
+export FFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{_libdir}/gfortran/modules"
make -C buildmpich_dir test
%{_mpich_unload}
@@ -1012,6 +1023,10 @@ make -C buildmpich_dir test
%endif
%changelog
+* Mon Oct 02 2017 Antonio Trande <sagitter(a)fedoraproject.org> - 3.7.7-5
+- Disable debugging
+- Unset default compiler flags when tests are built
+
* Sun Oct 01 2017 Antonio Trande <sagitter(a)fedoraproject.org> - 3.7.7-4
- Rebuild for debugging
commit 9617ef11e174d85b5ab2a7bdf99e7863fa78c2b2
Author: sagitter <sagitter(a)fedoraproject.org>
Date: Sun Oct 1 16:55:11 2017 +0200
Rebuild for debugging
diff --git a/petsc.spec b/petsc.spec
index c65d692..1be6c40 100644
--- a/petsc.spec
+++ b/petsc.spec
@@ -5,7 +5,7 @@
%bcond_without check
## Debug builds ?
-%bcond_with debug
+%bcond_without debug
#
# Define _pkgdocdir macro on epel
@@ -110,7 +110,7 @@
Name: petsc
Summary: Portable Extensible Toolkit for Scientific Computation
Version: 3.7.7
-Release: 3%{?dist}
+Release: 4%{?dist}
License: BSD
URL: https://www.mcs.anl.gov/petsc
Source0: http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-%{version}.tar.gz
@@ -379,8 +379,14 @@ cp -a %{name}-%{version} buildmpich_dir
%build
pushd %{name}-%{version}
-%configure CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+%configure \
+%if %{with debug}
+CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
+ CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+%else
+CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
COPTFLAGS="$COPTFLAGS" CXXOPTFLAGS="$CXXOPTFLAGS" FOPTFLAGS="$FOPTFLAGS -Wl,-z,now -fPIC" \
+%endif
--with-default-arch=0 --with-make=1 \
--with-single-library=1 \
--with-precision=double \
@@ -453,8 +459,14 @@ popd
%if %{with arch64}
pushd build64
-%configure CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+%configure \
+%if %{with debug}
+CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
+ CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+%else
+CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
COPTFLAGS="$COPTFLAGS" CXXOPTFLAGS="$CXXOPTFLAGS" FOPTFLAGS="$FOPTFLAGS -Wl,-z,now -fPIC" \
+%endif
--with-default-arch=0 --with-make=1 \
--with-single-library=1 \
--with-precision=double \
@@ -509,8 +521,14 @@ popd
%if %{with openmpi}
pushd buildopenmpi_dir
%{_openmpi_load}
-%configure CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+%configure \
+%if %{with debug}
+CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
+ CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+%else
+CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
COPTFLAGS="$COPTFLAGS" CXXOPTFLAGS="$CXXOPTFLAGS" FOPTFLAGS="$FOPTFLAGS -Wl,-z,now -fPIC" \
+%endif
--with-default-arch=0 --with-make=1 \
--with-single-library=1 \
--with-precision=double \
@@ -615,8 +633,14 @@ popd
%if %{with mpich}
pushd buildmpich_dir
%{_mpich_load}
-%configure CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+%configure \
+%if %{with debug}
+CFLAGS="-O0 -g -Wl,-z,now" CXXFLAGS="-O0 -g -Wl,-z,now" FFLAGS="-O0 -g -Wl,-z,now -I%{libdir}/gfortran/modules" COPTFLAGS="-O0 -g -Wl,-z,now" \
+ CXXOPTFLAGS="-O0 -g -Wl,-z,now" FOPTFLAGS="-O0 -g -Wl,-z,now -fPIC -I%{libdir}/gfortran/modules" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
+%else
+CFLAGS="$CFLAGS -O3 -Wl,-z,now" CXXFLAGS="$CXXFLAGS -O3" FFLAGS="$FFLAGS -O3 -Wl,-z,now" LDFLAGS="$LDFLAGS -Wl,-z,now -fPIC" \
COPTFLAGS="$COPTFLAGS" CXXOPTFLAGS="$CXXOPTFLAGS" FOPTFLAGS="$FOPTFLAGS -Wl,-z,now -fPIC" \
+%endif
--with-default-arch=0 --with-make=1 \
--with-single-library=1 \
--with-precision=double \
@@ -988,6 +1012,9 @@ make -C buildmpich_dir test
%endif
%changelog
+* Sun Oct 01 2017 Antonio Trande <sagitter(a)fedoraproject.org> - 3.7.7-4
+- Rebuild for debugging
+
* Sun Oct 01 2017 Antonio Trande <sagitter(a)fedoraproject.org> - 3.7.7-3
- Exclude MPI builds on s390x
commit c3c3682ba7fc4527c62364cd9e34cc868292c9ad
Author: sagitter <sagitter(a)fedoraproject.org>
Date: Sun Oct 1 14:29:45 2017 +0200
Exclude MPI builds on s390x
diff --git a/petsc.spec b/petsc.spec
index 4cabede..c65d692 100644
--- a/petsc.spec
+++ b/petsc.spec
@@ -14,22 +14,29 @@
#
# No MPICH support on these arches
-%if 0%{?rhel} || 0%{?rhel} < 7
+%if 0%{?rhel} && 0%{?rhel} < 7
%ifarch %{power64}
%bcond_with mpich
%endif
%endif
-%if 0%{?rhel} || 0%{?rhel} < 7
+%if 0%{?rhel} && 0%{?rhel} < 7
%ifnarch %{power64}
%bcond_without mpich
%endif
%endif
-%if 0%{?fedora} || 0%{?rhel} >= 7
-%bcond_without mpich
-%endif
+%if 0%{?fedora}
+## Exclude MPI builds on s390x
%ifarch s390x
+%bcond_with mpich
%bcond_with openmpi
%else
+%bcond_without mpich
+%bcond_without openmpi
+%endif
+%endif
+
+%if 0%{?rhel} && 0%{?rhel} >= 7
+%bcond_without mpich
%bcond_without openmpi
%endif
@@ -39,10 +46,7 @@
## PETSC looks incompatible with serial MUMPS
%bcond_with mumps_serial
#
-## Does not build with SuperLU < 5.2.0
-%if 0%{?fedora} >= 25
%bcond_without superlu
-%endif
#
## SuperLUDIST needs parmetis
@@ -64,25 +68,12 @@
%{!?el6:%global with_suitesparse 1}
#
-## PETSc needs fftw's MPI implementation
-%if 0%{?fedora} >= 25
-%bcond_without fftw
-%else
-%bcond_with fftw
-%endif
-#
-
# 'scalapack' is required by 'mumps'
%if %{with openmpi}
%bcond_without mpi
%bcond_without sundials
-%ifarch s390x
-%bcond_with scalapack
-%bcond_with mumps
-%else
%bcond_without scalapack
%bcond_without mumps
-%endif
%bcond_without ptscotch
%bcond_without hypre
%endif
@@ -90,13 +81,8 @@
%if %{with mpich}
%bcond_without mpi
%bcond_without sundials
-%ifarch s390x
-%bcond_with scalapack
-%bcond_with mumps
-%else
%bcond_without scalapack
%bcond_without mumps
-%endif
%bcond_without ptscotch
%bcond_without hypre
%endif
@@ -124,7 +110,7 @@
Name: petsc
Summary: Portable Extensible Toolkit for Scientific Computation
Version: 3.7.7
-Release: 2%{?dist}
+Release: 3%{?dist}
License: BSD
URL: https://www.mcs.anl.gov/petsc
Source0: http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-%{version}.tar.gz
@@ -1002,6 +988,9 @@ make -C buildmpich_dir test
%endif
%changelog
+* Sun Oct 01 2017 Antonio Trande <sagitter(a)fedoraproject.org> - 3.7.7-3
+- Exclude MPI builds on s390x
+
* Sat Sep 30 2017 Antonio Trande <sagitter(a)fedoraproject.org> - 3.7.7-2
- Enable mpiuni-fortran-binding on MPI builds
commit 4983e8c181bfd8fe34ce56195b1cbba5033fb5dd
Author: sagitter <sagitter(a)fedoraproject.org>
Date: Sat Sep 30 17:37:38 2017 +0200
Enable mpiuni-fortran-binding on MPI builds
diff --git a/petsc.spec b/petsc.spec
index 33e7c83..4cabede 100644
--- a/petsc.spec
+++ b/petsc.spec
@@ -124,7 +124,7 @@
Name: petsc
Summary: Portable Extensible Toolkit for Scientific Computation
Version: 3.7.7
-Release: 1%{?dist}
+Release: 2%{?dist}
License: BSD
URL: https://www.mcs.anl.gov/petsc
Source0: http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-%{version}.tar.gz
@@ -569,7 +569,7 @@ pushd buildopenmpi_dir
--with-mpi=1 \
--with-mpi-compilers=$MPI_BIN/mpicc \
--with-mpiexec=$MPI_BIN/mpiexec \
- --with-mpiuni-fortran-binding=0 \
+ --with-mpiuni-fortran-binding=1 \
%endif
%if %{with cgns}
--with-cgns=1 \
@@ -675,7 +675,7 @@ pushd buildmpich_dir
--with-mpi=1 \
--with-mpi-compilers=$MPI_BIN/mpicc \
--with-mpiexec=$MPI_BIN/mpiexec \
- --with-mpiuni-fortran-binding=0 \
+ --with-mpiuni-fortran-binding=1 \
%endif
%if %{with cgns}
--with-cgns=1 \
@@ -1002,6 +1002,9 @@ make -C buildmpich_dir test
%endif
%changelog
+* Sat Sep 30 2017 Antonio Trande <sagitter(a)fedoraproject.org> - 3.7.7-2
+- Enable mpiuni-fortran-binding on MPI builds
+
* Tue Sep 26 2017 Antonio Trande <sagitter(a)fedoraproject.org> - 3.7.7-1
- Update to 3.7.7
- Move petscvariables/petscrules under a private directory of libdir
6 years, 7 months
Architecture specific change in rpms/android-tools.git
by githook-noreply@fedoraproject.org
The package rpms/android-tools.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/android-tools.git/commit/?id=97a2....
Change:
+ExcludeArch: ppc ppc64 s390x
Thanks.
Full change:
============
commit 97a2b78b3c1c960465fcb5c82a9b038696b28034
Author: Peter Robinson <pbrobinson(a)gmail.com>
Date: Tue Oct 3 09:16:17 2017 +0100
add s390x to big endian arches
diff --git a/android-tools.spec b/android-tools.spec
index de08dfc..5e98ef1 100644
--- a/android-tools.spec
+++ b/android-tools.spec
@@ -62,7 +62,7 @@ Provides: adb
Provides: fastboot
# Bundled boringssl doesn't support the big endian architectures rhbz 1431379
-ExcludeArch: ppc ppc64
+ExcludeArch: ppc ppc64 s390x
# Bundled bits
Provides: bundled(mdnsresponder)
6 years, 7 months
Architecture specific change in rpms/android-tools.git
by githook-noreply@fedoraproject.org
The package rpms/android-tools.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/android-tools.git/commit/?id=97a2....
Change:
+ExcludeArch: ppc ppc64 s390x
Thanks.
Full change:
============
commit 97a2b78b3c1c960465fcb5c82a9b038696b28034
Author: Peter Robinson <pbrobinson(a)gmail.com>
Date: Tue Oct 3 09:16:17 2017 +0100
add s390x to big endian arches
diff --git a/android-tools.spec b/android-tools.spec
index de08dfc..5e98ef1 100644
--- a/android-tools.spec
+++ b/android-tools.spec
@@ -62,7 +62,7 @@ Provides: adb
Provides: fastboot
# Bundled boringssl doesn't support the big endian architectures rhbz 1431379
-ExcludeArch: ppc ppc64
+ExcludeArch: ppc ppc64 s390x
# Bundled bits
Provides: bundled(mdnsresponder)
6 years, 7 months
Architecture specific change in rpms/nss-softokn.git
by githook-noreply@fedoraproject.org
The package rpms/nss-softokn.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/nss-softokn.git/commit/?id=2eceb4....
Change:
-%ifarch i686
Thanks.
Full change:
============
commit 9b38b93fc4d7c2e5eaff2433ad59b32aebadb1ba
Author: Daiki Ueno <dueno(a)redhat.com>
Date: Tue Oct 3 10:05:58 2017 +0200
Update to NSS 3.33.0
diff --git a/.gitignore b/.gitignore
index 8be598b..ec91b55 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@
/nss-softokn-3.30.2.tar.gz
/nss-softokn-3.31.0.tar.gz
/nss-softokn-3.32.0.tar.gz
+/nss-softokn-3.33.0.tar.gz
diff --git a/nss-softokn-add_encrypt_derive.patch b/nss-softokn-add_encrypt_derive.patch
index 89cc516..3731fcb 100644
--- a/nss-softokn-add_encrypt_derive.patch
+++ b/nss-softokn-add_encrypt_derive.patch
@@ -1,7 +1,7 @@
-diff -up ./lib/softoken/pkcs11.c.add_encrypt_derive ./lib/softoken/pkcs11.c
---- ./lib/softoken/pkcs11.c.add_encrypt_derive 2017-07-27 07:09:32.000000000 -0700
-+++ ./lib/softoken/pkcs11.c 2017-08-11 09:34:37.633756798 -0700
-@@ -423,11 +423,22 @@ static const struct mechanismList mechan
+diff -up nss/lib/softoken/pkcs11.c.add_encrypt_derive nss/lib/softoken/pkcs11.c
+--- nss/lib/softoken/pkcs11.c.add_encrypt_derive 2017-09-20 08:47:27.000000000 +0200
++++ nss/lib/softoken/pkcs11.c 2017-10-03 10:03:18.680191525 +0200
+@@ -421,11 +421,22 @@ static const struct mechanismList mechan
#endif
/* --------------------- Secret Key Operations ------------------------ */
{ CKM_GENERIC_SECRET_KEY_GEN, { 1, 32, CKF_GENERATE }, PR_TRUE },
@@ -28,11 +28,11 @@ diff -up ./lib/softoken/pkcs11.c.add_encrypt_derive ./lib/softoken/pkcs11.c
/* ---------------------- SSL Key Derivations ------------------------- */
{ CKM_SSL3_PRE_MASTER_KEY_GEN, { 48, 48, CKF_GENERATE }, PR_FALSE },
{ CKM_SSL3_MASTER_KEY_DERIVE, { 48, 48, CKF_DERIVE }, PR_FALSE },
-diff -up ./lib/softoken/pkcs11c.c.add_encrypt_derive ./lib/softoken/pkcs11c.c
---- ./lib/softoken/pkcs11c.c.add_encrypt_derive 2017-07-27 07:09:32.000000000 -0700
-+++ ./lib/softoken/pkcs11c.c 2017-08-11 09:45:01.285575175 -0700
-@@ -6269,6 +6269,44 @@ sftk_ANSI_X9_63_kdf(CK_BYTE **key, CK_UL
- #endif /* NSS_DISABLE_ECC */
+diff -up nss/lib/softoken/pkcs11c.c.add_encrypt_derive nss/lib/softoken/pkcs11c.c
+--- nss/lib/softoken/pkcs11c.c.add_encrypt_derive 2017-09-20 08:47:27.000000000 +0200
++++ nss/lib/softoken/pkcs11c.c 2017-10-03 10:04:27.341673470 +0200
+@@ -6242,6 +6242,44 @@ sftk_ANSI_X9_63_kdf(CK_BYTE **key, CK_UL
+ }
/*
+ * Handle The derive from a block encryption cipher
@@ -76,7 +76,7 @@ diff -up ./lib/softoken/pkcs11c.c.add_encrypt_derive ./lib/softoken/pkcs11c.c
* SSL Key generation given pre master secret
*/
#define NUM_MIXERS 9
-@@ -6313,6 +6351,9 @@ NSC_DeriveKey(CK_SESSION_HANDLE hSession
+@@ -6286,6 +6324,9 @@ NSC_DeriveKey(CK_SESSION_HANDLE hSession
CK_KEY_TYPE keyType = CKK_GENERIC_SECRET;
CK_OBJECT_CLASS classType = CKO_SECRET_KEY;
CK_KEY_DERIVATION_STRING_DATA *stringPtr;
@@ -86,7 +86,7 @@ diff -up ./lib/softoken/pkcs11c.c.add_encrypt_derive ./lib/softoken/pkcs11c.c
CK_MECHANISM_TYPE mechanism = pMechanism->mechanism;
PRBool isTLS = PR_FALSE;
PRBool isDH = PR_FALSE;
-@@ -6322,6 +6363,7 @@ NSC_DeriveKey(CK_SESSION_HANDLE hSession
+@@ -6295,6 +6336,7 @@ NSC_DeriveKey(CK_SESSION_HANDLE hSession
unsigned int outLen;
unsigned char sha_out[SHA1_LENGTH];
unsigned char key_block[NUM_MIXERS * SFTK_MAX_MAC_LENGTH];
@@ -94,7 +94,7 @@ diff -up ./lib/softoken/pkcs11c.c.add_encrypt_derive ./lib/softoken/pkcs11c.c
PRBool isFIPS;
HASH_HashType hashType;
PRBool extractValue = PR_TRUE;
-@@ -6926,6 +6968,136 @@ NSC_DeriveKey(CK_SESSION_HANDLE hSession
+@@ -6899,6 +6941,136 @@ NSC_DeriveKey(CK_SESSION_HANDLE hSession
break;
}
diff --git a/nss-softokn-aligned_alloc.patch b/nss-softokn-aligned_alloc.patch
deleted file mode 100644
index 91dde73..0000000
--- a/nss-softokn-aligned_alloc.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-# HG changeset patch
-# User Daiki Ueno <dueno(a)redhat.com>
-# Date 1502358887 -7200
-# Thu Aug 10 11:54:47 2017 +0200
-# Node ID 8019abedc833059e7333aadb269a2412fe6a14f5
-# Parent 990be4e30bf8a5f5619e0e6630ef7cc0784905fb
-Bug 1389052 - Fix aligned_alloc emulation on i686, r=franziskus
-
-diff --git a/lib/freebl/gcm.c b/lib/freebl/gcm.c
---- a/lib/freebl/gcm.c
-+++ b/lib/freebl/gcm.c
-@@ -574,7 +574,7 @@ GCM_CreateContext(void *context, freeblC
- const unsigned char *params)
- {
- GCMContext *gcm = NULL;
-- gcmHashContext *ghash = NULL;
-+ gcmHashContext *ghash = NULL, *ghashmem = NULL;
- unsigned char H[MAX_BLOCK_SIZE];
- unsigned int tmp;
- PRBool freeCtr = PR_FALSE;
-@@ -596,13 +596,13 @@ GCM_CreateContext(void *context, freeblC
- return NULL;
- }
- /* aligned_alloc is C11 so we have to do it the old way. */
-- ghash = PORT_ZAlloc(sizeof(gcmHashContext) + 15);
-- if (ghash == NULL) {
-+ ghashmem = PORT_ZAlloc(sizeof(gcmHashContext) + 15);
-+ if (ghashmem == NULL) {
- PORT_SetError(SEC_ERROR_NO_MEMORY);
- goto loser;
- }
-- ghash->mem = ghash;
-- ghash = (gcmHashContext *)(((uintptr_t)ghash + 15) & ~(uintptr_t)0x0F);
-+ ghash = (gcmHashContext *)(((uintptr_t)ghashmem + 15) & ~(uintptr_t)0x0F);
-+ ghash->mem = ghashmem;
-
- /* first plug in the ghash context */
- gcm->ghash_context = ghash;
-diff --git a/lib/freebl/rijndael.c b/lib/freebl/rijndael.c
---- a/lib/freebl/rijndael.c
-+++ b/lib/freebl/rijndael.c
-@@ -1018,13 +1018,15 @@ AESContext *
- AES_AllocateContext(void)
- {
- /* aligned_alloc is C11 so we have to do it the old way. */
-- AESContext *ctx = PORT_ZAlloc(sizeof(AESContext) + 15);
-- if (ctx == NULL) {
-+ AESContext *ctx, *ctxmem;
-+ ctxmem = PORT_ZAlloc(sizeof(AESContext) + 15);
-+ if (ctxmem == NULL) {
- PORT_SetError(SEC_ERROR_NO_MEMORY);
- return NULL;
- }
-- ctx->mem = ctx;
-- return (AESContext *)(((uintptr_t)ctx + 15) & ~(uintptr_t)0x0F);
-+ ctx = (AESContext *)(((uintptr_t)ctxmem + 15) & ~(uintptr_t)0x0F);
-+ ctx->mem = ctxmem;
-+ return ctx;
- }
-
- /*
diff --git a/nss-softokn-gcm-aes-split.patch b/nss-softokn-gcm-aes-split.patch
deleted file mode 100644
index af8b462..0000000
--- a/nss-softokn-gcm-aes-split.patch
+++ /dev/null
@@ -1,880 +0,0 @@
-diff -up nss/lib/freebl/aes-x86.c.gcm-aes-split nss/lib/freebl/aes-x86.c
---- nss/lib/freebl/aes-x86.c.gcm-aes-split 2017-09-22 12:20:19.746087357 +0200
-+++ nss/lib/freebl/aes-x86.c 2017-09-22 12:20:19.746087357 +0200
-@@ -0,0 +1,157 @@
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-+ * License, v. 2.0. If a copy of the MPL was not distributed with this
-+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-+
-+#ifdef FREEBL_NO_DEPEND
-+#include "stubs.h"
-+#endif
-+#include "rijndael.h"
-+#include "secerr.h"
-+
-+#include <wmmintrin.h> /* aes-ni */
-+
-+#define EXPAND_KEY128(k, rcon, res) \
-+ tmp_key = _mm_aeskeygenassist_si128(k, rcon); \
-+ tmp_key = _mm_shuffle_epi32(tmp_key, 0xFF); \
-+ tmp = _mm_xor_si128(k, _mm_slli_si128(k, 4)); \
-+ tmp = _mm_xor_si128(tmp, _mm_slli_si128(tmp, 4)); \
-+ tmp = _mm_xor_si128(tmp, _mm_slli_si128(tmp, 4)); \
-+ res = _mm_xor_si128(tmp, tmp_key)
-+
-+static void
-+native_key_expansion128(AESContext *cx, const unsigned char *key)
-+{
-+ __m128i *keySchedule = cx->keySchedule;
-+ pre_align __m128i tmp_key post_align;
-+ pre_align __m128i tmp post_align;
-+ keySchedule[0] = _mm_loadu_si128((__m128i *)key);
-+ EXPAND_KEY128(keySchedule[0], 0x01, keySchedule[1]);
-+ EXPAND_KEY128(keySchedule[1], 0x02, keySchedule[2]);
-+ EXPAND_KEY128(keySchedule[2], 0x04, keySchedule[3]);
-+ EXPAND_KEY128(keySchedule[3], 0x08, keySchedule[4]);
-+ EXPAND_KEY128(keySchedule[4], 0x10, keySchedule[5]);
-+ EXPAND_KEY128(keySchedule[5], 0x20, keySchedule[6]);
-+ EXPAND_KEY128(keySchedule[6], 0x40, keySchedule[7]);
-+ EXPAND_KEY128(keySchedule[7], 0x80, keySchedule[8]);
-+ EXPAND_KEY128(keySchedule[8], 0x1B, keySchedule[9]);
-+ EXPAND_KEY128(keySchedule[9], 0x36, keySchedule[10]);
-+}
-+
-+#define EXPAND_KEY192_PART1(res, k0, kt, rcon) \
-+ tmp2 = _mm_slli_si128(k0, 4); \
-+ tmp1 = _mm_xor_si128(k0, tmp2); \
-+ tmp2 = _mm_slli_si128(tmp2, 4); \
-+ tmp1 = _mm_xor_si128(_mm_xor_si128(tmp1, tmp2), _mm_slli_si128(tmp2, 4)); \
-+ tmp2 = _mm_aeskeygenassist_si128(kt, rcon); \
-+ res = _mm_xor_si128(tmp1, _mm_shuffle_epi32(tmp2, 0x55))
-+
-+#define EXPAND_KEY192_PART2(res, k1, k2) \
-+ tmp2 = _mm_xor_si128(k1, _mm_slli_si128(k1, 4)); \
-+ res = _mm_xor_si128(tmp2, _mm_shuffle_epi32(k2, 0xFF))
-+
-+#define EXPAND_KEY192(k0, res1, res2, res3, carry, rcon1, rcon2) \
-+ EXPAND_KEY192_PART1(tmp3, k0, res1, rcon1); \
-+ EXPAND_KEY192_PART2(carry, res1, tmp3); \
-+ res1 = _mm_castpd_si128(_mm_shuffle_pd(_mm_castsi128_pd(res1), \
-+ _mm_castsi128_pd(tmp3), 0)); \
-+ res2 = _mm_castpd_si128(_mm_shuffle_pd(_mm_castsi128_pd(tmp3), \
-+ _mm_castsi128_pd(carry), 1)); \
-+ EXPAND_KEY192_PART1(res3, tmp3, carry, rcon2)
-+
-+static void
-+native_key_expansion192(AESContext *cx, const unsigned char *key)
-+{
-+ __m128i *keySchedule = cx->keySchedule;
-+ pre_align __m128i tmp1 post_align;
-+ pre_align __m128i tmp2 post_align;
-+ pre_align __m128i tmp3 post_align;
-+ pre_align __m128i carry post_align;
-+ keySchedule[0] = _mm_loadu_si128((__m128i *)key);
-+ keySchedule[1] = _mm_loadu_si128((__m128i *)(key + 16));
-+ EXPAND_KEY192(keySchedule[0], keySchedule[1], keySchedule[2],
-+ keySchedule[3], carry, 0x1, 0x2);
-+ EXPAND_KEY192_PART2(keySchedule[4], carry, keySchedule[3]);
-+ EXPAND_KEY192(keySchedule[3], keySchedule[4], keySchedule[5],
-+ keySchedule[6], carry, 0x4, 0x8);
-+ EXPAND_KEY192_PART2(keySchedule[7], carry, keySchedule[6]);
-+ EXPAND_KEY192(keySchedule[6], keySchedule[7], keySchedule[8],
-+ keySchedule[9], carry, 0x10, 0x20);
-+ EXPAND_KEY192_PART2(keySchedule[10], carry, keySchedule[9]);
-+ EXPAND_KEY192(keySchedule[9], keySchedule[10], keySchedule[11],
-+ keySchedule[12], carry, 0x40, 0x80);
-+}
-+
-+#define EXPAND_KEY256_PART(res, rconx, k1x, k2x, X) \
-+ tmp_key = _mm_shuffle_epi32(_mm_aeskeygenassist_si128(k2x, rconx), X); \
-+ tmp2 = _mm_slli_si128(k1x, 4); \
-+ tmp1 = _mm_xor_si128(k1x, tmp2); \
-+ tmp2 = _mm_slli_si128(tmp2, 4); \
-+ tmp1 = _mm_xor_si128(_mm_xor_si128(tmp1, tmp2), _mm_slli_si128(tmp2, 4)); \
-+ res = _mm_xor_si128(tmp1, tmp_key);
-+
-+#define EXPAND_KEY256(res1, res2, k1, k2, rcon) \
-+ EXPAND_KEY256_PART(res1, rcon, k1, k2, 0xFF); \
-+ EXPAND_KEY256_PART(res2, 0x00, k2, res1, 0xAA)
-+
-+static void
-+native_key_expansion256(AESContext *cx, const unsigned char *key)
-+{
-+ __m128i *keySchedule = cx->keySchedule;
-+ pre_align __m128i tmp_key post_align;
-+ pre_align __m128i tmp1 post_align;
-+ pre_align __m128i tmp2 post_align;
-+ keySchedule[0] = _mm_loadu_si128((__m128i *)key);
-+ keySchedule[1] = _mm_loadu_si128((__m128i *)(key + 16));
-+ EXPAND_KEY256(keySchedule[2], keySchedule[3], keySchedule[0],
-+ keySchedule[1], 0x01);
-+ EXPAND_KEY256(keySchedule[4], keySchedule[5], keySchedule[2],
-+ keySchedule[3], 0x02);
-+ EXPAND_KEY256(keySchedule[6], keySchedule[7], keySchedule[4],
-+ keySchedule[5], 0x04);
-+ EXPAND_KEY256(keySchedule[8], keySchedule[9], keySchedule[6],
-+ keySchedule[7], 0x08);
-+ EXPAND_KEY256(keySchedule[10], keySchedule[11], keySchedule[8],
-+ keySchedule[9], 0x10);
-+ EXPAND_KEY256(keySchedule[12], keySchedule[13], keySchedule[10],
-+ keySchedule[11], 0x20);
-+ EXPAND_KEY256_PART(keySchedule[14], 0x40, keySchedule[12],
-+ keySchedule[13], 0xFF);
-+}
-+
-+/*
-+ * AES key expansion using aes-ni instructions.
-+ */
-+void
-+rijndael_native_key_expansion(AESContext *cx, const unsigned char *key,
-+ unsigned int Nk)
-+{
-+ switch (Nk) {
-+ case 4:
-+ native_key_expansion128(cx, key);
-+ return;
-+ case 6:
-+ native_key_expansion192(cx, key);
-+ return;
-+ case 8:
-+ native_key_expansion256(cx, key);
-+ return;
-+ default:
-+ /* This shouldn't happen (checked by the caller). */
-+ return;
-+ }
-+}
-+
-+void
-+rijndael_native_encryptBlock(AESContext *cx,
-+ unsigned char *output,
-+ const unsigned char *input)
-+{
-+ int i;
-+ pre_align __m128i m post_align = _mm_loadu_si128((__m128i *)input);
-+ m = _mm_xor_si128(m, cx->keySchedule[0]);
-+ for (i = 1; i < cx->Nr; ++i) {
-+ m = _mm_aesenc_si128(m, cx->keySchedule[i]);
-+ }
-+ m = _mm_aesenclast_si128(m, cx->keySchedule[cx->Nr]);
-+ _mm_storeu_si128((__m128i *)output, m);
-+}
-diff -up nss/lib/freebl/freebl.gyp.gcm-aes-split nss/lib/freebl/freebl.gyp
---- nss/lib/freebl/freebl.gyp.gcm-aes-split 2017-07-27 16:09:32.000000000 +0200
-+++ nss/lib/freebl/freebl.gyp 2017-09-22 12:20:19.746087357 +0200
-@@ -23,6 +23,37 @@
- ]
- },
- {
-+ 'target_name': 'gcm-aes-x86_c_lib',
-+ 'type': 'static_library',
-+ 'sources': [
-+ 'gcm-x86.c', 'aes-x86.c'
-+ ],
-+ 'dependencies': [
-+ '<(DEPTH)/exports.gyp:nss_exports'
-+ ],
-+ # Enable isa option for pclmul and aes-ni; supported since gcc 4.4.
-+ # This is only supported by x84/x64. It's not needed for Windows,
-+ # unless clang-cl is used.
-+ 'cflags_mozilla': [
-+ '-mpclmul', '-maes'
-+ ],
-+ 'conditions': [
-+ [ 'OS=="linux" or OS=="android" or OS=="dragonfly" or OS=="freebsd" or OS=="netbsd" or OS=="openbsd"', {
-+ 'cflags': [
-+ '-mpclmul', '-maes'
-+ ],
-+ }],
-+ # macOS build doesn't use cflags.
-+ [ 'OS=="mac"', {
-+ 'xcode_settings': {
-+ 'OTHER_CFLAGS': [
-+ '-mpclmul', '-maes'
-+ ],
-+ },
-+ }]
-+ ]
-+ },
-+ {
- 'target_name': 'freebl',
- 'type': 'static_library',
- 'sources': [
-@@ -45,6 +76,11 @@
- '<(DEPTH)/exports.gyp:nss_exports',
- ],
- 'conditions': [
-+ [ 'target_arch=="ia32" or target_arch=="x64"', {
-+ 'dependencies': [
-+ 'gcm-aes-x86_c_lib'
-+ ],
-+ }],
- [ 'OS=="linux"', {
- 'defines!': [
- 'FREEBL_NO_DEPEND',
-@@ -76,6 +112,11 @@
- '<(DEPTH)/exports.gyp:nss_exports',
- ],
- 'conditions': [
-+ [ 'target_arch=="ia32" or target_arch=="x64"', {
-+ 'dependencies': [
-+ 'gcm-aes-x86_c_lib'
-+ ]
-+ }],
- [ 'OS!="linux" and OS!="android"', {
- 'conditions': [
- [ 'moz_fold_libs==0', {
-@@ -259,14 +300,6 @@
- 'MP_USE_UINT_DIGIT',
- ],
- }],
-- [ 'target_arch=="ia32" or target_arch=="x64"', {
-- 'cflags': [
-- # enable isa option for pclmul am aes-ni; supported since gcc 4.4
-- # This is only support by x84/x64. It's not needed for Windows.
-- '-mpclmul',
-- '-maes',
-- ],
-- }],
- [ 'target_arch=="arm"', {
- 'defines': [
- 'MP_ASSEMBLY_MULTIPLY',
-diff -up nss/lib/freebl/gcm.c.gcm-aes-split nss/lib/freebl/gcm.c
---- nss/lib/freebl/gcm.c.gcm-aes-split 2017-09-22 12:20:19.744087402 +0200
-+++ nss/lib/freebl/gcm.c 2017-09-22 12:20:19.746087357 +0200
-@@ -17,18 +17,50 @@
-
- #include <limits.h>
-
--#ifdef NSS_X86_OR_X64
--#include <wmmintrin.h> /* clmul */
--#endif
--
- /* Forward declarations */
-+SECStatus gcm_HashInit_hw(gcmHashContext *ghash);
-+SECStatus gcm_HashWrite_hw(gcmHashContext *ghash, unsigned char *outbuf);
- SECStatus gcm_HashMult_hw(gcmHashContext *ghash, const unsigned char *buf,
- unsigned int count);
-+SECStatus gcm_HashZeroX_hw(gcmHashContext *ghash);
- SECStatus gcm_HashMult_sftw(gcmHashContext *ghash, const unsigned char *buf,
- unsigned int count);
- SECStatus gcm_HashMult_sftw32(gcmHashContext *ghash, const unsigned char *buf,
- unsigned int count);
-
-+/* Stub definitions for the above *_hw functions, which shouldn't be
-+ * used unless NSS_X86_OR_X64 is defined */
-+#ifndef NSS_X86_OR_X64
-+SECStatus
-+gcm_HashWrite_hw(gcmHashContext *ghash, unsigned char *outbuf)
-+{
-+ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
-+ return SECFailure;
-+}
-+
-+SECStatus
-+gcm_HashMult_hw(gcmHashContext *ghash, const unsigned char *buf,
-+ unsigned int count)
-+{
-+ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
-+ return SECFailure;
-+}
-+
-+SECStatus
-+gcm_HashInit_hw(gcmHashContext *ghash)
-+{
-+ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
-+ return SECFailure;
-+}
-+
-+SECStatus
-+gcm_HashZeroX_hw(gcmHashContext *ghash)
-+{
-+ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
-+ return SECFailure;
-+}
-+#endif /* NSS_X86_OR_X64 */
-+
- uint64_t
- get64(const unsigned char *bytes)
- {
-@@ -46,6 +78,8 @@ get64(const unsigned char *bytes)
- SECStatus
- gcmHash_InitContext(gcmHashContext *ghash, const unsigned char *H, PRBool sw)
- {
-+ SECStatus rv = SECSuccess;
-+
- ghash->cLen = 0;
- ghash->bufLen = 0;
- PORT_Memset(ghash->counterBuf, 0, sizeof(ghash->counterBuf));
-@@ -53,17 +87,7 @@ gcmHash_InitContext(gcmHashContext *ghas
- ghash->h_low = get64(H + 8);
- ghash->h_high = get64(H);
- if (clmul_support() && !sw) {
--#ifdef NSS_X86_OR_X64
-- ghash->ghash_mul = gcm_HashMult_hw;
-- ghash->x = _mm_setzero_si128();
-- /* MSVC requires __m64 to load epi64. */
-- ghash->h = _mm_set_epi32(ghash->h_high >> 32, (uint32_t)ghash->h_high,
-- ghash->h_low >> 32, (uint32_t)ghash->h_low);
-- ghash->hw = PR_TRUE;
--#else
-- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
-- return SECFailure;
--#endif /* NSS_X86_OR_X64 */
-+ rv = gcm_HashInit_hw(ghash);
- } else {
- /* We fall back to the software implementation if we can't use / don't
- * want to use pclmul. */
-@@ -75,7 +99,7 @@ gcmHash_InitContext(gcmHashContext *ghas
- ghash->x_high = ghash->x_low = 0;
- ghash->hw = PR_FALSE;
- }
-- return SECSuccess;
-+ return rv;
- }
-
- #ifdef HAVE_INT128_SUPPORT
-@@ -283,102 +307,17 @@ gcm_HashMult_sftw32(gcmHashContext *ghas
- }
- #endif /* HAVE_INT128_SUPPORT */
-
--SECStatus
--gcm_HashMult_hw(gcmHashContext *ghash, const unsigned char *buf,
-- unsigned int count)
--{
--#ifdef NSS_X86_OR_X64
-- size_t i;
-- pre_align __m128i z_high post_align;
-- pre_align __m128i z_low post_align;
-- pre_align __m128i C post_align;
-- pre_align __m128i D post_align;
-- pre_align __m128i E post_align;
-- pre_align __m128i F post_align;
-- pre_align __m128i bin post_align;
-- pre_align __m128i Ci post_align;
-- pre_align __m128i tmp post_align;
--
-- for (i = 0; i < count; i++, buf += 16) {
-- bin = _mm_set_epi16(((uint16_t)buf[0] << 8) | buf[1],
-- ((uint16_t)buf[2] << 8) | buf[3],
-- ((uint16_t)buf[4] << 8) | buf[5],
-- ((uint16_t)buf[6] << 8) | buf[7],
-- ((uint16_t)buf[8] << 8) | buf[9],
-- ((uint16_t)buf[10] << 8) | buf[11],
-- ((uint16_t)buf[12] << 8) | buf[13],
-- ((uint16_t)buf[14] << 8) | buf[15]);
-- Ci = _mm_xor_si128(bin, ghash->x);
--
-- /* Do binary mult ghash->X = Ci * ghash->H. */
-- C = _mm_clmulepi64_si128(Ci, ghash->h, 0x00);
-- D = _mm_clmulepi64_si128(Ci, ghash->h, 0x11);
-- E = _mm_clmulepi64_si128(Ci, ghash->h, 0x01);
-- F = _mm_clmulepi64_si128(Ci, ghash->h, 0x10);
-- tmp = _mm_xor_si128(E, F);
-- z_high = _mm_xor_si128(tmp, _mm_slli_si128(D, 8));
-- z_high = _mm_unpackhi_epi64(z_high, D);
-- z_low = _mm_xor_si128(_mm_slli_si128(tmp, 8), C);
-- z_low = _mm_unpackhi_epi64(_mm_slli_si128(C, 8), z_low);
--
-- /* Shift one to the left (multiply by x) as gcm spec is stupid. */
-- C = _mm_slli_si128(z_low, 8);
-- E = _mm_srli_epi64(C, 63);
-- D = _mm_slli_si128(z_high, 8);
-- F = _mm_srli_epi64(D, 63);
-- /* Carry over */
-- C = _mm_srli_si128(z_low, 8);
-- D = _mm_srli_epi64(C, 63);
-- z_low = _mm_or_si128(_mm_slli_epi64(z_low, 1), E);
-- z_high = _mm_or_si128(_mm_or_si128(_mm_slli_epi64(z_high, 1), F), D);
--
-- /* Reduce */
-- C = _mm_slli_si128(z_low, 8);
-- /* D = z_low << 127 */
-- D = _mm_slli_epi64(C, 63);
-- /* E = z_low << 126 */
-- E = _mm_slli_epi64(C, 62);
-- /* F = z_low << 121 */
-- F = _mm_slli_epi64(C, 57);
-- /* z_low ^= (z_low << 127) ^ (z_low << 126) ^ (z_low << 121); */
-- z_low = _mm_xor_si128(_mm_xor_si128(_mm_xor_si128(z_low, D), E), F);
-- C = _mm_srli_si128(z_low, 8);
-- /* D = z_low >> 1 */
-- D = _mm_slli_epi64(C, 63);
-- D = _mm_or_si128(_mm_srli_epi64(z_low, 1), D);
-- /* E = z_low >> 2 */
-- E = _mm_slli_epi64(C, 62);
-- E = _mm_or_si128(_mm_srli_epi64(z_low, 2), E);
-- /* F = z_low >> 7 */
-- F = _mm_slli_epi64(C, 57);
-- F = _mm_or_si128(_mm_srli_epi64(z_low, 7), F);
-- /* ghash->x ^= z_low ^ (z_low >> 1) ^ (z_low >> 2) ^ (z_low >> 7); */
-- ghash->x = _mm_xor_si128(_mm_xor_si128(
-- _mm_xor_si128(_mm_xor_si128(z_high, z_low), D), E),
-- F);
-- }
-- return SECSuccess;
--#else
-- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
-- return SECFailure;
--#endif /* NSS_X86_OR_X64 */
--}
--
- static SECStatus
- gcm_zeroX(gcmHashContext *ghash)
- {
-+ SECStatus rv = SECSuccess;
-+
- if (ghash->hw) {
--#ifdef NSS_X86_OR_X64
-- ghash->x = _mm_setzero_si128();
-- return SECSuccess;
--#else
-- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
-- return SECFailure;
--#endif /* NSS_X86_OR_X64 */
-+ rv = gcm_HashZeroX_hw(ghash);
- }
-
- ghash->x_high = ghash->x_low = 0;
-- return SECSuccess;
-+ return rv;
- }
-
- /*
-@@ -503,15 +442,10 @@ gcmHash_Final(gcmHashContext *ghash, uns
- }
-
- if (ghash->hw) {
--#ifdef NSS_X86_OR_X64
-- uint64_t tmp_out[2];
-- _mm_storeu_si128((__m128i *)tmp_out, ghash->x);
-- WRITE64(tmp_out[0], T + 8);
-- WRITE64(tmp_out[1], T);
--#else
-- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
-- return SECFailure;
--#endif /* NSS_X86_OR_X64 */
-+ rv = gcm_HashWrite_hw(ghash, T);
-+ if (rv != SECSuccess) {
-+ goto cleanup;
-+ }
- } else {
- WRITE64(ghash->x_low, T + 8);
- WRITE64(ghash->x_high, T);
-diff -up nss/lib/freebl/gcm.h.gcm-aes-split nss/lib/freebl/gcm.h
---- nss/lib/freebl/gcm.h.gcm-aes-split 2017-07-27 16:09:32.000000000 +0200
-+++ nss/lib/freebl/gcm.h 2017-09-22 12:20:19.747087334 +0200
-@@ -9,7 +9,21 @@
- #include <stdint.h>
-
- #ifdef NSS_X86_OR_X64
-+/* GCC <= 4.8 doesn't support including emmintrin.h without enabling SSE2 */
-+#if !defined(__clang__) && defined(__GNUC__) && defined(__GNUC_MINOR__) && \
-+ (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ <= 8))
-+#pragma GCC push_options
-+#pragma GCC target("sse2")
-+#undef NSS_DISABLE_SSE2
-+#define NSS_DISABLE_SSE2 1
-+#endif /* GCC <= 4.8 */
-+
- #include <emmintrin.h> /* __m128i */
-+
-+#ifdef NSS_DISABLE_SSE2
-+#undef NSS_DISABLE_SSE2
-+#pragma GCC pop_options
-+#endif /* NSS_DISABLE_SSE2 */
- #endif
-
- SEC_BEGIN_PROTOS
-diff -up nss/lib/freebl/gcm-x86.c.gcm-aes-split nss/lib/freebl/gcm-x86.c
---- nss/lib/freebl/gcm-x86.c.gcm-aes-split 2017-09-22 12:20:19.746087357 +0200
-+++ nss/lib/freebl/gcm-x86.c 2017-09-22 12:20:19.746087357 +0200
-@@ -0,0 +1,127 @@
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-+ * License, v. 2.0. If a copy of the MPL was not distributed with this
-+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-+
-+#ifdef FREEBL_NO_DEPEND
-+#include "stubs.h"
-+#endif
-+#include "gcm.h"
-+#include "secerr.h"
-+
-+#include <wmmintrin.h> /* clmul */
-+
-+#define WRITE64(x, bytes) \
-+ (bytes)[0] = (x) >> 56; \
-+ (bytes)[1] = (x) >> 48; \
-+ (bytes)[2] = (x) >> 40; \
-+ (bytes)[3] = (x) >> 32; \
-+ (bytes)[4] = (x) >> 24; \
-+ (bytes)[5] = (x) >> 16; \
-+ (bytes)[6] = (x) >> 8; \
-+ (bytes)[7] = (x);
-+
-+SECStatus
-+gcm_HashWrite_hw(gcmHashContext *ghash, unsigned char *outbuf)
-+{
-+ uint64_t tmp_out[2];
-+ _mm_storeu_si128((__m128i *)tmp_out, ghash->x);
-+ /* maxout must be larger than 16 byte (checked by the caller). */
-+ WRITE64(tmp_out[0], outbuf + 8);
-+ WRITE64(tmp_out[1], outbuf);
-+ return SECSuccess;
-+}
-+
-+SECStatus
-+gcm_HashMult_hw(gcmHashContext *ghash, const unsigned char *buf,
-+ unsigned int count)
-+{
-+ size_t i;
-+ pre_align __m128i z_high post_align;
-+ pre_align __m128i z_low post_align;
-+ pre_align __m128i C post_align;
-+ pre_align __m128i D post_align;
-+ pre_align __m128i E post_align;
-+ pre_align __m128i F post_align;
-+ pre_align __m128i bin post_align;
-+ pre_align __m128i Ci post_align;
-+ pre_align __m128i tmp post_align;
-+
-+ for (i = 0; i < count; i++, buf += 16) {
-+ bin = _mm_set_epi16(((uint16_t)buf[0] << 8) | buf[1],
-+ ((uint16_t)buf[2] << 8) | buf[3],
-+ ((uint16_t)buf[4] << 8) | buf[5],
-+ ((uint16_t)buf[6] << 8) | buf[7],
-+ ((uint16_t)buf[8] << 8) | buf[9],
-+ ((uint16_t)buf[10] << 8) | buf[11],
-+ ((uint16_t)buf[12] << 8) | buf[13],
-+ ((uint16_t)buf[14] << 8) | buf[15]);
-+ Ci = _mm_xor_si128(bin, ghash->x);
-+
-+ /* Do binary mult ghash->X = Ci * ghash->H. */
-+ C = _mm_clmulepi64_si128(Ci, ghash->h, 0x00);
-+ D = _mm_clmulepi64_si128(Ci, ghash->h, 0x11);
-+ E = _mm_clmulepi64_si128(Ci, ghash->h, 0x01);
-+ F = _mm_clmulepi64_si128(Ci, ghash->h, 0x10);
-+ tmp = _mm_xor_si128(E, F);
-+ z_high = _mm_xor_si128(tmp, _mm_slli_si128(D, 8));
-+ z_high = _mm_unpackhi_epi64(z_high, D);
-+ z_low = _mm_xor_si128(_mm_slli_si128(tmp, 8), C);
-+ z_low = _mm_unpackhi_epi64(_mm_slli_si128(C, 8), z_low);
-+
-+ /* Shift one to the left (multiply by x) as gcm spec is stupid. */
-+ C = _mm_slli_si128(z_low, 8);
-+ E = _mm_srli_epi64(C, 63);
-+ D = _mm_slli_si128(z_high, 8);
-+ F = _mm_srli_epi64(D, 63);
-+ /* Carry over */
-+ C = _mm_srli_si128(z_low, 8);
-+ D = _mm_srli_epi64(C, 63);
-+ z_low = _mm_or_si128(_mm_slli_epi64(z_low, 1), E);
-+ z_high = _mm_or_si128(_mm_or_si128(_mm_slli_epi64(z_high, 1), F), D);
-+
-+ /* Reduce */
-+ C = _mm_slli_si128(z_low, 8);
-+ /* D = z_low << 127 */
-+ D = _mm_slli_epi64(C, 63);
-+ /* E = z_low << 126 */
-+ E = _mm_slli_epi64(C, 62);
-+ /* F = z_low << 121 */
-+ F = _mm_slli_epi64(C, 57);
-+ /* z_low ^= (z_low << 127) ^ (z_low << 126) ^ (z_low << 121); */
-+ z_low = _mm_xor_si128(_mm_xor_si128(_mm_xor_si128(z_low, D), E), F);
-+ C = _mm_srli_si128(z_low, 8);
-+ /* D = z_low >> 1 */
-+ D = _mm_slli_epi64(C, 63);
-+ D = _mm_or_si128(_mm_srli_epi64(z_low, 1), D);
-+ /* E = z_low >> 2 */
-+ E = _mm_slli_epi64(C, 62);
-+ E = _mm_or_si128(_mm_srli_epi64(z_low, 2), E);
-+ /* F = z_low >> 7 */
-+ F = _mm_slli_epi64(C, 57);
-+ F = _mm_or_si128(_mm_srli_epi64(z_low, 7), F);
-+ /* ghash->x ^= z_low ^ (z_low >> 1) ^ (z_low >> 2) ^ (z_low >> 7); */
-+ ghash->x = _mm_xor_si128(_mm_xor_si128(
-+ _mm_xor_si128(_mm_xor_si128(z_high, z_low), D), E),
-+ F);
-+ }
-+ return SECSuccess;
-+}
-+
-+SECStatus
-+gcm_HashInit_hw(gcmHashContext *ghash)
-+{
-+ ghash->ghash_mul = gcm_HashMult_hw;
-+ ghash->x = _mm_setzero_si128();
-+ /* MSVC requires __m64 to load epi64. */
-+ ghash->h = _mm_set_epi32(ghash->h_high >> 32, (uint32_t)ghash->h_high,
-+ ghash->h_low >> 32, (uint32_t)ghash->h_low);
-+ ghash->hw = PR_TRUE;
-+ return SECSuccess;
-+}
-+
-+SECStatus
-+gcm_HashZeroX_hw(gcmHashContext *ghash)
-+{
-+ ghash->x = _mm_setzero_si128();
-+ return SECSuccess;
-+}
-diff -up nss/lib/freebl/Makefile.gcm-aes-split nss/lib/freebl/Makefile
---- nss/lib/freebl/Makefile.gcm-aes-split 2017-07-27 16:09:32.000000000 +0200
-+++ nss/lib/freebl/Makefile 2017-09-22 12:20:19.746087357 +0200
-@@ -110,7 +110,9 @@ endif
- # NSS_X86_OR_X64 means the target is either x86 or x64
- ifeq (,$(filter-out i386 x386 x86 x86_64,$(CPU_ARCH)))
- DEFINES += -DNSS_X86_OR_X64
-- CFLAGS += -mpclmul -maes
-+ EXTRA_SRCS += gcm-x86.c aes-x86.c
-+$(OBJDIR)/gcm-x86.o: CFLAGS += -mpclmul -maes
-+$(OBJDIR)/aes-x86.o: CFLAGS += -mpclmul -maes
- ifneq (,$(USE_64)$(USE_X32))
- DEFINES += -DNSS_X64
- else
-diff -up nss/lib/freebl/rijndael.c.gcm-aes-split nss/lib/freebl/rijndael.c
---- nss/lib/freebl/rijndael.c.gcm-aes-split 2017-09-22 12:20:19.744087402 +0200
-+++ nss/lib/freebl/rijndael.c 2017-09-22 12:21:29.639503351 +0200
-@@ -27,6 +27,34 @@
- #include "intel-gcm.h"
- #endif /* INTEL_GCM */
-
-+/* Forward declarations */
-+void rijndael_native_key_expansion(AESContext *cx, const unsigned char *key,
-+ unsigned int Nk);
-+void rijndael_native_encryptBlock(AESContext *cx,
-+ unsigned char *output,
-+ const unsigned char *input);
-+
-+/* Stub definitions for the above rijndael_native_* functions, which
-+ * shouldn't be used unless NSS_X86_OR_X64 is defined */
-+#ifndef NSS_X86_OR_X64
-+void
-+rijndael_native_key_expansion(AESContext *cx, const unsigned char *key,
-+ unsigned int Nk)
-+{
-+ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
-+ PORT_Assert(0);
-+}
-+
-+void
-+rijndael_native_encryptBlock(AESContext *cx,
-+ unsigned char *output,
-+ const unsigned char *input)
-+{
-+ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
-+ PORT_Assert(0);
-+}
-+#endif /* NSS_X86_OR_X64 */
-+
- /*
- * There are currently five ways to build this code, varying in performance
- * and code size.
-@@ -389,162 +417,6 @@ rijndael_key_expansion7(AESContext *cx,
- }
- }
-
--#if defined(NSS_X86_OR_X64)
--#define EXPAND_KEY128(k, rcon, res) \
-- tmp_key = _mm_aeskeygenassist_si128(k, rcon); \
-- tmp_key = _mm_shuffle_epi32(tmp_key, 0xFF); \
-- tmp = _mm_xor_si128(k, _mm_slli_si128(k, 4)); \
-- tmp = _mm_xor_si128(tmp, _mm_slli_si128(tmp, 4)); \
-- tmp = _mm_xor_si128(tmp, _mm_slli_si128(tmp, 4)); \
-- res = _mm_xor_si128(tmp, tmp_key)
--
--static void
--native_key_expansion128(AESContext *cx, const unsigned char *key)
--{
-- __m128i *keySchedule = cx->keySchedule;
-- pre_align __m128i tmp_key post_align;
-- pre_align __m128i tmp post_align;
-- keySchedule[0] = _mm_loadu_si128((__m128i *)key);
-- EXPAND_KEY128(keySchedule[0], 0x01, keySchedule[1]);
-- EXPAND_KEY128(keySchedule[1], 0x02, keySchedule[2]);
-- EXPAND_KEY128(keySchedule[2], 0x04, keySchedule[3]);
-- EXPAND_KEY128(keySchedule[3], 0x08, keySchedule[4]);
-- EXPAND_KEY128(keySchedule[4], 0x10, keySchedule[5]);
-- EXPAND_KEY128(keySchedule[5], 0x20, keySchedule[6]);
-- EXPAND_KEY128(keySchedule[6], 0x40, keySchedule[7]);
-- EXPAND_KEY128(keySchedule[7], 0x80, keySchedule[8]);
-- EXPAND_KEY128(keySchedule[8], 0x1B, keySchedule[9]);
-- EXPAND_KEY128(keySchedule[9], 0x36, keySchedule[10]);
--}
--
--#define EXPAND_KEY192_PART1(res, k0, kt, rcon) \
-- tmp2 = _mm_slli_si128(k0, 4); \
-- tmp1 = _mm_xor_si128(k0, tmp2); \
-- tmp2 = _mm_slli_si128(tmp2, 4); \
-- tmp1 = _mm_xor_si128(_mm_xor_si128(tmp1, tmp2), _mm_slli_si128(tmp2, 4)); \
-- tmp2 = _mm_aeskeygenassist_si128(kt, rcon); \
-- res = _mm_xor_si128(tmp1, _mm_shuffle_epi32(tmp2, 0x55))
--
--#define EXPAND_KEY192_PART2(res, k1, k2) \
-- tmp2 = _mm_xor_si128(k1, _mm_slli_si128(k1, 4)); \
-- res = _mm_xor_si128(tmp2, _mm_shuffle_epi32(k2, 0xFF))
--
--#define EXPAND_KEY192(k0, res1, res2, res3, carry, rcon1, rcon2) \
-- EXPAND_KEY192_PART1(tmp3, k0, res1, rcon1); \
-- EXPAND_KEY192_PART2(carry, res1, tmp3); \
-- res1 = _mm_castpd_si128(_mm_shuffle_pd(_mm_castsi128_pd(res1), \
-- _mm_castsi128_pd(tmp3), 0)); \
-- res2 = _mm_castpd_si128(_mm_shuffle_pd(_mm_castsi128_pd(tmp3), \
-- _mm_castsi128_pd(carry), 1)); \
-- EXPAND_KEY192_PART1(res3, tmp3, carry, rcon2)
--
--static void
--native_key_expansion192(AESContext *cx, const unsigned char *key)
--{
-- __m128i *keySchedule = cx->keySchedule;
-- pre_align __m128i tmp1 post_align;
-- pre_align __m128i tmp2 post_align;
-- pre_align __m128i tmp3 post_align;
-- pre_align __m128i carry post_align;
-- keySchedule[0] = _mm_loadu_si128((__m128i *)key);
-- keySchedule[1] = _mm_loadu_si128((__m128i *)(key + 16));
-- EXPAND_KEY192(keySchedule[0], keySchedule[1], keySchedule[2],
-- keySchedule[3], carry, 0x1, 0x2);
-- EXPAND_KEY192_PART2(keySchedule[4], carry, keySchedule[3]);
-- EXPAND_KEY192(keySchedule[3], keySchedule[4], keySchedule[5],
-- keySchedule[6], carry, 0x4, 0x8);
-- EXPAND_KEY192_PART2(keySchedule[7], carry, keySchedule[6]);
-- EXPAND_KEY192(keySchedule[6], keySchedule[7], keySchedule[8],
-- keySchedule[9], carry, 0x10, 0x20);
-- EXPAND_KEY192_PART2(keySchedule[10], carry, keySchedule[9]);
-- EXPAND_KEY192(keySchedule[9], keySchedule[10], keySchedule[11],
-- keySchedule[12], carry, 0x40, 0x80);
--}
--
--#define EXPAND_KEY256_PART(res, rconx, k1x, k2x, X) \
-- tmp_key = _mm_shuffle_epi32(_mm_aeskeygenassist_si128(k2x, rconx), X); \
-- tmp2 = _mm_slli_si128(k1x, 4); \
-- tmp1 = _mm_xor_si128(k1x, tmp2); \
-- tmp2 = _mm_slli_si128(tmp2, 4); \
-- tmp1 = _mm_xor_si128(_mm_xor_si128(tmp1, tmp2), _mm_slli_si128(tmp2, 4)); \
-- res = _mm_xor_si128(tmp1, tmp_key);
--
--#define EXPAND_KEY256(res1, res2, k1, k2, rcon) \
-- EXPAND_KEY256_PART(res1, rcon, k1, k2, 0xFF); \
-- EXPAND_KEY256_PART(res2, 0x00, k2, res1, 0xAA)
--
--static void
--native_key_expansion256(AESContext *cx, const unsigned char *key)
--{
-- __m128i *keySchedule = cx->keySchedule;
-- pre_align __m128i tmp_key post_align;
-- pre_align __m128i tmp1 post_align;
-- pre_align __m128i tmp2 post_align;
-- keySchedule[0] = _mm_loadu_si128((__m128i *)key);
-- keySchedule[1] = _mm_loadu_si128((__m128i *)(key + 16));
-- EXPAND_KEY256(keySchedule[2], keySchedule[3], keySchedule[0],
-- keySchedule[1], 0x01);
-- EXPAND_KEY256(keySchedule[4], keySchedule[5], keySchedule[2],
-- keySchedule[3], 0x02);
-- EXPAND_KEY256(keySchedule[6], keySchedule[7], keySchedule[4],
-- keySchedule[5], 0x04);
-- EXPAND_KEY256(keySchedule[8], keySchedule[9], keySchedule[6],
-- keySchedule[7], 0x08);
-- EXPAND_KEY256(keySchedule[10], keySchedule[11], keySchedule[8],
-- keySchedule[9], 0x10);
-- EXPAND_KEY256(keySchedule[12], keySchedule[13], keySchedule[10],
-- keySchedule[11], 0x20);
-- EXPAND_KEY256_PART(keySchedule[14], 0x40, keySchedule[12],
-- keySchedule[13], 0xFF);
--}
--
--#endif /* NSS_X86_OR_X64 */
--
--/*
-- * AES key expansion using aes-ni instructions.
-- */
--static void
--native_key_expansion(AESContext *cx, const unsigned char *key, unsigned int Nk)
--{
--#ifdef NSS_X86_OR_X64
-- switch (Nk) {
-- case 4:
-- native_key_expansion128(cx, key);
-- return;
-- case 6:
-- native_key_expansion192(cx, key);
-- return;
-- case 8:
-- native_key_expansion256(cx, key);
-- return;
-- default:
-- /* This shouldn't happen. */
-- PORT_Assert(0);
-- }
--#else
-- PORT_Assert(0);
--#endif /* NSS_X86_OR_X64 */
--}
--
--static void
--native_encryptBlock(AESContext *cx,
-- unsigned char *output,
-- const unsigned char *input)
--{
--#ifdef NSS_X86_OR_X64
-- int i;
-- pre_align __m128i m post_align = _mm_loadu_si128((__m128i *)input);
-- m = _mm_xor_si128(m, cx->keySchedule[0]);
-- for (i = 1; i < cx->Nr; ++i) {
-- m = _mm_aesenc_si128(m, cx->keySchedule[i]);
-- }
-- m = _mm_aesenclast_si128(m, cx->keySchedule[cx->Nr]);
-- _mm_storeu_si128((__m128i *)output, m);
--#else
-- PORT_Assert(0);
--#endif /* NSS_X86_OR_X64 */
--}
--
- /* rijndael_key_expansion
- *
- * Generate the expanded key from the key input by the user.
-@@ -910,7 +782,7 @@ rijndael_encryptECB(AESContext *cx, unsi
-
- if (aesni_support()) {
- /* Use hardware acceleration for normal AES parameters. */
-- encryptor = &native_encryptBlock;
-+ encryptor = &rijndael_native_encryptBlock;
- } else {
- encryptor = &rijndael_encryptBlock128;
- }
-@@ -1124,7 +996,7 @@ aes_InitContext(AESContext *cx, const un
- cx->mode == NSS_AES_CTR)) {
- PORT_Assert(keysize == 16 || keysize == 24 || keysize == 32);
- /* Prepare hardware key for normal AES parameters. */
-- native_key_expansion(cx, key, Nk);
-+ rijndael_native_key_expansion(cx, key, Nk);
- } else {
- rijndael_key_expansion(cx, key, Nk);
- }
-diff -up nss/lib/freebl/rijndael.h.gcm-aes-split nss/lib/freebl/rijndael.h
---- nss/lib/freebl/rijndael.h.gcm-aes-split 2017-07-27 16:09:32.000000000 +0200
-+++ nss/lib/freebl/rijndael.h 2017-09-22 12:20:19.747087334 +0200
-@@ -8,8 +8,22 @@
- #include "blapii.h"
- #include <stdint.h>
-
--#ifdef NSS_X86_OR_X64
--#include <wmmintrin.h> /* aes-ni */
-+#if defined(NSS_X86_OR_X64)
-+/* GCC <= 4.8 doesn't support including emmintrin.h without enabling SSE2 */
-+#if !defined(__clang__) && defined(__GNUC__) && defined(__GNUC_MINOR__) && \
-+ (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ <= 8))
-+#pragma GCC push_options
-+#pragma GCC target("sse2")
-+#undef NSS_DISABLE_SSE2
-+#define NSS_DISABLE_SSE2 1
-+#endif /* GCC <= 4.8 */
-+
-+#include <emmintrin.h> /* __m128i */
-+
-+#ifdef NSS_DISABLE_SSE2
-+#undef NSS_DISABLE_SSE2
-+#pragma GCC pop_options
-+#endif /* NSS_DISABLE_SSE2 */
- #endif
-
- typedef void AESBlockFunc(AESContext *cx,
diff --git a/nss-softokn.spec b/nss-softokn.spec
index 362f3cb..3832ef0 100644
--- a/nss-softokn.spec
+++ b/nss-softokn.spec
@@ -1,6 +1,6 @@
-%global nspr_version 4.16.0
+%global nspr_version 4.17.0
%global nss_name nss
-%global nss_util_version 3.32.0
+%global nss_util_version 3.33.0
%global unsupported_tools_directory %{_libdir}/nss/unsupported-tools
%global saved_files_dir %{_libdir}/nss/saved
%global prelink_conf_dir %{_sysconfdir}/prelink.conf.d/
@@ -29,10 +29,10 @@
Summary: Network Security Services Softoken Module
Name: nss-softokn
-Version: 3.32.0
+Version: 3.33.0
# for Rawhide, please always use release >= 2
# for Fedora release branches, please use release < 2 (1.0, 1.1, ...)
-Release: 9%{?dist}
+Release: 2%{?dist}
License: MPLv2.0
URL: http://www.mozilla.org/projects/security/pki/nss/
Group: System Environment/Libraries
@@ -84,12 +84,6 @@ Patch10: iquote.patch
# Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1236720
Patch11: nss-softokn-add_encrypt_derive.patch
-# Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1389052
-Patch12: nss-softokn-aligned_alloc.patch
-
-# Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1400603
-Patch13: nss-softokn-gcm-aes-split.patch
-
%description
Network Security Services Softoken Cryptographic Module
@@ -141,9 +135,7 @@ Header and library files for doing development with Network Security Services.
pushd nss
# activate if needed when doing a major update with new apis
%patch10 -p1 -b .iquote
-%patch11 -p0 -b .add_encrypt_derive
-%patch12 -p1 -b .aligned_alloc
-%patch13 -p1 -b .gcm-aes-split
+%patch11 -p1 -b .add_encrypt_derive
popd
%build
@@ -443,6 +435,10 @@ done
%{_includedir}/nss3/shsign.h
%changelog
+* Tue Oct 3 2017 Daiki Ueno <dueno(a)redhat.com> - 3.33.0-2
+- Update to NSS 3.33.0
+- Revert the SSE2 changes, as we postopone it until the 3.34 rebase
+
* Fri Sep 22 2017 Daiki Ueno <dueno(a)redhat.com> - 3.32.0-9
- Replace disable-sse2 patch with upstreamed solution
diff --git a/sources b/sources
index 5b1aaa5..3b5bf3f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (nss-softokn-3.32.0.tar.gz) = 3c2deaa1bfe4509efd1f2c65cc4a7b4dc8178cc80124b0279b9ecd0cbea7b13b71dffa9027750b70a5a9ef094eb2e1827f214f953945cc00790fba867d8b7887
+SHA512 (nss-softokn-3.33.0.tar.gz) = 16688e71ee775b1a4ffaa93577b1f46664204b698e574198bc204a9d3451180f6962a73ada9b3427e9f0c094e3d1b1a86c1a9261e4e36f42959aef6ebb51452c
commit 2eceb436b38e10fb38610179ae19419433fd13d3
Author: Daiki Ueno <dueno(a)redhat.com>
Date: Fri Sep 22 12:25:39 2017 +0200
Replace disable-sse2 patch with upstreamed solution
diff --git a/nss-softokn-disable-sse2.patch b/nss-softokn-disable-sse2.patch
deleted file mode 100644
index cc9a9fa..0000000
--- a/nss-softokn-disable-sse2.patch
+++ /dev/null
@@ -1,299 +0,0 @@
-From 385ae89cce762030769c7613bd0c81ec7e171bc3 Mon Sep 17 00:00:00 2001
-From: Daiki Ueno <dueno(a)redhat.com>
-Date: Fri, 15 Sep 2017 17:28:15 +0200
-Subject: [PATCH] freebl: Make it possible to compile without SSE2
-
-Since this commit:
-https://hg.mozilla.org/projects/nss/rev/cd068f7ce6ae11120f8e4427aa2e8ac35a69e764
-NSS build always enable the GCC options -mpclmul and -maes.
-
-Although these hardware features can be turned off with
-envvars (NSS_DISABLE_PCLMUL, NSS_DISABLE_HW_AES, and NSS_DISABLE_AVX),
-these compiler options also require SSE2, which is not yet mandated in
-Fedora 27 (i686).
-
-This patch exposes those envvars as a build time option to make it
-possible to compile NSS without SSE2.
-
-Reported and analyzed by Tomasz Torcz, Eugene Kanter, and Davide
-Repetto in:
-https://bugzilla.redhat.com/show_bug.cgi?id=1482798
-https://bugzilla.redhat.com/show_bug.cgi?id=1485656
----
- lib/freebl/Makefile | 14 +++++++++++++-
- lib/freebl/blinit.c | 21 ++++++++++++++++++++-
- lib/freebl/gcm.c | 20 +++++++++++++-------
- lib/freebl/rijndael.c | 26 ++++++++++++++++----------
- 4 files changed, 62 insertions(+), 19 deletions(-)
-
-diff --git a/lib/freebl/Makefile b/lib/freebl/Makefile
-index d50e18696..7a90b95de 100644
---- a/lib/freebl/Makefile
-+++ b/lib/freebl/Makefile
-@@ -110,7 +110,19 @@ endif
- # NSS_X86_OR_X64 means the target is either x86 or x64
- ifeq (,$(filter-out i386 x386 x86 x86_64,$(CPU_ARCH)))
- DEFINES += -DNSS_X86_OR_X64
-- CFLAGS += -mpclmul -maes
-+ifdef NSS_DISABLE_PCLMUL
-+ DEFINES += -DNSS_DISABLE_PCLMUL
-+else
-+ CFLAGS += -mpclmul
-+endif
-+ifdef NSS_DISABLE_HW_AES
-+ DEFINES += -DNSS_DISABLE_HW_AES
-+else
-+ CFLAGS += -maes
-+endif
-+ifdef NSS_DISABLE_AVX
-+ DEFINES += -DNSS_DISABLE_AVX
-+endif
- ifneq (,$(USE_64)$(USE_X32))
- DEFINES += -DNSS_X64
- else
-diff --git a/lib/freebl/blinit.c b/lib/freebl/blinit.c
-index d7f2ec53a..04958fe4d 100644
---- a/lib/freebl/blinit.c
-+++ b/lib/freebl/blinit.c
-@@ -25,6 +25,8 @@ static PRBool clmul_support_ = PR_FALSE;
- static PRBool avx_support_ = PR_FALSE;
-
- #ifdef NSS_X86_OR_X64
-+
-+#ifndef NSS_DISABLE_AVX
- /*
- * Adapted from the example code in "How to detect New Instruction support in
- * the 4th generation Intel Core processor family" by Max Locktyukhin.
-@@ -56,6 +58,7 @@ check_xcr0_ymm()
- /* Check if xmm and ymm state are enabled in XCR0. */
- return (xcr0 & 6) == 6;
- }
-+#endif
-
- #define ECX_AESNI (1 << 25)
- #define ECX_CLMUL (1 << 1)
-@@ -67,17 +70,33 @@ check_xcr0_ymm()
- void
- CheckX86CPUSupport()
- {
-- unsigned long eax, ebx, ecx, edx;
-+#ifndef NSS_DISABLE_HW_AES
- char *disable_hw_aes = PR_GetEnvSecure("NSS_DISABLE_HW_AES");
-+#endif
-+#ifndef NSS_DISABLE_PCLMUL
- char *disable_pclmul = PR_GetEnvSecure("NSS_DISABLE_PCLMUL");
-+#endif
-+#ifndef NSS_DISABLE_AVX
- char *disable_avx = PR_GetEnvSecure("NSS_DISABLE_AVX");
-+#endif
-+#if !defined(NSS_DISABLE_HW_AES) || \
-+ !defined(NSS_DISABLE_PCLMUL) || \
-+ !defined(NSS_DISABLE_AVX)
-+ unsigned long eax, ebx, ecx, edx;
- freebl_cpuid(1, &eax, &ebx, &ecx, &edx);
-+#endif
-+#ifndef NSS_DISABLE_HW_AES
- aesni_support_ = (PRBool)((ecx & ECX_AESNI) != 0 && disable_hw_aes == NULL);
-+#endif
-+#ifndef NSS_DISABLE_PCLMUL
- clmul_support_ = (PRBool)((ecx & ECX_CLMUL) != 0 && disable_pclmul == NULL);
-+#endif
-+#ifndef NSS_DISABLE_AVX
- /* For AVX we check AVX, OSXSAVE, and XSAVE
- * as well as XMM and YMM state. */
- avx_support_ = (PRBool)((ecx & AVX_BITS) == AVX_BITS) && check_xcr0_ymm() &&
- disable_avx == NULL;
-+#endif
- }
- #endif /* NSS_X86_OR_X64 */
-
-diff --git a/lib/freebl/gcm.c b/lib/freebl/gcm.c
-index 780b7a632..5bcaa5336 100644
---- a/lib/freebl/gcm.c
-+++ b/lib/freebl/gcm.c
-@@ -18,8 +18,14 @@
- #include <limits.h>
-
- #ifdef NSS_X86_OR_X64
-+/* The x86{,_64} hardware implementation relies on CLMUL */
-+#ifdef NSS_DISABLE_PCLMUL
-+#undef DISABLE_HW_GCM
-+#define DISABLE_HW_GCM 1
-+#else
- #include <wmmintrin.h> /* clmul */
- #endif
-+#endif
-
- /* Forward declarations */
- SECStatus gcm_HashMult_hw(gcmHashContext *ghash, const unsigned char *buf,
-@@ -53,7 +59,7 @@ gcmHash_InitContext(gcmHashContext *ghash, const unsigned char *H, PRBool sw)
- ghash->h_low = get64(H + 8);
- ghash->h_high = get64(H);
- if (clmul_support() && !sw) {
--#ifdef NSS_X86_OR_X64
-+#if defined(NSS_X86_OR_X64) && !defined(DISABLE_HW_GCM)
- ghash->ghash_mul = gcm_HashMult_hw;
- ghash->x = _mm_setzero_si128();
- /* MSVC requires __m64 to load epi64. */
-@@ -63,7 +69,7 @@ gcmHash_InitContext(gcmHashContext *ghash, const unsigned char *H, PRBool sw)
- #else
- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
- return SECFailure;
--#endif /* NSS_X86_OR_X64 */
-+#endif /* NSS_X86_OR_X64 && !DISABLE_HW_GCM */
- } else {
- /* We fall back to the software implementation if we can't use / don't
- * want to use pclmul. */
-@@ -287,7 +293,7 @@ SECStatus
- gcm_HashMult_hw(gcmHashContext *ghash, const unsigned char *buf,
- unsigned int count)
- {
--#ifdef NSS_X86_OR_X64
-+#if defined(NSS_X86_OR_X64) && !defined(NSS_DISABLE_PCLMUL)
- size_t i;
- pre_align __m128i z_high post_align;
- pre_align __m128i z_low post_align;
-@@ -368,13 +374,13 @@ static SECStatus
- gcm_zeroX(gcmHashContext *ghash)
- {
- if (ghash->hw) {
--#ifdef NSS_X86_OR_X64
-+#if defined(NSS_X86_OR_X64) && defined(__SSE2__)
- ghash->x = _mm_setzero_si128();
- return SECSuccess;
- #else
- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
- return SECFailure;
--#endif /* NSS_X86_OR_X64 */
-+#endif /* NSS_X86_OR_X64 && defined(__SSE2__) */
- }
-
- ghash->x_high = ghash->x_low = 0;
-@@ -503,7 +509,7 @@ gcmHash_Final(gcmHashContext *ghash, unsigned char *outbuf,
- }
-
- if (ghash->hw) {
--#ifdef NSS_X86_OR_X64
-+#if defined(NSS_X86_OR_X64) && !defined(DISABLE_HW_GCM)
- uint64_t tmp_out[2];
- _mm_storeu_si128((__m128i *)tmp_out, ghash->x);
- WRITE64(tmp_out[0], T + 8);
-@@ -511,7 +517,7 @@ gcmHash_Final(gcmHashContext *ghash, unsigned char *outbuf,
- #else
- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
- return SECFailure;
--#endif /* NSS_X86_OR_X64 */
-+#endif /* NSS_X86_OR_X64 && !DISABLE_HW_GCM */
- } else {
- WRITE64(ghash->x_low, T + 8);
- WRITE64(ghash->x_high, T);
-diff --git a/lib/freebl/rijndael.c b/lib/freebl/rijndael.c
-index a09f13098..8236b41ee 100644
---- a/lib/freebl/rijndael.c
-+++ b/lib/freebl/rijndael.c
-@@ -20,6 +20,12 @@
- #include "gcm.h"
- #include "mpi.h"
-
-+/* The x86{,_64} hardware implementation relies on AES-NI */
-+#ifdef NSS_DISABLE_HW_AES
-+#undef DISABLE_HW_AES
-+#define DISABLE_HW_AES 1
-+#endif
-+
- #ifdef USE_HW_AES
- #include "intel-aes.h"
- #endif
-@@ -309,7 +315,7 @@ rijndael_key_expansion7(AESContext *cx, const unsigned char *key, unsigned int N
- }
- }
-
--#if defined(NSS_X86_OR_X64)
-+#if defined(NSS_X86_OR_X64) && !defined(DISABLE_HW_AES)
- #define EXPAND_KEY128(k, rcon, res) \
- tmp_key = _mm_aeskeygenassist_si128(k, rcon); \
- tmp_key = _mm_shuffle_epi32(tmp_key, 0xFF); \
-@@ -418,7 +424,7 @@ native_key_expansion256(AESContext *cx, const unsigned char *key)
- keySchedule[13], 0xFF);
- }
-
--#endif /* NSS_X86_OR_X64 */
-+#endif /* NSS_X86_OR_X64 && !DISABLE_HW_AES */
-
- /*
- * AES key expansion using aes-ni instructions.
-@@ -426,7 +432,7 @@ native_key_expansion256(AESContext *cx, const unsigned char *key)
- static void
- native_key_expansion(AESContext *cx, const unsigned char *key, unsigned int Nk)
- {
--#ifdef NSS_X86_OR_X64
-+#if defined(NSS_X86_OR_X64) && !defined(DISABLE_HW_AES)
- switch (Nk) {
- case 4:
- native_key_expansion128(cx, key);
-@@ -443,7 +449,7 @@ native_key_expansion(AESContext *cx, const unsigned char *key, unsigned int Nk)
- }
- #else
- PORT_Assert(0);
--#endif /* NSS_X86_OR_X64 */
-+#endif /* NSS_X86_OR_X64 && DISABLE_HW_AES */
- }
-
- static void
-@@ -451,7 +457,7 @@ native_encryptBlock(AESContext *cx,
- unsigned char *output,
- const unsigned char *input)
- {
--#ifdef NSS_X86_OR_X64
-+#if defined(NSS_X86_OR_X64) && !defined(DISABLE_HW_AES)
- int i;
- pre_align __m128i m post_align = _mm_loadu_si128((__m128i *)input);
- m = _mm_xor_si128(m, cx->keySchedule[0]);
-@@ -462,7 +468,7 @@ native_encryptBlock(AESContext *cx,
- _mm_storeu_si128((__m128i *)output, m);
- #else
- PORT_Assert(0);
--#endif /* NSS_X86_OR_X64 */
-+#endif /* NSS_X86_OR_X64 && DISABLE_HW_AES */
- }
-
- /* rijndael_key_expansion
-@@ -637,7 +643,7 @@ rijndael_encryptBlock128(AESContext *cx,
- PRUint32 *roundkeyw;
- rijndael_state state;
- PRUint32 C0, C1, C2, C3;
--#if defined(NSS_X86_OR_X64)
-+#if defined(NSS_X86_OR_X64) && !defined(DISABLE_HW_AES)
- #define pIn input
- #define pOut output
- #else
-@@ -713,7 +719,7 @@ rijndael_encryptBlock128(AESContext *cx,
- *((PRUint32 *)(pOut + 4)) = C1;
- *((PRUint32 *)(pOut + 8)) = C2;
- *((PRUint32 *)(pOut + 12)) = C3;
--#if defined(NSS_X86_OR_X64)
-+#if defined(NSS_X86_OR_X64) && !defined(DISABLE_HW_AES)
- #undef pIn
- #undef pOut
- #else
-@@ -732,7 +738,7 @@ rijndael_decryptBlock128(AESContext *cx,
- PRUint32 *roundkeyw;
- rijndael_state state;
- PRUint32 C0, C1, C2, C3;
--#if defined(NSS_X86_OR_X64)
-+#if defined(NSS_X86_OR_X64) && !defined(DISABLE_HW_AES)
- #define pIn input
- #define pOut output
- #else
-@@ -804,7 +810,7 @@ rijndael_decryptBlock128(AESContext *cx,
- *((PRUint32 *)(pOut + 8)) ^= *roundkeyw--;
- *((PRUint32 *)(pOut + 4)) ^= *roundkeyw--;
- *((PRUint32 *)pOut) ^= *roundkeyw--;
--#if defined(NSS_X86_OR_X64)
-+#if defined(NSS_X86_OR_X64) && !defined(DISABLE_HW_AES)
- #undef pIn
- #undef pOut
- #else
---
-2.13.5
-
diff --git a/nss-softokn-gcm-aes-split.patch b/nss-softokn-gcm-aes-split.patch
new file mode 100644
index 0000000..af8b462
--- /dev/null
+++ b/nss-softokn-gcm-aes-split.patch
@@ -0,0 +1,880 @@
+diff -up nss/lib/freebl/aes-x86.c.gcm-aes-split nss/lib/freebl/aes-x86.c
+--- nss/lib/freebl/aes-x86.c.gcm-aes-split 2017-09-22 12:20:19.746087357 +0200
++++ nss/lib/freebl/aes-x86.c 2017-09-22 12:20:19.746087357 +0200
+@@ -0,0 +1,157 @@
++/* This Source Code Form is subject to the terms of the Mozilla Public
++ * License, v. 2.0. If a copy of the MPL was not distributed with this
++ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
++
++#ifdef FREEBL_NO_DEPEND
++#include "stubs.h"
++#endif
++#include "rijndael.h"
++#include "secerr.h"
++
++#include <wmmintrin.h> /* aes-ni */
++
++#define EXPAND_KEY128(k, rcon, res) \
++ tmp_key = _mm_aeskeygenassist_si128(k, rcon); \
++ tmp_key = _mm_shuffle_epi32(tmp_key, 0xFF); \
++ tmp = _mm_xor_si128(k, _mm_slli_si128(k, 4)); \
++ tmp = _mm_xor_si128(tmp, _mm_slli_si128(tmp, 4)); \
++ tmp = _mm_xor_si128(tmp, _mm_slli_si128(tmp, 4)); \
++ res = _mm_xor_si128(tmp, tmp_key)
++
++static void
++native_key_expansion128(AESContext *cx, const unsigned char *key)
++{
++ __m128i *keySchedule = cx->keySchedule;
++ pre_align __m128i tmp_key post_align;
++ pre_align __m128i tmp post_align;
++ keySchedule[0] = _mm_loadu_si128((__m128i *)key);
++ EXPAND_KEY128(keySchedule[0], 0x01, keySchedule[1]);
++ EXPAND_KEY128(keySchedule[1], 0x02, keySchedule[2]);
++ EXPAND_KEY128(keySchedule[2], 0x04, keySchedule[3]);
++ EXPAND_KEY128(keySchedule[3], 0x08, keySchedule[4]);
++ EXPAND_KEY128(keySchedule[4], 0x10, keySchedule[5]);
++ EXPAND_KEY128(keySchedule[5], 0x20, keySchedule[6]);
++ EXPAND_KEY128(keySchedule[6], 0x40, keySchedule[7]);
++ EXPAND_KEY128(keySchedule[7], 0x80, keySchedule[8]);
++ EXPAND_KEY128(keySchedule[8], 0x1B, keySchedule[9]);
++ EXPAND_KEY128(keySchedule[9], 0x36, keySchedule[10]);
++}
++
++#define EXPAND_KEY192_PART1(res, k0, kt, rcon) \
++ tmp2 = _mm_slli_si128(k0, 4); \
++ tmp1 = _mm_xor_si128(k0, tmp2); \
++ tmp2 = _mm_slli_si128(tmp2, 4); \
++ tmp1 = _mm_xor_si128(_mm_xor_si128(tmp1, tmp2), _mm_slli_si128(tmp2, 4)); \
++ tmp2 = _mm_aeskeygenassist_si128(kt, rcon); \
++ res = _mm_xor_si128(tmp1, _mm_shuffle_epi32(tmp2, 0x55))
++
++#define EXPAND_KEY192_PART2(res, k1, k2) \
++ tmp2 = _mm_xor_si128(k1, _mm_slli_si128(k1, 4)); \
++ res = _mm_xor_si128(tmp2, _mm_shuffle_epi32(k2, 0xFF))
++
++#define EXPAND_KEY192(k0, res1, res2, res3, carry, rcon1, rcon2) \
++ EXPAND_KEY192_PART1(tmp3, k0, res1, rcon1); \
++ EXPAND_KEY192_PART2(carry, res1, tmp3); \
++ res1 = _mm_castpd_si128(_mm_shuffle_pd(_mm_castsi128_pd(res1), \
++ _mm_castsi128_pd(tmp3), 0)); \
++ res2 = _mm_castpd_si128(_mm_shuffle_pd(_mm_castsi128_pd(tmp3), \
++ _mm_castsi128_pd(carry), 1)); \
++ EXPAND_KEY192_PART1(res3, tmp3, carry, rcon2)
++
++static void
++native_key_expansion192(AESContext *cx, const unsigned char *key)
++{
++ __m128i *keySchedule = cx->keySchedule;
++ pre_align __m128i tmp1 post_align;
++ pre_align __m128i tmp2 post_align;
++ pre_align __m128i tmp3 post_align;
++ pre_align __m128i carry post_align;
++ keySchedule[0] = _mm_loadu_si128((__m128i *)key);
++ keySchedule[1] = _mm_loadu_si128((__m128i *)(key + 16));
++ EXPAND_KEY192(keySchedule[0], keySchedule[1], keySchedule[2],
++ keySchedule[3], carry, 0x1, 0x2);
++ EXPAND_KEY192_PART2(keySchedule[4], carry, keySchedule[3]);
++ EXPAND_KEY192(keySchedule[3], keySchedule[4], keySchedule[5],
++ keySchedule[6], carry, 0x4, 0x8);
++ EXPAND_KEY192_PART2(keySchedule[7], carry, keySchedule[6]);
++ EXPAND_KEY192(keySchedule[6], keySchedule[7], keySchedule[8],
++ keySchedule[9], carry, 0x10, 0x20);
++ EXPAND_KEY192_PART2(keySchedule[10], carry, keySchedule[9]);
++ EXPAND_KEY192(keySchedule[9], keySchedule[10], keySchedule[11],
++ keySchedule[12], carry, 0x40, 0x80);
++}
++
++#define EXPAND_KEY256_PART(res, rconx, k1x, k2x, X) \
++ tmp_key = _mm_shuffle_epi32(_mm_aeskeygenassist_si128(k2x, rconx), X); \
++ tmp2 = _mm_slli_si128(k1x, 4); \
++ tmp1 = _mm_xor_si128(k1x, tmp2); \
++ tmp2 = _mm_slli_si128(tmp2, 4); \
++ tmp1 = _mm_xor_si128(_mm_xor_si128(tmp1, tmp2), _mm_slli_si128(tmp2, 4)); \
++ res = _mm_xor_si128(tmp1, tmp_key);
++
++#define EXPAND_KEY256(res1, res2, k1, k2, rcon) \
++ EXPAND_KEY256_PART(res1, rcon, k1, k2, 0xFF); \
++ EXPAND_KEY256_PART(res2, 0x00, k2, res1, 0xAA)
++
++static void
++native_key_expansion256(AESContext *cx, const unsigned char *key)
++{
++ __m128i *keySchedule = cx->keySchedule;
++ pre_align __m128i tmp_key post_align;
++ pre_align __m128i tmp1 post_align;
++ pre_align __m128i tmp2 post_align;
++ keySchedule[0] = _mm_loadu_si128((__m128i *)key);
++ keySchedule[1] = _mm_loadu_si128((__m128i *)(key + 16));
++ EXPAND_KEY256(keySchedule[2], keySchedule[3], keySchedule[0],
++ keySchedule[1], 0x01);
++ EXPAND_KEY256(keySchedule[4], keySchedule[5], keySchedule[2],
++ keySchedule[3], 0x02);
++ EXPAND_KEY256(keySchedule[6], keySchedule[7], keySchedule[4],
++ keySchedule[5], 0x04);
++ EXPAND_KEY256(keySchedule[8], keySchedule[9], keySchedule[6],
++ keySchedule[7], 0x08);
++ EXPAND_KEY256(keySchedule[10], keySchedule[11], keySchedule[8],
++ keySchedule[9], 0x10);
++ EXPAND_KEY256(keySchedule[12], keySchedule[13], keySchedule[10],
++ keySchedule[11], 0x20);
++ EXPAND_KEY256_PART(keySchedule[14], 0x40, keySchedule[12],
++ keySchedule[13], 0xFF);
++}
++
++/*
++ * AES key expansion using aes-ni instructions.
++ */
++void
++rijndael_native_key_expansion(AESContext *cx, const unsigned char *key,
++ unsigned int Nk)
++{
++ switch (Nk) {
++ case 4:
++ native_key_expansion128(cx, key);
++ return;
++ case 6:
++ native_key_expansion192(cx, key);
++ return;
++ case 8:
++ native_key_expansion256(cx, key);
++ return;
++ default:
++ /* This shouldn't happen (checked by the caller). */
++ return;
++ }
++}
++
++void
++rijndael_native_encryptBlock(AESContext *cx,
++ unsigned char *output,
++ const unsigned char *input)
++{
++ int i;
++ pre_align __m128i m post_align = _mm_loadu_si128((__m128i *)input);
++ m = _mm_xor_si128(m, cx->keySchedule[0]);
++ for (i = 1; i < cx->Nr; ++i) {
++ m = _mm_aesenc_si128(m, cx->keySchedule[i]);
++ }
++ m = _mm_aesenclast_si128(m, cx->keySchedule[cx->Nr]);
++ _mm_storeu_si128((__m128i *)output, m);
++}
+diff -up nss/lib/freebl/freebl.gyp.gcm-aes-split nss/lib/freebl/freebl.gyp
+--- nss/lib/freebl/freebl.gyp.gcm-aes-split 2017-07-27 16:09:32.000000000 +0200
++++ nss/lib/freebl/freebl.gyp 2017-09-22 12:20:19.746087357 +0200
+@@ -23,6 +23,37 @@
+ ]
+ },
+ {
++ 'target_name': 'gcm-aes-x86_c_lib',
++ 'type': 'static_library',
++ 'sources': [
++ 'gcm-x86.c', 'aes-x86.c'
++ ],
++ 'dependencies': [
++ '<(DEPTH)/exports.gyp:nss_exports'
++ ],
++ # Enable isa option for pclmul and aes-ni; supported since gcc 4.4.
++ # This is only supported by x84/x64. It's not needed for Windows,
++ # unless clang-cl is used.
++ 'cflags_mozilla': [
++ '-mpclmul', '-maes'
++ ],
++ 'conditions': [
++ [ 'OS=="linux" or OS=="android" or OS=="dragonfly" or OS=="freebsd" or OS=="netbsd" or OS=="openbsd"', {
++ 'cflags': [
++ '-mpclmul', '-maes'
++ ],
++ }],
++ # macOS build doesn't use cflags.
++ [ 'OS=="mac"', {
++ 'xcode_settings': {
++ 'OTHER_CFLAGS': [
++ '-mpclmul', '-maes'
++ ],
++ },
++ }]
++ ]
++ },
++ {
+ 'target_name': 'freebl',
+ 'type': 'static_library',
+ 'sources': [
+@@ -45,6 +76,11 @@
+ '<(DEPTH)/exports.gyp:nss_exports',
+ ],
+ 'conditions': [
++ [ 'target_arch=="ia32" or target_arch=="x64"', {
++ 'dependencies': [
++ 'gcm-aes-x86_c_lib'
++ ],
++ }],
+ [ 'OS=="linux"', {
+ 'defines!': [
+ 'FREEBL_NO_DEPEND',
+@@ -76,6 +112,11 @@
+ '<(DEPTH)/exports.gyp:nss_exports',
+ ],
+ 'conditions': [
++ [ 'target_arch=="ia32" or target_arch=="x64"', {
++ 'dependencies': [
++ 'gcm-aes-x86_c_lib'
++ ]
++ }],
+ [ 'OS!="linux" and OS!="android"', {
+ 'conditions': [
+ [ 'moz_fold_libs==0', {
+@@ -259,14 +300,6 @@
+ 'MP_USE_UINT_DIGIT',
+ ],
+ }],
+- [ 'target_arch=="ia32" or target_arch=="x64"', {
+- 'cflags': [
+- # enable isa option for pclmul am aes-ni; supported since gcc 4.4
+- # This is only support by x84/x64. It's not needed for Windows.
+- '-mpclmul',
+- '-maes',
+- ],
+- }],
+ [ 'target_arch=="arm"', {
+ 'defines': [
+ 'MP_ASSEMBLY_MULTIPLY',
+diff -up nss/lib/freebl/gcm.c.gcm-aes-split nss/lib/freebl/gcm.c
+--- nss/lib/freebl/gcm.c.gcm-aes-split 2017-09-22 12:20:19.744087402 +0200
++++ nss/lib/freebl/gcm.c 2017-09-22 12:20:19.746087357 +0200
+@@ -17,18 +17,50 @@
+
+ #include <limits.h>
+
+-#ifdef NSS_X86_OR_X64
+-#include <wmmintrin.h> /* clmul */
+-#endif
+-
+ /* Forward declarations */
++SECStatus gcm_HashInit_hw(gcmHashContext *ghash);
++SECStatus gcm_HashWrite_hw(gcmHashContext *ghash, unsigned char *outbuf);
+ SECStatus gcm_HashMult_hw(gcmHashContext *ghash, const unsigned char *buf,
+ unsigned int count);
++SECStatus gcm_HashZeroX_hw(gcmHashContext *ghash);
+ SECStatus gcm_HashMult_sftw(gcmHashContext *ghash, const unsigned char *buf,
+ unsigned int count);
+ SECStatus gcm_HashMult_sftw32(gcmHashContext *ghash, const unsigned char *buf,
+ unsigned int count);
+
++/* Stub definitions for the above *_hw functions, which shouldn't be
++ * used unless NSS_X86_OR_X64 is defined */
++#ifndef NSS_X86_OR_X64
++SECStatus
++gcm_HashWrite_hw(gcmHashContext *ghash, unsigned char *outbuf)
++{
++ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
++ return SECFailure;
++}
++
++SECStatus
++gcm_HashMult_hw(gcmHashContext *ghash, const unsigned char *buf,
++ unsigned int count)
++{
++ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
++ return SECFailure;
++}
++
++SECStatus
++gcm_HashInit_hw(gcmHashContext *ghash)
++{
++ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
++ return SECFailure;
++}
++
++SECStatus
++gcm_HashZeroX_hw(gcmHashContext *ghash)
++{
++ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
++ return SECFailure;
++}
++#endif /* NSS_X86_OR_X64 */
++
+ uint64_t
+ get64(const unsigned char *bytes)
+ {
+@@ -46,6 +78,8 @@ get64(const unsigned char *bytes)
+ SECStatus
+ gcmHash_InitContext(gcmHashContext *ghash, const unsigned char *H, PRBool sw)
+ {
++ SECStatus rv = SECSuccess;
++
+ ghash->cLen = 0;
+ ghash->bufLen = 0;
+ PORT_Memset(ghash->counterBuf, 0, sizeof(ghash->counterBuf));
+@@ -53,17 +87,7 @@ gcmHash_InitContext(gcmHashContext *ghas
+ ghash->h_low = get64(H + 8);
+ ghash->h_high = get64(H);
+ if (clmul_support() && !sw) {
+-#ifdef NSS_X86_OR_X64
+- ghash->ghash_mul = gcm_HashMult_hw;
+- ghash->x = _mm_setzero_si128();
+- /* MSVC requires __m64 to load epi64. */
+- ghash->h = _mm_set_epi32(ghash->h_high >> 32, (uint32_t)ghash->h_high,
+- ghash->h_low >> 32, (uint32_t)ghash->h_low);
+- ghash->hw = PR_TRUE;
+-#else
+- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
+- return SECFailure;
+-#endif /* NSS_X86_OR_X64 */
++ rv = gcm_HashInit_hw(ghash);
+ } else {
+ /* We fall back to the software implementation if we can't use / don't
+ * want to use pclmul. */
+@@ -75,7 +99,7 @@ gcmHash_InitContext(gcmHashContext *ghas
+ ghash->x_high = ghash->x_low = 0;
+ ghash->hw = PR_FALSE;
+ }
+- return SECSuccess;
++ return rv;
+ }
+
+ #ifdef HAVE_INT128_SUPPORT
+@@ -283,102 +307,17 @@ gcm_HashMult_sftw32(gcmHashContext *ghas
+ }
+ #endif /* HAVE_INT128_SUPPORT */
+
+-SECStatus
+-gcm_HashMult_hw(gcmHashContext *ghash, const unsigned char *buf,
+- unsigned int count)
+-{
+-#ifdef NSS_X86_OR_X64
+- size_t i;
+- pre_align __m128i z_high post_align;
+- pre_align __m128i z_low post_align;
+- pre_align __m128i C post_align;
+- pre_align __m128i D post_align;
+- pre_align __m128i E post_align;
+- pre_align __m128i F post_align;
+- pre_align __m128i bin post_align;
+- pre_align __m128i Ci post_align;
+- pre_align __m128i tmp post_align;
+-
+- for (i = 0; i < count; i++, buf += 16) {
+- bin = _mm_set_epi16(((uint16_t)buf[0] << 8) | buf[1],
+- ((uint16_t)buf[2] << 8) | buf[3],
+- ((uint16_t)buf[4] << 8) | buf[5],
+- ((uint16_t)buf[6] << 8) | buf[7],
+- ((uint16_t)buf[8] << 8) | buf[9],
+- ((uint16_t)buf[10] << 8) | buf[11],
+- ((uint16_t)buf[12] << 8) | buf[13],
+- ((uint16_t)buf[14] << 8) | buf[15]);
+- Ci = _mm_xor_si128(bin, ghash->x);
+-
+- /* Do binary mult ghash->X = Ci * ghash->H. */
+- C = _mm_clmulepi64_si128(Ci, ghash->h, 0x00);
+- D = _mm_clmulepi64_si128(Ci, ghash->h, 0x11);
+- E = _mm_clmulepi64_si128(Ci, ghash->h, 0x01);
+- F = _mm_clmulepi64_si128(Ci, ghash->h, 0x10);
+- tmp = _mm_xor_si128(E, F);
+- z_high = _mm_xor_si128(tmp, _mm_slli_si128(D, 8));
+- z_high = _mm_unpackhi_epi64(z_high, D);
+- z_low = _mm_xor_si128(_mm_slli_si128(tmp, 8), C);
+- z_low = _mm_unpackhi_epi64(_mm_slli_si128(C, 8), z_low);
+-
+- /* Shift one to the left (multiply by x) as gcm spec is stupid. */
+- C = _mm_slli_si128(z_low, 8);
+- E = _mm_srli_epi64(C, 63);
+- D = _mm_slli_si128(z_high, 8);
+- F = _mm_srli_epi64(D, 63);
+- /* Carry over */
+- C = _mm_srli_si128(z_low, 8);
+- D = _mm_srli_epi64(C, 63);
+- z_low = _mm_or_si128(_mm_slli_epi64(z_low, 1), E);
+- z_high = _mm_or_si128(_mm_or_si128(_mm_slli_epi64(z_high, 1), F), D);
+-
+- /* Reduce */
+- C = _mm_slli_si128(z_low, 8);
+- /* D = z_low << 127 */
+- D = _mm_slli_epi64(C, 63);
+- /* E = z_low << 126 */
+- E = _mm_slli_epi64(C, 62);
+- /* F = z_low << 121 */
+- F = _mm_slli_epi64(C, 57);
+- /* z_low ^= (z_low << 127) ^ (z_low << 126) ^ (z_low << 121); */
+- z_low = _mm_xor_si128(_mm_xor_si128(_mm_xor_si128(z_low, D), E), F);
+- C = _mm_srli_si128(z_low, 8);
+- /* D = z_low >> 1 */
+- D = _mm_slli_epi64(C, 63);
+- D = _mm_or_si128(_mm_srli_epi64(z_low, 1), D);
+- /* E = z_low >> 2 */
+- E = _mm_slli_epi64(C, 62);
+- E = _mm_or_si128(_mm_srli_epi64(z_low, 2), E);
+- /* F = z_low >> 7 */
+- F = _mm_slli_epi64(C, 57);
+- F = _mm_or_si128(_mm_srli_epi64(z_low, 7), F);
+- /* ghash->x ^= z_low ^ (z_low >> 1) ^ (z_low >> 2) ^ (z_low >> 7); */
+- ghash->x = _mm_xor_si128(_mm_xor_si128(
+- _mm_xor_si128(_mm_xor_si128(z_high, z_low), D), E),
+- F);
+- }
+- return SECSuccess;
+-#else
+- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
+- return SECFailure;
+-#endif /* NSS_X86_OR_X64 */
+-}
+-
+ static SECStatus
+ gcm_zeroX(gcmHashContext *ghash)
+ {
++ SECStatus rv = SECSuccess;
++
+ if (ghash->hw) {
+-#ifdef NSS_X86_OR_X64
+- ghash->x = _mm_setzero_si128();
+- return SECSuccess;
+-#else
+- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
+- return SECFailure;
+-#endif /* NSS_X86_OR_X64 */
++ rv = gcm_HashZeroX_hw(ghash);
+ }
+
+ ghash->x_high = ghash->x_low = 0;
+- return SECSuccess;
++ return rv;
+ }
+
+ /*
+@@ -503,15 +442,10 @@ gcmHash_Final(gcmHashContext *ghash, uns
+ }
+
+ if (ghash->hw) {
+-#ifdef NSS_X86_OR_X64
+- uint64_t tmp_out[2];
+- _mm_storeu_si128((__m128i *)tmp_out, ghash->x);
+- WRITE64(tmp_out[0], T + 8);
+- WRITE64(tmp_out[1], T);
+-#else
+- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
+- return SECFailure;
+-#endif /* NSS_X86_OR_X64 */
++ rv = gcm_HashWrite_hw(ghash, T);
++ if (rv != SECSuccess) {
++ goto cleanup;
++ }
+ } else {
+ WRITE64(ghash->x_low, T + 8);
+ WRITE64(ghash->x_high, T);
+diff -up nss/lib/freebl/gcm.h.gcm-aes-split nss/lib/freebl/gcm.h
+--- nss/lib/freebl/gcm.h.gcm-aes-split 2017-07-27 16:09:32.000000000 +0200
++++ nss/lib/freebl/gcm.h 2017-09-22 12:20:19.747087334 +0200
+@@ -9,7 +9,21 @@
+ #include <stdint.h>
+
+ #ifdef NSS_X86_OR_X64
++/* GCC <= 4.8 doesn't support including emmintrin.h without enabling SSE2 */
++#if !defined(__clang__) && defined(__GNUC__) && defined(__GNUC_MINOR__) && \
++ (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ <= 8))
++#pragma GCC push_options
++#pragma GCC target("sse2")
++#undef NSS_DISABLE_SSE2
++#define NSS_DISABLE_SSE2 1
++#endif /* GCC <= 4.8 */
++
+ #include <emmintrin.h> /* __m128i */
++
++#ifdef NSS_DISABLE_SSE2
++#undef NSS_DISABLE_SSE2
++#pragma GCC pop_options
++#endif /* NSS_DISABLE_SSE2 */
+ #endif
+
+ SEC_BEGIN_PROTOS
+diff -up nss/lib/freebl/gcm-x86.c.gcm-aes-split nss/lib/freebl/gcm-x86.c
+--- nss/lib/freebl/gcm-x86.c.gcm-aes-split 2017-09-22 12:20:19.746087357 +0200
++++ nss/lib/freebl/gcm-x86.c 2017-09-22 12:20:19.746087357 +0200
+@@ -0,0 +1,127 @@
++/* This Source Code Form is subject to the terms of the Mozilla Public
++ * License, v. 2.0. If a copy of the MPL was not distributed with this
++ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
++
++#ifdef FREEBL_NO_DEPEND
++#include "stubs.h"
++#endif
++#include "gcm.h"
++#include "secerr.h"
++
++#include <wmmintrin.h> /* clmul */
++
++#define WRITE64(x, bytes) \
++ (bytes)[0] = (x) >> 56; \
++ (bytes)[1] = (x) >> 48; \
++ (bytes)[2] = (x) >> 40; \
++ (bytes)[3] = (x) >> 32; \
++ (bytes)[4] = (x) >> 24; \
++ (bytes)[5] = (x) >> 16; \
++ (bytes)[6] = (x) >> 8; \
++ (bytes)[7] = (x);
++
++SECStatus
++gcm_HashWrite_hw(gcmHashContext *ghash, unsigned char *outbuf)
++{
++ uint64_t tmp_out[2];
++ _mm_storeu_si128((__m128i *)tmp_out, ghash->x);
++ /* maxout must be larger than 16 byte (checked by the caller). */
++ WRITE64(tmp_out[0], outbuf + 8);
++ WRITE64(tmp_out[1], outbuf);
++ return SECSuccess;
++}
++
++SECStatus
++gcm_HashMult_hw(gcmHashContext *ghash, const unsigned char *buf,
++ unsigned int count)
++{
++ size_t i;
++ pre_align __m128i z_high post_align;
++ pre_align __m128i z_low post_align;
++ pre_align __m128i C post_align;
++ pre_align __m128i D post_align;
++ pre_align __m128i E post_align;
++ pre_align __m128i F post_align;
++ pre_align __m128i bin post_align;
++ pre_align __m128i Ci post_align;
++ pre_align __m128i tmp post_align;
++
++ for (i = 0; i < count; i++, buf += 16) {
++ bin = _mm_set_epi16(((uint16_t)buf[0] << 8) | buf[1],
++ ((uint16_t)buf[2] << 8) | buf[3],
++ ((uint16_t)buf[4] << 8) | buf[5],
++ ((uint16_t)buf[6] << 8) | buf[7],
++ ((uint16_t)buf[8] << 8) | buf[9],
++ ((uint16_t)buf[10] << 8) | buf[11],
++ ((uint16_t)buf[12] << 8) | buf[13],
++ ((uint16_t)buf[14] << 8) | buf[15]);
++ Ci = _mm_xor_si128(bin, ghash->x);
++
++ /* Do binary mult ghash->X = Ci * ghash->H. */
++ C = _mm_clmulepi64_si128(Ci, ghash->h, 0x00);
++ D = _mm_clmulepi64_si128(Ci, ghash->h, 0x11);
++ E = _mm_clmulepi64_si128(Ci, ghash->h, 0x01);
++ F = _mm_clmulepi64_si128(Ci, ghash->h, 0x10);
++ tmp = _mm_xor_si128(E, F);
++ z_high = _mm_xor_si128(tmp, _mm_slli_si128(D, 8));
++ z_high = _mm_unpackhi_epi64(z_high, D);
++ z_low = _mm_xor_si128(_mm_slli_si128(tmp, 8), C);
++ z_low = _mm_unpackhi_epi64(_mm_slli_si128(C, 8), z_low);
++
++ /* Shift one to the left (multiply by x) as gcm spec is stupid. */
++ C = _mm_slli_si128(z_low, 8);
++ E = _mm_srli_epi64(C, 63);
++ D = _mm_slli_si128(z_high, 8);
++ F = _mm_srli_epi64(D, 63);
++ /* Carry over */
++ C = _mm_srli_si128(z_low, 8);
++ D = _mm_srli_epi64(C, 63);
++ z_low = _mm_or_si128(_mm_slli_epi64(z_low, 1), E);
++ z_high = _mm_or_si128(_mm_or_si128(_mm_slli_epi64(z_high, 1), F), D);
++
++ /* Reduce */
++ C = _mm_slli_si128(z_low, 8);
++ /* D = z_low << 127 */
++ D = _mm_slli_epi64(C, 63);
++ /* E = z_low << 126 */
++ E = _mm_slli_epi64(C, 62);
++ /* F = z_low << 121 */
++ F = _mm_slli_epi64(C, 57);
++ /* z_low ^= (z_low << 127) ^ (z_low << 126) ^ (z_low << 121); */
++ z_low = _mm_xor_si128(_mm_xor_si128(_mm_xor_si128(z_low, D), E), F);
++ C = _mm_srli_si128(z_low, 8);
++ /* D = z_low >> 1 */
++ D = _mm_slli_epi64(C, 63);
++ D = _mm_or_si128(_mm_srli_epi64(z_low, 1), D);
++ /* E = z_low >> 2 */
++ E = _mm_slli_epi64(C, 62);
++ E = _mm_or_si128(_mm_srli_epi64(z_low, 2), E);
++ /* F = z_low >> 7 */
++ F = _mm_slli_epi64(C, 57);
++ F = _mm_or_si128(_mm_srli_epi64(z_low, 7), F);
++ /* ghash->x ^= z_low ^ (z_low >> 1) ^ (z_low >> 2) ^ (z_low >> 7); */
++ ghash->x = _mm_xor_si128(_mm_xor_si128(
++ _mm_xor_si128(_mm_xor_si128(z_high, z_low), D), E),
++ F);
++ }
++ return SECSuccess;
++}
++
++SECStatus
++gcm_HashInit_hw(gcmHashContext *ghash)
++{
++ ghash->ghash_mul = gcm_HashMult_hw;
++ ghash->x = _mm_setzero_si128();
++ /* MSVC requires __m64 to load epi64. */
++ ghash->h = _mm_set_epi32(ghash->h_high >> 32, (uint32_t)ghash->h_high,
++ ghash->h_low >> 32, (uint32_t)ghash->h_low);
++ ghash->hw = PR_TRUE;
++ return SECSuccess;
++}
++
++SECStatus
++gcm_HashZeroX_hw(gcmHashContext *ghash)
++{
++ ghash->x = _mm_setzero_si128();
++ return SECSuccess;
++}
+diff -up nss/lib/freebl/Makefile.gcm-aes-split nss/lib/freebl/Makefile
+--- nss/lib/freebl/Makefile.gcm-aes-split 2017-07-27 16:09:32.000000000 +0200
++++ nss/lib/freebl/Makefile 2017-09-22 12:20:19.746087357 +0200
+@@ -110,7 +110,9 @@ endif
+ # NSS_X86_OR_X64 means the target is either x86 or x64
+ ifeq (,$(filter-out i386 x386 x86 x86_64,$(CPU_ARCH)))
+ DEFINES += -DNSS_X86_OR_X64
+- CFLAGS += -mpclmul -maes
++ EXTRA_SRCS += gcm-x86.c aes-x86.c
++$(OBJDIR)/gcm-x86.o: CFLAGS += -mpclmul -maes
++$(OBJDIR)/aes-x86.o: CFLAGS += -mpclmul -maes
+ ifneq (,$(USE_64)$(USE_X32))
+ DEFINES += -DNSS_X64
+ else
+diff -up nss/lib/freebl/rijndael.c.gcm-aes-split nss/lib/freebl/rijndael.c
+--- nss/lib/freebl/rijndael.c.gcm-aes-split 2017-09-22 12:20:19.744087402 +0200
++++ nss/lib/freebl/rijndael.c 2017-09-22 12:21:29.639503351 +0200
+@@ -27,6 +27,34 @@
+ #include "intel-gcm.h"
+ #endif /* INTEL_GCM */
+
++/* Forward declarations */
++void rijndael_native_key_expansion(AESContext *cx, const unsigned char *key,
++ unsigned int Nk);
++void rijndael_native_encryptBlock(AESContext *cx,
++ unsigned char *output,
++ const unsigned char *input);
++
++/* Stub definitions for the above rijndael_native_* functions, which
++ * shouldn't be used unless NSS_X86_OR_X64 is defined */
++#ifndef NSS_X86_OR_X64
++void
++rijndael_native_key_expansion(AESContext *cx, const unsigned char *key,
++ unsigned int Nk)
++{
++ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
++ PORT_Assert(0);
++}
++
++void
++rijndael_native_encryptBlock(AESContext *cx,
++ unsigned char *output,
++ const unsigned char *input)
++{
++ PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
++ PORT_Assert(0);
++}
++#endif /* NSS_X86_OR_X64 */
++
+ /*
+ * There are currently five ways to build this code, varying in performance
+ * and code size.
+@@ -389,162 +417,6 @@ rijndael_key_expansion7(AESContext *cx,
+ }
+ }
+
+-#if defined(NSS_X86_OR_X64)
+-#define EXPAND_KEY128(k, rcon, res) \
+- tmp_key = _mm_aeskeygenassist_si128(k, rcon); \
+- tmp_key = _mm_shuffle_epi32(tmp_key, 0xFF); \
+- tmp = _mm_xor_si128(k, _mm_slli_si128(k, 4)); \
+- tmp = _mm_xor_si128(tmp, _mm_slli_si128(tmp, 4)); \
+- tmp = _mm_xor_si128(tmp, _mm_slli_si128(tmp, 4)); \
+- res = _mm_xor_si128(tmp, tmp_key)
+-
+-static void
+-native_key_expansion128(AESContext *cx, const unsigned char *key)
+-{
+- __m128i *keySchedule = cx->keySchedule;
+- pre_align __m128i tmp_key post_align;
+- pre_align __m128i tmp post_align;
+- keySchedule[0] = _mm_loadu_si128((__m128i *)key);
+- EXPAND_KEY128(keySchedule[0], 0x01, keySchedule[1]);
+- EXPAND_KEY128(keySchedule[1], 0x02, keySchedule[2]);
+- EXPAND_KEY128(keySchedule[2], 0x04, keySchedule[3]);
+- EXPAND_KEY128(keySchedule[3], 0x08, keySchedule[4]);
+- EXPAND_KEY128(keySchedule[4], 0x10, keySchedule[5]);
+- EXPAND_KEY128(keySchedule[5], 0x20, keySchedule[6]);
+- EXPAND_KEY128(keySchedule[6], 0x40, keySchedule[7]);
+- EXPAND_KEY128(keySchedule[7], 0x80, keySchedule[8]);
+- EXPAND_KEY128(keySchedule[8], 0x1B, keySchedule[9]);
+- EXPAND_KEY128(keySchedule[9], 0x36, keySchedule[10]);
+-}
+-
+-#define EXPAND_KEY192_PART1(res, k0, kt, rcon) \
+- tmp2 = _mm_slli_si128(k0, 4); \
+- tmp1 = _mm_xor_si128(k0, tmp2); \
+- tmp2 = _mm_slli_si128(tmp2, 4); \
+- tmp1 = _mm_xor_si128(_mm_xor_si128(tmp1, tmp2), _mm_slli_si128(tmp2, 4)); \
+- tmp2 = _mm_aeskeygenassist_si128(kt, rcon); \
+- res = _mm_xor_si128(tmp1, _mm_shuffle_epi32(tmp2, 0x55))
+-
+-#define EXPAND_KEY192_PART2(res, k1, k2) \
+- tmp2 = _mm_xor_si128(k1, _mm_slli_si128(k1, 4)); \
+- res = _mm_xor_si128(tmp2, _mm_shuffle_epi32(k2, 0xFF))
+-
+-#define EXPAND_KEY192(k0, res1, res2, res3, carry, rcon1, rcon2) \
+- EXPAND_KEY192_PART1(tmp3, k0, res1, rcon1); \
+- EXPAND_KEY192_PART2(carry, res1, tmp3); \
+- res1 = _mm_castpd_si128(_mm_shuffle_pd(_mm_castsi128_pd(res1), \
+- _mm_castsi128_pd(tmp3), 0)); \
+- res2 = _mm_castpd_si128(_mm_shuffle_pd(_mm_castsi128_pd(tmp3), \
+- _mm_castsi128_pd(carry), 1)); \
+- EXPAND_KEY192_PART1(res3, tmp3, carry, rcon2)
+-
+-static void
+-native_key_expansion192(AESContext *cx, const unsigned char *key)
+-{
+- __m128i *keySchedule = cx->keySchedule;
+- pre_align __m128i tmp1 post_align;
+- pre_align __m128i tmp2 post_align;
+- pre_align __m128i tmp3 post_align;
+- pre_align __m128i carry post_align;
+- keySchedule[0] = _mm_loadu_si128((__m128i *)key);
+- keySchedule[1] = _mm_loadu_si128((__m128i *)(key + 16));
+- EXPAND_KEY192(keySchedule[0], keySchedule[1], keySchedule[2],
+- keySchedule[3], carry, 0x1, 0x2);
+- EXPAND_KEY192_PART2(keySchedule[4], carry, keySchedule[3]);
+- EXPAND_KEY192(keySchedule[3], keySchedule[4], keySchedule[5],
+- keySchedule[6], carry, 0x4, 0x8);
+- EXPAND_KEY192_PART2(keySchedule[7], carry, keySchedule[6]);
+- EXPAND_KEY192(keySchedule[6], keySchedule[7], keySchedule[8],
+- keySchedule[9], carry, 0x10, 0x20);
+- EXPAND_KEY192_PART2(keySchedule[10], carry, keySchedule[9]);
+- EXPAND_KEY192(keySchedule[9], keySchedule[10], keySchedule[11],
+- keySchedule[12], carry, 0x40, 0x80);
+-}
+-
+-#define EXPAND_KEY256_PART(res, rconx, k1x, k2x, X) \
+- tmp_key = _mm_shuffle_epi32(_mm_aeskeygenassist_si128(k2x, rconx), X); \
+- tmp2 = _mm_slli_si128(k1x, 4); \
+- tmp1 = _mm_xor_si128(k1x, tmp2); \
+- tmp2 = _mm_slli_si128(tmp2, 4); \
+- tmp1 = _mm_xor_si128(_mm_xor_si128(tmp1, tmp2), _mm_slli_si128(tmp2, 4)); \
+- res = _mm_xor_si128(tmp1, tmp_key);
+-
+-#define EXPAND_KEY256(res1, res2, k1, k2, rcon) \
+- EXPAND_KEY256_PART(res1, rcon, k1, k2, 0xFF); \
+- EXPAND_KEY256_PART(res2, 0x00, k2, res1, 0xAA)
+-
+-static void
+-native_key_expansion256(AESContext *cx, const unsigned char *key)
+-{
+- __m128i *keySchedule = cx->keySchedule;
+- pre_align __m128i tmp_key post_align;
+- pre_align __m128i tmp1 post_align;
+- pre_align __m128i tmp2 post_align;
+- keySchedule[0] = _mm_loadu_si128((__m128i *)key);
+- keySchedule[1] = _mm_loadu_si128((__m128i *)(key + 16));
+- EXPAND_KEY256(keySchedule[2], keySchedule[3], keySchedule[0],
+- keySchedule[1], 0x01);
+- EXPAND_KEY256(keySchedule[4], keySchedule[5], keySchedule[2],
+- keySchedule[3], 0x02);
+- EXPAND_KEY256(keySchedule[6], keySchedule[7], keySchedule[4],
+- keySchedule[5], 0x04);
+- EXPAND_KEY256(keySchedule[8], keySchedule[9], keySchedule[6],
+- keySchedule[7], 0x08);
+- EXPAND_KEY256(keySchedule[10], keySchedule[11], keySchedule[8],
+- keySchedule[9], 0x10);
+- EXPAND_KEY256(keySchedule[12], keySchedule[13], keySchedule[10],
+- keySchedule[11], 0x20);
+- EXPAND_KEY256_PART(keySchedule[14], 0x40, keySchedule[12],
+- keySchedule[13], 0xFF);
+-}
+-
+-#endif /* NSS_X86_OR_X64 */
+-
+-/*
+- * AES key expansion using aes-ni instructions.
+- */
+-static void
+-native_key_expansion(AESContext *cx, const unsigned char *key, unsigned int Nk)
+-{
+-#ifdef NSS_X86_OR_X64
+- switch (Nk) {
+- case 4:
+- native_key_expansion128(cx, key);
+- return;
+- case 6:
+- native_key_expansion192(cx, key);
+- return;
+- case 8:
+- native_key_expansion256(cx, key);
+- return;
+- default:
+- /* This shouldn't happen. */
+- PORT_Assert(0);
+- }
+-#else
+- PORT_Assert(0);
+-#endif /* NSS_X86_OR_X64 */
+-}
+-
+-static void
+-native_encryptBlock(AESContext *cx,
+- unsigned char *output,
+- const unsigned char *input)
+-{
+-#ifdef NSS_X86_OR_X64
+- int i;
+- pre_align __m128i m post_align = _mm_loadu_si128((__m128i *)input);
+- m = _mm_xor_si128(m, cx->keySchedule[0]);
+- for (i = 1; i < cx->Nr; ++i) {
+- m = _mm_aesenc_si128(m, cx->keySchedule[i]);
+- }
+- m = _mm_aesenclast_si128(m, cx->keySchedule[cx->Nr]);
+- _mm_storeu_si128((__m128i *)output, m);
+-#else
+- PORT_Assert(0);
+-#endif /* NSS_X86_OR_X64 */
+-}
+-
+ /* rijndael_key_expansion
+ *
+ * Generate the expanded key from the key input by the user.
+@@ -910,7 +782,7 @@ rijndael_encryptECB(AESContext *cx, unsi
+
+ if (aesni_support()) {
+ /* Use hardware acceleration for normal AES parameters. */
+- encryptor = &native_encryptBlock;
++ encryptor = &rijndael_native_encryptBlock;
+ } else {
+ encryptor = &rijndael_encryptBlock128;
+ }
+@@ -1124,7 +996,7 @@ aes_InitContext(AESContext *cx, const un
+ cx->mode == NSS_AES_CTR)) {
+ PORT_Assert(keysize == 16 || keysize == 24 || keysize == 32);
+ /* Prepare hardware key for normal AES parameters. */
+- native_key_expansion(cx, key, Nk);
++ rijndael_native_key_expansion(cx, key, Nk);
+ } else {
+ rijndael_key_expansion(cx, key, Nk);
+ }
+diff -up nss/lib/freebl/rijndael.h.gcm-aes-split nss/lib/freebl/rijndael.h
+--- nss/lib/freebl/rijndael.h.gcm-aes-split 2017-07-27 16:09:32.000000000 +0200
++++ nss/lib/freebl/rijndael.h 2017-09-22 12:20:19.747087334 +0200
+@@ -8,8 +8,22 @@
+ #include "blapii.h"
+ #include <stdint.h>
+
+-#ifdef NSS_X86_OR_X64
+-#include <wmmintrin.h> /* aes-ni */
++#if defined(NSS_X86_OR_X64)
++/* GCC <= 4.8 doesn't support including emmintrin.h without enabling SSE2 */
++#if !defined(__clang__) && defined(__GNUC__) && defined(__GNUC_MINOR__) && \
++ (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ <= 8))
++#pragma GCC push_options
++#pragma GCC target("sse2")
++#undef NSS_DISABLE_SSE2
++#define NSS_DISABLE_SSE2 1
++#endif /* GCC <= 4.8 */
++
++#include <emmintrin.h> /* __m128i */
++
++#ifdef NSS_DISABLE_SSE2
++#undef NSS_DISABLE_SSE2
++#pragma GCC pop_options
++#endif /* NSS_DISABLE_SSE2 */
+ #endif
+
+ typedef void AESBlockFunc(AESContext *cx,
diff --git a/nss-softokn.spec b/nss-softokn.spec
index 04586bf..362f3cb 100644
--- a/nss-softokn.spec
+++ b/nss-softokn.spec
@@ -32,7 +32,7 @@ Name: nss-softokn
Version: 3.32.0
# for Rawhide, please always use release >= 2
# for Fedora release branches, please use release < 2 (1.0, 1.1, ...)
-Release: 8%{?dist}
+Release: 9%{?dist}
License: MPLv2.0
URL: http://www.mozilla.org/projects/security/pki/nss/
Group: System Environment/Libraries
@@ -87,7 +87,8 @@ Patch11: nss-softokn-add_encrypt_derive.patch
# Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1389052
Patch12: nss-softokn-aligned_alloc.patch
-Patch13: nss-softokn-disable-sse2.patch
+# Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1400603
+Patch13: nss-softokn-gcm-aes-split.patch
%description
Network Security Services Softoken Cryptographic Module
@@ -142,7 +143,7 @@ pushd nss
%patch10 -p1 -b .iquote
%patch11 -p0 -b .add_encrypt_derive
%patch12 -p1 -b .aligned_alloc
-%patch13 -p1 -b .disable-sse2
+%patch13 -p1 -b .gcm-aes-split
popd
%build
@@ -171,13 +172,6 @@ export BUILD_OPT=1
# Generate symbolic info for debuggers
XCFLAGS=$RPM_OPT_FLAGS
-# In Fedora 27, we still don't allow SSE2 on i686
-%ifarch i686
-XCFLAGS="$XCFLAGS -mno-sse2"
-export NSS_DISABLE_PCLMUL=1
-export NSS_DISABLE_HW_AES=1
-export NSS_DISABLE_AVX=1
-%endif
export XCFLAGS
PKG_CONFIG_ALLOW_SYSTEM_LIBS=1
@@ -449,6 +443,9 @@ done
%{_includedir}/nss3/shsign.h
%changelog
+* Fri Sep 22 2017 Daiki Ueno <dueno(a)redhat.com> - 3.32.0-9
+- Replace disable-sse2 patch with upstreamed solution
+
* Fri Sep 15 2017 Daiki Ueno <dueno(a)redhat.com> - 3.32.0-8
- Disable SSE2 completely
6 years, 7 months
[Report] Packages Restricting Arches
by root
List of packages currently excluding arches (1885)
===========================================
- 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
- arduino
ExclusiveArch: %{go_arches}
- arduino-builder
ExclusiveArch: %{go_arches}
- 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 s390x
- 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 ppc64le s390x
- chromium
ExclusiveArch: x86_64 i686
ExclusiveArch: x86_64 i686 aarch64
- 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}}
- 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 %{arm} ppc64le aarch64 s390x
- cryptlib
ExclusiveArch: x86_64 %{ix86} aarch64 ppc64 ppc64le
- cryptobone
ExclusiveArch: x86_64 %{ix86} ppc64 ppc64le aarch64
- 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
- freshmaker
ExclusiveArch: %{ix86} x86_64
- frysk
ExclusiveArch: %{ix86} x86_64 ppc64
- fst
ExclusiveArch: i686
- fwupdate
ExclusiveArch: x86_64 aarch64
- ga
ExclusiveArch: %{ix86} x86_64
- gbrainy
ExclusiveArch: %mono_arches
- gdata-sharp
ExclusiveArch: %mono_arches
- gdb-exploitable
ExclusiveArch: x86_64 i386
ExclusiveArch: x86_64 noarch
- 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-golex
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-lex
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-ql
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: %{go_arches}
- 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-genproto
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:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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 s390x %{arm} aarch64 ppc64le
- kicad
ExclusiveArch: %{ix86} x86_64 %{arm} ppc64 ppc64le aarch64
- knot-resolver
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- kompose
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 s390x
- 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
- 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
- mediaconch
ExclusiveArch: %{qt5_qtwebengine_arches}
- 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
- 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
- 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}}
- odcs
ExclusiveArch: %{ix86} x86_64
- 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 %{arm} ppc mipsel mips64el
- 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:%{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, 7 months
Architecture specific change in rpms/xorg-x11-drv-freedreno.git
by githook-noreply@fedoraproject.org
The package rpms/xorg-x11-drv-freedreno.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/xorg-x11-drv-freedreno.git/commit....
Change:
-ExclusiveArch: %{arm} aarch64
Thanks.
Full change:
============
commit afe30e8c2deec4f4dfd208bf8546ddaca4adfbf7
Author: Peter Robinson <pbrobinson(a)gmail.com>
Date: Tue Oct 3 08:29:05 2017 +0100
Xorg is now using glamor to render 2D
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 72638e3..0000000
--- a/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/xf86-video-freedreno-*.tar.bz2
diff --git a/dead.package b/dead.package
new file mode 100644
index 0000000..4836558
--- /dev/null
+++ b/dead.package
@@ -0,0 +1 @@
+Xorg is now using glamor to render 2D
diff --git a/make-git-snapshot.sh b/make-git-snapshot.sh
deleted file mode 100755
index 3b0293b..0000000
--- a/make-git-snapshot.sh
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/bin/sh
-
-# Usage: ./make-git-snapshot.sh [COMMIT]
-#
-# to make a snapshot of the given tag/branch. Defaults to HEAD.
-# Point env var REF to a local mesa repo to reduce clone time.
-
-DIRNAME=xf86-video-freedreno-$( date +%Y%m%d )
-
-echo REF ${REF:+--reference $REF}
-echo DIRNAME $DIRNAME
-echo HEAD ${1:-HEAD}
-
-rm -rf $DIRNAME
-
-git clone ${REF:+--reference $REF} \
- git://git.freedesktop.org/git/xorg/driver/xf86-video-freedreno $DIRNAME
-
-GIT_DIR=$DIRNAME/.git git archive --format=tar --prefix=$DIRNAME/ ${1:-HEAD} \
- | bzip2 > $DIRNAME.tar.bz2
-
-# rm -rf $DIRNAME
diff --git a/sources b/sources
deleted file mode 100644
index 54aeab1..0000000
--- a/sources
+++ /dev/null
@@ -1 +0,0 @@
-f2b73436fc0c5f588abb69ac304c147f xf86-video-freedreno-20160929.tar.bz2
diff --git a/xorg-x11-drv-freedreno.spec b/xorg-x11-drv-freedreno.spec
deleted file mode 100644
index 5a6c65f..0000000
--- a/xorg-x11-drv-freedreno.spec
+++ /dev/null
@@ -1,134 +0,0 @@
-%define moduledir %(pkg-config xorg-server --variable=moduledir )
-%if 0%{?fedora} >= 20
-%define sysconfigdir %(pkg-config xorg-server --variable=sysconfigdir )
-%endif
-%define driverdir %{moduledir}/drivers
-%define gitdate 20160929
-%define gitrev .%{gitdate}
-
-%undefine _hardened_build
-
-Summary: Xorg X11 freedreno driver
-Name: xorg-x11-drv-freedreno
-Version: 1.4.0
-Release: 6%{?gitrev}%{?dist}
-URL: http://www.x.org
-License: MIT
-Group: User Interface/X Hardware Support
-
-%if 0%{?gitdate}
-Source0: xf86-video-freedreno-%{gitdate}.tar.bz2
-%else
-Source0: http://xorg.freedesktop.org/archive/individual/driver/xf86-video-freedren...
-%endif
-Source2: make-git-snapshot.sh
-
-ExclusiveArch: %{arm} aarch64
-
-BuildRequires: kernel-headers >= 2.6.32.3
-BuildRequires: pkgconfig(libdrm_freedreno)
-BuildRequires: pkgconfig(xatracker)
-BuildRequires: libudev-devel
-BuildRequires: libXext-devel
-BuildRequires: libXrandr-devel
-BuildRequires: libXv-devel
-BuildRequires: mesa-libGL-devel >= 6.5-9
-BuildRequires: xorg-x11-server-devel >= 1.4.99.1-0.15
-BuildRequires: autoconf automake libtool
-
-Requires: Xorg %(xserver-sdk-abi-requires ansic)
-Requires: Xorg %(xserver-sdk-abi-requires videodrv)
-
-%description
-X.Org X11 freedreno driver for qualcomm based ARM devices.
-
-%if 0%{?gitdate}
-%define dirsuffix %{gitdate}
-%else
-%define dirsuffix %{version}
-%endif
-
-%prep
-%setup -q -n xf86-video-freedreno-%{?gitdate:%{gitdate}}%{!?gitdate:%{dirsuffix}}
-sed -i 's/-Werror//' src/Makefile.am
-
-%build
-%{?gitdate:autoreconf -v --install}
-
-%configure --disable-static --libdir=%{_libdir} --mandir=%{_mandir}
-make %{?_smp_mflags} V=1
-
-%install
-make install DESTDIR=$RPM_BUILD_ROOT
-
-# FIXME: Remove all libtool archives (*.la) from modules directory. This
-# should be fixed in upstream Makefile.am or whatever.
-find $RPM_BUILD_ROOT -regex ".*\.la$" | xargs rm -f --
-
-%files
-%doc NEWS
-%{driverdir}/freedreno_drv.so
-%if 0%{?fedora} >= 20
-%{sysconfigdir}/42-freedreno.conf
-%endif
-%{_mandir}/man4/freedreno.4*
-
-%changelog
-* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.4.0-6.20160929
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
-
-* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.4.0-5.20160929
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
-
-* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.4.0-4.20160929
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
-
-* Thu Sep 29 2016 Hans de Goede <hdegoede(a)redhat.com> - 1.4.0-3
-- Update to latest git master for use with xserver-1.19
-- Rebuild against xserver-1.19
-
-* Fri Feb 05 2016 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.4.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
-
-* Mon Dec 21 2015 Dennis Gilmore <dennis(a)ausil.us> - 1.4.0-1
-- update to 1.4.0
-
-* Wed Jul 29 2015 Dave Airlie <airlied(a)redhat.com> - 1.3.0-5
-- 1.15 ABI rebuild
-
-* Tue Jun 23 2015 Adam Jackson <ajax(a)redhat.com> - 1.3.0-4
-- Undefine _hardened_build
-
-* Fri Jun 19 2015 Fedora Release Engineering <rel-eng(a)lists.fedoraproject.org> - 1.3.0-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
-
-* Wed Feb 11 2015 Hans de Goede <hdegoede(a)redhat.com> - 1.3.0-2
-- xserver 1.17 ABI rebuild
-
-* Wed Oct 22 2014 Rob Clark <robdclark(a)gmail.com> - 1.3.0-1
-- update to 1.3.0
-
-* Mon Aug 18 2014 Fedora Release Engineering <rel-eng(a)lists.fedoraproject.org> - 1.2.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
-
-* Wed Jul 23 2014 Dennis Gilmore <dennis(a)ausil.us> - 1.2.0-1
-- update to 1.2.0
-
-* Wed Jul 9 2014 Peter Robinson <pbrobinson(a)fedoraproject.org> 1.1.0-5
-- Build on aarch64
-
-* Mon Jun 16 2014 Hans de Goede <hdegoede(a)redhat.com> - 1.1.0-4
-- xserver 1.15.99.903 ABI rebuild
-
-* Sun Jun 08 2014 Fedora Release Engineering <rel-eng(a)lists.fedoraproject.org> - 1.1.0-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
-
-* Sat May 17 2014 Dennis Gilmore <dennis(a)ausil.us> - 1.1.0-2
-- enable XA support
-
-* Sat May 17 2014 Dennis Gilmore <dennis(a)ausil.us> - 1.1.0-1
-- update to 1.1.0 release
-
-* Thu May 01 2014 Dennis Gilmore <dennis(a)ausil.us> - 1.0.0-1.20140503
-- initial packaging
-
6 years, 7 months
Architecture specific change in rpms/xorg-x11-drv-freedreno.git
by githook-noreply@fedoraproject.org
The package rpms/xorg-x11-drv-freedreno.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/xorg-x11-drv-freedreno.git/commit....
Change:
-ExclusiveArch: %{arm} aarch64
Thanks.
Full change:
============
commit 0c6d1df9ff612e951a401e170661df7477bbe0af
Author: Peter Robinson <pbrobinson(a)gmail.com>
Date: Tue Oct 3 08:28:45 2017 +0100
Xorg is now using glamor to render 2D
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 72638e3..0000000
--- a/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/xf86-video-freedreno-*.tar.bz2
diff --git a/dead.package b/dead.package
new file mode 100644
index 0000000..4836558
--- /dev/null
+++ b/dead.package
@@ -0,0 +1 @@
+Xorg is now using glamor to render 2D
diff --git a/make-git-snapshot.sh b/make-git-snapshot.sh
deleted file mode 100755
index 3b0293b..0000000
--- a/make-git-snapshot.sh
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/bin/sh
-
-# Usage: ./make-git-snapshot.sh [COMMIT]
-#
-# to make a snapshot of the given tag/branch. Defaults to HEAD.
-# Point env var REF to a local mesa repo to reduce clone time.
-
-DIRNAME=xf86-video-freedreno-$( date +%Y%m%d )
-
-echo REF ${REF:+--reference $REF}
-echo DIRNAME $DIRNAME
-echo HEAD ${1:-HEAD}
-
-rm -rf $DIRNAME
-
-git clone ${REF:+--reference $REF} \
- git://git.freedesktop.org/git/xorg/driver/xf86-video-freedreno $DIRNAME
-
-GIT_DIR=$DIRNAME/.git git archive --format=tar --prefix=$DIRNAME/ ${1:-HEAD} \
- | bzip2 > $DIRNAME.tar.bz2
-
-# rm -rf $DIRNAME
diff --git a/sources b/sources
deleted file mode 100644
index 54aeab1..0000000
--- a/sources
+++ /dev/null
@@ -1 +0,0 @@
-f2b73436fc0c5f588abb69ac304c147f xf86-video-freedreno-20160929.tar.bz2
diff --git a/xorg-x11-drv-freedreno.spec b/xorg-x11-drv-freedreno.spec
deleted file mode 100644
index 5a6c65f..0000000
--- a/xorg-x11-drv-freedreno.spec
+++ /dev/null
@@ -1,134 +0,0 @@
-%define moduledir %(pkg-config xorg-server --variable=moduledir )
-%if 0%{?fedora} >= 20
-%define sysconfigdir %(pkg-config xorg-server --variable=sysconfigdir )
-%endif
-%define driverdir %{moduledir}/drivers
-%define gitdate 20160929
-%define gitrev .%{gitdate}
-
-%undefine _hardened_build
-
-Summary: Xorg X11 freedreno driver
-Name: xorg-x11-drv-freedreno
-Version: 1.4.0
-Release: 6%{?gitrev}%{?dist}
-URL: http://www.x.org
-License: MIT
-Group: User Interface/X Hardware Support
-
-%if 0%{?gitdate}
-Source0: xf86-video-freedreno-%{gitdate}.tar.bz2
-%else
-Source0: http://xorg.freedesktop.org/archive/individual/driver/xf86-video-freedren...
-%endif
-Source2: make-git-snapshot.sh
-
-ExclusiveArch: %{arm} aarch64
-
-BuildRequires: kernel-headers >= 2.6.32.3
-BuildRequires: pkgconfig(libdrm_freedreno)
-BuildRequires: pkgconfig(xatracker)
-BuildRequires: libudev-devel
-BuildRequires: libXext-devel
-BuildRequires: libXrandr-devel
-BuildRequires: libXv-devel
-BuildRequires: mesa-libGL-devel >= 6.5-9
-BuildRequires: xorg-x11-server-devel >= 1.4.99.1-0.15
-BuildRequires: autoconf automake libtool
-
-Requires: Xorg %(xserver-sdk-abi-requires ansic)
-Requires: Xorg %(xserver-sdk-abi-requires videodrv)
-
-%description
-X.Org X11 freedreno driver for qualcomm based ARM devices.
-
-%if 0%{?gitdate}
-%define dirsuffix %{gitdate}
-%else
-%define dirsuffix %{version}
-%endif
-
-%prep
-%setup -q -n xf86-video-freedreno-%{?gitdate:%{gitdate}}%{!?gitdate:%{dirsuffix}}
-sed -i 's/-Werror//' src/Makefile.am
-
-%build
-%{?gitdate:autoreconf -v --install}
-
-%configure --disable-static --libdir=%{_libdir} --mandir=%{_mandir}
-make %{?_smp_mflags} V=1
-
-%install
-make install DESTDIR=$RPM_BUILD_ROOT
-
-# FIXME: Remove all libtool archives (*.la) from modules directory. This
-# should be fixed in upstream Makefile.am or whatever.
-find $RPM_BUILD_ROOT -regex ".*\.la$" | xargs rm -f --
-
-%files
-%doc NEWS
-%{driverdir}/freedreno_drv.so
-%if 0%{?fedora} >= 20
-%{sysconfigdir}/42-freedreno.conf
-%endif
-%{_mandir}/man4/freedreno.4*
-
-%changelog
-* Thu Aug 03 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.4.0-6.20160929
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
-
-* Thu Jul 27 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.4.0-5.20160929
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
-
-* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.4.0-4.20160929
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
-
-* Thu Sep 29 2016 Hans de Goede <hdegoede(a)redhat.com> - 1.4.0-3
-- Update to latest git master for use with xserver-1.19
-- Rebuild against xserver-1.19
-
-* Fri Feb 05 2016 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.4.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
-
-* Mon Dec 21 2015 Dennis Gilmore <dennis(a)ausil.us> - 1.4.0-1
-- update to 1.4.0
-
-* Wed Jul 29 2015 Dave Airlie <airlied(a)redhat.com> - 1.3.0-5
-- 1.15 ABI rebuild
-
-* Tue Jun 23 2015 Adam Jackson <ajax(a)redhat.com> - 1.3.0-4
-- Undefine _hardened_build
-
-* Fri Jun 19 2015 Fedora Release Engineering <rel-eng(a)lists.fedoraproject.org> - 1.3.0-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
-
-* Wed Feb 11 2015 Hans de Goede <hdegoede(a)redhat.com> - 1.3.0-2
-- xserver 1.17 ABI rebuild
-
-* Wed Oct 22 2014 Rob Clark <robdclark(a)gmail.com> - 1.3.0-1
-- update to 1.3.0
-
-* Mon Aug 18 2014 Fedora Release Engineering <rel-eng(a)lists.fedoraproject.org> - 1.2.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
-
-* Wed Jul 23 2014 Dennis Gilmore <dennis(a)ausil.us> - 1.2.0-1
-- update to 1.2.0
-
-* Wed Jul 9 2014 Peter Robinson <pbrobinson(a)fedoraproject.org> 1.1.0-5
-- Build on aarch64
-
-* Mon Jun 16 2014 Hans de Goede <hdegoede(a)redhat.com> - 1.1.0-4
-- xserver 1.15.99.903 ABI rebuild
-
-* Sun Jun 08 2014 Fedora Release Engineering <rel-eng(a)lists.fedoraproject.org> - 1.1.0-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
-
-* Sat May 17 2014 Dennis Gilmore <dennis(a)ausil.us> - 1.1.0-2
-- enable XA support
-
-* Sat May 17 2014 Dennis Gilmore <dennis(a)ausil.us> - 1.1.0-1
-- update to 1.1.0 release
-
-* Thu May 01 2014 Dennis Gilmore <dennis(a)ausil.us> - 1.0.0-1.20140503
-- initial packaging
-
6 years, 7 months
Architecture specific change in rpms/eclipse.git
by githook-noreply@fedoraproject.org
The package rpms/eclipse.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/eclipse.git/commit/?id=505e54f634....
Change:
+%ifarch %{arm}
Thanks.
Full change:
============
commit 505e54f6342028301b6b7a172645aff5dc57f817
Author: Mat Booth <mat.booth(a)redhat.com>
Date: Mon Oct 2 19:41:47 2017 +0100
Use the jit on 32bit arm to speed up the build
diff --git a/eclipse.spec b/eclipse.spec
index 18e0e48..c26d752 100644
--- a/eclipse.spec
+++ b/eclipse.spec
@@ -38,7 +38,7 @@ Epoch: 1
Summary: An open, extensible IDE
Name: eclipse
Version: 4.7.1
-Release: 5%{?dist}
+Release: 6%{?dist}
License: EPL
URL: http://www.eclipse.org/
@@ -129,6 +129,11 @@ Patch30: eclipse-hide-droplets-from-install-wizard.patch
# Fix webkit/javascript problem affecting jboss
Patch31: eclipse-bug-525340.patch
+# Use the jit on 32bit arm to speed up the build
+%ifarch %{arm}
+BuildRequires: java-1.8.0-openjdk-aarch32-devel
+%endif
+
BuildRequires: maven-local
BuildRequires: tycho
BuildRequires: tycho-extras
@@ -1076,6 +1081,9 @@ fi
%{_eclipsedir}/plugins/org.eclipse.osgi.util_*
%changelog
+* Mon Oct 02 2017 Mat Booth <mat.booth(a)redhat.com> - 1:4.7.1-6
+- Use the jit on 32bit arm to speed up the build
+
* Mon Oct 02 2017 Mat Booth <mat.booth(a)redhat.com> - 1:4.7.1-5
- Drop workaround for metainfo problem
- Add patch for javascript/webkit2 bug ebz#525340
6 years, 7 months
Architecture specific change in rpms/eclipse.git
by githook-noreply@fedoraproject.org
The package rpms/eclipse.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/eclipse.git/commit/?id=505e54f634....
Change:
+%ifarch %{arm}
Thanks.
Full change:
============
commit 505e54f6342028301b6b7a172645aff5dc57f817
Author: Mat Booth <mat.booth(a)redhat.com>
Date: Mon Oct 2 19:41:47 2017 +0100
Use the jit on 32bit arm to speed up the build
diff --git a/eclipse.spec b/eclipse.spec
index 18e0e48..c26d752 100644
--- a/eclipse.spec
+++ b/eclipse.spec
@@ -38,7 +38,7 @@ Epoch: 1
Summary: An open, extensible IDE
Name: eclipse
Version: 4.7.1
-Release: 5%{?dist}
+Release: 6%{?dist}
License: EPL
URL: http://www.eclipse.org/
@@ -129,6 +129,11 @@ Patch30: eclipse-hide-droplets-from-install-wizard.patch
# Fix webkit/javascript problem affecting jboss
Patch31: eclipse-bug-525340.patch
+# Use the jit on 32bit arm to speed up the build
+%ifarch %{arm}
+BuildRequires: java-1.8.0-openjdk-aarch32-devel
+%endif
+
BuildRequires: maven-local
BuildRequires: tycho
BuildRequires: tycho-extras
@@ -1076,6 +1081,9 @@ fi
%{_eclipsedir}/plugins/org.eclipse.osgi.util_*
%changelog
+* Mon Oct 02 2017 Mat Booth <mat.booth(a)redhat.com> - 1:4.7.1-6
+- Use the jit on 32bit arm to speed up the build
+
* Mon Oct 02 2017 Mat Booth <mat.booth(a)redhat.com> - 1:4.7.1-5
- Drop workaround for metainfo problem
- Add patch for javascript/webkit2 bug ebz#525340
6 years, 7 months
Architecture specific change in rpms/eclipse.git
by githook-noreply@fedoraproject.org
The package rpms/eclipse.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/eclipse.git/commit/?id=505e54f634....
Change:
+%ifarch %{arm}
Thanks.
Full change:
============
commit 505e54f6342028301b6b7a172645aff5dc57f817
Author: Mat Booth <mat.booth(a)redhat.com>
Date: Mon Oct 2 19:41:47 2017 +0100
Use the jit on 32bit arm to speed up the build
diff --git a/eclipse.spec b/eclipse.spec
index 18e0e48..c26d752 100644
--- a/eclipse.spec
+++ b/eclipse.spec
@@ -38,7 +38,7 @@ Epoch: 1
Summary: An open, extensible IDE
Name: eclipse
Version: 4.7.1
-Release: 5%{?dist}
+Release: 6%{?dist}
License: EPL
URL: http://www.eclipse.org/
@@ -129,6 +129,11 @@ Patch30: eclipse-hide-droplets-from-install-wizard.patch
# Fix webkit/javascript problem affecting jboss
Patch31: eclipse-bug-525340.patch
+# Use the jit on 32bit arm to speed up the build
+%ifarch %{arm}
+BuildRequires: java-1.8.0-openjdk-aarch32-devel
+%endif
+
BuildRequires: maven-local
BuildRequires: tycho
BuildRequires: tycho-extras
@@ -1076,6 +1081,9 @@ fi
%{_eclipsedir}/plugins/org.eclipse.osgi.util_*
%changelog
+* Mon Oct 02 2017 Mat Booth <mat.booth(a)redhat.com> - 1:4.7.1-6
+- Use the jit on 32bit arm to speed up the build
+
* Mon Oct 02 2017 Mat Booth <mat.booth(a)redhat.com> - 1:4.7.1-5
- Drop workaround for metainfo problem
- Add patch for javascript/webkit2 bug ebz#525340
6 years, 7 months