Hi, I updated the patch to fix the help system for maxima with ECL. To this end I had to set maxima::*maxima-index-dir* to the value "/usr/share/doc/maxima/info" directly in cl-info.lisp, because ECL has no si::save-system to save a modified maxima executable like it is done for GCL to set maxima::*maxima-index-dir* in debian/rules. I also had to prevent dh_compress from compressing the relevant files.
Best, Tobias
diff -Nru maxima-5.35.1/debian/changelog maxima-5.35.1/debian/changelog --- maxima-5.35.1/debian/changelog 2014-12-15 17:33:47.000000000 +0100 +++ maxima-5.35.1/debian/changelog 2015-03-04 22:53:31.000000000 +0100 @@ -1,3 +1,12 @@ +maxima (5.35.1-1.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Create new package maxima-ecl including the maxima ecl binary + and a fasl library for ecl. + * Apply patch build-fasl.patch from Sage to build the fasl library. + + -- Tobias Hansen <than...@debian.org> Mon, 02 Mar 2015 18:33:29 +0100 + maxima (5.35.1-1) unstable; urgency=medium * New upstream release diff -Nru maxima-5.35.1/debian/control maxima-5.35.1/debian/control --- maxima-5.35.1/debian/control 2014-10-24 02:06:05.000000000 +0200 +++ maxima-5.35.1/debian/control 2015-03-02 19:00:47.000000000 +0100 @@ -2,7 +2,7 @@ Section: math Priority: optional Maintainer: Camm Maguire <c...@debian.org> -Build-Depends: gcl ( >= 2.6.11-6 ) , texinfo, libgmp3-dev, libreadline-dev, locales, automake, debhelper ( >=9 ), autoconf2.13, gawk | awk, texlive-latex-recommended, sharutils, libxmu-dev, libxaw7-dev, tex-common +Build-Depends: gcl ( >= 2.6.11-6 ), ecl, texinfo, libffi-dev, libgmp3-dev, libreadline-dev, locales, automake, debhelper ( >=9 ), autoconf2.13, gawk | awk, texlive-latex-recommended, sharutils, libxmu-dev, libxaw7-dev, tex-common Standards-Version: 3.9.5 Package: maxima @@ -123,3 +123,19 @@ . This package contains a set of contributed routines and add-on packages. + +Package: maxima-ecl +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, maxima +Description: Computer algebra system -- ecl runtime and fasl library + Maxima is a fully symbolic computation program. It is full featured + doing symbolic manipulation of polynomials, matrices, rational + functions, integration, Todd-coxeter methods for finite group + analysis, graphing, multiple precision floating point computation. + It has a symbolic source level debugger for maxima code. Maxima is + based on the original Macsyma developed at MIT in the 1970s. It is + quite reliable, and has good garbage collection, and no memory leaks. + It comes with hundreds of self tests. + . + This package contains a maxima runtime compiled with ecl + as well as well as a fasl library of maxima for ecl. diff -Nru maxima-5.35.1/debian/maxima-ecl.install.in maxima-5.35.1/debian/maxima-ecl.install.in --- maxima-5.35.1/debian/maxima-ecl.install.in 1970-01-01 01:00:00.000000000 +0100 +++ maxima-5.35.1/debian/maxima-ecl.install.in 2015-03-04 22:49:04.000000000 +0100 @@ -0,0 +1,2 @@ +debian/tmp/usr/lib/maxima/@MVERS@/binary-ecl/maxima +debian/tmp/usr/lib/ecl/maxima.fas diff -Nru maxima-5.35.1/debian/maxima.install.in maxima-5.35.1/debian/maxima.install.in --- maxima-5.35.1/debian/maxima.install.in 2013-05-01 15:39:37.000000000 +0200 +++ maxima-5.35.1/debian/maxima.install.in 2015-03-04 22:52:30.000000000 +0100 @@ -1,5 +1,6 @@ debian/tmp/usr/bin/maxima -debian/tmp/usr/lib +debian/tmp/usr/lib/maxima/@MVERS@/binary-gcl/maxima +debian/tmp/usr/lib/maxima/@MVERS@/mgnuplot debian/tmp/usr/share/man/man1/maxima.1 debian/tmp/usr/share/maxima/@MVERS@/demo debian/tmp/usr/share/doc/maxima diff -Nru maxima-5.35.1/debian/patches/build-fasl.patch maxima-5.35.1/debian/patches/build-fasl.patch --- maxima-5.35.1/debian/patches/build-fasl.patch 1970-01-01 01:00:00.000000000 +0100 +++ maxima-5.35.1/debian/patches/build-fasl.patch 2015-03-04 22:58:33.000000000 +0100 @@ -0,0 +1,21 @@ +Description: Build a fasl library for ecl in addition to an executable program. + References: + * http://trac.sagemath.org/ticket/16178 + * https://github.com/cschwan/sage-on-gentoo/issues/226 + * https://bugs.gentoo.org/show_bug.cgi?id=499634 +Origin: http://git.sagemath.org/sage.git/tree/build/pkgs/maxima/patches/build-fasl.patch + +--- a/src/maxima.system ++++ b/src/maxima.system +@@ -76,6 +76,11 @@ + ;; Convert dir/foo.fas to dir/foo.o + (make-pathname :type "o" :defaults p)) + files))) ++ (c::build-fasl "binary-ecl/maxima" :lisp-files obj ++ :ld-flags ++ (let ((x (symbol-value (find-symbol "*AUTOCONF-LD-FLAGS*" ++ (find-package "MAXIMA"))))) ++ (if (and x (not (string= x ""))) (list x)))) + (c::build-program "binary-ecl/maxima" :lisp-files obj + :ld-flags + (let ((x (symbol-value (find-symbol "*AUTOCONF-LD-FLAGS*" diff -Nru maxima-5.35.1/debian/patches/renew-cl-info.lsp-patch-to-set-alternative-info-directory maxima-5.35.1/debian/patches/renew-cl-info.lsp-patch-to-set-alternative-info-directory --- maxima-5.35.1/debian/patches/renew-cl-info.lsp-patch-to-set-alternative-info-directory 2014-09-03 16:32:09.000000000 +0200 +++ maxima-5.35.1/debian/patches/renew-cl-info.lsp-patch-to-set-alternative-info-directory 2015-03-07 21:29:56.000000000 +0100 @@ -22,15 +22,13 @@ Reviewed-By: <name and email of someone who approved the patch> Last-Update: <YYYY-MM-DD> -Index: maxima-5.34.0/src/cl-info.lisp -=================================================================== ---- maxima-5.34.0.orig/src/cl-info.lisp -+++ maxima-5.34.0/src/cl-info.lisp +--- a/src/cl-info.lisp ++++ b/src/cl-info.lisp @@ -49,6 +49,8 @@ ; ------------------ search help topics ------------------ -+(defvar maxima::*maxima-index-dir* nil) ++(defvar maxima::*maxima-index-dir* "/usr/share/doc/maxima/info") + (defun load-primary-index () ;; Load the index, but make sure we use a sensible *read-base*. diff -Nru maxima-5.35.1/debian/patches/series maxima-5.35.1/debian/patches/series --- maxima-5.35.1/debian/patches/series 2014-12-15 17:31:29.000000000 +0100 +++ maxima-5.35.1/debian/patches/series 2015-03-02 18:31:55.000000000 +0100 @@ -2,3 +2,4 @@ renew-cl-info.lsp-patch-to-set-alternative-info-directory update-config-sub-guess utf8-gcl-alphabetp +build-fasl.patch diff -Nru maxima-5.35.1/debian/rules maxima-5.35.1/debian/rules --- maxima-5.35.1/debian/rules 2014-12-15 17:14:11.000000000 +0100 +++ maxima-5.35.1/debian/rules 2015-03-07 22:59:39.000000000 +0100 @@ -60,6 +60,7 @@ echo '(setq compiler::*opt-three* "-O0" compiler::*opt-two* "-O0")(si::save-system "gcl")' | GCL_ANSI=t gcl PATH=$$(pwd):$$PATH GCL_ANSI=t ./configure --enable-gcl $$(gcl -batch -eval '#-native-reloc(princ "--enable-gcl-alt-link")(bye)') \ + --enable-ecl \ --enable-sys-proclaim \ --prefix=/usr \ --libexec=/usr/lib \ @@ -165,6 +166,10 @@ $(MAKE) install DESTDIR=$$(pwd)/debian/tmp INSTALL="/usr/bin/install -D" + mkdir -p $$(pwd)/debian/tmp/usr/lib/ecl + cp $$(pwd)/src/binary-ecl/maxima.fas \ + debian/tmp/usr/lib/ecl/ + mkdir -p $$(pwd)/debian/tmp/usr/share/doc/maxima-doc cp -a debian/tmp/usr/share/maxima/$(MVERS)/doc/* \ $$(pwd)/debian/tmp/usr/share/doc/maxima-doc @@ -261,7 +266,7 @@ dh_installchangelogs -i dh_link -i dh_strip -i - dh_compress -i -X.shtml -X.hh -Xmaxima-index.lisp + dh_compress -i -X.shtml -X.hh -X.info dh_fixperms -i dh_installdeb -i dh_shlibdeps -i @@ -284,7 +289,7 @@ dh_installchangelogs -a dh_link -a dh_strip -a $(NO_STRIP) - dh_compress -a + dh_compress -a -Xmaxima-index.lisp dh_fixperms -a dh_installdeb -a dh_shlibdeps -a