ocaml-tplib/ocaml-tplib.spec

223 lines
7.2 KiB
RPMSpec

Name: ocaml-tplib
Version: 1.3
Release: 30%{?dist}
Summary: Tropical Polyhedra Library
License: LGPLv2+
URL: https://gforge.inria.fr/projects/tplib
Source0: https://gforge.inria.fr/frs/download.php/32084/tplib-%{version}.tar.gz
# Man pages written by Jerry James using text from the sources; i.e., I
# contributed only the formatting. Thus, the license and copyright for these
# files is the same as for the sources.
Source1: compute_ext_rays.1
Source2: compute_ext_rays_polar.1
Source3: compute_halfspaces.1
Source4: compute_minimal_external_representations.1
Source5: compute_tangent_hypergraph.1
Source6: compute_tropical_complex.1
# Upstream patch to adapt to new ocamlbuild behavior. See
# https://github.com/ocaml/opam-repository/blob/master/packages/tplib/tplib.1.3/files/fix-makefile.diff
Patch0: %{name}-ocamlbuild.patch
# Adapt to current versions of mlgmpidl
Patch1: %{name}-mlgmpidl.patch
BuildRequires: mpfr-devel
BuildRequires: ocaml
BuildRequires: ocaml-ocamlbuild-devel
BuildRequires: ocaml-camlidl-devel
BuildRequires: ocaml-findlib-devel
BuildRequires: ocaml-mlgmpidl-devel
BuildRequires: ocaml-num-devel
BuildRequires: ocaml-ocamldoc
BuildRequires: ocaml-zarith-devel
# This is an internal symbol that winds up in Requires, but not Provides
%global __requires_exclude ocaml\\\(Numeric_plugin\\\)
# Don't advertise the numeric plugins
%global __provides_exclude plugin
%description
TPLib computes a description by means of vertices and rays of tropical
polyhedra defined by means of inequalities, and conversely.
It also provides a numerical abstract domain based on tropical
polyhedra, in order to infer min-/max- invariants over programs.
%package devel
Summary: Library files and headers for developing with TPLib
Requires: %{name}%{?_isa} = %{version}-%{release}
Provides: %{name}-static = %{version}-%{release}
%description devel
Library files and headers for developing applications that use TPLib.
%package tools
Summary: Tools that use TPLib
Requires: %{name}%{?_isa} = %{version}-%{release}
%description tools
Tools that use TPLib.
%prep
%setup -q -n tplib-%{version}
%patch0
%patch1
# Enable debuginfo generation
sed -i 's/@OCAMLBUILD@/& -cflag -g -lflag -g/' Makefile.in
# Use the PIC version of libasmrun
sed -i 's/-lasmrun/&_pic/g' Makefile.in configure
sed -i 's/libasmrun\.a/libasmrun_pic.a/' Makefile.in
# Build the bindings with -fPIC
sed -i 's,CFLAGS += -I\$(OCAML_HOME_DIR),& -fPIC,' Makefile.in
%build
%configure
# Don't use %%{?_smp_mflags}; it leads to build failures
make
%install
export OCAMLFIND_DESTDIR=%{buildroot}%{_libdir}/ocaml
mkdir -p $OCAMLFIND_DESTDIR
mkdir -p %{buildroot}%{_includedir}
make install bindir=%{buildroot}%{_bindir} libdir=%{buildroot}%{_libdir} \
includedir=%{buildroot}%{_includedir}
mkdir -p %{buildroot}%{_mandir}/man1
cp -p %{SOURCE1} %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5} %{SOURCE6} \
%{buildroot}%{_mandir}/man1
%check
make test
_build/tests/test_tplib_double
_build/tests/test_tplib_rational
%files
%doc README
%license LICENSE
%{_libdir}/ocaml/tplib/
%exclude %{_libdir}/ocaml/tplib/*.a
%exclude %{_libdir}/ocaml/tplib/*.cmxa
%exclude %{_libdir}/ocaml/tplib/*.mli
%files devel
%{_includedir}/tplib_*.h
%{_libdir}/*.a
%{_libdir}/ocaml/tplib/*.a
%{_libdir}/ocaml/tplib/*.cmxa
%{_libdir}/ocaml/tplib/*.mli
%files tools
%{_bindir}/*
%doc %{_mandir}/man1/*
%changelog
* Sat Nov 18 2017 Richard W.M. Jones <rjones@redhat.com> - 1.3-30
- OCaml 4.06.0 rebuild.
* Wed Aug 09 2017 Richard W.M. Jones <rjones@redhat.com> - 1.3-29
- OCaml 4.05.0 rebuild.
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3-28
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3-27
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Tue Jun 27 2017 Richard W.M. Jones <rjones@redhat.com> - 1.3-26
- OCaml 4.04.2 rebuild.
* Sat May 13 2017 Richard W.M. Jones <rjones@redhat.com> - 1.3-25
- OCaml 4.04.1 rebuild.
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3-24
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Nov 09 2016 Dan Horák <dan@danny.cz> - 1.3-23
- rebuild for s390x codegen bug
* Mon Nov 07 2016 Richard W.M. Jones <rjones@redhat.com> - 1.3-22
- Rebuild for OCaml 4.04.0.
- Add explicit dependency on ocamlbuild.
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.3-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Wed Nov 25 2015 Jerry James <loganjerry@gmail.com> - 1.3-20
- Rebuild for ocaml-zarith 1.4.1
* Tue Jul 28 2015 Richard W.M. Jones <rjones@redhat.com> - 1.3-19
- OCaml 4.02.3 rebuild.
* Wed Jun 24 2015 Richard W.M. Jones <rjones@redhat.com> - 1.3-18
- ocaml-4.02.2 final rebuild.
* Thu Jun 18 2015 Richard W.M. Jones <rjones@redhat.com> - 1.3-17
- ocaml-4.02.2 rebuild.
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Wed Feb 18 2015 Richard W.M. Jones <rjones@redhat.com> - 1.3-15
- ocaml-4.02.1 rebuild.
* Tue Oct 14 2014 Jerry James <loganjerry@gmail.com> - 1.3-14
- Rebuild for ocaml-zarith 1.3
* Fri Sep 19 2014 Jerry James <loganjerry@gmail.com> - 1.3-13
- Add -ocamlbuild patch to fix build with ocaml 4.02.0
- Fix license handling
* Sun Aug 24 2014 Richard W.M. Jones <rjones@redhat.com> - 1.3-12
- Bump release and rebuild.
* Sat Aug 23 2014 Richard W.M. Jones <rjones@redhat.com> - 1.3-11
- ocaml-4.02.0+rc1 rebuild.
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Aug 02 2014 Richard W.M. Jones <rjones@redhat.com> - 1.3-9
- ocaml-4.02.0-0.8.git10e45753.fc22 rebuild.
* Fri Jul 25 2014 Richard W.M. Jones <rjones@redhat.com> - 1.3-8
- OCaml 4.02.0 beta rebuild.
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Fri Apr 18 2014 Jerry James <loganjerry@gmail.com> - 1.3-6
- Remove ocaml_arches macro (bz 1087794)
- Drop unnecessary gmp-devel BR
* Mon Sep 16 2013 Jerry James <loganjerry@gmail.com> - 1.3-5
- Rebuild for OCaml 4.01.0
- Enable debuginfo
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Fri Jun 21 2013 Jerry James <loganjerry@gmail.com> - 1.3-3
- Rebuild for ocaml-zarith 1.2.1
* Thu May 23 2013 Jerry James <loganjerry@gmail.com> - 1.3-2
- Rebuild for ocaml-zarith 1.2
* Tue Feb 19 2013 Jerry James <loganjerry@gmail.com> - 1.3-1
- New upstream release
- Upstream dropped MLGMPIDL support in favor of MLGMP, which we don't ship
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Wed Jan 16 2013 Jerry James <loganjerry@gmail.com> - 1.2-2
- Add man pages
- Don't Provide the numeric plugins
- Make -devel also Provide -static
* Wed Oct 31 2012 Jerry James <loganjerry@gmail.com> - 1.2-1
- Initial RPM