Hello community,

here is the log from the commit of package openucx for openSUSE:Factory checked 
in at 2017-07-12 19:33:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openucx (Old)
 and      /work/SRC/openSUSE:Factory/.openucx.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "openucx"

Wed Jul 12 19:33:54 2017 rev:3 rq:507873 version:1.3+git44

Changes:
--------
--- /work/SRC/openSUSE:Factory/openucx/openucx.changes  2016-06-19 
10:50:45.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.openucx.new/openucx.changes     2017-07-12 
19:33:55.597968264 +0200
@@ -1,0 +2,24 @@
+Fri Jun 30 09:30:58 UTC 2017 - nmoreychaisemar...@suse.com
+
+- Disable avx at configure level
+
+-------------------------------------------------------------------
+Wed Jun 28 16:46:31 UTC 2017 - nmoreychaisemar...@suse.com
+
+- Add openucx-s390x-support.patch to fix compilation on s390x
+- Compile openucx on s390x
+
+-------------------------------------------------------------------
+Thu Jun  8 12:12:59 UTC 2017 - nmoreychaisemar...@suse.com
+
+- Fix compilation on ppc
+
+-------------------------------------------------------------------
+Fri May 26 08:29:51 UTC 2017 - jeng...@inai.de
+
+- Update to snapshot 1.3+git44
+  * No changelog was found
+- Add -Wno-error and disable AVX/SSE as it is not guaranteed
+  to exist.
+
+-------------------------------------------------------------------

Old:
----
  ucx-0~git1727.tar.xz

New:
----
  openucx-s390x-support.patch
  ucx-1.3+git44.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ openucx.spec ++++++
--- /var/tmp/diff_new_pack.POmyGf/_old  2017-07-12 19:33:56.381857665 +0200
+++ /var/tmp/diff_new_pack.POmyGf/_new  2017-07-12 19:33:56.381857665 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package openucx
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,29 +16,32 @@
 #
 
 
-%define version_unconverted 0~git1727
+%define version_unconverted 1.3+git44
 
 Name:           openucx
 Summary:        Unifieid Communication X
 License:        BSD-3-Clause
 Group:          Development/Libraries/C and C++
-Version:        0~git1727
+Version:        1.3+git44
 Release:        0
 Url:            http://openucx.org/
 
 #Git-Clone:    git://github.com/openucx/ucx
 #Git-Web:      https://github.com/openucx/ucx
 Source:         ucx-%version.tar.xz
+Patch0:         openucx-s390x-support.patch
 BuildRequires:  autoconf >= 2.63
 BuildRequires:  automake >= 1.10
+BuildRequires:  binutils-devel
 BuildRequires:  doxygen
 BuildRequires:  gcc-c++
 BuildRequires:  libibverbs-devel
+BuildRequires:  libnuma-devel
 BuildRequires:  libtool
 BuildRequires:  pkg-config
 BuildRequires:  zlib-devel
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-ExclusiveArch:  aarch64 %power64 x86_64
+ExclusiveArch:  aarch64 %power64 x86_64 s390x
 
 %description
 UCX is a communication library implementing high-performance
@@ -73,52 +76,52 @@
 libucm is a standalone non-unloadable library which installs hooks
 for virtual memory changes in the current process.
 
-%package -n libucp2
+%package -n libucp0
 Summary:        Infiniband Unified Communication Protocols
 Group:          System/Libraries
 
-%description -n libucp2
+%description -n libucp0
 High-level API uses UCT framework to construct protocols commonly
 found in applications (MPI, OpenSHMEM, PGAS, etc.)
 
 %package -n libucp-devel
 Summary:        Development files for Unified Communication Protocols (UC-P)
 Group:          Development/Libraries/C and C++
-Requires:       libucp2 = %version
+Requires:       libucp0 = %version
 
 %description -n libucp-devel
 High-level API uses UCT framework to construct protocols commonly
 found in applications (MPI, OpenSHMEM, PGAS, etc.)
 
-%package -n libucs2
+%package -n libucs0
 Summary:        Infiniband Unicified Communication Services
 Group:          System/Libraries
 
-%description -n libucs2
+%description -n libucs0
 This framework provides basic infrastructure for component based
 programming, memory management, and useful system utilities.
 
 %package -n libucs-devel
 Summary:        Development files for Unified Communication Services (UC-S)
 Group:          Development/Libraries/C and C++
-Requires:       libucs2 = %version
+Requires:       libucs0 = %version
 
 %description -n libucs-devel
 This framework provides basic infrastructure for component based
 programming, memory management, and useful system utilities.
 
-%package -n libuct2
+%package -n libuct0
 Summary:        Infiniband Unified Communication Transport
 Group:          System/Libraries
 
-%description -n libuct2
+%description -n libuct0
 Low-level API that expose basic network operations supported by
 underlying hardware.
 
 %package -n libuct-devel
 Summary:        Development files for Unified Communication Transport (UC-T)
 Group:          Development/Libraries/C and C++
-Requires:       libuct2 = %version
+Requires:       libuct0 = %version
 
 %description -n libuct-devel
 Low-level API that expose basic network operations supported by
@@ -126,18 +129,26 @@
 
 %prep
 %setup -qn ucx-%version
+%patch0
 
 %build
 autoreconf -fi
-%configure --disable-static
-make %{?_smp_mflags}
-
-%post   -n libucp2 -p /sbin/ldconfig
-%postun -n libucp2 -p /sbin/ldconfig
-%post   -n libucs2 -p /sbin/ldconfig
-%postun -n libucs2 -p /sbin/ldconfig
-%post   -n libuct2 -p /sbin/ldconfig
-%postun -n libuct2 -p /sbin/ldconfig
+export UCX_CFLAGS="%optflags -Wno-error"
+%ifarch x86_64
+export UCX_CFLAGS="$UCX_CFLAGS -mno-avx"
+%endif
+%ifarch %ix86
+export UCX_CFLAGS="$UCX_CFLAGS -mno-sse -mno-sse2"
+%endif
+%configure --disable-static --without-avx
+make %{?_smp_mflags} V=1
+
+%post   -n libucp0 -p /sbin/ldconfig
+%postun -n libucp0 -p /sbin/ldconfig
+%post   -n libucs0 -p /sbin/ldconfig
+%postun -n libucs0 -p /sbin/ldconfig
+%post   -n libuct0 -p /sbin/ldconfig
+%postun -n libuct0 -p /sbin/ldconfig
 %post   -n libucm0 -p /sbin/ldconfig
 %postun -n libucm0 -p /sbin/ldconfig
 
@@ -149,6 +160,7 @@
 %defattr(-,root,root)
 %_bindir/ucx_*
 %_datadir/ucx/
+%_libdir/pkgconfig/ucx.pc
 %doc LICENSE
 
 %files -n libucm0
@@ -160,7 +172,7 @@
 %_includedir/ucm/
 %_libdir/libucm.so
 
-%files -n libucp2
+%files -n libucp0
 %defattr(-,root,root)
 %_libdir/libucp.so.*
 
@@ -169,7 +181,7 @@
 %_includedir/ucp/
 %_libdir/libucp.so
 
-%files -n libucs2
+%files -n libucs0
 %defattr(-,root,root)
 %_libdir/libucs.so.*
 
@@ -178,7 +190,7 @@
 %_includedir/ucs/
 %_libdir/libucs.so
 
-%files -n libuct2
+%files -n libuct0
 %defattr(-,root,root)
 %_libdir/libuct.so.*
 

++++++ _service ++++++
--- /var/tmp/diff_new_pack.POmyGf/_old  2017-07-12 19:33:56.409853716 +0200
+++ /var/tmp/diff_new_pack.POmyGf/_new  2017-07-12 19:33:56.413853151 +0200
@@ -1,14 +1,14 @@
 <services>
-       <service name="tar_scm" mode="localonly">
+       <service name="tar_scm" mode="disabled">
                <param name="scm">git</param>
                <param name="url">git://github.com/openucx/ucx</param>
-               <param 
name="revision">6cb0d7189bd53534575a992a2bdb27dd1cb66e22</param>
-               <param 
name="parent-tag">20bf38e8c57df29815c512aa19fb194cf0527f3d</param>
-               <param name="versionformat">0~git@TAG_OFFSET@</param>
+               <param name="revision">master</param>
+               <param 
name="parent-tag">9f8e93fc392a456cc86a60b55f02ef3086a6c616</param>
+               <param name="versionformat">1.3+git@TAG_OFFSET@</param>
        </service>
-       <service name="recompress" mode="localonly">
+       <service name="recompress" mode="disabled">
                <param name="file">*.tar</param>
                <param name="compression">xz</param>
        </service>
-       <service name="set_version" mode="localonly"/>
+       <service name="set_version" mode="disabled"/>
 </services>

++++++ openucx-s390x-support.patch ++++++
diff --git src/ucs/Makefile.am src/ucs/Makefile.am
index ba869dbf..c588cd9d 100644
--- src/ucs/Makefile.am
+++ src/ucs/Makefile.am
@@ -25,6 +25,8 @@ nobase_dist_libucs_la_HEADERS = \
        arch/generic/cpu.h \
        arch/ppc64/bitops.h \
        arch/ppc64/cpu.h \
+       arch/s390x/bitops.h \
+       arch/s390x/cpu.h \
        arch/x86_64/atomic.h \
        arch/x86_64/bitops.h \
        arch/x86_64/cpu.h \
diff --git src/ucs/arch/atomic.h src/ucs/arch/atomic.h
index 7649971b..7bb2bc36 100644
--- src/ucs/arch/atomic.h
+++ src/ucs/arch/atomic.h
@@ -15,6 +15,8 @@
 #  include "generic/atomic.h"
 #elif defined(__aarch64__)
 #  include "generic/atomic.h"
+#elif defined(__s390x__)
+#  include "generic/atomic.h"
 #else
 #  error "Unsupported architecture"
 #endif
diff --git src/ucs/arch/bitops.h src/ucs/arch/bitops.h
index f4dd3ab4..de53bde0 100644
--- src/ucs/arch/bitops.h
+++ src/ucs/arch/bitops.h
@@ -14,6 +14,8 @@
 #  include "ppc64/bitops.h"
 #elif defined(__aarch64__)
 #  include "aarch64/bitops.h"
+#elif defined(__s390x__)
+#  include "s390x/bitops.h"
 #else
 #  error "Unsupported architecture"
 #endif
diff --git src/ucs/arch/cpu.h src/ucs/arch/cpu.h
index d5127b3d..817ac0d2 100644
--- src/ucs/arch/cpu.h
+++ src/ucs/arch/cpu.h
@@ -52,6 +52,8 @@ typedef enum ucs_cpu_flag {
 #  include "ppc64/cpu.h"
 #elif defined(__aarch64__)
 #  include "aarch64/cpu.h"
+#elif defined(__s390x__)
+#  include "s390x/cpu.h"
 #else
 #  error "Unsupported architecture"
 #endif
diff --git src/ucs/arch/s390x/bitops.h src/ucs/arch/s390x/bitops.h
new file mode 100644
index 00000000..39ad1251
--- /dev/null
+++ src/ucs/arch/s390x/bitops.h
@@ -0,0 +1,32 @@
+/**
+* Copyright (C) Mellanox Technologies Ltd. 2001-2015.  ALL RIGHTS RESERVED.
+*
+* See file LICENSE for terms.
+*/
+
+#ifndef UCS_S390X_BITOPS_H_
+#define UCS_S390X_BITOPS_H_
+
+#include <stdint.h>
+
+
+static inline unsigned __ucs_ilog2_u32(uint32_t n)
+{
+       if (!n)
+               return 0;
+       return 31 - __builtin_clz(n);
+}
+
+static inline unsigned __ucs_ilog2_u64(uint64_t n)
+{
+       if (!n)
+               return 0;
+       return 63 - __builtin_clz(n);
+}
+
+static inline unsigned ucs_ffs64(uint64_t n)
+{
+    return __ucs_ilog2_u64(n & -n);
+}
+
+#endif
diff --git src/ucs/arch/s390x/cpu.h src/ucs/arch/s390x/cpu.h
new file mode 100644
index 00000000..f5131ea3
--- /dev/null
+++ src/ucs/arch/s390x/cpu.h
@@ -0,0 +1,51 @@
+/**
+* Copyright (C) Mellanox Technologies Ltd. 2001-2013.  ALL RIGHTS RESERVED.
+* Copyright (C) ARM Ltd. 2016-2017.  ALL RIGHTS RESERVED.
+*
+* See file LICENSE for terms.
+*/
+
+
+#ifndef UCS_S390X_CPU_H_
+#define UCS_S390X_CPU_H_
+
+#include <ucs/sys/compiler.h>
+#include <ucs/arch/generic/cpu.h>
+#include <stdint.h>
+
+
+#define UCS_ARCH_CACHE_LINE_SIZE 256
+
+/* Assume the worst - weak memory ordering */
+#define ucs_memory_bus_fence()        asm volatile (""::: "memory")
+#define ucs_memory_bus_store_fence()  ucs_memory_bus_fence()
+#define ucs_memory_bus_load_fence()   ucs_memory_bus_fence()
+#define ucs_memory_cpu_fence()        ucs_memory_bus_fence()
+#define ucs_memory_cpu_store_fence()  ucs_memory_bus_fence()
+#define ucs_memory_cpu_load_fence()   ucs_memory_bus_fence()
+
+
+static inline uint64_t ucs_arch_read_hres_clock()
+{
+    unsigned long  clk;
+    asm volatile("stck %0" : "=Q" (clk) : : "cc");
+    return clk >> 2;
+}
+#define ucs_arch_get_clocks_per_sec ucs_arch_generic_get_clocks_per_sec
+
+
+static inline ucs_cpu_model_t ucs_arch_get_cpu_model()
+{
+    return UCS_CPU_MODEL_UNKNOWN;
+}
+
+static inline int ucs_arch_get_cpu_flag()
+{
+    return UCS_CPU_FLAG_UNKNOWN;
+}
+
+double ucs_arch_get_clocks_per_sec();
+
+#define ucs_arch_wait_mem ucs_arch_generic_wait_mem
+
+#endif

Reply via email to