From 8d619349593a88fbfb422a14bdaaa8d9bbb1f7d8cd8a4858e090cb12d11dfb38 Mon Sep 17 00:00:00 2001 From: Thomas Blume Date: Thu, 26 Jan 2017 14:48:20 +0000 Subject: [PATCH] Accepting request 452717 from home:tsaupe Update hwloc to support Knights Mill (fate#321929) OBS-URL: https://build.opensuse.org/request/show/452717 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/hwloc?expand=0&rev=20 --- _service | 17 +-- _service:set_version:hwloc.spec | 202 -------------------------------- hwloc-2.0.tar.xz | 3 - hwloc-rpmlintrc | 2 - hwloc.changes | 41 +++++++ hwloc.spec | 117 ++++++++---------- v1.11.tar.gz | 3 + 7 files changed, 93 insertions(+), 292 deletions(-) delete mode 100644 _service:set_version:hwloc.spec delete mode 100644 hwloc-2.0.tar.xz delete mode 100644 hwloc-rpmlintrc create mode 100644 v1.11.tar.gz diff --git a/_service b/_service index 7b16ec9..0faa3a5 100644 --- a/_service +++ b/_service @@ -1,16 +1,5 @@ - - git - https://github.com/tblume/openmpi-hwloc.git - - hwloc - 2.0 - SLES12SP2 - - - *hwloc*.tar - xz - - + + yes + - diff --git a/_service:set_version:hwloc.spec b/_service:set_version:hwloc.spec deleted file mode 100644 index ab596f9..0000000 --- a/_service:set_version:hwloc.spec +++ /dev/null @@ -1,202 +0,0 @@ -# -# spec file for package hwloc -# -# Copyright (c) 2016 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 -# upon. The license for this file, and modifications and additions to the -# file, is the same license as for the pristine package itself (unless the -# license for the pristine package is not an Open Source License, in which -# case the license is the MIT License). An "Open Source License" is a -# license that conforms to the Open Source Definition (Version 1.9) -# published by the Open Source Initiative. - -# Please submit bugfixes or comments via http://bugs.opensuse.org/ -# - - -%global lname libhwloc5 -%define sversion 2.0 -Name: hwloc -Version: 2.0 -Release: 0 -Summary: Portable Hardware Locality -License: BSD-3-Clause -Group: Productivity/Clustering/Computing -Url: http://www.open-mpi.org/projects/hwloc/ -Source0: hwloc-%{sversion}.tar.xz -Source1: hwloc-rpmlintrc -BuildRequires: autoconf -BuildRequires: automake -BuildRequires: doxygen -BuildRequires: fdupes -BuildRequires: gcc-c++ -BuildRequires: libtool -#BuildRequires: libXNVCtrl-devel -BuildRequires: ncurses-devel -BuildRequires: transfig -BuildRequires: update-desktop-files -BuildRequires: w3m -Requires: %{lname} = %{version}-%{release} -BuildRoot: %{_tmppath}/%{name}-%{version}-build -%if 0%{?suse_version} <= 1220 && !0%{?suse_version} -BuildRequires: pkgconfig(cairo) -BuildRequires: pkgconfig(libxml-2.0) -BuildRequires: pkgconfig(pciaccess) -BuildRequires: pkgconfig(x11) -%else -BuildRequires: cairo-devel -BuildRequires: libxml2-devel -BuildRequires: ncurses-devel -BuildRequires: xorg-x11-libICE-devel -BuildRequires: xorg-x11-libSM-devel -BuildRequires: xorg-x11-libX11-devel -%endif -#BuildRequires: texlive-latex -%if 0%{?suse_version} <= 1220 -BuildRequires: texlive-bin-latex -%else -BuildRequires: texlive-makeindex-bin -%endif -# % ifnarch s390 s390x -# BuildRequires: libibverbs-devel -# % endif -%ifnarch s390 s390x i586 %arm -BuildRequires: libnuma-devel -%endif -BuildRequires: perl-macros -Requires: perl-JSON -Requires: perl-base >= 5.22.1 - -%description -The Portable Hardware Locality (hwloc) software package provides -a portable abstraction (across OS, versions, architectures, ...) -of the hierarchical topology of modern architectures, including -NUMA memory nodes, shared caches, processor sockets, processor cores -and processing units (logical processors or "threads"). It also gathers -various system attributes such as cache and memory information. It primarily -aims at helping applications with gathering information about modern -computing hardware so as to exploit it accordingly and efficiently. - -hwloc may display the topology in multiple convenient formats. -It also offers a powerful programming interface (C API) to gather information -about the hardware, bind processes, and much more. - -%package devel -Summary: Headers and shared development libraries for hwloc -Group: Development/Libraries/C and C++ -Requires: %{lname} = %{version} -Provides: lib%{name}-devel = %{version}-%{release} -Obsoletes: lib%{name}-devel <= 1.11 - -%description devel -Package contains headers and shared object symbolic links for the hwloc. - -%package -n %{lname} -Summary: Run time libraries for the hwloc -Group: System/Libraries -Requires: %{name}-data - -%description -n %{lname} -Package contains run time libraries for the hwloc. - -%package data -Summary: Run time data for hwloc -Group: Development/Libraries/C and C++ - -%description data -Package contains run time data for the hwloc. - -%package doc -Summary: Documentation for hwloc -Group: Documentation/Other - -%description doc -Package contains documentation for %{name}. - -%prep -%setup -q - -%build -%if 0%{?sles_version} -sed -i 's/2.0 dist-bzip2 subdir-objects foreign tar-ustar parallel-tests -Wall -Werror/2.0 dist-bzip2 subdir-objects foreign tar-ustar -Wall -Werror/g' configure.ac -%endif -autoreconf --force --install -sed -i "s;(LN_S) lstopo-no-graphics;(LN_S) lstopo;g" utils/lstopo/Makefile.in -%configure -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 -make %{?_smp_mflags} V=1 - -%install -make install DESTDIR=%{buildroot} INSTALL="install -p" -%suse_update_desktop_file -r lstopo System Monitor -# We don't ship .la files. -rm -rf %{buildroot}%{_libdir}/libhwloc.la - -# documentation will be handled by % doc macro -rm -rf %{buildroot}%{_datadir}/doc/ -%fdupes -s %{buildroot}/%{_mandir}/man1 -%fdupes -s %{buildroot}/%{_mandir}/man7 - -#support perl scripts -mkdir -p %{buildroot}/%{perl_vendorlib} -mv %{buildroot}/%{_bindir}/Perl_* %{buildroot}/%{perl_vendorlib}/ - -%check -#XXX: this is weird, but make check got broken by removing doxygen-doc/man above -# the only one fix is to install documentation by hand, or to ignore check error -make %{?_smp_mflags} check || : - -%post -n %{lname} -p /sbin/ldconfig - -%postun -n %{lname} -p /sbin/ldconfig - -%files -%defattr(-, root, root, -) -%doc AUTHORS COPYING NEWS README VERSION -# This binary is built only for intel architectures -%ifarch %ix86 x86_64 -%attr(0755,root,root) %{_sbindir}/hwloc-dump-hwdata -%endif -%doc %{_mandir}/man1/%{name}* -%doc %{_mandir}/man1/lstopo* -%{_bindir}/hwloc* -%{_bindir}/lsmap -%{_bindir}/lsnettopo -%{_bindir}/lstopo* -%{_bindir}/netloc* -%{perl_vendorlib}/Perl_IB_support.pm -%{perl_vendorlib}/Perl_OF_support.pm -%dir %{_datadir}/hwloc -%{_datadir}/applications/*.desktop - -%files devel -%defattr(-, root, root, -) -%doc %{_mandir}/man7/%{name}* -%{_includedir}/%{name} -%{_includedir}/%{name}.h -%{_includedir}/netloc* -%{_libdir}/lib%{name}.so -%{_libdir}/pkgconfig/%{name}.pc -%{_libdir}/pkgconfig/netloc.pc -%{_libdir}/libnetloc.so -%{_libdir}/libnetloc.la - -%files -n %{lname} -%defattr(-, root, root, -) -%{_libdir}/libhwloc*so.* -%{_libdir}/libnetloc*so.* - -%files data -%defattr(-, root, root, -) -%dir %{_datadir}/%{name} -%{_datadir}/%{name}/%{name}.dtd -%{_datadir}/%{name}/%{name}-valgrind.supp - -%files doc -%defattr(-, root, root, -) -%doc ./doc/images/*.pdf - -%changelog diff --git a/hwloc-2.0.tar.xz b/hwloc-2.0.tar.xz deleted file mode 100644 index 7247a5c..0000000 --- a/hwloc-2.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:91c9eb7fbc4b8deb9dd64718fb7dae2424bbf3be8a654422dce9a625f17116fd -size 1552264 diff --git a/hwloc-rpmlintrc b/hwloc-rpmlintrc deleted file mode 100644 index 6c64e5d..0000000 --- a/hwloc-rpmlintrc +++ /dev/null @@ -1,2 +0,0 @@ -addFilter(".*script-without-shebang.*/usr/lib/perl5/vendor_perl/5.22.1/Perl_.*") -addFilter(".*perl5-naming-policy-not-applied.*/usr/lib/perl5/vendor_perl/5.22.1/Perl_.*") diff --git a/hwloc.changes b/hwloc.changes index f0e1a12..7b589a8 100644 --- a/hwloc.changes +++ b/hwloc.changes @@ -1,3 +1,44 @@ +------------------------------------------------------------------- +Tue Jan 24 15:10:18 UTC 2017 - Thomas.Blume@suse.com + +- use version_prefix in specfile and download_files service to get sources + +------------------------------------------------------------------- +Mon Jan 23 14:37:16 UTC 2017 - tchvatal@suse.com + +- Set noarch on the subpackages that are arch independent +- Run configure with enabling verbose mode and disable needless knobs +- Set version in the package fully (not 1.11 but 1.11.5+git...) +- Rename files to name of the package, if it needs to be renamed the folder + needs to keep the other name too +- Do not mess with provides/obsoletes about the hwloc-2.0 it won't work + with libsolv anyway without user interaction + * Bump the user version to 2.0.0.1.11.5+git... to allow 'fake' update + for user in order to work with fate#321929c#5 + +------------------------------------------------------------------- +Tue Jan 17 12:34:11 UTC 2017 - Thomas.Blume@suse.com + +- switch to version 1.11.5 since 2.0 is a development version with + no .so-version set fate#321929 comment#5) + +------------------------------------------------------------------- +Mon Aug 29 13:28:27 UTC 2016 - Thomas.Blume@suse.com + +- fix missing manpage bug (bsc#995407) +- remove dependency to selinux-policy, selinux is not essential + for hwloc (bsc#976559 comment#4) + +------------------------------------------------------------------- +Fri Apr 22 08:28:22 UTC 2016 - Thomas.Blume@suse.com + +- add dependency to selinux-policy (bsc#976559) + +------------------------------------------------------------------- +Fri Mar 11 05:39:24 UTC 2016 - thomas.blume@suse.com + +- Update to 2.0 to support memory side cache (fate#319511) + ------------------------------------------------------------------- Sat Dec 26 17:24:37 UTC 2015 - mpluskal@suse.com diff --git a/hwloc.spec b/hwloc.spec index ab596f9..5435ea6 100644 --- a/hwloc.spec +++ b/hwloc.spec @@ -1,7 +1,7 @@ # # spec file for package hwloc # -# 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 @@ -17,57 +17,41 @@ %global lname libhwloc5 -%define sversion 2.0 +%if ! 0%{?is_opensuse} +%define version_prefix 2.0.0. +%endif Name: hwloc -Version: 2.0 +Version: %{?version_prefix}1.11.5 Release: 0 Summary: Portable Hardware Locality License: BSD-3-Clause Group: Productivity/Clustering/Computing Url: http://www.open-mpi.org/projects/hwloc/ -Source0: hwloc-%{sversion}.tar.xz -Source1: hwloc-rpmlintrc +#Source0: %{name}-%{version}.tar.xz +Source0: https://github.com/open-mpi/hwloc/archive/v1.11.tar.gz BuildRequires: autoconf BuildRequires: automake BuildRequires: doxygen BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: libtool -#BuildRequires: libXNVCtrl-devel BuildRequires: ncurses-devel -BuildRequires: transfig +BuildRequires: perl +BuildRequires: pkgconfig BuildRequires: update-desktop-files -BuildRequires: w3m -Requires: %{lname} = %{version}-%{release} -BuildRoot: %{_tmppath}/%{name}-%{version}-build -%if 0%{?suse_version} <= 1220 && !0%{?suse_version} BuildRequires: pkgconfig(cairo) BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(pciaccess) BuildRequires: pkgconfig(x11) -%else -BuildRequires: cairo-devel -BuildRequires: libxml2-devel -BuildRequires: ncurses-devel -BuildRequires: xorg-x11-libICE-devel -BuildRequires: xorg-x11-libSM-devel -BuildRequires: xorg-x11-libX11-devel -%endif -#BuildRequires: texlive-latex -%if 0%{?suse_version} <= 1220 -BuildRequires: texlive-bin-latex -%else -BuildRequires: texlive-makeindex-bin -%endif -# % ifnarch s390 s390x -# BuildRequires: libibverbs-devel -# % endif -%ifnarch s390 s390x i586 %arm +Requires: %{lname} = %{version}-%{release} +Requires: perl-JSON +Requires: perl-base >= 5.18.2 +Requires(post): desktop-file-utils +Requires(postun): desktop-file-utils +BuildRoot: %{_tmppath}/%{name}-1.11-build +%ifnarch s390 s390x i586 aarch64 %{arm} BuildRequires: libnuma-devel %endif -BuildRequires: perl-macros -Requires: perl-JSON -Requires: perl-base >= 5.22.1 %description The Portable Hardware Locality (hwloc) software package provides @@ -87,8 +71,9 @@ about the hardware, bind processes, and much more. Summary: Headers and shared development libraries for hwloc Group: Development/Libraries/C and C++ Requires: %{lname} = %{version} -Provides: lib%{name}-devel = %{version}-%{release} -Obsoletes: lib%{name}-devel <= 1.11 +Provides: libhwloc-devel = %{version} +Obsoletes: libhwloc-devel < %{version} +Obsoletes: libhwloc-devel = 0.0.0 %description devel Package contains headers and shared object symbolic links for the hwloc. @@ -104,6 +89,7 @@ Package contains run time libraries for the hwloc. %package data Summary: Run time data for hwloc Group: Development/Libraries/C and C++ +BuildArch: noarch %description data Package contains run time data for the hwloc. @@ -111,26 +97,23 @@ Package contains run time data for the hwloc. %package doc Summary: Documentation for hwloc Group: Documentation/Other +BuildArch: noarch %description doc Package contains documentation for %{name}. %prep -%setup -q +%setup -q -n %{name}-1.11 %build -%if 0%{?sles_version} -sed -i 's/2.0 dist-bzip2 subdir-objects foreign tar-ustar parallel-tests -Wall -Werror/2.0 dist-bzip2 subdir-objects foreign tar-ustar -Wall -Werror/g' configure.ac -%endif -autoreconf --force --install -sed -i "s;(LN_S) lstopo-no-graphics;(LN_S) lstopo;g" utils/lstopo/Makefile.in -%configure -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 -make %{?_smp_mflags} V=1 +autoreconf -fvi + +%configure \ + --disable-silent-rules +make %{?_smp_mflags} %install -make install DESTDIR=%{buildroot} INSTALL="install -p" +%make_install %suse_update_desktop_file -r lstopo System Monitor # We don't ship .la files. rm -rf %{buildroot}%{_libdir}/libhwloc.la @@ -140,60 +123,52 @@ rm -rf %{buildroot}%{_datadir}/doc/ %fdupes -s %{buildroot}/%{_mandir}/man1 %fdupes -s %{buildroot}/%{_mandir}/man7 -#support perl scripts -mkdir -p %{buildroot}/%{perl_vendorlib} -mv %{buildroot}/%{_bindir}/Perl_* %{buildroot}/%{perl_vendorlib}/ - %check #XXX: this is weird, but make check got broken by removing doxygen-doc/man above # the only one fix is to install documentation by hand, or to ignore check error make %{?_smp_mflags} check || : %post -n %{lname} -p /sbin/ldconfig - %postun -n %{lname} -p /sbin/ldconfig +%post +%desktop_database_post + +%postun +%desktop_database_postun + %files %defattr(-, root, root, -) %doc AUTHORS COPYING NEWS README VERSION # This binary is built only for intel architectures -%ifarch %ix86 x86_64 +%ifarch %{ix86} x86_64 %attr(0755,root,root) %{_sbindir}/hwloc-dump-hwdata %endif -%doc %{_mandir}/man1/%{name}* -%doc %{_mandir}/man1/lstopo* +%{_mandir}/man1/hwloc* +%{_mandir}/man1/lstopo* %{_bindir}/hwloc* -%{_bindir}/lsmap -%{_bindir}/lsnettopo %{_bindir}/lstopo* -%{_bindir}/netloc* -%{perl_vendorlib}/Perl_IB_support.pm -%{perl_vendorlib}/Perl_OF_support.pm %dir %{_datadir}/hwloc %{_datadir}/applications/*.desktop +%{_datadir}/hwloc/hwloc-dump-hwdata.service %files devel %defattr(-, root, root, -) -%doc %{_mandir}/man7/%{name}* -%{_includedir}/%{name} -%{_includedir}/%{name}.h -%{_includedir}/netloc* -%{_libdir}/lib%{name}.so -%{_libdir}/pkgconfig/%{name}.pc -%{_libdir}/pkgconfig/netloc.pc -%{_libdir}/libnetloc.so -%{_libdir}/libnetloc.la +%{_mandir}/man7/hwloc* +%{_includedir}/hwloc +%{_includedir}/hwloc.h +%{_libdir}/libhwloc.so +%{_libdir}/pkgconfig/hwloc.pc %files -n %{lname} %defattr(-, root, root, -) %{_libdir}/libhwloc*so.* -%{_libdir}/libnetloc*so.* %files data %defattr(-, root, root, -) -%dir %{_datadir}/%{name} -%{_datadir}/%{name}/%{name}.dtd -%{_datadir}/%{name}/%{name}-valgrind.supp +%dir %{_datadir}/hwloc +%{_datadir}/hwloc/hwloc.dtd +%{_datadir}/hwloc/hwloc-valgrind.supp %files doc %defattr(-, root, root, -) diff --git a/v1.11.tar.gz b/v1.11.tar.gz new file mode 100644 index 0000000..ff8213a --- /dev/null +++ b/v1.11.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1ed66930f32db9630f55ebcea0f41649dc8c174d3f3ea5af7a80e1f3695882f +size 1585620