On Fri, May 26, 2023 at 12:23:18PM +0100, Stuart Henderson wrote: > On 2023/05/25 18:57, Jonathan Drews wrote: > > On Thu, May 25, 2023 at 03:23:23PM +0200, Dima Pasechnik wrote: > > > > > > As well, less urgently, > > > shouldn't there be a way to get Maxima compiled with sbcl, only only ecl. > > > (sbcl typically gives considerably better performance, and it's available > > > in ports, > > > I wrote the maxima discuss list and they affirm the performance boost > > that Dima mentions by using sbcl. However I get this make build error: > > > > Missing library for sbcl>=0.0 > > Fatal error > > *** Error 1 in . (/usr/ports/infrastructure/mk/bsd.port.mk:2385 > > sbcl is a standalone compiler binary + runtime files, there is no > library so you can't use LIB_DEPENDS+WANTLIB for it. would be > BUILD_DEPENDS and maybe also RUN_DEPENDS if needed. > Stuart and others:
I got maxima running with sbcl. Here is the result of make test: # make test > MakeTestResults.txt 2>&1 Regression tests for maxima-5.46.0 Making check in admin gmake[1]: Entering directory '/usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/admin' gmake[1]: Nothing to be done for 'check'. gmake[1]: Leaving directory '/usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/admin' Making check in crosscompile-windows gmake[1]: Entering directory '/usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/crosscompile-windows' gmake[1]: Nothing to be done for 'check'. gmake[1]: Leaving directory '/usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/crosscompile-windows' Making check in src gmake[1]: Entering directory '/usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/src' if test share-subdirs_autogenerated.lisp -nt share-subdirs.lisp; then cp share-subdirs_autogenerated.lisp share-subdirs.lisp; fi gmake[1]: Leaving directory '/usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/src' Making check in lisp-utils gmake[1]: Entering directory '/usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/lisp-utils' gmake[1]: Nothing to be done for 'check'. gmake[1]: Leaving directory '/usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/lisp-utils' Making check in tests gmake[1]: Entering directory '/usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/tests' gmake check-TESTS gmake[2]: Entering directory '/usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/tests' gmake[3]: Entering directory '/usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/tests' *** Signal SIGINT in . (/usr/ports/pobj/maxima-5.46.0/.test_done) *** Error 1 in /usr/ports/math/maxima (/usr/ports/infrastructure/mk/bsd.port.mk:2600 'test': @lock=maxima-5.46.0; export _LOCKS_HELD=" maxi...) I got two errors: Here is my diff: $ diff -eu Makefile.org Makefile > Makefile.diff --- Makefile.org Fri May 26 18:02:01 2023 +++ Makefile Fri May 26 18:04:37 2023 @@ -1,6 +1,6 @@ COMMENT= GPL computer algebra system based on DOE Macsyma -VERSION= 5.44.0 +VERSION= 5.46.0 DISTNAME= maxima-${VERSION} CATEGORIES= math @@ -10,31 +10,33 @@ # GPLv2+ PERMIT_PACKAGE= Yes -WANTLIB += c ecl ffi gc gmp m pthread +WANTLIB += c ffi gc gmp m pthread MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=maxima/} USE_GMAKE= yes -# Python is not needed for building but configure fails without it. -# Instead of patching just add the lang/python dependency. -# http://sourceforge.net/p/maxima/mailman/message/34462954/ -MODULES = lang/python -MODPY_VERSION = ${MODPY_DEFAULT_VERSION_2} -MODPY_RUNDEP = No +MODTCL_VERSION= 8.6 +#MODPY_RUNDEP = No -BUILD_DEPENDS = print/texinfo -LIB_DEPENDS= lang/ecl +BUILD_DEPENDS = print/texinfo \ + lang/sbcl +# LIB_DEPENDS = lang/sbcl RUN_DEPENDS = devel/desktop-file-utils \ misc/rlwrap \ - misc/shared-mime-info + misc/shared-mime-info \ + lang/sbcl + +pre-build: + ${MODTCL_WISH_ADJ} ${WRKSRC}/interfaces/xmaxima/xmaxima + SUBST_VARS= VERSION MAKE_FLAGS = MAKEINFO="${LOCALBASE}/bin/gtexi2any" \ TEXI2DVI="${LOCALBASE}/bin/gtexi2dvi" -CONFIGURE_ARGS+= --enable-ecl +CONFIGURE_ARGS+= --enable-sbcl CONFIGURE_STYLE= gnu FLAVORS= no_x11 @@ -42,11 +44,12 @@