Architecture specific change in rpms/pocl.git
by githook-noreply@fedoraproject.org
The package rpms/pocl.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/pocl.git/commit/?id=2fb4847041326...
https://src.fedoraproject.org/cgit/rpms/pocl.git/commit/?id=a1d23fba97857...
https://src.fedoraproject.org/cgit/rpms/pocl.git/commit/?id=796457e6ebc3d....
Change:
+ExclusiveArch: %{arm} %{ix86} x86_64
+ExclusiveArch: %{arm} %{x86} x86_64
+ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
Thanks.
Full change:
============
commit 796457e6ebc3d08cfce2f98e4241909c88fff29d
Author: Peter Robinson <pbrobinson(a)gmail.com>
Date: Tue Mar 27 13:33:28 2018 +0100
add compiler-rt dep, fixes aarch64 tests (now supported upstream), dramatically improves other non supported arches test passes (details updated)
diff --git a/pocl.spec b/pocl.spec
index 1f1a37e..a02440d 100644
--- a/pocl.spec
+++ b/pocl.spec
@@ -16,12 +16,14 @@ Source0: https://github.com/pocl/pocl/archive/v%{version}.tar.gz
# FIXME: link
Patch1001: 0001-wrap-more-stuff-for-64-bit-atomics.patch
-# aarch64 builds fine, but: 15% tests passed, 103 tests failed out of 121
-# ppc64/ppc64le/s390x builds fine, but: 15% tests passed, 102 tests failed out of 120
-ExclusiveArch: %{arm} %{ix86} x86_64
+# ppc64le builds fine, but: 97% tests passed, 4 tests failed out of 120
+# ppc64 builds fine, but: 87% tests passed, 16 tests failed out of 120
+# s390x builds fine, but: 15% tests passed, 102 tests failed out of 120
+ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
BuildRequires: cmake
BuildRequires: clang clang-devel
+BuildRequires: compiler-rt
BuildRequires: llvm llvm-devel
BuildRequires: hwloc-devel
BuildRequires: libtool
@@ -131,6 +133,7 @@ popd
%changelog
* Mon Mar 26 2018 Peter Robinson <pbrobinson(a)fedoraproject.org> 1.1-2
- Minor spec updates/cleanups
+- Enable aarch64
* Fri Mar 23 2018 Tom Stellard <tstellar(a)redhat.com> - 1.1-1
- Update to 1.1
commit 2fb48470413267c92087898e5b6c3588a7af913a
Author: Peter Robinson <pbrobinson(a)gmail.com>
Date: Tue Mar 27 04:44:26 2018 +0100
fix ix86 macro
diff --git a/pocl.spec b/pocl.spec
index 4e638f2..1f1a37e 100644
--- a/pocl.spec
+++ b/pocl.spec
@@ -18,7 +18,7 @@ Patch1001: 0001-wrap-more-stuff-for-64-bit-atomics.patch
# aarch64 builds fine, but: 15% tests passed, 103 tests failed out of 121
# ppc64/ppc64le/s390x builds fine, but: 15% tests passed, 102 tests failed out of 120
-ExclusiveArch: %{arm} %{x86} x86_64
+ExclusiveArch: %{arm} %{ix86} x86_64
BuildRequires: cmake
BuildRequires: clang clang-devel
commit a1d23fba97857362228ba75002673afdcca7835d
Author: Peter Robinson <pbrobinson(a)gmail.com>
Date: Tue Mar 27 04:32:52 2018 +0100
Minor spec updates/cleanups, use ExclusiveArch, enable easy enable/disable of tests, update arch failure details, drop obsolete patches
diff --git a/.gitignore b/.gitignore
index 4a406bf..8cba2ba 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,3 @@
-*~
*.rpm
*.tar*
results_*/
diff --git a/0001-Fix-issue-597-for-32bit-ARM.patch b/0001-Fix-issue-597-for-32bit-ARM.patch
deleted file mode 100644
index 1473b15..0000000
--- a/0001-Fix-issue-597-for-32bit-ARM.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From dca128f42d3b9401eeb5760b129987091657753f Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Wed, 3 Jan 2018 11:07:35 +0100
-Subject: [PATCH 01/14] Fix issue #597 for 32bit ARM
-
----
- lib/kernel/libclc/vtables_fp64.cl | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/lib/kernel/libclc/vtables_fp64.cl b/lib/kernel/libclc/vtables_fp64.cl
-index 44142909..0f4d5753 100644
---- a/lib/kernel/libclc/vtables_fp64.cl
-+++ b/lib/kernel/libclc/vtables_fp64.cl
-@@ -1025,9 +1025,6 @@ DECLARE_VTABLE(double2, CBRT_REM_TBL, 5) = {
- (double2)(0x1.965fea0000000p+0, 0x1.4f5b8f20ac166p-26),
- };
-
--#endif // cl_khr_fp64
--
--
- VTABLE_FUNCTION(double, CBRT_INV_TBL, cbrt_inv_tbl);
-
- VTABLE_FUNCTION2(v2double, LN_TBL, ln_tbl);
-@@ -1037,3 +1034,5 @@ VTABLE_FUNCTION2(v2double, SINH_TBL, sinh_tbl);
- VTABLE_FUNCTION2(v2double, COSH_TBL, cosh_tbl);
- VTABLE_FUNCTION2(v2double, CBRT_DBL_TBL, cbrt_dbl_tbl);
- VTABLE_FUNCTION2(v2double, CBRT_REM_TBL, cbrt_rem_tbl);
-+
-+#endif // cl_khr_fp64
---
-2.15.1
-
diff --git a/0002-Try-to-fix-596-provide-additional-pocl-build-informa.patch b/0002-Try-to-fix-596-provide-additional-pocl-build-informa.patch
deleted file mode 100644
index 709f6a9..0000000
--- a/0002-Try-to-fix-596-provide-additional-pocl-build-informa.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-From 020cd9dbd8e356cc370b090d416c6e8b912c6b47 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Wed, 3 Jan 2018 12:55:54 +0100
-Subject: [PATCH 02/14] Try to fix #596 - provide additional pocl build
- information
-
----
- CMakeLists.txt | 6 +++++-
- config.h.in.cmake | 5 +++++
- lib/CL/clGetPlatformInfo.c | 43 ++++++++++++++++++++++++++++++++++++++--
- lib/CL/devices/basic/basic.c | 8 +++++++-
- lib/CL/devices/pthread/pthread.c | 12 ++++++++++-
- tests/runtime/test_version.c | 12 ++++++-----
- 6 files changed, 76 insertions(+), 10 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 44a51c94..a836da90 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -308,7 +308,11 @@ if (OCS_AVAILABLE)
- endif()
-
- if(NOT DEFINED HOST_DEVICE_BUILD_HASH)
-- set(HOST_DEVICE_BUILD_HASH "${LLC_TRIPLE}-${LLC_HOST_CPU}")
-+ if(KERNELLIB_HOST_CPU_VARIANTS STREQUAL "distro")
-+ set(HOST_DEVICE_BUILD_HASH "${LLC_TRIPLE}")
-+ else()
-+ set(HOST_DEVICE_BUILD_HASH "${LLC_TRIPLE}-${LLC_HOST_CPU}")
-+ endif()
- endif()
-
- if(ARM AND LLVM_3_9)
-diff --git a/config.h.in.cmake b/config.h.in.cmake
-index 7a6f72a1..cd75d7ce 100644
---- a/config.h.in.cmake
-+++ b/config.h.in.cmake
-@@ -28,6 +28,11 @@
-
- #define FORCED_CLFLAGS "@FORCED_CLFLAGS@"
-
-+#cmakedefine ENABLE_ASAN
-+#cmakedefine ENABLE_LSAN
-+#cmakedefine ENABLE_TSAN
-+#cmakedefine ENABLE_UBSAN
-+
- #cmakedefine ENABLE_CONFORMANCE
-
- #cmakedefine ENABLE_POCL_BUILDING
-diff --git a/lib/CL/clGetPlatformInfo.c b/lib/CL/clGetPlatformInfo.c
-index 74c15c92..5bb9c0ac 100644
---- a/lib/CL/clGetPlatformInfo.c
-+++ b/lib/CL/clGetPlatformInfo.c
-@@ -51,8 +51,47 @@ POname(clGetPlatformInfo)(cl_platform_id platform,
-
- case CL_PLATFORM_VERSION:
- #ifdef OCS_AVAILABLE
-- POCL_RETURN_GETINFO_STR("OpenCL " POCL_CL_VERSION\
-- " pocl " PACKAGE_VERSION ", LLVM " LLVM_VERSION);
-+ POCL_RETURN_GETINFO_STR ("OpenCL " POCL_CL_VERSION
-+ " pocl " PACKAGE_VERSION ", LLVM " LLVM_VERSION
-+#ifdef LLVM_BUILD_MODE_DEBUG
-+ " - debug"
-+#endif
-+
-+#ifdef ENABLE_ASAN
-+ ", ASAN"
-+#endif
-+#ifdef ENABLE_TSAN
-+ ", TSAN"
-+#endif
-+#ifdef ENABLE_LSAN
-+ ", LSAN"
-+#endif
-+#ifdef ENABLE_UBSAN
-+ ", UBSAN"
-+#endif
-+
-+#ifdef BUILD_CUDA
-+ ", CUDA"
-+#endif
-+#ifdef BUILD_HSA
-+ ", HSA"
-+#endif
-+#ifdef TCE_AVAILABLE
-+ ", TCE"
-+#endif
-+#ifdef HAVE_LTTNG_UST
-+ ", LTTNG"
-+#endif
-+#ifdef KERNELLIB_HOST_DISTRO_VARIANTS
-+ ", DISTRO"
-+#endif
-+#ifdef POCL_DEBUG_MESSAGES
-+ ", POCL_DEBUG"
-+#endif
-+#ifndef _CL_DISABLE_HALF
-+ ", FP16"
-+#endif
-+ );
- #else
- POCL_RETURN_GETINFO_STR("OpenCL " POCL_CL_VERSION\
- " pocl " PACKAGE_VERSION ", no online compiler support");
-diff --git a/lib/CL/devices/basic/basic.c b/lib/CL/devices/basic/basic.c
-index 433ce943..8d1d8910 100644
---- a/lib/CL/devices/basic/basic.c
-+++ b/lib/CL/devices/basic/basic.c
-@@ -134,7 +134,13 @@ char *
- pocl_basic_build_hash (cl_device_id device)
- {
- char* res = calloc(1000, sizeof(char));
-- snprintf(res, 1000, "basic-%s", HOST_DEVICE_BUILD_HASH);
-+#ifdef KERNELLIB_HOST_DISTRO_VARIANTS
-+ char *name = get_cpu_name ();
-+ snprintf (res, 1000, "basic-%s-%s", HOST_DEVICE_BUILD_HASH, name);
-+ POCL_MEM_FREE (name);
-+#else
-+ snprintf (res, 1000, "basic-%s", HOST_DEVICE_BUILD_HASH);
-+#endif
- return res;
- }
-
-diff --git a/lib/CL/devices/pthread/pthread.c b/lib/CL/devices/pthread/pthread.c
-index b3d91fdb..0b88a74c 100644
---- a/lib/CL/devices/pthread/pthread.c
-+++ b/lib/CL/devices/pthread/pthread.c
-@@ -51,6 +51,10 @@
- #include "pocl_util.h"
- #include "pocl_mem_management.h"
-
-+#ifdef OCS_AVAILABLE
-+#include "pocl_llvm.h"
-+#endif
-+
- //#define DEBUG_MT
-
- #ifdef CUSTOM_BUFFER_ALLOCATOR
-@@ -149,7 +153,13 @@ char *
- pocl_pthread_build_hash (cl_device_id device)
- {
- char* res = calloc(1000, sizeof(char));
-- snprintf(res, 1000, "pthread-%s", HOST_DEVICE_BUILD_HASH);
-+#ifdef KERNELLIB_HOST_DISTRO_VARIANTS
-+ char *name = get_cpu_name ();
-+ snprintf (res, 1000, "pthread-%s-%s", HOST_DEVICE_BUILD_HASH, name);
-+ POCL_MEM_FREE (name);
-+#else
-+ snprintf (res, 1000, "pthread-%s", HOST_DEVICE_BUILD_HASH);
-+#endif
- return res;
- }
-
-diff --git a/tests/runtime/test_version.c b/tests/runtime/test_version.c
-index c41ef515..6bbc70de 100644
---- a/tests/runtime/test_version.c
-+++ b/tests/runtime/test_version.c
-@@ -33,11 +33,13 @@ int main(void)
- sizeof(result), result, &rvs));
-
- result[rvs]=0; // spec doesn't say it is null-terminated.
-- if( strcmp( result,
-- "OpenCL " POCL_CL_VERSION " pocl " PACKAGE_VERSION ", LLVM " LLVM_VERSION) != 0 ) {
-- printf("Error: platform is: %s\n", result);
-- return 2;
-- }
-+ const char *expected = "OpenCL " POCL_CL_VERSION
-+ " pocl " PACKAGE_VERSION ", LLVM " LLVM_VERSION;
-+ if (strncmp (result, expected, strlen (expected)) != 0)
-+ {
-+ printf ("Error: platform is: %s\n", result);
-+ return 2;
-+ }
-
-
- /* Pocl devices have the form 'type'-'details', if details are
---
-2.15.1
-
diff --git a/0003-Remove-CL_DISABLE_LONG.patch b/0003-Remove-CL_DISABLE_LONG.patch
deleted file mode 100644
index 434764d..0000000
--- a/0003-Remove-CL_DISABLE_LONG.patch
+++ /dev/null
@@ -1,139 +0,0 @@
-From 019531349964b7d61a2b658eb81a6b168cde3f29 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Wed, 3 Jan 2018 10:46:47 +0100
-Subject: [PATCH 03/14] Remove CL_DISABLE_LONG
-
-This was a workaround for an OpenCL bug in LLVM 3.3
----
- CMakeLists.txt | 37 +++++++++++++++++--------------------
- config.h.in.cmake | 3 ---
- lib/CL/devices/basic/basic.c | 5 -----
- lib/CL/devices/pthread/pthread.c | 5 -----
- 4 files changed, 17 insertions(+), 33 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index a836da90..60d570b8 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -744,9 +744,13 @@ endif()
- set(DEFAULT_HOST_CLANG_FLAGS "${CLANG_TARGET_OPTION}${LLC_TRIPLE}")
- set(DEFAULT_HOST_LLC_FLAGS "-relocation-model=pic -mtriple=${LLC_TRIPLE}")
-
--if(ARM AND (NOT LLVM_OLDER_THAN_4_0))
-- #ARMs need to enable FP64 manually with 4.0
-- option(ENABLE_FP64 "Enable FP64" ON)
-+if(ARM)
-+ #ARMs need to enable FP64 manually with LLVM < 4.0
-+ if(LLVM_OLDER_THAN_4_0)
-+ option(ENABLE_FP64 "Enable FP64 on ARM32 - disabled by default for LLVM < 4" OFF)
-+ else()
-+ option(ENABLE_FP64 "Enable FP64 on ARM32 - if you have at least VFP support for doubles, you can leave it ON" ON )
-+ endif()
- endif()
-
- if(ARM32 OR (LLC_TRIPLE MATCHES "^arm"))
-@@ -764,9 +768,6 @@ if(ARM32 OR (LLC_TRIPLE MATCHES "^arm"))
- endif()
- endif()
-
--if(CL_DISABLE_LONG)
-- set(DEFAULT_HOST_CLANG_FLAGS "${DEFAULT_HOST_CLANG_FLAGS} -D_CL_DISABLE_LONG")
--endif()
- if(CL_DISABLE_HALF)
- set(DEFAULT_HOST_CLANG_FLAGS "${DEFAULT_HOST_CLANG_FLAGS} -D_CL_DISABLE_HALF")
- endif()
-@@ -790,19 +791,17 @@ if(NOT CL_DISABLE_HALF)
- set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp16")
- endif()
-
--if(NOT CL_DISABLE_LONG)
-- # must not be defined in HOST_DEVICE_EXTENSIONS list, because
-- # this extension doesn't exist in official extension list
-- set(HOST_DEVICE_EXTENSION_DEFINES "-Dcl_khr_int64")
-+# must not be defined in HOST_DEVICE_EXTENSIONS list, because
-+# this extension doesn't exist in official extension list
-+# there is "cles_khr_int64" which indicates int64 support for embedded profiles
-+set(HOST_DEVICE_EXTENSION_DEFINES "-Dcl_khr_int64")
-
-- # fp64 requires int64
-- if(X86)
-- set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64 cl_khr_int64_base_atomics cl_khr_int64_extended_atomics")
-- endif()
-- if(ENABLE_FP64 AND (NOT LLVM_OLDER_THAN_4_0))
-- # 32bit arm doesnt always uspport doubles
-- set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64")
-- endif()
-+if(X86)
-+ set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64 cl_khr_int64_base_atomics cl_khr_int64_extended_atomics")
-+endif()
-+# 32bit arm doesnt always support doubles
-+if(ENABLE_FP64 AND (NOT LLVM_OLDER_THAN_4_0))
-+ set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64")
- endif()
-
- set(TEMP_EXT "${HOST_DEVICE_EXTENSIONS}")
-@@ -1145,7 +1144,6 @@ set(BUILD_ICD ${ENABLE_ICD})
- set(BUILD_HSA ${ENABLE_HSA})
- set(TCE_AVAILABLE ${ENABLE_TCE})
- set(TCEMC_AVAILABLE ${ENABLE_TCEMC})
--set(_CL_DISABLE_LONG ${CL_DISABLE_LONG})
- set(_CL_DISABLE_HALF ${CL_DISABLE_HALF})
- set(PACKAGE_VERSION "${POCL_VERSION}")
-
-@@ -1277,7 +1275,6 @@ MESSAGE(STATUS " ")
- MESSAGE(STATUS "CLANG_MARCH_FLAG: ${CLANG_MARCH_FLAG}")
- MESSAGE(STATUS "CLANG_TARGET_OPTION: ${CLANG_TARGET_OPTION}")
- MESSAGE(STATUS "CL_DISABLE_HALF: ${CL_DISABLE_HALF}")
--MESSAGE(STATUS "CL_DISABLE_LONG: ${CL_DISABLE_LONG}")
- MESSAGE(STATUS "HAVE_CLOCK_GETTIME: ${HAVE_CLOCK_GETTIME}")
- MESSAGE(STATUS "HAVE_GLEW: ${HAVE_GLEW}")
- MESSAGE(STATUS "HAVE_LTTNG_UST: ${HAVE_LTTNG_UST}")
-diff --git a/config.h.in.cmake b/config.h.in.cmake
-index cd75d7ce..7b7e87e6 100644
---- a/config.h.in.cmake
-+++ b/config.h.in.cmake
-@@ -149,9 +149,6 @@
- /* Defined on big endian systems */
- #define WORDS_BIGENDIAN @WORDS_BIGENDIAN@
-
--/* Disable 64bit ints when a clang bug is present */
--#cmakedefine _CL_DISABLE_LONG
--
- /* Disable cl_khr_fp16 because fp16 is not supported */
- #cmakedefine _CL_DISABLE_HALF
-
-diff --git a/lib/CL/devices/basic/basic.c b/lib/CL/devices/basic/basic.c
-index 8d1d8910..1dc7d303 100644
---- a/lib/CL/devices/basic/basic.c
-+++ b/lib/CL/devices/basic/basic.c
-@@ -381,11 +381,6 @@ pocl_basic_init (unsigned j, cl_device_id device, const char* parameters)
- if(device->llvm_cpu && (!strcmp(device->llvm_cpu, "(unknown)")))
- device->llvm_cpu = NULL;
-
-- // work-around LLVM bug where sizeof(long)=4
-- #ifdef _CL_DISABLE_LONG
-- device->has_64bit_long=0;
-- #endif
--
- return ret;
- }
-
-diff --git a/lib/CL/devices/pthread/pthread.c b/lib/CL/devices/pthread/pthread.c
-index 0b88a74c..494ae8b2 100644
---- a/lib/CL/devices/pthread/pthread.c
-+++ b/lib/CL/devices/pthread/pthread.c
-@@ -263,11 +263,6 @@ pocl_pthread_init (unsigned j, cl_device_id device, const char* parameters)
- if(device->llvm_cpu && (!strcmp(device->llvm_cpu, "(unknown)")))
- device->llvm_cpu = NULL;
-
-- // work-around LLVM bug where sizeof(long)=4
-- #ifdef _CL_DISABLE_LONG
-- device->has_64bit_long=0;
-- #endif
--
- if (!scheduler_initialized)
- {
- scheduler_initialized = 1;
---
-2.15.1
-
diff --git a/0004-Fix-an-incorrect-env-var-check.patch b/0004-Fix-an-incorrect-env-var-check.patch
deleted file mode 100644
index 3431131..0000000
--- a/0004-Fix-an-incorrect-env-var-check.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 6c2059eace57aa6fe12db161ac92bd72556680e7 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Thu, 4 Jan 2018 18:17:17 +0100
-Subject: [PATCH 04/14] Fix an incorrect env var check
-
-Thish should be a check for compiler files, not POCL_DEBUG.
----
- lib/CL/pocl_llvm_build.cc | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/lib/CL/pocl_llvm_build.cc b/lib/CL/pocl_llvm_build.cc
-index 0d67d22f..9ad22796 100644
---- a/lib/CL/pocl_llvm_build.cc
-+++ b/lib/CL/pocl_llvm_build.cc
-@@ -109,8 +109,7 @@ load_source(FrontendOptions &fe,
- static inline int
- unlink_source(FrontendOptions &fe)
- {
-- // don't unlink in debug mode
-- if (pocl_get_bool_option("POCL_DEBUG", 0))
-+ if (pocl_get_bool_option("POCL_LEAVE_KERNEL_COMPILER_TEMP_FILES", 0) != 0)
- return 0;
-
- FrontendInputFile const& file = fe.Inputs.front();
---
-2.15.1
-
diff --git a/0005-Add-asserts-to-pthread-API-calls.patch b/0005-Add-asserts-to-pthread-API-calls.patch
deleted file mode 100644
index e157788..0000000
--- a/0005-Add-asserts-to-pthread-API-calls.patch
+++ /dev/null
@@ -1,194 +0,0 @@
-From ae9c7bc62f6fe78fe894e1a9a9aaca8ed5e04878 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Fri, 5 Jan 2018 12:47:02 +0100
-Subject: [PATCH 05/14] Add asserts to pthread API calls
-
----
- lib/CL/devices/common.c | 8 ++--
- lib/CL/devices/pthread/pocl-pthread_utils.h | 64 +++++++++++++++++++++++++----
- lib/CL/pocl_cl.h | 49 ++++++++++++++++++----
- 3 files changed, 102 insertions(+), 19 deletions(-)
-
-diff --git a/lib/CL/devices/common.c b/lib/CL/devices/common.c
-index 8c01191e..9895f1ae 100644
---- a/lib/CL/devices/common.c
-+++ b/lib/CL/devices/common.c
-@@ -1070,12 +1070,12 @@ pocl_memalign_alloc_global_mem(cl_device_id device, size_t align, size_t size)
- if (!ptr)
- return NULL;
-
-- POCL_LOCK_OBJ (mem);
-+ POCL_LOCK (mem->pocl_lock);
- mem->currently_allocated += size;
- if (mem->max_ever_allocated < mem->currently_allocated)
- mem->max_ever_allocated = mem->currently_allocated;
- assert(mem->currently_allocated <= mem->total_alloc_limit);
-- POCL_UNLOCK_OBJ (mem);
-+ POCL_UNLOCK (mem->pocl_lock);
-
- return ptr;
- }
-@@ -1085,10 +1085,10 @@ pocl_free_global_mem(cl_device_id device, void* ptr, size_t size)
- {
- pocl_global_mem_t *mem = device->global_memory;
-
-- POCL_LOCK_OBJ (mem);
-+ POCL_LOCK (mem->pocl_lock);
- assert(mem->currently_allocated >= size);
- mem->currently_allocated -= size;
-- POCL_UNLOCK_OBJ (mem);
-+ POCL_UNLOCK (mem->pocl_lock);
-
- POCL_MEM_FREE(ptr);
- }
-diff --git a/lib/CL/devices/pthread/pocl-pthread_utils.h b/lib/CL/devices/pthread/pocl-pthread_utils.h
-index 310bab6c..47afc65d 100644
---- a/lib/CL/devices/pthread/pocl-pthread_utils.h
-+++ b/lib/CL/devices/pthread/pocl-pthread_utils.h
-@@ -8,19 +8,67 @@
- #endif
-
- /* locking macros */
--#define PTHREAD_LOCK(__lock) pthread_mutex_lock(__lock)
--#define PTHREAD_UNLOCK(__lock) pthread_mutex_unlock(__lock)
--#define PTHREAD_INIT_LOCK(__lock) pthread_mutex_init(__lock, NULL)
--#define PTHREAD_DESTROY_LOCK(__lock) pthread_mutex_destroy(__lock)
-+#define PTHREAD_LOCK(__lock) \
-+ do \
-+ { \
-+ int r = pthread_mutex_lock (__lock); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_UNLOCK(__lock) \
-+ do \
-+ { \
-+ int r = pthread_mutex_unlock (__lock); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_INIT_LOCK(__lock) \
-+ do \
-+ { \
-+ int r = pthread_mutex_init (__lock, NULL); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_DESTROY_LOCK(__lock) \
-+ do \
-+ { \
-+ int r = pthread_mutex_destroy (__lock); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-
- /* Apparently Mac OS X does not have spinlock, despite having pthreads.
- * for now only enable spinlocks on linux.*/
- #ifdef __linux__
- #define PTHREAD_FAST_LOCK_T pthread_spinlock_t
-- #define PTHREAD_FAST_LOCK(l) pthread_spin_lock(l)
-- #define PTHREAD_FAST_UNLOCK(l) pthread_spin_unlock(l)
-- #define PTHREAD_FAST_INIT(l) pthread_spin_init(l, PTHREAD_PROCESS_PRIVATE)
-- #define PTHREAD_FAST_DESTROY(l) pthread_spin_destroy(l)
-+#define PTHREAD_FAST_LOCK(l) \
-+ do \
-+ { \
-+ int r = pthread_spin_lock (l); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_FAST_UNLOCK(l) \
-+ do \
-+ { \
-+ int r = pthread_spin_unlock (l); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_FAST_INIT(l) \
-+ do \
-+ { \
-+ int r = pthread_spin_init (l, PTHREAD_PROCESS_PRIVATE); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_FAST_DESTROY(l) \
-+ do \
-+ { \
-+ int r = pthread_spin_destroy (l); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
- #else
- #define PTHREAD_FAST_LOCK_T pthread_mutex_t
- #define PTHREAD_FAST_LOCK(l) pthread_mutex_lock(l)
-diff --git a/lib/CL/pocl_cl.h b/lib/CL/pocl_cl.h
-index 03a0e91e..4c399784 100644
---- a/lib/CL/pocl_cl.h
-+++ b/lib/CL/pocl_cl.h
-@@ -63,21 +63,56 @@ typedef pthread_mutex_t pocl_lock_t;
- /* Generic functionality for handling different types of
- OpenCL (host) objects. */
-
--#define POCL_LOCK(__LOCK__) pthread_mutex_lock (&(__LOCK__))
--#define POCL_UNLOCK(__LOCK__) pthread_mutex_unlock (&(__LOCK__))
--#define POCL_INIT_LOCK(__LOCK__) pthread_mutex_init (&(__LOCK__), NULL)
-+#define POCL_LOCK(__LOCK__) \
-+ do \
-+ { \
-+ int r = pthread_mutex_lock (&(__LOCK__)); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define POCL_UNLOCK(__LOCK__) \
-+ do \
-+ { \
-+ int r = pthread_mutex_unlock (&(__LOCK__)); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define POCL_INIT_LOCK(__LOCK__) \
-+ do \
-+ { \
-+ int r = pthread_mutex_init (&(__LOCK__), NULL); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
- /* We recycle OpenCL objects by not actually freeing them until the
- very end. Thus, the lock should not be destoryed at the refcount 0. */
--#define POCL_DESTROY_LOCK(__LOCK__) pthread_mutex_destroy (&(__LOCK__))
-+#define POCL_DESTROY_LOCK(__LOCK__) \
-+ do \
-+ { \
-+ int r = pthread_mutex_destroy (&(__LOCK__)); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-
--#define POCL_LOCK_OBJ(__OBJ__) POCL_LOCK((__OBJ__)->pocl_lock)
--#define POCL_UNLOCK_OBJ(__OBJ__) POCL_UNLOCK((__OBJ__)->pocl_lock)
-+#define POCL_LOCK_OBJ(__OBJ__) \
-+ do \
-+ { \
-+ POCL_LOCK ((__OBJ__)->pocl_lock); \
-+ assert ((__OBJ__)->pocl_refcount > 0); \
-+ } \
-+ while (0)
-+#define POCL_UNLOCK_OBJ(__OBJ__) \
-+ do \
-+ { \
-+ assert ((__OBJ__)->pocl_refcount >= 0); \
-+ POCL_UNLOCK ((__OBJ__)->pocl_lock); \
-+ } \
-+ while (0)
-
- #define POCL_RELEASE_OBJECT(__OBJ__, __NEW_REFCOUNT__) \
- do { \
- POCL_LOCK_OBJ (__OBJ__); \
- __NEW_REFCOUNT__ = --(__OBJ__)->pocl_refcount; \
-- assert((__OBJ__)->pocl_refcount >= 0); \
- POCL_UNLOCK_OBJ (__OBJ__); \
- } while (0)
-
---
-2.15.1
-
diff --git a/0006-Do-not-call-clFinish-on-CmdQueues-with-refcount-0.patch b/0006-Do-not-call-clFinish-on-CmdQueues-with-refcount-0.patch
deleted file mode 100644
index 2c49751..0000000
--- a/0006-Do-not-call-clFinish-on-CmdQueues-with-refcount-0.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 4e1bb5729dca7e294c70c1ed4b3959561d94acb4 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Tue, 9 Jan 2018 12:09:41 +0100
-Subject: [PATCH 06/14] Do not call clFinish on CmdQueues with refcount == 0
-
-This fails with the additional asserts from previous commit.
-Also it's just wrong :)
----
- lib/CL/clReleaseCommandQueue.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/CL/clReleaseCommandQueue.c b/lib/CL/clReleaseCommandQueue.c
-index 6feaa450..4e6920bd 100644
---- a/lib/CL/clReleaseCommandQueue.c
-+++ b/lib/CL/clReleaseCommandQueue.c
-@@ -39,8 +39,8 @@ POname(clReleaseCommandQueue)(cl_command_queue command_queue) CL_API_SUFFIX__VER
-
- if (new_refcount == 0)
- {
-+ assert (command_queue->command_count == 0);
- POCL_MSG_PRINT_REFCOUNTS ("Free Command Queue %p\n", command_queue);
-- POname(clFinish)(command_queue);
- if (command_queue->device->ops->free_queue)
- command_queue->device->ops->free_queue (command_queue);
- POCL_DESTROY_OBJECT (command_queue);
---
-2.15.1
-
diff --git a/0007-Fix-a-potential-data-race-in-pocl_memalign_alloc_glo.patch b/0007-Fix-a-potential-data-race-in-pocl_memalign_alloc_glo.patch
deleted file mode 100644
index ab8a56d..0000000
--- a/0007-Fix-a-potential-data-race-in-pocl_memalign_alloc_glo.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 638b0c3a37d599876b83faf42df79079512193a2 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Tue, 9 Jan 2018 13:57:47 +0100
-Subject: [PATCH 07/14] Fix a potential data race in
- pocl_memalign_alloc_global_mem()
-
----
- lib/CL/devices/common.c | 16 ++++++++++------
- 1 file changed, 10 insertions(+), 6 deletions(-)
-
-diff --git a/lib/CL/devices/common.c b/lib/CL/devices/common.c
-index 9895f1ae..f90d2321 100644
---- a/lib/CL/devices/common.c
-+++ b/lib/CL/devices/common.c
-@@ -1063,21 +1063,25 @@ void*
- pocl_memalign_alloc_global_mem(cl_device_id device, size_t align, size_t size)
- {
- pocl_global_mem_t *mem = device->global_memory;
-+ void *retval = NULL;
-+
-+ POCL_LOCK (mem->pocl_lock);
- if ((mem->total_alloc_limit - mem->currently_allocated) < size)
-- return NULL;
-+ goto ERROR;
-
-- void* ptr = pocl_memalign_alloc(align, size);
-- if (!ptr)
-- return NULL;
-+ retval = pocl_memalign_alloc (align, size);
-+ if (!retval)
-+ goto ERROR;
-
-- POCL_LOCK (mem->pocl_lock);
- mem->currently_allocated += size;
- if (mem->max_ever_allocated < mem->currently_allocated)
- mem->max_ever_allocated = mem->currently_allocated;
- assert(mem->currently_allocated <= mem->total_alloc_limit);
-+
-+ERROR:
- POCL_UNLOCK (mem->pocl_lock);
-
-- return ptr;
-+ return retval;
- }
-
- void
---
-2.15.1
-
diff --git a/0008-Fix-a-potential-data-race-in-pocl_create_event_sync.patch b/0008-Fix-a-potential-data-race-in-pocl_create_event_sync.patch
deleted file mode 100644
index 8a9e5ae..0000000
--- a/0008-Fix-a-potential-data-race-in-pocl_create_event_sync.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 59c55c4d58f8f4b60796efb6e53a498086b8f93e Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Tue, 9 Jan 2018 13:58:53 +0100
-Subject: [PATCH 08/14] Fix a potential data race in pocl_create_event_sync()
-
----
- lib/CL/pocl_util.c | 12 ++++--------
- 1 file changed, 4 insertions(+), 8 deletions(-)
-
-diff --git a/lib/CL/pocl_util.c b/lib/CL/pocl_util.c
-index 1c342924..20bc63b4 100644
---- a/lib/CL/pocl_util.c
-+++ b/lib/CL/pocl_util.c
-@@ -374,16 +374,12 @@ pocl_create_event_sync(cl_event waiting_event,
- if (notifier_event == NULL)
- return CL_SUCCESS;
-
-- assert(notifier_event->pocl_refcount != 0);
-+ pocl_lock_events_inorder (waiting_event, notifier_event);
-+
- POCL_MSG_PRINT_INFO("create event sync: waiting %d, notifier %d\n", waiting_event->id, notifier_event->id);
-- if (waiting_event == notifier_event)
-- {
-- printf("waiting id %d, notifier id = %d\n", waiting_event->id,
-- notifier_event->id);
-- assert(waiting_event != notifier_event);
-- }
-
-- pocl_lock_events_inorder (waiting_event, notifier_event);
-+ assert (notifier_event->pocl_refcount != 0);
-+ assert (waiting_event != notifier_event);
-
- LL_FOREACH (waiting_event->wait_list, wait_list_item)
- {
---
-2.15.1
-
diff --git a/0009-Fix-potential-race-in-clGetEventInfo.patch b/0009-Fix-potential-race-in-clGetEventInfo.patch
deleted file mode 100644
index b771ce1..0000000
--- a/0009-Fix-potential-race-in-clGetEventInfo.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 8b77a178d1e6fa657b6b4b66a67a63dd608ca702 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Tue, 9 Jan 2018 14:49:37 +0100
-Subject: [PATCH 09/14] Fix potential race in clGetEventInfo()
-
----
- lib/CL/clGetEventInfo.c | 17 ++++++++++++-----
- 1 file changed, 12 insertions(+), 5 deletions(-)
-
-diff --git a/lib/CL/clGetEventInfo.c b/lib/CL/clGetEventInfo.c
-index 5ab504b8..f36f6445 100644
---- a/lib/CL/clGetEventInfo.c
-+++ b/lib/CL/clGetEventInfo.c
-@@ -9,19 +9,26 @@ POname(clGetEventInfo)(cl_event event ,
- CL_API_SUFFIX__VERSION_1_0
- {
- POCL_RETURN_ERROR_COND((event == NULL), CL_INVALID_EVENT);
-+ POCL_LOCK_OBJ (event);
-+ cl_int s = event->status;
-+ cl_command_queue q = event->queue;
-+ cl_command_type t = event->command_type;
-+ cl_uint r = event->pocl_refcount;
-+ cl_context c = event->context;
-+ POCL_UNLOCK_OBJ (event);
-
- switch (param_name)
- {
- case CL_EVENT_COMMAND_EXECUTION_STATUS:
-- POCL_RETURN_GETINFO (cl_int, event->status);
-+ POCL_RETURN_GETINFO (cl_int, s);
- case CL_EVENT_COMMAND_QUEUE:
-- POCL_RETURN_GETINFO(cl_command_queue, event->queue);
-+ POCL_RETURN_GETINFO (cl_command_queue, q);
- case CL_EVENT_COMMAND_TYPE:
-- POCL_RETURN_GETINFO(cl_command_type, event->command_type);
-+ POCL_RETURN_GETINFO (cl_command_type, t);
- case CL_EVENT_REFERENCE_COUNT:
-- POCL_RETURN_GETINFO(cl_uint, event->pocl_refcount);
-+ POCL_RETURN_GETINFO (cl_uint, r);
- case CL_EVENT_CONTEXT:
-- POCL_RETURN_GETINFO(cl_context, event->context);
-+ POCL_RETURN_GETINFO (cl_context, c);
- default:
- break;
- }
---
-2.15.1
-
diff --git a/0010-Add-fsanitize-recover-address-to-ASAN-flags.patch b/0010-Add-fsanitize-recover-address-to-ASAN-flags.patch
deleted file mode 100644
index d6a5136..0000000
--- a/0010-Add-fsanitize-recover-address-to-ASAN-flags.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 16d2c90e7b046137d5a0386ffda9c111ebd3761c Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Tue, 9 Jan 2018 14:22:42 +0100
-Subject: [PATCH 10/14] Add "-fsanitize-recover=address" to ASAN flags
-
-When used with env variable ASAN_OPTIONS=halt_on_error=0, this
-should enable ASAN builds to continue after first error - unlike
-the default which is to exit after first error.
----
- lib/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
-index 57690091..2cd3291d 100644
---- a/lib/CMakeLists.txt
-+++ b/lib/CMakeLists.txt
-@@ -34,7 +34,7 @@ endif()
- set(SANITIZER_OPTIONS "")
-
- if(ENABLE_ASAN)
-- list(APPEND SANITIZER_OPTIONS "-fsanitize=address")
-+ list(APPEND SANITIZER_OPTIONS "-fsanitize=address" "-fsanitize-recover=address")
- list(APPEND SANITIZER_LIBS "asan")
- endif()
-
---
-2.15.1
-
diff --git a/0011-Fix-a-few-incorrect-missing-ifdef-cl_khr_fp64.patch b/0011-Fix-a-few-incorrect-missing-ifdef-cl_khr_fp64.patch
deleted file mode 100644
index 15e7a97..0000000
--- a/0011-Fix-a-few-incorrect-missing-ifdef-cl_khr_fp64.patch
+++ /dev/null
@@ -1,361 +0,0 @@
-From c7102b1d347639d12545f1f00d8c8b1aa076182e Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Thu, 11 Jan 2018 09:33:58 +0100
-Subject: [PATCH 11/14] Fix a few incorrect / missing #ifdef cl_khr_fp64
-
-Simplifies printf.c to not require math.h, which was conflicting
-with pocl-types.h in case cl_khr_fp64 was disabled.
-
-Also fixes CMake variable ENABLE_FP64 to properly disable
-doubles. Pocl now builds with -DENABLE_FP64=OFF on 32bit ARM.
----
- CMakeLists.txt | 4 +++-
- doc/sphinx/source/install.rst | 4 ++++
- lib/kernel/host/CMakeLists.txt | 14 +++++++----
- lib/kernel/printf.c | 48 ++++++++++++++++++++-----------------
- lib/kernel/sleef-pocl/expfrexp.cl | 9 ++++---
- lib/kernel/sleef/include/sleef_cl.h | 47 ++++++++++++++++++++++++++----------
- lib/kernel/sleef/libm/sleef_glue.cl | 2 ++
- 7 files changed, 83 insertions(+), 45 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 60d570b8..b89ccd80 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -751,6 +751,8 @@ if(ARM)
- else()
- option(ENABLE_FP64 "Enable FP64 on ARM32 - if you have at least VFP support for doubles, you can leave it ON" ON )
- endif()
-+else()
-+ set(ENABLE_FP64 ON CACHE INTERNAL "FP64, always on except ARM")
- endif()
-
- if(ARM32 OR (LLC_TRIPLE MATCHES "^arm"))
-@@ -800,7 +802,7 @@ if(X86)
- set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64 cl_khr_int64_base_atomics cl_khr_int64_extended_atomics")
- endif()
- # 32bit arm doesnt always support doubles
--if(ENABLE_FP64 AND (NOT LLVM_OLDER_THAN_4_0))
-+if(ARM AND ENABLE_FP64)
- set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64")
- endif()
-
-diff --git a/doc/sphinx/source/install.rst b/doc/sphinx/source/install.rst
-index ea983cef..9703668e 100644
---- a/doc/sphinx/source/install.rst
-+++ b/doc/sphinx/source/install.rst
-@@ -134,6 +134,10 @@ use ";" as separator (you'll have to escape it for bash).
- if you want to avoid ICD and build pocl directly as libOpenCL library.
- See also :ref:`linking-with-icd`
-
-+- ``-DENABLE_FP64`` - for ARM platform only. If your CPU doesn't support any
-+ doubles (VFP is enough), disable this. Defaults to OFF when LLVM is older
-+ than 4.0, otherwise defaults to ON.
-+
- - ``-DPOCL_INSTALL_<something>_DIR`` The equivalent of ``--bindir``,
- ``--sbindir`` etc fine-tuning of paths for autotools. See the beginning
- of toplevel CMakeLists.txt for all the variables.
-diff --git a/lib/kernel/host/CMakeLists.txt b/lib/kernel/host/CMakeLists.txt
-index c3657a06..7a08f2ee 100644
---- a/lib/kernel/host/CMakeLists.txt
-+++ b/lib/kernel/host/CMakeLists.txt
-@@ -118,13 +118,13 @@ function(compile_sleef VARIANT SLEEF_CONFIG SLEEF_CONFIG_NEW SLEEF_BC)
-
- set(EXTRA_FLAGS "-DDORENAME;-DPURE_C;-I${CMAKE_SOURCE_DIR}/lib/kernel/sleef/include")
-
-- if(ENABLE_CONFORMANCE)
-+# disabled - this code uses libm
- # compile_sleef_c_to_bc("c" "sleef/libm/sleef_builtin.c"
- # "${VARIANT}" BC_FILE_LIST ${EXTRA_FLAGS})
--# else()
-- # these may be faster than using libm, but not always precise
-- compile_sleef_c_to_bc("c" "sleef/libm/sleefsp.c"
-- "${VARIANT}" BC_FILE_LIST ${EXTRA_FLAGS})
-+ compile_sleef_c_to_bc("c" "sleef/libm/sleefsp.c"
-+ "${VARIANT}" BC_FILE_LIST ${EXTRA_FLAGS})
-+
-+ if(ENABLE_FP64)
- compile_sleef_c_to_bc("c" "sleef/libm/sleefdp.c"
- "${VARIANT}" BC_FILE_LIST ${EXTRA_FLAGS})
- endif()
-@@ -135,6 +135,10 @@ function(compile_sleef VARIANT SLEEF_CONFIG SLEEF_CONFIG_NEW SLEEF_BC)
- file(READ "${CMAKE_SOURCE_DIR}/lib/kernel/sleef/test.c" TEST_SRC)
- file(READ "${CMAKE_SOURCE_DIR}/lib/kernel/sleef/fma_test.c" FMA_TEST_SRC)
-
-+ if(ENABLE_FP64)
-+ set(STR "#define SLEEF_DOUBLE_AVAILABLE\n")
-+ file(APPEND "${SLEEF_CONFIG_NEW}" "${STR}")
-+ endif()
- # current SLEEF code does not have code for
- # ARM32 NEON double vectors (if they even exist)
- if(NOT ARM32)
-diff --git a/lib/kernel/printf.c b/lib/kernel/printf.c
-index bd522fb0..37c7d6d6 100644
---- a/lib/kernel/printf.c
-+++ b/lib/kernel/printf.c
-@@ -25,10 +25,16 @@
- #pragma clang diagnostic push
- #pragma clang diagnostic ignored "-Wformat-security"
-
--#include <limits.h>
-+#ifdef cl_khr_fp64
-+#define LARGEST_FLOAT_TYPE double
-+#define NAN __builtin_nan("1")
-+#else
-+#define LARGEST_FLOAT_TYPE float
-+#define NAN __builtin_nanf("1")
-+#endif
-+
- #include <stdarg.h>
--#include <stdbool.h>
--#include <math.h>
-+#include <limits.h>
-
- // We implement the OpenCL printf by calling the C99 printf. This is
- // not very efficient, but is easy to implement.
-@@ -48,15 +54,13 @@ int snprintf(OCL_C_AS char* restrict str, size_t size,
-
- // Conversion flags
- typedef struct {
-- bool left;
-- bool plus;
-- bool space;
-- bool alt;
-- bool zero;
-+ int left:1;
-+ int plus:1;
-+ int space:1;
-+ int alt:1;
-+ int zero:1;
- } flags_t;
-
--
--
- // Helper routines to output integers
-
- #define INT_CONV_char "hh"
-@@ -139,9 +143,9 @@ float __attribute__((overloadable)) vload_half(size_t offset,
- DEBUG_PRINTF(("[printf:floats:d=%d]\n", d)); \
- if (d != 0) printf(comma); \
- WIDTH val = (FLOAT_GET_##WIDTH((OCL_C_AS const WIDTH*)vals+d)); \
-- if (isnan (val)) \
-+ if (val != val) \
- val = NAN; \
-- printf(outfmt, (double)val); \
-+ printf (outfmt, (LARGEST_FLOAT_TYPE)val); \
- } \
- DEBUG_PRINTF(("[printf:floats:done]\n")); \
- }
-@@ -249,18 +253,18 @@ int __cl_printf(const OCL_CONSTANT_AS char* restrict format, ...)
- DEBUG_PRINTF(("[printf:arg]\n"));
- // Flags
- flags_t flags;
-- flags.left = false;
-- flags.plus = false;
-- flags.space = false;
-- flags.alt = false;
-- flags.zero = false;
-+ flags.left = 0;
-+ flags.plus = 0;
-+ flags.space = 0;
-+ flags.alt = 0;
-+ flags.zero = 0;
- for (;;) {
- switch (ch) {
-- case '-': if (flags.left) goto error; flags.left = true; break;
-- case '+': if (flags.plus) goto error; flags.plus = true; break;
-- case ' ': if (flags.space) goto error; flags.space = true; break;
-- case '#': if (flags.alt) goto error; flags.alt = true; break;
-- case '0': if (flags.zero) goto error; flags.zero = true; break;
-+ case '-': if (flags.left) goto error; flags.left = 1; break;
-+ case '+': if (flags.plus) goto error; flags.plus = 1; break;
-+ case ' ': if (flags.space) goto error; flags.space = 1; break;
-+ case '#': if (flags.alt) goto error; flags.alt = 1; break;
-+ case '0': if (flags.zero) goto error; flags.zero = 1; break;
- default: goto flags_done;
- }
- ch = *++format;
-diff --git a/lib/kernel/sleef-pocl/expfrexp.cl b/lib/kernel/sleef-pocl/expfrexp.cl
-index 7c3c595b..60d5f2aa 100644
---- a/lib/kernel/sleef-pocl/expfrexp.cl
-+++ b/lib/kernel/sleef-pocl/expfrexp.cl
-@@ -1,10 +1,5 @@
- #include "sleef_cl.h"
-
--_CL_ALWAYSINLINE long2 Sleef_expfrexpd2_long (double2 x);
--_CL_ALWAYSINLINE long4 Sleef_expfrexpd4_long (double4 x);
--_CL_ALWAYSINLINE long8 Sleef_expfrexpd8_long (double8 x);
--
--
- _CL_OVERLOADABLE
- int
- _cl_expfrexp (float x)
-@@ -91,6 +86,10 @@ _cl_expfrexp (float16 x)
-
- #ifdef cl_khr_fp64
-
-+_CL_ALWAYSINLINE long2 Sleef_expfrexpd2_long (double2 x);
-+_CL_ALWAYSINLINE long4 Sleef_expfrexpd4_long (double4 x);
-+_CL_ALWAYSINLINE long8 Sleef_expfrexpd8_long (double8 x);
-+
- _CL_OVERLOADABLE
- long
- _cl_expfrexp (double x)
-diff --git a/lib/kernel/sleef/include/sleef_cl.h b/lib/kernel/sleef/include/sleef_cl.h
-index 89d2b3aa..6f436271 100644
---- a/lib/kernel/sleef/include/sleef_cl.h
-+++ b/lib/kernel/sleef/include/sleef_cl.h
-@@ -59,14 +59,21 @@ typedef float float4 __attribute__ ((__ext_vector_type__ (4)));
- typedef float float8 __attribute__ ((__ext_vector_type__ (8)));
- typedef float float16 __attribute__ ((__ext_vector_type__ (16)));
-
-+#ifdef SLEEF_DOUBLE_AVAILABLE
- typedef double double2 __attribute__ ((__ext_vector_type__ (2)));
- typedef double double3 __attribute__ ((__ext_vector_type__ (3)));
- typedef double double4 __attribute__ ((__ext_vector_type__ (4)));
- typedef double double8 __attribute__ ((__ext_vector_type__ (8)));
- typedef double double16 __attribute__ ((__ext_vector_type__ (16)));
-
-+#define cl_khr_fp64
-+
-+#endif
-+
- #endif
-
-+#ifdef cl_khr_fp64
-+
- #ifndef Sleef_double2_DEFINED
- #define Sleef_double2_DEFINED
- typedef struct
-@@ -75,14 +82,6 @@ typedef struct
- } Sleef_double2;
- #endif
-
--#ifndef Sleef_float2_DEFINED
--#define Sleef_float2_DEFINED
--typedef struct
--{
-- float x, y;
--} Sleef_float2;
--#endif
--
- double Sleef_sin_u35 (double);
- double Sleef_cos_u35 (double);
- Sleef_double2 Sleef_sincos_u35 (double);
-@@ -147,6 +146,19 @@ double Sleef_tgamma_u10 (double);
- double Sleef_erf_u10 (double);
- double Sleef_erfc_u15 (double);
-
-+double Sleef_pown_u10 (double, int);
-+double Sleef_powr_u10 (double, double);
-+
-+#endif
-+
-+#ifndef Sleef_float2_DEFINED
-+#define Sleef_float2_DEFINED
-+typedef struct
-+{
-+ float x, y;
-+} Sleef_float2;
-+#endif
-+
- float Sleef_sinf_u35 (float);
- float Sleef_cosf_u35 (float);
- Sleef_float2 Sleef_sincosf_u35 (float);
-@@ -212,9 +224,7 @@ float Sleef_tgammaf_u10 (float);
- float Sleef_erff_u10 (float);
- float Sleef_erfcf_u15 (float);
-
--double Sleef_pown_u10 (double, int);
- float Sleef_pownf_u10 (float, int);
--double Sleef_powr_u10 (double, double);
- float Sleef_powrf_u10 (float, float);
-
-
-@@ -222,6 +232,8 @@ float Sleef_powrf_u10 (float, float);
-
- #ifdef SLEEF_VEC_512_AVAILABLE
-
-+#ifdef cl_khr_fp64
-+
- #ifndef Sleef_double8_2_DEFINED
- typedef struct
- {
-@@ -295,6 +307,8 @@ double8 Sleef_tgammad8_u10 (double8);
- double8 Sleef_erfd8_u10 (double8);
- double8 Sleef_erfcd8_u15 (double8);
-
-+#endif
-+
- #ifndef Sleef_float16_2_DEFINED
- typedef struct
- {
-@@ -380,6 +394,8 @@ float16 Sleef_powrf16_u10 (float16, float16);
-
- #ifdef SLEEF_VEC_256_AVAILABLE
-
-+#ifdef cl_khr_fp64
-+
- #ifndef Sleef_double4_2_DEFINED
- typedef struct
- {
-@@ -453,6 +469,8 @@ double4 Sleef_tgammad4_u10 (double4);
- double4 Sleef_erfd4_u10 (double4);
- double4 Sleef_erfcd4_u15 (double4);
-
-+#endif
-+
- #ifndef Sleef_float8_2_DEFINED
- typedef struct
- {
-@@ -535,6 +553,8 @@ float8 Sleef_powrf8_u10 (float8, float8);
-
- #ifdef SLEEF_VEC_128_AVAILABLE
-
-+#ifdef cl_khr_fp64
-+
- #ifndef Sleef_double2_2_DEFINED
- typedef struct
- {
-@@ -608,6 +628,11 @@ double2 Sleef_tgammad2_u10 (double2);
- double2 Sleef_erfd2_u10 (double2);
- double2 Sleef_erfcd2_u15 (double2);
-
-+double2 Sleef_pownd2_u10 (double2, int2);
-+double2 Sleef_powrd2_u10 (double2, double2);
-+
-+#endif
-+
- #ifndef Sleef_float4_2_DEFINED
- typedef struct
- {
-@@ -681,9 +706,7 @@ float4 Sleef_tgammaf4_u10 (float4);
- float4 Sleef_erff4_u10 (float4);
- float4 Sleef_erfcf4_u15 (float4);
-
--double2 Sleef_pownd2_u10 (double2, int2);
- float4 Sleef_pownf4_u10 (float4, int4);
--double2 Sleef_powrd2_u10 (double2, double2);
- float4 Sleef_powrf4_u10 (float4, float4);
-
- #endif
-diff --git a/lib/kernel/sleef/libm/sleef_glue.cl b/lib/kernel/sleef/libm/sleef_glue.cl
-index ad98b43e..cd4bfa34 100644
---- a/lib/kernel/sleef/libm/sleef_glue.cl
-+++ b/lib/kernel/sleef/libm/sleef_glue.cl
-@@ -23,6 +23,7 @@
-
- #include "sleef_cl.h"
-
-+#ifdef cl_khr_fp64
- #ifdef SLEEF_VEC_128_AVAILABLE
-
- _CL_ALWAYSINLINE double2 Sleef_ldexpd2_long (double2 x, long2 k);
-@@ -76,3 +77,4 @@ Sleef_expfrexpd8 (double8 x)
- }
-
- #endif
-+#endif
---
-2.15.1
-
diff --git a/0012-Mark-test_clSetEventCallback-as-WILL_FAIL-when-TSan-.patch b/0012-Mark-test_clSetEventCallback-as-WILL_FAIL-when-TSan-.patch
deleted file mode 100644
index e6c8dfb..0000000
--- a/0012-Mark-test_clSetEventCallback-as-WILL_FAIL-when-TSan-.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 0029cab0c15179cb8a46b419104227c2c1d877a8 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Thu, 11 Jan 2018 12:48:19 +0100
-Subject: [PATCH 12/14] Mark test_clSetEventCallback as WILL_FAIL when TSan is
- enabled
-
-due to how the test is written, TSan will inevitably complain.
----
- tests/runtime/CMakeLists.txt | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/tests/runtime/CMakeLists.txt b/tests/runtime/CMakeLists.txt
-index c68fe327..a0409da9 100644
---- a/tests/runtime/CMakeLists.txt
-+++ b/tests/runtime/CMakeLists.txt
-@@ -126,6 +126,13 @@ set_tests_properties("runtime/test_kernel_cache_includes"
- PROPERTIES PASS_REGULAR_EXPRESSION
- "function 1.*first include.*function 2.*second include")
-
-+# event callback test changes shared variables in the callbacks
-+# doesn't need fixing in test, but TSan inevitably complains
-+if(ENABLE_TSAN)
-+ set_tests_properties("runtime/clSetEventCallback"
-+ PROPERTIES WILL_FAIL 1)
-+endif()
-+
- # Label tests that work with CUDA backend
- set_property(TEST
- "runtime/clGetDeviceInfo"
---
-2.15.1
-
diff --git a/0013-Fix-a-compilation-warning.patch b/0013-Fix-a-compilation-warning.patch
deleted file mode 100644
index 13b1491..0000000
--- a/0013-Fix-a-compilation-warning.patch
+++ /dev/null
@@ -1,234 +0,0 @@
-From 84029fdf7dde331a45632272854922db0da8e3ad Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Thu, 11 Jan 2018 12:50:15 +0100
-Subject: [PATCH 13/14] Fix a compilation warning
-
-(float)(double literal) complains when cl_khr_fp64 is disabled
----
- lib/kernel/convert_type.cl | 48 +++++++++++++++++++++++-----------------------
- lib/kernel/convert_type.py | 4 ++--
- 2 files changed, 26 insertions(+), 26 deletions(-)
-
-diff --git a/lib/kernel/convert_type.cl b/lib/kernel/convert_type.cl
-index 8da102a3..11aca55c 100644
---- a/lib/kernel/convert_type.cl
-+++ b/lib/kernel/convert_type.cl
-@@ -38567,7 +38567,7 @@ float convert_float_rtz(long x)
- ulong abs_x = abs(x);
- ulong abs_y = abs(y);
- float res = select(r, nextafter(r, sign(r) * (float)-INFINITY), convert_int(abs_y > abs_x));
-- return select(res, (float)(0x1.fffffep+62), convert_int(x >= 0x7fffffffffffffffL));
-+ return select(res, (float)(0x1.fffffep+62f), convert_int(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38597,7 +38597,7 @@ float convert_float_rtn(long x)
- float r = convert_float(x);
- long y = convert_long_sat(r);
- float res = select(r, nextafter(r, (float)-INFINITY), convert_int(y > x));
-- return select(res, (float)(0x1.fffffep+62), convert_int(x >= 0x7fffffffffffffffL));
-+ return select(res, (float)(0x1.fffffep+62f), convert_int(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38610,7 +38610,7 @@ float2 convert_float2_rtz(long2 x)
- ulong2 abs_x = abs(x);
- ulong2 abs_y = abs(y);
- float2 res = select(r, nextafter(r, sign(r) * (float2)-INFINITY), convert_int2(abs_y > abs_x));
-- return select(res, (float2)(0x1.fffffep+62), convert_int2(x >= 0x7fffffffffffffffL));
-+ return select(res, (float2)(0x1.fffffep+62f), convert_int2(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38640,7 +38640,7 @@ float2 convert_float2_rtn(long2 x)
- float2 r = convert_float2(x);
- long2 y = convert_long2_sat(r);
- float2 res = select(r, nextafter(r, (float2)-INFINITY), convert_int2(y > x));
-- return select(res, (float2)(0x1.fffffep+62), convert_int2(x >= 0x7fffffffffffffffL));
-+ return select(res, (float2)(0x1.fffffep+62f), convert_int2(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38653,7 +38653,7 @@ float3 convert_float3_rtz(long3 x)
- ulong3 abs_x = abs(x);
- ulong3 abs_y = abs(y);
- float3 res = select(r, nextafter(r, sign(r) * (float3)-INFINITY), convert_int3(abs_y > abs_x));
-- return select(res, (float3)(0x1.fffffep+62), convert_int3(x >= 0x7fffffffffffffffL));
-+ return select(res, (float3)(0x1.fffffep+62f), convert_int3(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38683,7 +38683,7 @@ float3 convert_float3_rtn(long3 x)
- float3 r = convert_float3(x);
- long3 y = convert_long3_sat(r);
- float3 res = select(r, nextafter(r, (float3)-INFINITY), convert_int3(y > x));
-- return select(res, (float3)(0x1.fffffep+62), convert_int3(x >= 0x7fffffffffffffffL));
-+ return select(res, (float3)(0x1.fffffep+62f), convert_int3(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38696,7 +38696,7 @@ float4 convert_float4_rtz(long4 x)
- ulong4 abs_x = abs(x);
- ulong4 abs_y = abs(y);
- float4 res = select(r, nextafter(r, sign(r) * (float4)-INFINITY), convert_int4(abs_y > abs_x));
-- return select(res, (float4)(0x1.fffffep+62), convert_int4(x >= 0x7fffffffffffffffL));
-+ return select(res, (float4)(0x1.fffffep+62f), convert_int4(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38726,7 +38726,7 @@ float4 convert_float4_rtn(long4 x)
- float4 r = convert_float4(x);
- long4 y = convert_long4_sat(r);
- float4 res = select(r, nextafter(r, (float4)-INFINITY), convert_int4(y > x));
-- return select(res, (float4)(0x1.fffffep+62), convert_int4(x >= 0x7fffffffffffffffL));
-+ return select(res, (float4)(0x1.fffffep+62f), convert_int4(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38739,7 +38739,7 @@ float8 convert_float8_rtz(long8 x)
- ulong8 abs_x = abs(x);
- ulong8 abs_y = abs(y);
- float8 res = select(r, nextafter(r, sign(r) * (float8)-INFINITY), convert_int8(abs_y > abs_x));
-- return select(res, (float8)(0x1.fffffep+62), convert_int8(x >= 0x7fffffffffffffffL));
-+ return select(res, (float8)(0x1.fffffep+62f), convert_int8(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38769,7 +38769,7 @@ float8 convert_float8_rtn(long8 x)
- float8 r = convert_float8(x);
- long8 y = convert_long8_sat(r);
- float8 res = select(r, nextafter(r, (float8)-INFINITY), convert_int8(y > x));
-- return select(res, (float8)(0x1.fffffep+62), convert_int8(x >= 0x7fffffffffffffffL));
-+ return select(res, (float8)(0x1.fffffep+62f), convert_int8(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38782,7 +38782,7 @@ float16 convert_float16_rtz(long16 x)
- ulong16 abs_x = abs(x);
- ulong16 abs_y = abs(y);
- float16 res = select(r, nextafter(r, sign(r) * (float16)-INFINITY), convert_int16(abs_y > abs_x));
-- return select(res, (float16)(0x1.fffffep+62), convert_int16(x >= 0x7fffffffffffffffL));
-+ return select(res, (float16)(0x1.fffffep+62f), convert_int16(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38812,7 +38812,7 @@ float16 convert_float16_rtn(long16 x)
- float16 r = convert_float16(x);
- long16 y = convert_long16_sat(r);
- float16 res = select(r, nextafter(r, (float16)-INFINITY), convert_int16(y > x));
-- return select(res, (float16)(0x1.fffffep+62), convert_int16(x >= 0x7fffffffffffffffL));
-+ return select(res, (float16)(0x1.fffffep+62f), convert_int16(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -39083,7 +39083,7 @@ float convert_float_rtz(ulong x)
- ulong abs_x = abs(x);
- ulong abs_y = abs(y);
- float res = select(r, nextafter(r, sign(r) * (float)-INFINITY), convert_int(abs_y > abs_x));
-- return select(res, (float)(0x1.fffffep+63), convert_int(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float)(0x1.fffffep+63f), convert_int(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39113,7 +39113,7 @@ float convert_float_rtn(ulong x)
- float r = convert_float(x);
- ulong y = convert_ulong_sat(r);
- float res = select(r, nextafter(r, (float)-INFINITY), convert_int(y > x));
-- return select(res, (float)(0x1.fffffep+63), convert_int(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float)(0x1.fffffep+63f), convert_int(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39126,7 +39126,7 @@ float2 convert_float2_rtz(ulong2 x)
- ulong2 abs_x = abs(x);
- ulong2 abs_y = abs(y);
- float2 res = select(r, nextafter(r, sign(r) * (float2)-INFINITY), convert_int2(abs_y > abs_x));
-- return select(res, (float2)(0x1.fffffep+63), convert_int2(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float2)(0x1.fffffep+63f), convert_int2(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39156,7 +39156,7 @@ float2 convert_float2_rtn(ulong2 x)
- float2 r = convert_float2(x);
- ulong2 y = convert_ulong2_sat(r);
- float2 res = select(r, nextafter(r, (float2)-INFINITY), convert_int2(y > x));
-- return select(res, (float2)(0x1.fffffep+63), convert_int2(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float2)(0x1.fffffep+63f), convert_int2(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39169,7 +39169,7 @@ float3 convert_float3_rtz(ulong3 x)
- ulong3 abs_x = abs(x);
- ulong3 abs_y = abs(y);
- float3 res = select(r, nextafter(r, sign(r) * (float3)-INFINITY), convert_int3(abs_y > abs_x));
-- return select(res, (float3)(0x1.fffffep+63), convert_int3(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float3)(0x1.fffffep+63f), convert_int3(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39199,7 +39199,7 @@ float3 convert_float3_rtn(ulong3 x)
- float3 r = convert_float3(x);
- ulong3 y = convert_ulong3_sat(r);
- float3 res = select(r, nextafter(r, (float3)-INFINITY), convert_int3(y > x));
-- return select(res, (float3)(0x1.fffffep+63), convert_int3(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float3)(0x1.fffffep+63f), convert_int3(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39212,7 +39212,7 @@ float4 convert_float4_rtz(ulong4 x)
- ulong4 abs_x = abs(x);
- ulong4 abs_y = abs(y);
- float4 res = select(r, nextafter(r, sign(r) * (float4)-INFINITY), convert_int4(abs_y > abs_x));
-- return select(res, (float4)(0x1.fffffep+63), convert_int4(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float4)(0x1.fffffep+63f), convert_int4(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39242,7 +39242,7 @@ float4 convert_float4_rtn(ulong4 x)
- float4 r = convert_float4(x);
- ulong4 y = convert_ulong4_sat(r);
- float4 res = select(r, nextafter(r, (float4)-INFINITY), convert_int4(y > x));
-- return select(res, (float4)(0x1.fffffep+63), convert_int4(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float4)(0x1.fffffep+63f), convert_int4(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39255,7 +39255,7 @@ float8 convert_float8_rtz(ulong8 x)
- ulong8 abs_x = abs(x);
- ulong8 abs_y = abs(y);
- float8 res = select(r, nextafter(r, sign(r) * (float8)-INFINITY), convert_int8(abs_y > abs_x));
-- return select(res, (float8)(0x1.fffffep+63), convert_int8(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float8)(0x1.fffffep+63f), convert_int8(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39285,7 +39285,7 @@ float8 convert_float8_rtn(ulong8 x)
- float8 r = convert_float8(x);
- ulong8 y = convert_ulong8_sat(r);
- float8 res = select(r, nextafter(r, (float8)-INFINITY), convert_int8(y > x));
-- return select(res, (float8)(0x1.fffffep+63), convert_int8(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float8)(0x1.fffffep+63f), convert_int8(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39298,7 +39298,7 @@ float16 convert_float16_rtz(ulong16 x)
- ulong16 abs_x = abs(x);
- ulong16 abs_y = abs(y);
- float16 res = select(r, nextafter(r, sign(r) * (float16)-INFINITY), convert_int16(abs_y > abs_x));
-- return select(res, (float16)(0x1.fffffep+63), convert_int16(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float16)(0x1.fffffep+63f), convert_int16(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39328,7 +39328,7 @@ float16 convert_float16_rtn(ulong16 x)
- float16 r = convert_float16(x);
- ulong16 y = convert_ulong16_sat(r);
- float16 res = select(r, nextafter(r, (float16)-INFINITY), convert_int16(y > x));
-- return select(res, (float16)(0x1.fffffep+63), convert_int16(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float16)(0x1.fffffep+63f), convert_int16(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
---
-2.15.1
-
diff --git a/0014-Fix-a-data-race-in-pocl_runtime_config.c.patch b/0014-Fix-a-data-race-in-pocl_runtime_config.c.patch
deleted file mode 100644
index 259637f..0000000
--- a/0014-Fix-a-data-race-in-pocl_runtime_config.c.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From da7d8cee0fffeebe5490d0a9770e760af0197909 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Thu, 11 Jan 2018 13:17:46 +0100
-Subject: [PATCH 14/14] Fix a data race in pocl_runtime_config.c
-
-LL_PREPEND(head, item) changes the head (env_cache) on every call,
-which conflicts with other threads calling find_env() with env_cache.
----
- lib/CL/pocl_runtime_config.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/CL/pocl_runtime_config.c b/lib/CL/pocl_runtime_config.c
-index d84ea263..c7000068 100644
---- a/lib/CL/pocl_runtime_config.c
-+++ b/lib/CL/pocl_runtime_config.c
-@@ -62,7 +62,7 @@ static env_data* find_env (env_data* cache, const char* key)
- ed->env = strdup (key);
- ed->value = strdup (value);
- ed->next = NULL;
-- LL_PREPEND(env_cache, ed);
-+ LL_APPEND(env_cache, ed);
- POCL_UNLOCK(lock);
- return ed;
- }
---
-2.15.1
-
diff --git a/pocl.spec b/pocl.spec
index d386314..4e638f2 100644
--- a/pocl.spec
+++ b/pocl.spec
@@ -1,9 +1,10 @@
%global sover 2
+%global with_tests 1
Summary: Portable Computing Language - an OpenCL implementation
Name: pocl
Version: 1.1
-Release: 1%{?dist}
+Release: 2%{?dist}
# The whole code is under MIT
# except include/utlist.h which is under BSD (and unbundled) and
@@ -15,11 +16,9 @@ Source0: https://github.com/pocl/pocl/archive/v%{version}.tar.gz
# FIXME: link
Patch1001: 0001-wrap-more-stuff-for-64-bit-atomics.patch
-# aarch64 seems to have a build system problem that makes it pass -march=(unknown).
-# ppc64 builds fine, but: 41% tests passed, 64 tests failed out of 108.
-# ppc64le fails with compilation errors.
-# s390(x) clang build still seems to be suffering from bug 1309055.
-ExcludeArch: aarch64 ppc64 ppc64le s390 s390x
+# aarch64 builds fine, but: 15% tests passed, 103 tests failed out of 121
+# ppc64/ppc64le/s390x builds fine, but: 15% tests passed, 102 tests failed out of 120
+ExclusiveArch: %{arm} %{x86} x86_64
BuildRequires: cmake
BuildRequires: clang clang-devel
@@ -101,6 +100,7 @@ popd
#ln -vs %%{_includedir}/vecmath %%{buildroot}/%%{_libdir}/pocl/vecmath
# <visit0r> but you need to run the .py to generate the files under the pocl dir
+%if 0%{?with_tests}
%check
pushd %{_target_platform}
# https://github.com/pocl/pocl/issues/602
@@ -112,6 +112,7 @@ pushd %{_target_platform}
;
%endif
popd
+%endif
%ldconfig_scriptlets
@@ -128,6 +129,9 @@ popd
%{_libdir}/pkgconfig/%{name}.pc
%changelog
+* Mon Mar 26 2018 Peter Robinson <pbrobinson(a)fedoraproject.org> 1.1-2
+- Minor spec updates/cleanups
+
* Fri Mar 23 2018 Tom Stellard <tstellar(a)redhat.com> - 1.1-1
- Update to 1.1
6 years, 1 month
Architecture specific change in rpms/golang-github-davecgh-go-spew.git
by githook-noreply@fedoraproject.org
The package rpms/golang-github-davecgh-go-spew.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/golang-github-davecgh-go-spew.git....
Change:
-ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
Thanks.
Full change:
============
commit 355f17e9cf36a7d48e7e85c22972f095cba33589
Author: Jan Chaloupka <jchaloup(a)redhat.com>
Date: Tue Mar 27 15:04:18 2018 +0200
Add gcommit so it can be read by automated tooling
diff --git a/.gitignore b/.gitignore
index 60ddd8b..e60cb14 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1 @@
-/go-spew-6d21280.tar.gz
/go-spew-1.1.0.tar.gz
diff --git a/golang-github-davecgh-go-spew.spec b/golang-github-davecgh-go-spew.spec
index 3af0e88..00e3d6c 100644
--- a/golang-github-davecgh-go-spew.spec
+++ b/golang-github-davecgh-go-spew.spec
@@ -3,6 +3,7 @@
# http://github.com/davecgh/go-spew
%global goipath github.com/davecgh/go-spew
+%global gcommit 346938d642f2ec3594ed81d874461961cd0faa76
Version: 1.1.0
%global common_description %{expand:
@@ -36,7 +37,7 @@ building other packages which use import path with
%prep
-%forgeautosetup
+%gosetup
%install
commit f741f89db4b08d51f1ed4d81e149c0ab5c2ae0b6
Author: Robert-André Mauchin <zebob.m(a)gmail.com>
Date: Mon Mar 26 23:49:20 2018 +0200
Update to upstream v1.1.0
Update to new guidelines for Go
diff --git a/.gitignore b/.gitignore
index 331a046..60ddd8b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
/go-spew-6d21280.tar.gz
+/go-spew-1.1.0.tar.gz
diff --git a/golang-github-davecgh-go-spew.spec b/golang-github-davecgh-go-spew.spec
index da16983..3af0e88 100644
--- a/golang-github-davecgh-go-spew.spec
+++ b/golang-github-davecgh-go-spew.spec
@@ -1,50 +1,64 @@
+# Run tests in check section
+%bcond_without check
+
# http://github.com/davecgh/go-spew
-%global provider_prefix github.com/davecgh/go-spew
-%global gobaseipath %{provider_prefix}
-%global commit 6d212800a42e8ab5c146b8ace3490ee17e5225f9
-%global commitdate 20161107
+%global goipath github.com/davecgh/go-spew
+Version: 1.1.0
+
+%global common_description %{expand:
+Go-spew implements a deep pretty printer for Go data structures to aid in
+debugging. A comprehensive suite of tests with 100% test coverage is
+provided to ensure proper functionality.}
-%gocraftmeta -i
+%gometa
Name: %{goname}
-Version: 0
-Release: 0.16.%{commitdate}git%{shortcommit}%{?dist}
+Release: 1%{?dist}
Summary: Deep pretty printer for Go data structures to aid in debug
License: ISC
URL: %{gourl}
Source0: %{gosource}
%description
-%{summary}
+%{common_description}
+
%package devel
Summary: %{summary}
BuildArch: noarch
%description devel
-%{summary}
+%{common_description}
This package contains library source intended for
building other packages which use import path with
-%{gobaseipath} prefix.
+%{goipath} prefix.
+
%prep
-%gosetup
+%forgeautosetup
+
%install
%goinstall
+
+%if %{with check}
%check
%gochecks
+%endif
-#define license tag if not already defined
-%{!?_licensedir:%global license %doc}
%files devel -f devel.file-list
%license LICENSE
%doc README.md
+
%changelog
+* Mon Mar 26 2018 Robert-André Mauchin <zebob.m(a)gmail.com> - 1.1.0-1
+- Update to upstream v1.1.0
+- Update to new guidelines for Go
+
* Wed Feb 28 2018 Jan Chaloupka <jchaloup(a)redhat.com> - 0-0.16.20161107git6d21280
- Autogenerate some parts using the new macros
diff --git a/sources b/sources
index ec52aba..61ada41 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (go-spew-6d21280.tar.gz) = 5b49a9e6df2cc906f49f4448caf3ea17b654be9f76dba9a72b1c6852fdeac6bdabfd4a59f8f83fb09fa2d50be606f807da563b3a4c31e4cfb491f348b301acc3
+SHA512 (go-spew-1.1.0.tar.gz) = 20c9f0550a2d5030265dde8ad3ed009ce5c6490d010f184ad3f656b8fe5eb6e5c6abc9594408240aa731c0977afd9739d293490e6164cc0ce156652611b05b39
commit 808f3317479546b0020c6ef5985b1ead13fc44a9
Author: Jan Chaloupka <jchaloup(a)redhat.com>
Date: Wed Feb 28 14:02:24 2018 +0100
Autogenerate some parts using the new macros
diff --git a/golang-github-davecgh-go-spew.spec b/golang-github-davecgh-go-spew.spec
index 1494d65..da16983 100644
--- a/golang-github-davecgh-go-spew.spec
+++ b/golang-github-davecgh-go-spew.spec
@@ -1,167 +1,53 @@
-# If any of the following macros should be set otherwise,
-# you can wrap any of them with the following conditions:
-# - %%if 0%%{centos} == 7
-# - %%if 0%%{?rhel} == 7
-# - %%if 0%%{?fedora} == 23
-# Or just test for particular distribution:
-# - %%if 0%%{centos}
-# - %%if 0%%{?rhel}
-# - %%if 0%%{?fedora}
-#
-# Be aware, on centos, both %%rhel and %%centos are set. If you want to test
-# rhel specific macros, you can use %%if 0%%{?rhel} && 0%%{?centos} == 0 condition.
-# (Don't forget to replace double percentage symbol with single one in order to apply a condition)
-
-# Generate devel rpm
-%global with_devel 1
-# Build project from bundled dependencies
-%global with_bundled 0
-# Build with debug info rpm
-%global with_debug 0
-# Run tests in check section
-# Failing tests due to newer version of gc
-%global with_check 0
-# Generate unit-test rpm
-%global with_unit_test 1
-
-%if 0%{?with_debug}
-%global _dwz_low_mem_die_limit 0
-%else
-%global debug_package %{nil}
-%endif
-
-%global provider github
-%global provider_tld com
-%global project davecgh
-%global repo go-spew
-# https://github.com/davecgh/go-spew
-%global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo}
-%global import_path %{provider_prefix}
+# http://github.com/davecgh/go-spew
+%global provider_prefix github.com/davecgh/go-spew
+%global gobaseipath %{provider_prefix}
%global commit 6d212800a42e8ab5c146b8ace3490ee17e5225f9
-%global shortcommit %(c=%{commit}; echo ${c:0:7})
+%global commitdate 20161107
-Name: golang-%{provider}-%{project}-%{repo}
+%gocraftmeta -i
+
+Name: %{goname}
Version: 0
-Release: 0.15.git%{shortcommit}%{?dist}
+Release: 0.16.%{commitdate}git%{shortcommit}%{?dist}
Summary: Deep pretty printer for Go data structures to aid in debug
License: ISC
-URL: https://%{provider_prefix}
-Source0: https://%{provider_prefix}/archive/%{commit}/%{repo}-%{shortcommit}.tar.gz
-
-# e.g. el6 has ppc64 arch without gcc-go, so EA tag is required
-ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
-# If go_compiler is not set to 1, there is no virtual provide. Use golang instead.
-BuildRequires: %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang}
+URL: %{gourl}
+Source0: %{gosource}
%description
%{summary}
-%if 0%{?with_devel}
%package devel
Summary: %{summary}
BuildArch: noarch
-%if 0%{?with_check}
-%endif
-
-
-Provides: golang(%{import_path}/spew) = %{version}-%{release}
-Provides: golang(%{import_path}/spew/testdata) = %{version}-%{release}
-
%description devel
%{summary}
This package contains library source intended for
building other packages which use import path with
-%{import_path} prefix.
-%endif
-
-%if 0%{?with_unit_test} && 0%{?with_devel}
-%package unit-test
-Summary: Unit tests for %{name} package
-
-%if 0%{?with_check}
-#Here comes all BuildRequires: PACKAGE the unit tests
-#in %%check section need for running
-%endif
-
-# test subpackage tests code from devel subpackage
-Requires: %{name}-devel = %{version}-%{release}
-
-%description unit-test
-%{summary}
-
-This package contains unit tests for project
-providing packages with %{import_path} prefix.
-%endif
+%{gobaseipath} prefix.
%prep
-%setup -q -n %{repo}-%{commit}
-
-%build
+%gosetup
%install
-# source codes for building projects
-%if 0%{?with_devel}
-install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
-echo "%%dir %%{gopath}/src/%%{import_path}/." >> devel.file-list
-# find all *.go but no *_test.go files and generate devel.file-list
-for file in $(find . -iname "*.go" \! -iname "*_test.go") ; do
- echo "%%dir %%{gopath}/src/%%{import_path}/$(dirname $file)" >> devel.file-list
- install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$(dirname $file)
- cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
- echo "%%{gopath}/src/%%{import_path}/$file" >> devel.file-list
-done
-%endif
-
-# testing files for this project
-%if 0%{?with_unit_test} && 0%{?with_devel}
-install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
-# find all *_test.go files and generate unit-test.file-list
-for file in $(find . -iname "*_test.go"); do
- echo "%%dir %%{gopath}/src/%%{import_path}/$(dirname $file)" >> devel.file-list
- install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$(dirname $file)
- cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
- echo "%%{gopath}/src/%%{import_path}/$file" >> unit-test.file-list
-done
-%endif
-
-%if 0%{?with_devel}
-sort -u -o devel.file-list devel.file-list
-%endif
+%goinstall
%check
-%if 0%{?with_check} && 0%{?with_unit_test} && 0%{?with_devel}
-%if ! 0%{?with_bundled}
-export GOPATH=%{buildroot}/%{gopath}:%{gopath}
-%else
-export GOPATH=%{buildroot}/%{gopath}:$(pwd)/Godeps/_workspace:%{gopath}
-%endif
-
-%if ! 0%{?gotest:1}
-%global gotest go test
-%endif
-
-%gotest %{import_path}/spew
-%endif
+%gochecks
#define license tag if not already defined
%{!?_licensedir:%global license %doc}
-%if 0%{?with_devel}
%files devel -f devel.file-list
%license LICENSE
%doc README.md
-%dir %{gopath}/src/%{provider}.%{provider_tld}/%{project}
-%endif
-
-%if 0%{?with_unit_test} && 0%{?with_devel}
-%files unit-test -f unit-test.file-list
-%license LICENSE
-%doc README.md
-%endif
%changelog
+* Wed Feb 28 2018 Jan Chaloupka <jchaloup(a)redhat.com> - 0-0.16.20161107git6d21280
+- Autogenerate some parts using the new macros
+
* Wed Feb 07 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 0-0.15.git6d21280
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
6 years, 1 month
Architecture specific change in rpms/golang-github-davecgh-go-spew.git
by githook-noreply@fedoraproject.org
The package rpms/golang-github-davecgh-go-spew.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/golang-github-davecgh-go-spew.git....
Change:
-ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
Thanks.
Full change:
============
commit 355f17e9cf36a7d48e7e85c22972f095cba33589
Author: Jan Chaloupka <jchaloup(a)redhat.com>
Date: Tue Mar 27 15:04:18 2018 +0200
Add gcommit so it can be read by automated tooling
diff --git a/.gitignore b/.gitignore
index 60ddd8b..e60cb14 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1 @@
-/go-spew-6d21280.tar.gz
/go-spew-1.1.0.tar.gz
diff --git a/golang-github-davecgh-go-spew.spec b/golang-github-davecgh-go-spew.spec
index 3af0e88..00e3d6c 100644
--- a/golang-github-davecgh-go-spew.spec
+++ b/golang-github-davecgh-go-spew.spec
@@ -3,6 +3,7 @@
# http://github.com/davecgh/go-spew
%global goipath github.com/davecgh/go-spew
+%global gcommit 346938d642f2ec3594ed81d874461961cd0faa76
Version: 1.1.0
%global common_description %{expand:
@@ -36,7 +37,7 @@ building other packages which use import path with
%prep
-%forgeautosetup
+%gosetup
%install
commit f741f89db4b08d51f1ed4d81e149c0ab5c2ae0b6
Author: Robert-André Mauchin <zebob.m(a)gmail.com>
Date: Mon Mar 26 23:49:20 2018 +0200
Update to upstream v1.1.0
Update to new guidelines for Go
diff --git a/.gitignore b/.gitignore
index 331a046..60ddd8b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
/go-spew-6d21280.tar.gz
+/go-spew-1.1.0.tar.gz
diff --git a/golang-github-davecgh-go-spew.spec b/golang-github-davecgh-go-spew.spec
index da16983..3af0e88 100644
--- a/golang-github-davecgh-go-spew.spec
+++ b/golang-github-davecgh-go-spew.spec
@@ -1,50 +1,64 @@
+# Run tests in check section
+%bcond_without check
+
# http://github.com/davecgh/go-spew
-%global provider_prefix github.com/davecgh/go-spew
-%global gobaseipath %{provider_prefix}
-%global commit 6d212800a42e8ab5c146b8ace3490ee17e5225f9
-%global commitdate 20161107
+%global goipath github.com/davecgh/go-spew
+Version: 1.1.0
+
+%global common_description %{expand:
+Go-spew implements a deep pretty printer for Go data structures to aid in
+debugging. A comprehensive suite of tests with 100% test coverage is
+provided to ensure proper functionality.}
-%gocraftmeta -i
+%gometa
Name: %{goname}
-Version: 0
-Release: 0.16.%{commitdate}git%{shortcommit}%{?dist}
+Release: 1%{?dist}
Summary: Deep pretty printer for Go data structures to aid in debug
License: ISC
URL: %{gourl}
Source0: %{gosource}
%description
-%{summary}
+%{common_description}
+
%package devel
Summary: %{summary}
BuildArch: noarch
%description devel
-%{summary}
+%{common_description}
This package contains library source intended for
building other packages which use import path with
-%{gobaseipath} prefix.
+%{goipath} prefix.
+
%prep
-%gosetup
+%forgeautosetup
+
%install
%goinstall
+
+%if %{with check}
%check
%gochecks
+%endif
-#define license tag if not already defined
-%{!?_licensedir:%global license %doc}
%files devel -f devel.file-list
%license LICENSE
%doc README.md
+
%changelog
+* Mon Mar 26 2018 Robert-André Mauchin <zebob.m(a)gmail.com> - 1.1.0-1
+- Update to upstream v1.1.0
+- Update to new guidelines for Go
+
* Wed Feb 28 2018 Jan Chaloupka <jchaloup(a)redhat.com> - 0-0.16.20161107git6d21280
- Autogenerate some parts using the new macros
diff --git a/sources b/sources
index ec52aba..61ada41 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (go-spew-6d21280.tar.gz) = 5b49a9e6df2cc906f49f4448caf3ea17b654be9f76dba9a72b1c6852fdeac6bdabfd4a59f8f83fb09fa2d50be606f807da563b3a4c31e4cfb491f348b301acc3
+SHA512 (go-spew-1.1.0.tar.gz) = 20c9f0550a2d5030265dde8ad3ed009ce5c6490d010f184ad3f656b8fe5eb6e5c6abc9594408240aa731c0977afd9739d293490e6164cc0ce156652611b05b39
commit 808f3317479546b0020c6ef5985b1ead13fc44a9
Author: Jan Chaloupka <jchaloup(a)redhat.com>
Date: Wed Feb 28 14:02:24 2018 +0100
Autogenerate some parts using the new macros
diff --git a/golang-github-davecgh-go-spew.spec b/golang-github-davecgh-go-spew.spec
index 1494d65..da16983 100644
--- a/golang-github-davecgh-go-spew.spec
+++ b/golang-github-davecgh-go-spew.spec
@@ -1,167 +1,53 @@
-# If any of the following macros should be set otherwise,
-# you can wrap any of them with the following conditions:
-# - %%if 0%%{centos} == 7
-# - %%if 0%%{?rhel} == 7
-# - %%if 0%%{?fedora} == 23
-# Or just test for particular distribution:
-# - %%if 0%%{centos}
-# - %%if 0%%{?rhel}
-# - %%if 0%%{?fedora}
-#
-# Be aware, on centos, both %%rhel and %%centos are set. If you want to test
-# rhel specific macros, you can use %%if 0%%{?rhel} && 0%%{?centos} == 0 condition.
-# (Don't forget to replace double percentage symbol with single one in order to apply a condition)
-
-# Generate devel rpm
-%global with_devel 1
-# Build project from bundled dependencies
-%global with_bundled 0
-# Build with debug info rpm
-%global with_debug 0
-# Run tests in check section
-# Failing tests due to newer version of gc
-%global with_check 0
-# Generate unit-test rpm
-%global with_unit_test 1
-
-%if 0%{?with_debug}
-%global _dwz_low_mem_die_limit 0
-%else
-%global debug_package %{nil}
-%endif
-
-%global provider github
-%global provider_tld com
-%global project davecgh
-%global repo go-spew
-# https://github.com/davecgh/go-spew
-%global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo}
-%global import_path %{provider_prefix}
+# http://github.com/davecgh/go-spew
+%global provider_prefix github.com/davecgh/go-spew
+%global gobaseipath %{provider_prefix}
%global commit 6d212800a42e8ab5c146b8ace3490ee17e5225f9
-%global shortcommit %(c=%{commit}; echo ${c:0:7})
+%global commitdate 20161107
-Name: golang-%{provider}-%{project}-%{repo}
+%gocraftmeta -i
+
+Name: %{goname}
Version: 0
-Release: 0.15.git%{shortcommit}%{?dist}
+Release: 0.16.%{commitdate}git%{shortcommit}%{?dist}
Summary: Deep pretty printer for Go data structures to aid in debug
License: ISC
-URL: https://%{provider_prefix}
-Source0: https://%{provider_prefix}/archive/%{commit}/%{repo}-%{shortcommit}.tar.gz
-
-# e.g. el6 has ppc64 arch without gcc-go, so EA tag is required
-ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
-# If go_compiler is not set to 1, there is no virtual provide. Use golang instead.
-BuildRequires: %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang}
+URL: %{gourl}
+Source0: %{gosource}
%description
%{summary}
-%if 0%{?with_devel}
%package devel
Summary: %{summary}
BuildArch: noarch
-%if 0%{?with_check}
-%endif
-
-
-Provides: golang(%{import_path}/spew) = %{version}-%{release}
-Provides: golang(%{import_path}/spew/testdata) = %{version}-%{release}
-
%description devel
%{summary}
This package contains library source intended for
building other packages which use import path with
-%{import_path} prefix.
-%endif
-
-%if 0%{?with_unit_test} && 0%{?with_devel}
-%package unit-test
-Summary: Unit tests for %{name} package
-
-%if 0%{?with_check}
-#Here comes all BuildRequires: PACKAGE the unit tests
-#in %%check section need for running
-%endif
-
-# test subpackage tests code from devel subpackage
-Requires: %{name}-devel = %{version}-%{release}
-
-%description unit-test
-%{summary}
-
-This package contains unit tests for project
-providing packages with %{import_path} prefix.
-%endif
+%{gobaseipath} prefix.
%prep
-%setup -q -n %{repo}-%{commit}
-
-%build
+%gosetup
%install
-# source codes for building projects
-%if 0%{?with_devel}
-install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
-echo "%%dir %%{gopath}/src/%%{import_path}/." >> devel.file-list
-# find all *.go but no *_test.go files and generate devel.file-list
-for file in $(find . -iname "*.go" \! -iname "*_test.go") ; do
- echo "%%dir %%{gopath}/src/%%{import_path}/$(dirname $file)" >> devel.file-list
- install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$(dirname $file)
- cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
- echo "%%{gopath}/src/%%{import_path}/$file" >> devel.file-list
-done
-%endif
-
-# testing files for this project
-%if 0%{?with_unit_test} && 0%{?with_devel}
-install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
-# find all *_test.go files and generate unit-test.file-list
-for file in $(find . -iname "*_test.go"); do
- echo "%%dir %%{gopath}/src/%%{import_path}/$(dirname $file)" >> devel.file-list
- install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$(dirname $file)
- cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
- echo "%%{gopath}/src/%%{import_path}/$file" >> unit-test.file-list
-done
-%endif
-
-%if 0%{?with_devel}
-sort -u -o devel.file-list devel.file-list
-%endif
+%goinstall
%check
-%if 0%{?with_check} && 0%{?with_unit_test} && 0%{?with_devel}
-%if ! 0%{?with_bundled}
-export GOPATH=%{buildroot}/%{gopath}:%{gopath}
-%else
-export GOPATH=%{buildroot}/%{gopath}:$(pwd)/Godeps/_workspace:%{gopath}
-%endif
-
-%if ! 0%{?gotest:1}
-%global gotest go test
-%endif
-
-%gotest %{import_path}/spew
-%endif
+%gochecks
#define license tag if not already defined
%{!?_licensedir:%global license %doc}
-%if 0%{?with_devel}
%files devel -f devel.file-list
%license LICENSE
%doc README.md
-%dir %{gopath}/src/%{provider}.%{provider_tld}/%{project}
-%endif
-
-%if 0%{?with_unit_test} && 0%{?with_devel}
-%files unit-test -f unit-test.file-list
-%license LICENSE
-%doc README.md
-%endif
%changelog
+* Wed Feb 28 2018 Jan Chaloupka <jchaloup(a)redhat.com> - 0-0.16.20161107git6d21280
+- Autogenerate some parts using the new macros
+
* Wed Feb 07 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 0-0.15.git6d21280
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
commit 2347db5f33fa8dbbeeca9d85c1893d4e7eabcea7
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Wed Feb 7 14:09:39 2018 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
diff --git a/golang-github-davecgh-go-spew.spec b/golang-github-davecgh-go-spew.spec
index eacb499..1494d65 100644
--- a/golang-github-davecgh-go-spew.spec
+++ b/golang-github-davecgh-go-spew.spec
@@ -42,7 +42,7 @@
Name: golang-%{provider}-%{project}-%{repo}
Version: 0
-Release: 0.14.git%{shortcommit}%{?dist}
+Release: 0.15.git%{shortcommit}%{?dist}
Summary: Deep pretty printer for Go data structures to aid in debug
License: ISC
URL: https://%{provider_prefix}
@@ -162,6 +162,9 @@ export GOPATH=%{buildroot}/%{gopath}:$(pwd)/Godeps/_workspace:%{gopath}
%endif
%changelog
+* Wed Feb 07 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 0-0.15.git6d21280
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
* Wed Aug 02 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 0-0.14.git6d21280
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
6 years, 1 month
Architecture specific change in rpms/golang-github-stretchr-testify.git
by githook-noreply@fedoraproject.org
The package rpms/golang-github-stretchr-testify.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/golang-github-stretchr-testify.gi....
Change:
-ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
Thanks.
Full change:
============
commit 815ad74e3c598934b9c7d362564b28a7d7138568
Author: Robert-André Mauchin <zebob.m(a)gmail.com>
Date: Mon Mar 26 23:40:25 2018 +0200
Update to upstream v1.2.1
Update to new guidelines for Go
diff --git a/.gitignore b/.gitignore
index 2b403fe..79fb118 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
/testify-69483b4.tar.gz
+/testify-1.2.1.tar.gz
diff --git a/golang-github-stretchr-testify.spec b/golang-github-stretchr-testify.spec
index 5b29cf7..9762405 100644
--- a/golang-github-stretchr-testify.spec
+++ b/golang-github-stretchr-testify.spec
@@ -1,179 +1,73 @@
-# If any of the following macros should be set otherwise,
-# you can wrap any of them with the following conditions:
-# - %%if 0%%{centos} == 7
-# - %%if 0%%{?rhel} == 7
-# - %%if 0%%{?fedora} == 23
-# Or just test for particular distribution:
-# - %%if 0%%{centos}
-# - %%if 0%%{?rhel}
-# - %%if 0%%{?fedora}
-#
-# Be aware, on centos, both %%rhel and %%centos are set. If you want to test
-# rhel specific macros, you can use %%if 0%%{?rhel} && 0%%{?centos} == 0 condition.
-# (Don't forget to replace double percentage symbol with single one in order to apply a condition)
-
-# Generate devel rpm
-%global with_devel 1
-# Build project from bundled dependencies
-%global with_bundled 0
-# Build with debug info rpm
-%global with_debug 0
# Run tests in check section
-%global with_check 1
-# Generate unit-test rpm
-%global with_unit_test 1
-
-%if 0%{?with_debug}
-%global _dwz_low_mem_die_limit 0
-%else
-%global debug_package %{nil}
-%endif
+%bcond_without check
-%global provider github
-%global provider_tld com
-%global project stretchr
-%global repo testify
# https://github.com/stretchr/testify
-%global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo}
-%global import_path %{provider_prefix}
-%global commit 69483b4bd14f5845b5a1e55bca19e954e827f1d0
-%global shortcommit %(c=%{commit}; echo ${c:0:7})
-
-Name: golang-%{provider}-%{project}-%{repo}
-Version: 1.1.4
-Release: 0.2.git%{shortcommit}%{?dist}
-Summary: Tools for testifying that your code will behave as you intend
-License: MIT
-URL: https://%{provider_prefix}
-Source0: https://%{provider_prefix}/archive/%{commit}/%{repo}-%{shortcommit}.tar.gz
+%global goipath github.com/stretchr/testify
+Version: 1.2.1
-# e.g. el6 has ppc64 arch without gcc-go, so EA tag is required
-ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
-# If go_compiler is not set to 1, there is no virtual provide. Use golang instead.
-BuildRequires: %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang}
+%global common_description %{expand:
+Golang set of packages that provide many tools for testifying
+that your code will behave as you intend.
-%description
-Thou Shalt Write Tests
+Features include:
-Go code (golang) set of packages that provide many tools for testifying that
-your code will behave as you intend.
+ - Easy assertions
+ - Mocking
+ - Testing suite interfaces and functions}
-%if 0%{?with_devel}
-%package devel
-Summary: %{summary}
-BuildArch: noarch
+%gometa
+
+Name: %{goname}
+Release: 1%{?dist}
+Summary: Tools for testifying that your code will behave as you intend
+License: BSD
+URL: %{gourl}
+Source0: %{gosource}
-%if 0%{?with_check}
-BuildRequires: golang(github.com/stretchr/objx)
BuildRequires: golang(github.com/davecgh/go-spew/spew)
BuildRequires: golang(github.com/pmezard/go-difflib/difflib)
-%endif
+BuildRequires: golang(github.com/stretchr/objx)
-Requires: golang(github.com/stretchr/objx)
-Requires: golang(github.com/davecgh/go-spew/spew)
-Requires: golang(github.com/pmezard/go-difflib/difflib)
+%description
+%{common_description}
-Provides: golang(%{import_path}) = %{version}-%{release}
-Provides: golang(%{import_path}/assert) = %{version}-%{release}
-Provides: golang(%{import_path}/http) = %{version}-%{release}
-Provides: golang(%{import_path}/mock) = %{version}-%{release}
-Provides: golang(%{import_path}/require) = %{version}-%{release}
-Provides: golang(%{import_path}/suite) = %{version}-%{release}
+
+%package devel
+Summary: %{summary}
+BuildArch: noarch
%description devel
-%{summary}
+%{common_description}
This package contains library source intended for
building other packages which use import path with
-%{import_path} prefix.
-%endif
+%{goipath} prefix.
-%if 0%{?with_unit_test}
-%package unit-test
-Summary: Unit tests for %{name} package
-
-%if 0%{?with_check}
-#Here comes all BuildRequires: PACKAGE the unit tests
-#in %%check section need for running
-%endif
-
-# test subpackage tests code from devel subpackage
-Requires: %{name}-devel = %{version}-%{release}
-
-%description unit-test
-%{summary}
-
-This package contains unit tests for project
-providing packages with %{import_path} prefix.
-%endif
%prep
-%setup -q -n %{repo}-%{commit}
+%forgeautosetup
-mv LICENCE.txt LICENSE.txt
-
-%build
%install
-# source codes for building projects
-%if 0%{?with_devel}
-install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
-# find all *.go but no *_test.go files and generate devel.file-list
-for file in $(find . -iname "*.go" \! -iname "*_test.go") ; do
- install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$(dirname $file)
- cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
- echo "%%{gopath}/src/%%{import_path}/$file" >> devel.file-list
-done
-%endif
+%goinstall
-# testing files for this project
-%if 0%{?with_unit_test}
-install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
-# find all *_test.go files and generate unit-test.file-list
-for file in $(find . -iname "*_test.go"); do
- install -d -p %{buildroot}/%{gopath}/src/%{import_path}/$(dirname $file)
- cp -pav $file %{buildroot}/%{gopath}/src/%{import_path}/$file
- echo "%%{gopath}/src/%%{import_path}/$file" >> unit-test.file-list
-done
-%endif
+%if %{with check}
%check
-%if 0%{?with_check} && 0%{?with_unit_test} && 0%{?with_devel}
-%if ! 0%{?with_bundled}
-export GOPATH=%{buildroot}/%{gopath}:%{gopath}
-%else
-export GOPATH=%{buildroot}/%{gopath}:$(pwd)/Godeps/_workspace:%{gopath}
+%gochecks
%endif
-%if ! 0%{?gotest:1}
-%global gotest go test
-%endif
-%gotest %{import_path}
-%gotest %{import_path}/assert
-%gotest %{import_path}/mock
-%gotest %{import_path}/require
-%gotest %{import_path}/suite
-%endif
-
-#define license tag if not already defined
-%{!?_licensedir:%global license %doc}
-
-%if 0%{?with_devel}
%files devel -f devel.file-list
-%license LICENSE.txt
+%license LICENSE
%doc README.md
-%dir %{gopath}/src/%{provider}.%{provider_tld}/%{project}
-%dir %{gopath}/src/%{import_path}
-%endif
-%if 0%{?with_unit_test}
-%files unit-test -f unit-test.file-list
-%license LICENSE.txt
-%doc README.md
-%endif
%changelog
+* Mon Mar 26 2018 Robert-André Mauchin <zebob.m(a)gmail.com> - 1.2.1-1
+- Update to upstream v1.2.1
+- Update to new guidelines for Go
+
* Wed Feb 07 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.1.4-0.2.git69483b4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
@@ -243,3 +137,4 @@ export GOPATH=%{buildroot}/%{gopath}:$(pwd)/Godeps/_workspace:%{gopath}
* Wed Aug 06 2014 Adam Miller <maxamillion(a)fedoraproject.org> - 0-0.1.gitda775f0
- First package for Fedora.
+
diff --git a/sources b/sources
index 6faf299..2875341 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (testify-69483b4.tar.gz) = 2b32ad9e97e0ad137c6b338ec539223e9975741cfea0351fb25cb6812dd1d44512716b0a311609f747b5428f344105c89816eef6aae42659b011a1ff8ef73761
+SHA512 (testify-1.2.1.tar.gz) = abd6efb21d3505d12d7ff49459fe3b6066c1648ab43a5cb7860d8c822377ab5c57a07437a5e53c6f1630d369796178d122ec03314764a393d145af5d13b4e454
6 years, 1 month
Architecture specific change in rpms/pocl.git
by githook-noreply@fedoraproject.org
The package rpms/pocl.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/pocl.git/commit/?id=2fb4847041326...
https://src.fedoraproject.org/cgit/rpms/pocl.git/commit/?id=796457e6ebc3d....
Change:
+ExclusiveArch: %{arm} %{ix86} x86_64
+ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
Thanks.
Full change:
============
commit 796457e6ebc3d08cfce2f98e4241909c88fff29d
Author: Peter Robinson <pbrobinson(a)gmail.com>
Date: Tue Mar 27 13:33:28 2018 +0100
add compiler-rt dep, fixes aarch64 tests (now supported upstream), dramatically improves other non supported arches test passes (details updated)
diff --git a/pocl.spec b/pocl.spec
index 1f1a37e..a02440d 100644
--- a/pocl.spec
+++ b/pocl.spec
@@ -16,12 +16,14 @@ Source0: https://github.com/pocl/pocl/archive/v%{version}.tar.gz
# FIXME: link
Patch1001: 0001-wrap-more-stuff-for-64-bit-atomics.patch
-# aarch64 builds fine, but: 15% tests passed, 103 tests failed out of 121
-# ppc64/ppc64le/s390x builds fine, but: 15% tests passed, 102 tests failed out of 120
-ExclusiveArch: %{arm} %{ix86} x86_64
+# ppc64le builds fine, but: 97% tests passed, 4 tests failed out of 120
+# ppc64 builds fine, but: 87% tests passed, 16 tests failed out of 120
+# s390x builds fine, but: 15% tests passed, 102 tests failed out of 120
+ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
BuildRequires: cmake
BuildRequires: clang clang-devel
+BuildRequires: compiler-rt
BuildRequires: llvm llvm-devel
BuildRequires: hwloc-devel
BuildRequires: libtool
@@ -131,6 +133,7 @@ popd
%changelog
* Mon Mar 26 2018 Peter Robinson <pbrobinson(a)fedoraproject.org> 1.1-2
- Minor spec updates/cleanups
+- Enable aarch64
* Fri Mar 23 2018 Tom Stellard <tstellar(a)redhat.com> - 1.1-1
- Update to 1.1
commit 2fb48470413267c92087898e5b6c3588a7af913a
Author: Peter Robinson <pbrobinson(a)gmail.com>
Date: Tue Mar 27 04:44:26 2018 +0100
fix ix86 macro
diff --git a/pocl.spec b/pocl.spec
index 4e638f2..1f1a37e 100644
--- a/pocl.spec
+++ b/pocl.spec
@@ -18,7 +18,7 @@ Patch1001: 0001-wrap-more-stuff-for-64-bit-atomics.patch
# aarch64 builds fine, but: 15% tests passed, 103 tests failed out of 121
# ppc64/ppc64le/s390x builds fine, but: 15% tests passed, 102 tests failed out of 120
-ExclusiveArch: %{arm} %{x86} x86_64
+ExclusiveArch: %{arm} %{ix86} x86_64
BuildRequires: cmake
BuildRequires: clang clang-devel
6 years, 1 month
[Report] Packages Restricting Arches
by root
New package excluding arches (1)
============================
- pocl
ExclusiveArch: %{arm} %{x86} x86_64
Package that edited their arches constraints (1)
=============================================
- cri-tools
was ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
is ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
Package no longer excluding arches (1)
==================================
- golang-googlecode-gomock
List of packages currently excluding arches (2536)
===========================================
- 0ad
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- 90-Second-Portraits
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64 ppc64
- GtkAda
ExclusiveArch: %{GPRbuild_arches}
- GtkAda3
ExclusiveArch: %{GPRbuild_arches}
- LuxRender
ExclusiveArch: x86_64
- OpenTK
ExclusiveArch: %mono_arches
- PragmARC
ExclusiveArch: %{GPRbuild_arches}
- R-DynDoc
ExclusiveArch: armv7, ppc, go_arch
- RdRand
ExclusiveArch: %{ix86} x86_64
- SLOF
ExclusiveArch: ppc64le
- YafaRay
ExclusiveArch: %{ix86} x86_64
- aboot
ExclusiveArch: alpha
- acpid
ExclusiveArch: ia64 x86_64 %{ix86} %{arm} aarch64
- ahven
ExclusiveArch: %{GPRbuild_arches}
- alleyoop
ExclusiveArch: %{ix86} x86_64 ppc ppc64 ppc64le s390x %{arm} aarch64
- american-fuzzy-lop
ExclusiveArch: %{ix86} x86_64
- anet
ExclusiveArch: %{GPRbuild_arches}
- apmd
ExclusiveArch: %{ix86}
- apmud
ExclusiveArch: ppc
- appstream-generator
ExclusiveArch: x86_64 %{ix86} %{arm}
- 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}
- bcal
ExclusiveArch: x86_64 aarch64 ia64 ppc64 ppc64le s390x
- bcc
ExclusiveArch: x86_64 %{power64}
- bcm283x-firmware
ExclusiveArch: %{arm} aarch64
- beignet
ExclusiveArch: x86_64 %{ix86}
- berusky2
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{mips}
- biosdevname
ExclusiveArch: %{ix86} x86_64
- bless
ExclusiveArch: %mono_arches
- boo
ExclusiveArch: %{mono_arches}
- buildah
ExclusiveArch: x86_64 %{arm} aarch64 ppc64le s390x
- bwa
ExclusiveArch: x86_64
- caddy
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
- 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
- cjdns
ExclusiveArch: %{nodejs_arches}
- cmospwd
ExclusiveArch: %{ix86} x86_64
- cmrt
ExclusiveArch: %{ix86} x86_64 ia64
- 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}}
- containerd
ExclusiveArch: %{go_arches}
- cpuid
ExclusiveArch: %{ix86} x86_64
- cqrlog
ExclusiveArch: %{fpc_arches}
- crash
ExclusiveArch: %{ix86} ia64 x86_64 ppc ppc64 s390 s390x %{arm} aarch64 ppc64le
- cri-tools
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- 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
- deepin-api
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- deepin-daemon
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- deepin-dbus-generator
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- deepin-gir-generator
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- 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
- douceur
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- 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
ExclusiveArch: x86_64 aarch64
- efibootmgr
ExclusiveArch: %{ix86} x86_64 aarch64 arm
- efivar
ExclusiveArch: %{ix86} x86_64 aarch64 %{arm}
- 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
- embree2
ExclusiveArch: x86_64
- envytools
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- exciting
ExclusiveArch: x86_64 %{ix86}
ExclusiveArch: x86_64 %{ix86} aarch64 %{arm} %{power64}
- exercism
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- expresso
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- extlinux-bootloader
ExclusiveArch: %{arm} aarch64
- fcitx-libpinyin
ExclusiveArch: %{qt5_qtwebengine_arches}
- fedora-developer-portal
ExclusiveArch: ix86 x86_64
- fedora-dockerfiles
ExclusiveArch: %{go_arches}
- fedora-gnat-project-common
ExclusiveArch: noarch %{GNAT_arches}
- fence-virt
ExclusiveArch: i686 x86_64
- fes
ExclusiveArch: x86_64
- firmware-addon-dell
ExclusiveArch: x86_64 ia64 %{ix86}
- flannel
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- florist
ExclusiveArch: %{GPRbuild_arches}
- fluxcapacitor
ExclusiveArch: %{ix86} x86_64 %{arm}
- fpc
ExclusiveArch: %{arm} %{ix86} x86_64 ppc ppc64
- freshmaker
ExclusiveArch: %{ix86} x86_64
- frysk
ExclusiveArch: %{ix86} x86_64 ppc64
- fst
ExclusiveArch: i686
- fwts
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 s390x %{power64}
- fwupdate
ExclusiveArch: x86_64 aarch64
- fzf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- 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: %GPRbuild_arches
- ghdl
ExclusiveArch: %{GNAT_arches}
- gio-sharp
ExclusiveArch: %mono_arches
- gir-to-d
ExclusiveArch: %{ldc_arches}
- git-lfs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm} aarch64 ppc64le s390x}
- 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
- glusterd2
ExclusiveArch: %{go_arches}
- 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}}
- gocomplete
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- godep
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- godotenv
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-deepin-dbus-factory
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-deepin-go-lib
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-10gen-openssl
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- 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-kcp-go
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-BurntSushi-freetype-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-BurntSushi-graphics-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-BurntSushi-toml-test
ExclusiveArch: %{go_arches}
- golang-github-BurntSushi-xgb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-BurntSushi-xgbutil
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-Jeffail-gabs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-PuerkitoBio-goquery
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-SAP-go-hdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-SeanDolphin-bqschema
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-SermoDigital-jose
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-ThomsonReutersEikon-go-ntlm
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-alecthomas-assert
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-alecthomas-chroma
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-alecthomas-colour
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-alecthomas-kingpin
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-alecthomas-repr
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-alecthomas-template
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-alecthomas-units
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-andybalholm-cascadia
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-go-metrics
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-armon-go-proxyproto
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-axgle-mahonia
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{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-go-netrc
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-bkaradzic-go-lz4
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-boombuler-barcode
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-cespare-xxhash
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-chaseadamsio-goorgeous
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-cheekybits-is
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-chmduquesne-rollinghash
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-chrismalek-oktasdk-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-client9-gospell
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-cockroach-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-codahale-aesnicheck
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-codegangsta-negroni
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-cryptix-wav
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-d4l3k-messagediff
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-danwakefield-fnmatch
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-dchest-cssmin
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-dchest-siphash
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-denisenkom-go-mssqldb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-disintegration-imaging
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-dlclark-regexp2
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-docker-libkv
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-docopt-docopt-go
ExclusiveArch: %{go_arches}
- golang-github-duosecurity-duo_api_golang
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-endophage-gotuf
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-fatih-color
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-fatih-structs
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-flynn-go-shlex
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-fullsailor-pkcs7
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-gdamore-encoding
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-gdamore-tcell
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-git-lfs-wildmatch
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-errors-errors
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-tomb-tomb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gobuffalo-envy
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-gobwas-glob
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-gocql-gocql
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-golang-image
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-google-go-cmp
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-goraft-raft
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-gorilla-css
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-gorilla-sessions
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-hailocab-go-hostpool
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-go-hclog
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-go-plugin
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-hashicorp-go-rootcerts
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-howeyc-fsnotify
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-inconshreveable-go-vhost
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-influxdb-influxdb
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-jackpal-gateway
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-jdkato-prose
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-jdkato-syllables
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-jefferai-jsonx
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-justinas-alice
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-kdar-factorlog
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-keybase-go-crypto
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-klauspost-cpuid
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-kyokomi-emoji
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-linuxdeepin-go-x11-client
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-lucasb-eyer-go-colorful
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-markbates-inflect
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mattn-go-colorable
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mattn-go-shellwords
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mgutz-ansi
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-mgutz-logxi
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-michaelklishin-rabbit-hole
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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 aarch64 %{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-testing-interface
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-montanaflynn-stats
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-msteinert-pam
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-muesli-smartcrop
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-dropbox-sdk-go-unofficial
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-ncw-swift
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-neurosnap-sentences
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-nfnt-resize
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-patrickmn-go-cache
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-paulrosania-go-charset
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-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-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-pquerna-otp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-rasky-go-xdr
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-rcrowley-go-metrics
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- golang-github-remeh-sizedwaitgroup
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-remyoudompheng-bigfft
ExclusiveArch: %{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-ryanuber-go-glob
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-sergi-go-diff
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang-github-sethgrid-pester
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-shiena-ansicolor
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-shogo82148-go-shuffle
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-openssl
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm} ppc64le s390x}
- golang-github-spaolacci-murmur3
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-afero
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-spf13-fsync
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-viper
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-sstarcher-go-okta
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-streadway-amqp
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-templexxx-cpufeat
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-templexxx-reedsolomon
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-github-templexxx-xor
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-tjfoc-gmsm
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-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-xrash-smetrics
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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-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-google-api-client
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-sqlite
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{go_arches}
ExclusiveArch: %{ix86} x86_64 %{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-layeh-gopher-luar
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- golang-torproject-pluggable-transports-goptlib
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}}
- hsakmt
ExclusiveArch: x86_64 aarch64
- hub
ExclusiveArch: %{go_arches}
- hugo
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- 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
- insect
ExclusiveArch: %{nodejs_arches} noarch
- 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
- iucode-tool
ExclusiveArch: %{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}
- jid
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{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: %{ix86} x86_64
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
- libquentier
ExclusiveArch: %{qt5_qtwebengine_arches}
- 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 %{ix86}
- libunwind
ExclusiveArch: %{arm} aarch64 hppa ia64 mips ppc %{power64} %{ix86} x86_64
- libva-intel-hybrid-driver
ExclusiveArch: %{ix86} x86_64 ia64
- 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}
- mellowplayer
ExclusiveArch: %{qt5_qtwebengine_arches}
- memkind
ExclusiveArch: x86_64
- memtest86+
ExclusiveArch: %{ix86} x86_64
- mesos
ExclusiveArch: x86_64
- micro
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- microcode_ctl
ExclusiveArch: %{ix86} x86_64
- micropython
ExclusiveArch: %{arm} x86_64
- mine_detector
ExclusiveArch: %{GPRbuild_arches}
- minetest
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- mingw-wine-gecko
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- mkbootdisk
ExclusiveArch: %{ix86} sparc sparc64 x86_64
- mnemosyne
ExclusiveArch: noarch %{qt5_qtwebengine_arches}
- mocha
ExclusiveArch: %{nodejs_arches} noarch
- mod_mono
ExclusiveArch: %mono_arches
- module-build-service
ExclusiveArch: %{ix86} x86_64 noarch
- 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}
- nbdkit
ExclusiveArch: x86_64
- ndesk-dbus
ExclusiveArch: %{mono_arches}
- ndesk-dbus-glib
ExclusiveArch: %{mono_arches}
- newtonsoft-json
ExclusiveArch: %{mono_arches}
- nim
ExclusiveArch: %{nim_arches}
- nini
ExclusiveArch: %{mono_arches}
- node-gyp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs
ExclusiveArch: %{nodejs_arches}
- nodejs-Base64
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-abbrev
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-accepts
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-acorn
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-acorn-object-spread
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} 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-align-text
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-alter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-bgblack
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-bgblue
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-bgcyan
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-bggreen
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-bgmagenta
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-bgred
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-bgwhite
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-bgyellow
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-black
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-blue
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-bold
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-colors
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-cyan
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-dim
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-font
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-gray
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-green
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-grey
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-hidden
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-inverse
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-italic
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-magenta
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-red
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-regex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-reset
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-strikethrough
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-styles
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-ansi-underline
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ansi-white
ExclusiveArch: %{nodejs_arches} 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-field
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-buffer-from-string
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-array-differ
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-array-filter
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-array-find
ExclusiveArch: %{nodejs_arches} 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-ify
ExclusiveArch: %{nodejs_arches} 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-arraybuffer-dot-slice
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-arraybuffer-equal
ExclusiveArch: %{nodejs_arches} 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-limiter
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async-queue
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-async-some
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-asynckit
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-atob
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-auto-bind
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-autoresolve
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ava-init
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-aws-sign
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-aws-sign2
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-aws4
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-babel-messages
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-babel-runtime
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-backbone
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-backoff
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-balanced-match
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-base
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-base-option
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-base-plugins
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-base32-encode
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-base64-arraybuffer
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-base64id
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bash-match
ExclusiveArch: %{nodejs_arches} 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-bcryptjs
ExclusiveArch: %{nodejs_arches} noarch
- 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-better-than-before
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bignumber-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bind-obj-methods
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bindings
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-bl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-blob
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-braces
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-breakable
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-browser-request
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-browser-stdout
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bson
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-buble
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} 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-busboy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-byline
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bytes
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cache-base
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-caching-transform
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-call-delayed
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-call-matcher
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-call-signature
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-callback-stream
ExclusiveArch: %{nodejs_arches} 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-center-align
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chai
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chai-connect-middleware
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chai-oauth2orize-grant
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chai-passport-strategy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chainer
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-charenc
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-charm
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cheerio
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-child-process-close
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chmodr
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chownr
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chroma-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-chrono
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-circular-json
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-class-utils
ExclusiveArch: %{nodejs_arches} 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-cli-table
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cliui
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-clone
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-clone-deep
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-co-with-promise
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-coa
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-code-point-at
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-codemirror
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-coffee-coverage
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-collection-visit
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-collections
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-color-support
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-colors
ExclusiveArch: %{nodejs_arches} 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-common-path-prefix
ExclusiveArch: %{nodejs_arches} 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-compare-func
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-component-emitter
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-component-indexof
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-component-inherit
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-consolemd
ExclusiveArch: %{nodejs_arches} 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-conventional-changelog-angular
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-conventional-changelog-preset-loader
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-conventional-changelog-writer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-conventional-commits-filter
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-conventional-commits-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-convert-hex
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-session
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cookie-signature
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cookiejar
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-cookies
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-copy-descriptor
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-core-assert
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} 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-cors
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-couch-login
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-coveralls
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-crc
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} 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-crypt
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-cryptiles
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-csrf
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} 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-tree
ExclusiveArch: %{nodejs_arches} 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-csso
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
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-parse
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-csv-spectrum
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-csv-stringify
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-cyclist
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-d
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-dargs
ExclusiveArch: %{nodejs_arches} 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-death
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-debug
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-debug-fabulous
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-debuglog
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-decamelize
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-decimal-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-decompress-response
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dedent
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-default-resolution
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-define-property
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-delete
ExclusiveArch: %{nodejs_arches} 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-detect-indent
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-detect-newline
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-detect-node
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-detective
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dezalgo
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-dicer
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-dot-prop
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-echomd
ExclusiveArch: %{nodejs_arches} 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-empty-dir
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-engine-dot-io-client
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-engine-dot-io-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-entities
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-error-ex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-error-symbol
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-promisify
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-escallmatch
ExclusiveArch: %{nodejs_arches} 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-escope
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-espower
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-espower-location-detector
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-espurify
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-everything-dot-js
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-execa
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-range
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-fake
ExclusiveArch: %{nodejs_arches} 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-fastfall
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-faucet
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-flat-cache
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-flot
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-flush-write-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fmix
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-follow-redirects
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-foreground-child
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-fragment-cache
ExclusiveArch: %{nodejs_arches} 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-dot-notify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fs-exists-cached
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-promise
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-fs-temp
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-function-loop
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-get-value
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-getobject
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gettext-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-git-dummy-commit
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-git-raw-commits
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-git-remote-origin-url
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-git-semver-tags
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-git-tails
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gitconfiglocal
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-expand
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-modules
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-gnode
ExclusiveArch: %{nodejs_arches} 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-svgmin
ExclusiveArch: %{nodejs_arches} 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-gulp-mocha
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-gulp-util
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} 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-handle-thing
ExclusiveArch: %{nodejs_arches} 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-binary
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has-binary2
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has-color
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-has-cors
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has-flag
ExclusiveArch: %{nodejs_arches} 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-value
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-has-values
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-hex-to-array-buffer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-highlight-js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-historic-readline
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hock
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hoek
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-homedir-polyfill
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-hook-std
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-hsluv
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-html-minifier
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-htmlparser2
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-http-deceiver
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-http2
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-imul
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-imurmurhash
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-indent-string
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-indexof
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-infinity-agent
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-inflight
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-info-symbol
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-ipaddr-dot-js
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} 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-accessor-descriptor
ExclusiveArch: %{nodejs_arches} 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-data-descriptor
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-date-object
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-is-descriptor
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-error
ExclusiveArch: %{nodejs_arches} 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-negated-glob
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-promise
ExclusiveArch: %{nodejs_arches} 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-registered
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-subset
ExclusiveArch: %{nodejs_arches} 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-valid-instance
ExclusiveArch: %{nodejs_arches} 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-string-escape
ExclusiveArch: %{nodejs_arches} 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-json3
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-keep-alive-agent
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-keygrip
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-kuler2gpl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-langdetect
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-latest-version
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-lazy-cache
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-libpq
ExclusiveArch: %{nodejs_arches}
- nodejs-libxmljs
ExclusiveArch: %{nodejs_arches}
ExclusiveArch: %{ix86} x86_64 %{arm}
- nodejs-line-numbers
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-line-reader
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-linefix
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-ok
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-log-symbols
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-log-utils
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-lolex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-longest
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-magic-string
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-make-arrow-function
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-make-dir
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-make-generator-function
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-make-node
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-makedir
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-makeerror
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-map-cache
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-map-obj
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-map-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-map-visit
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-marked
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-matched
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
ExclusiveArch: %{ix86} x86_64 %{arm} 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-mdn-data
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mdurl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-media-typer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-memoize-path
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-memoizee
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-memwatch-next
ExclusiveArch: %{nodejs_arches}
- 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-minimalistic-assert
ExclusiveArch: %{nodejs_arches} 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-mixin-deep
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mixin-object
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mkdirp
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mkfiletree
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mock-bin
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mock-fs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-mock-git
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-modify-values
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-moment-timezone
ExclusiveArch: %{nodejs_arches} 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-multipipe
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-murmur-32
ExclusiveArch: %{nodejs_arches} 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-nanoseconds
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}
- nodejs-node-uuid
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-nomnom
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-noncharacters
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-oauth2orize
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-object-assign
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-object-copy
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-dot-pick
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-object-visit
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-observable-to-promise
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-obuf
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-okay
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-option-cache
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-option-chain
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-shim
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-own-or
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-own-or-env
ExclusiveArch: %{nodejs_arches} 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-parse-passwd
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parsejson
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parseqs
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parserlib
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-parseuri
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-parseurl
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-pascal-case
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pascalcase
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-passport-http-bearer
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-oauth2-client-password
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-dirname
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-exists
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-path-extra
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-pbkdf2-password
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
- nodejs-pg-connection-string
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pg-cursor
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pg-escape
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pg-int8
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pg-native
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pg-pool
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-character-classes
ExclusiveArch: %{nodejs_arches} 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-precond
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-pretty-time
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
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-addr
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} 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-pump
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-pumpify
ExclusiveArch: %{nodejs_arches} 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-quick-lru
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-random-bytes
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-random-path
ExclusiveArch: %{nodejs_arches} 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-json-sync
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-regex-not
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-registry-url
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-relateurl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-remove-trailing-separator
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-cwd
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-resolve-dir
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-resolve-from
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-resolve-pkg
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-resolve-url
ExclusiveArch: %{nodejs_arches} 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-reusify
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-revalidator
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-rewire
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rfile
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rhea
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-right-align
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rimraf
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-rndm
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-rollup
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-seedrandom
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-select-hose
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-sentiment
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-server-destroy
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-set-blocking
ExclusiveArch: %{nodejs_arches} 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-set-value
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-setimmediate
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-setprototypeof
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sha
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-shallow-clone
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-shebang-command
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-shebang-regex
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-asyncify
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-chai
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sinon-restore
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-slash
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-sliced
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-snapdragon
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-snapdragon-capture
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-snapdragon-capture-set
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-snapdragon-node
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-snapdragon-util
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-source-map-resolve
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-source-map-support
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-source-map-url
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-sparkles
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-spawn-sync
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-spawn-wrap
ExclusiveArch: %{nodejs_arches} 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-spec
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-speedometer
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-split
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-split-string
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-split2
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-ssri
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-extend
ExclusiveArch: %{nodejs_arches} 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-each
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-equal
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-stream-pair
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-stream-transform
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-streamsearch
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-bom-string
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-strip-color
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-strip-eof
ExclusiveArch: %{nodejs_arches} 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-strong-log-transformer
ExclusiveArch: %{nodejs_arches} 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-suspend
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-svgmin
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-svgo
ExclusiveArch: %{nodejs_arches} 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-out
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tap-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tap-spec
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tape
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tapes
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tar
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tar-pack
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tar-stream
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-temp
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-temp-dir
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-temp-write
ExclusiveArch: %{nodejs_arches} 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-testdata-w3c-json-form
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-testutil
ExclusiveArch: %{nodejs_arches} 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-thread-sleep
ExclusiveArch: %{nodejs_arches} 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-diff
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-timekeeper
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-tmpl
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-to-regex
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-to-regex-range
ExclusiveArch: %{nodejs_arches} 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-tressa
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-trim
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-trim-newlines
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-trim-off-newlines
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-trivial-deferred
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-try-open
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-try-thread-sleep
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tryor
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-tsame
ExclusiveArch: %{nodejs_arches} 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-union-value
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-unique-temp-dir
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-unpipe
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-unset-value
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-urix
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-use
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-user-home
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-utf8
ExclusiveArch: %{nodejs_arches} 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-uuid
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-vlq
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
- 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-walker
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-ware
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-warning-symbol
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-watchit
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-watershed
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-wbuf
ExclusiveArch: %{nodejs_arches} 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-whet-dot-extend
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
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} 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-xdg-basedir
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xml2js
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xmlbuilder
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xmldom
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-xmlhttprequest-ssl
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-yapool
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-yargs
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-yargs-parser
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-yauzl
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-yeast
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}
- obfs4
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- oci-kvm-hook
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- oci-register-machine
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- oci-umount
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}
- 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}
- onedrive
ExclusiveArch: %{ldc_arches}
- 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
- openvswitch
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- origin
ExclusiveArch: %{go_arches}
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- orion
ExclusiveArch: %{qt5_qtwebengine_arches}
- 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
- plv8
ExclusiveArch: %v8_arches
- pocl
ExclusiveArch: %{arm} %{x86} x86_64
- podman
ExclusiveArch: aarch64 %{arm} ppc64le s390x x86_64
- poppler-sharp
ExclusiveArch: %mono_arches
- popub
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- powerline-go
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- powerpc-utils
ExclusiveArch: ppc %{power64}
- ppc64-diag
ExclusiveArch: ppc %{power64}
- ppc64-utils
ExclusiveArch: ppc %{power64}
- 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
- qevercloud
ExclusiveArch: %{qt5_qtwebengine_arches}
- qt4pas
ExclusiveArch: %{fpc_arches}
- qt5-qtwebengine
ExclusiveArch: %{qt5_qtwebengine_arches}
- quantum-espresso
ExclusiveArch: x86_64 %{ix86}
ExclusiveArch: %{openblas_arches}
- quentier
ExclusiveArch: %{qt5_qtwebengine_arches}
- rclone
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- 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
- renderdoc
ExclusiveArch: %{ix86} 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}
- rocm-runtime
ExclusiveArch: x86_64 aarch64
- rssguard
ExclusiveArch: %{qt5_qtwebengine_arches}
- runc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le %{mips} s390x
- rust
ExclusiveArch: %{rust_arches}
- rust-addr2line
ExclusiveArch: %{rust_arches}
- rust-adler32
ExclusiveArch: %{rust_arches}
- rust-aho-corasick
ExclusiveArch: %{rust_arches}
- rust-ansi_term
ExclusiveArch: %{rust_arches}
- rust-arrayref
ExclusiveArch: %{rust_arches}
- rust-arrayvec
ExclusiveArch: %{rust_arches}
- rust-atk-sys
ExclusiveArch: %{rust_arches}
- rust-atty
ExclusiveArch: %{rust_arches}
- rust-backtrace
ExclusiveArch: %{rust_arches}
- rust-backtrace-sys
ExclusiveArch: %{rust_arches}
- rust-base100
ExclusiveArch: %{rust_arches}
- rust-base64
ExclusiveArch: %{rust_arches}
- rust-bencher
ExclusiveArch: %{rust_arches}
- rust-bincode
ExclusiveArch: %{rust_arches}
- rust-bincode0.8
ExclusiveArch: %{rust_arches}
- rust-bitflags
ExclusiveArch: %{rust_arches}
- rust-bitflags0.9
ExclusiveArch: %{rust_arches}
- rust-brev
ExclusiveArch: %{rust_arches}
- rust-build_const
ExclusiveArch: %{rust_arches}
- rust-bytecount
ExclusiveArch: %{rust_arches}
- rust-byteorder
ExclusiveArch: %{rust_arches}
- rust-bytes
ExclusiveArch: %{rust_arches}
- rust-bytes0.3
ExclusiveArch: %{rust_arches}
- rust-c_vec
ExclusiveArch: %{rust_arches}
- rust-cairo-rs
ExclusiveArch: %{rust_arches}
- rust-cairo-sys-rs
ExclusiveArch: %{rust_arches}
- rust-cbindgen
ExclusiveArch: %{rust_arches}
- rust-cc
ExclusiveArch: %{rust_arches}
- rust-cfg-if
ExclusiveArch: %{rust_arches}
- rust-chan
ExclusiveArch: %{rust_arches}
- rust-chrono
ExclusiveArch: %{rust_arches}
- rust-clap
ExclusiveArch: %{rust_arches}
- rust-cmake
ExclusiveArch: %{rust_arches}
- rust-coco
ExclusiveArch: %{rust_arches}
- rust-cpp_demangle
ExclusiveArch: %{rust_arches}
- rust-crc
ExclusiveArch: %{rust_arches}
- rust-crc-core
ExclusiveArch: %{rust_arches}
- rust-crossbeam
ExclusiveArch: %{rust_arches}
- rust-crossbeam-deque
ExclusiveArch: %{rust_arches}
- rust-crossbeam-epoch
ExclusiveArch: %{rust_arches}
- rust-crossbeam-utils
ExclusiveArch: %{rust_arches}
- rust-crypto-hash
ExclusiveArch: %{rust_arches}
- rust-cryptovec
ExclusiveArch: %{rust_arches}
- rust-cssparser
ExclusiveArch: %{rust_arches}
- rust-cssparser-macros
ExclusiveArch: %{rust_arches}
- rust-ctrlc
ExclusiveArch: %{rust_arches}
- rust-curl
ExclusiveArch: %{rust_arches}
- rust-curl-sys
ExclusiveArch: %{rust_arches}
- rust-custom_derive
ExclusiveArch: %{rust_arches}
- rust-data-encoding
ExclusiveArch: %{rust_arches}
- rust-datetime
ExclusiveArch: %{rust_arches}
- rust-dbus
ExclusiveArch: %{rust_arches}
- rust-deque
ExclusiveArch: %{rust_arches}
- rust-devicemapper
ExclusiveArch: %{rust_arches}
- rust-diff
ExclusiveArch: %{rust_arches}
- rust-difference
ExclusiveArch: %{rust_arches}
- rust-docopt
ExclusiveArch: %{rust_arches}
- rust-downcast-rs
ExclusiveArch: %{rust_arches}
- rust-dtoa
ExclusiveArch: %{rust_arches}
- rust-dtoa-short
ExclusiveArch: %{rust_arches}
- rust-edit-distance
ExclusiveArch: %{rust_arches}
- rust-either
ExclusiveArch: %{rust_arches}
- rust-encoding
ExclusiveArch: %{rust_arches}
- rust-encoding-index-japanese
ExclusiveArch: %{rust_arches}
- rust-encoding-index-korean
ExclusiveArch: %{rust_arches}
- rust-encoding-index-simpchinese
ExclusiveArch: %{rust_arches}
- rust-encoding-index-singlebyte
ExclusiveArch: %{rust_arches}
- rust-encoding-index-tradchinese
ExclusiveArch: %{rust_arches}
- rust-encoding_index_tests
ExclusiveArch: %{rust_arches}
- rust-encoding_rs
ExclusiveArch: %{rust_arches}
- rust-enum_primitive
ExclusiveArch: %{rust_arches}
- rust-env_logger
ExclusiveArch: %{rust_arches}
- rust-env_logger0.4
ExclusiveArch: %{rust_arches}
- rust-errln
ExclusiveArch: %{rust_arches}
- rust-errno
ExclusiveArch: %{rust_arches}
- rust-error-chain
ExclusiveArch: %{rust_arches}
- rust-exa
ExclusiveArch: %{rust_arches}
- rust-extprim
ExclusiveArch: %{rust_arches}
- rust-extprim_literals_macros
ExclusiveArch: %{rust_arches}
- rust-failure
ExclusiveArch: %{rust_arches}
- rust-failure_derive
ExclusiveArch: %{rust_arches}
- rust-fallible-iterator
ExclusiveArch: %{rust_arches}
- rust-fd-find
ExclusiveArch: %{rust_arches}
- rust-filetime
ExclusiveArch: %{rust_arches}
- rust-fixedbitset
ExclusiveArch: %{rust_arches}
- rust-flame
ExclusiveArch: %{rust_arches}
- rust-flate2
ExclusiveArch: %{rust_arches}
- rust-float-cmp
ExclusiveArch: %{rust_arches}
- rust-fnv
ExclusiveArch: %{rust_arches}
- rust-foreign-types
ExclusiveArch: %{rust_arches}
- rust-foreign-types-shared
ExclusiveArch: %{rust_arches}
- rust-fs2
ExclusiveArch: %{rust_arches}
- rust-futures
ExclusiveArch: %{rust_arches}
- rust-futures-cpupool
ExclusiveArch: %{rust_arches}
- rust-gdk
ExclusiveArch: %{rust_arches}
- rust-gdk-pixbuf
ExclusiveArch: %{rust_arches}
- rust-gdk-pixbuf-sys
ExclusiveArch: %{rust_arches}
- rust-gdk-sys
ExclusiveArch: %{rust_arches}
- rust-getopts
ExclusiveArch: %{rust_arches}
- rust-gimli
ExclusiveArch: %{rust_arches}
- rust-gio
ExclusiveArch: %{rust_arches}
- rust-gio-sys
ExclusiveArch: %{rust_arches}
- rust-git2
ExclusiveArch: %{rust_arches}
- rust-glib
ExclusiveArch: %{rust_arches}
- rust-glib-sys
ExclusiveArch: %{rust_arches}
- rust-glob
ExclusiveArch: %{rust_arches}
- rust-globset
ExclusiveArch: %{rust_arches}
- rust-gobject-sys
ExclusiveArch: %{rust_arches}
- rust-goblin
ExclusiveArch: %{rust_arches}
- rust-grep
ExclusiveArch: %{rust_arches}
- rust-gtk
ExclusiveArch: %{rust_arches}
- rust-gtk-rs-lgpl-docs
ExclusiveArch: %{rust_arches}
- rust-gtk-source-sys
ExclusiveArch: %{rust_arches}
- rust-gtk-sys
ExclusiveArch: %{rust_arches}
- rust-gzip-header
ExclusiveArch: %{rust_arches}
- rust-hamcrest
ExclusiveArch: %{rust_arches}
- rust-handlebars
ExclusiveArch: %{rust_arches}
- rust-heapsize
ExclusiveArch: %{rust_arches}
- rust-hex
ExclusiveArch: %{rust_arches}
- rust-home
ExclusiveArch: %{rust_arches}
- rust-horrorshow
ExclusiveArch: %{rust_arches}
- rust-http
ExclusiveArch: %{rust_arches}
- rust-httparse
ExclusiveArch: %{rust_arches}
- rust-humantime
ExclusiveArch: %{rust_arches}
- rust-hyper
ExclusiveArch: %{rust_arches}
- rust-idna
ExclusiveArch: %{rust_arches}
- rust-ignore
ExclusiveArch: %{rust_arches}
- rust-indexmap
ExclusiveArch: %{rust_arches}
- rust-intervaltree
ExclusiveArch: %{rust_arches}
- rust-iovec
ExclusiveArch: %{rust_arches}
- rust-iso8601
ExclusiveArch: %{rust_arches}
- rust-itertools
ExclusiveArch: %{rust_arches}
- rust-itoa
ExclusiveArch: %{rust_arches}
- rust-jobserver
ExclusiveArch: %{rust_arches}
- rust-language-tags
ExclusiveArch: %{rust_arches}
- rust-lazy_static
ExclusiveArch: %{rust_arches}
- rust-lazycell
ExclusiveArch: %{rust_arches}
- rust-libc
ExclusiveArch: %{rust_arches}
- rust-libdbus-sys
ExclusiveArch: %{rust_arches}
- rust-libgit2-sys
ExclusiveArch: %{rust_arches}
- rust-libloading
ExclusiveArch: %{rust_arches}
- rust-libssh2-sys
ExclusiveArch: %{rust_arches}
- rust-libudev
ExclusiveArch: %{rust_arches}
- rust-libudev-sys
ExclusiveArch: %{rust_arches}
- rust-libz-sys
ExclusiveArch: %{rust_arches}
- rust-linked-hash-map
ExclusiveArch: %{rust_arches}
- rust-lipsum
ExclusiveArch: %{rust_arches}
- rust-locale
ExclusiveArch: %{rust_arches}
- rust-log
ExclusiveArch: %{rust_arches}
- rust-log0.3
ExclusiveArch: %{rust_arches}
- rust-loopdev
ExclusiveArch: %{rust_arches}
- rust-lzma-sys
ExclusiveArch: %{rust_arches}
- rust-macro-attr
ExclusiveArch: %{rust_arches}
- rust-maplit
ExclusiveArch: %{rust_arches}
- rust-matches
ExclusiveArch: %{rust_arches}
- rust-md5
ExclusiveArch: %{rust_arches}
- rust-memchr
ExclusiveArch: %{rust_arches}
- rust-memmap
ExclusiveArch: %{rust_arches}
- rust-memoffset
ExclusiveArch: %{rust_arches}
- rust-metadeps
ExclusiveArch: %{rust_arches}
- rust-mime
ExclusiveArch: %{rust_arches}
- rust-miniz-sys
ExclusiveArch: %{rust_arches}
- rust-miniz_oxide
ExclusiveArch: %{rust_arches}
- rust-miniz_oxide_c_api
ExclusiveArch: %{rust_arches}
- rust-mio
ExclusiveArch: %{rust_arches}
- rust-mio-uds
ExclusiveArch: %{rust_arches}
- rust-mnt
ExclusiveArch: %{rust_arches}
- rust-modifier
ExclusiveArch: %{rust_arches}
- rust-multimap
ExclusiveArch: %{rust_arches}
- rust-natord
ExclusiveArch: %{rust_arches}
- rust-net2
ExclusiveArch: %{rust_arches}
- rust-newtype_derive
ExclusiveArch: %{rust_arches}
- rust-nix
ExclusiveArch: %{rust_arches}
- rust-nodrop
ExclusiveArch: %{rust_arches}
- rust-nom
ExclusiveArch: %{rust_arches}
- rust-num
ExclusiveArch: %{rust_arches}
- rust-num-bigint
ExclusiveArch: %{rust_arches}
- rust-num-complex
ExclusiveArch: %{rust_arches}
- rust-num-integer
ExclusiveArch: %{rust_arches}
- rust-num-iter
ExclusiveArch: %{rust_arches}
- rust-num-rational
ExclusiveArch: %{rust_arches}
- rust-num-traits
ExclusiveArch: %{rust_arches}
- rust-num-traits0.1
ExclusiveArch: %{rust_arches}
- rust-num_cpus
ExclusiveArch: %{rust_arches}
- rust-number_prefix
ExclusiveArch: %{rust_arches}
- rust-object
ExclusiveArch: %{rust_arches}
- rust-openssl
ExclusiveArch: %{rust_arches}
- rust-openssl-probe
ExclusiveArch: %{rust_arches}
- rust-openssl-sys
ExclusiveArch: %{rust_arches}
- rust-ordermap
ExclusiveArch: %{rust_arches}
- rust-owning_ref
ExclusiveArch: %{rust_arches}
- rust-packaging
ExclusiveArch: %{rust_arches} noarch
- rust-pad
ExclusiveArch: %{rust_arches}
- rust-pager
ExclusiveArch: %{rust_arches}
- rust-pango
ExclusiveArch: %{rust_arches}
- rust-pango-sys
ExclusiveArch: %{rust_arches}
- rust-peeking_take_while
ExclusiveArch: %{rust_arches}
- rust-percent-encoding
ExclusiveArch: %{rust_arches}
- rust-permutate
ExclusiveArch: %{rust_arches}
- rust-permutohedron
ExclusiveArch: %{rust_arches}
- rust-pest
ExclusiveArch: %{rust_arches}
- rust-pest_derive
ExclusiveArch: %{rust_arches}
- rust-phf
ExclusiveArch: %{rust_arches}
- rust-phf_codegen
ExclusiveArch: %{rust_arches}
- rust-phf_generator
ExclusiveArch: %{rust_arches}
- rust-phf_shared
ExclusiveArch: %{rust_arches}
- rust-pkg-config
ExclusiveArch: %{rust_arches}
- rust-plain
ExclusiveArch: %{rust_arches}
- rust-pretty-git-prompt
ExclusiveArch: %{rust_arches}
- rust-pretty_env_logger
ExclusiveArch: %{rust_arches}
- rust-proc-macro2
ExclusiveArch: %{rust_arches}
- rust-procedural-masquerade
ExclusiveArch: %{rust_arches}
- rust-pulldown-cmark
ExclusiveArch: %{rust_arches}
- rust-quick-error
ExclusiveArch: %{rust_arches}
- rust-quickcheck
ExclusiveArch: %{rust_arches}
- rust-quickersort
ExclusiveArch: %{rust_arches}
- rust-quote
ExclusiveArch: %{rust_arches}
- rust-rand
ExclusiveArch: %{rust_arches}
- rust-rayon
ExclusiveArch: %{rust_arches}
- rust-rayon-core
ExclusiveArch: %{rust_arches}
- rust-regex
ExclusiveArch: %{rust_arches}
- rust-regex-syntax
ExclusiveArch: %{rust_arches}
- rust-relay
ExclusiveArch: %{rust_arches}
- rust-remove_dir_all
ExclusiveArch: %{rust_arches}
- rust-ripgrep
ExclusiveArch: %{rust_arches}
- rust-rustc-demangle
ExclusiveArch: %{rust_arches}
- rust-rustc-serialize
ExclusiveArch: %{rust_arches}
- rust-rustc-test
ExclusiveArch: %{rust_arches}
- rust-rustc_version
ExclusiveArch: %{rust_arches}
- rust-rustdoc-stripper
ExclusiveArch: %{rust_arches}
- rust-rustfilt
ExclusiveArch: %{rust_arches}
- rust-rustfmt
ExclusiveArch: %{rust_arches}
- rust-safemem
ExclusiveArch: %{rust_arches}
- rust-same-file
ExclusiveArch: %{rust_arches}
- rust-scoped-tls
ExclusiveArch: %{rust_arches}
- rust-scoped_threadpool
ExclusiveArch: %{rust_arches}
- rust-scopeguard
ExclusiveArch: %{rust_arches}
- rust-scroll
ExclusiveArch: %{rust_arches}
- rust-scroll_derive
ExclusiveArch: %{rust_arches}
- rust-seahash
ExclusiveArch: %{rust_arches}
- rust-semver
ExclusiveArch: %{rust_arches}
- rust-semver-parser
ExclusiveArch: %{rust_arches}
- rust-serde
ExclusiveArch: %{rust_arches}
- rust-serde0.8
ExclusiveArch: %{rust_arches}
- rust-serde_bytes
ExclusiveArch: %{rust_arches}
- rust-serde_cbor
ExclusiveArch: %{rust_arches}
- rust-serde_derive
ExclusiveArch: %{rust_arches}
- rust-serde_derive_internals
ExclusiveArch: %{rust_arches}
- rust-serde_ignored
ExclusiveArch: %{rust_arches}
- rust-serde_json
ExclusiveArch: %{rust_arches}
- rust-serde_json0.8
ExclusiveArch: %{rust_arches}
- rust-serde_test
ExclusiveArch: %{rust_arches}
- rust-serde_urlencoded
ExclusiveArch: %{rust_arches}
- rust-serde_yaml
ExclusiveArch: %{rust_arches}
- rust-sha1
ExclusiveArch: %{rust_arches}
- rust-shell-escape
ExclusiveArch: %{rust_arches}
- rust-shlex
ExclusiveArch: %{rust_arches}
- rust-siphasher
ExclusiveArch: %{rust_arches}
- rust-slab
ExclusiveArch: %{rust_arches}
- rust-slab0.3
ExclusiveArch: %{rust_arches}
- rust-smallvec
ExclusiveArch: %{rust_arches}
- rust-socket2
ExclusiveArch: %{rust_arches}
- rust-sourceview
ExclusiveArch: %{rust_arches}
- rust-spin
ExclusiveArch: %{rust_arches}
- rust-spmc
ExclusiveArch: %{rust_arches}
- rust-stable_deref_trait
ExclusiveArch: %{rust_arches}
- rust-streaming-stats
ExclusiveArch: %{rust_arches}
- rust-strings
ExclusiveArch: %{rust_arches}
- rust-strsim
ExclusiveArch: %{rust_arches}
- rust-structopt
ExclusiveArch: %{rust_arches}
- rust-structopt-derive
ExclusiveArch: %{rust_arches}
- rust-syn
ExclusiveArch: %{rust_arches}
- rust-synom
ExclusiveArch: %{rust_arches}
- rust-synstructure
ExclusiveArch: %{rust_arches}
- rust-syntex_errors
ExclusiveArch: %{rust_arches}
- rust-syntex_pos
ExclusiveArch: %{rust_arches}
- rust-syntex_syntax
ExclusiveArch: %{rust_arches}
- rust-sys-info
ExclusiveArch: %{rust_arches}
- rust-tabwriter
ExclusiveArch: %{rust_arches}
- rust-take
ExclusiveArch: %{rust_arches}
- rust-tar
ExclusiveArch: %{rust_arches}
- rust-tempdir
ExclusiveArch: %{rust_arches}
- rust-tempfile
ExclusiveArch: %{rust_arches}
- rust-term
ExclusiveArch: %{rust_arches}
- rust-term_grid
ExclusiveArch: %{rust_arches}
- rust-term_size
ExclusiveArch: %{rust_arches}
- rust-termcolor
ExclusiveArch: %{rust_arches}
- rust-termion
ExclusiveArch: %{rust_arches}
- rust-test-assembler
ExclusiveArch: %{rust_arches}
- rust-textwrap
ExclusiveArch: %{rust_arches}
- rust-thread-id
ExclusiveArch: %{rust_arches}
- rust-thread_local
ExclusiveArch: %{rust_arches}
- rust-threadpool
ExclusiveArch: %{rust_arches}
- rust-time
ExclusiveArch: %{rust_arches}
- rust-tokei
ExclusiveArch: %{rust_arches}
- rust-tokio
ExclusiveArch: %{rust_arches}
- rust-tokio-core
ExclusiveArch: %{rust_arches}
- rust-tokio-executor
ExclusiveArch: %{rust_arches}
- rust-tokio-io
ExclusiveArch: %{rust_arches}
- rust-tokio-process
ExclusiveArch: %{rust_arches}
- rust-tokio-proto
ExclusiveArch: %{rust_arches}
- rust-tokio-reactor
ExclusiveArch: %{rust_arches}
- rust-tokio-service
ExclusiveArch: %{rust_arches}
- rust-tokio-signal
ExclusiveArch: %{rust_arches}
- rust-tokio-threadpool
ExclusiveArch: %{rust_arches}
- rust-toml
ExclusiveArch: %{rust_arches}
- rust-traitobject
ExclusiveArch: %{rust_arches}
- rust-typed-arena
ExclusiveArch: %{rust_arches}
- rust-ucd-util
ExclusiveArch: %{rust_arches}
- rust-unicase
ExclusiveArch: %{rust_arches}
- rust-unicode-bidi
ExclusiveArch: %{rust_arches}
- rust-unicode-normalization
ExclusiveArch: %{rust_arches}
- rust-unicode-segmentation
ExclusiveArch: %{rust_arches}
- rust-unicode-width
ExclusiveArch: %{rust_arches}
- rust-unicode-xid
ExclusiveArch: %{rust_arches}
- rust-unindent
ExclusiveArch: %{rust_arches}
- rust-unreachable
ExclusiveArch: %{rust_arches}
- rust-unsafe-any
ExclusiveArch: %{rust_arches}
- rust-untrusted
ExclusiveArch: %{rust_arches}
- rust-url
ExclusiveArch: %{rust_arches}
- rust-users
ExclusiveArch: %{rust_arches}
- rust-utf8-ranges
ExclusiveArch: %{rust_arches}
- rust-uuid
ExclusiveArch: %{rust_arches}
- rust-vec_map
ExclusiveArch: %{rust_arches}
- rust-version-sync
ExclusiveArch: %{rust_arches}
- rust-version_check
ExclusiveArch: %{rust_arches}
- rust-void
ExclusiveArch: %{rust_arches}
- rust-wait-timeout
ExclusiveArch: %{rust_arches}
- rust-walkdir
ExclusiveArch: %{rust_arches}
- rust-which
ExclusiveArch: %{rust_arches}
- rust-xattr
ExclusiveArch: %{rust_arches}
- rust-xz2
ExclusiveArch: %{rust_arches}
- rust-yaml-rust
ExclusiveArch: %{rust_arches}
- rust-yaml-rust0.3
ExclusiveArch: %{rust_arches}
- rust-yubibomb
ExclusiveArch: %{rust_arches}
- rust-zoneinfo_compiled
ExclusiveArch: %{rust_arches}
- s390utils
ExclusiveArch: s390 s390x
- safetyblanket
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64 ppc64
- sagemath
ExclusiveArch: aarch64 %{arm} %{ix86} x86_64 ppc sparcv9
- sbcl
ExclusiveArch: %{arm} %{ix86} x86_64 ppc sparcv9 aarch64
- sbd
ExclusiveArch: i686 x86_64 s390x
- seabios
ExclusiveArch: x86_64
- seamonkey
ExclusiveArch: %{ix86} x86_64
- servicelog
ExclusiveArch: ppc %{power64}
- sgabios
ExclusiveArch: %{ix86} x86_64
- sharpfont
ExclusiveArch: %mono_arches
- sharpziplib
ExclusiveArch: %{mono_arches}
- shim
ExclusiveArch: x86_64 aarch64
- shim-signed
ExclusiveArch: x86_64 aarch64
- shim-unsigned-aarch64
ExclusiveArch: aarch64
- shim-unsigned-x64
ExclusiveArch: x86_64
- sigul
ExclusiveArch: x86_64
- skychart
ExclusiveArch: %{fpc_arches}
- 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
- startdde
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- statsd
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- stratis-cli
ExclusiveArch: %{rust_arches} noarch
- stratisd
ExclusiveArch: %{rust_arches}
- stripesnoop
ExclusiveArch: %{ix86} x86_64
- supermin
ExclusiveArch: x86_64
- syncthing
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- 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
- ternimal
ExclusiveArch: %{rust_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}
- tuned-profiles-nfv-host-bin
ExclusiveArch: %{ix86} x86_64
- uClibc
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips}
- ucx
ExclusiveArch: aarch64 ppc64le x86_64
- 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}}
- virtualbox-guest-additions
ExclusiveArch: i686 x86_64
- 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
- webkit2-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
- x2goclient
ExclusiveArch: x86_64
- 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-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: %{GPRbuild_arches}
- zlib-ada
ExclusiveArch: %{GPRbuild_arches}
6 years, 1 month
Architecture specific change in rpms/sblim-gather.git
by githook-noreply@fedoraproject.org
The package rpms/sblim-gather.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/sblim-gather.git/commit/?id=94df3....
Change:
+%ifarch s390 s390x
Thanks.
Full change:
============
commit 94df35480004f34ab53dfe3518a0d9514e78b0b1
Author: Vitezslav Crhonek <vcrhonek(a)redhat.com>
Date: Tue Mar 27 13:33:13 2018 +0200
Enable System Z specific providers for s390 and s390x architecture, Silence providers (un)registration
diff --git a/sblim-gather.spec b/sblim-gather.spec
index cda45b8..3494641 100644
--- a/sblim-gather.spec
+++ b/sblim-gather.spec
@@ -3,7 +3,7 @@
Name: sblim-gather
Version: 2.2.9
-Release: 9%{?dist}
+Release: 10%{?dist}
Summary: SBLIM Gatherer
Group: Applications/System
@@ -104,6 +104,9 @@ export CFLAGS="$RPM_OPT_FLAGS -fsigned-char -fno-strict-aliasing"
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
%endif
%configure TESTSUITEDIR=%{_datadir}/sblim-testsuite \
+%ifarch s390 s390x
+ --enable-z \
+%endif
PROVIDERDIR=%{provider_dir}
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
@@ -240,9 +243,9 @@ fi
function register()
{
# don't let registration failure when server not running fail install!
- %{_datadir}/%{name}/provider-register.sh -v $1 -m %{GATHER_1ST_SCHEMA} -r %{GATHER_1ST_REGISTRATION} #> /dev/null 2>&1 || :;
+ %{_datadir}/%{name}/provider-register.sh -v $1 -m %{GATHER_1ST_SCHEMA} -r %{GATHER_1ST_REGISTRATION} > /dev/null 2>&1 || :;
GLOBIGNORE=%{G_GLOB_IGNORE}
- %{_datadir}/%{name}/provider-register.sh -v $1 -m %{SCHEMA} -r %{REGISTRATION} #> /dev/null 2>&1 || :;
+ %{_datadir}/%{name}/provider-register.sh -v $1 -m %{SCHEMA} -r %{REGISTRATION} > /dev/null 2>&1 || :;
}
/sbin/ldconfig
@@ -266,8 +269,8 @@ function unregister()
{
# don't let registration failure when server not running fail upgrade!
GLOBIGNORE=%{G_GLOB_IGNORE}
- %{_datadir}/%{name}/provider-register.sh -v -d $1 -m %{SCHEMA} -r %{REGISTRATION} #> /dev/null 2>&1 || :;
- %{_datadir}/%{name}/provider-register.sh -v -d $1 -m %{GATHER_1ST_SCHEMA} -r %{GATHER_1ST_REGISTRATION} #> /dev/null 2>&1 || :;
+ %{_datadir}/%{name}/provider-register.sh -v -d $1 -m %{SCHEMA} -r %{REGISTRATION} > /dev/null 2>&1 || :;
+ %{_datadir}/%{name}/provider-register.sh -v -d $1 -m %{GATHER_1ST_SCHEMA} -r %{GATHER_1ST_REGISTRATION} > /dev/null 2>&1 || :;
}
if [ $1 -eq 0 ]; then
@@ -288,6 +291,10 @@ fi
%postun provider -p /sbin/ldconfig
%changelog
+* Tue Mar 27 2018 Vitezslav Crhonek <vcrhonek(a)redhat.com> - 2.2.9-10
+- Enable System Z specific providers for s390 and s390x architecture
+- Silence providers (un)registration
+
* Fri Feb 09 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 2.2.9-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
6 years, 1 month
Architecture specific change in rpms/firefox.git
by githook-noreply@fedoraproject.org
The package rpms/firefox.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/firefox.git/commit/?id=73212c8d45....
Change:
+ExclusiveArch: x86_64 i686
Thanks.
Full change:
============
commit cd045eee819704bee316c727ef8eb1c64d411d25
Merge: fc97eca a5bdadb
Author: Jan Horak <jhorak(a)redhat.com>
Date: Tue Mar 27 10:43:47 2018 +0200
Merge branch 'master' into f25
commit a5bdadb1771a91694f1bd8d26eef5e27bb6a6d0b
Author: Jan Horak <jhorak(a)redhat.com>
Date: Tue Mar 27 10:39:50 2018 +0200
Update to 59.0.2
diff --git a/.gitignore b/.gitignore
index 8d63136..25a41e3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -282,3 +282,5 @@ firefox-3.6.4.source.tar.bz2
/firefox-langpacks-59.0-20180306.tar.xz
/c61f5f5ead48c78a80c80db5c489bdc7cfaf8175.tar.bz2
/firefox-langpacks-59.0-20180312.tar.xz
+/239e434d6d2b8e1e2b697c3416d1e96d48fe98e5.tar.bz2
+/firefox-langpacks-59.0.2-20180327.tar.xz
diff --git a/firefox.spec b/firefox.spec
index 2a8da5a..653a4e5 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -95,13 +95,13 @@
Summary: Mozilla Firefox Web browser
Name: firefox
-Version: 59.0
-Release: 2%{?pre_tag}%{?dist}
+Version: 59.0.2
+Release: 1%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
Source0: https://hg.mozilla.org/releases/mozilla-release/archive/%{release_hash}.t...
%if %{build_langpacks}
-Source1: firefox-langpacks-%{version}%{?pre_version}-20180312.tar.xz
+Source1: firefox-langpacks-%{version}%{?pre_version}-20180327.tar.xz
%endif
Source10: firefox-mozconfig
Source12: firefox-redhat-default-prefs.js
@@ -843,6 +843,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Tue Mar 27 2018 Jan Horak <jhorak(a)redhat.com> - 59.0.2-1
+- Update to 59.0.2
+
* Mon Mar 12 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-2
- Updated to 59.0 build c61f5f5ead48c78a80c80db5c489bdc7cfaf8175
diff --git a/sources b/sources
index f70d03f..c20a0d8 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (c61f5f5ead48c78a80c80db5c489bdc7cfaf8175.tar.bz2) = 7f3555ad2b107e24ed49b5b57a30a33689f328511435bb3a0ee61cabd5057f422d728cf5b52bee4cf526b14f31c16c7f9a3c54795eefa5f79355ac10911e7ab6
-SHA512 (firefox-langpacks-59.0-20180312.tar.xz) = 0ad5d2bf39482ec552bb9272c593ab75d10c78756abf2270403745d68ebe735d5042b685ded861798cfeb1335f9e65d3125b3453dd42f1cd57d1ce6f2d2c43d9
+SHA512 (239e434d6d2b8e1e2b697c3416d1e96d48fe98e5.tar.bz2) = db8f55954df3af554e7a614eaece4aed995794dac6e2d828b2f9c175d8a6b89e109c26ced41a43df9ad24e01d079cadf13d16c6a9bdd1887bc9898d34408e8e6
+SHA512 (firefox-langpacks-59.0.2-20180327.tar.xz) = 0822521b52b2a1879e3c78dd11cf173117aeae9cf4a4ee4aa31ddef356f58ecb61f07da045550ba33aa4faaaa1362c6c2ad9ebb5685f6e0c0df1aa59283e7ad8
commit fd896325c0a7a07d7e2a9c31bda5e2db99148174
Author: Martin Stransky <stransky(a)redhat.com>
Date: Mon Mar 12 12:11:31 2018 +0100
Updated changelog
diff --git a/firefox.spec b/firefox.spec
index eb8d3ea..2a8da5a 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -843,7 +843,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
-* Tue Mar 12 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-2
+* Mon Mar 12 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-2
- Updated to 59.0 build c61f5f5ead48c78a80c80db5c489bdc7cfaf8175
* Tue Mar 6 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-1
commit 489f1d6fc920a8553ac7b8f036a085192f26517e
Author: Martin Stransky <stransky(a)redhat.com>
Date: Mon Mar 12 12:10:47 2018 +0100
Updated changelog
diff --git a/firefox.spec b/firefox.spec
index 98acddb..eb8d3ea 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -843,6 +843,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Tue Mar 12 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-2
+- Updated to 59.0 build c61f5f5ead48c78a80c80db5c489bdc7cfaf8175
+
* Tue Mar 6 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-1
- Updated to 59.0
commit 9469ea85f517cc067b7d47e918739c047f0c9780
Author: Martin Stransky <stransky(a)redhat.com>
Date: Mon Mar 12 12:08:42 2018 +0100
Updated to build c61f5f5ead48c78a80c80db5c489bdc7cfaf8175
diff --git a/.gitignore b/.gitignore
index 3712a80..8d63136 100644
--- a/.gitignore
+++ b/.gitignore
@@ -279,4 +279,6 @@ firefox-3.6.4.source.tar.bz2
/firefox-58.0.1.source.tar.xz
/firefox-langpacks-58.0.1-20180130.tar.xz
/2f6a4d2cf42c9d59626061d45c043817cb220814.tar.bz2
-/firefox-langpacks-59.0-20180306.tar.xz
\ No newline at end of file
+/firefox-langpacks-59.0-20180306.tar.xz
+/c61f5f5ead48c78a80c80db5c489bdc7cfaf8175.tar.bz2
+/firefox-langpacks-59.0-20180312.tar.xz
diff --git a/firefox.spec b/firefox.spec
index 3157127..98acddb 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -80,7 +80,7 @@
%global mozappdir %{_libdir}/%{name}
%global mozappdirdev %{_libdir}/%{name}-devel-%{version}
%global langpackdir %{mozappdir}/langpacks
-%global release_hash 2f6a4d2cf42c9d59626061d45c043817cb220814
+%global release_hash c61f5f5ead48c78a80c80db5c489bdc7cfaf8175
%global tarballdir mozilla-release-%{release_hash}
%global official_branding 1
@@ -96,12 +96,12 @@
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 59.0
-Release: 1%{?pre_tag}%{?dist}
+Release: 2%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
Source0: https://hg.mozilla.org/releases/mozilla-release/archive/%{release_hash}.t...
%if %{build_langpacks}
-Source1: firefox-langpacks-%{version}%{?pre_version}-20180306.tar.xz
+Source1: firefox-langpacks-%{version}%{?pre_version}-20180312.tar.xz
%endif
Source10: firefox-mozconfig
Source12: firefox-redhat-default-prefs.js
diff --git a/sources b/sources
index fdcd654..f70d03f 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (2f6a4d2cf42c9d59626061d45c043817cb220814.tar.bz2) = 78d7e6da9062cdf0883097fa5bbad7c7db3f9b28dae9413e1ed880f34bb9fbfd9b2524b2c25fbca55bcf796b5023c42131758bf5bdee6c404e572bc751287215
-SHA512 (firefox-langpacks-59.0-20180306.tar.xz) = 7eda70eca83679581ef3e015e066f9d1a338bf7aab54f3f851a04d68d3155190d5e03cafca1f9716ff33648d78fec74ec07c2041a9a81c7aed5f8649ca367712
+SHA512 (c61f5f5ead48c78a80c80db5c489bdc7cfaf8175.tar.bz2) = 7f3555ad2b107e24ed49b5b57a30a33689f328511435bb3a0ee61cabd5057f422d728cf5b52bee4cf526b14f31c16c7f9a3c54795eefa5f79355ac10911e7ab6
+SHA512 (firefox-langpacks-59.0-20180312.tar.xz) = 0ad5d2bf39482ec552bb9272c593ab75d10c78756abf2270403745d68ebe735d5042b685ded861798cfeb1335f9e65d3125b3453dd42f1cd57d1ce6f2d2c43d9
commit b07d076a65bee222363ac16be55dcacd9adec12b
Author: Martin Stransky <stransky(a)redhat.com>
Date: Mon Mar 12 11:51:58 2018 +0100
Removed obsoleted patch
diff --git a/build-missing-xlocale-h.patch b/build-missing-xlocale-h.patch
deleted file mode 100644
index b4a62b2..0000000
--- a/build-missing-xlocale-h.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up thunderbird-52.3.0/mozilla/intl/icu/source/i18n/digitlst.cpp.xlocale thunderbird-52.3.0/mozilla/intl/icu/source/i18n/digitlst.cpp
---- thunderbird-52.3.0/mozilla/intl/icu/source/i18n/digitlst.cpp.xlocale 2017-08-24 14:42:48.634084293 +0200
-+++ thunderbird-52.3.0/mozilla/intl/icu/source/i18n/digitlst.cpp 2017-08-24 14:42:50.534084676 +0200
-@@ -64,7 +64,7 @@
- # if U_PLATFORM_USES_ONLY_WIN32_API || U_PLATFORM == U_PF_CYGWIN
- # include <locale.h>
- # else
--# include <xlocale.h>
-+# include <locale.h>
- # endif
- #endif
-
diff --git a/firefox.spec b/firefox.spec
index 89cd65e..3157127 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -127,7 +127,6 @@ Patch27: mozilla-1335250.patch
Patch29: build-big-endian.patch
Patch32: build-rust-ppc64le.patch
Patch35: build-ppc-jit.patch
-Patch36: build-missing-xlocale-h.patch
# Always feel lucky for unsupported platforms:
# https://bugzilla.mozilla.org/show_bug.cgi?id=1347128
Patch37: build-jit-atomic-always-lucky.patch
@@ -320,7 +319,6 @@ This package contains results of tests executed during build.
# Patch for big endian platforms only
%if 0%{?big_endian}
%patch26 -p1 -b .icu
-%patch36 -p2 -b .xlocale
%endif
%{__rm} -f .mozconfig
commit 29d1083e1e405de292d23dd3991367a5d487e922
Author: Martin Stransky <stransky(a)redhat.com>
Date: Thu Mar 8 10:37:26 2018 +0100
Disabled crash reporter on second arches
diff --git a/firefox.spec b/firefox.spec
index 7e97177..89cd65e 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -86,10 +86,10 @@
%global official_branding 1
%global build_langpacks 1
-%global enable_mozilla_crashreporter 1
+%global enable_mozilla_crashreporter 0
%if !%{debug_build}
%ifarch %{ix86} x86_64
-%global enable_mozilla_crashreporter 0
+%global enable_mozilla_crashreporter 1
%endif
%endif
commit 3a5d00872a0df80a75edb1a95cf450a3322a7e89
Author: Martin Stransky <stransky(a)redhat.com>
Date: Wed Mar 7 13:44:51 2018 +0100
Build fix lib.rs file
diff --git a/firefox.spec b/firefox.spec
index 0b69b7a..7e97177 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -433,6 +433,9 @@ echo "ac_add_options --disable-ion" >> .mozconfig
echo "ac_add_options --disable-stylo" >> .mozconfig
%endif
+# Remove executable bit to make brp-mangle-shebangs happy.
+chmod -x third_party/rust/itertools/src/lib.rs
+
#---------------------------------------------------------------------
%build
commit 1ccd2a862a7da88767fcd5ac6f3d7dd03b852228
Author: Martin Stransky <stransky(a)redhat.com>
Date: Tue Mar 6 15:42:54 2018 +0100
Back to X11
diff --git a/firefox-mozconfig b/firefox-mozconfig
index 953df70..6b4cb54 100644
--- a/firefox-mozconfig
+++ b/firefox-mozconfig
@@ -1,6 +1,6 @@
. $topsrcdir/browser/config/mozconfig
-ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
+ac_add_options --enable-default-toolkit=cairo-gtk3
ac_add_options --prefix="$PREFIX"
ac_add_options --libdir="$LIBDIR"
@@ -20,7 +20,6 @@ ac_add_options --with-mozilla-api-keyfile=../mozilla-api-key
ac_add_options --with-google-api-keyfile=../google-api-key
ac_add_options --enable-release
ac_add_options --enable-pie
-ac_add_options --with-gl-provider=EGL
# Workaround for mozbz#1341234
ac_add_options BINDGEN_CFLAGS="$(pkg-config nspr pixman-1 --cflags)"
commit f202f0699f20fb6f03b89420629d3b824791edf2
Author: Martin Stransky <stransky(a)redhat.com>
Date: Tue Mar 6 15:12:51 2018 +0100
Fixed sqlite version
diff --git a/firefox.spec b/firefox.spec
index 5b93ca7..0b69b7a 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -9,7 +9,7 @@
%endif
# Use system sqlite?
-%if 0%{?fedora} > 28
+%if 0%{?fedora} > 27
%global system_sqlite 1
%else
%global system_sqlite 0
commit 2f039fc625ceda8014a44681aa93858005d72664
Author: Martin Stransky <stransky(a)redhat.com>
Date: Tue Mar 6 15:07:02 2018 +0100
Use system sqlite for Fedora 28 only
diff --git a/firefox.spec b/firefox.spec
index 109480d..5b93ca7 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -9,7 +9,7 @@
%endif
# Use system sqlite?
-%if 0%{?fedora} > 27
+%if 0%{?fedora} > 28
%global system_sqlite 1
%else
%global system_sqlite 0
@@ -154,16 +154,6 @@ Patch411: mozilla-1321521-2.patch
Patch412: mozilla-1337988.patch
Patch413: mozilla-1353817.patch
-# Wayland patches
-Patch450: mozilla-1431052.patch
-Patch451: mozilla-1432414.patch
-Patch452: mozilla-1434202.patch
-Patch453: mozilla-1433081.patch
-Patch454: remote-profile.patch
-Patch455: mozilla-1434572.patch
-Patch456: mozilla-1434565.patch
-Patch457: queue-crash.patch
-
# Debian patches
Patch500: mozilla-440908.patch
@@ -327,16 +317,6 @@ This package contains results of tests executed during build.
%patch406 -p1 -b .256180
%patch413 -p1 -b .1353817
-# Wayland patches
-%patch450 -p1 -b .1431052
-%patch451 -p1 -b .1432414
-%patch452 -p1 -b .1434202
-%patch453 -p1 -b .1433081
-%patch454 -p1 -b .remote-profile
-%patch455 -p1 -b .1434572
-%patch456 -p1 -b .1434565
-%patch457 -p1 -b .queue-crash
-
# Patch for big endian platforms only
%if 0%{?big_endian}
%patch26 -p1 -b .icu
commit 3aea3055e85d7f367ec5b1347c5b96898e237fd2
Author: Martin Stransky <stransky(a)redhat.com>
Date: Tue Mar 6 15:06:38 2018 +0100
Removed unused wayland patches
diff --git a/mozilla-1431052.patch b/mozilla-1431052.patch
deleted file mode 100644
index 59376bd..0000000
--- a/mozilla-1431052.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
---- a/widget/gtk/nsWindow.cpp
-+++ b/widget/gtk/nsWindow.cpp
-@@ -6948,11 +6948,15 @@ nsWindow::GetWaylandDisplay()
- GdkDisplay* gdkDisplay = gdk_display_get_default();
- return mIsX11Display ? nullptr :
- sGdkWaylandDisplayGetWlDisplay(gdkDisplay);
- }
-
- wl_surface*
- nsWindow::GetWaylandSurface()
- {
-- return moz_container_get_wl_surface(MOZ_CONTAINER(mContainer));
-+ if (mContainer)
-+ return moz_container_get_wl_surface(MOZ_CONTAINER(mContainer));
-+
-+ NS_WARNING("nsWindow::GetWaylandSurfaces(): We don't have any mContainer for drawing!");
-+ return nullptr;
- }
- #endif
-
diff --git a/mozilla-1432414.patch b/mozilla-1432414.patch
deleted file mode 100644
index 818dbbd..0000000
--- a/mozilla-1432414.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-diff --git a/widget/gtk/mozgtk/mozgtk.c b/widget/gtk/mozgtk/mozgtk.c
---- a/widget/gtk/mozgtk/mozgtk.c
-+++ b/widget/gtk/mozgtk/mozgtk.c
-@@ -224,16 +224,17 @@ STUB(gtk_file_chooser_set_preview_widget
- STUB(gtk_file_chooser_set_preview_widget_active)
- STUB(gtk_file_chooser_set_select_multiple)
- STUB(gtk_file_chooser_widget_get_type)
- STUB(gtk_file_filter_add_pattern)
- STUB(gtk_file_filter_new)
- STUB(gtk_file_filter_set_name)
- STUB(gtk_fixed_new)
- STUB(gtk_frame_new)
-+STUB(gtk_get_current_event_time)
- STUB(gtk_grab_add)
- STUB(gtk_grab_remove)
- STUB(gtk_handle_box_new)
- STUB(gtk_hbox_new)
- STUB(gtk_icon_info_free)
- STUB(gtk_icon_info_load_icon)
- STUB(gtk_icon_set_add_source)
- STUB(gtk_icon_set_new)
-diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
---- a/widget/gtk/nsWindow.cpp
-+++ b/widget/gtk/nsWindow.cpp
-@@ -1358,23 +1358,27 @@ SetUserTimeAndStartupIDForActivatedWindo
- // we don't want to reuse the timestamp next time we raise the window
- GTKToolkit->SetFocusTimestamp(0);
- GTKToolkit->SetDesktopStartupID(EmptyCString());
- }
-
- /* static */ guint32
- nsWindow::GetLastUserInputTime()
- {
-- // gdk_x11_display_get_user_time tracks button and key presses,
-- // DESKTOP_STARTUP_ID used to start the app, drop events from external
-- // drags, WM_DELETE_WINDOW delete events, but not usually mouse motion nor
-+ // gdk_x11_display_get_user_time/gtk_get_current_event_time tracks
-+ // button and key presses, DESKTOP_STARTUP_ID used to start the app,
-+ // drop events from external drags,
-+ // WM_DELETE_WINDOW delete events, but not usually mouse motion nor
- // button and key releases. Therefore use the most recent of
- // gdk_x11_display_get_user_time and the last time that we have seen.
-- guint32 timestamp =
-- gdk_x11_display_get_user_time(gdk_display_get_default());
-+ GdkDisplay* gdkDisplay = gdk_display_get_default();
-+ guint32 timestamp = GDK_IS_X11_DISPLAY(gdkDisplay) ?
-+ gdk_x11_display_get_user_time(gdkDisplay) :
-+ gtk_get_current_event_time();
-+
- if (sLastUserInputTime != GDK_CURRENT_TIME &&
- TimestampIsNewerThan(sLastUserInputTime, timestamp)) {
- return sLastUserInputTime;
- }
-
- return timestamp;
- }
-
-
diff --git a/mozilla-1433081.patch b/mozilla-1433081.patch
deleted file mode 100644
index 6677ff0..0000000
--- a/mozilla-1433081.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-diff --git a/gfx/gl/GLContextProvider.h b/gfx/gl/GLContextProvider.h
---- a/gfx/gl/GLContextProvider.h
-+++ b/gfx/gl/GLContextProvider.h
-@@ -21,16 +21,18 @@ namespace gl {
-
- #define IN_GL_CONTEXT_PROVIDER_H
-
- // Null is always there
- #define GL_CONTEXT_PROVIDER_NAME GLContextProviderNull
- #include "GLContextProviderImpl.h"
- #undef GL_CONTEXT_PROVIDER_NAME
-
-+#if !defined(MOZ_GL_PROVIDER)
-+
- #ifdef XP_WIN
- #define GL_CONTEXT_PROVIDER_NAME GLContextProviderWGL
- #include "GLContextProviderImpl.h"
- #undef GL_CONTEXT_PROVIDER_NAME
- #define GL_CONTEXT_PROVIDER_DEFAULT GLContextProviderWGL
- #define DEFAULT_IMPL WGL
- #endif
-
-@@ -59,23 +61,27 @@ namespace gl {
- #define GL_CONTEXT_PROVIDER_NAME GLContextProviderEAGL
- #include "GLContextProviderImpl.h"
- #undef GL_CONTEXT_PROVIDER_NAME
- #ifndef GL_CONTEXT_PROVIDER_DEFAULT
- #define GL_CONTEXT_PROVIDER_DEFAULT GLContextProviderEAGL
- #endif
- #endif
-
-+#else //defined(MOZ_GL_PROVIDER)
-+
- #ifdef MOZ_GL_PROVIDER
- #define GL_CONTEXT_PROVIDER_NAME MOZ_GL_PROVIDER
- #include "GLContextProviderImpl.h"
- #undef GL_CONTEXT_PROVIDER_NAME
- #define GL_CONTEXT_PROVIDER_DEFAULT MOZ_GL_PROVIDER
- #endif
-
-+#endif
-+
- #ifdef GL_CONTEXT_PROVIDER_DEFAULT
- typedef GL_CONTEXT_PROVIDER_DEFAULT GLContextProvider;
- #else
- typedef GLContextProviderNull GLContextProvider;
- #endif
-
- #undef IN_GL_CONTEXT_PROVIDER_H
-
-
diff --git a/mozilla-1434202.patch b/mozilla-1434202.patch
deleted file mode 100644
index d91f55e..0000000
--- a/mozilla-1434202.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
---- a/widget/gtk/nsWindow.cpp
-+++ b/widget/gtk/nsWindow.cpp
-@@ -3785,16 +3785,20 @@ nsWindow::Create(nsIWidget* aParent,
- SetCursor(eCursor_standard);
-
- if (aInitData->mNoAutoHide) {
- gint wmd = ConvertBorderStyles(mBorderStyle);
- if (wmd != -1)
- gdk_window_set_decorations(mGdkWindow, (GdkWMDecoration) wmd);
- }
-
-+ if (!mIsX11Display) {
-+ gtk_widget_set_app_paintable(mShell, TRUE);
-+ }
-+
- // If the popup ignores mouse events, set an empty input shape.
- if (aInitData->mMouseTransparent) {
- cairo_rectangle_int_t rect = { 0, 0, 0, 0 };
- cairo_region_t *region = cairo_region_create_rectangle(&rect);
-
- gdk_window_input_shape_combine_region(mGdkWindow, region, 0, 0);
- cairo_region_destroy(region);
- }
-
diff --git a/mozilla-1434565.patch b/mozilla-1434565.patch
deleted file mode 100644
index bb42348..0000000
--- a/mozilla-1434565.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -up mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24/toolkit/components/remote/nsDBusRemoteService.cpp.1434565 mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24/toolkit/components/remote/nsDBusRemoteService.cpp
---- mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24/toolkit/components/remote/nsDBusRemoteService.cpp.1434565 2018-02-01 14:14:38.902873024 +0100
-+++ mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24/toolkit/components/remote/nsDBusRemoteService.cpp 2018-02-01 14:18:02.906281711 +0100
-@@ -89,7 +89,11 @@ nsDBusRemoteService::OpenURL(DBusMessage
- errorMsg = nsPrintfCString("org.mozilla.%s.Error", mAppName.get());
- reply = dbus_message_new_error(msg, errorMsg.get(), "Wrong argument");
- } else {
-- nsRemoteService::HandleCommandLine(commandLine, nullptr, 0);
-+ guint32 timestamp = gtk_get_current_event_time();
-+ if (timestamp == GDK_CURRENT_TIME) {
-+ timestamp = guint32(g_get_monotonic_time() / 1000);
-+ }
-+ nsRemoteService::HandleCommandLine(commandLine, nullptr, timestamp);
- reply = dbus_message_new_method_return(msg);
- }
-
diff --git a/mozilla-1434572.patch b/mozilla-1434572.patch
deleted file mode 100644
index 835c76f..0000000
--- a/mozilla-1434572.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-diff --git a/widget/gtk/mozgtk/mozgtk.c b/widget/gtk/mozgtk/mozgtk.c
---- a/widget/gtk/mozgtk/mozgtk.c
-+++ b/widget/gtk/mozgtk/mozgtk.c
-@@ -66,16 +66,17 @@ STUB(gdk_screen_get_number)
- STUB(gdk_screen_get_resolution)
- STUB(gdk_screen_get_rgba_visual)
- STUB(gdk_screen_get_root_window)
- STUB(gdk_screen_get_system_visual)
- STUB(gdk_screen_get_width)
- STUB(gdk_screen_height)
- STUB(gdk_screen_is_composited)
- STUB(gdk_screen_width)
-+STUB(gdk_selection_owner_get)
- STUB(gdk_set_program_class)
- STUB(gdk_unicode_to_keyval)
- STUB(gdk_visual_get_depth)
- STUB(gdk_visual_get_system)
- STUB(gdk_window_add_filter)
- STUB(gdk_window_begin_move_drag)
- STUB(gdk_window_begin_resize_drag)
- STUB(gdk_window_destroy)
-diff --git a/widget/gtk/nsClipboardWayland.cpp b/widget/gtk/nsClipboardWayland.cpp
---- a/widget/gtk/nsClipboardWayland.cpp
-+++ b/widget/gtk/nsClipboardWayland.cpp
-@@ -337,21 +346,68 @@ nsRetrievalContextWayland::GetTargets(in
- for (int32_t j = 0; j < length; j++) {
- targetList[j] = mTargetMIMETypes[j];
- }
-
- *aTargetNum = length;
- return targetList;
- }
-
-+struct fastTrackClipboardData
-+{
-+ char* data;
-+ int dataLength;
-+};
-+
-+static void
-+wayland_clipboard_contents_received(GtkClipboard *clipboard,
-+ GtkSelectionData *selection_data,
-+ gpointer data)
-+{
-+ fastTrackClipboardData* clipboardData =
-+ static_cast<fastTrackClipboardData*>(data);
-+
-+ int contentLength = gtk_selection_data_get_length(selection_data);
-+ if (contentLength > 0) {
-+ clipboardData->data = reinterpret_cast<char*>(
-+ g_malloc(sizeof(char)*contentLength));
-+ memcpy(clipboardData->data,
-+ gtk_selection_data_get_data(selection_data),
-+ sizeof(char)*contentLength);
-+ }
-+
-+ clipboardData->dataLength = contentLength;
-+}
-+
- const char*
- nsRetrievalContextWayland::GetClipboardData(const char* aMimeType,
- int32_t aWhichClipboard,
- uint32_t* aContentLength)
- {
-+ /* If actual clipboard data is owned by us we don't need to go
-+ * through Wayland but we ask Gtk+ to directly call data
-+ * getter callback nsClipboard::SelectionGetEvent().
-+ */
-+ GdkAtom selection = GetSelectionAtom(aWhichClipboard);
-+ if (gdk_selection_owner_get(selection)) {
-+ fastTrackClipboardData clipboardData = { nullptr, 0 };
-+ gtk_clipboard_request_contents(gtk_clipboard_get(selection),
-+ gdk_atom_intern(aMimeType, FALSE),
-+ wayland_clipboard_contents_received,
-+ &clipboardData);
-+ *aContentLength = clipboardData.dataLength;
-+ return static_cast<const char*>(clipboardData.data);
-+ }
-+
-+ /* TODO: We need to implement GDK_SELECTION_PRIMARY (X11 text selection)
-+ * for Wayland backend.
-+ */
-+ if (selection == GDK_SELECTION_PRIMARY)
-+ return nullptr;
-+
- NS_ASSERTION(mDataOffer, "Requested data without valid data offer!");
-
- if (!mDataOffer) {
- // TODO
- // Something went wrong. We're requested to provide clipboard data
- // but we haven't got any from wayland. Looks like rhbz#1455915.
- return nullptr;
- }
diff --git a/queue-crash.patch b/queue-crash.patch
deleted file mode 100644
index 962fce9..0000000
--- a/queue-crash.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/widget/gtk/WindowSurfaceWayland.cpp b/widget/gtk/WindowSurfaceWayland.cpp
---- a/widget/gtk/WindowSurfaceWayland.cpp
-+++ b/widget/gtk/WindowSurfaceWayland.cpp
-@@ -268,17 +268,21 @@ nsWaylandDisplay::GetShm()
-
- if (!mShm) {
- // wl_shm is not provided by Gtk so we need to query wayland directly
- // See weston/simple-shm.c and create_display() for reference.
- wl_registry* registry = wl_display_get_registry(mDisplay);
- wl_registry_add_listener(registry, ®istry_listener, this);
-
- wl_proxy_set_queue((struct wl_proxy *)registry, mEventQueue);
-- wl_display_roundtrip_queue(mDisplay, mEventQueue);
-+ if (mEventQueue) {
-+ wl_display_roundtrip_queue(mDisplay, mEventQueue);
-+ } else {
-+ wl_display_roundtrip(mDisplay);
-+ }
-
- MOZ_RELEASE_ASSERT(mShm, "Wayland registry query failed!");
- }
-
- return(mShm);
- }
-
- bool
diff --git a/remote-profile.patch b/remote-profile.patch
deleted file mode 100644
index 919f735..0000000
--- a/remote-profile.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp
-index 386213efebb4..990ba32acbd4 100644
---- a/toolkit/xre/nsAppRunner.cpp
-+++ b/toolkit/xre/nsAppRunner.cpp
-@@ -3995,6 +3995,14 @@ XREMain::XRE_mainStartup(bool* aExitFlag)
- }
- }
-
-+ if (!profile) {
-+#ifdef MOZ_DEV_EDITION
-+ profile = "dev-edition-default";
-+#else
-+ profile = "default";
-+#endif
-+ }
-+
- nsCOMPtr<nsIFile> mutexDir;
- rv = GetSpecialSystemDirectory(OS_TemporaryDirectory, getter_AddRefs(mutexDir));
- if (NS_SUCCEEDED(rv)) {
commit bee8e7456aef10b3298647cb20f73f7b5803c852
Merge: 1e28182 00a8463
Author: Martin Stransky <stransky(a)redhat.com>
Date: Tue Mar 6 15:00:42 2018 +0100
Merged with firefox-59
diff --cc .gitignore
index 9e8b681,d8542f0..3712a80
--- a/.gitignore
+++ b/.gitignore
@@@ -276,7 -276,4 +276,7 @@@ firefox-3.6.4.source.tar.bz
/firefox-langpacks-57.0.4-20180104.tar.xz
/firefox-58.0.source.tar.xz
/firefox-langpacks-58.0-20180123.tar.xz
-/mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24.tar.bz2
+/firefox-58.0.1.source.tar.xz
+/firefox-langpacks-58.0.1-20180130.tar.xz
- /firefox-58.0.2.source.tar.xz
- /firefox-langpacks-58.0.2-20180214.tar.xz
++/2f6a4d2cf42c9d59626061d45c043817cb220814.tar.bz2
++/firefox-langpacks-59.0-20180306.tar.xz
diff --cc firefox.spec
index a12bddf,806f952..109480d
--- a/firefox.spec
+++ b/firefox.spec
@@@ -80,27 -82,29 +80,28 @@@
%global mozappdir %{_libdir}/%{name}
%global mozappdirdev %{_libdir}/%{name}-devel-%{version}
%global langpackdir %{mozappdir}/langpacks
- %global tarballdir %{name}-%{version}%{?pre_version}
-#%global tarballdir %{name}-%{version}%{?pre_version}
-%global tarballdir mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24
++%global release_hash 2f6a4d2cf42c9d59626061d45c043817cb220814
++%global tarballdir mozilla-release-%{release_hash}
-%global official_branding 0
-%global build_langpacks 0
+%global official_branding 1
+%global build_langpacks 1
--%global enable_mozilla_crashreporter 0
++%global enable_mozilla_crashreporter 1
%if !%{debug_build}
%ifarch %{ix86} x86_64
- %global enable_mozilla_crashreporter 1
+ %global enable_mozilla_crashreporter 0
%endif
%endif
Summary: Mozilla Firefox Web browser
Name: firefox
- Version: 58.0.2
+ Version: 59.0
-Release: 0.8%{?pre_tag}%{?dist}
+Release: 1%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
- Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version...
-#Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version...
-Source0: mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24.tar.bz2
++Source0: https://hg.mozilla.org/releases/mozilla-release/archive/%{release_hash}.t...
%if %{build_langpacks}
- Source1: firefox-langpacks-%{version}%{?pre_version}-20180214.tar.xz
-Source1: firefox-langpacks-%{version}%{?pre_version}-20180123.tar.xz
++Source1: firefox-langpacks-%{version}%{?pre_version}-20180306.tar.xz
%endif
Source10: firefox-mozconfig
Source12: firefox-redhat-default-prefs.js
@@@ -302,14 -309,7 +307,8 @@@ This package contains results of tests
%patch25 -p1 -b .rhbz-1219542-s390
%endif
%patch29 -p1 -b .big-endian
- %patch31 -p1 -b .ppc64-s390x-curl
- # Second arch patches - do we still need them?
- #%patch32 -p1 -b .rust-ppc64le
- #%ifarch ppc ppc64 ppc64le
- #%patch35 -p1 -b .ppc-jit
- #%endif
%patch37 -p1 -b .jit-atomic-lucky
+%patch39 -p1 -b .fix-attr-order
%patch3 -p1 -b .arm
@@@ -878,18 -870,34 +862,12 @@@ gtk-update-icon-cache %{_datadir}/icons
#---------------------------------------------------------------------
%changelog
- * Wed Feb 14 2018 Jan Horak <jhorak(a)redhat.com> - 58.0.2-1
- - Update to 58.0.2
-* Fri Feb 2 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.8
-- Fix crash when e10s is disabled and default wl_queue is processed.
-
-* Fri Feb 2 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.7
-- Fixed Firefox X11 desktop file launcher.
-
-* Thu Feb 1 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.6
-- Fixed remote window focus (mozbz#1434565).
-
-* Thu Feb 1 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.5
-- Fixed clipboard copy->paste between Firefox windows
- (mozbz#1434572).
-
-* Wed Jan 31 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.4
-- Fixed remote launch when no profile name is given.
-
-* Wed Jan 31 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.3
-- Added X11 launcher
-
-* Tue Jan 30 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.2
-- Fixed typo at startup script.
-- Added Wayland specific patches mozbz#1431052 mozbz#1432414
- mozbz#1434202
++* Tue Mar 6 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-1
++- Updated to 59.0
-* Mon Jan 29 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.1
-- Update to Firefox 59.0 Beta 4
-- Enabled Wayland backend
+* Tue Feb 13 2018 Martin Stransky <stransky(a)redhat.com> - 58.0.1-3
+- Added build fix for gcc8 by Tom Callaway
- * Wed Feb 07 2018 Fedora Release Engineering <releng(a)fedoraproject.org> - 58.0.1-2
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
-
- * Tue Jan 30 2018 Martin Stransky <stransky(a)redhat.com> - 58.0.1-1
- - Update to 58.0.1
-
* Wed Jan 24 2018 Martin Stransky <stransky(a)redhat.com> - 58.0-4
- Enabled second arches
diff --cc sources
index 645390a,f563c24..fdcd654
--- a/sources
+++ b/sources
@@@ -1,2 -1,2 +1,2 @@@
- SHA512 (firefox-58.0.2.source.tar.xz) = ff748780492fc66b3e44c7e7641f16206e4c09514224c62d37efac2c59877bdf428a3670bfb50407166d7b505d4e2ea020626fd776b87f6abb6bc5d2e54c773f
- SHA512 (firefox-langpacks-58.0.2-20180214.tar.xz) = 9c972daaab84915dce22257b99ba1210e97862f6ba7cc71a30de837e6701b2039022e98e3c9d452d16003986066d62ad2ce3392e33554dc85c195dccbe471ad0
-SHA512 (firefox-langpacks-58.0-20180123.tar.xz) = 6781bf0a5d68bdaa513f85404b8d9111bef8d2aa6d12e1b5fa8db2e4f44fce2d2642b9b5a70a6fc92f0cb96167f6895e17505bdc212aea987240cfb018f340f5
-SHA512 (mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24.tar.bz2) = 77d6455adc011289391a63c2de9f05be78b6c293f0dd6cd064b6d0c4ba3b50a7cadfc190000aeaeb9c276e43de60ecfe30829426da2366110c407bd0197d15ef
++SHA512 (2f6a4d2cf42c9d59626061d45c043817cb220814.tar.bz2) = 78d7e6da9062cdf0883097fa5bbad7c7db3f9b28dae9413e1ed880f34bb9fbfd9b2524b2c25fbca55bcf796b5023c42131758bf5bdee6c404e572bc751287215
++SHA512 (firefox-langpacks-59.0-20180306.tar.xz) = 7eda70eca83679581ef3e015e066f9d1a338bf7aab54f3f851a04d68d3155190d5e03cafca1f9716ff33648d78fec74ec07c2041a9a81c7aed5f8649ca367712
commit 1e281820aa5ff954528782e7cccdbb27a6003be5
Author: Jan Horak <jhorak(a)redhat.com>
Date: Wed Feb 14 15:32:49 2018 +0100
Fix prefs because of rpm
diff --git a/firefox.spec b/firefox.spec
index 483c77a..a12bddf 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -465,6 +465,9 @@ echo "ac_add_options --disable-ion" >> .mozconfig
echo "ac_add_options --disable-stylo" >> .mozconfig
%endif
+# Avoid issues with rpm
+chmod a-x third_party/rust/itertools/src/lib.rs
+
#---------------------------------------------------------------------
%build
commit 00a8463181c33d1586b0c4c73c55703a296c6fde
Author: Martin Stransky <stransky(a)redhat.com>
Date: Fri Feb 2 16:49:59 2018 +0100
Fix crash when e10s is disabled and default wl_queue is processed.
diff --git a/firefox.spec b/firefox.spec
index 9ff131b..806f952 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -98,7 +98,7 @@ ExclusiveArch: x86_64 i686
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 59.0
-Release: 0.7%{?pre_tag}%{?dist}
+Release: 0.8%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
#Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version...
@@ -164,6 +164,7 @@ Patch453: mozilla-1433081.patch
Patch454: remote-profile.patch
Patch455: mozilla-1434572.patch
Patch456: mozilla-1434565.patch
+Patch457: queue-crash.patch
# Debian patches
Patch500: mozilla-440908.patch
@@ -335,6 +336,7 @@ This package contains results of tests executed during build.
%patch454 -p1 -b .remote-profile
%patch455 -p1 -b .1434572
%patch456 -p1 -b .1434565
+%patch457 -p1 -b .queue-crash
# Patch for big endian platforms only
%if 0%{?big_endian}
@@ -868,6 +870,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Fri Feb 2 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.8
+- Fix crash when e10s is disabled and default wl_queue is processed.
+
* Fri Feb 2 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.7
- Fixed Firefox X11 desktop file launcher.
diff --git a/queue-crash.patch b/queue-crash.patch
new file mode 100644
index 0000000..962fce9
--- /dev/null
+++ b/queue-crash.patch
@@ -0,0 +1,26 @@
+diff --git a/widget/gtk/WindowSurfaceWayland.cpp b/widget/gtk/WindowSurfaceWayland.cpp
+--- a/widget/gtk/WindowSurfaceWayland.cpp
++++ b/widget/gtk/WindowSurfaceWayland.cpp
+@@ -268,17 +268,21 @@ nsWaylandDisplay::GetShm()
+
+ if (!mShm) {
+ // wl_shm is not provided by Gtk so we need to query wayland directly
+ // See weston/simple-shm.c and create_display() for reference.
+ wl_registry* registry = wl_display_get_registry(mDisplay);
+ wl_registry_add_listener(registry, ®istry_listener, this);
+
+ wl_proxy_set_queue((struct wl_proxy *)registry, mEventQueue);
+- wl_display_roundtrip_queue(mDisplay, mEventQueue);
++ if (mEventQueue) {
++ wl_display_roundtrip_queue(mDisplay, mEventQueue);
++ } else {
++ wl_display_roundtrip(mDisplay);
++ }
+
+ MOZ_RELEASE_ASSERT(mShm, "Wayland registry query failed!");
+ }
+
+ return(mShm);
+ }
+
+ bool
commit 3a43e3dabafce202a0d1ea6961d74f2c4c17b6e4
Author: Martin Stransky <stransky(a)redhat.com>
Date: Fri Feb 2 10:02:38 2018 +0100
Fixed Firefox X11 desktop file launcher.
diff --git a/firefox-x11.desktop b/firefox-x11.desktop
index af103a5..55747b4 100644
--- a/firefox-x11.desktop
+++ b/firefox-x11.desktop
@@ -1,6 +1,6 @@
[Desktop Entry]
Version=1.0
-Name=Firefox
+Name=Firefox X11
GenericName=Web Browser
GenericName[ca]=Navegador web
GenericName[cs]=Webový prohlížeč
@@ -53,7 +53,7 @@ Keywords=web;browser;internet;
Actions=new-window;new-private-window;
[Desktop Action new-window]
-Name=Open a New Window
+Name=Open a New Window (X11)
Name[ach]=Dirica manyen
Name[af]=Nuwe venster
Name[an]=Nueva finestra
@@ -163,7 +163,7 @@ Name[zh-TW]=開新視窗
Exec=firefox-x11 %u
[Desktop Action new-private-window]
-Name=Open a New Private Window
+Name=Open a New Private Window (X11)
Name[ach]=Dirica manyen me mung
Name[af]=Nuwe privaatvenster
Name[an]=Nueva finestra privada
diff --git a/firefox.spec b/firefox.spec
index eb01e38..9ff131b 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -98,7 +98,7 @@ ExclusiveArch: x86_64 i686
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 59.0
-Release: 0.6%{?pre_tag}%{?dist}
+Release: 0.7%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
#Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version...
@@ -868,6 +868,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Fri Feb 2 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.7
+- Fixed Firefox X11 desktop file launcher.
+
* Thu Feb 1 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.6
- Fixed remote window focus (mozbz#1434565).
commit c8311c34d1f514d8e7a255ad4ba8381cd7fafbf5
Author: Martin Stransky <stransky(a)redhat.com>
Date: Thu Feb 1 14:20:12 2018 +0100
Fixed remote window focus (mozbz#1434565)
diff --git a/firefox.spec b/firefox.spec
index cb2556a..eb01e38 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -98,7 +98,7 @@ ExclusiveArch: x86_64 i686
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 59.0
-Release: 0.5%{?pre_tag}%{?dist}
+Release: 0.6%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
#Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version...
@@ -163,6 +163,7 @@ Patch452: mozilla-1434202.patch
Patch453: mozilla-1433081.patch
Patch454: remote-profile.patch
Patch455: mozilla-1434572.patch
+Patch456: mozilla-1434565.patch
# Debian patches
Patch500: mozilla-440908.patch
@@ -333,6 +334,7 @@ This package contains results of tests executed during build.
%patch453 -p1 -b .1433081
%patch454 -p1 -b .remote-profile
%patch455 -p1 -b .1434572
+%patch456 -p1 -b .1434565
# Patch for big endian platforms only
%if 0%{?big_endian}
@@ -866,6 +868,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Thu Feb 1 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.6
+- Fixed remote window focus (mozbz#1434565).
+
* Thu Feb 1 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.5
- Fixed clipboard copy->paste between Firefox windows
(mozbz#1434572).
diff --git a/mozilla-1434565.patch b/mozilla-1434565.patch
new file mode 100644
index 0000000..bb42348
--- /dev/null
+++ b/mozilla-1434565.patch
@@ -0,0 +1,16 @@
+diff -up mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24/toolkit/components/remote/nsDBusRemoteService.cpp.1434565 mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24/toolkit/components/remote/nsDBusRemoteService.cpp
+--- mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24/toolkit/components/remote/nsDBusRemoteService.cpp.1434565 2018-02-01 14:14:38.902873024 +0100
++++ mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24/toolkit/components/remote/nsDBusRemoteService.cpp 2018-02-01 14:18:02.906281711 +0100
+@@ -89,7 +89,11 @@ nsDBusRemoteService::OpenURL(DBusMessage
+ errorMsg = nsPrintfCString("org.mozilla.%s.Error", mAppName.get());
+ reply = dbus_message_new_error(msg, errorMsg.get(), "Wrong argument");
+ } else {
+- nsRemoteService::HandleCommandLine(commandLine, nullptr, 0);
++ guint32 timestamp = gtk_get_current_event_time();
++ if (timestamp == GDK_CURRENT_TIME) {
++ timestamp = guint32(g_get_monotonic_time() / 1000);
++ }
++ nsRemoteService::HandleCommandLine(commandLine, nullptr, timestamp);
+ reply = dbus_message_new_method_return(msg);
+ }
+
commit 86ba393fb918101970bf57c766dd211c76580243
Author: Martin Stransky <stransky(a)redhat.com>
Date: Thu Feb 1 11:34:48 2018 +0100
Fixed clipboard copy->paste between Firefox windows (mozbz#1434572).
diff --git a/firefox.spec b/firefox.spec
index cc4f2bf..cb2556a 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -98,7 +98,7 @@ ExclusiveArch: x86_64 i686
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 59.0
-Release: 0.4%{?pre_tag}%{?dist}
+Release: 0.5%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
#Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version...
@@ -162,6 +162,7 @@ Patch451: mozilla-1432414.patch
Patch452: mozilla-1434202.patch
Patch453: mozilla-1433081.patch
Patch454: remote-profile.patch
+Patch455: mozilla-1434572.patch
# Debian patches
Patch500: mozilla-440908.patch
@@ -331,6 +332,7 @@ This package contains results of tests executed during build.
%patch452 -p1 -b .1434202
%patch453 -p1 -b .1433081
%patch454 -p1 -b .remote-profile
+%patch455 -p1 -b .1434572
# Patch for big endian platforms only
%if 0%{?big_endian}
@@ -864,6 +866,10 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Thu Feb 1 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.5
+- Fixed clipboard copy->paste between Firefox windows
+ (mozbz#1434572).
+
* Wed Jan 31 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.4
- Fixed remote launch when no profile name is given.
diff --git a/mozilla-1434572.patch b/mozilla-1434572.patch
new file mode 100644
index 0000000..835c76f
--- /dev/null
+++ b/mozilla-1434572.patch
@@ -0,0 +1,93 @@
+diff --git a/widget/gtk/mozgtk/mozgtk.c b/widget/gtk/mozgtk/mozgtk.c
+--- a/widget/gtk/mozgtk/mozgtk.c
++++ b/widget/gtk/mozgtk/mozgtk.c
+@@ -66,16 +66,17 @@ STUB(gdk_screen_get_number)
+ STUB(gdk_screen_get_resolution)
+ STUB(gdk_screen_get_rgba_visual)
+ STUB(gdk_screen_get_root_window)
+ STUB(gdk_screen_get_system_visual)
+ STUB(gdk_screen_get_width)
+ STUB(gdk_screen_height)
+ STUB(gdk_screen_is_composited)
+ STUB(gdk_screen_width)
++STUB(gdk_selection_owner_get)
+ STUB(gdk_set_program_class)
+ STUB(gdk_unicode_to_keyval)
+ STUB(gdk_visual_get_depth)
+ STUB(gdk_visual_get_system)
+ STUB(gdk_window_add_filter)
+ STUB(gdk_window_begin_move_drag)
+ STUB(gdk_window_begin_resize_drag)
+ STUB(gdk_window_destroy)
+diff --git a/widget/gtk/nsClipboardWayland.cpp b/widget/gtk/nsClipboardWayland.cpp
+--- a/widget/gtk/nsClipboardWayland.cpp
++++ b/widget/gtk/nsClipboardWayland.cpp
+@@ -337,21 +346,68 @@ nsRetrievalContextWayland::GetTargets(in
+ for (int32_t j = 0; j < length; j++) {
+ targetList[j] = mTargetMIMETypes[j];
+ }
+
+ *aTargetNum = length;
+ return targetList;
+ }
+
++struct fastTrackClipboardData
++{
++ char* data;
++ int dataLength;
++};
++
++static void
++wayland_clipboard_contents_received(GtkClipboard *clipboard,
++ GtkSelectionData *selection_data,
++ gpointer data)
++{
++ fastTrackClipboardData* clipboardData =
++ static_cast<fastTrackClipboardData*>(data);
++
++ int contentLength = gtk_selection_data_get_length(selection_data);
++ if (contentLength > 0) {
++ clipboardData->data = reinterpret_cast<char*>(
++ g_malloc(sizeof(char)*contentLength));
++ memcpy(clipboardData->data,
++ gtk_selection_data_get_data(selection_data),
++ sizeof(char)*contentLength);
++ }
++
++ clipboardData->dataLength = contentLength;
++}
++
+ const char*
+ nsRetrievalContextWayland::GetClipboardData(const char* aMimeType,
+ int32_t aWhichClipboard,
+ uint32_t* aContentLength)
+ {
++ /* If actual clipboard data is owned by us we don't need to go
++ * through Wayland but we ask Gtk+ to directly call data
++ * getter callback nsClipboard::SelectionGetEvent().
++ */
++ GdkAtom selection = GetSelectionAtom(aWhichClipboard);
++ if (gdk_selection_owner_get(selection)) {
++ fastTrackClipboardData clipboardData = { nullptr, 0 };
++ gtk_clipboard_request_contents(gtk_clipboard_get(selection),
++ gdk_atom_intern(aMimeType, FALSE),
++ wayland_clipboard_contents_received,
++ &clipboardData);
++ *aContentLength = clipboardData.dataLength;
++ return static_cast<const char*>(clipboardData.data);
++ }
++
++ /* TODO: We need to implement GDK_SELECTION_PRIMARY (X11 text selection)
++ * for Wayland backend.
++ */
++ if (selection == GDK_SELECTION_PRIMARY)
++ return nullptr;
++
+ NS_ASSERTION(mDataOffer, "Requested data without valid data offer!");
+
+ if (!mDataOffer) {
+ // TODO
+ // Something went wrong. We're requested to provide clipboard data
+ // but we haven't got any from wayland. Looks like rhbz#1455915.
+ return nullptr;
+ }
commit e757b29a9fe4e2426ab8338ee7b223c588958280
Author: Martin Stransky <stransky(a)redhat.com>
Date: Wed Jan 31 12:13:59 2018 +0100
Fixed remote launch when no profile name is given.
diff --git a/firefox.spec b/firefox.spec
index 1d14db6..cc4f2bf 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -98,7 +98,7 @@ ExclusiveArch: x86_64 i686
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 59.0
-Release: 0.3%{?pre_tag}%{?dist}
+Release: 0.4%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
#Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version...
@@ -864,6 +864,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Wed Jan 31 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.4
+- Fixed remote launch when no profile name is given.
+
* Wed Jan 31 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.3
- Added X11 launcher
commit e113d3e05d1724ec5f7bbe98a5d0b0982b771981
Author: Martin Stransky <stransky(a)redhat.com>
Date: Wed Jan 31 10:17:22 2018 +0100
Fix dbus remote when profile is not given
diff --git a/firefox-x11.sh.in b/firefox-x11.sh.in
new file mode 100644
index 0000000..d1b48c7
--- /dev/null
+++ b/firefox-x11.sh.in
@@ -0,0 +1,7 @@
+#!/bin/bash
+#
+# Run Firefox under X11
+#
+
+export GDK_BACKEND=x11
+/usr/bin/firefox "$@"
diff --git a/firefox.spec b/firefox.spec
index 853456b..1d14db6 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -161,6 +161,7 @@ Patch450: mozilla-1431052.patch
Patch451: mozilla-1432414.patch
Patch452: mozilla-1434202.patch
Patch453: mozilla-1433081.patch
+Patch454: remote-profile.patch
# Debian patches
Patch500: mozilla-440908.patch
@@ -329,6 +330,7 @@ This package contains results of tests executed during build.
%patch451 -p1 -b .1432414
%patch452 -p1 -b .1434202
%patch453 -p1 -b .1433081
+%patch454 -p1 -b .remote-profile
# Patch for big endian platforms only
%if 0%{?big_endian}
diff --git a/remote-profile.patch b/remote-profile.patch
new file mode 100644
index 0000000..919f735
--- /dev/null
+++ b/remote-profile.patch
@@ -0,0 +1,19 @@
+diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp
+index 386213efebb4..990ba32acbd4 100644
+--- a/toolkit/xre/nsAppRunner.cpp
++++ b/toolkit/xre/nsAppRunner.cpp
+@@ -3995,6 +3995,14 @@ XREMain::XRE_mainStartup(bool* aExitFlag)
+ }
+ }
+
++ if (!profile) {
++#ifdef MOZ_DEV_EDITION
++ profile = "dev-edition-default";
++#else
++ profile = "default";
++#endif
++ }
++
+ nsCOMPtr<nsIFile> mutexDir;
+ rv = GetSpecialSystemDirectory(OS_TemporaryDirectory, getter_AddRefs(mutexDir));
+ if (NS_SUCCEEDED(rv)) {
commit 4e625cc771099ce469b4c1590a8299fcf8c05d2e
Author: Martin Stransky <stransky(a)redhat.com>
Date: Wed Jan 31 10:08:11 2018 +0100
Added firefox-x11 launch script, make wayland default
diff --git a/firefox-x11.desktop b/firefox-x11.desktop
index f13e600..af103a5 100644
--- a/firefox-x11.desktop
+++ b/firefox-x11.desktop
@@ -42,7 +42,7 @@ Comment[pt]=Navegue na Internet
Comment[pt_BR]=Navegue na Internet
Comment[sk]=Prehliadanie internetu
Comment[sv]=Surfa på webben
-Exec=firefox %u
+Exec=firefox-x11 %u
Icon=firefox
Terminal=false
Type=Application
@@ -160,7 +160,7 @@ Name[zh-CN]=新建窗口
Name[zh-TW]=開新視窗
-Exec=firefox %u
+Exec=firefox-x11 %u
[Desktop Action new-private-window]
Name=Open a New Private Window
@@ -268,5 +268,5 @@ Name[wo]=Panlanteeru biir bu bees
Name[xh]=Ifestile yangasese entsha
Name[zh-CN]=新建隐私浏览窗口
Name[zh-TW]=新增隱私視窗
-Exec=firefox --private-window %u
+Exec=firefox-x11 --private-window %u
diff --git a/firefox.desktop b/firefox.desktop
index 63097cc..f13e600 100644
--- a/firefox.desktop
+++ b/firefox.desktop
@@ -42,7 +42,7 @@ Comment[pt]=Navegue na Internet
Comment[pt_BR]=Navegue na Internet
Comment[sk]=Prehliadanie internetu
Comment[sv]=Surfa på webben
-Exec=firefox-wayland %u
+Exec=firefox %u
Icon=firefox
Terminal=false
Type=Application
@@ -160,7 +160,7 @@ Name[zh-CN]=新建窗口
Name[zh-TW]=開新視窗
-Exec=firefox-wayland %u
+Exec=firefox %u
[Desktop Action new-private-window]
Name=Open a New Private Window
@@ -268,5 +268,5 @@ Name[wo]=Panlanteeru biir bu bees
Name[xh]=Ifestile yangasese entsha
Name[zh-CN]=新建隐私浏览窗口
Name[zh-TW]=新增隱私視窗
-Exec=firefox-wayland --private-window %u
+Exec=firefox --private-window %u
diff --git a/firefox.sh.in b/firefox.sh.in
index fec7bec..c546795 100644
--- a/firefox.sh.in
+++ b/firefox.sh.in
@@ -66,14 +66,6 @@ MOZ_EXTENSIONS_PROFILE_DIR="$HOME/.mozilla/extensions/{ec8030f7-c20a-464f-9b0e-1
MOZ_PROGRAM="$MOZ_DIST_BIN/$MOZ_FIREFOX_FILE"
MOZ_LAUNCHER="$MOZ_DIST_BIN/run-mozilla.sh"
-
-##
-## Set X11 backed as a default one
-##
-if ! [ "$GDK_BACKEND" ]; then
- export GDK_BACKEND=x11
-fi
-
##
## Set MOZ_GRE_CONF
##
diff --git a/firefox.spec b/firefox.spec
index 181a470..853456b 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -117,6 +117,7 @@ Source26: distribution.ini
Source27: google-api-key
Source28: firefox-wayland.sh.in
Source29: firefox-x11.desktop
+Source30: firefox-x11.sh.in
# Build patches
Patch3: mozilla-build-arm.patch
@@ -592,6 +593,8 @@ desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE29}
%{__chmod} 755 %{buildroot}%{_bindir}/firefox
%{__cat} %{SOURCE28} > %{buildroot}%{_bindir}/firefox-wayland
%{__chmod} 755 %{buildroot}%{_bindir}/firefox-wayland
+%{__cat} %{SOURCE30} > %{buildroot}%{_bindir}/firefox-x11
+%{__chmod} 755 %{buildroot}%{_bindir}/firefox-x11
%{__install} -p -D -m 644 %{SOURCE23} %{buildroot}%{_mandir}/man1/firefox.1
@@ -791,6 +794,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%files -f %{name}.lang
%{_bindir}/firefox
%{_bindir}/firefox-wayland
+%{_bindir}/firefox-x11
%{mozappdir}/firefox
%{mozappdir}/firefox-bin
%doc %{_mandir}/man1/*
commit a0558c67a07d7b28fcf90e2da11148ff33fb0310
Author: Martin Stransky <stransky(a)redhat.com>
Date: Wed Jan 31 09:19:11 2018 +0100
Added X11 launcher
diff --git a/firefox-mozconfig b/firefox-mozconfig
index 9ea4603..953df70 100644
--- a/firefox-mozconfig
+++ b/firefox-mozconfig
@@ -20,6 +20,7 @@ ac_add_options --with-mozilla-api-keyfile=../mozilla-api-key
ac_add_options --with-google-api-keyfile=../google-api-key
ac_add_options --enable-release
ac_add_options --enable-pie
+ac_add_options --with-gl-provider=EGL
# Workaround for mozbz#1341234
ac_add_options BINDGEN_CFLAGS="$(pkg-config nspr pixman-1 --cflags)"
diff --git a/firefox-x11.desktop b/firefox-x11.desktop
new file mode 100644
index 0000000..f13e600
--- /dev/null
+++ b/firefox-x11.desktop
@@ -0,0 +1,272 @@
+[Desktop Entry]
+Version=1.0
+Name=Firefox
+GenericName=Web Browser
+GenericName[ca]=Navegador web
+GenericName[cs]=Webový prohlížeč
+GenericName[es]=Navegador web
+GenericName[fa]=مرورگر اینترنتی
+GenericName[fi]=WWW-selain
+GenericName[fr]=Navigateur Web
+GenericName[hu]=Webböngésző
+GenericName[it]=Browser Web
+GenericName[ja]=ウェブ・ブラウザ
+GenericName[ko]=웹 브라우저
+GenericName[nb]=Nettleser
+GenericName[nl]=Webbrowser
+GenericName[nn]=Nettlesar
+GenericName[no]=Nettleser
+GenericName[pl]=Przeglądarka WWW
+GenericName[pt]=Navegador Web
+GenericName[pt_BR]=Navegador Web
+GenericName[sk]=Internetový prehliadač
+GenericName[sv]=Webbläsare
+Comment=Browse the Web
+Comment[ca]=Navegueu per el web
+Comment[cs]=Prohlížení stránek World Wide Webu
+Comment[de]=Im Internet surfen
+Comment[es]=Navegue por la web
+Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید
+Comment[fi]=Selaa Internetin WWW-sivuja
+Comment[fr]=Navigue sur Internet
+Comment[hu]=A világháló böngészése
+Comment[it]=Esplora il web
+Comment[ja]=ウェブを閲覧します
+Comment[ko]=웹을 돌아 다닙니다
+Comment[nb]=Surf på nettet
+Comment[nl]=Verken het internet
+Comment[nn]=Surf på nettet
+Comment[no]=Surf på nettet
+Comment[pl]=Przeglądanie stron WWW
+Comment[pt]=Navegue na Internet
+Comment[pt_BR]=Navegue na Internet
+Comment[sk]=Prehliadanie internetu
+Comment[sv]=Surfa på webben
+Exec=firefox %u
+Icon=firefox
+Terminal=false
+Type=Application
+MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
+StartupNotify=true
+Categories=Network;WebBrowser;
+Keywords=web;browser;internet;
+Actions=new-window;new-private-window;
+
+[Desktop Action new-window]
+Name=Open a New Window
+Name[ach]=Dirica manyen
+Name[af]=Nuwe venster
+Name[an]=Nueva finestra
+Name[ar]=نافذة جديدة
+Name[as]=নতুন উইন্ডো
+Name[ast]=Ventana nueva
+Name[az]=Yeni Pəncərə
+Name[be]=Новае акно
+Name[bg]=Нов прозорец
+Name[bn-BD]=নতুন উইন্ডো (N)
+Name[bn-IN]=নতুন উইন্ডো
+Name[br]=Prenestr nevez
+Name[brx]=गोदान उइन्ड'(N)
+Name[bs]=Novi prozor
+Name[ca]=Finestra nova
+Name[cak]=K'ak'a' tzuwäch
+Name[cs]=Nové okno
+Name[cy]=Ffenestr Newydd
+Name[da]=Nyt vindue
+Name[de]=Neues Fenster
+Name[dsb]=Nowe wokno
+Name[el]=Νέο παράθυρο
+Name[en-GB]=New Window
+Name[en-US]=New Window
+Name[en-ZA]=New Window
+Name[eo]=Nova fenestro
+Name[es-AR]=Nueva ventana
+Name[es-CL]=Nueva ventana
+Name[es-ES]=Nueva ventana
+Name[es-MX]=Nueva ventana
+Name[et]=Uus aken
+Name[eu]=Leiho berria
+Name[fa]=پنجره جدید
+Name[ff]=Henorde Hesere
+Name[fi]=Uusi ikkuna
+Name[fr]=Nouvelle fenêtre
+Name[fy-NL]=Nij finster
+Name[ga-IE]=Fuinneog Nua
+Name[gd]=Uinneag ùr
+Name[gl]=Nova xanela
+Name[gn]=Ovetã pyahu
+Name[gu-IN]=નવી વિન્ડો
+Name[he]=חלון חדש
+Name[hi-IN]=नया विंडो
+Name[hr]=Novi prozor
+Name[hsb]=Nowe wokno
+Name[hu]=Új ablak
+Name[hy-AM]=Նոր Պատուհան
+Name[id]=Jendela Baru
+Name[is]=Nýr gluggi
+Name[it]=Nuova finestra
+Name[ja]=新しいウィンドウ
+Name[ja-JP-mac]=新規ウインドウ
+Name[ka]=ახალი ფანჯარა
+Name[kk]=Жаңа терезе
+Name[km]=បង្អួចថ្មី
+Name[kn]=ಹೊಸ ಕಿಟಕಿ
+Name[ko]=새 창
+Name[kok]=नवें जनेल
+Name[ks]=نئئ وِنڈو
+Name[lij]=Neuvo barcon
+Name[lo]=ຫນ້າຕ່າງໃຫມ່
+Name[lt]=Naujas langas
+Name[ltg]=Jauns lūgs
+Name[lv]=Jauns logs
+Name[mai]=नव विंडो
+Name[mk]=Нов прозорец
+Name[ml]=പുതിയ ജാലകം
+Name[mr]=नवीन पटल
+Name[ms]=Tetingkap Baru
+Name[my]=ဝင်းဒိုးအသစ်
+Name[nb-NO]=Nytt vindu
+Name[ne-NP]=नयाँ सञ्झ्याल
+Name[nl]=Nieuw venster
+Name[nn-NO]=Nytt vindauge
+Name[or]=ନୂତନ ୱିଣ୍ଡୋ
+Name[pa-IN]=ਨਵੀਂ ਵਿੰਡੋ
+Name[pl]=Nowe okno
+Name[pt-BR]=Nova janela
+Name[pt-PT]=Nova janela
+Name[rm]=Nova fanestra
+Name[ro]=Fereastră nouă
+Name[ru]=Новое окно
+Name[sat]=नावा विंडो (N)
+Name[si]=නව කවුළුවක්
+Name[sk]=Nové okno
+Name[sl]=Novo okno
+Name[son]=Zanfun taaga
+Name[sq]=Dritare e Re
+Name[sr]=Нови прозор
+Name[sv-SE]=Nytt fönster
+Name[ta]=புதிய சாளரம்
+Name[te]=కొత్త విండో
+Name[th]=หน้าต่างใหม่
+Name[tr]=Yeni pencere
+Name[tsz]=Eraatarakua jimpani
+Name[uk]=Нове вікно
+Name[ur]=نیا دریچہ
+Name[uz]=Yangi oyna
+Name[vi]=Cửa sổ mới
+Name[wo]=Palanteer bu bees
+Name[xh]=Ifestile entsha
+Name[zh-CN]=新建窗口
+Name[zh-TW]=開新視窗
+
+
+Exec=firefox %u
+
+[Desktop Action new-private-window]
+Name=Open a New Private Window
+Name[ach]=Dirica manyen me mung
+Name[af]=Nuwe privaatvenster
+Name[an]=Nueva finestra privada
+Name[ar]=نافذة خاصة جديدة
+Name[as]=নতুন ব্যক্তিগত উইন্ডো
+Name[ast]=Ventana privada nueva
+Name[az]=Yeni Məxfi Pəncərə
+Name[be]=Новае акно адасаблення
+Name[bg]=Нов прозорец за поверително сърфиране
+Name[bn-BD]=নতুন ব্যক্তিগত উইন্ডো
+Name[bn-IN]=নতুন ব্যক্তিগত উইন্ডো
+Name[br]=Prenestr merdeiñ prevez nevez
+Name[brx]=गोदान प्राइभेट उइन्ड'
+Name[bs]=Novi privatni prozor
+Name[ca]=Finestra privada nova
+Name[cak]=K'ak'a' ichinan tzuwäch
+Name[cs]=Nové anonymní okno
+Name[cy]=Ffenestr Breifat Newydd
+Name[da]=Nyt privat vindue
+Name[de]=Neues privates Fenster
+Name[dsb]=Nowe priwatne wokno
+Name[el]=Νέο παράθυρο ιδιωτικής περιήγησης
+Name[en-GB]=New Private Window
+Name[en-US]=New Private Window
+Name[en-ZA]=New Private Window
+Name[eo]=Nova privata fenestro
+Name[es-AR]=Nueva ventana privada
+Name[es-CL]=Nueva ventana privada
+Name[es-ES]=Nueva ventana privada
+Name[es-MX]=Nueva ventana privada
+Name[et]=Uus privaatne aken
+Name[eu]=Leiho pribatu berria
+Name[fa]=پنجره ناشناس جدید
+Name[ff]=Henorde Suturo Hesere
+Name[fi]=Uusi yksityinen ikkuna
+Name[fr]=Nouvelle fenêtre de navigation privée
+Name[fy-NL]=Nij priveefinster
+Name[ga-IE]=Fuinneog Nua Phríobháideach
+Name[gd]=Uinneag phrìobhaideach ùr
+Name[gl]=Nova xanela privada
+Name[gn]=Ovetã ñemi pyahu
+Name[gu-IN]=નવી ખાનગી વિન્ડો
+Name[he]=חלון פרטי חדש
+Name[hi-IN]=नयी निजी विंडो
+Name[hr]=Novi privatni prozor
+Name[hsb]=Nowe priwatne wokno
+Name[hu]=Új privát ablak
+Name[hy-AM]=Սկսել Գաղտնի դիտարկում
+Name[id]=Jendela Mode Pribadi Baru
+Name[is]=Nýr huliðsgluggi
+Name[it]=Nuova finestra anonima
+Name[ja]=新しいプライベートウィンドウ
+Name[ja-JP-mac]=新規プライベートウインドウ
+Name[ka]=ახალი პირადი ფანჯარა
+Name[kk]=Жаңа жекелік терезе
+Name[km]=បង្អួចឯកជនថ្មី
+Name[kn]=ಹೊಸ ಖಾಸಗಿ ಕಿಟಕಿ
+Name[ko]=새 사생활 보호 모드
+Name[kok]=नवो खाजगी विंडो
+Name[ks]=نْو پرایوٹ وینڈو&
+Name[lij]=Neuvo barcon privou
+Name[lo]=ເປີດຫນ້າຕ່າງສວນຕົວຂື້ນມາໃຫມ່
+Name[lt]=Naujas privataus naršymo langas
+Name[ltg]=Jauns privatais lūgs
+Name[lv]=Jauns privātais logs
+Name[mai]=नया निज विंडो (W)
+Name[mk]=Нов приватен прозорец
+Name[ml]=പുതിയ സ്വകാര്യ ജാലകം
+Name[mr]=नवीन वैयक्तिक पटल
+Name[ms]=Tetingkap Persendirian Baharu
+Name[my]=New Private Window
+Name[nb-NO]=Nytt privat vindu
+Name[ne-NP]=नयाँ निजी सञ्झ्याल
+Name[nl]=Nieuw privévenster
+Name[nn-NO]=Nytt privat vindauge
+Name[or]=ନୂତନ ବ୍ୟକ୍ତିଗତ ୱିଣ୍ଡୋ
+Name[pa-IN]=ਨਵੀਂ ਪ੍ਰਾਈਵੇਟ ਵਿੰਡੋ
+Name[pl]=Nowe okno prywatne
+Name[pt-BR]=Nova janela privativa
+Name[pt-PT]=Nova janela privada
+Name[rm]=Nova fanestra privata
+Name[ro]=Fereastră privată nouă
+Name[ru]=Новое приватное окно
+Name[sat]=नावा निजेराक् विंडो (W )
+Name[si]=නව පුද්ගලික කවුළුව (W)
+Name[sk]=Nové okno v režime Súkromné prehliadanie
+Name[sl]=Novo zasebno okno
+Name[son]=Sutura zanfun taaga
+Name[sq]=Dritare e Re Private
+Name[sr]=Нови приватан прозор
+Name[sv-SE]=Nytt privat fönster
+Name[ta]=புதிய தனிப்பட்ட சாளரம்
+Name[te]=కొత్త ఆంతరంగిక విండో
+Name[th]=หน้าต่างส่วนตัวใหม่
+Name[tr]=Yeni gizli pencere
+Name[tsz]=Juchiiti eraatarakua jimpani
+Name[uk]=Приватне вікно
+Name[ur]=نیا نجی دریچہ
+Name[uz]=Yangi maxfiy oyna
+Name[vi]=Cửa sổ riêng tư mới
+Name[wo]=Panlanteeru biir bu bees
+Name[xh]=Ifestile yangasese entsha
+Name[zh-CN]=新建隐私浏览窗口
+Name[zh-TW]=新增隱私視窗
+Exec=firefox --private-window %u
+
diff --git a/firefox.desktop b/firefox.desktop
index f13e600..63097cc 100644
--- a/firefox.desktop
+++ b/firefox.desktop
@@ -42,7 +42,7 @@ Comment[pt]=Navegue na Internet
Comment[pt_BR]=Navegue na Internet
Comment[sk]=Prehliadanie internetu
Comment[sv]=Surfa på webben
-Exec=firefox %u
+Exec=firefox-wayland %u
Icon=firefox
Terminal=false
Type=Application
@@ -160,7 +160,7 @@ Name[zh-CN]=新建窗口
Name[zh-TW]=開新視窗
-Exec=firefox %u
+Exec=firefox-wayland %u
[Desktop Action new-private-window]
Name=Open a New Private Window
@@ -268,5 +268,5 @@ Name[wo]=Panlanteeru biir bu bees
Name[xh]=Ifestile yangasese entsha
Name[zh-CN]=新建隐私浏览窗口
Name[zh-TW]=新增隱私視窗
-Exec=firefox --private-window %u
+Exec=firefox-wayland --private-window %u
diff --git a/firefox.spec b/firefox.spec
index 2dbd361..181a470 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -98,7 +98,7 @@ ExclusiveArch: x86_64 i686
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 59.0
-Release: 0.2%{?pre_tag}%{?dist}
+Release: 0.3%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
#Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version...
@@ -116,6 +116,7 @@ Source25: firefox-symbolic.svg
Source26: distribution.ini
Source27: google-api-key
Source28: firefox-wayland.sh.in
+Source29: firefox-x11.desktop
# Build patches
Patch3: mozilla-build-arm.patch
@@ -158,6 +159,7 @@ Patch413: mozilla-1353817.patch
Patch450: mozilla-1431052.patch
Patch451: mozilla-1432414.patch
Patch452: mozilla-1434202.patch
+Patch453: mozilla-1433081.patch
# Debian patches
Patch500: mozilla-440908.patch
@@ -325,6 +327,7 @@ This package contains results of tests executed during build.
%patch450 -p1 -b .1431052
%patch451 -p1 -b .1432414
%patch452 -p1 -b .1434202
+%patch453 -p1 -b .1433081
# Patch for big endian platforms only
%if 0%{?big_endian}
@@ -581,6 +584,7 @@ DESTDIR=%{buildroot} make -C objdir install
%{__mkdir_p} %{buildroot}{%{_libdir},%{_bindir},%{_datadir}/applications}
desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE20}
+desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE29}
# set up the firefox start script
%{__rm} -rf %{buildroot}%{_bindir}/firefox
@@ -854,6 +858,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Wed Jan 31 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.3
+- Added X11 launcher
+
* Tue Jan 30 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.2
- Fixed typo at startup script.
- Added Wayland specific patches mozbz#1431052 mozbz#1432414
diff --git a/mozilla-1433081.patch b/mozilla-1433081.patch
new file mode 100644
index 0000000..6677ff0
--- /dev/null
+++ b/mozilla-1433081.patch
@@ -0,0 +1,51 @@
+diff --git a/gfx/gl/GLContextProvider.h b/gfx/gl/GLContextProvider.h
+--- a/gfx/gl/GLContextProvider.h
++++ b/gfx/gl/GLContextProvider.h
+@@ -21,16 +21,18 @@ namespace gl {
+
+ #define IN_GL_CONTEXT_PROVIDER_H
+
+ // Null is always there
+ #define GL_CONTEXT_PROVIDER_NAME GLContextProviderNull
+ #include "GLContextProviderImpl.h"
+ #undef GL_CONTEXT_PROVIDER_NAME
+
++#if !defined(MOZ_GL_PROVIDER)
++
+ #ifdef XP_WIN
+ #define GL_CONTEXT_PROVIDER_NAME GLContextProviderWGL
+ #include "GLContextProviderImpl.h"
+ #undef GL_CONTEXT_PROVIDER_NAME
+ #define GL_CONTEXT_PROVIDER_DEFAULT GLContextProviderWGL
+ #define DEFAULT_IMPL WGL
+ #endif
+
+@@ -59,23 +61,27 @@ namespace gl {
+ #define GL_CONTEXT_PROVIDER_NAME GLContextProviderEAGL
+ #include "GLContextProviderImpl.h"
+ #undef GL_CONTEXT_PROVIDER_NAME
+ #ifndef GL_CONTEXT_PROVIDER_DEFAULT
+ #define GL_CONTEXT_PROVIDER_DEFAULT GLContextProviderEAGL
+ #endif
+ #endif
+
++#else //defined(MOZ_GL_PROVIDER)
++
+ #ifdef MOZ_GL_PROVIDER
+ #define GL_CONTEXT_PROVIDER_NAME MOZ_GL_PROVIDER
+ #include "GLContextProviderImpl.h"
+ #undef GL_CONTEXT_PROVIDER_NAME
+ #define GL_CONTEXT_PROVIDER_DEFAULT MOZ_GL_PROVIDER
+ #endif
+
++#endif
++
+ #ifdef GL_CONTEXT_PROVIDER_DEFAULT
+ typedef GL_CONTEXT_PROVIDER_DEFAULT GLContextProvider;
+ #else
+ typedef GLContextProviderNull GLContextProvider;
+ #endif
+
+ #undef IN_GL_CONTEXT_PROVIDER_H
+
+
commit 73212c8d456c441db772a49da36dda1a6a0147b5
Author: Martin Stransky <stransky(a)redhat.com>
Date: Tue Jan 30 14:30:57 2018 +0100
Restricted to intel arches
diff --git a/firefox.spec b/firefox.spec
index 133be50..2dbd361 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -1,3 +1,5 @@
+ExclusiveArch: x86_64 i686
+
# Use system nspr/nss?
%global system_nss 0
commit d795fc355db1fe1aeb040f91657208649a2232cf
Author: Martin Stransky <stransky(a)redhat.com>
Date: Tue Jan 30 14:16:52 2018 +0100
Updated sources
diff --git a/.gitignore b/.gitignore
index 738876b..d8542f0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -276,3 +276,4 @@ firefox-3.6.4.source.tar.bz2
/firefox-langpacks-57.0.4-20180104.tar.xz
/firefox-58.0.source.tar.xz
/firefox-langpacks-58.0-20180123.tar.xz
+/mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24.tar.bz2
diff --git a/sources b/sources
index 2cd26a2..f563c24 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (firefox-58.0.source.tar.xz) = 17a2c520973c68c5dd130bcb27407b1c20b03f74c97aeb486e86d422ab5c012e549787ae53275d6840b9d324f261ae282b98f61764ee5e0a6df1cc3e3c9e2632
SHA512 (firefox-langpacks-58.0-20180123.tar.xz) = 6781bf0a5d68bdaa513f85404b8d9111bef8d2aa6d12e1b5fa8db2e4f44fce2d2642b9b5a70a6fc92f0cb96167f6895e17505bdc212aea987240cfb018f340f5
+SHA512 (mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24.tar.bz2) = 77d6455adc011289391a63c2de9f05be78b6c293f0dd6cd064b6d0c4ba3b50a7cadfc190000aeaeb9c276e43de60ecfe30829426da2366110c407bd0197d15ef
commit a16c5a063b1e480656c635788664e6995e9c5c1a
Author: Martin Stransky <stransky(a)redhat.com>
Date: Tue Jan 30 14:11:53 2018 +0100
Added Wayland specific patches mozbz#1431052 mozbz#1432414 mozbz#1434202
diff --git a/firefox.spec b/firefox.spec
index f521986..133be50 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -152,6 +152,11 @@ Patch411: mozilla-1321521-2.patch
Patch412: mozilla-1337988.patch
Patch413: mozilla-1353817.patch
+# Wayland patches
+Patch450: mozilla-1431052.patch
+Patch451: mozilla-1432414.patch
+Patch452: mozilla-1434202.patch
+
# Debian patches
Patch500: mozilla-440908.patch
@@ -314,6 +319,11 @@ This package contains results of tests executed during build.
%patch406 -p1 -b .256180
%patch413 -p1 -b .1353817
+# Wayland patches
+%patch450 -p1 -b .1431052
+%patch451 -p1 -b .1432414
+%patch452 -p1 -b .1434202
+
# Patch for big endian platforms only
%if 0%{?big_endian}
%patch26 -p1 -b .icu
@@ -844,6 +854,8 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%changelog
* Tue Jan 30 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.2
- Fixed typo at startup script.
+- Added Wayland specific patches mozbz#1431052 mozbz#1432414
+ mozbz#1434202
* Mon Jan 29 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.1
- Update to Firefox 59.0 Beta 4
diff --git a/mozilla-1431052.patch b/mozilla-1431052.patch
new file mode 100644
index 0000000..59376bd
--- /dev/null
+++ b/mozilla-1431052.patch
@@ -0,0 +1,21 @@
+diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
+--- a/widget/gtk/nsWindow.cpp
++++ b/widget/gtk/nsWindow.cpp
+@@ -6948,11 +6948,15 @@ nsWindow::GetWaylandDisplay()
+ GdkDisplay* gdkDisplay = gdk_display_get_default();
+ return mIsX11Display ? nullptr :
+ sGdkWaylandDisplayGetWlDisplay(gdkDisplay);
+ }
+
+ wl_surface*
+ nsWindow::GetWaylandSurface()
+ {
+- return moz_container_get_wl_surface(MOZ_CONTAINER(mContainer));
++ if (mContainer)
++ return moz_container_get_wl_surface(MOZ_CONTAINER(mContainer));
++
++ NS_WARNING("nsWindow::GetWaylandSurfaces(): We don't have any mContainer for drawing!");
++ return nullptr;
+ }
+ #endif
+
diff --git a/mozilla-1432414.patch b/mozilla-1432414.patch
new file mode 100644
index 0000000..818dbbd
--- /dev/null
+++ b/mozilla-1432414.patch
@@ -0,0 +1,58 @@
+diff --git a/widget/gtk/mozgtk/mozgtk.c b/widget/gtk/mozgtk/mozgtk.c
+--- a/widget/gtk/mozgtk/mozgtk.c
++++ b/widget/gtk/mozgtk/mozgtk.c
+@@ -224,16 +224,17 @@ STUB(gtk_file_chooser_set_preview_widget
+ STUB(gtk_file_chooser_set_preview_widget_active)
+ STUB(gtk_file_chooser_set_select_multiple)
+ STUB(gtk_file_chooser_widget_get_type)
+ STUB(gtk_file_filter_add_pattern)
+ STUB(gtk_file_filter_new)
+ STUB(gtk_file_filter_set_name)
+ STUB(gtk_fixed_new)
+ STUB(gtk_frame_new)
++STUB(gtk_get_current_event_time)
+ STUB(gtk_grab_add)
+ STUB(gtk_grab_remove)
+ STUB(gtk_handle_box_new)
+ STUB(gtk_hbox_new)
+ STUB(gtk_icon_info_free)
+ STUB(gtk_icon_info_load_icon)
+ STUB(gtk_icon_set_add_source)
+ STUB(gtk_icon_set_new)
+diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
+--- a/widget/gtk/nsWindow.cpp
++++ b/widget/gtk/nsWindow.cpp
+@@ -1358,23 +1358,27 @@ SetUserTimeAndStartupIDForActivatedWindo
+ // we don't want to reuse the timestamp next time we raise the window
+ GTKToolkit->SetFocusTimestamp(0);
+ GTKToolkit->SetDesktopStartupID(EmptyCString());
+ }
+
+ /* static */ guint32
+ nsWindow::GetLastUserInputTime()
+ {
+- // gdk_x11_display_get_user_time tracks button and key presses,
+- // DESKTOP_STARTUP_ID used to start the app, drop events from external
+- // drags, WM_DELETE_WINDOW delete events, but not usually mouse motion nor
++ // gdk_x11_display_get_user_time/gtk_get_current_event_time tracks
++ // button and key presses, DESKTOP_STARTUP_ID used to start the app,
++ // drop events from external drags,
++ // WM_DELETE_WINDOW delete events, but not usually mouse motion nor
+ // button and key releases. Therefore use the most recent of
+ // gdk_x11_display_get_user_time and the last time that we have seen.
+- guint32 timestamp =
+- gdk_x11_display_get_user_time(gdk_display_get_default());
++ GdkDisplay* gdkDisplay = gdk_display_get_default();
++ guint32 timestamp = GDK_IS_X11_DISPLAY(gdkDisplay) ?
++ gdk_x11_display_get_user_time(gdkDisplay) :
++ gtk_get_current_event_time();
++
+ if (sLastUserInputTime != GDK_CURRENT_TIME &&
+ TimestampIsNewerThan(sLastUserInputTime, timestamp)) {
+ return sLastUserInputTime;
+ }
+
+ return timestamp;
+ }
+
+
diff --git a/mozilla-1434202.patch b/mozilla-1434202.patch
new file mode 100644
index 0000000..d91f55e
--- /dev/null
+++ b/mozilla-1434202.patch
@@ -0,0 +1,25 @@
+diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
+--- a/widget/gtk/nsWindow.cpp
++++ b/widget/gtk/nsWindow.cpp
+@@ -3785,16 +3785,20 @@ nsWindow::Create(nsIWidget* aParent,
+ SetCursor(eCursor_standard);
+
+ if (aInitData->mNoAutoHide) {
+ gint wmd = ConvertBorderStyles(mBorderStyle);
+ if (wmd != -1)
+ gdk_window_set_decorations(mGdkWindow, (GdkWMDecoration) wmd);
+ }
+
++ if (!mIsX11Display) {
++ gtk_widget_set_app_paintable(mShell, TRUE);
++ }
++
+ // If the popup ignores mouse events, set an empty input shape.
+ if (aInitData->mMouseTransparent) {
+ cairo_rectangle_int_t rect = { 0, 0, 0, 0 };
+ cairo_region_t *region = cairo_region_create_rectangle(&rect);
+
+ gdk_window_input_shape_combine_region(mGdkWindow, region, 0, 0);
+ cairo_region_destroy(region);
+ }
+
commit 91102985e0953d85c5e61432c3be3caf476dab5c
Author: Martin Stransky <stransky(a)redhat.com>
Date: Tue Jan 30 13:08:53 2018 +0100
Fixed typo at startup script, removed unused patches
diff --git a/build-jit-CodeAlignment.patch b/build-jit-CodeAlignment.patch
deleted file mode 100644
index 0f0b10c..0000000
--- a/build-jit-CodeAlignment.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up firefox-58.0/js/src/jit/none/MacroAssembler-none.h.old firefox-58.0/js/src/jit/none/MacroAssembler-none.h
---- firefox-58.0/js/src/jit/none/MacroAssembler-none.h.old 2018-01-24 20:33:52.569147937 +0100
-+++ firefox-58.0/js/src/jit/none/MacroAssembler-none.h 2018-01-24 20:34:06.985088057 +0100
-@@ -88,7 +88,7 @@ static constexpr Register WasmTableCallI
- static constexpr Register WasmTlsReg { Registers::invalid_reg };
-
- static constexpr uint32_t ABIStackAlignment = 4;
--static constexpr uint32_t CodeAlignment = 4;
-+static constexpr uint32_t CodeAlignment = 8;
- static constexpr uint32_t JitStackAlignment = 8;
- static constexpr uint32_t JitStackValueAlignment = JitStackAlignment / sizeof(Value);
-
diff --git a/build-ppc64-s390x-curl.patch b/build-ppc64-s390x-curl.patch
deleted file mode 100644
index 6c303f3..0000000
--- a/build-ppc64-s390x-curl.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -up firefox-54.0/toolkit/crashreporter/google-breakpad/src/third_party/curl/curlbuild.h.ppc-curl firefox-54.0/toolkit/crashreporter/google-breakpad/src/third_party/curl/curlbuild.h
---- firefox-54.0/toolkit/crashreporter/google-breakpad/src/third_party/curl/curlbuild.h.ppc-curl 2017-06-09 23:31:15.186207877 +0200
-+++ firefox-54.0/toolkit/crashreporter/google-breakpad/src/third_party/curl/curlbuild.h 2017-06-10 00:21:26.731117206 +0200
-@@ -155,7 +155,8 @@
-
- /* The size of `long', as computed by sizeof. */
- #if defined(_M_X64) || (defined(__x86_64__) && !defined(__ILP32__)) || \
-- defined(__aarch64__) || (defined(__mips__) && _MIPS_SIM == _ABI64)
-+ defined(__aarch64__) || (defined(__mips__) && _MIPS_SIM == _ABI64) || \
-+ defined(__PPC64__) || defined(__pcc64le__) || defined(__S390X__) || defined(__s390x__)
- #define CURL_SIZEOF_LONG 8
- #else
- #define CURL_SIZEOF_LONG 4
diff --git a/build-with-nss-3.34.0.patch b/build-with-nss-3.34.0.patch
deleted file mode 100644
index 68bc141..0000000
--- a/build-with-nss-3.34.0.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -up firefox-58.0/media/libyuv/libyuv/tools_libyuv/autoroller/unittests/testdata/DEPS.chromium.old firefox-58.0/media/libyuv/libyuv/tools_libyuv/autoroller/unittests/testdata/DEPS.chromium
-diff -up firefox-58.0/media/webrtc/trunk/Makefile.old firefox-58.0/media/webrtc/trunk/Makefile
-diff -up firefox-58.0/old-configure.in.old firefox-58.0/old-configure.in
---- firefox-58.0/old-configure.in.old 2018-01-23 14:49:51.771309172 +0100
-+++ firefox-58.0/old-configure.in 2018-01-23 14:50:04.091265876 +0100
-@@ -1915,7 +1915,7 @@ MOZ_ARG_WITH_BOOL(system-nss,
- _USE_SYSTEM_NSS=1 )
-
- if test -n "$_USE_SYSTEM_NSS"; then
-- AM_PATH_NSS(3.34.1, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])])
-+ AM_PATH_NSS(3.34.0, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])])
- fi
-
- if test -n "$MOZ_SYSTEM_NSS"; then
diff --git a/firefox-fedora-rhbz-1537287-v2.patch b/firefox-fedora-rhbz-1537287-v2.patch
deleted file mode 100644
index e7d314e..0000000
--- a/firefox-fedora-rhbz-1537287-v2.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-diff --git a/security/certverifier/NSSCertDBTrustDomain.cpp b/security/certverifier/NSSCertDBTrustDomain.cpp
---- a/security/certverifier/NSSCertDBTrustDomain.cpp
-+++ b/security/certverifier/NSSCertDBTrustDomain.cpp
-@@ -1059,26 +1059,17 @@ InitializeNSS(const nsACString& dir, boo
- // "/usr/lib/nss/libnssckbi.so".
- uint32_t flags = NSS_INIT_NOROOTINIT | NSS_INIT_OPTIMIZESPACE;
- if (readOnly) {
- flags |= NSS_INIT_READONLY;
- }
- if (!loadPKCS11Modules) {
- flags |= NSS_INIT_NOMODDB;
- }
-- // At the moment, sqldb does not work with non-ASCII file paths on Windows.
-- bool useSQLDB = Preferences::GetBool("security.use_sqldb", false) &&
-- (NS_IsNativeUTF8() || NS_IsAscii(PromiseFlatCString(dir).get()));
- nsAutoCString dbTypeAndDirectory;
-- // Don't change any behavior if the user has specified an alternative database
-- // location with MOZPSM_NSSDBDIR_OVERRIDE.
-- const char* dbDirOverride = getenv("MOZPSM_NSSDBDIR_OVERRIDE");
-- if (useSQLDB && (!dbDirOverride || strlen(dbDirOverride) == 0)) {
-- dbTypeAndDirectory.Append("sql:");
-- }
- dbTypeAndDirectory.Append(dir);
- MOZ_LOG(gCertVerifierLog, LogLevel::Debug,
- ("InitializeNSS(%s, %d, %d)", dbTypeAndDirectory.get(), readOnly,
- loadPKCS11Modules));
- SECStatus srv = NSS_Initialize(dbTypeAndDirectory.get(), "", "",
- SECMOD_DB, flags);
- if (srv != SECSuccess) {
- return srv;
-diff --git a/security/manager/ssl/security-prefs.js b/security/manager/ssl/security-prefs.js
---- a/security/manager/ssl/security-prefs.js
-+++ b/security/manager/ssl/security-prefs.js
-@@ -39,17 +39,17 @@ pref("security.ask_for_password",
- pref("security.password_lifetime", 30);
-
- // If true, use the modern sqlite-backed certificate and key databases in NSS.
- // If false, use the default format. Currently the default in NSS is the old
- // BerkeleyDB format, but this will change in bug 1377940.
- // Changing this requires a restart to take effect.
- // Note that the environment variable MOZPSM_NSSDBDIR_OVERRIDE can override both
- // the behavior of this preference and the NSS default.
--pref("security.use_sqldb", true);
-+pref("security.use_sqldb", false);
-
- // The supported values of this pref are:
- // 0: disable detecting Family Safety mode and importing the root
- // 1: only attempt to detect Family Safety mode (don't import the root)
- // 2: detect Family Safety mode and import the root
- // (This is only relevant to Windows 8.1)
- pref("security.family_safety.mode", 2);
-
diff --git a/firefox-install-dir.patch b/firefox-install-dir.patch
deleted file mode 100644
index 646e0c9..0000000
--- a/firefox-install-dir.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up firefox-45.0/firefox-45.0/config/baseconfig.mk.orig firefox-45.0/firefox-45.0/config/baseconfig.mk
---- firefox-45.0/config/baseconfig.mk.orig 2016-03-02 13:26:31.981927073 +0100
-+++ firefox-45.0/config/baseconfig.mk 2016-03-02 13:30:09.044756473 +0100
-@@ -4,7 +4,7 @@
- # whether a normal build is happening or whether the check is running.
- includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
- idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
--installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
-+installdir = $(libdir)/$(MOZ_APP_NAME)
- sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
- ifeq (.,$(DEPTH))
- DIST = dist
diff --git a/firefox.sh.in b/firefox.sh.in
index 591ed62..fec7bec 100644
--- a/firefox.sh.in
+++ b/firefox.sh.in
@@ -70,7 +70,7 @@ MOZ_LAUNCHER="$MOZ_DIST_BIN/run-mozilla.sh"
##
## Set X11 backed as a default one
##
-if ! [ "$GDK_BACKEND" ] then
+if ! [ "$GDK_BACKEND" ]; then
export GDK_BACKEND=x11
fi
diff --git a/firefox.spec b/firefox.spec
index ba8e424..f521986 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -96,7 +96,7 @@
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 59.0
-Release: 0.1%{?pre_tag}%{?dist}
+Release: 0.2%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
#Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version...
@@ -116,7 +116,6 @@ Source27: google-api-key
Source28: firefox-wayland.sh.in
# Build patches
-#Patch0: firefox-install-dir.patch
Patch3: mozilla-build-arm.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=814879#c3
Patch18: xulrunner-24.0-jemalloc-ppc.patch
@@ -125,7 +124,6 @@ Patch26: build-icu-big-endian.patch
Patch27: mozilla-1335250.patch
# Also fixes s390x: https://bugzilla.mozilla.org/show_bug.cgi?id=1376268
Patch29: build-big-endian.patch
-Patch31: build-ppc64-s390x-curl.patch
Patch32: build-rust-ppc64le.patch
Patch35: build-ppc-jit.patch
Patch36: build-missing-xlocale-h.patch
@@ -144,9 +142,6 @@ Patch225: mozilla-1005640-accept-lang.patch
#ARM run-time patch
Patch226: rhbz-1354671.patch
Patch229: firefox-nss-version.patch
-Patch230: firefox-fedora-rhbz-1537287-v2.patch
-Patch231: build-with-nss-3.34.0.patch
-Patch232: build-jit-CodeAlignment.patch
# Upstream patches
Patch402: mozilla-1196777.patch
@@ -156,9 +151,6 @@ Patch410: mozilla-1321521.patch
Patch411: mozilla-1321521-2.patch
Patch412: mozilla-1337988.patch
Patch413: mozilla-1353817.patch
-Patch416: mozilla-1399611.patch
-# ppc64/le build patch
-Patch417: mozilla-1416170.patch
# Debian patches
Patch500: mozilla-440908.patch
@@ -296,7 +288,6 @@ This package contains results of tests executed during build.
# Build patches, can't change backup suffix from default because during build
# there is a compare of config and js/config directories and .orig suffix is
# ignored during this compare.
-#%patch0 -p1
%patch18 -p1 -b .jemalloc-ppc
@@ -304,7 +295,6 @@ This package contains results of tests executed during build.
%patch25 -p1 -b .rhbz-1219542-s390
%endif
%patch29 -p1 -b .big-endian
-#%patch31 -p1 -b .ppc64-s390x-curl
%patch37 -p1 -b .jit-atomic-lucky
%patch3 -p1 -b .arm
@@ -319,20 +309,10 @@ This package contains results of tests executed during build.
%ifarch aarch64
%patch226 -p1 -b .1354671
%endif
-# NSS stuff
-#%if 0%{?fedora} < 28
-#%patch230 -p1 -b .rhbz-1537287
-#%endif
-#%patch231 -p1
-#%patch232 -p1 -b .CodeAlignment
%patch402 -p1 -b .1196777
%patch406 -p1 -b .256180
%patch413 -p1 -b .1353817
-# CSD - Disabled now
-#%patch416 -p1 -b .1399611
-
-#%patch417 -p1 -b .1416170
# Patch for big endian platforms only
%if 0%{?big_endian}
@@ -820,7 +800,6 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%dir %{langpackdir}
%endif
%{mozappdir}/browser/omni.ja
-#%{mozappdir}/browser/icons
%{mozappdir}/chrome.manifest
%{mozappdir}/run-mozilla.sh
%{mozappdir}/application.ini
@@ -863,6 +842,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Tue Jan 30 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.2
+- Fixed typo at startup script.
+
* Mon Jan 29 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.1
- Update to Firefox 59.0 Beta 4
- Enabled Wayland backend
diff --git a/mozilla-1399611.patch b/mozilla-1399611.patch
deleted file mode 100644
index 34b09a1..0000000
--- a/mozilla-1399611.patch
+++ /dev/null
@@ -1,1312 +0,0 @@
-diff -up firefox-58.0/browser/base/moz.build.1399611 firefox-58.0/browser/base/moz.build
---- firefox-58.0/browser/base/moz.build.1399611 2017-11-02 17:16:30.000000000 +0100
-+++ firefox-58.0/browser/base/moz.build 2018-01-24 10:57:03.717031953 +0100
-@@ -57,7 +57,7 @@ DEFINES['APP_LICENSE_BLOCK'] = '%s/conte
- if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'gtk2', 'gtk3', 'cocoa'):
- DEFINES['CONTEXT_COPY_IMAGE_CONTENTS'] = 1
-
--if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'cocoa'):
-+if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'cocoa', 'gtk3'):
- DEFINES['CAN_DRAW_IN_TITLEBAR'] = 1
-
- if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'gtk2', 'gtk3'):
-diff -up firefox-58.0/browser/themes/linux/browser.css.1399611 firefox-58.0/browser/themes/linux/browser.css
---- firefox-58.0/browser/themes/linux/browser.css.1399611 2018-01-11 21:16:54.000000000 +0100
-+++ firefox-58.0/browser/themes/linux/browser.css 2018-01-24 10:57:03.718031950 +0100
-@@ -717,7 +717,7 @@ html|span.ac-emphasize-text-url {
- :root[tabsintitlebar] > #titlebar:-moz-lwtheme {
- visibility: hidden;
- }
-- :root[tabsintitlebar] > #titlebar-content:-moz-lwtheme {
-+ :root[tabsintitlebar] #titlebar-content:-moz-lwtheme {
- visibility: visible;
- }
-
-diff -up firefox-58.0/layout/style/nsMediaFeatures.cpp.1399611 firefox-58.0/layout/style/nsMediaFeatures.cpp
---- firefox-58.0/layout/style/nsMediaFeatures.cpp.1399611 2018-01-11 21:17:01.000000000 +0100
-+++ firefox-58.0/layout/style/nsMediaFeatures.cpp 2018-01-24 10:57:03.718031950 +0100
-@@ -831,6 +831,42 @@ nsMediaFeatures::features[] = {
- GetSystemMetric
- },
-
-+ {
-+ &nsGkAtoms::_moz_gtk_csd_available,
-+ nsMediaFeature::eMinMaxNotAllowed,
-+ nsMediaFeature::eBoolInteger,
-+ nsMediaFeature::eNoRequirements,
-+ { &nsGkAtoms::gtk_csd_available },
-+ GetSystemMetric
-+ },
-+
-+ {
-+ &nsGkAtoms::_moz_gtk_csd_minimize_button,
-+ nsMediaFeature::eMinMaxNotAllowed,
-+ nsMediaFeature::eBoolInteger,
-+ nsMediaFeature::eNoRequirements,
-+ { &nsGkAtoms::gtk_csd_minimize_button },
-+ GetSystemMetric
-+ },
-+
-+ {
-+ &nsGkAtoms::_moz_gtk_csd_maximize_button,
-+ nsMediaFeature::eMinMaxNotAllowed,
-+ nsMediaFeature::eBoolInteger,
-+ nsMediaFeature::eNoRequirements,
-+ { &nsGkAtoms::gtk_csd_maximize_button },
-+ GetSystemMetric
-+ },
-+
-+ {
-+ &nsGkAtoms::_moz_gtk_csd_close_button,
-+ nsMediaFeature::eMinMaxNotAllowed,
-+ nsMediaFeature::eBoolInteger,
-+ nsMediaFeature::eNoRequirements,
-+ { &nsGkAtoms::gtk_csd_close_button },
-+ GetSystemMetric
-+ },
-+
- // Internal -moz-is-glyph media feature: applies only inside SVG glyphs.
- // Internal because it is really only useful in the user agent anyway
- // and therefore not worth standardizing.
-diff -up firefox-58.0/toolkit/modules/moz.build.1399611 firefox-58.0/toolkit/modules/moz.build
---- firefox-58.0/toolkit/modules/moz.build.1399611 2018-01-11 21:17:05.000000000 +0100
-+++ firefox-58.0/toolkit/modules/moz.build 2018-01-24 10:57:03.718031950 +0100
-@@ -259,7 +259,7 @@ EXTRA_JS_MODULES.sessionstore += [
- ]
-
- DEFINES['INSTALL_COMPACT_THEMES'] = 1
--if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'cocoa'):
-+if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'cocoa', 'gtk3'):
- DEFINES['CAN_DRAW_IN_TITLEBAR'] = 1
-
- if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'gtk2', 'gtk3'):
-diff -up firefox-58.0/widget/gtk/mozgtk/mozgtk.c.1399611 firefox-58.0/widget/gtk/mozgtk/mozgtk.c
---- firefox-58.0/widget/gtk/mozgtk/mozgtk.c.1399611 2018-01-11 21:17:06.000000000 +0100
-+++ firefox-58.0/widget/gtk/mozgtk/mozgtk.c 2018-01-24 10:11:58.638648276 +0100
-@@ -391,6 +391,7 @@ STUB(gtk_separator_menu_item_new)
- STUB(gtk_separator_tool_item_new)
- STUB(gtk_settings_get_default)
- STUB(gtk_settings_get_for_screen)
-+STUB(gtk_show_uri)
- STUB(gtk_socket_add_id)
- STUB(gtk_socket_get_id)
- STUB(gtk_socket_get_type)
-@@ -407,6 +408,7 @@ STUB(gtk_target_list_add_image_targets)
- STUB(gtk_target_list_new)
- STUB(gtk_target_list_unref)
- STUB(gtk_targets_include_image)
-+STUB(gtk_targets_include_text)
- STUB(gtk_target_table_free)
- STUB(gtk_target_table_new_from_list)
- STUB(gtk_text_view_new)
-@@ -479,6 +481,7 @@ STUB(gtk_widget_show_all)
- STUB(gtk_widget_size_allocate)
- STUB(gtk_widget_style_get)
- STUB(gtk_widget_unparent)
-+STUB(gtk_widget_unrealize)
- STUB(gtk_window_deiconify)
- STUB(gtk_window_fullscreen)
- STUB(gtk_window_get_group)
-@@ -582,6 +585,8 @@ STUB(gtk_style_context_set_state)
- STUB(gtk_style_properties_lookup_property)
- STUB(gtk_tree_view_column_get_button)
- STUB(gtk_widget_get_preferred_size)
-+STUB(gtk_widget_get_preferred_width)
-+STUB(gtk_widget_get_preferred_height)
- STUB(gtk_widget_get_state_flags)
- STUB(gtk_widget_get_style_context)
- STUB(gtk_widget_path_append_type)
-diff -up firefox-58.0/widget/gtk/nsLookAndFeel.cpp.1399611 firefox-58.0/widget/gtk/nsLookAndFeel.cpp
---- firefox-58.0/widget/gtk/nsLookAndFeel.cpp.1399611 2018-01-11 21:17:06.000000000 +0100
-+++ firefox-58.0/widget/gtk/nsLookAndFeel.cpp 2018-01-24 10:57:03.718031950 +0100
-@@ -24,6 +24,7 @@
- #include "nsStyleConsts.h"
- #include "gfxFontConstants.h"
- #include "WidgetUtils.h"
-+#include "nsWindow.h"
-
- #include <dlfcn.h>
-
-@@ -740,7 +741,7 @@ GetSystemFontInfo(GtkStyleContext *aStyl
- // Scale fonts up on HiDPI displays.
- // This would be done automatically with cairo, but we manually manage
- // the display scale for platform consistency.
-- size *= ScreenHelperGTK::GetGTKMonitorScaleFactor();
-+ size *= mozilla::widget::ScreenHelperGTK::GetGTKMonitorScaleFactor();
-
- // |size| is now pixels
-
-@@ -1076,17 +1077,13 @@ nsLookAndFeel::EnsureInit()
- gtk_widget_destroy(window);
- g_object_unref(labelWidget);
-
-- // Require GTK 3.20 for client-side decoration support.
-- mCSDAvailable = gtk_check_version(3, 20, 0) == nullptr;
-- if (mCSDAvailable) {
-- mCSDAvailable =
-- mozilla::Preferences::GetBool("widget.allow-client-side-decoration",
-- false);
-- }
-+ // Require GTK 3.10 for GtkHeaderBar support and compatible window manager.
-+ mCSDAvailable = (gtk_check_version(3, 10, 0) == nullptr &&
-+ nsWindow::GetCSDSupportLevel() != nsWindow::CSD_SUPPORT_NONE);
-
- // We need to initialize whole CSD config explicitly because it's queried
- // as -moz-gtk* media features.
-- mCSDCloseButton = false;
-+ mCSDCloseButton = true;
- mCSDMaximizeButton = false;
- mCSDMinimizeButton = false;
-
-@@ -1095,18 +1092,24 @@ nsLookAndFeel::EnsureInit()
- (const gchar* (*)(GtkWidget*))
- dlsym(RTLD_DEFAULT, "gtk_header_bar_get_decoration_layout");
-
-- GtkWidget* headerBar = GetWidget(MOZ_GTK_HEADER_BAR);
-- const gchar* decorationLayout =
-- sGtkHeaderBarGetDecorationLayoutPtr(headerBar);
-- if (!decorationLayout) {
-- g_object_get(settings, "gtk-decoration-layout", &decorationLayout,
-- nullptr);
-- }
-+ if (sGtkHeaderBarGetDecorationLayoutPtr) {
-+ GtkWidget* headerBar = GetWidget(MOZ_GTK_HEADER_BAR);
-+ const gchar* decorationLayout =
-+ sGtkHeaderBarGetDecorationLayoutPtr(headerBar);
-+ if (!decorationLayout) {
-+ g_object_get(settings, "gtk-decoration-layout",
-+ &decorationLayout,
-+ nullptr);
-+ }
-
-- if (decorationLayout) {
-- mCSDCloseButton = (strstr(decorationLayout, "close") != nullptr);
-- mCSDMaximizeButton = (strstr(decorationLayout, "maximize") != nullptr);
-- mCSDMinimizeButton = (strstr(decorationLayout, "minimize") != nullptr);
-+ if (decorationLayout) {
-+ mCSDCloseButton =
-+ (strstr(decorationLayout, "close") != nullptr);
-+ mCSDMaximizeButton =
-+ (strstr(decorationLayout, "maximize") != nullptr);
-+ mCSDMinimizeButton =
-+ (strstr(decorationLayout, "minimize") != nullptr);
-+ }
- }
- }
- }
-diff -up firefox-58.0/widget/gtk/nsNativeThemeGTK.cpp.1399611 firefox-58.0/widget/gtk/nsNativeThemeGTK.cpp
---- firefox-58.0/widget/gtk/nsNativeThemeGTK.cpp.1399611 2018-01-11 21:17:06.000000000 +0100
-+++ firefox-58.0/widget/gtk/nsNativeThemeGTK.cpp 2018-01-24 10:57:03.719031946 +0100
-@@ -29,6 +29,7 @@
-
- #include <gdk/gdkprivate.h>
- #include <gtk/gtk.h>
-+#include <gtk/gtkx.h>
-
- #include "gfxContext.h"
- #include "gfxPlatformGtk.h"
-@@ -51,6 +52,7 @@
-
- using namespace mozilla;
- using namespace mozilla::gfx;
-+using namespace mozilla::widget;
-
- NS_IMPL_ISUPPORTS_INHERITED(nsNativeThemeGTK, nsNativeTheme, nsITheme,
- nsIObserver)
-@@ -1375,6 +1377,10 @@ nsNativeThemeGTK::GetWidgetPadding(nsDev
- switch (aWidgetType) {
- case NS_THEME_BUTTON_FOCUS:
- case NS_THEME_TOOLBARBUTTON:
-+ case NS_THEME_WINDOW_BUTTON_CLOSE:
-+ case NS_THEME_WINDOW_BUTTON_MINIMIZE:
-+ case NS_THEME_WINDOW_BUTTON_MAXIMIZE:
-+ case NS_THEME_WINDOW_BUTTON_RESTORE:
- case NS_THEME_DUALBUTTON:
- case NS_THEME_TAB_SCROLL_ARROW_BACK:
- case NS_THEME_TAB_SCROLL_ARROW_FORWARD:
-diff -up firefox-58.0/widget/gtk/nsWindow.cpp.1399611 firefox-58.0/widget/gtk/nsWindow.cpp
---- firefox-58.0/widget/gtk/nsWindow.cpp.1399611 2018-01-24 10:57:03.714031963 +0100
-+++ firefox-58.0/widget/gtk/nsWindow.cpp 2018-01-24 10:57:03.720031943 +0100
-@@ -178,13 +178,8 @@ static int is_parent_ungrab_enter(Gdk
- static int is_parent_grab_leave(GdkEventCrossing *aEvent);
-
- /* callbacks from widgets */
--#if (MOZ_WIDGET_GTK == 2)
--static gboolean expose_event_cb (GtkWidget *widget,
-- GdkEventExpose *event);
--#else
- static gboolean expose_event_cb (GtkWidget *widget,
- cairo_t *rect);
--#endif
- static gboolean configure_event_cb (GtkWidget *widget,
- GdkEventConfigure *event);
- static void container_unrealize_cb (GtkWidget *widget);
-@@ -230,11 +225,9 @@ static void screen_composited_change
- static void widget_composited_changed_cb (GtkWidget* widget,
- gpointer user_data);
-
--#if (MOZ_WIDGET_GTK == 3)
- static void scale_changed_cb (GtkWidget* widget,
- GParamSpec* aPSpec,
- gpointer aPointer);
--#endif
- #if GTK_CHECK_VERSION(3,4,0)
- static gboolean touch_event_cb (GtkWidget* aWidget,
- GdkEventTouch* aEvent);
-@@ -390,7 +383,7 @@ static guint gButtonState;
- static inline int32_t
- GetBitmapStride(int32_t width)
- {
--#if defined(MOZ_X11) || (MOZ_WIDGET_GTK == 2)
-+#if defined(MOZ_X11)
- return (width+7)/8;
- #else
- return cairo_format_stride_for_width(CAIRO_FORMAT_A1, width);
-@@ -458,11 +451,23 @@ nsWindow::nsWindow()
- mXVisual = nullptr;
- mXDepth = 0;
- #endif /* MOZ_X11 */
-+
- if (!gGlobalsInitialized) {
- gGlobalsInitialized = true;
-
- // It's OK if either of these fail, but it may not be one day.
- initialize_prefs();
-+
-+#ifdef MOZ_WAYLAND
-+ // Wayland provides clipboard data to application on focus-in event
-+ // so we need to init our clipboard hooks before we create window
-+ // and get focus.
-+ if (!mIsX11Display) {
-+ nsCOMPtr<nsIClipboard> clipboard =
-+ do_GetService("@mozilla.org/widget/clipboard;1");
-+ NS_ASSERTION(clipboard, "Failed to init clipboard!");
-+ }
-+#endif
- }
-
- mLastMotionPressure = 0;
-@@ -1521,7 +1526,7 @@ nsWindow::UpdateClientOffset()
- {
- AUTO_PROFILER_LABEL("nsWindow::UpdateClientOffset", GRAPHICS);
-
-- if (!mIsTopLevel || !mShell || !mGdkWindow || !mIsX11Display ||
-+ if (!mIsTopLevel || !mShell || !mIsX11Display ||
- gtk_window_get_window_type(GTK_WINDOW(mShell)) == GTK_WINDOW_POPUP) {
- mClientOffset = nsIntPoint(0, 0);
- return;
-@@ -1534,7 +1539,7 @@ nsWindow::UpdateClientOffset()
- int length_returned;
- long *frame_extents;
-
-- if (!gdk_property_get(mGdkWindow,
-+ if (!gdk_property_get(gtk_widget_get_window(mShell),
- gdk_atom_intern ("_NET_FRAME_EXTENTS", FALSE),
- cardinal_atom,
- 0, // offset
-@@ -1710,16 +1715,22 @@ nsWindow::GetNativeData(uint32_t aDataTy
- #ifdef MOZ_X11
- GdkDisplay* gdkDisplay = gdk_display_get_default();
- if (GDK_IS_X11_DISPLAY(gdkDisplay)) {
-- return GDK_DISPLAY_XDISPLAY(gdkDisplay);
-+ return GDK_DISPLAY_XDISPLAY(gdkDisplay);
- }
- #endif /* MOZ_X11 */
-+ // Don't bother to return native display on Wayland as it's for
-+ // X11 only NPAPI plugins.
- return nullptr;
- }
- case NS_NATIVE_SHELLWIDGET:
- return GetToplevelWidget();
-
- case NS_NATIVE_SHAREABLE_WINDOW:
-- return (void *) GDK_WINDOW_XID(gdk_window_get_toplevel(mGdkWindow));
-+ if (mIsX11Display) {
-+ return (void *) GDK_WINDOW_XID(gdk_window_get_toplevel(mGdkWindow));
-+ }
-+ NS_WARNING("nsWindow::GetNativeData(): NS_NATIVE_SHAREABLE_WINDOW is not handled on Wayland!");
-+ return nullptr;
- case NS_RAW_NATIVE_IME_CONTEXT: {
- void* pseudoIMEContext = GetPseudoIMEContext();
- if (pseudoIMEContext) {
-@@ -1800,18 +1811,18 @@ nsWindow::SetIcon(const nsAString& aIcon
- // The last two entries (for the old XPM format) will be ignored unless
- // no icons are found using other suffixes. XPM icons are deprecated.
-
-- const char extensions[6][7] = { ".png", "16.png", "32.png", "48.png",
-- ".xpm", "16.xpm" };
-+ const char16_t extensions[9][8] = { u".png", u"16.png", u"32.png",
-+ u"48.png", u"64.png", u"128.png",
-+ u"256.png",
-+ u".xpm", u"16.xpm" };
-
- for (uint32_t i = 0; i < ArrayLength(extensions); i++) {
- // Don't bother looking for XPM versions if we found a PNG.
- if (i == ArrayLength(extensions) - 2 && foundIcon)
- break;
-
-- nsAutoString extension;
-- extension.AppendASCII(extensions[i]);
--
-- ResolveIconName(aIconSpec, extension, getter_AddRefs(iconFile));
-+ ResolveIconName(aIconSpec, nsDependentString(extensions[i]),
-+ getter_AddRefs(iconFile));
- if (iconFile) {
- iconFile->GetNativePath(path);
- GdkPixbuf *icon = gdk_pixbuf_new_from_file(path.get(), nullptr);
-@@ -2024,30 +2035,6 @@ gdk_window_flash(GdkWindow * aGdkWind
- #endif // DEBUG
- #endif
-
--#if (MOZ_WIDGET_GTK == 2)
--static bool
--ExtractExposeRegion(LayoutDeviceIntRegion& aRegion, GdkEventExpose* aEvent)
--{
-- GdkRectangle* rects;
-- gint nrects;
-- gdk_region_get_rectangles(aEvent->region, &rects, &nrects);
--
-- if (nrects > MAX_RECTS_IN_REGION) {
-- // Just use the bounding box
-- rects[0] = aEvent->area;
-- nrects = 1;
-- }
--
-- for (GdkRectangle* r = rects; r < rects + nrects; r++) {
-- aRegion.Or(aRegion, LayoutDeviceIntRect(r->x, r->y, r->width, r->height));
-- LOGDRAW(("\t%d %d %d %d\n", r->x, r->y, r->width, r->height));
-- }
--
-- g_free(rects);
-- return true;
--}
--
--#else
- # ifdef cairo_copy_clip_rectangle_list
- # error "Looks like we're including Mozilla's cairo instead of system cairo"
- # endif
-@@ -2069,15 +2056,9 @@ ExtractExposeRegion(LayoutDeviceIntRegio
- cairo_rectangle_list_destroy(rects);
- return true;
- }
--#endif
-
--#if (MOZ_WIDGET_GTK == 2)
--gboolean
--nsWindow::OnExposeEvent(GdkEventExpose *aEvent)
--#else
- gboolean
- nsWindow::OnExposeEvent(cairo_t *cr)
--#endif
- {
- // Send any pending resize events so that layout can update.
- // May run event loop.
-@@ -2096,11 +2077,7 @@ nsWindow::OnExposeEvent(cairo_t *cr)
- return FALSE;
-
- LayoutDeviceIntRegion exposeRegion;
--#if (MOZ_WIDGET_GTK == 2)
-- if (!ExtractExposeRegion(exposeRegion, aEvent)) {
--#else
- if (!ExtractExposeRegion(exposeRegion, cr)) {
--#endif
- return FALSE;
- }
-
-@@ -2141,7 +2118,7 @@ nsWindow::OnExposeEvent(cairo_t *cr)
-
- LOGDRAW(("sending expose event [%p] %p 0x%lx (rects follow):\n",
- (void *)this, (void *)mGdkWindow,
-- gdk_x11_window_get_xid(mGdkWindow)));
-+ mIsX11Display ? gdk_x11_window_get_xid(mGdkWindow) : 0));
-
- // Our bounds may have changed after calling WillPaintWindow. Clip
- // to the new bounds here. The region is relative to this
-@@ -2304,19 +2281,11 @@ nsWindow::OnExposeEvent(cairo_t *cr)
- listener->DidPaintWindow();
-
- // Synchronously flush any new dirty areas
--#if (MOZ_WIDGET_GTK == 2)
-- GdkRegion* dirtyArea = gdk_window_get_update_area(mGdkWindow);
--#else
- cairo_region_t* dirtyArea = gdk_window_get_update_area(mGdkWindow);
--#endif
-
- if (dirtyArea) {
- gdk_window_invalidate_region(mGdkWindow, dirtyArea, false);
--#if (MOZ_WIDGET_GTK == 2)
-- gdk_region_destroy(dirtyArea);
--#else
- cairo_region_destroy(dirtyArea);
--#endif
- gdk_window_process_updates(mGdkWindow, false);
- }
-
-@@ -2466,7 +2435,7 @@ nsWindow::OnSizeAllocate(GtkAllocation *
- mBounds.SizeTo(size);
-
- #ifdef MOZ_X11
-- // Notify the X11CompositorWidget of a ClientSizeChange
-+ // Notify the GtkCompositorWidget of a ClientSizeChange
- if (mCompositorWidgetDelegate) {
- mCompositorWidgetDelegate->NotifyClientSizeChanged(GetClientSize());
- }
-@@ -3550,21 +3519,9 @@ CreateGdkWindow(GdkWindow *parent, GtkWi
- attributes.visual = gtk_widget_get_visual(widget);
- attributes.window_type = GDK_WINDOW_CHILD;
-
--#if (MOZ_WIDGET_GTK == 2)
-- attributes_mask |= GDK_WA_COLORMAP;
-- attributes.colormap = gtk_widget_get_colormap(widget);
--#endif
--
- GdkWindow *window = gdk_window_new(parent, &attributes, attributes_mask);
- gdk_window_set_user_data(window, widget);
-
--// GTK3 TODO?
--#if (MOZ_WIDGET_GTK == 2)
-- /* set the default pixmap to None so that you don't end up with the
-- gtk default which is BlackPixel. */
-- gdk_window_set_back_pixmap(window, nullptr, FALSE);
--#endif
--
- return window;
- }
-
-@@ -3653,10 +3610,14 @@ nsWindow::Create(nsIWidget* aParent,
- // which will use a Window with the override-redirect attribute
- // (for temporary windows).
- // For long-lived windows, their stacking order is managed by the
-- // window manager, as indicated by GTK_WINDOW_TOPLEVEL ...
-- GtkWindowType type =
-- mWindowType != eWindowType_popup || aInitData->mNoAutoHide ?
-- GTK_WINDOW_TOPLEVEL : GTK_WINDOW_POPUP;
-+ // window manager, as indicated by GTK_WINDOW_TOPLEVEL.
-+ // For Wayland we have to always use GTK_WINDOW_POPUP to control
-+ // popup window position.
-+ GtkWindowType type = GTK_WINDOW_TOPLEVEL;
-+ if (mWindowType == eWindowType_popup) {
-+ type = (mIsX11Display && aInitData->mNoAutoHide) ?
-+ GTK_WINDOW_TOPLEVEL : GTK_WINDOW_POPUP;
-+ }
- mShell = gtk_window_new(type);
-
- bool useAlphaVisual = (mWindowType == eWindowType_popup &&
-@@ -3674,13 +3635,8 @@ nsWindow::Create(nsIWidget* aParent,
- if (useAlphaVisual) {
- GdkScreen *screen = gtk_widget_get_screen(mShell);
- if (gdk_screen_is_composited(screen)) {
--#if (MOZ_WIDGET_GTK == 2)
-- GdkColormap *colormap = gdk_screen_get_rgba_colormap(screen);
-- gtk_widget_set_colormap(mShell, colormap);
--#else
- GdkVisual *visual = gdk_screen_get_rgba_visual(screen);
- gtk_widget_set_visual(mShell, visual);
--#endif
- }
- }
-
-@@ -3728,9 +3684,11 @@ nsWindow::Create(nsIWidget* aParent,
- #ifdef MOZ_X11
- // ... but when the window manager offers focus through
- // WM_TAKE_FOCUS, focus is requested on the parent window.
-- gtk_widget_realize(mShell);
-- gdk_window_add_filter(gtk_widget_get_window(mShell),
-- popup_take_focus_filter, nullptr);
-+ if (mIsX11Display) {
-+ gtk_widget_realize(mShell);
-+ gdk_window_add_filter(gtk_widget_get_window(mShell),
-+ popup_take_focus_filter, nullptr);
-+ }
- #endif
- }
-
-@@ -3742,7 +3700,11 @@ nsWindow::Create(nsIWidget* aParent,
- else {
- switch (aInitData->mPopupHint) {
- case ePopupTypeMenu:
-- gtkTypeHint = GDK_WINDOW_TYPE_HINT_POPUP_MENU;
-+ // Use GDK_WINDOW_TYPE_HINT_UTILITY on Wayland which
-+ // guides Gtk to create the popup as subsurface
-+ // instead of xdg_shell popup (see Bug 1423598).
-+ gtkTypeHint = mIsX11Display ? GDK_WINDOW_TYPE_HINT_POPUP_MENU :
-+ GDK_WINDOW_TYPE_HINT_UTILITY;
- break;
- case ePopupTypeTooltip:
- gtkTypeHint = GDK_WINDOW_TYPE_HINT_TOOLTIP;
-@@ -3769,13 +3731,11 @@ nsWindow::Create(nsIWidget* aParent,
- gtk_window_group_add_window(group, GTK_WINDOW(mShell));
- g_object_unref(group);
-
-- if (GetCSDSupportLevel() != CSD_SUPPORT_NONE) {
-- int32_t isCSDAvailable = false;
-- nsresult rv = LookAndFeel::GetInt(LookAndFeel::eIntID_GTKCSDAvailable,
-- &isCSDAvailable);
-- if (NS_SUCCEEDED(rv)) {
-- mIsCSDAvailable = isCSDAvailable;
-- }
-+ int32_t isCSDAvailable = false;
-+ nsresult rv = LookAndFeel::GetInt(LookAndFeel::eIntID_GTKCSDAvailable,
-+ &isCSDAvailable);
-+ if (NS_SUCCEEDED(rv)) {
-+ mIsCSDAvailable = isCSDAvailable;
- }
- }
-
-@@ -3783,7 +3743,6 @@ nsWindow::Create(nsIWidget* aParent,
- GtkWidget *container = moz_container_new();
- mContainer = MOZ_CONTAINER(container);
-
--#if (MOZ_WIDGET_GTK == 3)
- // "csd" style is set when widget is realized so we need to call
- // it explicitly now.
- gtk_widget_realize(mShell);
-@@ -3793,16 +3752,22 @@ nsWindow::Create(nsIWidget* aParent,
- * 1) We're running on Gtk+ without client side decorations.
- * Content is rendered to mShell window and we listen
- * to the Gtk+ events on mShell
-- * 2) We're running on Gtk+ > 3.20 and client side decorations
-+ * 2) We're running on Gtk+ and client side decorations
- * are drawn by Gtk+ to mShell. Content is rendered to mContainer
- * and we listen to the Gtk+ events on mContainer.
-+ * 3) We're running on Wayland. All gecko content is rendered
-+ * to mContainer and we listen to the Gtk+ events on mContainer.
- */
- GtkStyleContext* style = gtk_widget_get_style_context(mShell);
-- drawToContainer = gtk_style_context_has_class(style, "csd");
--#endif
-+ drawToContainer =
-+ !mIsX11Display ||
-+ (mIsCSDAvailable && GetCSDSupportLevel() == CSD_SUPPORT_FLAT ) ||
-+ gtk_style_context_has_class(style, "csd");
- eventWidget = (drawToContainer) ? container : mShell;
-
- gtk_widget_add_events(eventWidget, kEvents);
-+ if (drawToContainer)
-+ gtk_widget_add_events(mShell, GDK_PROPERTY_CHANGE_MASK);
-
- // Prevent GtkWindow from painting a background to avoid flickering.
- gtk_widget_set_app_paintable(eventWidget, TRUE);
-@@ -3839,19 +3804,11 @@ nsWindow::Create(nsIWidget* aParent,
-
- // If the popup ignores mouse events, set an empty input shape.
- if (aInitData->mMouseTransparent) {
--#if (MOZ_WIDGET_GTK == 2)
-- GdkRectangle rect = { 0, 0, 0, 0 };
-- GdkRegion *region = gdk_region_rectangle(&rect);
--
-- gdk_window_input_shape_combine_region(mGdkWindow, region, 0, 0);
-- gdk_region_destroy(region);
--#else
- cairo_rectangle_int_t rect = { 0, 0, 0, 0 };
- cairo_region_t *region = cairo_region_create_rectangle(&rect);
-
- gdk_window_input_shape_combine_region(mGdkWindow, region, 0, 0);
- cairo_region_destroy(region);
--#endif
- }
- }
- }
-@@ -3893,6 +3850,12 @@ nsWindow::Create(nsIWidget* aParent,
-
- // label the drawing window with this object so we can find our way home
- g_object_set_data(G_OBJECT(mGdkWindow), "nsWindow", this);
-+ if (drawToContainer) {
-+ // Also label mShell toplevel window,
-+ // property_notify_event_cb callback also needs to find its way home
-+ g_object_set_data(G_OBJECT(gtk_widget_get_window(mShell)),
-+ "nsWindow", this);
-+ }
-
- if (mContainer)
- g_object_set_data(G_OBJECT(mContainer), "nsWindow", this);
-@@ -3910,12 +3873,12 @@ nsWindow::Create(nsIWidget* aParent,
- G_CALLBACK(window_state_event_cb), nullptr);
- g_signal_connect(mShell, "check-resize",
- G_CALLBACK(check_resize_cb), nullptr);
--
-- GdkScreen *screen = gtk_widget_get_screen(mShell);
--
- g_signal_connect(mShell, "composited-changed",
- G_CALLBACK(widget_composited_changed_cb), nullptr);
-+ g_signal_connect(mShell, "property-notify-event",
-+ G_CALLBACK(property_notify_event_cb), nullptr);
-
-+ GdkScreen *screen = gtk_widget_get_screen(mShell);
- if (!g_signal_handler_find(screen, G_SIGNAL_MATCH_FUNC,
- 0, 0, nullptr,
- FuncToGpointer(screen_composited_changed_cb), 0)) {
-@@ -3940,21 +3903,14 @@ nsWindow::Create(nsIWidget* aParent,
- G_CALLBACK(size_allocate_cb), nullptr);
- g_signal_connect(mContainer, "hierarchy-changed",
- G_CALLBACK(hierarchy_changed_cb), nullptr);
--#if (MOZ_WIDGET_GTK == 3)
- g_signal_connect(mContainer, "notify::scale-factor",
- G_CALLBACK(scale_changed_cb), nullptr);
--#endif
- // Initialize mHasMappedToplevel.
- hierarchy_changed_cb(GTK_WIDGET(mContainer), nullptr);
- // Expose, focus, key, and drag events are sent even to GTK_NO_WINDOW
- // widgets.
--#if (MOZ_WIDGET_GTK == 2)
-- g_signal_connect(mContainer, "expose_event",
-- G_CALLBACK(expose_event_cb), nullptr);
--#else
- g_signal_connect(G_OBJECT(mContainer), "draw",
- G_CALLBACK(expose_event_cb), nullptr);
--#endif
- g_signal_connect(mContainer, "focus_in_event",
- G_CALLBACK(focus_in_event_cb), nullptr);
- g_signal_connect(mContainer, "focus_out_event",
-@@ -4006,10 +3962,6 @@ nsWindow::Create(nsIWidget* aParent,
- }
-
- if (eventWidget) {
--#if (MOZ_WIDGET_GTK == 2)
-- // Don't let GTK mess with the shapes of our GdkWindows
-- GTK_PRIVATE_SET_FLAG(eventWidget, GTK_HAS_SHAPE_MASK);
--#endif
-
- // These events are sent to the owning widget of the relevant window
- // and propagate up to the first widget that handles the events, so we
-@@ -4025,8 +3977,6 @@ nsWindow::Create(nsIWidget* aParent,
- G_CALLBACK(button_press_event_cb), nullptr);
- g_signal_connect(eventWidget, "button-release-event",
- G_CALLBACK(button_release_event_cb), nullptr);
-- g_signal_connect(eventWidget, "property-notify-event",
-- G_CALLBACK(property_notify_event_cb), nullptr);
- g_signal_connect(eventWidget, "scroll-event",
- G_CALLBACK(scroll_event_cb), nullptr);
- #if GTK_CHECK_VERSION(3,4,0)
-@@ -4039,7 +3989,7 @@ nsWindow::Create(nsIWidget* aParent,
- if (mShell) {
- LOG(("\tmShell %p mContainer %p mGdkWindow %p 0x%lx\n",
- mShell, mContainer, mGdkWindow,
-- gdk_x11_window_get_xid(mGdkWindow)));
-+ mIsX11Display ? gdk_x11_window_get_xid(mGdkWindow) : 0));
- } else if (mContainer) {
- LOG(("\tmContainer %p mGdkWindow %p\n", mContainer, mGdkWindow));
- }
-@@ -4063,8 +4013,12 @@ nsWindow::Create(nsIWidget* aParent,
-
- mSurfaceProvider.Initialize(mXDisplay, mXWindow, mXVisual, mXDepth);
- }
-+#ifdef MOZ_WAYLAND
-+ else if (!mIsX11Display) {
-+ mSurfaceProvider.Initialize(this);
-+ }
-+#endif
- #endif
--
- return NS_OK;
- }
-
-@@ -4099,7 +4053,8 @@ nsWindow::SetWindowClass(const nsAString
- res_name[0] = toupper(res_name[0]);
- if (!role) role = res_name;
-
-- gdk_window_set_role(mGdkWindow, role);
-+ GdkWindow* gdkWindow = gtk_widget_get_window(mShell);
-+ gdk_window_set_role(gdkWindow, role);
-
- #ifdef MOZ_X11
- if (mIsX11Display) {
-@@ -4115,7 +4070,7 @@ nsWindow::SetWindowClass(const nsAString
- // a warning & refuses to make the change.
- GdkDisplay *display = gdk_display_get_default();
- XSetClassHint(GDK_DISPLAY_XDISPLAY(display),
-- gdk_x11_window_get_xid(mGdkWindow),
-+ gdk_x11_window_get_xid(gdkWindow),
- class_hint);
- XFree(class_hint);
- }
-@@ -4164,7 +4119,7 @@ nsWindow::NativeResize()
- }
-
- #ifdef MOZ_X11
-- // Notify the X11CompositorWidget of a ClientSizeChange
-+ // Notify the GtkCompositorWidget of a ClientSizeChange
- // This is different than OnSizeAllocate to catch initial sizing
- if (mCompositorWidgetDelegate) {
- mCompositorWidgetDelegate->NotifyClientSizeChanged(GetClientSize());
-@@ -4220,7 +4175,7 @@ nsWindow::NativeMoveResize()
- }
-
- #ifdef MOZ_X11
-- // Notify the X11CompositorWidget of a ClientSizeChange
-+ // Notify the GtkCompositorWidget of a ClientSizeChange
- // This is different than OnSizeAllocate to catch initial sizing
- if (mCompositorWidgetDelegate) {
- mCompositorWidgetDelegate->NotifyClientSizeChanged(GetClientSize());
-@@ -4529,17 +4484,6 @@ nsWindow::SetWindowClipRegion(const nsTA
- if (!mGdkWindow)
- return NS_OK;
-
--#if (MOZ_WIDGET_GTK == 2)
-- GdkRegion *region = gdk_region_new(); // aborts on OOM
-- for (uint32_t i = 0; i < newRects->Length(); ++i) {
-- const LayoutDeviceIntRect& r = newRects->ElementAt(i);
-- GdkRectangle rect = { r.x, r.y, r.width, r.height };
-- gdk_region_union_with_rect(region, &rect);
-- }
--
-- gdk_window_shape_combine_region(mGdkWindow, region, 0, 0);
-- gdk_region_destroy(region);
--#else
- cairo_region_t *region = cairo_region_create();
- for (uint32_t i = 0; i < newRects->Length(); ++i) {
- const LayoutDeviceIntRect& r = newRects->ElementAt(i);
-@@ -4549,7 +4493,6 @@ nsWindow::SetWindowClipRegion(const nsTA
-
- gdk_window_shape_combine_region(mGdkWindow, region, 0, 0);
- cairo_region_destroy(region);
--#endif
-
- return NS_OK;
- }
-@@ -4658,17 +4601,6 @@ nsWindow::ApplyTransparencyBitmap()
- maskPixmap, ShapeSet);
- XFreePixmap(xDisplay, maskPixmap);
- #else
--#if (MOZ_WIDGET_GTK == 2)
-- gtk_widget_reset_shapes(mShell);
-- GdkBitmap* maskBitmap = gdk_bitmap_create_from_data(mGdkWindow,
-- mTransparencyBitmap,
-- mTransparencyBitmapWidth, mTransparencyBitmapHeight);
-- if (!maskBitmap)
-- return;
--
-- gtk_widget_shape_combine_mask(mShell, maskBitmap, 0, 0);
-- g_object_unref(maskBitmap);
--#else
- cairo_surface_t *maskBitmap;
- maskBitmap = cairo_image_surface_create_for_data((unsigned char*)mTransparencyBitmap,
- CAIRO_FORMAT_A1,
-@@ -4682,7 +4614,6 @@ nsWindow::ApplyTransparencyBitmap()
- gtk_widget_shape_combine_region(mShell, maskRegion);
- cairo_region_destroy(maskRegion);
- cairo_surface_destroy(maskBitmap);
--#endif // MOZ_WIDGET_GTK == 2
- #endif // MOZ_X11
- }
-
-@@ -4779,6 +4710,12 @@ nsWindow::GrabPointer(guint32 aTime)
- if (!mGdkWindow)
- return;
-
-+ if (!mIsX11Display) {
-+ // Don't to the grab on Wayland as it causes a regression
-+ // from Bug 1377084.
-+ return;
-+ }
-+
- gint retval;
- retval = gdk_pointer_grab(mGdkWindow, TRUE,
- (GdkEventMask)(GDK_BUTTON_PRESS_MASK |
-@@ -4812,6 +4749,13 @@ nsWindow::ReleaseGrabs(void)
- LOG(("ReleaseGrabs\n"));
-
- mRetryPointerGrab = false;
-+
-+ if (!mIsX11Display) {
-+ // Don't to the ungrab on Wayland as it causes a regression
-+ // from Bug 1377084.
-+ return;
-+ }
-+
- gdk_pointer_ungrab(GDK_CURRENT_TIME);
- }
-
-@@ -5058,7 +5002,7 @@ nsWindow::MakeFullScreen(bool aFullScree
- LOG(("nsWindow::MakeFullScreen [%p] aFullScreen %d\n",
- (void *)this, aFullScreen));
-
-- if (!IsFullscreenSupported(mShell)) {
-+ if (mIsX11Display && !IsFullscreenSupported(mShell)) {
- return NS_ERROR_NOT_AVAILABLE;
- }
-
-@@ -5080,7 +5024,7 @@ nsWindow::MakeFullScreen(bool aFullScree
- }
-
- void
--nsWindow::HideWindowChrome(bool aShouldHide)
-+nsWindow::SetWindowDecoration(nsBorderStyle aStyle)
- {
- if (!mShell) {
- // Pass the request to the toplevel window
-@@ -5092,30 +5036,29 @@ nsWindow::HideWindowChrome(bool aShouldH
- if (!topWindow)
- return;
-
-- topWindow->HideWindowChrome(aShouldHide);
-+ topWindow->SetWindowDecoration(aStyle);
- return;
- }
-
-+ // We can't use mGdkWindow directly here as it can be
-+ // derived from mContainer which is not a top-level GdkWindow.
-+ GdkWindow *window = gtk_widget_get_window(mShell);
-+
- // Sawfish, metacity, and presumably other window managers get
- // confused if we change the window decorations while the window
- // is visible.
- bool wasVisible = false;
-- if (gdk_window_is_visible(mGdkWindow)) {
-- gdk_window_hide(mGdkWindow);
-+ if (gdk_window_is_visible(window)) {
-+ gdk_window_hide(window);
- wasVisible = true;
- }
-
-- gint wmd;
-- if (aShouldHide)
-- wmd = 0;
-- else
-- wmd = ConvertBorderStyles(mBorderStyle);
--
-+ gint wmd = ConvertBorderStyles(aStyle);
- if (wmd != -1)
-- gdk_window_set_decorations(mGdkWindow, (GdkWMDecoration) wmd);
-+ gdk_window_set_decorations(window, (GdkWMDecoration) wmd);
-
- if (wasVisible)
-- gdk_window_show(mGdkWindow);
-+ gdk_window_show(window);
-
- // For some window managers, adding or removing window decorations
- // requires unmapping and remapping our toplevel window. Go ahead
-@@ -5123,10 +5066,19 @@ nsWindow::HideWindowChrome(bool aShouldH
- // error later when this happens (when the persistence timer fires
- // and GetWindowPos is called)
- #ifdef MOZ_X11
-- XSync(GDK_DISPLAY_XDISPLAY(gdk_display_get_default()) , False);
--#else
-- gdk_flush ();
-+ if (mIsX11Display) {
-+ XSync(GDK_DISPLAY_XDISPLAY(gdk_display_get_default()) , False);
-+ } else
- #endif /* MOZ_X11 */
-+ {
-+ gdk_flush ();
-+ }
-+}
-+
-+void
-+nsWindow::HideWindowChrome(bool aShouldHide)
-+{
-+ SetWindowDecoration(aShouldHide ? eBorderStyle_none : mBorderStyle);
- }
-
- bool
-@@ -5237,12 +5189,8 @@ is_mouse_in_window (GdkWindow* aWindow,
- window = gdk_window_get_parent(window);
- }
-
--#if (MOZ_WIDGET_GTK == 2)
-- gdk_drawable_get_size(aWindow, &w, &h);
--#else
- w = gdk_window_get_width(aWindow);
- h = gdk_window_get_height(aWindow);
--#endif
-
- if (aMouseX > x && aMouseX < x + w &&
- aMouseY > y && aMouseY < y + h)
-@@ -5498,18 +5446,6 @@ get_gtk_cursor(nsCursor aCursor)
-
- // gtk callbacks
-
--#if (MOZ_WIDGET_GTK == 2)
--static gboolean
--expose_event_cb(GtkWidget *widget, GdkEventExpose *event)
--{
-- RefPtr<nsWindow> window = get_window_for_gdk_window(event->window);
-- if (!window)
-- return FALSE;
--
-- window->OnExposeEvent(event);
-- return FALSE;
--}
--#else
- void
- draw_window_of_widget(GtkWidget *widget, GdkWindow *aWindow, cairo_t *cr)
- {
-@@ -5561,7 +5497,6 @@ expose_event_cb(GtkWidget *widget, cairo
-
- return FALSE;
- }
--#endif //MOZ_WIDGET_GTK == 2
-
- static gboolean
- configure_event_cb(GtkWidget *widget,
-@@ -5980,7 +5915,6 @@ widget_composited_changed_cb (GtkWidget*
- window->OnCompositedChanged();
- }
-
--#if (MOZ_WIDGET_GTK == 3)
- static void
- scale_changed_cb (GtkWidget* widget, GParamSpec* aPSpec, gpointer aPointer)
- {
-@@ -5996,7 +5930,6 @@ scale_changed_cb (GtkWidget* widget, GPa
- gtk_widget_get_allocation(widget, &allocation);
- window->OnSizeAllocate(&allocation);
- }
--#endif
-
- #if GTK_CHECK_VERSION(3,4,0)
- static gboolean
-@@ -6174,11 +6107,7 @@ get_inner_gdk_window (GdkWindow *aWindow
- child = g_list_previous(child)) {
- auto *childWindow = (GdkWindow *) child->data;
- if (get_window_for_gdk_window(childWindow)) {
--#if (MOZ_WIDGET_GTK == 2)
-- gdk_window_get_geometry(childWindow, &cx, &cy, &cw, &ch, nullptr);
--#else
- gdk_window_get_geometry(childWindow, &cx, &cy, &cw, &ch);
--#endif
- if ((cx < x) && (x < (cx + cw)) &&
- (cy < y) && (y < (cy + ch)) &&
- gdk_window_is_visible(childWindow)) {
-@@ -6386,53 +6315,6 @@ nsWindow::GetEditCommands(NativeKeyBindi
- keyBindings->GetEditCommands(aEvent, aCommands);
- }
-
--#if defined(MOZ_X11) && (MOZ_WIDGET_GTK == 2)
--/* static */ already_AddRefed<DrawTarget>
--nsWindow::GetDrawTargetForGdkDrawable(GdkDrawable* aDrawable,
-- const IntSize& aSize)
--{
-- GdkVisual* visual = gdk_drawable_get_visual(aDrawable);
-- Screen* xScreen =
-- gdk_x11_screen_get_xscreen(gdk_drawable_get_screen(aDrawable));
-- Display* xDisplay = DisplayOfScreen(xScreen);
-- Drawable xDrawable = gdk_x11_drawable_get_xid(aDrawable);
--
-- RefPtr<gfxASurface> surface;
--
-- if (visual) {
-- Visual* xVisual = gdk_x11_visual_get_xvisual(visual);
--
-- surface = new gfxXlibSurface(xDisplay, xDrawable, xVisual, aSize);
-- } else {
-- // no visual? we must be using an xrender format. Find a format
-- // for this depth.
-- XRenderPictFormat *pf = nullptr;
-- switch (gdk_drawable_get_depth(aDrawable)) {
-- case 32:
-- pf = XRenderFindStandardFormat(xDisplay, PictStandardARGB32);
-- break;
-- case 24:
-- pf = XRenderFindStandardFormat(xDisplay, PictStandardRGB24);
-- break;
-- default:
-- NS_ERROR("Don't know how to handle the given depth!");
-- break;
-- }
--
-- surface = new gfxXlibSurface(xScreen, xDrawable, pf, aSize);
-- }
--
-- RefPtr<DrawTarget> dt =
-- gfxPlatform::GetPlatform()->CreateDrawTargetForSurface(surface, aSize);
--
-- if (!dt || !dt->IsValid()) {
-- return nullptr;
-- }
--
-- return dt.forget();
--}
--#endif
--
- already_AddRefed<DrawTarget>
- nsWindow::StartRemoteDrawingInRegion(LayoutDeviceIntRegion& aInvalidRegion, BufferMode* aBufferMode)
- {
-@@ -6649,9 +6531,66 @@ nsWindow::SetDrawsInTitlebar(bool aState
- return;
-
- if (mShell) {
-- gint wmd = aState ? GDK_DECOR_BORDER : ConvertBorderStyles(mBorderStyle);
-- gdk_window_set_decorations(gtk_widget_get_window(mShell),
-- (GdkWMDecoration) wmd);
-+ if (GetCSDSupportLevel() == CSD_SUPPORT_FULL) {
-+ SetWindowDecoration(aState ? eBorderStyle_border : mBorderStyle);
-+ }
-+ else {
-+ /* Window manager does not support GDK_DECOR_BORDER,
-+ * emulate it by CSD.
-+ *
-+ * gtk_window_set_titlebar() works on unrealized widgets only,
-+ * we need to handle mShell carefully here.
-+ * When CSD is enabled mGdkWindow is owned by mContainer which is good
-+ * as we can't delete our mGdkWindow. To make mShell unrealized while
-+ * mContainer is preserved we temporary reparent mContainer to an
-+ * invisible GtkWindow.
-+ */
-+ NativeShow(false);
-+
-+ // Using GTK_WINDOW_POPUP rather than
-+ // GTK_WINDOW_TOPLEVEL in the hope that POPUP results in less
-+ // initialization and window manager interaction.
-+ GtkWidget* tmpWindow = gtk_window_new(GTK_WINDOW_POPUP);
-+ gtk_widget_realize(tmpWindow);
-+
-+ gtk_widget_reparent(GTK_WIDGET(mContainer), tmpWindow);
-+ gtk_widget_unrealize(GTK_WIDGET(mShell));
-+
-+ // Available as of GTK 3.10+
-+ static auto sGtkWindowSetTitlebar = (void (*)(GtkWindow*, GtkWidget*))
-+ dlsym(RTLD_DEFAULT, "gtk_window_set_titlebar");
-+ MOZ_ASSERT(sGtkWindowSetTitlebar,
-+ "Missing gtk_window_set_titlebar(), old Gtk+ library?");
-+
-+ if (aState) {
-+ // Add a hidden titlebar widget to trigger CSD, but disable the default
-+ // titlebar. GtkFixed is a somewhat random choice for a simple unused
-+ // widget. gtk_window_set_titlebar() takes ownership of the titlebar
-+ // widget.
-+ sGtkWindowSetTitlebar(GTK_WINDOW(mShell), gtk_fixed_new());
-+ } else {
-+ sGtkWindowSetTitlebar(GTK_WINDOW(mShell), nullptr);
-+ }
-+
-+ /* A workaround for https://bugzilla.gnome.org/show_bug.cgi?id=791081
-+ * gtk_widget_realize() throws:
-+ * "In pixman_region32_init_rect: Invalid rectangle passed"
-+ * when mShell has default 1x1 size.
-+ */
-+ GtkAllocation allocation = {0, 0, 0, 0};
-+ gtk_widget_get_preferred_width(GTK_WIDGET(mShell), nullptr,
-+ &allocation.width);
-+ gtk_widget_get_preferred_height(GTK_WIDGET(mShell), nullptr,
-+ &allocation.height);
-+ gtk_widget_size_allocate(GTK_WIDGET(mShell), &allocation);
-+
-+ gtk_widget_realize(GTK_WIDGET(mShell));
-+ gtk_widget_reparent(GTK_WIDGET(mContainer), GTK_WIDGET(mShell));
-+ mNeedsShow = true;
-+ NativeResize();
-+
-+ gtk_widget_destroy(tmpWindow);
-+ }
- }
-
- mIsCSDEnabled = aState;
-@@ -6762,11 +6701,9 @@ nsWindow::SynthesizeNativeMouseEvent(Lay
- event.button.window = mGdkWindow;
- event.button.time = GDK_CURRENT_TIME;
-
--#if (MOZ_WIDGET_GTK == 3)
- // Get device for event source
- GdkDeviceManager *device_manager = gdk_display_get_device_manager(display);
- event.button.device = gdk_device_manager_get_client_pointer(device_manager);
--#endif
-
- event.button.x_root = DevicePixelsToGdkCoordRoundDown(aPoint.x);
- event.button.y_root = DevicePixelsToGdkCoordRoundDown(aPoint.y);
-@@ -6809,12 +6746,10 @@ nsWindow::SynthesizeNativeMouseScrollEve
- event.type = GDK_SCROLL;
- event.scroll.window = mGdkWindow;
- event.scroll.time = GDK_CURRENT_TIME;
--#if (MOZ_WIDGET_GTK == 3)
- // Get device for event source
- GdkDisplay* display = gdk_window_get_display(mGdkWindow);
- GdkDeviceManager *device_manager = gdk_display_get_device_manager(display);
- event.scroll.device = gdk_device_manager_get_client_pointer(device_manager);
--#endif
- event.scroll.x_root = DevicePixelsToGdkCoordRoundDown(aPoint.x);
- event.scroll.y_root = DevicePixelsToGdkCoordRoundDown(aPoint.y);
-
-@@ -6938,27 +6873,54 @@ nsWindow::GetCSDSupportLevel() {
- if (sCSDSupportLevel != CSD_SUPPORT_UNKNOWN) {
- return sCSDSupportLevel;
- }
-- // TODO: MATE
-+
- const char* currentDesktop = getenv("XDG_CURRENT_DESKTOP");
- if (currentDesktop) {
-- if (strcmp(currentDesktop, "GNOME") == 0) {
-- sCSDSupportLevel = CSD_SUPPORT_FULL;
-- } else if (strcmp(currentDesktop, "XFCE") == 0) {
-+ if (strstr(currentDesktop, "GNOME") != nullptr) {
- sCSDSupportLevel = CSD_SUPPORT_FULL;
-- } else if (strcmp(currentDesktop, "X-Cinnamon") == 0) {
-+ } else if (strstr(currentDesktop, "XFCE") != nullptr) {
-+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
-+ } else if (strstr(currentDesktop, "X-Cinnamon") != nullptr) {
- sCSDSupportLevel = CSD_SUPPORT_FULL;
-- } else if (strcmp(currentDesktop, "KDE") == 0) {
-+ } else if (strstr(currentDesktop, "KDE") != nullptr) {
- sCSDSupportLevel = CSD_SUPPORT_FLAT;
-- } else if (strcmp(currentDesktop, "LXDE") == 0) {
-+ } else if (strstr(currentDesktop, "LXDE") != nullptr) {
- sCSDSupportLevel = CSD_SUPPORT_FLAT;
-- } else if (strcmp(currentDesktop, "openbox") == 0) {
-+ } else if (strstr(currentDesktop, "openbox") != nullptr) {
- sCSDSupportLevel = CSD_SUPPORT_FLAT;
-- } else if (strcmp(currentDesktop, "i3") == 0) {
-+ } else if (strstr(currentDesktop, "i3") != nullptr) {
- sCSDSupportLevel = CSD_SUPPORT_NONE;
-+ } else if (strstr(currentDesktop, "MATE") != nullptr) {
-+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
-+ } else if (strstr(currentDesktop, "Unity") != nullptr) {
-+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
-+ } else if (strstr(currentDesktop, "Pantheon") != nullptr) {
-+ sCSDSupportLevel = CSD_SUPPORT_FULL;
- } else {
-+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
-+ }
-+ } else {
-+ sCSDSupportLevel = CSD_SUPPORT_NONE;
-+ }
-+
-+ // We don't support CSD_SUPPORT_FULL on Wayland
-+ if (!GDK_IS_X11_DISPLAY(gdk_display_get_default()) &&
-+ sCSDSupportLevel == CSD_SUPPORT_FULL) {
-+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
-+ }
-+
-+ // Allow MOZ_GTK_TITLEBAR_DECORATION to override our heuristics
-+ const char* decorationOverride = getenv("MOZ_GTK_TITLEBAR_DECORATION");
-+ if (decorationOverride) {
-+ if (strcmp(decorationOverride, "none") == 0) {
- sCSDSupportLevel = CSD_SUPPORT_NONE;
-+ } else if (strcmp(decorationOverride, "client") == 0) {
-+ sCSDSupportLevel = CSD_SUPPORT_FLAT;
-+ } else if (strcmp(decorationOverride, "system") == 0) {
-+ sCSDSupportLevel = CSD_SUPPORT_FULL;
- }
- }
-+
- return sCSDSupportLevel;
- }
-
-@@ -6991,3 +6953,24 @@ nsWindow::IsComposited() const
- (gdk_window_get_visual(mGdkWindow)
- == gdk_screen_get_rgba_visual(gdkScreen));
- }
-+
-+#ifdef MOZ_WAYLAND
-+wl_display*
-+nsWindow::GetWaylandDisplay()
-+{
-+ // Available as of GTK 3.8+
-+ static auto sGdkWaylandDisplayGetWlDisplay =
-+ (wl_display *(*)(GdkDisplay *))
-+ dlsym(RTLD_DEFAULT, "gdk_wayland_display_get_wl_display");
-+
-+ GdkDisplay* gdkDisplay = gdk_display_get_default();
-+ return mIsX11Display ? nullptr :
-+ sGdkWaylandDisplayGetWlDisplay(gdkDisplay);
-+}
-+
-+wl_surface*
-+nsWindow::GetWaylandSurface()
-+{
-+ return moz_container_get_wl_surface(MOZ_CONTAINER(mContainer));
-+}
-+#endif
-diff -up firefox-58.0/widget/gtk/nsWindow.h.1399611 firefox-58.0/widget/gtk/nsWindow.h
---- firefox-58.0/widget/gtk/nsWindow.h.1399611 2018-01-11 21:17:06.000000000 +0100
-+++ firefox-58.0/widget/gtk/nsWindow.h 2018-01-24 10:57:03.720031943 +0100
-@@ -23,7 +23,11 @@
-
- #ifdef MOZ_X11
- #include <gdk/gdkx.h>
-+#include "X11UndefineNone.h"
- #endif /* MOZ_X11 */
-+#ifdef MOZ_WAYLAND
-+#include <gdk/gdkwayland.h>
-+#endif
-
- #include "mozilla/widget/WindowSurface.h"
- #include "mozilla/widget/WindowSurfaceProvider.h"
-@@ -172,11 +176,7 @@ public:
- GdkRectangle DevicePixelsToGdkRectRoundOut(LayoutDeviceIntRect aRect);
-
- // event callbacks
--#if (MOZ_WIDGET_GTK == 2)
-- gboolean OnExposeEvent(GdkEventExpose *aEvent);
--#else
- gboolean OnExposeEvent(cairo_t *cr);
--#endif
- gboolean OnConfigureEvent(GtkWidget *aWidget,
- GdkEventConfigure *aEvent);
- void OnContainerUnrealize();
-@@ -315,10 +315,6 @@ public:
- nsresult UpdateTranslucentWindowAlphaInternal(const nsIntRect& aRect,
- uint8_t* aAlphas, int32_t aStride);
-
--#if (MOZ_WIDGET_GTK == 2)
-- static already_AddRefed<DrawTarget> GetDrawTargetForGdkDrawable(GdkDrawable* aDrawable,
-- const mozilla::gfx::IntSize& aSize);
--#endif
- virtual void ReparentNativeWidget(nsIWidget* aNewParent) override;
-
- virtual nsresult SynthesizeNativeMouseEvent(LayoutDeviceIntPoint aPoint,
-@@ -348,9 +344,14 @@ public:
- nsIObserver* aObserver) override;
- #endif
-
-+
- #ifdef MOZ_X11
- Display* XDisplay() { return mXDisplay; }
- #endif
-+#ifdef MOZ_WAYLAND
-+ wl_display* GetWaylandDisplay();
-+ wl_surface* GetWaylandSurface();
-+#endif
- virtual void GetCompositorWidgetInitData(mozilla::widget::CompositorWidgetInitData* aInitData) override;
-
- virtual nsresult SetNonClientMargins(LayoutDeviceIntMargin& aMargins) override;
-@@ -374,6 +375,18 @@ public:
- virtual bool WidgetTypeSupportsAcceleration() override;
-
- bool DoDrawTitlebar() const;
-+
-+ typedef enum { CSD_SUPPORT_FULL, // CSD including shadows
-+ CSD_SUPPORT_FLAT, // CSD without shadows
-+ CSD_SUPPORT_NONE, // WM does not support CSD at all
-+ CSD_SUPPORT_UNKNOWN
-+ } CSDSupportLevel;
-+ /**
-+ * Get the support of Client Side Decoration by checking
-+ * the XDG_CURRENT_DESKTOP environment variable.
-+ */
-+ static CSDSupportLevel GetCSDSupportLevel();
-+
- protected:
- virtual ~nsWindow();
-
-@@ -423,6 +436,7 @@ private:
- nsWindow *GetContainerWindow();
- void SetUrgencyHint(GtkWidget *top_window, bool state);
- void SetDefaultIcon(void);
-+ void SetWindowDecoration(nsBorderStyle aStyle);
- void InitButtonEvent(mozilla::WidgetMouseEvent& aEvent,
- GdkEventButton* aGdkEvent);
- bool DispatchCommandEvent(nsAtom* aCommand);
-@@ -441,7 +455,6 @@ private:
- nsIWidgetListener* GetListener();
- bool IsComposited() const;
-
--
- GtkWidget *mShell;
- MozContainer *mContainer;
- GdkWindow *mGdkWindow;
-@@ -578,16 +591,6 @@ private:
- RefPtr<mozilla::widget::IMContextWrapper> mIMContext;
-
- mozilla::UniquePtr<mozilla::CurrentX11TimeGetter> mCurrentTimeGetter;
-- typedef enum { CSD_SUPPORT_FULL, // CSD including shadows
-- CSD_SUPPORT_FLAT, // CSD without shadows
-- CSD_SUPPORT_NONE, // WM does not support CSD at all
-- CSD_SUPPORT_UNKNOWN
-- } CSDSupportLevel;
-- /**
-- * Get the support of Client Side Decoration by checking
-- * the XDG_CURRENT_DESKTOP environment variable.
-- */
-- static CSDSupportLevel GetCSDSupportLevel();
- static CSDSupportLevel sCSDSupportLevel;
- };
-
diff --git a/mozilla-1416170.patch b/mozilla-1416170.patch
deleted file mode 100644
index 6f86f8e..0000000
--- a/mozilla-1416170.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-diff --git a/memory/build/Utils.h b/memory/build/Utils.h
---- a/memory/build/Utils.h
-+++ b/memory/build/Utils.h
-@@ -67,19 +67,19 @@ constexpr size_t operator"" _MiB(unsigne
- return size_t(aNum) * 1024_KiB;
- }
-
- constexpr size_t operator"" _MiB(long double aNum)
- {
- return size_t(aNum * 1024_KiB);
- }
-
--constexpr long double operator""_percent(long double aPercent)
-+constexpr double operator""_percent(long double aPercent)
- {
-- return aPercent / 100;
-+ return double(aPercent) / 100;
- }
-
- // Helper for (fast) comparison of fractions without involving divisions or
- // floats.
- class Fraction
- {
- public:
- explicit constexpr Fraction(size_t aNumerator, size_t aDenominator)
-diff --git a/memory/build/mozjemalloc.cpp b/memory/build/mozjemalloc.cpp
---- a/memory/build/mozjemalloc.cpp
-+++ b/memory/build/mozjemalloc.cpp
-@@ -908,18 +908,18 @@ struct arena_bin_t
-
- // Offset of first region in a run for this bin's size class.
- uint32_t mRunFirstRegionOffset;
-
- // Current number of runs in this bin, full or otherwise.
- unsigned long mNumRuns;
-
- // Amount of overhead runs are allowed to have.
-- static constexpr long double kRunOverhead = 1.6_percent;
-- static constexpr long double kRunRelaxedOverhead = 2.4_percent;
-+ static constexpr double kRunOverhead = 1.6_percent;
-+ static constexpr double kRunRelaxedOverhead = 2.4_percent;
-
- // Initialize a bin for the given size class.
- // The generated run sizes, for a page size of 4 KiB, are:
- // size|run size|run size|run size|run
- // class|size class|size class|size class|size
- // 4 4 KiB 8 4 KiB 16 4 KiB 32 4 KiB
- // 48 4 KiB 64 4 KiB 80 4 KiB 96 4 KiB
- // 112 4 KiB 128 8 KiB 144 4 KiB 160 8 KiB
-
commit c45606f4574eb364f78af13cde501c02c2207228
Author: Martin Stransky <stransky(a)redhat.com>
Date: Tue Jan 30 12:40:25 2018 +0100
Build fixes
diff --git a/firefox-wayland.sh.in b/firefox-wayland.sh.in
new file mode 100644
index 0000000..108d64c
--- /dev/null
+++ b/firefox-wayland.sh.in
@@ -0,0 +1,7 @@
+#!/bin/bash
+#
+# Run Firefox under Wayland
+#
+
+export GDK_BACKEND=wayland
+/usr/bin/firefox "$@"
diff --git a/firefox.sh.in b/firefox.sh.in
index a310721..591ed62 100644
--- a/firefox.sh.in
+++ b/firefox.sh.in
@@ -65,7 +65,15 @@ MOZ_LANGPACKS_DIR="$MOZ_DIST_BIN/langpacks"
MOZ_EXTENSIONS_PROFILE_DIR="$HOME/.mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}"
MOZ_PROGRAM="$MOZ_DIST_BIN/$MOZ_FIREFOX_FILE"
MOZ_LAUNCHER="$MOZ_DIST_BIN/run-mozilla.sh"
-
+
+
+##
+## Set X11 backed as a default one
+##
+if ! [ "$GDK_BACKEND" ] then
+ export GDK_BACKEND=x11
+fi
+
##
## Set MOZ_GRE_CONF
##
@@ -246,4 +254,5 @@ then
echo $MOZ_LAUNCHER $script_args $MOZ_PROGRAM "$@"
fi
+
exec $MOZ_LAUNCHER $script_args $MOZ_PROGRAM "$@"
diff --git a/firefox.spec b/firefox.spec
index 720c734..ba8e424 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -1,5 +1,5 @@
# Use system nspr/nss?
-%global system_nss 1
+%global system_nss 0
# Use system hunspell?
%if 0%{?fedora} > 25
@@ -113,9 +113,10 @@ Source24: mozilla-api-key
Source25: firefox-symbolic.svg
Source26: distribution.ini
Source27: google-api-key
+Source28: firefox-wayland.sh.in
# Build patches
-Patch0: firefox-install-dir.patch
+#Patch0: firefox-install-dir.patch
Patch3: mozilla-build-arm.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=814879#c3
Patch18: xulrunner-24.0-jemalloc-ppc.patch
@@ -295,7 +296,7 @@ This package contains results of tests executed during build.
# Build patches, can't change backup suffix from default because during build
# there is a compare of config and js/config directories and .orig suffix is
# ignored during this compare.
-%patch0 -p1
+#%patch0 -p1
%patch18 -p1 -b .jemalloc-ppc
@@ -303,12 +304,7 @@ This package contains results of tests executed during build.
%patch25 -p1 -b .rhbz-1219542-s390
%endif
%patch29 -p1 -b .big-endian
-%patch31 -p1 -b .ppc64-s390x-curl
-# Second arch patches - do we still need them?
-#%patch32 -p1 -b .rust-ppc64le
-#%ifarch ppc ppc64 ppc64le
-#%patch35 -p1 -b .ppc-jit
-#%endif
+#%patch31 -p1 -b .ppc64-s390x-curl
%patch37 -p1 -b .jit-atomic-lucky
%patch3 -p1 -b .arm
@@ -323,31 +319,20 @@ This package contains results of tests executed during build.
%ifarch aarch64
%patch226 -p1 -b .1354671
%endif
-%if 0%{?fedora} < 28
-%patch230 -p1 -b .rhbz-1537287
-%endif
-%patch231 -p1
-%patch232 -p1 -b .CodeAlignment
+# NSS stuff
+#%if 0%{?fedora} < 28
+#%patch230 -p1 -b .rhbz-1537287
+#%endif
+#%patch231 -p1
+#%patch232 -p1 -b .CodeAlignment
%patch402 -p1 -b .1196777
%patch406 -p1 -b .256180
-# Does not apply
-#%ifarch %{arm}
-#%if 0%{?fedora} < 26
-# Workaround for mozbz#1337988
-#%patch412 -p1 -b .1337988
-#%endif
-#%endif
-
%patch413 -p1 -b .1353817
# CSD - Disabled now
-%patch416 -p1 -b .1399611
-%patch417 -p1 -b .1416170
+#%patch416 -p1 -b .1399611
-# Debian extension patch
-# Disabled due to new pref module, see
-# https://bugzilla.mozilla.org/show_bug.cgi?id=440908
-#%patch500 -p1 -b .440908
+#%patch417 -p1 -b .1416170
# Patch for big endian platforms only
%if 0%{?big_endian}
@@ -609,6 +594,8 @@ desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE20}
%{__rm} -rf %{buildroot}%{_bindir}/firefox
%{__cat} %{SOURCE21} > %{buildroot}%{_bindir}/firefox
%{__chmod} 755 %{buildroot}%{_bindir}/firefox
+%{__cat} %{SOURCE28} > %{buildroot}%{_bindir}/firefox-wayland
+%{__chmod} 755 %{buildroot}%{_bindir}/firefox-wayland
%{__install} -p -D -m 644 %{SOURCE23} %{buildroot}%{_mandir}/man1/firefox.1
@@ -807,6 +794,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%files -f %{name}.lang
%{_bindir}/firefox
+%{_bindir}/firefox-wayland
%{mozappdir}/firefox
%{mozappdir}/firefox-bin
%doc %{_mandir}/man1/*
@@ -832,7 +820,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%dir %{langpackdir}
%endif
%{mozappdir}/browser/omni.ja
-%{mozappdir}/browser/icons
+#%{mozappdir}/browser/icons
%{mozappdir}/chrome.manifest
%{mozappdir}/run-mozilla.sh
%{mozappdir}/application.ini
commit 0db9898c4505c2fe40e489704c3542e69e3410b2
Author: Martin Stransky <stransky(a)redhat.com>
Date: Mon Jan 29 14:28:23 2018 +0100
Update to Firefox 59.0 Beta 4, Enabled Wayland backend
diff --git a/firefox-mozconfig b/firefox-mozconfig
index 6b4cb54..9ea4603 100644
--- a/firefox-mozconfig
+++ b/firefox-mozconfig
@@ -1,6 +1,6 @@
. $topsrcdir/browser/config/mozconfig
-ac_add_options --enable-default-toolkit=cairo-gtk3
+ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
ac_add_options --prefix="$PREFIX"
ac_add_options --libdir="$LIBDIR"
diff --git a/firefox.spec b/firefox.spec
index f07e71c..720c734 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -80,25 +80,27 @@
%global mozappdir %{_libdir}/%{name}
%global mozappdirdev %{_libdir}/%{name}-devel-%{version}
%global langpackdir %{mozappdir}/langpacks
-%global tarballdir %{name}-%{version}%{?pre_version}
+#%global tarballdir %{name}-%{version}%{?pre_version}
+%global tarballdir mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24
-%global official_branding 1
-%global build_langpacks 1
+%global official_branding 0
+%global build_langpacks 0
%global enable_mozilla_crashreporter 0
%if !%{debug_build}
%ifarch %{ix86} x86_64
-%global enable_mozilla_crashreporter 1
+%global enable_mozilla_crashreporter 0
%endif
%endif
Summary: Mozilla Firefox Web browser
Name: firefox
-Version: 58.0
-Release: 4%{?pre_tag}%{?dist}
+Version: 59.0
+Release: 0.1%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
-Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version...
+#Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version...
+Source0: mozilla-beta-64737c752ac4af4766ad6f82720818521f3aca24.tar.bz2
%if %{build_langpacks}
Source1: firefox-langpacks-%{version}%{?pre_version}-20180123.tar.xz
%endif
@@ -873,6 +875,10 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Mon Jan 29 2018 Martin Stransky <stransky(a)redhat.com> - 59.0-0.1
+- Update to Firefox 59.0 Beta 4
+- Enabled Wayland backend
+
* Wed Jan 24 2018 Martin Stransky <stransky(a)redhat.com> - 58.0-4
- Enabled second arches
6 years, 1 month
Architecture specific change in rpms/pocl.git
by githook-noreply@fedoraproject.org
The package rpms/pocl.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/pocl.git/commit/?id=a1d23fba97857....
Change:
+ExclusiveArch: %{arm} %{x86} x86_64
Thanks.
Full change:
============
commit a1d23fba97857362228ba75002673afdcca7835d
Author: Peter Robinson <pbrobinson(a)gmail.com>
Date: Tue Mar 27 04:32:52 2018 +0100
Minor spec updates/cleanups, use ExclusiveArch, enable easy enable/disable of tests, update arch failure details, drop obsolete patches
diff --git a/.gitignore b/.gitignore
index 4a406bf..8cba2ba 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,3 @@
-*~
*.rpm
*.tar*
results_*/
diff --git a/0001-Fix-issue-597-for-32bit-ARM.patch b/0001-Fix-issue-597-for-32bit-ARM.patch
deleted file mode 100644
index 1473b15..0000000
--- a/0001-Fix-issue-597-for-32bit-ARM.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From dca128f42d3b9401eeb5760b129987091657753f Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Wed, 3 Jan 2018 11:07:35 +0100
-Subject: [PATCH 01/14] Fix issue #597 for 32bit ARM
-
----
- lib/kernel/libclc/vtables_fp64.cl | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/lib/kernel/libclc/vtables_fp64.cl b/lib/kernel/libclc/vtables_fp64.cl
-index 44142909..0f4d5753 100644
---- a/lib/kernel/libclc/vtables_fp64.cl
-+++ b/lib/kernel/libclc/vtables_fp64.cl
-@@ -1025,9 +1025,6 @@ DECLARE_VTABLE(double2, CBRT_REM_TBL, 5) = {
- (double2)(0x1.965fea0000000p+0, 0x1.4f5b8f20ac166p-26),
- };
-
--#endif // cl_khr_fp64
--
--
- VTABLE_FUNCTION(double, CBRT_INV_TBL, cbrt_inv_tbl);
-
- VTABLE_FUNCTION2(v2double, LN_TBL, ln_tbl);
-@@ -1037,3 +1034,5 @@ VTABLE_FUNCTION2(v2double, SINH_TBL, sinh_tbl);
- VTABLE_FUNCTION2(v2double, COSH_TBL, cosh_tbl);
- VTABLE_FUNCTION2(v2double, CBRT_DBL_TBL, cbrt_dbl_tbl);
- VTABLE_FUNCTION2(v2double, CBRT_REM_TBL, cbrt_rem_tbl);
-+
-+#endif // cl_khr_fp64
---
-2.15.1
-
diff --git a/0002-Try-to-fix-596-provide-additional-pocl-build-informa.patch b/0002-Try-to-fix-596-provide-additional-pocl-build-informa.patch
deleted file mode 100644
index 709f6a9..0000000
--- a/0002-Try-to-fix-596-provide-additional-pocl-build-informa.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-From 020cd9dbd8e356cc370b090d416c6e8b912c6b47 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Wed, 3 Jan 2018 12:55:54 +0100
-Subject: [PATCH 02/14] Try to fix #596 - provide additional pocl build
- information
-
----
- CMakeLists.txt | 6 +++++-
- config.h.in.cmake | 5 +++++
- lib/CL/clGetPlatformInfo.c | 43 ++++++++++++++++++++++++++++++++++++++--
- lib/CL/devices/basic/basic.c | 8 +++++++-
- lib/CL/devices/pthread/pthread.c | 12 ++++++++++-
- tests/runtime/test_version.c | 12 ++++++-----
- 6 files changed, 76 insertions(+), 10 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 44a51c94..a836da90 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -308,7 +308,11 @@ if (OCS_AVAILABLE)
- endif()
-
- if(NOT DEFINED HOST_DEVICE_BUILD_HASH)
-- set(HOST_DEVICE_BUILD_HASH "${LLC_TRIPLE}-${LLC_HOST_CPU}")
-+ if(KERNELLIB_HOST_CPU_VARIANTS STREQUAL "distro")
-+ set(HOST_DEVICE_BUILD_HASH "${LLC_TRIPLE}")
-+ else()
-+ set(HOST_DEVICE_BUILD_HASH "${LLC_TRIPLE}-${LLC_HOST_CPU}")
-+ endif()
- endif()
-
- if(ARM AND LLVM_3_9)
-diff --git a/config.h.in.cmake b/config.h.in.cmake
-index 7a6f72a1..cd75d7ce 100644
---- a/config.h.in.cmake
-+++ b/config.h.in.cmake
-@@ -28,6 +28,11 @@
-
- #define FORCED_CLFLAGS "@FORCED_CLFLAGS@"
-
-+#cmakedefine ENABLE_ASAN
-+#cmakedefine ENABLE_LSAN
-+#cmakedefine ENABLE_TSAN
-+#cmakedefine ENABLE_UBSAN
-+
- #cmakedefine ENABLE_CONFORMANCE
-
- #cmakedefine ENABLE_POCL_BUILDING
-diff --git a/lib/CL/clGetPlatformInfo.c b/lib/CL/clGetPlatformInfo.c
-index 74c15c92..5bb9c0ac 100644
---- a/lib/CL/clGetPlatformInfo.c
-+++ b/lib/CL/clGetPlatformInfo.c
-@@ -51,8 +51,47 @@ POname(clGetPlatformInfo)(cl_platform_id platform,
-
- case CL_PLATFORM_VERSION:
- #ifdef OCS_AVAILABLE
-- POCL_RETURN_GETINFO_STR("OpenCL " POCL_CL_VERSION\
-- " pocl " PACKAGE_VERSION ", LLVM " LLVM_VERSION);
-+ POCL_RETURN_GETINFO_STR ("OpenCL " POCL_CL_VERSION
-+ " pocl " PACKAGE_VERSION ", LLVM " LLVM_VERSION
-+#ifdef LLVM_BUILD_MODE_DEBUG
-+ " - debug"
-+#endif
-+
-+#ifdef ENABLE_ASAN
-+ ", ASAN"
-+#endif
-+#ifdef ENABLE_TSAN
-+ ", TSAN"
-+#endif
-+#ifdef ENABLE_LSAN
-+ ", LSAN"
-+#endif
-+#ifdef ENABLE_UBSAN
-+ ", UBSAN"
-+#endif
-+
-+#ifdef BUILD_CUDA
-+ ", CUDA"
-+#endif
-+#ifdef BUILD_HSA
-+ ", HSA"
-+#endif
-+#ifdef TCE_AVAILABLE
-+ ", TCE"
-+#endif
-+#ifdef HAVE_LTTNG_UST
-+ ", LTTNG"
-+#endif
-+#ifdef KERNELLIB_HOST_DISTRO_VARIANTS
-+ ", DISTRO"
-+#endif
-+#ifdef POCL_DEBUG_MESSAGES
-+ ", POCL_DEBUG"
-+#endif
-+#ifndef _CL_DISABLE_HALF
-+ ", FP16"
-+#endif
-+ );
- #else
- POCL_RETURN_GETINFO_STR("OpenCL " POCL_CL_VERSION\
- " pocl " PACKAGE_VERSION ", no online compiler support");
-diff --git a/lib/CL/devices/basic/basic.c b/lib/CL/devices/basic/basic.c
-index 433ce943..8d1d8910 100644
---- a/lib/CL/devices/basic/basic.c
-+++ b/lib/CL/devices/basic/basic.c
-@@ -134,7 +134,13 @@ char *
- pocl_basic_build_hash (cl_device_id device)
- {
- char* res = calloc(1000, sizeof(char));
-- snprintf(res, 1000, "basic-%s", HOST_DEVICE_BUILD_HASH);
-+#ifdef KERNELLIB_HOST_DISTRO_VARIANTS
-+ char *name = get_cpu_name ();
-+ snprintf (res, 1000, "basic-%s-%s", HOST_DEVICE_BUILD_HASH, name);
-+ POCL_MEM_FREE (name);
-+#else
-+ snprintf (res, 1000, "basic-%s", HOST_DEVICE_BUILD_HASH);
-+#endif
- return res;
- }
-
-diff --git a/lib/CL/devices/pthread/pthread.c b/lib/CL/devices/pthread/pthread.c
-index b3d91fdb..0b88a74c 100644
---- a/lib/CL/devices/pthread/pthread.c
-+++ b/lib/CL/devices/pthread/pthread.c
-@@ -51,6 +51,10 @@
- #include "pocl_util.h"
- #include "pocl_mem_management.h"
-
-+#ifdef OCS_AVAILABLE
-+#include "pocl_llvm.h"
-+#endif
-+
- //#define DEBUG_MT
-
- #ifdef CUSTOM_BUFFER_ALLOCATOR
-@@ -149,7 +153,13 @@ char *
- pocl_pthread_build_hash (cl_device_id device)
- {
- char* res = calloc(1000, sizeof(char));
-- snprintf(res, 1000, "pthread-%s", HOST_DEVICE_BUILD_HASH);
-+#ifdef KERNELLIB_HOST_DISTRO_VARIANTS
-+ char *name = get_cpu_name ();
-+ snprintf (res, 1000, "pthread-%s-%s", HOST_DEVICE_BUILD_HASH, name);
-+ POCL_MEM_FREE (name);
-+#else
-+ snprintf (res, 1000, "pthread-%s", HOST_DEVICE_BUILD_HASH);
-+#endif
- return res;
- }
-
-diff --git a/tests/runtime/test_version.c b/tests/runtime/test_version.c
-index c41ef515..6bbc70de 100644
---- a/tests/runtime/test_version.c
-+++ b/tests/runtime/test_version.c
-@@ -33,11 +33,13 @@ int main(void)
- sizeof(result), result, &rvs));
-
- result[rvs]=0; // spec doesn't say it is null-terminated.
-- if( strcmp( result,
-- "OpenCL " POCL_CL_VERSION " pocl " PACKAGE_VERSION ", LLVM " LLVM_VERSION) != 0 ) {
-- printf("Error: platform is: %s\n", result);
-- return 2;
-- }
-+ const char *expected = "OpenCL " POCL_CL_VERSION
-+ " pocl " PACKAGE_VERSION ", LLVM " LLVM_VERSION;
-+ if (strncmp (result, expected, strlen (expected)) != 0)
-+ {
-+ printf ("Error: platform is: %s\n", result);
-+ return 2;
-+ }
-
-
- /* Pocl devices have the form 'type'-'details', if details are
---
-2.15.1
-
diff --git a/0003-Remove-CL_DISABLE_LONG.patch b/0003-Remove-CL_DISABLE_LONG.patch
deleted file mode 100644
index 434764d..0000000
--- a/0003-Remove-CL_DISABLE_LONG.patch
+++ /dev/null
@@ -1,139 +0,0 @@
-From 019531349964b7d61a2b658eb81a6b168cde3f29 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Wed, 3 Jan 2018 10:46:47 +0100
-Subject: [PATCH 03/14] Remove CL_DISABLE_LONG
-
-This was a workaround for an OpenCL bug in LLVM 3.3
----
- CMakeLists.txt | 37 +++++++++++++++++--------------------
- config.h.in.cmake | 3 ---
- lib/CL/devices/basic/basic.c | 5 -----
- lib/CL/devices/pthread/pthread.c | 5 -----
- 4 files changed, 17 insertions(+), 33 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index a836da90..60d570b8 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -744,9 +744,13 @@ endif()
- set(DEFAULT_HOST_CLANG_FLAGS "${CLANG_TARGET_OPTION}${LLC_TRIPLE}")
- set(DEFAULT_HOST_LLC_FLAGS "-relocation-model=pic -mtriple=${LLC_TRIPLE}")
-
--if(ARM AND (NOT LLVM_OLDER_THAN_4_0))
-- #ARMs need to enable FP64 manually with 4.0
-- option(ENABLE_FP64 "Enable FP64" ON)
-+if(ARM)
-+ #ARMs need to enable FP64 manually with LLVM < 4.0
-+ if(LLVM_OLDER_THAN_4_0)
-+ option(ENABLE_FP64 "Enable FP64 on ARM32 - disabled by default for LLVM < 4" OFF)
-+ else()
-+ option(ENABLE_FP64 "Enable FP64 on ARM32 - if you have at least VFP support for doubles, you can leave it ON" ON )
-+ endif()
- endif()
-
- if(ARM32 OR (LLC_TRIPLE MATCHES "^arm"))
-@@ -764,9 +768,6 @@ if(ARM32 OR (LLC_TRIPLE MATCHES "^arm"))
- endif()
- endif()
-
--if(CL_DISABLE_LONG)
-- set(DEFAULT_HOST_CLANG_FLAGS "${DEFAULT_HOST_CLANG_FLAGS} -D_CL_DISABLE_LONG")
--endif()
- if(CL_DISABLE_HALF)
- set(DEFAULT_HOST_CLANG_FLAGS "${DEFAULT_HOST_CLANG_FLAGS} -D_CL_DISABLE_HALF")
- endif()
-@@ -790,19 +791,17 @@ if(NOT CL_DISABLE_HALF)
- set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp16")
- endif()
-
--if(NOT CL_DISABLE_LONG)
-- # must not be defined in HOST_DEVICE_EXTENSIONS list, because
-- # this extension doesn't exist in official extension list
-- set(HOST_DEVICE_EXTENSION_DEFINES "-Dcl_khr_int64")
-+# must not be defined in HOST_DEVICE_EXTENSIONS list, because
-+# this extension doesn't exist in official extension list
-+# there is "cles_khr_int64" which indicates int64 support for embedded profiles
-+set(HOST_DEVICE_EXTENSION_DEFINES "-Dcl_khr_int64")
-
-- # fp64 requires int64
-- if(X86)
-- set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64 cl_khr_int64_base_atomics cl_khr_int64_extended_atomics")
-- endif()
-- if(ENABLE_FP64 AND (NOT LLVM_OLDER_THAN_4_0))
-- # 32bit arm doesnt always uspport doubles
-- set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64")
-- endif()
-+if(X86)
-+ set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64 cl_khr_int64_base_atomics cl_khr_int64_extended_atomics")
-+endif()
-+# 32bit arm doesnt always support doubles
-+if(ENABLE_FP64 AND (NOT LLVM_OLDER_THAN_4_0))
-+ set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64")
- endif()
-
- set(TEMP_EXT "${HOST_DEVICE_EXTENSIONS}")
-@@ -1145,7 +1144,6 @@ set(BUILD_ICD ${ENABLE_ICD})
- set(BUILD_HSA ${ENABLE_HSA})
- set(TCE_AVAILABLE ${ENABLE_TCE})
- set(TCEMC_AVAILABLE ${ENABLE_TCEMC})
--set(_CL_DISABLE_LONG ${CL_DISABLE_LONG})
- set(_CL_DISABLE_HALF ${CL_DISABLE_HALF})
- set(PACKAGE_VERSION "${POCL_VERSION}")
-
-@@ -1277,7 +1275,6 @@ MESSAGE(STATUS " ")
- MESSAGE(STATUS "CLANG_MARCH_FLAG: ${CLANG_MARCH_FLAG}")
- MESSAGE(STATUS "CLANG_TARGET_OPTION: ${CLANG_TARGET_OPTION}")
- MESSAGE(STATUS "CL_DISABLE_HALF: ${CL_DISABLE_HALF}")
--MESSAGE(STATUS "CL_DISABLE_LONG: ${CL_DISABLE_LONG}")
- MESSAGE(STATUS "HAVE_CLOCK_GETTIME: ${HAVE_CLOCK_GETTIME}")
- MESSAGE(STATUS "HAVE_GLEW: ${HAVE_GLEW}")
- MESSAGE(STATUS "HAVE_LTTNG_UST: ${HAVE_LTTNG_UST}")
-diff --git a/config.h.in.cmake b/config.h.in.cmake
-index cd75d7ce..7b7e87e6 100644
---- a/config.h.in.cmake
-+++ b/config.h.in.cmake
-@@ -149,9 +149,6 @@
- /* Defined on big endian systems */
- #define WORDS_BIGENDIAN @WORDS_BIGENDIAN@
-
--/* Disable 64bit ints when a clang bug is present */
--#cmakedefine _CL_DISABLE_LONG
--
- /* Disable cl_khr_fp16 because fp16 is not supported */
- #cmakedefine _CL_DISABLE_HALF
-
-diff --git a/lib/CL/devices/basic/basic.c b/lib/CL/devices/basic/basic.c
-index 8d1d8910..1dc7d303 100644
---- a/lib/CL/devices/basic/basic.c
-+++ b/lib/CL/devices/basic/basic.c
-@@ -381,11 +381,6 @@ pocl_basic_init (unsigned j, cl_device_id device, const char* parameters)
- if(device->llvm_cpu && (!strcmp(device->llvm_cpu, "(unknown)")))
- device->llvm_cpu = NULL;
-
-- // work-around LLVM bug where sizeof(long)=4
-- #ifdef _CL_DISABLE_LONG
-- device->has_64bit_long=0;
-- #endif
--
- return ret;
- }
-
-diff --git a/lib/CL/devices/pthread/pthread.c b/lib/CL/devices/pthread/pthread.c
-index 0b88a74c..494ae8b2 100644
---- a/lib/CL/devices/pthread/pthread.c
-+++ b/lib/CL/devices/pthread/pthread.c
-@@ -263,11 +263,6 @@ pocl_pthread_init (unsigned j, cl_device_id device, const char* parameters)
- if(device->llvm_cpu && (!strcmp(device->llvm_cpu, "(unknown)")))
- device->llvm_cpu = NULL;
-
-- // work-around LLVM bug where sizeof(long)=4
-- #ifdef _CL_DISABLE_LONG
-- device->has_64bit_long=0;
-- #endif
--
- if (!scheduler_initialized)
- {
- scheduler_initialized = 1;
---
-2.15.1
-
diff --git a/0004-Fix-an-incorrect-env-var-check.patch b/0004-Fix-an-incorrect-env-var-check.patch
deleted file mode 100644
index 3431131..0000000
--- a/0004-Fix-an-incorrect-env-var-check.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 6c2059eace57aa6fe12db161ac92bd72556680e7 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Thu, 4 Jan 2018 18:17:17 +0100
-Subject: [PATCH 04/14] Fix an incorrect env var check
-
-Thish should be a check for compiler files, not POCL_DEBUG.
----
- lib/CL/pocl_llvm_build.cc | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/lib/CL/pocl_llvm_build.cc b/lib/CL/pocl_llvm_build.cc
-index 0d67d22f..9ad22796 100644
---- a/lib/CL/pocl_llvm_build.cc
-+++ b/lib/CL/pocl_llvm_build.cc
-@@ -109,8 +109,7 @@ load_source(FrontendOptions &fe,
- static inline int
- unlink_source(FrontendOptions &fe)
- {
-- // don't unlink in debug mode
-- if (pocl_get_bool_option("POCL_DEBUG", 0))
-+ if (pocl_get_bool_option("POCL_LEAVE_KERNEL_COMPILER_TEMP_FILES", 0) != 0)
- return 0;
-
- FrontendInputFile const& file = fe.Inputs.front();
---
-2.15.1
-
diff --git a/0005-Add-asserts-to-pthread-API-calls.patch b/0005-Add-asserts-to-pthread-API-calls.patch
deleted file mode 100644
index e157788..0000000
--- a/0005-Add-asserts-to-pthread-API-calls.patch
+++ /dev/null
@@ -1,194 +0,0 @@
-From ae9c7bc62f6fe78fe894e1a9a9aaca8ed5e04878 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Fri, 5 Jan 2018 12:47:02 +0100
-Subject: [PATCH 05/14] Add asserts to pthread API calls
-
----
- lib/CL/devices/common.c | 8 ++--
- lib/CL/devices/pthread/pocl-pthread_utils.h | 64 +++++++++++++++++++++++++----
- lib/CL/pocl_cl.h | 49 ++++++++++++++++++----
- 3 files changed, 102 insertions(+), 19 deletions(-)
-
-diff --git a/lib/CL/devices/common.c b/lib/CL/devices/common.c
-index 8c01191e..9895f1ae 100644
---- a/lib/CL/devices/common.c
-+++ b/lib/CL/devices/common.c
-@@ -1070,12 +1070,12 @@ pocl_memalign_alloc_global_mem(cl_device_id device, size_t align, size_t size)
- if (!ptr)
- return NULL;
-
-- POCL_LOCK_OBJ (mem);
-+ POCL_LOCK (mem->pocl_lock);
- mem->currently_allocated += size;
- if (mem->max_ever_allocated < mem->currently_allocated)
- mem->max_ever_allocated = mem->currently_allocated;
- assert(mem->currently_allocated <= mem->total_alloc_limit);
-- POCL_UNLOCK_OBJ (mem);
-+ POCL_UNLOCK (mem->pocl_lock);
-
- return ptr;
- }
-@@ -1085,10 +1085,10 @@ pocl_free_global_mem(cl_device_id device, void* ptr, size_t size)
- {
- pocl_global_mem_t *mem = device->global_memory;
-
-- POCL_LOCK_OBJ (mem);
-+ POCL_LOCK (mem->pocl_lock);
- assert(mem->currently_allocated >= size);
- mem->currently_allocated -= size;
-- POCL_UNLOCK_OBJ (mem);
-+ POCL_UNLOCK (mem->pocl_lock);
-
- POCL_MEM_FREE(ptr);
- }
-diff --git a/lib/CL/devices/pthread/pocl-pthread_utils.h b/lib/CL/devices/pthread/pocl-pthread_utils.h
-index 310bab6c..47afc65d 100644
---- a/lib/CL/devices/pthread/pocl-pthread_utils.h
-+++ b/lib/CL/devices/pthread/pocl-pthread_utils.h
-@@ -8,19 +8,67 @@
- #endif
-
- /* locking macros */
--#define PTHREAD_LOCK(__lock) pthread_mutex_lock(__lock)
--#define PTHREAD_UNLOCK(__lock) pthread_mutex_unlock(__lock)
--#define PTHREAD_INIT_LOCK(__lock) pthread_mutex_init(__lock, NULL)
--#define PTHREAD_DESTROY_LOCK(__lock) pthread_mutex_destroy(__lock)
-+#define PTHREAD_LOCK(__lock) \
-+ do \
-+ { \
-+ int r = pthread_mutex_lock (__lock); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_UNLOCK(__lock) \
-+ do \
-+ { \
-+ int r = pthread_mutex_unlock (__lock); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_INIT_LOCK(__lock) \
-+ do \
-+ { \
-+ int r = pthread_mutex_init (__lock, NULL); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_DESTROY_LOCK(__lock) \
-+ do \
-+ { \
-+ int r = pthread_mutex_destroy (__lock); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-
- /* Apparently Mac OS X does not have spinlock, despite having pthreads.
- * for now only enable spinlocks on linux.*/
- #ifdef __linux__
- #define PTHREAD_FAST_LOCK_T pthread_spinlock_t
-- #define PTHREAD_FAST_LOCK(l) pthread_spin_lock(l)
-- #define PTHREAD_FAST_UNLOCK(l) pthread_spin_unlock(l)
-- #define PTHREAD_FAST_INIT(l) pthread_spin_init(l, PTHREAD_PROCESS_PRIVATE)
-- #define PTHREAD_FAST_DESTROY(l) pthread_spin_destroy(l)
-+#define PTHREAD_FAST_LOCK(l) \
-+ do \
-+ { \
-+ int r = pthread_spin_lock (l); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_FAST_UNLOCK(l) \
-+ do \
-+ { \
-+ int r = pthread_spin_unlock (l); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_FAST_INIT(l) \
-+ do \
-+ { \
-+ int r = pthread_spin_init (l, PTHREAD_PROCESS_PRIVATE); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define PTHREAD_FAST_DESTROY(l) \
-+ do \
-+ { \
-+ int r = pthread_spin_destroy (l); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
- #else
- #define PTHREAD_FAST_LOCK_T pthread_mutex_t
- #define PTHREAD_FAST_LOCK(l) pthread_mutex_lock(l)
-diff --git a/lib/CL/pocl_cl.h b/lib/CL/pocl_cl.h
-index 03a0e91e..4c399784 100644
---- a/lib/CL/pocl_cl.h
-+++ b/lib/CL/pocl_cl.h
-@@ -63,21 +63,56 @@ typedef pthread_mutex_t pocl_lock_t;
- /* Generic functionality for handling different types of
- OpenCL (host) objects. */
-
--#define POCL_LOCK(__LOCK__) pthread_mutex_lock (&(__LOCK__))
--#define POCL_UNLOCK(__LOCK__) pthread_mutex_unlock (&(__LOCK__))
--#define POCL_INIT_LOCK(__LOCK__) pthread_mutex_init (&(__LOCK__), NULL)
-+#define POCL_LOCK(__LOCK__) \
-+ do \
-+ { \
-+ int r = pthread_mutex_lock (&(__LOCK__)); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define POCL_UNLOCK(__LOCK__) \
-+ do \
-+ { \
-+ int r = pthread_mutex_unlock (&(__LOCK__)); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-+#define POCL_INIT_LOCK(__LOCK__) \
-+ do \
-+ { \
-+ int r = pthread_mutex_init (&(__LOCK__), NULL); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
- /* We recycle OpenCL objects by not actually freeing them until the
- very end. Thus, the lock should not be destoryed at the refcount 0. */
--#define POCL_DESTROY_LOCK(__LOCK__) pthread_mutex_destroy (&(__LOCK__))
-+#define POCL_DESTROY_LOCK(__LOCK__) \
-+ do \
-+ { \
-+ int r = pthread_mutex_destroy (&(__LOCK__)); \
-+ assert (r == 0); \
-+ } \
-+ while (0)
-
--#define POCL_LOCK_OBJ(__OBJ__) POCL_LOCK((__OBJ__)->pocl_lock)
--#define POCL_UNLOCK_OBJ(__OBJ__) POCL_UNLOCK((__OBJ__)->pocl_lock)
-+#define POCL_LOCK_OBJ(__OBJ__) \
-+ do \
-+ { \
-+ POCL_LOCK ((__OBJ__)->pocl_lock); \
-+ assert ((__OBJ__)->pocl_refcount > 0); \
-+ } \
-+ while (0)
-+#define POCL_UNLOCK_OBJ(__OBJ__) \
-+ do \
-+ { \
-+ assert ((__OBJ__)->pocl_refcount >= 0); \
-+ POCL_UNLOCK ((__OBJ__)->pocl_lock); \
-+ } \
-+ while (0)
-
- #define POCL_RELEASE_OBJECT(__OBJ__, __NEW_REFCOUNT__) \
- do { \
- POCL_LOCK_OBJ (__OBJ__); \
- __NEW_REFCOUNT__ = --(__OBJ__)->pocl_refcount; \
-- assert((__OBJ__)->pocl_refcount >= 0); \
- POCL_UNLOCK_OBJ (__OBJ__); \
- } while (0)
-
---
-2.15.1
-
diff --git a/0006-Do-not-call-clFinish-on-CmdQueues-with-refcount-0.patch b/0006-Do-not-call-clFinish-on-CmdQueues-with-refcount-0.patch
deleted file mode 100644
index 2c49751..0000000
--- a/0006-Do-not-call-clFinish-on-CmdQueues-with-refcount-0.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 4e1bb5729dca7e294c70c1ed4b3959561d94acb4 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Tue, 9 Jan 2018 12:09:41 +0100
-Subject: [PATCH 06/14] Do not call clFinish on CmdQueues with refcount == 0
-
-This fails with the additional asserts from previous commit.
-Also it's just wrong :)
----
- lib/CL/clReleaseCommandQueue.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/CL/clReleaseCommandQueue.c b/lib/CL/clReleaseCommandQueue.c
-index 6feaa450..4e6920bd 100644
---- a/lib/CL/clReleaseCommandQueue.c
-+++ b/lib/CL/clReleaseCommandQueue.c
-@@ -39,8 +39,8 @@ POname(clReleaseCommandQueue)(cl_command_queue command_queue) CL_API_SUFFIX__VER
-
- if (new_refcount == 0)
- {
-+ assert (command_queue->command_count == 0);
- POCL_MSG_PRINT_REFCOUNTS ("Free Command Queue %p\n", command_queue);
-- POname(clFinish)(command_queue);
- if (command_queue->device->ops->free_queue)
- command_queue->device->ops->free_queue (command_queue);
- POCL_DESTROY_OBJECT (command_queue);
---
-2.15.1
-
diff --git a/0007-Fix-a-potential-data-race-in-pocl_memalign_alloc_glo.patch b/0007-Fix-a-potential-data-race-in-pocl_memalign_alloc_glo.patch
deleted file mode 100644
index ab8a56d..0000000
--- a/0007-Fix-a-potential-data-race-in-pocl_memalign_alloc_glo.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 638b0c3a37d599876b83faf42df79079512193a2 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Tue, 9 Jan 2018 13:57:47 +0100
-Subject: [PATCH 07/14] Fix a potential data race in
- pocl_memalign_alloc_global_mem()
-
----
- lib/CL/devices/common.c | 16 ++++++++++------
- 1 file changed, 10 insertions(+), 6 deletions(-)
-
-diff --git a/lib/CL/devices/common.c b/lib/CL/devices/common.c
-index 9895f1ae..f90d2321 100644
---- a/lib/CL/devices/common.c
-+++ b/lib/CL/devices/common.c
-@@ -1063,21 +1063,25 @@ void*
- pocl_memalign_alloc_global_mem(cl_device_id device, size_t align, size_t size)
- {
- pocl_global_mem_t *mem = device->global_memory;
-+ void *retval = NULL;
-+
-+ POCL_LOCK (mem->pocl_lock);
- if ((mem->total_alloc_limit - mem->currently_allocated) < size)
-- return NULL;
-+ goto ERROR;
-
-- void* ptr = pocl_memalign_alloc(align, size);
-- if (!ptr)
-- return NULL;
-+ retval = pocl_memalign_alloc (align, size);
-+ if (!retval)
-+ goto ERROR;
-
-- POCL_LOCK (mem->pocl_lock);
- mem->currently_allocated += size;
- if (mem->max_ever_allocated < mem->currently_allocated)
- mem->max_ever_allocated = mem->currently_allocated;
- assert(mem->currently_allocated <= mem->total_alloc_limit);
-+
-+ERROR:
- POCL_UNLOCK (mem->pocl_lock);
-
-- return ptr;
-+ return retval;
- }
-
- void
---
-2.15.1
-
diff --git a/0008-Fix-a-potential-data-race-in-pocl_create_event_sync.patch b/0008-Fix-a-potential-data-race-in-pocl_create_event_sync.patch
deleted file mode 100644
index 8a9e5ae..0000000
--- a/0008-Fix-a-potential-data-race-in-pocl_create_event_sync.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 59c55c4d58f8f4b60796efb6e53a498086b8f93e Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Tue, 9 Jan 2018 13:58:53 +0100
-Subject: [PATCH 08/14] Fix a potential data race in pocl_create_event_sync()
-
----
- lib/CL/pocl_util.c | 12 ++++--------
- 1 file changed, 4 insertions(+), 8 deletions(-)
-
-diff --git a/lib/CL/pocl_util.c b/lib/CL/pocl_util.c
-index 1c342924..20bc63b4 100644
---- a/lib/CL/pocl_util.c
-+++ b/lib/CL/pocl_util.c
-@@ -374,16 +374,12 @@ pocl_create_event_sync(cl_event waiting_event,
- if (notifier_event == NULL)
- return CL_SUCCESS;
-
-- assert(notifier_event->pocl_refcount != 0);
-+ pocl_lock_events_inorder (waiting_event, notifier_event);
-+
- POCL_MSG_PRINT_INFO("create event sync: waiting %d, notifier %d\n", waiting_event->id, notifier_event->id);
-- if (waiting_event == notifier_event)
-- {
-- printf("waiting id %d, notifier id = %d\n", waiting_event->id,
-- notifier_event->id);
-- assert(waiting_event != notifier_event);
-- }
-
-- pocl_lock_events_inorder (waiting_event, notifier_event);
-+ assert (notifier_event->pocl_refcount != 0);
-+ assert (waiting_event != notifier_event);
-
- LL_FOREACH (waiting_event->wait_list, wait_list_item)
- {
---
-2.15.1
-
diff --git a/0009-Fix-potential-race-in-clGetEventInfo.patch b/0009-Fix-potential-race-in-clGetEventInfo.patch
deleted file mode 100644
index b771ce1..0000000
--- a/0009-Fix-potential-race-in-clGetEventInfo.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 8b77a178d1e6fa657b6b4b66a67a63dd608ca702 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Tue, 9 Jan 2018 14:49:37 +0100
-Subject: [PATCH 09/14] Fix potential race in clGetEventInfo()
-
----
- lib/CL/clGetEventInfo.c | 17 ++++++++++++-----
- 1 file changed, 12 insertions(+), 5 deletions(-)
-
-diff --git a/lib/CL/clGetEventInfo.c b/lib/CL/clGetEventInfo.c
-index 5ab504b8..f36f6445 100644
---- a/lib/CL/clGetEventInfo.c
-+++ b/lib/CL/clGetEventInfo.c
-@@ -9,19 +9,26 @@ POname(clGetEventInfo)(cl_event event ,
- CL_API_SUFFIX__VERSION_1_0
- {
- POCL_RETURN_ERROR_COND((event == NULL), CL_INVALID_EVENT);
-+ POCL_LOCK_OBJ (event);
-+ cl_int s = event->status;
-+ cl_command_queue q = event->queue;
-+ cl_command_type t = event->command_type;
-+ cl_uint r = event->pocl_refcount;
-+ cl_context c = event->context;
-+ POCL_UNLOCK_OBJ (event);
-
- switch (param_name)
- {
- case CL_EVENT_COMMAND_EXECUTION_STATUS:
-- POCL_RETURN_GETINFO (cl_int, event->status);
-+ POCL_RETURN_GETINFO (cl_int, s);
- case CL_EVENT_COMMAND_QUEUE:
-- POCL_RETURN_GETINFO(cl_command_queue, event->queue);
-+ POCL_RETURN_GETINFO (cl_command_queue, q);
- case CL_EVENT_COMMAND_TYPE:
-- POCL_RETURN_GETINFO(cl_command_type, event->command_type);
-+ POCL_RETURN_GETINFO (cl_command_type, t);
- case CL_EVENT_REFERENCE_COUNT:
-- POCL_RETURN_GETINFO(cl_uint, event->pocl_refcount);
-+ POCL_RETURN_GETINFO (cl_uint, r);
- case CL_EVENT_CONTEXT:
-- POCL_RETURN_GETINFO(cl_context, event->context);
-+ POCL_RETURN_GETINFO (cl_context, c);
- default:
- break;
- }
---
-2.15.1
-
diff --git a/0010-Add-fsanitize-recover-address-to-ASAN-flags.patch b/0010-Add-fsanitize-recover-address-to-ASAN-flags.patch
deleted file mode 100644
index d6a5136..0000000
--- a/0010-Add-fsanitize-recover-address-to-ASAN-flags.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 16d2c90e7b046137d5a0386ffda9c111ebd3761c Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Tue, 9 Jan 2018 14:22:42 +0100
-Subject: [PATCH 10/14] Add "-fsanitize-recover=address" to ASAN flags
-
-When used with env variable ASAN_OPTIONS=halt_on_error=0, this
-should enable ASAN builds to continue after first error - unlike
-the default which is to exit after first error.
----
- lib/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
-index 57690091..2cd3291d 100644
---- a/lib/CMakeLists.txt
-+++ b/lib/CMakeLists.txt
-@@ -34,7 +34,7 @@ endif()
- set(SANITIZER_OPTIONS "")
-
- if(ENABLE_ASAN)
-- list(APPEND SANITIZER_OPTIONS "-fsanitize=address")
-+ list(APPEND SANITIZER_OPTIONS "-fsanitize=address" "-fsanitize-recover=address")
- list(APPEND SANITIZER_LIBS "asan")
- endif()
-
---
-2.15.1
-
diff --git a/0011-Fix-a-few-incorrect-missing-ifdef-cl_khr_fp64.patch b/0011-Fix-a-few-incorrect-missing-ifdef-cl_khr_fp64.patch
deleted file mode 100644
index 15e7a97..0000000
--- a/0011-Fix-a-few-incorrect-missing-ifdef-cl_khr_fp64.patch
+++ /dev/null
@@ -1,361 +0,0 @@
-From c7102b1d347639d12545f1f00d8c8b1aa076182e Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Thu, 11 Jan 2018 09:33:58 +0100
-Subject: [PATCH 11/14] Fix a few incorrect / missing #ifdef cl_khr_fp64
-
-Simplifies printf.c to not require math.h, which was conflicting
-with pocl-types.h in case cl_khr_fp64 was disabled.
-
-Also fixes CMake variable ENABLE_FP64 to properly disable
-doubles. Pocl now builds with -DENABLE_FP64=OFF on 32bit ARM.
----
- CMakeLists.txt | 4 +++-
- doc/sphinx/source/install.rst | 4 ++++
- lib/kernel/host/CMakeLists.txt | 14 +++++++----
- lib/kernel/printf.c | 48 ++++++++++++++++++++-----------------
- lib/kernel/sleef-pocl/expfrexp.cl | 9 ++++---
- lib/kernel/sleef/include/sleef_cl.h | 47 ++++++++++++++++++++++++++----------
- lib/kernel/sleef/libm/sleef_glue.cl | 2 ++
- 7 files changed, 83 insertions(+), 45 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 60d570b8..b89ccd80 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -751,6 +751,8 @@ if(ARM)
- else()
- option(ENABLE_FP64 "Enable FP64 on ARM32 - if you have at least VFP support for doubles, you can leave it ON" ON )
- endif()
-+else()
-+ set(ENABLE_FP64 ON CACHE INTERNAL "FP64, always on except ARM")
- endif()
-
- if(ARM32 OR (LLC_TRIPLE MATCHES "^arm"))
-@@ -800,7 +802,7 @@ if(X86)
- set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64 cl_khr_int64_base_atomics cl_khr_int64_extended_atomics")
- endif()
- # 32bit arm doesnt always support doubles
--if(ENABLE_FP64 AND (NOT LLVM_OLDER_THAN_4_0))
-+if(ARM AND ENABLE_FP64)
- set(HOST_DEVICE_EXTENSIONS "${HOST_DEVICE_EXTENSIONS} cl_khr_fp64")
- endif()
-
-diff --git a/doc/sphinx/source/install.rst b/doc/sphinx/source/install.rst
-index ea983cef..9703668e 100644
---- a/doc/sphinx/source/install.rst
-+++ b/doc/sphinx/source/install.rst
-@@ -134,6 +134,10 @@ use ";" as separator (you'll have to escape it for bash).
- if you want to avoid ICD and build pocl directly as libOpenCL library.
- See also :ref:`linking-with-icd`
-
-+- ``-DENABLE_FP64`` - for ARM platform only. If your CPU doesn't support any
-+ doubles (VFP is enough), disable this. Defaults to OFF when LLVM is older
-+ than 4.0, otherwise defaults to ON.
-+
- - ``-DPOCL_INSTALL_<something>_DIR`` The equivalent of ``--bindir``,
- ``--sbindir`` etc fine-tuning of paths for autotools. See the beginning
- of toplevel CMakeLists.txt for all the variables.
-diff --git a/lib/kernel/host/CMakeLists.txt b/lib/kernel/host/CMakeLists.txt
-index c3657a06..7a08f2ee 100644
---- a/lib/kernel/host/CMakeLists.txt
-+++ b/lib/kernel/host/CMakeLists.txt
-@@ -118,13 +118,13 @@ function(compile_sleef VARIANT SLEEF_CONFIG SLEEF_CONFIG_NEW SLEEF_BC)
-
- set(EXTRA_FLAGS "-DDORENAME;-DPURE_C;-I${CMAKE_SOURCE_DIR}/lib/kernel/sleef/include")
-
-- if(ENABLE_CONFORMANCE)
-+# disabled - this code uses libm
- # compile_sleef_c_to_bc("c" "sleef/libm/sleef_builtin.c"
- # "${VARIANT}" BC_FILE_LIST ${EXTRA_FLAGS})
--# else()
-- # these may be faster than using libm, but not always precise
-- compile_sleef_c_to_bc("c" "sleef/libm/sleefsp.c"
-- "${VARIANT}" BC_FILE_LIST ${EXTRA_FLAGS})
-+ compile_sleef_c_to_bc("c" "sleef/libm/sleefsp.c"
-+ "${VARIANT}" BC_FILE_LIST ${EXTRA_FLAGS})
-+
-+ if(ENABLE_FP64)
- compile_sleef_c_to_bc("c" "sleef/libm/sleefdp.c"
- "${VARIANT}" BC_FILE_LIST ${EXTRA_FLAGS})
- endif()
-@@ -135,6 +135,10 @@ function(compile_sleef VARIANT SLEEF_CONFIG SLEEF_CONFIG_NEW SLEEF_BC)
- file(READ "${CMAKE_SOURCE_DIR}/lib/kernel/sleef/test.c" TEST_SRC)
- file(READ "${CMAKE_SOURCE_DIR}/lib/kernel/sleef/fma_test.c" FMA_TEST_SRC)
-
-+ if(ENABLE_FP64)
-+ set(STR "#define SLEEF_DOUBLE_AVAILABLE\n")
-+ file(APPEND "${SLEEF_CONFIG_NEW}" "${STR}")
-+ endif()
- # current SLEEF code does not have code for
- # ARM32 NEON double vectors (if they even exist)
- if(NOT ARM32)
-diff --git a/lib/kernel/printf.c b/lib/kernel/printf.c
-index bd522fb0..37c7d6d6 100644
---- a/lib/kernel/printf.c
-+++ b/lib/kernel/printf.c
-@@ -25,10 +25,16 @@
- #pragma clang diagnostic push
- #pragma clang diagnostic ignored "-Wformat-security"
-
--#include <limits.h>
-+#ifdef cl_khr_fp64
-+#define LARGEST_FLOAT_TYPE double
-+#define NAN __builtin_nan("1")
-+#else
-+#define LARGEST_FLOAT_TYPE float
-+#define NAN __builtin_nanf("1")
-+#endif
-+
- #include <stdarg.h>
--#include <stdbool.h>
--#include <math.h>
-+#include <limits.h>
-
- // We implement the OpenCL printf by calling the C99 printf. This is
- // not very efficient, but is easy to implement.
-@@ -48,15 +54,13 @@ int snprintf(OCL_C_AS char* restrict str, size_t size,
-
- // Conversion flags
- typedef struct {
-- bool left;
-- bool plus;
-- bool space;
-- bool alt;
-- bool zero;
-+ int left:1;
-+ int plus:1;
-+ int space:1;
-+ int alt:1;
-+ int zero:1;
- } flags_t;
-
--
--
- // Helper routines to output integers
-
- #define INT_CONV_char "hh"
-@@ -139,9 +143,9 @@ float __attribute__((overloadable)) vload_half(size_t offset,
- DEBUG_PRINTF(("[printf:floats:d=%d]\n", d)); \
- if (d != 0) printf(comma); \
- WIDTH val = (FLOAT_GET_##WIDTH((OCL_C_AS const WIDTH*)vals+d)); \
-- if (isnan (val)) \
-+ if (val != val) \
- val = NAN; \
-- printf(outfmt, (double)val); \
-+ printf (outfmt, (LARGEST_FLOAT_TYPE)val); \
- } \
- DEBUG_PRINTF(("[printf:floats:done]\n")); \
- }
-@@ -249,18 +253,18 @@ int __cl_printf(const OCL_CONSTANT_AS char* restrict format, ...)
- DEBUG_PRINTF(("[printf:arg]\n"));
- // Flags
- flags_t flags;
-- flags.left = false;
-- flags.plus = false;
-- flags.space = false;
-- flags.alt = false;
-- flags.zero = false;
-+ flags.left = 0;
-+ flags.plus = 0;
-+ flags.space = 0;
-+ flags.alt = 0;
-+ flags.zero = 0;
- for (;;) {
- switch (ch) {
-- case '-': if (flags.left) goto error; flags.left = true; break;
-- case '+': if (flags.plus) goto error; flags.plus = true; break;
-- case ' ': if (flags.space) goto error; flags.space = true; break;
-- case '#': if (flags.alt) goto error; flags.alt = true; break;
-- case '0': if (flags.zero) goto error; flags.zero = true; break;
-+ case '-': if (flags.left) goto error; flags.left = 1; break;
-+ case '+': if (flags.plus) goto error; flags.plus = 1; break;
-+ case ' ': if (flags.space) goto error; flags.space = 1; break;
-+ case '#': if (flags.alt) goto error; flags.alt = 1; break;
-+ case '0': if (flags.zero) goto error; flags.zero = 1; break;
- default: goto flags_done;
- }
- ch = *++format;
-diff --git a/lib/kernel/sleef-pocl/expfrexp.cl b/lib/kernel/sleef-pocl/expfrexp.cl
-index 7c3c595b..60d5f2aa 100644
---- a/lib/kernel/sleef-pocl/expfrexp.cl
-+++ b/lib/kernel/sleef-pocl/expfrexp.cl
-@@ -1,10 +1,5 @@
- #include "sleef_cl.h"
-
--_CL_ALWAYSINLINE long2 Sleef_expfrexpd2_long (double2 x);
--_CL_ALWAYSINLINE long4 Sleef_expfrexpd4_long (double4 x);
--_CL_ALWAYSINLINE long8 Sleef_expfrexpd8_long (double8 x);
--
--
- _CL_OVERLOADABLE
- int
- _cl_expfrexp (float x)
-@@ -91,6 +86,10 @@ _cl_expfrexp (float16 x)
-
- #ifdef cl_khr_fp64
-
-+_CL_ALWAYSINLINE long2 Sleef_expfrexpd2_long (double2 x);
-+_CL_ALWAYSINLINE long4 Sleef_expfrexpd4_long (double4 x);
-+_CL_ALWAYSINLINE long8 Sleef_expfrexpd8_long (double8 x);
-+
- _CL_OVERLOADABLE
- long
- _cl_expfrexp (double x)
-diff --git a/lib/kernel/sleef/include/sleef_cl.h b/lib/kernel/sleef/include/sleef_cl.h
-index 89d2b3aa..6f436271 100644
---- a/lib/kernel/sleef/include/sleef_cl.h
-+++ b/lib/kernel/sleef/include/sleef_cl.h
-@@ -59,14 +59,21 @@ typedef float float4 __attribute__ ((__ext_vector_type__ (4)));
- typedef float float8 __attribute__ ((__ext_vector_type__ (8)));
- typedef float float16 __attribute__ ((__ext_vector_type__ (16)));
-
-+#ifdef SLEEF_DOUBLE_AVAILABLE
- typedef double double2 __attribute__ ((__ext_vector_type__ (2)));
- typedef double double3 __attribute__ ((__ext_vector_type__ (3)));
- typedef double double4 __attribute__ ((__ext_vector_type__ (4)));
- typedef double double8 __attribute__ ((__ext_vector_type__ (8)));
- typedef double double16 __attribute__ ((__ext_vector_type__ (16)));
-
-+#define cl_khr_fp64
-+
-+#endif
-+
- #endif
-
-+#ifdef cl_khr_fp64
-+
- #ifndef Sleef_double2_DEFINED
- #define Sleef_double2_DEFINED
- typedef struct
-@@ -75,14 +82,6 @@ typedef struct
- } Sleef_double2;
- #endif
-
--#ifndef Sleef_float2_DEFINED
--#define Sleef_float2_DEFINED
--typedef struct
--{
-- float x, y;
--} Sleef_float2;
--#endif
--
- double Sleef_sin_u35 (double);
- double Sleef_cos_u35 (double);
- Sleef_double2 Sleef_sincos_u35 (double);
-@@ -147,6 +146,19 @@ double Sleef_tgamma_u10 (double);
- double Sleef_erf_u10 (double);
- double Sleef_erfc_u15 (double);
-
-+double Sleef_pown_u10 (double, int);
-+double Sleef_powr_u10 (double, double);
-+
-+#endif
-+
-+#ifndef Sleef_float2_DEFINED
-+#define Sleef_float2_DEFINED
-+typedef struct
-+{
-+ float x, y;
-+} Sleef_float2;
-+#endif
-+
- float Sleef_sinf_u35 (float);
- float Sleef_cosf_u35 (float);
- Sleef_float2 Sleef_sincosf_u35 (float);
-@@ -212,9 +224,7 @@ float Sleef_tgammaf_u10 (float);
- float Sleef_erff_u10 (float);
- float Sleef_erfcf_u15 (float);
-
--double Sleef_pown_u10 (double, int);
- float Sleef_pownf_u10 (float, int);
--double Sleef_powr_u10 (double, double);
- float Sleef_powrf_u10 (float, float);
-
-
-@@ -222,6 +232,8 @@ float Sleef_powrf_u10 (float, float);
-
- #ifdef SLEEF_VEC_512_AVAILABLE
-
-+#ifdef cl_khr_fp64
-+
- #ifndef Sleef_double8_2_DEFINED
- typedef struct
- {
-@@ -295,6 +307,8 @@ double8 Sleef_tgammad8_u10 (double8);
- double8 Sleef_erfd8_u10 (double8);
- double8 Sleef_erfcd8_u15 (double8);
-
-+#endif
-+
- #ifndef Sleef_float16_2_DEFINED
- typedef struct
- {
-@@ -380,6 +394,8 @@ float16 Sleef_powrf16_u10 (float16, float16);
-
- #ifdef SLEEF_VEC_256_AVAILABLE
-
-+#ifdef cl_khr_fp64
-+
- #ifndef Sleef_double4_2_DEFINED
- typedef struct
- {
-@@ -453,6 +469,8 @@ double4 Sleef_tgammad4_u10 (double4);
- double4 Sleef_erfd4_u10 (double4);
- double4 Sleef_erfcd4_u15 (double4);
-
-+#endif
-+
- #ifndef Sleef_float8_2_DEFINED
- typedef struct
- {
-@@ -535,6 +553,8 @@ float8 Sleef_powrf8_u10 (float8, float8);
-
- #ifdef SLEEF_VEC_128_AVAILABLE
-
-+#ifdef cl_khr_fp64
-+
- #ifndef Sleef_double2_2_DEFINED
- typedef struct
- {
-@@ -608,6 +628,11 @@ double2 Sleef_tgammad2_u10 (double2);
- double2 Sleef_erfd2_u10 (double2);
- double2 Sleef_erfcd2_u15 (double2);
-
-+double2 Sleef_pownd2_u10 (double2, int2);
-+double2 Sleef_powrd2_u10 (double2, double2);
-+
-+#endif
-+
- #ifndef Sleef_float4_2_DEFINED
- typedef struct
- {
-@@ -681,9 +706,7 @@ float4 Sleef_tgammaf4_u10 (float4);
- float4 Sleef_erff4_u10 (float4);
- float4 Sleef_erfcf4_u15 (float4);
-
--double2 Sleef_pownd2_u10 (double2, int2);
- float4 Sleef_pownf4_u10 (float4, int4);
--double2 Sleef_powrd2_u10 (double2, double2);
- float4 Sleef_powrf4_u10 (float4, float4);
-
- #endif
-diff --git a/lib/kernel/sleef/libm/sleef_glue.cl b/lib/kernel/sleef/libm/sleef_glue.cl
-index ad98b43e..cd4bfa34 100644
---- a/lib/kernel/sleef/libm/sleef_glue.cl
-+++ b/lib/kernel/sleef/libm/sleef_glue.cl
-@@ -23,6 +23,7 @@
-
- #include "sleef_cl.h"
-
-+#ifdef cl_khr_fp64
- #ifdef SLEEF_VEC_128_AVAILABLE
-
- _CL_ALWAYSINLINE double2 Sleef_ldexpd2_long (double2 x, long2 k);
-@@ -76,3 +77,4 @@ Sleef_expfrexpd8 (double8 x)
- }
-
- #endif
-+#endif
---
-2.15.1
-
diff --git a/0012-Mark-test_clSetEventCallback-as-WILL_FAIL-when-TSan-.patch b/0012-Mark-test_clSetEventCallback-as-WILL_FAIL-when-TSan-.patch
deleted file mode 100644
index e6c8dfb..0000000
--- a/0012-Mark-test_clSetEventCallback-as-WILL_FAIL-when-TSan-.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 0029cab0c15179cb8a46b419104227c2c1d877a8 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Thu, 11 Jan 2018 12:48:19 +0100
-Subject: [PATCH 12/14] Mark test_clSetEventCallback as WILL_FAIL when TSan is
- enabled
-
-due to how the test is written, TSan will inevitably complain.
----
- tests/runtime/CMakeLists.txt | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/tests/runtime/CMakeLists.txt b/tests/runtime/CMakeLists.txt
-index c68fe327..a0409da9 100644
---- a/tests/runtime/CMakeLists.txt
-+++ b/tests/runtime/CMakeLists.txt
-@@ -126,6 +126,13 @@ set_tests_properties("runtime/test_kernel_cache_includes"
- PROPERTIES PASS_REGULAR_EXPRESSION
- "function 1.*first include.*function 2.*second include")
-
-+# event callback test changes shared variables in the callbacks
-+# doesn't need fixing in test, but TSan inevitably complains
-+if(ENABLE_TSAN)
-+ set_tests_properties("runtime/clSetEventCallback"
-+ PROPERTIES WILL_FAIL 1)
-+endif()
-+
- # Label tests that work with CUDA backend
- set_property(TEST
- "runtime/clGetDeviceInfo"
---
-2.15.1
-
diff --git a/0013-Fix-a-compilation-warning.patch b/0013-Fix-a-compilation-warning.patch
deleted file mode 100644
index 13b1491..0000000
--- a/0013-Fix-a-compilation-warning.patch
+++ /dev/null
@@ -1,234 +0,0 @@
-From 84029fdf7dde331a45632272854922db0da8e3ad Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Thu, 11 Jan 2018 12:50:15 +0100
-Subject: [PATCH 13/14] Fix a compilation warning
-
-(float)(double literal) complains when cl_khr_fp64 is disabled
----
- lib/kernel/convert_type.cl | 48 +++++++++++++++++++++++-----------------------
- lib/kernel/convert_type.py | 4 ++--
- 2 files changed, 26 insertions(+), 26 deletions(-)
-
-diff --git a/lib/kernel/convert_type.cl b/lib/kernel/convert_type.cl
-index 8da102a3..11aca55c 100644
---- a/lib/kernel/convert_type.cl
-+++ b/lib/kernel/convert_type.cl
-@@ -38567,7 +38567,7 @@ float convert_float_rtz(long x)
- ulong abs_x = abs(x);
- ulong abs_y = abs(y);
- float res = select(r, nextafter(r, sign(r) * (float)-INFINITY), convert_int(abs_y > abs_x));
-- return select(res, (float)(0x1.fffffep+62), convert_int(x >= 0x7fffffffffffffffL));
-+ return select(res, (float)(0x1.fffffep+62f), convert_int(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38597,7 +38597,7 @@ float convert_float_rtn(long x)
- float r = convert_float(x);
- long y = convert_long_sat(r);
- float res = select(r, nextafter(r, (float)-INFINITY), convert_int(y > x));
-- return select(res, (float)(0x1.fffffep+62), convert_int(x >= 0x7fffffffffffffffL));
-+ return select(res, (float)(0x1.fffffep+62f), convert_int(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38610,7 +38610,7 @@ float2 convert_float2_rtz(long2 x)
- ulong2 abs_x = abs(x);
- ulong2 abs_y = abs(y);
- float2 res = select(r, nextafter(r, sign(r) * (float2)-INFINITY), convert_int2(abs_y > abs_x));
-- return select(res, (float2)(0x1.fffffep+62), convert_int2(x >= 0x7fffffffffffffffL));
-+ return select(res, (float2)(0x1.fffffep+62f), convert_int2(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38640,7 +38640,7 @@ float2 convert_float2_rtn(long2 x)
- float2 r = convert_float2(x);
- long2 y = convert_long2_sat(r);
- float2 res = select(r, nextafter(r, (float2)-INFINITY), convert_int2(y > x));
-- return select(res, (float2)(0x1.fffffep+62), convert_int2(x >= 0x7fffffffffffffffL));
-+ return select(res, (float2)(0x1.fffffep+62f), convert_int2(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38653,7 +38653,7 @@ float3 convert_float3_rtz(long3 x)
- ulong3 abs_x = abs(x);
- ulong3 abs_y = abs(y);
- float3 res = select(r, nextafter(r, sign(r) * (float3)-INFINITY), convert_int3(abs_y > abs_x));
-- return select(res, (float3)(0x1.fffffep+62), convert_int3(x >= 0x7fffffffffffffffL));
-+ return select(res, (float3)(0x1.fffffep+62f), convert_int3(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38683,7 +38683,7 @@ float3 convert_float3_rtn(long3 x)
- float3 r = convert_float3(x);
- long3 y = convert_long3_sat(r);
- float3 res = select(r, nextafter(r, (float3)-INFINITY), convert_int3(y > x));
-- return select(res, (float3)(0x1.fffffep+62), convert_int3(x >= 0x7fffffffffffffffL));
-+ return select(res, (float3)(0x1.fffffep+62f), convert_int3(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38696,7 +38696,7 @@ float4 convert_float4_rtz(long4 x)
- ulong4 abs_x = abs(x);
- ulong4 abs_y = abs(y);
- float4 res = select(r, nextafter(r, sign(r) * (float4)-INFINITY), convert_int4(abs_y > abs_x));
-- return select(res, (float4)(0x1.fffffep+62), convert_int4(x >= 0x7fffffffffffffffL));
-+ return select(res, (float4)(0x1.fffffep+62f), convert_int4(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38726,7 +38726,7 @@ float4 convert_float4_rtn(long4 x)
- float4 r = convert_float4(x);
- long4 y = convert_long4_sat(r);
- float4 res = select(r, nextafter(r, (float4)-INFINITY), convert_int4(y > x));
-- return select(res, (float4)(0x1.fffffep+62), convert_int4(x >= 0x7fffffffffffffffL));
-+ return select(res, (float4)(0x1.fffffep+62f), convert_int4(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38739,7 +38739,7 @@ float8 convert_float8_rtz(long8 x)
- ulong8 abs_x = abs(x);
- ulong8 abs_y = abs(y);
- float8 res = select(r, nextafter(r, sign(r) * (float8)-INFINITY), convert_int8(abs_y > abs_x));
-- return select(res, (float8)(0x1.fffffep+62), convert_int8(x >= 0x7fffffffffffffffL));
-+ return select(res, (float8)(0x1.fffffep+62f), convert_int8(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38769,7 +38769,7 @@ float8 convert_float8_rtn(long8 x)
- float8 r = convert_float8(x);
- long8 y = convert_long8_sat(r);
- float8 res = select(r, nextafter(r, (float8)-INFINITY), convert_int8(y > x));
-- return select(res, (float8)(0x1.fffffep+62), convert_int8(x >= 0x7fffffffffffffffL));
-+ return select(res, (float8)(0x1.fffffep+62f), convert_int8(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38782,7 +38782,7 @@ float16 convert_float16_rtz(long16 x)
- ulong16 abs_x = abs(x);
- ulong16 abs_y = abs(y);
- float16 res = select(r, nextafter(r, sign(r) * (float16)-INFINITY), convert_int16(abs_y > abs_x));
-- return select(res, (float16)(0x1.fffffep+62), convert_int16(x >= 0x7fffffffffffffffL));
-+ return select(res, (float16)(0x1.fffffep+62f), convert_int16(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -38812,7 +38812,7 @@ float16 convert_float16_rtn(long16 x)
- float16 r = convert_float16(x);
- long16 y = convert_long16_sat(r);
- float16 res = select(r, nextafter(r, (float16)-INFINITY), convert_int16(y > x));
-- return select(res, (float16)(0x1.fffffep+62), convert_int16(x >= 0x7fffffffffffffffL));
-+ return select(res, (float16)(0x1.fffffep+62f), convert_int16(x >= 0x7fffffffffffffffL));
- }
- #endif
-
-@@ -39083,7 +39083,7 @@ float convert_float_rtz(ulong x)
- ulong abs_x = abs(x);
- ulong abs_y = abs(y);
- float res = select(r, nextafter(r, sign(r) * (float)-INFINITY), convert_int(abs_y > abs_x));
-- return select(res, (float)(0x1.fffffep+63), convert_int(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float)(0x1.fffffep+63f), convert_int(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39113,7 +39113,7 @@ float convert_float_rtn(ulong x)
- float r = convert_float(x);
- ulong y = convert_ulong_sat(r);
- float res = select(r, nextafter(r, (float)-INFINITY), convert_int(y > x));
-- return select(res, (float)(0x1.fffffep+63), convert_int(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float)(0x1.fffffep+63f), convert_int(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39126,7 +39126,7 @@ float2 convert_float2_rtz(ulong2 x)
- ulong2 abs_x = abs(x);
- ulong2 abs_y = abs(y);
- float2 res = select(r, nextafter(r, sign(r) * (float2)-INFINITY), convert_int2(abs_y > abs_x));
-- return select(res, (float2)(0x1.fffffep+63), convert_int2(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float2)(0x1.fffffep+63f), convert_int2(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39156,7 +39156,7 @@ float2 convert_float2_rtn(ulong2 x)
- float2 r = convert_float2(x);
- ulong2 y = convert_ulong2_sat(r);
- float2 res = select(r, nextafter(r, (float2)-INFINITY), convert_int2(y > x));
-- return select(res, (float2)(0x1.fffffep+63), convert_int2(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float2)(0x1.fffffep+63f), convert_int2(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39169,7 +39169,7 @@ float3 convert_float3_rtz(ulong3 x)
- ulong3 abs_x = abs(x);
- ulong3 abs_y = abs(y);
- float3 res = select(r, nextafter(r, sign(r) * (float3)-INFINITY), convert_int3(abs_y > abs_x));
-- return select(res, (float3)(0x1.fffffep+63), convert_int3(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float3)(0x1.fffffep+63f), convert_int3(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39199,7 +39199,7 @@ float3 convert_float3_rtn(ulong3 x)
- float3 r = convert_float3(x);
- ulong3 y = convert_ulong3_sat(r);
- float3 res = select(r, nextafter(r, (float3)-INFINITY), convert_int3(y > x));
-- return select(res, (float3)(0x1.fffffep+63), convert_int3(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float3)(0x1.fffffep+63f), convert_int3(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39212,7 +39212,7 @@ float4 convert_float4_rtz(ulong4 x)
- ulong4 abs_x = abs(x);
- ulong4 abs_y = abs(y);
- float4 res = select(r, nextafter(r, sign(r) * (float4)-INFINITY), convert_int4(abs_y > abs_x));
-- return select(res, (float4)(0x1.fffffep+63), convert_int4(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float4)(0x1.fffffep+63f), convert_int4(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39242,7 +39242,7 @@ float4 convert_float4_rtn(ulong4 x)
- float4 r = convert_float4(x);
- ulong4 y = convert_ulong4_sat(r);
- float4 res = select(r, nextafter(r, (float4)-INFINITY), convert_int4(y > x));
-- return select(res, (float4)(0x1.fffffep+63), convert_int4(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float4)(0x1.fffffep+63f), convert_int4(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39255,7 +39255,7 @@ float8 convert_float8_rtz(ulong8 x)
- ulong8 abs_x = abs(x);
- ulong8 abs_y = abs(y);
- float8 res = select(r, nextafter(r, sign(r) * (float8)-INFINITY), convert_int8(abs_y > abs_x));
-- return select(res, (float8)(0x1.fffffep+63), convert_int8(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float8)(0x1.fffffep+63f), convert_int8(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39285,7 +39285,7 @@ float8 convert_float8_rtn(ulong8 x)
- float8 r = convert_float8(x);
- ulong8 y = convert_ulong8_sat(r);
- float8 res = select(r, nextafter(r, (float8)-INFINITY), convert_int8(y > x));
-- return select(res, (float8)(0x1.fffffep+63), convert_int8(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float8)(0x1.fffffep+63f), convert_int8(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39298,7 +39298,7 @@ float16 convert_float16_rtz(ulong16 x)
- ulong16 abs_x = abs(x);
- ulong16 abs_y = abs(y);
- float16 res = select(r, nextafter(r, sign(r) * (float16)-INFINITY), convert_int16(abs_y > abs_x));
-- return select(res, (float16)(0x1.fffffep+63), convert_int16(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float16)(0x1.fffffep+63f), convert_int16(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
-@@ -39328,7 +39328,7 @@ float16 convert_float16_rtn(ulong16 x)
- float16 r = convert_float16(x);
- ulong16 y = convert_ulong16_sat(r);
- float16 res = select(r, nextafter(r, (float16)-INFINITY), convert_int16(y > x));
-- return select(res, (float16)(0x1.fffffep+63), convert_int16(x >= 0xfffffffffffffffeUL));
-+ return select(res, (float16)(0x1.fffffep+63f), convert_int16(x >= 0xfffffffffffffffeUL));
- }
- #endif
-
---
-2.15.1
-
diff --git a/0014-Fix-a-data-race-in-pocl_runtime_config.c.patch b/0014-Fix-a-data-race-in-pocl_runtime_config.c.patch
deleted file mode 100644
index 259637f..0000000
--- a/0014-Fix-a-data-race-in-pocl_runtime_config.c.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From da7d8cee0fffeebe5490d0a9770e760af0197909 Mon Sep 17 00:00:00 2001
-From: Michal Babej <michal.babej(a)tut.fi>
-Date: Thu, 11 Jan 2018 13:17:46 +0100
-Subject: [PATCH 14/14] Fix a data race in pocl_runtime_config.c
-
-LL_PREPEND(head, item) changes the head (env_cache) on every call,
-which conflicts with other threads calling find_env() with env_cache.
----
- lib/CL/pocl_runtime_config.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/CL/pocl_runtime_config.c b/lib/CL/pocl_runtime_config.c
-index d84ea263..c7000068 100644
---- a/lib/CL/pocl_runtime_config.c
-+++ b/lib/CL/pocl_runtime_config.c
-@@ -62,7 +62,7 @@ static env_data* find_env (env_data* cache, const char* key)
- ed->env = strdup (key);
- ed->value = strdup (value);
- ed->next = NULL;
-- LL_PREPEND(env_cache, ed);
-+ LL_APPEND(env_cache, ed);
- POCL_UNLOCK(lock);
- return ed;
- }
---
-2.15.1
-
diff --git a/pocl.spec b/pocl.spec
index d386314..4e638f2 100644
--- a/pocl.spec
+++ b/pocl.spec
@@ -1,9 +1,10 @@
%global sover 2
+%global with_tests 1
Summary: Portable Computing Language - an OpenCL implementation
Name: pocl
Version: 1.1
-Release: 1%{?dist}
+Release: 2%{?dist}
# The whole code is under MIT
# except include/utlist.h which is under BSD (and unbundled) and
@@ -15,11 +16,9 @@ Source0: https://github.com/pocl/pocl/archive/v%{version}.tar.gz
# FIXME: link
Patch1001: 0001-wrap-more-stuff-for-64-bit-atomics.patch
-# aarch64 seems to have a build system problem that makes it pass -march=(unknown).
-# ppc64 builds fine, but: 41% tests passed, 64 tests failed out of 108.
-# ppc64le fails with compilation errors.
-# s390(x) clang build still seems to be suffering from bug 1309055.
-ExcludeArch: aarch64 ppc64 ppc64le s390 s390x
+# aarch64 builds fine, but: 15% tests passed, 103 tests failed out of 121
+# ppc64/ppc64le/s390x builds fine, but: 15% tests passed, 102 tests failed out of 120
+ExclusiveArch: %{arm} %{x86} x86_64
BuildRequires: cmake
BuildRequires: clang clang-devel
@@ -101,6 +100,7 @@ popd
#ln -vs %%{_includedir}/vecmath %%{buildroot}/%%{_libdir}/pocl/vecmath
# <visit0r> but you need to run the .py to generate the files under the pocl dir
+%if 0%{?with_tests}
%check
pushd %{_target_platform}
# https://github.com/pocl/pocl/issues/602
@@ -112,6 +112,7 @@ pushd %{_target_platform}
;
%endif
popd
+%endif
%ldconfig_scriptlets
@@ -128,6 +129,9 @@ popd
%{_libdir}/pkgconfig/%{name}.pc
%changelog
+* Mon Mar 26 2018 Peter Robinson <pbrobinson(a)fedoraproject.org> 1.1-2
+- Minor spec updates/cleanups
+
* Fri Mar 23 2018 Tom Stellard <tstellar(a)redhat.com> - 1.1-1
- Update to 1.1
6 years, 1 month
Architecture specific change in rpms/clang.git
by githook-noreply@fedoraproject.org
The package rpms/clang.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/clang.git/commit/?id=79d093b2ef86....
Change:
+%ifarch %{arm}
Thanks.
Full change:
============
commit ee5cc3e9a047f33e28492a9278420d1cf3347da3
Author: Tom Stellard <tstellar(a)redhat.com>
Date: Fri Mar 23 18:03:55 2018 +0000
Add a clang++-{version} symlink rhbz#1534098
diff --git a/clang.spec b/clang.spec
index 0144780..0f3d11d 100644
--- a/clang.spec
+++ b/clang.spec
@@ -17,6 +17,7 @@
%{_bindir}/clang \
%{_bindir}/clang++ \
%{_bindir}/clang-%{maj_ver}.%{min_ver} \
+ %{_bindir}/clang++-%{maj_ver}.%{min_ver} \
%{_bindir}/clang-check \
%{_bindir}/clang-cl \
%{_bindir}/clang-cpp \
@@ -37,7 +38,7 @@
Name: clang
Version: %{maj_ver}.%{min_ver}.%{patch_ver}
-Release: 4%{?dist}
+Release: 5%{?dist}
Summary: A C language family front-end for LLVM
License: NCSA
@@ -248,6 +249,9 @@ rm -Rvf %{buildroot}%{_pkgdocdir}
# TODO: What are the Fedora guidelines for packaging bash autocomplete files?
rm -vf %{buildroot}%{_datadir}/clang/bash-autocomplete.sh
+# Add clang++-{version} sylink
+ln -s %{_bindir}/clang++ %{buildroot}%{_bindir}/clang++-%{maj_ver}.%{min_ver}
+
%check
# requires lit.py from LLVM utilities
cd _build
@@ -317,6 +321,9 @@ make %{?_smp_mflags} check || :
%{python2_sitelib}/clang/
%changelog
+* Fri Mar 23 2018 Tom Stellard <tstellar(a)redhat.com> - 6.0.0-5
+- Add a clang++-{version} symlink rhbz#1534098
+
* Thu Mar 22 2018 Tom Stellard <tstellar(a)redhat.com> - 6.0.0-4
- Use correct script for running lit tests
commit 79d093b2ef864ca52ba78e0d9c00551b476433ec
Author: Tom Stellard <tstellar(a)redhat.com>
Date: Fri Mar 23 06:02:11 2018 +0000
Use correct script for running lit tests
diff --git a/clang.spec b/clang.spec
index fda9c34..0144780 100644
--- a/clang.spec
+++ b/clang.spec
@@ -37,7 +37,7 @@
Name: clang
Version: %{maj_ver}.%{min_ver}.%{patch_ver}
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: A C language family front-end for LLVM
License: NCSA
@@ -202,7 +202,7 @@ cd _build
-DLLVM_BUILD_DOCS=ON \
-DLLVM_ENABLE_SPHINX=ON \
-DSPHINX_WARNINGS_AS_ERRORS=OFF \
- -DLLVM_EXTERNAL_LIT=%{python2_sitelib}/lit/run.py \
+ -DLLVM_EXTERNAL_LIT=%{python2_sitelib}/lit/main.py \
\
-DCLANG_BUILD_EXAMPLES:BOOL=OFF \
%if 0%{?__isa_bits} == 64
@@ -251,7 +251,13 @@ rm -vf %{buildroot}%{_datadir}/clang/bash-autocomplete.sh
%check
# requires lit.py from LLVM utilities
cd _build
-PATH=%{_libdir}/llvm:$PATH make check-clang
+# FIXME: Fix failing ARM tests
+PATH=%{_libdir}/llvm:$PATH make check-clang || \
+%ifarch %{arm}
+:
+%else
+false
+%endif
mkdir -p %{_builddir}/%{test_suite_srcdir}/_build
cd %{_builddir}/%{test_suite_srcdir}/_build
@@ -311,6 +317,9 @@ make %{?_smp_mflags} check || :
%{python2_sitelib}/clang/
%changelog
+* Thu Mar 22 2018 Tom Stellard <tstellar(a)redhat.com> - 6.0.0-4
+- Use correct script for running lit tests
+
* Wed Mar 21 2018 Tom Stellard <tstellar(a)redhat.com> - 6.0.0-3
- Fix toolchain detection so we don't default to using cross-compilers:
rhbz#1482491
commit 63bf60b28490cfacd3aaa03a77e350caf79cd626
Author: Tom Stellard <tstellar(a)redhat.com>
Date: Mon Mar 12 20:39:40 2018 +0000
Fix toolchain detection so we don't default to using cross-compilers
rhbz#1482491
diff --git a/0001-Driver-Prefer-vendor-supplied-gcc-toolchain.patch b/0001-Driver-Prefer-vendor-supplied-gcc-toolchain.patch
new file mode 100644
index 0000000..1b9d0e0
--- /dev/null
+++ b/0001-Driver-Prefer-vendor-supplied-gcc-toolchain.patch
@@ -0,0 +1,120 @@
+From 69d981a5d41d481556bd38f8d668d7f1177ac2b4 Mon Sep 17 00:00:00 2001
+From: Tom Stellard <tstellar(a)redhat.com>
+Date: Thu, 18 Jan 2018 02:57:51 +0000
+Subject: [PATCH] Driver: Prefer vendor supplied gcc toolchain
+
+Summary:
+This patch fixes an issue on Fedora where if you had the x86_64 cross
+compiler installed on your x86_64 system, then clang would use that compiler
+as the default toolchain. This was happening because the cross compiler
+is installed to /usr/lib/gcc/x86_64-linux-gnu/ and this directory comes before
+the default compiler directory (/usr/lib/gcc/x86_64-redhat-linux/) in the search
+list.
+
+This patch re-orders the search list so that vendor supplied gcc toolchains
+are selected before toolchains with a generic target, which should prevent
+these kind of issues on other OSes too.
+
+Subscribers: srhines, cfe-commits
+
+Differential Revision: https://reviews.llvm.org/D42608
+---
+ lib/Driver/ToolChains/Gnu.cpp | 45 ++++++++++++++++++++++---------------------
+ 1 file changed, 23 insertions(+), 22 deletions(-)
+
+diff --git a/lib/Driver/ToolChains/Gnu.cpp b/lib/Driver/ToolChains/Gnu.cpp
+index 7845781..9cec316 100644
+--- a/lib/Driver/ToolChains/Gnu.cpp
++++ b/lib/Driver/ToolChains/Gnu.cpp
+@@ -1709,8 +1709,8 @@ bool Generic_GCC::GCCInstallationDetector::getBiarchSibling(Multilib &M) const {
+ // lifetime or initialization issues.
+ static const char *const AArch64LibDirs[] = {"/lib64", "/lib"};
+ static const char *const AArch64Triples[] = {
+- "aarch64-none-linux-gnu", "aarch64-linux-gnu", "aarch64-linux-android",
+- "aarch64-redhat-linux", "aarch64-suse-linux"};
++ "aarch64-redhat-linux", "aarch64-suse-linux",
++ "aarch64-none-linux-gnu", "aarch64-linux-gnu", "aarch64-linux-android"};
+ static const char *const AArch64beLibDirs[] = {"/lib"};
+ static const char *const AArch64beTriples[] = {"aarch64_be-none-linux-gnu",
+ "aarch64_be-linux-gnu"};
+@@ -1718,10 +1718,11 @@ bool Generic_GCC::GCCInstallationDetector::getBiarchSibling(Multilib &M) const {
+ static const char *const ARMLibDirs[] = {"/lib"};
+ static const char *const ARMTriples[] = {"arm-linux-gnueabi",
+ "arm-linux-androideabi"};
+- static const char *const ARMHFTriples[] = {"arm-linux-gnueabihf",
+- "armv7hl-redhat-linux-gnueabi",
++ static const char *const ARMHFTriples[] = {"armv7hl-redhat-linux-gnueabi",
+ "armv6hl-suse-linux-gnueabi",
+- "armv7hl-suse-linux-gnueabi"};
++ "armv7hl-suse-linux-gnueabi",
++ "arm-linux-gnueabihf",
++ };
+ static const char *const ARMebLibDirs[] = {"/lib"};
+ static const char *const ARMebTriples[] = {"armeb-linux-gnueabi",
+ "armeb-linux-androideabi"};
+@@ -1730,19 +1731,19 @@ bool Generic_GCC::GCCInstallationDetector::getBiarchSibling(Multilib &M) const {
+
+ static const char *const X86_64LibDirs[] = {"/lib64", "/lib"};
+ static const char *const X86_64Triples[] = {
+- "x86_64-linux-gnu", "x86_64-unknown-linux-gnu",
+- "x86_64-pc-linux-gnu", "x86_64-redhat-linux6E",
+- "x86_64-redhat-linux", "x86_64-suse-linux",
+- "x86_64-manbo-linux-gnu", "x86_64-linux-gnu",
+- "x86_64-slackware-linux", "x86_64-linux-android",
++ "x86_64-redhat-linux6E", "x86_64-redhat-linux",
++ "x86_64-suse-linux", "x86_64-slackware-linux",
++ "x86_64-manbo-linux-gnu", "x86_64-linux-gnu",
++ "x86_64-unknown-linux-gnu", "x86_64-pc-linux-gnu",
++ "x86_64-linux-gnu", "x86_64-linux-android",
+ "x86_64-unknown-linux"};
+ static const char *const X32LibDirs[] = {"/libx32"};
+ static const char *const X86LibDirs[] = {"/lib32", "/lib"};
+ static const char *const X86Triples[] = {
+- "i686-linux-gnu", "i686-pc-linux-gnu", "i486-linux-gnu",
+- "i386-linux-gnu", "i386-redhat-linux6E", "i686-redhat-linux",
+- "i586-redhat-linux", "i386-redhat-linux", "i586-suse-linux",
+- "i486-slackware-linux", "i686-montavista-linux", "i686-linux-android",
++ "i386-redhat-linux6E", "i686-redhat-linux", "i586-redhat-linuxll",
++ "i386-redhat-linux", "i586-suse-linux", "i486-slackware-linux",
++ "i686-montavista-linux", "i686-linux-gnu", "i686-pc-linux-gnu",
++ "i486-linux-gnu", "i386-linux-gnu", "i686-linux-android",
+ "i586-linux-gnu"};
+
+ static const char *const MIPSLibDirs[] = {"/lib"};
+@@ -1772,16 +1773,16 @@ bool Generic_GCC::GCCInstallationDetector::getBiarchSibling(Multilib &M) const {
+
+ static const char *const PPCLibDirs[] = {"/lib32", "/lib"};
+ static const char *const PPCTriples[] = {
+- "powerpc-linux-gnu", "powerpc-unknown-linux-gnu", "powerpc-linux-gnuspe",
+- "powerpc-suse-linux", "powerpc-montavista-linuxspe"};
++ "powerpc-suse-linux", "powerpc-montavista-linuxspe",
++ "powerpc-linux-gnu", "powerpc-unknown-linux-gnu", "powerpc-linux-gnuspe"};
+ static const char *const PPC64LibDirs[] = {"/lib64", "/lib"};
+ static const char *const PPC64Triples[] = {
+- "powerpc64-linux-gnu", "powerpc64-unknown-linux-gnu",
+- "powerpc64-suse-linux", "ppc64-redhat-linux"};
++ "powerpc64-suse-linux", "ppc64-redhat-linux",
++ "powerpc64-linux-gnu", "powerpc64-unknown-linux-gnu"};
+ static const char *const PPC64LELibDirs[] = {"/lib64", "/lib"};
+ static const char *const PPC64LETriples[] = {
+- "powerpc64le-linux-gnu", "powerpc64le-unknown-linux-gnu",
+- "powerpc64le-suse-linux", "ppc64le-redhat-linux"};
++ "powerpc64le-suse-linux", "ppc64le-redhat-linux",
++ "powerpc64le-linux-gnu", "powerpc64le-unknown-linux-gnu"};
+
+ static const char *const SPARCv8LibDirs[] = {"/lib32", "/lib"};
+ static const char *const SPARCv8Triples[] = {"sparc-linux-gnu",
+@@ -1792,8 +1793,8 @@ bool Generic_GCC::GCCInstallationDetector::getBiarchSibling(Multilib &M) const {
+
+ static const char *const SystemZLibDirs[] = {"/lib64", "/lib"};
+ static const char *const SystemZTriples[] = {
+- "s390x-linux-gnu", "s390x-unknown-linux-gnu", "s390x-ibm-linux-gnu",
+- "s390x-suse-linux", "s390x-redhat-linux"};
++ "s390x-ibm-linux-gnu", "s390x-suse-linux", "s390x-redhat-linux",
++ "s390x-linux-gnu", "s390x-unknown-linux-gnu"};
+
+ // Solaris.
+ static const char *const SolarisSPARCLibDirs[] = {"/gcc"};
+--
+1.8.3.1
+
diff --git a/clang.spec b/clang.spec
index 6a415a6..fda9c34 100644
--- a/clang.spec
+++ b/clang.spec
@@ -37,7 +37,7 @@
Name: clang
Version: %{maj_ver}.%{min_ver}.%{patch_ver}
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: A C language family front-end for LLVM
License: NCSA
@@ -50,6 +50,7 @@ Source100: clang-config.h
Patch0: 0001-lit.cfg-Add-hack-so-lit-can-find-not-and-FileCheck.patch
Patch1: 0001-GCC-compatibility-Ignore-fstack-clash-protection.patch
+Patch2: 0001-Driver-Prefer-vendor-supplied-gcc-toolchain.patch
BuildRequires: cmake
BuildRequires: llvm-devel = %{version}
@@ -171,6 +172,7 @@ Requires: python2
%setup -q -n %{clang_srcdir}
%patch0 -p1 -b .lit-search-path
%patch1 -p1 -b .fstack-clash-protection
+%patch2 -p1 -b .vendor-gcc
mv ../%{clang_tools_srcdir} tools/extra
@@ -309,6 +311,10 @@ make %{?_smp_mflags} check || :
%{python2_sitelib}/clang/
%changelog
+* Wed Mar 21 2018 Tom Stellard <tstellar(a)redhat.com> - 6.0.0-3
+- Fix toolchain detection so we don't default to using cross-compilers:
+ rhbz#1482491
+
* Mon Mar 12 2018 Tom Stellard <tstellar(a)redhat.com> - 6.0.0-2
- Add Provides: clang(major) rhbz#1547444
6 years, 1 month