34274ca02f
Changes in FriCAS 1.2.5: - Fixed printing of scripted symbols. - Fixed 'totalDegreeSorted' (affected Groebner bases). - Fixed few problems with Hensel lifting (including SF bug 47). - Fixed 'series' in UnivariateLaurentSeriesConstructor. - Fixed 'order' in SparseUnivariatePowerSeries. - Printing of series now respect 'showall' setting, cyclic series are detected. - Fixed problem with interpreter preferring Union to base type. Changes in FriCAS 1.2.4: - New cylindrical decomposition package. - New GnuDraw package for plotting via gnuplot. - Texmacs interface now handles Cork symbols. - Added double precision versions of several special functions (needed for plotting). - Nopile mode for Spad is changed to be more convenient. - 'stringMatch' is removed (was broken beyond repair). Bug fixes, in particular: - Fixed intepreter assignment to parts of nested aggregates (issue 376). - Fixed interpreter coercion from Equation to Boolean (issue 359). - Fix printing of '\%i' in types (issue 132). - Disabled incorrect shortcut during coercion (issue 29). - Difference of intervals now agrees with definition as interval operation. - Avoid overwriting loop limit and increment. - Fix a polynomial gcd failure due to bad reduction. - Avoid mangling unevaluated algebraic integrals. - Fix integration of unevaluated derivatives. - Restore parser handling of '\\/' and '/\\'. - Properly escape strings and symbols in TeXFormat. Changes in FriCAS 1.2.3: - Fixed pattern matching using '%i' in patterns. - Fixed ')display op coerce'. - Fixed ')version' command. - Fixed crash when printing '%'. - Fix a buffer overflow in HyperDoc. - Fixed HyperDoc errors in 'Dependants' and 'Users'. - HyperDoc browser better handles constructors with parameters. Changes in FriCAS 1.2.2: - Improvements to 'integrate': better handling of algebraic integrals, new routine which handles some integrals contaning 'lambertW'. - Improvements to 'limit', now Gruntz algorithm knows about a few tractable functions. - Smith form of sparse integer matrices is now much more efficient. - Generalized indexing for two dimensional arrays. - Pile/nopile mode is now restored after ')read' or ')compile'. Piling rules now accept some forms of multiline lists. - Eliminated version checking in generated code. Note: this change means that Spad code compiled by earlier FriCAS versions will not run in FriCAS 1.2.2. - Updated Aldor interface to work with free Aldor. Bug fixes, in particular: - Interpreter can now handle complicated mutually recursive functions. - Spad compiler should now correctly handle 'has' inside a function. - Fixed derivatives of Whittaker functions. Changes in FriCAS 1.2.1: -- Support for building Mac OS application bundle. Bug fixes, in particular: -- fixed few cases of wrong or unevaluated integrals. -- better zero test during limit computation avoids division by zero. -- fixed buffer overflow problems in view3D. -- 'reducedSystem' on empty input returns basis of correct size.
87 lines
2.5 KiB
Makefile
87 lines
2.5 KiB
Makefile
# $NetBSD: options.mk,v 1.6 2015/08/10 08:13:45 asau Exp $
|
|
|
|
PKG_OPTIONS_VAR= PKG_OPTIONS.fricas
|
|
PKG_OPTIONS_REQUIRED_GROUPS= lisp
|
|
PKG_OPTIONS_GROUP.lisp= clisp sbcl ecl
|
|
|
|
PKG_SUPPORTED_OPTIONS+= x11
|
|
|
|
PKG_SUGGESTED_OPTIONS+= clisp x11
|
|
|
|
.include "../../mk/bsd.options.mk"
|
|
|
|
# Select Lisp backend
|
|
.if !empty(PKG_OPTIONS:Mclisp)
|
|
FASL= fas
|
|
BUILD_DEPENDS+= clisp>=2.41:../../lang/clisp
|
|
CONFIGURE_ARGS+= --with-lisp=clisp
|
|
.endif
|
|
.if !empty(PKG_OPTIONS:Msbcl)
|
|
FASL= fasl
|
|
DEPENDS+= sbcl-[0-9]*:../../lang/sbcl
|
|
CONFIGURE_ARGS+= --with-lisp=sbcl
|
|
.endif
|
|
.if !empty(PKG_OPTIONS:Mecl)
|
|
FASL= fas
|
|
CONFIGURE_ARGS+= --with-lisp=ecl
|
|
.include "../../devel/libffi/buildlink3.mk"
|
|
.include "../../lang/ecl/buildlink3.mk"
|
|
.endif
|
|
|
|
# Fix suffix for "fast load" files:
|
|
PLIST_SUBST+= FASL=${FASL:Q}
|
|
|
|
# Generalize "fast load" files
|
|
PRINT_PLIST_AWK+= {gsub(/\.${FASL}$$/, ".$${FASL}");}
|
|
.if !empty(PKG_OPTIONS:Mclisp)
|
|
# Handle CLISP-specific files
|
|
PRINT_PLIST_AWK+= {if ($$0 ~ /\.lib$$/) {$$0 = "$${clisp}" $$0;}}
|
|
.endif
|
|
.if !empty(PKG_OPTIONS:Mecl)
|
|
# Handle ECL-specific files
|
|
PRINT_PLIST_AWK+= {if ($$0 ~ /\.o$$/) {$$0 = "$${ecl}" $$0;}}
|
|
.endif
|
|
|
|
# X11-only files:
|
|
.if !empty(PKG_OPTIONS:Mx11)
|
|
#PRINT_PLIST_AWK+= {if ($$0 !~ /^\$${x11}/ && $$0 ~ /\/share\/viewports\// || $$0 ~ /\.(bitmap|xbm|xbm.tiny|bm|bakmap|xpm|ht|pht|ps)$$/) {$$0 = "$${x11}" $$0;}}
|
|
# ...where "util.ht" is false positive.
|
|
# files in lib/.../bin
|
|
.for _file_ in htadd hypertex viewAlone
|
|
PRINT_PLIST_AWK+= {if ($$0 !~ /^\$${x11}/ && $$0 ~ /\/bin\/${_file_}$$/) {$$0 = "$${x11}" $$0;}}
|
|
.endfor
|
|
# files in lib/.../lib
|
|
.for _file_ in ex2ht hthits htsearch presea spadbuf view2D view3D viewman
|
|
PRINT_PLIST_AWK+= {if ($$0 !~ /^\$${x11}/ && $$0 ~ /\/lib\/${_file_}$$/) {$$0 = "$${x11}" $$0;}}
|
|
.endfor
|
|
# all files in lib/.../bitmaps
|
|
PRINT_PLIST_AWK+= {if ($$0 !~ /^\$${x11}/ && $$0 ~ /\/bitmaps\/[^\/]*$$/) {$$0 = "$${x11}" $$0;}}
|
|
# all files in lib/.../lib/graph:
|
|
PRINT_PLIST_AWK+= {if ($$0 !~ /^\$${x11}/ && $$0 ~ /\/lib\/graph\/[^\/]*$$/) {$$0 = "$${x11}" $$0;}}
|
|
.endif
|
|
|
|
# X11
|
|
.if !empty(PKG_OPTIONS:Mx11)
|
|
CONFIGURE_ARGS+= --with-x=yes
|
|
CONFIGURE_ENV+= X_LIBS=${LDFLAGS:M*:Q}
|
|
.include "../../x11/libX11/buildlink3.mk"
|
|
.include "../../x11/libXpm/buildlink3.mk"
|
|
.include "../../x11/libXt/buildlink3.mk"
|
|
.else
|
|
CONFIGURE_ARGS+= --with-x=no
|
|
.endif
|
|
|
|
.for opt in clisp sbcl ecl x11
|
|
. if !empty(PKG_OPTIONS:M${opt})
|
|
PLIST_SUBST+= ${opt}=""
|
|
. else
|
|
PLIST_SUBST+= ${opt}="@comment "
|
|
. endif
|
|
.endfor
|
|
|
|
# Common for CLISP and SBCL:
|
|
.if !empty(PKG_OPTIONS:Mclisp) || !empty(PKG_OPTIONS:Msbcl)
|
|
PLIST_SUBST+= clisp-sbcl=""
|
|
.else
|
|
PLIST_SUBST+= clisp-sbcl="@comment "
|
|
.endif
|