# FriCAS — lean and fast SPEC built from a specific git commit. # All comments are in English as requested. %global commit 478d36c70ac3f0f3c028db4fc6de53ec78ed0d11 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: fricas Version: 1.3.12 Release: 0.1.%{shortcommit}%{?dist} Summary: FriCAS is an advanced computer algebra system License: BSD-3-Clause URL: https://fricas.github.io # Use the full-hash tarball; it expands to fricas-%%{commit} Source0: https://github.com/%{name}/%{name}/archive/%{commit}/%{name}-%{commit}.tar.gz # --- Build dependencies (kept minimal for a fast, lean build) --- BuildRequires: make BuildRequires: gcc BuildRequires: sbcl BuildRequires: gmp-devel # Autotools are needed when building directly from a git snapshot (no prebuilt configure) BuildRequires: autoconf BuildRequires: automake # Graphics / HyperDoc / plotting (headless X to enable build-time assets if needed) BuildRequires: gnuplot BuildRequires: libX11-devel BuildRequires: xorg-x11-server-Xvfb BuildRequires: pkgconfig(ice) BuildRequires: pkgconfig(sm) BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xpm) BuildRequires: pkgconfig(xt) BuildRequires: pkgconfig(xau) BuildRequires: pkgconfig(xdmcp) # NOTE: # - No LaTeX/Emacs runtime deps here to keep the package light. # Users who want Emacs frontends or TeX outputs can install them separately. %description FriCAS is an advanced computer algebra system, forked in 2007 from Axiom. This package builds FriCAS with SBCL and GMP for high performance and includes X graphics support for HyperDoc/plotting (via gnuplot). LaTeX/Emacs frontends are optional. # Optional tests toggle: enable with `--with tests` during rpmbuild/mock if desired %bcond_without tests %prep # Unpack the tarball named fricas-%{commit} %autosetup -n %{name}-%{commit} # Regenerate the autotools machinery when building from a git snapshot %autoreconf -fi %build # High-performance SBCL build: # - Increase dynamic space for the compiler/runtime # - Enable GMP for big integers # - Aggressive algebra optimizations (speed=3, safety=0) %configure \ --with-lisp="sbcl --control-stack-size 512 --dynamic-space-size 6000" \ --enable-gmp \ --with-x \ --enable-algebra-optimization="((speed 3) (safety 0))" # Some build-time graphics/resources expect an X server. # Run make under xvfb to avoid DISPLAY issues in headless builders. xvfb-run -a -s "-screen 0 1024x768x24" \ %make_build MAYBE_VIEWPORTS=viewports %install %make_install %check %if %{with tests} # Run upstream checks if available. make check %endif %files %license LICENSE.txt %doc ChangeLog README.rst # Core binaries %{_bindir}/fricas # Emacs launcher script is installed, but Emacs itself is not required here %{_bindir}/efricas # Core runtime, algebra libraries, HyperDoc/resources %{_libdir}/fricas %{_datadir}/fricas # Manual pages if installed by upstream %{_mandir}/man1/fricas*.1* %{_mandir}/man1/efricas*.1* %changelog * Tue Oct 28 2025 Ilia Gradina - 1.3.12-0.1.%{shortcommit} - Lean, high-performance build (SBCL+GMP, X graphics via xvfb-run). - Dropped LaTeX/Emacs hard deps to keep runtime minimal. - Added missing X pkgconfig BRs; switched to full-hash Source0. - Autotools bootstrap with %autoreconf for git snapshot builds. * Fri Nov 01 2024 Ilia Gradina - 1.3.11.%{shortcommit}-1 - rebuild by last commit 01 Nov 2024 * Sun Oct 27 2024 Ilia Gradina - 1.3.11.%{shortcommit}-1 - rebuild by last commit 27 Oct 2024 * Wed Jul 17 2024 Ilia Gradina - 1.3.11.%{shortcommit}-1 - rebuild by last commit 17 Jul 2024 * Sat Jun 15 2024 Ilia Gradina - 1.3.10.%{shortcommit}-2 - rebuild by last commit 12 Jun 2024 * Thu Jun 6 2024 Ilia Gradina - 1.3.10.%{shortcommit}-1 - rebuild with new version sbcl 2.4.5 and update with commit above * Mon May 6 2024 Ilia Gradina - 1.3.10-5 - rebuid with new version sbcl 2.4.4 * Tue Apr 23 2024 Ilia Gradina - 1.3.10-4 - rebuild with new version sbcl 2.4.3 * Sat Mar 9 2024 Ilia Gradina - 1.3.10-3 - rebuild with new version sbcl 2.4.2 * Wed Jan 31 2024 Ilia Gradina - 1.3.10-2 - rebuild with new version sbcl * Sun Jan 14 2024 Ilia Gradina - 1.3.10-1 - update to 1.3.10 * Fri Dec 29 2023 Ilia Gradina - 1.3.9.%{shortcommit}-1 * rebuild with new version sbcl and update with commit above * Fri Dec 15 2023 Ilia Gradina - 1.3.9.%{shortcommit}-1 - init commit from 14.12.2023