Compare commits

...
Sign in to create a new pull request.

26 commits

Author SHA1 Message Date
Jerry James
73dd11722d Rebuild for nauty 2.9.3 2026-01-08 13:44:01 -07:00
Antonio Trande
594d450fbb Use fdupes 2025-12-17 22:29:00 +01:00
Antonio Trande
0b0ed65265 Remove symlink 2025-12-17 15:50:28 +01:00
Antonio Trande
f90c09525c Fix the conflict between giac-doc packages 2025-12-17 13:03:33 +01:00
Antonio Trande
a417a0e987 Do not change permissions of khicas.nwa 2025-12-04 21:47:45 +01:00
Antonio Trande
8f85db5c9d Fix permissions of khicas.nwa 2025-12-04 21:28:23 +01:00
Antonio Trande
b7bd5bc623 Move khicas.nwa file to arch dependent sub-package 2025-12-04 21:14:11 +01:00
Antonio Trande
62e8fbaccd Fix bad symlinks 2025-12-04 19:20:14 +01:00
Antonio Trande
cffc52beb2 Release 2.0.0 rev 18 2025-12-04 17:50:39 +01:00
Antonio Trande
1612ae7f7e Release 2.0.0 rev. 17 2025-12-04 11:39:13 +01:00
Jerry James
b35c72a01e Rebuild for ntl 11.6.0 2025-11-19 21:02:11 -07:00
Antonio Trande
d65650d331 Rebuild for libnauty-2.9.1 2025-09-27 14:39:10 +02:00
Jerry James
a3f5efc331 Rebuild for nauty 2.9.1 2025-09-17 16:45:24 -06:00
Jerry James
dbf1441cb6 Stop building for 32-bit x86 2025-08-01 11:48:09 -06:00
Jerry James
b04f188ff8 Rebuild for nauty 2.9.0 2025-07-30 13:16:50 -06:00
Fedora Release Engineering
2ec7f15e00 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 22:20:10 +00:00
Antonio Trande
859a117448 Release 1.9.0.999 2025-04-27 21:03:29 +02:00
Orion Poplawski
8ab8b46280 Rebuild with gsl 2.8 2025-02-02 13:40:52 -07:00
Antonio Trande
18f686dc49 Release 1.9.0.998 2025-01-19 18:09:34 +01:00
Fedora Release Engineering
7265ec1e81 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 21:56:39 +00:00
Antonio Trande
94636c6fde Update giac-undefine_GLIBCXX_ASSERTIONS.patch 2024-11-14 20:56:55 +01:00
Antonio Trande
9da66417d2 Make check always passed 2024-11-13 21:30:56 +01:00
Antonio Trande
4909aa66bf Enable debugging 2024-11-13 21:07:53 +01:00
Antonio Trande
93c46cd595 Disable debugging 2024-11-13 19:34:42 +01:00
Antonio Trande
7138386e20 Change debug scanning command 2024-11-07 23:52:51 +01:00
Antonio Trande
791bac78ac Update Patch6| Exclude micropython in PPC64 2024-11-07 21:23:05 +01:00
5 changed files with 96 additions and 39 deletions

4
.gitignore vendored
View file

@ -41,3 +41,7 @@
/giac-1.9.0.99.tar.gz
/giac-1.9.0.992.tar.gz
/giac-1.9.0.993.tar.gz
/giac-1.9.0.998.tar.gz
/giac-1.9.0.999.tar.gz
/giac-2.0.0.17.tar.gz
/giac-2.0.0.18.tar.gz

View file

@ -4,8 +4,8 @@
# package maintainer.
#
VERSION="1.9.0"
VERSIONREV="993"
VERSION="2.0.0"
VERSIONREV="18"
# The upstream tarball name is: giac"$SOURCEORIG".tar.gz
SOURCEORIG=_"$VERSION"-"$VERSIONREV"
@ -20,13 +20,11 @@ if [ -f "$OUTPUTFILEBASENAME".tar.gz -o -f "$OUTPUTFILEBASENAME".tar.bz2 ] ; the
fi
echo >&2 "Build a temporary working dir"
TARGET=$(mkdir -p "giac-src")
ORIGDIR=`pwd`
cd "$TARGET"
mkdir -p giac-src
cd giac-src
echo >&2 "Downloading upstream source ..."
wget "https://www-fourier.ujf-grenoble.fr/~parisse/debian/dists/stable/main/source//giac$SOURCEORIG.tar.gz"
wget "https://www-fourier.univ-grenoble-alpes.fr/~parisse/debian/dists/stable/main/source/giac$SOURCEORIG.tar.gz"
echo >&2 "Untar upstream source ..."
tar -xzf giac"$SOURCEORIG".tar.gz
@ -60,11 +58,10 @@ touch html_vall
echo >&2 "Building giac source tarball ..."
cd ../../../
tar -cz giac-"$VERSION" -f "$OUTPUTFILEBASENAME".tar.gz
mv "giac"$OUTPUTFILEBASENAME".tar.gz" ../
cd ../
echo >&2 "Cleaning extracted dir ..."
rm -rf giac-src
rm -f "giac$SOURCEORIG.tar.gz"
rm -rf giac-"$VERSION"
echo >&2 "Finished."

View file

@ -1,8 +1,8 @@
--- a/src/first.orig.h 2023-05-24 09:52:40.000000000 +0200
+++ b/src/first.h 2024-02-10 19:37:26.376884368 +0100
@@ -22,12 +22,7 @@
#define _GIAC_FIRST_H_
@@ -27,12 +27,7 @@
#endif
// register is deprecated in c++17
-#define register
-
@ -14,3 +14,24 @@
#if defined NUMWORKS && !defined SDL_KHICAS
#define KHICAS 1
--- a/src/vecteur.orig.cc 2024-06-04 08:13:22.000000000 +0200
+++ b/src/vecteur.cc 2024-11-01 17:58:56.061073533 +0100
@@ -8498,15 +8498,15 @@
}
else {
int C=col+1;
- longlong * ptr= &buffer[C],*ptrend=&buffer[0]+cmax-4;
- const int *ptrN=&Nline[C];
+ longlong * ptr= &buffer[0]+C,*ptrend=&buffer[0]+cmax-4;
+ const int *ptrN=&Nline[0]+C;
for (;ptr<ptrend;ptrN+=4,ptr+=4){
*ptr -= coeff*(*ptrN);
ptr[1] -= coeff*(ptrN[1]);
ptr[2] -= coeff*(ptrN[2]);
ptr[3] -= coeff*(ptrN[3]);
}
- C += ptr-&buffer[C];
+ C += ptr-(&buffer[0]+C);
for (;C<cmax;++C){
buffer[C] -= coeff*Nline[C];
}

View file

@ -1,16 +1,20 @@
# Tests excluded
# See https://xcas.univ-grenoble-alpes.fr/forum/viewtopic.php?f=19&t=1733
%ifarch s390x
%bcond_with check
%else
%bcond_with check
%endif
%bcond_without flexiblas
%global _lto_cflags %{nil}
%global subversion .993
%global subversion .18
Name: giac
Summary: Computer Algebra System, Symbolic calculus, Geometry
Version: 1.9.0%{subversion}
Version: 2.0.0%{subversion}
Release: %autorelease
# GPL-3.0-or-later: the project as a whole
# GPL-3.0-only: src/TmpFGLM.*, src/TmpLESystemSolver.*
@ -22,9 +26,9 @@ Release: %autorelease
# MIT: micropython-1.12/, src/cutils.*, src/js.c, src/libbf.*, src/libregexp*,
# src/libunicode.*, src/list.h, src/qjs*, src/quickjs*
License: GPL-3.0-or-later AND GPL-3.0-only AND GPL-2.0-or-later AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND LGPL-3.0-or-later AND LGPL-2.0-or-later AND MIT
URL: http://www-fourier.ujf-grenoble.fr/~parisse/giac.html
URL: https://www-fourier.univ-grenoble-alpes.fr/~parisse/giac.html
## Source package is downloaded from
## http://www-fourier.ujf-grenoble.fr/~parisse/debian/dists/stable/main/source/
## https://www-fourier.univ-grenoble-alpes.fr/~parisse/debian/dists/stable/main/source
## and re-packed without non-free FR documentation by giac-makesrc script.
Source0: %{name}-%{version}.tar.gz
Source1: %{name}-makesrc.sh
@ -54,13 +58,17 @@ Patch6: %{name}-undefine_GLIBCXX_ASSERTIONS.patch
# https://xcas.univ-grenoble-alpes.fr/forum/viewtopic.php?f=4&t=2930
Patch7: %{name}-faking_mkjs.patch
# See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
ExcludeArch: %{ix86}
BuildRequires: autoconf, libtool
BuildRequires: python3-devel
BuildRequires: readline-devel
BuildRequires: gettext-devel
BuildRequires: gettext
BuildRequires: gcc-c++
BuildRequires: make
BuildRequires: cliquer-devel
BuildRequires: fdupes
%ifnarch %{ix86}
BuildRequires: cocoalib-devel
%endif
@ -129,12 +137,14 @@ Development files for libgiac.
####################
%package doc
Summary: Detailed html documentation for Giac/Xcas
Summary: Detailed HTML documentation for Giac/Xcas
BuildArch: noarch
%ifnarch %{ix86}
BuildRequires: hevea
%endif
BuildRequires: tex(latex), texinfo, texinfo-tex, texlive-stmaryrd
Requires: %{name} = %{version}-%{release}
Obsoletes: giac-doc < 0:2.0.0.18-8
# Javascript provided
Provides: bundled(CodeMirror)
@ -142,7 +152,7 @@ Provides: bundled(FileSaver.js)
License: GPL-3.0-or-later AND GFDL-1.1-or-later
%description doc
The detailled html documentation and examples for giac and xcas. It is directly
The detailed documentation and examples for giac and xcas. It is directly
accessible from xcas in many ways (browser, context search, thematic indexes).
It is strongly recommended for xcas usage. Note that the french part has been
removed from the original source due to non free Licence.
@ -160,7 +170,7 @@ Requires: hicolor-icon-theme
Xcas is the Fltk graphic user interface to the computer algebra system giac.
It supports formal computations, interactive 2D geometry, 3D plotting,
spreadsheets with formal calculus and a Logo mode. There is also a programming
editor, and many ways to consult the html help.
editor, and many ways to consult the HTML help.
####################
%package -n pgiac
@ -171,7 +181,7 @@ BuildRequires: perl-generators
Requires: %{name} = %{version}-%{release}
%description -n pgiac
The pgiac command is a perl script to mix Latex documents
The pgiac command is a Perl script to mix Latex documents
with Giac computations.
%prep
@ -230,13 +240,16 @@ autoreconf -ivf
%build
# https://xcas.univ-grenoble-alpes.fr/forum/viewtopic.php?f=4&t=2817
OPT_FLAGS=$(echo "%build_cxxflags" | %{__sed} -e 's/-Werror=format-security/-Wno-error=format-security/')
export CXXFLAGS="$OPT_FLAGS -std=gnu++14"
export CFLAGS_FEDORA="$OPT_FLAGS"
%configure --enable-static=yes --with-included-gettext=no --enable-nls=yes \
export CXXFLAGS="$OPT_FLAGS -fpermissive -std=gnu++17"
export CFLAGS_FEDORA="$OPT_FLAGS -std=gnu17"
%configure --enable-static=yes --with-included-gettext=no --enable-nls=no \
--enable-tommath=no --enable-debug=no --enable-gc=no --enable-sscl=no \
--enable-dl=yes --enable-gsl=yes --enable-lapack=yes --enable-pari=yes \
--enable-ntl=yes --enable-gmpxx=yes --enable-cocoa=autodetect \
--enable-gui=yes --disable-rpath
--enable-gui=yes --disable-rpath \
%ifarch %{power64}
--disable-micropy
%endif
# The --disable-rpath option of configure was not enough to get rid of the hardcoded libdir
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
@ -245,13 +258,13 @@ sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
# Compile 'mkjs' executable
# See patch7's comment
export OPT_FLAGS=$(echo "%build_cxxflags" | %{__sed} -e 's/-Werror=format-security/-Wno-error=format-security/')
g++ $OPT_FLAGS -std=gnu++14 src/mkjs.cc -o src/mkjs
g++ $OPT_FLAGS -fpermissive -std=gnu++17 src/mkjs.cc -o src/mkjs
#
# https://xcas.univ-grenoble-alpes.fr/forum/viewtopic.php?f=4&t=2817
OPT_FLAGS=$(echo "%build_cflags" | %{__sed} -e 's/-Werror=format-security/-Wno-error=format-security/')
export CXXFLAGS="$OPT_FLAGS -std=gnu++14"
export CFLAGS_FEDORA="$OPT_FLAGS"
export CXXFLAGS="$OPT_FLAGS -fpermissive -std=gnu++17"
export CFLAGS_FEDORA="$OPT_FLAGS -std=gnu17"
export LDFLAGS_FEDORA="$OPT_FLAGS"
%make_build
@ -268,7 +281,9 @@ done
%make_install
# Install libmicropython.a library
%ifnarch %{power64}
install -pm 644 libmicropython.a %{buildroot}%{_libdir}/
%endif
# Install libxcas.a library
install -pm 644 src/.libs/libxcas.a %{buildroot}%{_libdir}/
@ -310,6 +325,8 @@ install -pm 644 -t %{buildroot}%{_datadir}/giac/doc/en doc/en/*.pdf
install -pm 644 -t %{buildroot}%{_datadir}/giac/doc/el doc/el/*.pdf
install -pm 644 -t %{buildroot}%{_datadir}/giac/doc/es doc/es/*.pdf
find %{buildroot}%{_datadir}/giac -name 'Makefile*' -exec rm {} \;
# Symlinks used by QCAS and giacpy
mkdir -p %{buildroot}%{_datadir}/giac/doc/fr
ln -sf -T %{_datadir}/giac/doc/aide_cas %{buildroot}%{_datadir}/giac/doc/fr/aide_cas
@ -326,12 +343,13 @@ install -pm 644 debian/giac.1 %{buildroot}%{_mandir}/man1
install -pm 644 debian/cas_help.1 %{buildroot}%{_mandir}/man1
install -pm 644 debian/pgiac.1 %{buildroot}%{_mandir}/man1
# Add a link for FR env users to have the english help instead of a page
# not found.
mkdir -p %{buildroot}%{_datadir}/giac/doc/fr
(cd %{buildroot}%{_datadir}/giac/doc/fr ; ln -s ../en/cascmd_en cascmd_fr )
# khicas.nwa is an arch-dependent executable file (ELF 32-bit LSB relocatable, ARM, EABI5 version 1)
# I moving it from noarch giac-doc to giac package
mkdir -p %{buildroot}%{_libexecdir}/giac
cp -p %{buildroot}%{_datadir}/giac/doc/khicas.nwa %{buildroot}%{_libexecdir}/giac/
ln -sfv %{_libexecdir}/giac/khicas.nwa %{buildroot}%{_datadir}/giac/doc/khicas.nwa
%find_lang %{name}
#find_lang %%{name}
desktop-file-install --vendor="" --remove-key=Encoding \
--set-key=Version --set-value=1.0 \
--dir=%{buildroot}%{_datadir}/applications/ \
@ -369,13 +387,23 @@ find %{buildroot}%{_datadir}/giac/doc -maxdepth 2 -type l| \
grep -v -E "%{_datadir}/giac/doc/aide_cas$" | \
sed -e "s:%{buildroot}::" >>giacdoclist
# Change permissions to following files
chmod a+x %{buildroot}%{_datadir}/giac/doc/send18
chmod a+x %{buildroot}%{_datadir}/giac/doc/send19
# Symlink duplicated files
%fdupes -s %{buildroot}%{_datadir}
%if %{with check}
%check
export LD_LIBRARY_PATH=../src/.libs
export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
make -C check check
# This is for debugging purpose only
#make -j1 -C check check
#cat check/test-suite.log
%endif
%files -f %{name}.lang
%files
%license COPYING micropython-1.12/micropython-LICENSE
%license LICENSE.tinymt32
%{_bindir}/icas
@ -384,8 +412,13 @@ make -C check check
%{_bindir}/*_help
%{_libdir}/libgiac.so.0.0.0
%{_libdir}/libgiac.so.0
%{_libdir}/libxcas.so.0.0.0
%{_libdir}/libxcas.so.0
%{_libdir}/libgiac.a
%{_libexecdir}/giac/khicas.nwa
%ifnarch %{power64}
%{_libdir}/libmicropython.a
%endif
%{_libdir}/libxcas.a
# The following files are required at runtime by icas AND xcas.
# (Ex: if LANG is fr, alea(5) should give an INT)
@ -413,6 +446,7 @@ make -C check check
# The gui files
%files xcas
%{_bindir}/xcas
%{_datadir}/giac/xcas.html
# The dirs shared
%dir %{_datadir}/giac
%dir %{_datadir}/giac/doc
@ -444,6 +478,7 @@ make -C check check
%files devel
%{_includedir}/giac/
%{_libdir}/libgiac.so
%{_libdir}/libxcas.so
# DOC Files
%files doc -f giacdoclist
@ -459,9 +494,9 @@ make -C check check
# character encoding.
# - The .cas and .cxx files are giac code and function. They are text files
#
# NB: %%{_docdir}/giac is in the -filsystem package
# NB: _docdir/giac is in the -filsystem package
%{_docdir}/giac/*
# Add all the files that are in %%{_datadir}/giac but not giac/aide_cas
# Add all the files that are in _datadir/giac but not giac/aide_cas
# and not those in giac/doc/
%dir %{_datadir}/giac
%dir %{_docdir}/giac

View file

@ -1 +1 @@
SHA512 (giac-1.9.0.993.tar.gz) = 2fcc5199ef0cd6811b5fd231c316c1ca0279c85216f6cf46b332fb562f55d21945f5c8f26d1a61aa4e0db897602ffd0b4c1b54e9a9ac1c2796f469d1a6493f83
SHA512 (giac-2.0.0.18.tar.gz) = 9b92320c21a94c758e4c18d5393c91f5cd2e2eb66c13ad4aeeb66c70bb53181fb8f82e5288a1c18bf4ae870f132baf6af0ffa5940819d40187b045de24503edc