2014-02-14 19:17:12 +00:00
|
|
|
Name: qepcad-B
|
2018-08-30 02:27:13 +00:00
|
|
|
Version: 1.72
|
2019-07-30 20:15:37 +00:00
|
|
|
Release: 4%{?dist}.rvre0
|
2014-02-14 19:17:12 +00:00
|
|
|
Summary: Quantifier elimination tool
|
|
|
|
|
|
|
|
License: MIT
|
2018-08-30 02:27:13 +00:00
|
|
|
URL: https://www.usna.edu/Users/cs/wcbrown/qepcad/B/QEPCAD.html
|
|
|
|
Source0: https://www.usna.edu/Users/cs/wcbrown/qepcad/INSTALL/%{name}.%{version}.tar.gz
|
2015-09-04 02:03:08 +00:00
|
|
|
# Don't require users to set the "qe" or "SINGULARPATH" environment variables.
|
|
|
|
# Not for upstream.
|
2014-02-14 19:17:12 +00:00
|
|
|
Patch0: %{name}-env.patch
|
|
|
|
# Add gcc attributes for better efficiency and warnings. Upstream: 20 Nov 2013.
|
|
|
|
Patch1: %{name}-attr.patch
|
|
|
|
# Fix use of uninitialized variables. Upstream: 20 Nov 2013.
|
|
|
|
Patch2: %{name}-uninit.patch
|
|
|
|
# Fix a non-void function where control can fall off the end. Upstream:
|
|
|
|
# 20 Nov 2013.
|
|
|
|
Patch3: %{name}-return.patch
|
|
|
|
# Fix abstract base classes with non-virtual destructors. Upstream:
|
|
|
|
# 20 Nov 2013.
|
|
|
|
Patch4: %{name}-destructor.patch
|
|
|
|
# Add parentheses to disambiguate mixed boolean operators. Upstream:
|
|
|
|
# 20 Nov 2013.
|
|
|
|
Patch5: %{name}-parens.patch
|
|
|
|
# Fix some mixed signed/unsigned operations. Upstream: 20 Nov 2013.
|
|
|
|
Patch6: %{name}-signed.patch
|
|
|
|
# Fix syntactically incorrect expressions. Upstream: 20 Nov 2013.
|
|
|
|
Patch7: %{name}-syntax.patch
|
|
|
|
# Remove unused variables and static functions.
|
|
|
|
Patch8: %{name}-unused.patch
|
2015-09-04 02:03:08 +00:00
|
|
|
# Tell Singular not to steal the TTY (bz 1257471)
|
2018-08-30 02:27:13 +00:00
|
|
|
Patch9: %{name}-tty.patch
|
2016-02-06 17:10:02 +00:00
|
|
|
# Adapt to GCC 6
|
2018-08-30 02:27:13 +00:00
|
|
|
Patch10: %{name}-gcc6.patch
|
2014-02-14 19:17:12 +00:00
|
|
|
|
|
|
|
BuildRequires: freeglut-devel
|
2017-01-29 05:13:38 +00:00
|
|
|
BuildRequires: gcc-c++
|
2014-02-14 19:17:12 +00:00
|
|
|
BuildRequires: readline-devel
|
|
|
|
BuildRequires: saclib-devel
|
|
|
|
|
2015-09-04 02:03:08 +00:00
|
|
|
# Subprocesses are spawned to run executables from these packages
|
2014-02-14 19:17:12 +00:00
|
|
|
Requires: bash
|
2015-09-04 02:03:08 +00:00
|
|
|
Requires: coreutils
|
2014-02-14 19:17:12 +00:00
|
|
|
Requires: Singular
|
|
|
|
|
|
|
|
%description
|
|
|
|
QEPCAD is an implementation of quantifier elimination by partial
|
|
|
|
cylindrical algebraic decomposition due originally to Hoon Hong, and
|
|
|
|
subsequently added on to by many others. It is an interactive
|
|
|
|
command-line program written in C/C++, and based on the SACLIB library.
|
|
|
|
This is QEPCAD B version 1.x, the "B" designating a substantial
|
|
|
|
departure from the original QEPCAD and distinguishing it from any
|
|
|
|
development of the original that may proceed in a different direction.
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%setup -q -n qesource
|
|
|
|
%patch0
|
|
|
|
%patch1
|
|
|
|
%patch2
|
|
|
|
%patch3
|
|
|
|
%patch4
|
|
|
|
%patch5
|
|
|
|
%patch6
|
|
|
|
%patch7
|
|
|
|
%patch8
|
2015-09-04 02:03:08 +00:00
|
|
|
%patch9
|
2016-02-06 17:10:02 +00:00
|
|
|
%patch10
|
2014-02-14 19:17:12 +00:00
|
|
|
|
|
|
|
# Adapt to the Fedora saclib package
|
|
|
|
sed -i 's,\${saclib}/lib/saclib.\.a,-lsaclib,' source/Makefile cad2d/Makefile
|
|
|
|
|
2015-09-04 02:03:08 +00:00
|
|
|
# Embed the library path
|
|
|
|
sed -i 's,@LIBDIR@,%{_libdir},' source/main/BEGINQEPCAD.c
|
|
|
|
|
2014-02-14 19:17:12 +00:00
|
|
|
# Use the right build flags
|
2015-05-05 02:29:48 +00:00
|
|
|
sed -i "s|-O4|%{optflags} -Wno-unused-label $RPM_LD_FLAGS|" plot2d/Makefile
|
2014-02-14 19:17:12 +00:00
|
|
|
|
|
|
|
%build
|
|
|
|
# FIXME: %%{?_smp_mflags} doesn't work
|
|
|
|
export saclib=%{_prefix}
|
|
|
|
export qe=$PWD
|
|
|
|
export CC=g++
|
|
|
|
export CCo=g++
|
|
|
|
export FLAGS="%{optflags} -I%{_includedir}/saclib -Wno-unused-label"
|
|
|
|
export FLAGSo="$FLAGS"
|
|
|
|
export SPECIFLAGS="-I%{_includedir}/saclib"
|
|
|
|
export SPECLFLAGS="$RPM_LD_FLAGS"
|
|
|
|
make -C extensions/sfext
|
|
|
|
make -C extensions/adj2d
|
|
|
|
make -C extensions/rend
|
|
|
|
make -C extensions/newadj
|
|
|
|
make -C extensions/lift2D
|
|
|
|
make -C source opt FLAGSo="$FLAGS"
|
|
|
|
make -C plot2d
|
|
|
|
make -C cad2d opt FLAGSo="$FLAGS"
|
|
|
|
|
|
|
|
%install
|
|
|
|
#Install the binaries
|
|
|
|
mkdir -p %{buildroot}%{_bindir}
|
|
|
|
install -p -m 0755 source/qepcad %{buildroot}%{_bindir}
|
|
|
|
install -p -m 0755 plot2d/ADJ2D_plot %{buildroot}%{_bindir}
|
|
|
|
install -p -m 0755 cad2d/cad2d %{buildroot}%{_bindir}
|
|
|
|
|
|
|
|
# Install the default settings file
|
|
|
|
mkdir -p %{buildroot}%{_datadir}/qepcad
|
2015-09-04 02:03:08 +00:00
|
|
|
sed 's,^#S.*,SINGULAR %{_libdir}/Singular,' default.qepcadrc > \
|
2014-02-14 19:17:12 +00:00
|
|
|
%{buildroot}%{_datadir}/qepcad/default.qepcadrc
|
|
|
|
touch -r default.qepcadrc %{buildroot}%{_datadir}/qepcad/default.qepcadrc
|
|
|
|
|
|
|
|
# Install qepcad.help and the expected symbolic links
|
|
|
|
mkdir -p %{buildroot}%{_datadir}/qepcad/bin
|
|
|
|
cp -p source/qepcad.help %{buildroot}%{_datadir}/qepcad/bin
|
|
|
|
ln -s %{_bindir}/ADJ2D_plot %{buildroot}%{_datadir}/qepcad/bin
|
|
|
|
ln -s %{_bindir}/cad2d %{buildroot}%{_datadir}/qepcad/bin
|
|
|
|
ln -s %{_bindir}/qepcad %{buildroot}%{_datadir}/qepcad/bin
|
|
|
|
|
|
|
|
%files
|
2015-01-07 21:41:58 +00:00
|
|
|
%doc LOG
|
|
|
|
%license LICENSE
|
2014-02-14 19:17:12 +00:00
|
|
|
%{_bindir}/qepcad
|
|
|
|
%{_bindir}/ADJ2D_plot
|
|
|
|
%{_bindir}/cad2d
|
|
|
|
%{_datadir}/qepcad/
|
|
|
|
|
|
|
|
%changelog
|
2019-07-30 20:15:37 +00:00
|
|
|
* Tue Jul 30 2019 David Abdurachmanov <david.abdurachmanov@sifive.com> - 1.72-4.fc30.rvre0
|
|
|
|
- Rebuilt for Fedora RISCV, no changes
|
|
|
|
|
2019-07-26 17:35:27 +00:00
|
|
|
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.72-4
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
|
|
|
2019-02-17 08:30:52 +00:00
|
|
|
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.72-3
|
|
|
|
- Rebuild for readline 8.0
|
|
|
|
|
2019-02-02 10:30:41 +00:00
|
|
|
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.72-2
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
|
|
|
2018-08-30 02:27:13 +00:00
|
|
|
* Wed Aug 29 2018 Jerry James <loganjerry@gmail.com> - 1.72-1
|
|
|
|
- New upstream version
|
|
|
|
- Updated URLs
|
|
|
|
|
2018-07-14 02:59:38 +00:00
|
|
|
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.69-18
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
|
|
|
2018-02-09 12:10:42 +00:00
|
|
|
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.69-17
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
|
|
2017-08-03 07:10:44 +00:00
|
|
|
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.69-16
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
|
|
|
|
2017-07-27 12:34:40 +00:00
|
|
|
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.69-15
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
|
|
|
2017-02-11 11:12:18 +00:00
|
|
|
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.69-14
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
|
|
|
|
2017-01-12 16:30:38 +00:00
|
|
|
* Thu Jan 12 2017 Igor Gnatenko <ignatenko@redhat.com> - 1.69-13
|
|
|
|
- Rebuild for readline 7.x
|
|
|
|
|
2016-02-04 21:38:19 +00:00
|
|
|
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.69-12
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
|
|
|
|
2015-09-04 02:03:08 +00:00
|
|
|
* Thu Sep 3 2015 Jerry James <loganjerry@gmail.com> - 1.69-11
|
|
|
|
- Run Singular in a separate session so it doesn't steal the TTY (bz 1257471)
|
|
|
|
- Don't send data to bash through the (supposedly) Singular pipe
|
|
|
|
|
2015-06-18 21:39:49 +00:00
|
|
|
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.69-10
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
|
|
|
|
2015-05-05 02:29:48 +00:00
|
|
|
* Mon May 4 2015 Jerry James <loganjerry@gmail.com> - 1.69-9
|
|
|
|
- Rebuild for C++ ABI change
|
|
|
|
|
2015-01-07 21:41:58 +00:00
|
|
|
* Wed Jan 7 2015 Jerry James <loganjerry@gmail.com> - 1.69-8
|
|
|
|
- Update URLs
|
|
|
|
- Use license macro
|
|
|
|
|
2014-08-17 22:23:25 +00:00
|
|
|
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.69-7
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
|
|
|
|
2014-06-08 01:01:13 +00:00
|
|
|
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.69-6
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
|
|
|
|
2014-03-31 14:28:53 +00:00
|
|
|
* Mon Mar 31 2014 Jerry James <loganjerry@gmail.com> - 1.69-5
|
|
|
|
- Fix default.qepcadrc so that it requires Singular on all architectures
|
|
|
|
|
2014-03-20 16:16:39 +00:00
|
|
|
* Thu Mar 20 2014 Jerry James <loganjerry@gmail.com> - 1.69-4
|
|
|
|
- Singular is now available for all architectures
|
|
|
|
|
2014-02-15 18:16:39 +00:00
|
|
|
* Sat Feb 15 2014 Jerry James <loganjerry@gmail.com> - 1.69-3
|
|
|
|
- Singular is currently available for x86 architectures only
|
|
|
|
|
2014-02-14 19:17:12 +00:00
|
|
|
* Thu Feb 13 2014 Jerry James <loganjerry@gmail.com> - 1.69-2
|
|
|
|
- Install qepcad.help
|
|
|
|
|
|
|
|
* Thu Nov 21 2013 Jerry James <loganjerry@gmail.com> - 1.69-1
|
|
|
|
- Initial RPM
|