Compare commits

..

No commits in common. "rawhide" and "f36" have entirely different histories.

3 changed files with 35 additions and 92 deletions

5
DSDP.rpmlintrc Normal file
View file

@ -0,0 +1,5 @@
# THIS FILE IS FOR WHITELISTING RPMLINT ERRORS AND WARNINGS IN TASKOTRON
# https://fedoraproject.org/wiki/Taskotron/Tasks/dist.rpmlint#Whitelisting_errors
# The dictionary is missing some technical terms
addFilter(r'W: spelling-error .* (combinatorial|infeasib(ility|le)|semidefinite)')

106
DSDP.spec
View file

@ -1,13 +1,9 @@
Name: DSDP
Version: 5.8
Release: 40%{?dist}
Release: 30%{?dist}
Summary: Software for semidefinite programming
# The content is DSDP. The remaining licenses cover the various fonts embedded
# in PDFs.
# AMS: OFL-1.1-RFN
# CM: Knuth-CTAN
License: DSDP AND OFL-1.1-RFN AND Knuth-CTAN
License: DSDP
URL: https://www.mcs.anl.gov/hs/software/DSDP/
Source0: https://www.mcs.anl.gov/hs/software/DSDP/%{name}%{version}.tar.gz
# Man pages written by Jerry James using text from the sources.
@ -16,14 +12,11 @@ Source1: DSDP-man.tar.xz
# A substitute makefile to fix the brokenness of the distributed Makefiles
Source2: DSDP.Makefile
# Fix a buffer overflow in one of the examples.
Patch: %{name}-overflow.patch
Patch0: %{name}-overflow.patch
# Fix -Wint-in-bool-context warnings.
Patch: %{name}-int-in-bool-context.patch
Patch1: %{name}-int-in-bool-context.patch
# Fix big endian problems (patch courtesy of Debian)
Patch: %{name}-type-mismatch.patch
# See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
ExcludeArch: %{ix86}
Patch2: %{name}-type-mismatch.patch
BuildRequires: doxygen-latex
BuildRequires: gcc
@ -32,36 +25,31 @@ BuildRequires: make
BuildRequires: pkgconfig(flexiblas)
%description
DSDP is a free open source implementation of an interior-point method for
semidefinite programming. It provides primal and dual solutions, exploits
low-rank structure and sparsity in the data, and has relatively low memory
requirements for an interior-point method. It allows feasible and infeasible
starting points and provides approximate certificates of infeasibility when no
feasible solution exists. The dual-scaling algorithm implemented in this
package has a convergence proof and worst-case polynomial complexity under
mild assumptions on the data. The software can be used as a set of
subroutines, through Matlab, or by reading and writing to data files.
Furthermore, the solver offers scalable parallel performance for large
problems and a well documented interface. Some of the most popular
applications of semidefinite programming and linear matrix inequalities (LMI)
are model control, truss topology design, and semidefinite relaxations of
combinatorial and global optimization problems.
DSDP is a free open source implementation of an interior-point method
for semidefinite programming. It provides primal and dual solutions,
exploits low-rank structure and sparsity in the data, and has relatively
low memory requirements for an interior-point method. It allows
feasible and infeasible starting points and provides approximate
certificates of infeasibility when no feasible solution exists. The
dual-scaling algorithm implemented in this package has a convergence
proof and worst-case polynomial complexity under mild assumptions on the
data. The software can be used as a set of subroutines, through Matlab,
or by reading and writing to data files. Furthermore, the solver offers
scalable parallel performance for large problems and a well documented
interface. Some of the most popular applications of semidefinite
programming and linear matrix inequalities (LMI) are model control,
truss topology design, and semidefinite relaxations of combinatorial and
global optimization problems.
%package devel
# The content is DSDP. The remaining licenses cover the various fonts embedded
# in PDFs.
# AMS: OFL-1.1-RFN
# CM: Knuth-CTAN
License: DSDP AND OFL-1.1-RFN AND Knuth-CTAN
Summary: Headers and libraries for developing with DSDP
Requires: %{name}%{?_isa} = %{version}-%{release}
Provides: bundled(js-jquery)
Provides: bundled(jquery)
%description devel
Headers and libraries for developing with DSDP.
%package examples
License: DSDP
Summary: Example programs that use DSDP
Requires: %{name}%{?_isa} = %{version}-%{release}
@ -69,13 +57,13 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
Examples programs that use the DSDP library.
%prep
%autosetup -p0 -n %{name}%{version} -a 1
%autosetup -p0 -n %{name}%{version}
%setup -q -n %{name}%{version} -T -D -a 1
%conf
sed -e 's|@RPM_OPT_FLAGS@|%{build_cflags}|' \
-e 's|@RPM_LD_FLAGS@|%{build_ldflags}|' \
-e 's|@libdir@|%{_libdir}|' \
-e 's|@version@|%{version}|' \
sed -e "s|@RPM_OPT_FLAGS@|${RPM_OPT_FLAGS}|" \
-e "s|@RPM_LD_FLAGS@|${RPM_LD_FLAGS}|" \
-e "s|@libdir@|%{_libdir}|" \
-e "s|@version@|%{version}|" \
%{SOURCE2} > Makefile
%build
@ -114,7 +102,7 @@ done
%files
%doc docs/DSDP5-Exe-UserGuide.pdf docs/DSDP5-P1289-0905.pdf
%license dsdp-license
%{_libdir}/libdsdp.so.5{,.*}
%{_libdir}/libdsdp.so.*
%files devel
%doc docs/DSDP5-API-UserGuide.pdf docs/dox
@ -123,44 +111,10 @@ done
%files examples
%doc examples/Contents
%{_bindir}/dsdp*
%{_mandir}/man1/dsdp*
%{_bindir}/*
%{_mandir}/man1/*
%changelog
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-40
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-39
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-37
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-36
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-35
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jan 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-34
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-33
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-32
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Nov 23 2022 Jerry James <loganjerry@gmail.com> - 5.8-31
- Add SPDX License identifiers for PDF documentation
- Minor spec file cleanups
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-31
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.8-30
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild

View file

@ -1,16 +0,0 @@
# DSDP
[DSDP](https://www.mcs.anl.gov/hs/software/DSDP/) is a free open source
implementation of an interior-point method for semidefinite programming. It
provides primal and dual solutions, exploits low-rank structure and sparsity
in the data, and has relatively low memory requirements for an interior-point
method. It allows feasible and infeasible starting points and provides
approximate certificates of infeasibility when no feasible solution exists.
The dual-scaling algorithm implemented in this package has a convergence proof
and worst-case polynomial complexity under mild assumptions on the data. The
software can be used as a set of subroutines, through Matlab, or by reading
and writing to data files. Furthermore, the solver offers scalable parallel
performance for large problems and a well documented interface. Some of the
most popular applications of semidefinite programming and linear matrix
inequalities (LMI) are model control, truss topology design, and semidefinite
relaxations of combinatorial and global optimization problems.