Hello community,

here is the log from the commit of package maxima for openSUSE:Factory checked 
in at 2020-10-28 09:59:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/maxima (Old)
 and      /work/SRC/openSUSE:Factory/.maxima.new.3463 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "maxima"

Wed Oct 28 09:59:39 2020 rev:42 rq:844445 version:5.44.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/maxima/maxima.changes    2020-06-11 
10:12:51.100730504 +0200
+++ /work/SRC/openSUSE:Factory/.maxima.new.3463/maxima.changes  2020-10-28 
10:00:03.139214861 +0100
@@ -1,0 +2,24 @@
+Tue Oct 27 18:34:23 UTC 2020 - Lars Vogdt <l...@linux-schulserver.de>
+
+- also ship README.SUSE.packaging as source
+
+-------------------------------------------------------------------
+Tue Oct 20 20:11:09 UTC 2020 - Atri Bhattacharya <badshah...@gmail.com>
+
+- Replace manually defined macros to enable/disable different
+  lisp bindings with %bcond_with(out) macros.
+- Improve dependency resolution between the different lisp
+  versions of maxima_exec by using Supplements: packageand()
+  appropriately.
+- Enable sbcl compiled binaries and package it (needed for
+  maxima-jupyter).
+- Enable mathjax support for installed html manual (pass
+  --enable-mathjax to configure).
+- Add Requires: rlwrap to maxima, needed for rmaxima.
+- Add Suggests: maxima-exec-sbcl to maxima to weakly recommend a
+  specific flavour of maxima in case the user doesn't specify one
+  during installation.
+- Add README.SUSE.packaging documenting the packaging changes that
+  will be needed for pkgs depending on maxima.
+
+-------------------------------------------------------------------

New:
----
  README.SUSE.packaging

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

Other differences:
------------------
++++++ maxima.spec ++++++
--- /var/tmp/diff_new_pack.OhaAJW/_old  2020-10-28 10:00:04.527215831 +0100
+++ /var/tmp/diff_new_pack.OhaAJW/_new  2020-10-28 10:00:04.531215834 +0100
@@ -16,16 +16,11 @@
 #
 
 
-# This can be changed by modifying the variables below.
-%define enable_clisp 1
-%define clisp_flags --enable-clisp
-%define clisp_version 2.33
-%define enable_cmucl 0
-%define cmucl_flags --disable-cmucl
-%define enable_sbcl 0
-%define sbcl_flags --disable-sbcl
-%define enable_gcl 0
-%define gcl_flags --disable-gcl
+# clisp and sbcl are available for oS, cmucl and gcl are not
+%bcond_without clisp
+%bcond_without sbcl
+%bcond_with cmucl
+%bcond_with gcl
 
 # Inhibit automatic compressing of info files. Compressed info
 # files break maxima's internal help.
@@ -39,6 +34,7 @@
 URL:            http://maxima.sourceforge.net/
 Source0:        
http://download.sourceforge.net/maxima/%{name}-%{version}.tar.gz
 Source1:        maxima-rpmlintrc
+Source2:        README.SUSE.packaging 
 # PATCH-FIX-UPSTREAM maxima-python3.patch badshah...@gmail.com -- Use python3 
instead of python(2) when importing vtk modules and building help; this allows 
maxima to be built with python3 instead of python2.
 Patch0:         maxima-python3.patch
 BuildRequires:  bash-completion
@@ -50,14 +46,25 @@
 Requires:       gnuplot
 Requires:       maxima_exec
 Requires:       plotutils
+Requires:       rlwrap
+Suggests:       maxima-exec-sbcl
 ExcludeArch:    ppc64 ppc64le
 %if 0%{?suse_version} <= 1500
 Requires(post): /sbin/install-info
 Requires(postun): /sbin/install-info
 %endif
-%if 0%{?enable_clisp}
+%if %{with clisp}
 BuildRequires:  clisp >= 2.34.0
 %endif
+%if %{with cmucl}
+BuildRequires:  cmucl
+%endif
+%if %{with gcl}
+BuildRequires:  gcl
+%endif
+%if %{with sbcl}
+BuildRequires:  sbcl
+%endif
 
 %description
 Maxima is a full symbolic computation program.  It is full featured
@@ -86,31 +93,31 @@
 
 Xmaxima is written in the Tcl/Tk language.
 
-%if 0%{?enable_clisp}
+%if %{with clisp}
 %package        exec-clisp
 Summary:        Maxima compiled with clisp
-BuildRequires:  clisp
-Requires:       maxima = %{version}
+Requires:       clisp
+Supplements:    packageand(maxima:clisp)
 Provides:       maxima_exec = %{version}
 
 %description exec-clisp
 Maxima compiled with Common Lisp.
 %endif
 
-%if 0%{?enable_cmucl}
+%if %{with cmucl}
 %package exec-cmucl
 Summary:        Maxima compiled with CMUCL
-Requires:       maxima = %{version}
+Supplements:    packageand(maxima:cmucl)
 Provides:       maxima_exec = %{version}
 
 %description    exec-cmucl
 Maxima compiled with CMUCL.
 %endif
 
-%if 0%{?enable_sbcl}
+%if %{with sbcl}
 %package exec-sbcl
 Summary:        Maxima compiled with SBCL
-Requires:       maxima = %{version}
+Supplements:    packageand(maxima:sbcl)
 Requires:       sbcl
 Provides:       maxima_exec = %{version}
 
@@ -118,10 +125,10 @@
 Maxima compiled with SBCL.
 %endif
 
-%if 0%{?enable_gcl}
+%if %{with gcl}
 %package exec-gcl
 Summary:        Maxima compiled with GCL
-Requires:       maxima = %{version}
+Supplements:    packageand(maxima:gcl)
 Provides:       maxima_exec = %{version}
 
 %description exec-gcl
@@ -181,13 +188,17 @@
 %patch0 -p1
 
 %build
-%configure  %{?sbcl_flags:} %{?cmucl_flags:} %{?gcl_flags:} %{?clisp_flags:} \
+%configure  %{?with_sbcl:--enable-sbcl} \
+            %{?with_cmucl:--enable-cmucl} \
+            %{?with_gcl:--enable-gcl} \
+            %{?with_clisp:--enable-clisp} \
             --enable-gettext \
             --enable-lang-de-utf8 \
             --enable-lang-es-utf8 \
             --enable-lang-pt-utf8 \
             --enable-lang-pt_BR-utf8 \
-            --disable-recode
+            --disable-recode \
+            --enable-mathjax
 %make_build
 
 %install
@@ -287,7 +298,18 @@
 %exclude %{_datadir}/maxima/%{version}/doc/html/pt.utf8
 %exclude %{_datadir}/maxima/%{version}/doc/html/pt_BR.utf8
 %{_libdir}/maxima/%{version}
+%if %{with clisp}
 %exclude %{_libdir}/maxima/%{version}/binary-clisp
+%endif
+%if %{with sbcl}
+%exclude %{_libdir}/maxima/%{version}/binary-sbcl
+%endif
+%if %{with cmucl}
+%exclude %{_libdir}/maxima/%{version}/binary-cmucl
+%endif
+%if %{with gcl}
+%exclude %{_libdir}/maxima/%{version}/binary-gcl
+%endif
 %dir %{_libexecdir}/maxima/%{version}
 %{_libexecdir}/maxima/%{version}/mgnuplot
 %{_infodir}/*
@@ -314,25 +336,24 @@
 %{_datadir}/pixmaps/*
 %{_datadir}/metainfo/*.appdata.xml
 
-%if 0%{?enable_clisp}
+%if %{with clisp}
 %files exec-clisp
-%dir %{_libdir}/maxima/%{version}/binary-clisp/
-%{_libdir}/maxima/%{version}/binary-clisp/*
+%{_libdir}/maxima/%{version}/binary-clisp/
 %endif
 
-%if 0%{?enable_cmucl}
+%if %{with cmucl}
 %files exec-cmucl
-%{_libdir}/maxima/%{version}/binary-cmucl/*
+%{_libdir}/maxima/%{version}/binary-cmucl/
 %endif
 
-%if 0%{?enable_sbcl}
+%if %{with sbcl}
 %files exec-sbcl
-%{_libdir}/maxima/%{version}/binary-sbcl/*
+%{_libdir}/maxima/%{version}/binary-sbcl/
 %endif
 
-%if 0%{?enable_gcl}
+%if %{with gcl}
 %files exec-gcl
-%{_libdir}/maxima/%{version}/binary-gcl/*
+%{_libdir}/maxima/%{version}/binary-gcl/
 %endif
 
 %files lang-de-utf8

++++++ README.SUSE.packaging ++++++
Note to packagers:
* The availability of multiple providers of maxima_exec (namely,
  maxima-exec-clisp and maxima-exec-sbcl) will affect the build dependencies
  (but not the runtime deps) of any package depending on maxima, leaving the
  package in an `unresolvable` state. This should be fixed at the affected
  package's specfile with an additional `BuildRequires: maxima-exec-${flavor}`.
  See for example, how this is done for wxMaxima (obs://Education/wxMaxima). 
* When building multiple lisp flavours, maxima sets `sbcl` as the preferred
  default lisp but it tries and finds other lisp implementations just fine in
  case `maxima-exec-sbcl` is not installed. Thus, one only needs the weaker
  `Suggests` on `maxima-exec-sbcl` for `maxima` rather than a `Requires` or
  even `Recommends`.
* At least one `maxima-exec-${flavor}` must be installed for `maxima` to work;
  this is ensured by the `Requires: maxima_exec` for `maxima`.

Reply via email to