Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package nlopt for openSUSE:Factory checked in at 2022-02-10 23:12:06 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/nlopt (Old) and /work/SRC/openSUSE:Factory/.nlopt.new.1956 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nlopt" Thu Feb 10 23:12:06 2022 rev:17 rq:953019 version:2.7.1 Changes: -------- --- /work/SRC/openSUSE:Factory/nlopt/nlopt.changes 2021-12-12 00:58:08.866606554 +0100 +++ /work/SRC/openSUSE:Factory/.nlopt.new.1956/nlopt.changes 2022-02-10 23:12:43.224306218 +0100 @@ -1,0 +2,8 @@ +Tue Feb 8 19:48:49 UTC 2022 - Stefan Br??ns <[email protected]> + +- Split bindings into separate build, to avoid the octave (and + thus Java, Qt5, ...) dependency. Also allows to build the + library on SLE 15.x. +- Adjust Python3 package name (python-nlopt -> python3-nlopt) + +------------------------------------------------------------------- New: ---- _multibuild ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ nlopt.spec ++++++ --- /var/tmp/diff_new_pack.QgoFiy/_old 2022-02-10 23:12:43.832307757 +0100 +++ /var/tmp/diff_new_pack.QgoFiy/_new 2022-02-10 23:12:43.836307768 +0100 @@ -1,7 +1,7 @@ # # spec file for package nlopt # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,22 +16,35 @@ # -Name: nlopt +%global flavor @BUILD_FLAVOR@%{nil} + +%if "%{flavor}" == "" +%bcond_with bindings +%endif +%if "%{flavor}" == "bindings" +%bcond_without bindings +%define psuffix -bindings +%endif +%define pname nlopt + +Name: nlopt%{?psuffix} Version: 2.7.1 Release: 0 Summary: A library for nonlinear optimization License: LGPL-2.0-only Group: Development/Libraries/C and C++ -URL: http://ab-initio.mit.edu/wiki/index.php/NLopt -Source0: https://github.com/stevengj/nlopt/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz +URL: https://nlopt.readthedocs.io/en/latest/ +Source0: https://github.com/stevengj/nlopt/archive/v%{version}.tar.gz#/%{pname}-%{version}.tar.gz BuildRequires: cmake BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: hdf5-devel BuildRequires: pkgconfig +%if %{with bindings} BuildRequires: python3-numpy-devel BuildRequires: swig BuildRequires: pkgconfig(octave) +%endif %description NLopt is a free/open-source library for nonlinear optimization, @@ -39,37 +52,40 @@ optimization routines available online as well as original implementations of various other algorithms. -%package -n lib%{name}0 +%package -n lib%{pname}0 Summary: A library for nonlinear optimization Group: System/Libraries -%description -n lib%{name}0 +%description -n lib%{pname}0 NLopt is a free/open-source library for nonlinear optimization, providing a common interface for a number of different free optimization routines available online as well as original implementations of various other algorithms. %package devel -Summary: Development files for %{name} +Summary: Development files for %{pname} Group: Development/Libraries/C and C++ -Requires: lib%{name}0 = %{version} +Requires: lib%{pname}0 = %{version} %description devel -The %{name}-devel package contains libraries and header files for -developing applications that use %{name}. +The %{pname}-devel package contains libraries and header files for +developing applications that use NLopt. -%package -n python-%{name} +%package -n python3-%{pname} Summary: Python interface to nonlinear optimization libray Group: Development/Libraries/Python Requires: python3-numpy +Provides: python-%{pname} = %{version}-%{release} +Obsoletes: python-%{pname} < %{version}-%{release} + -%description -n python-%{name} +%description -n python3-%{pname} NLopt is a free/open-source library for nonlinear optimization, providing a common interface for a number of different free optimization routines available online as well as original implementations of various other algorithms. -This package contains Python3 interface to NLopt library. +This package contains the Python3 interface for NLopt. %package -n octave-nlopt_optimize Summary: Octave interface to nonlinear optimization libray @@ -82,29 +98,42 @@ optimization routines available online as well as original implementations of various other algorithms. -This package contains Octave interface to NLopt library. +This package contains the Octave interface for NLopt. %prep -%autosetup -p1 +%autosetup -p1 -n %{pname}-%{version} %build %cmake \ -DCMAKE_SKIP_RPATH:BOOL=OFF \ -DCMAKE_SKIP_INSTALL_RPATH:BOOL=ON \ - -DNLOPT_MATLAB=OFF + -DNLOPT_MATLAB=OFF \ + -DNLOPT_CXX:BOOL=ON \ + -DNLOPT_TESTS:BOOL=ON \ + %{!?with_bindings:-DNLOPT_PYTHON:BOOL=OFF} \ + %{!?with_bindings:-DNLOPT_OCTAVE:BOOL=OFF} \ + %{!?with_bindings:-DNLOPT_SWIG:BOOL=OFF} \ + %{nil} %cmake_build %install %cmake_install -%fdupes %{buildroot}%{py_sitedir} +%if %{with bindings} +# remove files from the main package +for e in %{_includedir} %{_libdir}/lib\* %{_libdir}/pkgconfig %{_libdir}/cmake %{_mandir} ; do + rm -R %{buildroot}/${e} +done +%fdupes %{buildroot}%{pyton3_sitearch} +%endif %check %ctest -%post -n lib%{name}0 -p /sbin/ldconfig -%postun -n lib%{name}0 -p /sbin/ldconfig +%post -n lib%{pname}0 -p /sbin/ldconfig +%postun -n lib%{pname}0 -p /sbin/ldconfig -%files -n lib%{name}0 +%if "%{flavor}" == "" +%files -n lib%{pname}0 %{_libdir}/*.so.* %files devel @@ -112,11 +141,13 @@ %doc AUTHORS NEWS.md README.md TODO %{_includedir}/* %{_libdir}/*.so -%{_libdir}/pkgconfig/%{name}.pc -%{_libdir}/cmake/%{name}/ +%{_libdir}/pkgconfig/%{pname}.pc +%{_libdir}/cmake/%{pname}/ %{_mandir}/man3/*.3%{?ext_man} +%endif -%files -n python-%{name} +%if %{with bindings} +%files -n python3-%{pname} %license COPYING %{python3_sitearch}/* @@ -127,5 +158,6 @@ %dir %{_libdir}/octave/*/site/oct/* %{_libdir}/octave/*/site/oct/*/*.oct %{_datadir}/octave/*/site/m/* +%endif %changelog ++++++ _multibuild ++++++ <multibuild> <package>bindings</package> </multibuild>
