Compare commits

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

9 commits

Author SHA1 Message Date
Fedora Release Engineering
bb518e950b Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-16 02:26:10 +00:00
Jerry James
6567405eec Reflow the description text
- More precise globbing in %files
2026-01-09 11:59:07 -07:00
Jerry James
03aed770dc Version 1.6.14 2025-11-26 11:12:00 -07:00
Jerry James
e03cc25c74 Version 1.6.13 2025-08-07 12:49:34 -06:00
Fedora Release Engineering
2f6a9773bd Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 15:39:51 +00:00
Jerry James
d57c2f3bce Version 1.6.12 2025-05-29 09:52:13 -06:00
Fedora Release Engineering
fa7a491418 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-20 07:17:34 +00:00
Fedora Release Engineering
eb022cb680 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 08:21:16 +00:00
Jerry James
77b21715cf Move configuration actions to %conf
- Clarify license of the devel and libs subpackages
2025-01-13 06:52:56 -07:00
3 changed files with 273 additions and 29 deletions

View file

@ -1,7 +1,7 @@
%global giturl https://github.com/4ti2/4ti2 %global giturl https://github.com/4ti2/4ti2
Name: 4ti2 Name: 4ti2
Version: 1.6.10 Version: 1.6.14
Release: %autorelease Release: %autorelease
Summary: Algebraic, geometric and combinatorial problems on linear spaces Summary: Algebraic, geometric and combinatorial problems on linear spaces
@ -13,10 +13,28 @@ Summary: Algebraic, geometric and combinatorial problems on linear spaces
# CM: Knuth-CTAN # CM: Knuth-CTAN
# CM-Super: GPL-1.0-or-later # CM-Super: GPL-1.0-or-later
License: GPL-2.0-or-later AND OFL-1.1-RFN AND Knuth-CTAN AND GPL-1.0-or-later License: GPL-2.0-or-later AND OFL-1.1-RFN AND Knuth-CTAN AND GPL-1.0-or-later
# Source files under licenses other than GPL-2.0-or-later:
# GPL-2.0-or-later WITH Autoconf-exception-macro: compile,
# m4/ax_cflags_warn_all.m4
# GPL-2.0-or-later WITH Libtool-exception: configure, ltmain.sh
# GPL-2.0-or-later OR MIT: ltmain.sh
# GPL-3.0-or-later: lib/*.{c,h} (not compiled into the binary)
# GPL-3.0-or-later WITH Autoconf-exception-generic: lib/Makefile.am,
# m4/onceonly.m4
# GPL-3.0-or-later WITH Autoconf-exception-macro: config.guess,
# m4/ax_check_compile_flag.m4
# FSFUL: configure, m4/libtool.m4
# FSFULLR: aclocal.m4, m4/00gnulib.m4, m4/libtool.m4
# FSFULLRWD: aclocal.m4, Makefile.in
# X11: install-sh
# LicenseRef-Fedora-Public-Domain: install-sh
SourceLicense: GPL-2.0-or-later AND GPL-2.0-or-later WITH Autoconf-exception-macro AND GPL-2.0-or-later WITH Libtool-exception AND (GPL-2.0-or-later OR MIT) AND GPL-3.0-or-later AND GPL-3.0-or-later WITH Autoconf-exception-generic AND GPL-3.0-or-later WITH Autoconf-exception-macro AND FSFUL AND FSFULLR AND FSFULLRWD AND X11 AND LicenseRef-Fedora-Public-Domain
URL: https://4ti2.github.io/ URL: https://4ti2.github.io/
VCS: git:%{giturl}.git VCS: git:%{giturl}.git
Source0: %{giturl}/releases/download/Release_%{relver}/%{name}-%{version}.tar.gz Source0: %{giturl}/releases/download/Release_%{relver}/%{name}-%{version}.tar.gz
Source1: 4ti2.module.in Source1: 4ti2.module.in
# Do not discard const qualifiers
Patch: %{giturl}/pull/58.patch
# See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
ExcludeArch: %{ix86} ExcludeArch: %{ix86}
@ -38,14 +56,15 @@ Requires: 4ti2-libs%{?_isa} = %{version}-%{release}
Requires: environment(modules) Requires: environment(modules)
%description %description
A software package for algebraic, geometric and combinatorial problems A software package for algebraic, geometric and combinatorial problems on
on linear spaces. linear spaces.
This package uses Environment Modules. Prior to invoking the binaries, This package uses Environment Modules. Prior to invoking the binaries, you
you must run "module load 4ti2-%{_arch}" to modify your PATH. must run "module load 4ti2-%{_arch}" to modify your PATH.
%package devel %package devel
Summary: Headers needed to develop software that uses 4ti2 Summary: Headers needed to develop software that uses 4ti2
License: GPL-2.0-or-later
Requires: 4ti2-libs%{?_isa} = %{version}-%{release} Requires: 4ti2-libs%{?_isa} = %{version}-%{release}
Requires: gmp-devel%{?_isa} Requires: gmp-devel%{?_isa}
@ -54,32 +73,21 @@ Headers and library files needed to develop software that uses 4ti2.
%package libs %package libs
Summary: Library for problems on linear spaces Summary: Library for problems on linear spaces
License: GPL-2.0-or-later
%description libs %description libs
A library for algebraic, geometric and combinatorial problems on linear A library for algebraic, geometric and combinatorial problems on linear
spaces. spaces.
%prep %prep
%autosetup %autosetup -p1
# Add a missing executable bit
chmod a+x ltmain.sh
%conf
# Fix encodings # Fix encodings
iconv -f ISO8859-1 -t UTF-8 NEWS > NEWS.utf8 iconv -f ISO8859-1 -t UTF-8 NEWS > NEWS.utf8
touch -r NEWS NEWS.utf8 touch -r NEWS NEWS.utf8
mv -f NEWS.utf8 NEWS mv -f NEWS.utf8 NEWS
# Update the C++ standard
sed -i 's/c++0x/c++11/g' configure
%build
# Do not override Fedora compiler flags
sed -e 's|-O3 -fomit-frame-pointer|%{build_cflags}|' \
-e 's/-march=\$arch -mcpu=\$arch -m\$arch//' \
-e 's/-mtune=\$arch//' \
-i configure
%configure --enable-shared --disable-static %configure --enable-shared --disable-static
# Get rid of undesirable hardcoded rpaths; workaround libtool reordering # Get rid of undesirable hardcoded rpaths; workaround libtool reordering
@ -89,16 +97,17 @@ sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
-e 's|CC="\(.*g..\)"|CC="\1 -Wl,--as-needed"|' \ -e 's|CC="\(.*g..\)"|CC="\1 -Wl,--as-needed"|' \
-i libtool -i libtool
%build
%make_build %make_build
# Build the manual # Build the manual
export LD_LIBRARY_PATH=$PWD/src/4ti2/.libs:$PWD/src/fiber/.libs:$PWD/src/groebner/.libs:$PWD/src/ppi/.libs:$PWD/src/util/.libs:$PWD/src/zsolve/.libs export LD_LIBRARY_PATH=$PWD/src/4ti2/.libs:$PWD/src/fiber/.libs:$PWD/src/groebner/.libs:$PWD/src/ppi/.libs:$PWD/src/util/.libs:$PWD/src/zsolve/.libs
pushd doc cd doc
make update-manual make update-manual
bibtex 4ti2_manual bibtex 4ti2_manual
pdflatex 4ti2_manual pdflatex 4ti2_manual
pdflatex 4ti2_manual pdflatex 4ti2_manual
popd cd -
%install %install
%make_install %make_install
@ -118,9 +127,6 @@ mkdir -p %{buildroot}%{_modulesdir}
# Since we're doing our own substitution here, use our own definitions. # Since we're doing our own substitution here, use our own definitions.
sed 's#@LIBDIR@#'%{_libdir}/4ti2'#g;' < %SOURCE1 >%{buildroot}%{_modulesdir}/4ti2-%{_arch} sed 's#@LIBDIR@#'%{_libdir}/4ti2'#g;' < %SOURCE1 >%{buildroot}%{_modulesdir}/4ti2-%{_arch}
# We don't need or want libtool files
rm -f %{buildroot}%{_libdir}/*.la
# We don't want documentation in _datadir # We don't want documentation in _datadir
rm -fr %{buildroot}%{_datadir}/4ti2/doc rm -fr %{buildroot}%{_datadir}/4ti2/doc
@ -136,13 +142,13 @@ make check
%files devel %files devel
%{_includedir}/4ti2/ %{_includedir}/4ti2/
%{_libdir}/lib4ti2*.so %{_libdir}/lib4ti2*.so
%{_libdir}/libzsolve*.so %{_libdir}/libzsolve.so
%files libs %files libs
%doc NEWS README THANKS TODO %doc AUTHORS NEWS README.md THANKS
%license COPYING %license COPYING
%{_libdir}/lib4ti2*.so.0* %{_libdir}/lib4ti2*.so.0{,.*}
%{_libdir}/libzsolve*.so.0* %{_libdir}/libzsolve.so.0{,.*}
%changelog %changelog
%autochangelog %autochangelog

238
58.patch Normal file
View file

@ -0,0 +1,238 @@
From c64563088b224a778a236c1e1495f0a4edd2c9df Mon Sep 17 00:00:00 2001
From: Jerry James <loganjerry@gmail.com>
Date: Wed, 26 Nov 2025 11:02:23 -0700
Subject: [PATCH] Do not discard const qualifiers
---
src/util/output.c | 2 +-
src/util/output.h | 2 +-
src/util/print.c | 40 ++++++++++++++++++++++------------------
src/util/print.h | 36 ++++++++++++++++++++----------------
4 files changed, 44 insertions(+), 36 deletions(-)
diff --git a/src/util/output.c b/src/util/output.c
index 8623d01..a0f4f62 100644
--- a/src/util/output.c
+++ b/src/util/output.c
@@ -37,7 +37,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "banner.h"
/* ----------------------------------------------------------------- */
-listVector* readListVector(int *numOfVars, char *fileName) {
+listVector* readListVector(int *numOfVars, const char *fileName) {
int numOfVectors;
listVector *basis, *endBasis;
vector b;
diff --git a/src/util/output.h b/src/util/output.h
index 93bece5..bbcff84 100644
--- a/src/util/output.h
+++ b/src/util/output.h
@@ -1,3 +1,3 @@
int output_main(int, char**);
-listVector* readListVector(int*, char*);
+listVector* readListVector(int*, const char*);
listVector* extractNonDominatedVectors(listVector*, listVector*, int);
diff --git a/src/util/print.c b/src/util/print.c
index 157200a..eca5b82 100644
--- a/src/util/print.c
+++ b/src/util/print.c
@@ -82,7 +82,8 @@ void printVectorToFile(FILE *out, vector v, int numOfVars) {
return ;
}
/* ----------------------------------------------------------------- */
-void printListVectorToFile(char* fileName, listVector* basis, int numOfVars) {
+void printListVectorToFile(const char* fileName, listVector* basis,
+ int numOfVars) {
int len;
FILE* out;
@@ -106,8 +107,8 @@ void printListVectorToFile(char* fileName, listVector* basis, int numOfVars) {
fclose(out);
return ;
}
-/* ----------------------------------------------------------------- */
-void printSubsetOfListVectorToFile(char* fileName, listVector* basis,
+/* ------------------------------------------------------------------------ */
+void printSubsetOfListVectorToFile(const char* fileName, listVector* basis,
vector ind, int numOfVars) {
int len,len2,j;
FILE* out;
@@ -147,7 +148,8 @@ void printVectorWithoutColumnToFile(FILE *out, vector v, int ind,
return ;
}
/* ----------------------------------------------------------------- */
-void printListVectorWithoutColumnToFile(char* fileName, listVector* basis,
+void printListVectorWithoutColumnToFile(const char* fileName,
+ listVector* basis,
int ind, int numOfVars) {
int len;
FILE* out;
@@ -185,7 +187,7 @@ void printVectorWithAddtionalColumnToFile(FILE *out, vector v, int ind,
return ;
}
/* ----------------------------------------------------------------- */
-void printListVectorWithAdditionalColumnToFile(char* fileName,
+void printListVectorWithAdditionalColumnToFile(const char* fileName,
listVector* basis,
int ind, int val,
int numOfVars) {
@@ -214,7 +216,7 @@ void printListVectorWithAdditionalColumnToFile(char* fileName,
return ;
}
/* ----------------------------------------------------------------- */
-void printTransposedListVectorToFile(char* fileName, listVector* basis,
+void printTransposedListVectorToFile(const char* fileName, listVector* basis,
int numOfVars) {
int i,len;
listVector *tmp;
@@ -318,7 +320,7 @@ void printBinomialToFile(FILE *out, vector v, int numOfVars, char** labels) {
return ;
}
/* ----------------------------------------------------------------- */
-void printListBinomialsToFile(char* fileName, listVector* basis,
+void printListBinomialsToFile(const char* fileName, listVector* basis,
int numOfVars, char** labels) {
FILE* out;
@@ -377,7 +379,8 @@ void printMonomialToFile(FILE *out, vector v, int numOfVars, char** labels) {
return ;
}
/* ----------------------------------------------------------------- */
-void printListMonomialsAndBinomialsToFile(char* fileName, listVector* basis,
+void printListMonomialsAndBinomialsToFile(const char* fileName,
+ listVector* basis,
int numOfVars, char** labels) {
FILE* out;
@@ -455,7 +458,8 @@ void printVectorToFileMacaulay2(FILE *out, vector v, int numOfVars) {
return ;
}
/* ----------------------------------------------------------------- */
-void printListVectorMaple(char* fileName, listVector* basis, int numOfVars) {
+void printListVectorMaple(const char* fileName, listVector* basis,
+ int numOfVars) {
FILE* out;
if (!(out = fopen(fileName,"w"))) {
@@ -480,7 +484,7 @@ void printListVectorMaple(char* fileName, listVector* basis, int numOfVars) {
return ;
}
/* ----------------------------------------------------------------- */
-void printListVectorMacaulay2(char* fileName, listVector* basis,
+void printListVectorMacaulay2(const char* fileName, listVector* basis,
int numOfVars) {
FILE* out;
@@ -506,8 +510,8 @@ void printListVectorMacaulay2(char* fileName, listVector* basis,
return ;
}
/* ----------------------------------------------------------------- */
-void print3wayTables(char* fileName, listVector* basis, int x, int y,
- int z, int numOfVars) {
+void print3wayTables(const char* fileName, listVector* basis, int x,
+ int y, int z, int numOfVars) {
int i,j,k;
vector v;
FILE* out;
@@ -583,7 +587,7 @@ void printL1NormOfListVector(listVector *basis, int numOfVars) {
return;
}
/* ----------------------------------------------------------------- */
-void printListVectorWithGivenDegreesToFile(char *outFileName,
+void printListVectorWithGivenDegreesToFile(const char *outFileName,
listVector *basis, int numOfVars,
int lowdegree, int highdegree){
int i,s,len;
@@ -647,7 +651,7 @@ void printSupportsOfListVector(listVector *basis, int numOfVars) {
return;
}
/* ----------------------------------------------------------------- */
-void printListVectorWithGivenSupportsToFile(char *outFileName,
+void printListVectorWithGivenSupportsToFile(const char *outFileName,
listVector *basis, int numOfVars,
int lowdegree, int highdegree){
int i,s,len;
@@ -724,7 +728,7 @@ void printTypesOfListVector(listVector *basis, int sizeOfLayer,
return;
}
/* ----------------------------------------------------------------- */
-void printListVectorWithGivenNonzeroEntryToFile(char *outFileName,
+void printListVectorWithGivenNonzeroEntryToFile(const char *outFileName,
listVector *basis,
int numOfVars,
int coord){
@@ -760,8 +764,8 @@ void printListVectorWithGivenNonzeroEntryToFile(char *outFileName,
return;
}
/* ----------------------------------------------------------------- */
-void writeResult(listVector *basis, int numOfVars, char *fileName,
- char *basisType, int infoLevel) {
+void writeResult(listVector *basis, int numOfVars, const char *fileName,
+ const char *basisType, int infoLevel) {
const char *infoMessage="undefined";
const char *outExtension="";
char *outFileName=NULL;
@@ -803,7 +807,7 @@ void writeResult(listVector *basis, int numOfVars, char *fileName,
return;
}
/* ----------------------------------------------------------------- */
-void printListRepresentativesToFile(char* fileName, listOrbit* basis,
+void printListRepresentativesToFile(const char* fileName, listOrbit* basis,
int numOfVars) {
int len;
FILE* out;
diff --git a/src/util/print.h b/src/util/print.h
index 3789562..2d07334 100644
--- a/src/util/print.h
+++ b/src/util/print.h
@@ -24,30 +24,34 @@ void printVersionInfo();
void printVector(vector, int);
void printListVector(listVector*, int);
void printVectorToFile(FILE*, vector, int);
-void printListVectorToFile(char*, listVector*, int);
-void printSubsetOfListVectorToFile(char*, listVector*, vector, int);
-void printListVectorWithoutColumnToFile(char*, listVector*, int, int);
-void printListVectorWithAdditionalColumnToFile(char*, listVector*, int, int,
- int);
-void printTransposedListVectorToFile(char*, listVector*, int);
+void printListVectorToFile(const char*, listVector*, int);
+void printSubsetOfListVectorToFile(const char*, listVector*, vector, int);
+void printListVectorWithoutColumnToFile(const char*, listVector*, int, int);
+void printListVectorWithAdditionalColumnToFile(const char*, listVector*, int,
+ int, int);
+void printTransposedListVectorToFile(const char*, listVector*, int);
void printVectorToFileWithBrackets(FILE*, vector, int);
void printBinomialToFile(FILE*, vector, int, char**);
-void printListBinomialsToFile(char*, listVector*, int, char**);
+void printListBinomialsToFile(const char*, listVector*, int, char**);
void printMonomialToFile(FILE*, vector, int, char**);
-void printListMonomialsAndBinomialsToFile(char*, listVector*, int, char**);
+void printListMonomialsAndBinomialsToFile(const char*, listVector*, int,
+ char**);
void printMatrix(vector, int, int);
void printVectorToFileMaple(FILE*, vector, int);
-void printListVectorMaple(char*, listVector*, int);
-void printListVectorMacaulay2(char*, listVector*, int);
-void print3wayTables(char*, listVector*, int, int, int, int);
+void printListVectorMaple(const char*, listVector*, int);
+void printListVectorMacaulay2(const char*, listVector*, int);
+void print3wayTables(const char*, listVector*, int, int, int, int);
void printL1NormOfListVector(listVector*, int);
-void printListVectorWithGivenDegreesToFile(char*, listVector*, int, int, int);
+void printListVectorWithGivenDegreesToFile(const char*, listVector*, int,
+ int, int);
void printSupportsOfListVector(listVector*, int);
void printTypesOfListVector(listVector*, int, int);
-void printListVectorWithGivenSupportsToFile(char*, listVector*, int, int, int);
-void printListVectorWithGivenNonzeroEntryToFile(char*, listVector*, int, int);
-void writeResult(listVector*, int, char*, char*, int);
-void printListRepresentativesToFile(char*, listOrbit*, int);
+void printListVectorWithGivenSupportsToFile(const char*, listVector*, int,
+ int, int);
+void printListVectorWithGivenNonzeroEntryToFile(const char*, listVector*, int,
+ int);
+void writeResult(listVector*, int, const char*, const char*, int);
+void printListRepresentativesToFile(const char*, listOrbit*, int);
void printRationalVector(rationalVector*, int);
void printRationalVectorToFileWithoutBrackets(FILE*, rationalVector*, int);

View file

@ -1 +1 @@
SHA512 (4ti2-1.6.10.tar.gz) = d591ed272664c7467e9b28082c0a99002b3a4616cf437eecd243ccca2ab0f08abdba5dcd039a109b05793f7aaf9f405af9a58c7eff90b7b01b3b1f34fb7fdb2e SHA512 (4ti2-1.6.14.tar.gz) = 87b990de9c6dbe564bd700c6548c422ada52e0e3a0b3457f84c103124bee4fce05c49d7ee3c6ead145bbbd51e11969639dc75fe8f5b337457a3f3590af5315c3