From 9b861aadd64fcef357693435f1179ccab4ce8b27 Mon Sep 17 00:00:00 2001 From: Alan Dunn Date: Sat, 23 Aug 2008 20:48:48 +0000 Subject: [PATCH] Initial commit for devel branch. --- .cvsignore | 1 + import.log | 1 + ocaml-ocamlgraph.spec | 124 ++++++++++++++++++++++++++++++++++++++ ocamlgraph-makefile.patch | 11 ++++ ocamlgraph-test.result | 25 ++++++++ sources | 1 + 6 files changed, 163 insertions(+) create mode 100644 import.log create mode 100644 ocaml-ocamlgraph.spec create mode 100644 ocamlgraph-makefile.patch create mode 100644 ocamlgraph-test.result diff --git a/.cvsignore b/.cvsignore index e69de29..0475770 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +ocamlgraph-0.99c.tar.gz diff --git a/import.log b/import.log new file mode 100644 index 0000000..13a7f7a --- /dev/null +++ b/import.log @@ -0,0 +1 @@ +ocaml-ocamlgraph-0_99c-2_fc9:HEAD:ocaml-ocamlgraph-0.99c-2.fc9.src.rpm:1219524338 diff --git a/ocaml-ocamlgraph.spec b/ocaml-ocamlgraph.spec new file mode 100644 index 0000000..94be37d --- /dev/null +++ b/ocaml-ocamlgraph.spec @@ -0,0 +1,124 @@ +# Note: rpmlint complains that this package is not marked as +# noarch. This is not really an error as this is current standard +# practice for OCaml libraries even though they do not contain +# architecture dependent files themselves (the devel packages do +# instead). +# +# See https://www.redhat.com/archives/fedora-packaging/2008-August/msg00017.html +# for a discussion and +# https://www.redhat.com/archives/fedora-packaging/2008-August/msg00020.html +# for a potential fix. However, this is probably not the time and +# place to try to change the standard practice, so for now I will +# follow standard practice. + +%define opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0) +%define debug_package %{nil} +%define _use_internal_dependency_generator 0 +%define __find_requires /usr/lib/rpm/ocaml-find-requires.sh +%define __find_provides /usr/lib/rpm/ocaml-find-provides.sh + +Name: ocaml-ocamlgraph +Version: 0.99c +Release: 2%{?dist} +Summary: OCaml library for arc and node graphs + +Group: Development/Libraries +License: LGPLv2 with exceptions +URL: http://ocamlgraph.lri.fr/ +Source0: http://ocamlgraph.lri.fr/download/ocamlgraph-0.99c.tar.gz +Source1: ocamlgraph-test.result +Patch0: ocamlgraph-makefile.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildRequires: ocaml >= 3.08, ocaml-findlib-devel, ocaml-ocamldoc + +%description +Ocamlgraph provides several different implementations of graph data +structures. It also provides implementations for a number of classical +graph algorithms like Kruskal's algorithm for MSTs, topological +ordering of DAGs, Dijkstra's shortest paths algorithm, and +Ford-Fulkerson's maximal-flow algorithm to name a few. The algorithms +and data structures are written functorially for maximal +reusability. Also has input and output capability for Graph Modeling +Language file format and Dot and Neato graphviz (graph visualization) +tools. + +%package devel +Summary: Development files for %{name} +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} + +%description devel +The %{name}-devel package contains libraries and signature files for +developing applications that use %{name}. + +%prep +%setup -q -n ocamlgraph-%{version} + +# Fixes makefile to avoid error during findlib install and properly copy .mli files into devel package +%patch0 + +cp %{SOURCE1} . + +%build +./configure --prefix=%{_prefix} --mandir=%{_mandir} --libdir=%{_libdir} + +%if %opt +%define opt_option OCAMLBEST=opt OCAMLOPT=ocamlopt.opt +%else +%define opt_option OCAMLBEST=byte OCAMLC=ocamlc +%endif +make %{opt_option} +make doc + +%check +make check >& test +diff test ocamlgraph-test.result + +%install +rm -rf %{buildroot} + +%define ocaml_destdir %{_libdir}/ocaml +mkdir -p %{buildroot}%{ocaml_destdir} +make OCAMLFIND_DESTDIR=%{buildroot}%{ocaml_destdir} install-findlib +rm -f %{buildroot}%{ocaml_destdir}/ocamlgraph/*.cmo + +mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-%{version}/ +mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-%{version}-devel/examples/ +mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-%{version}-devel/API/ +cp -p LICENSE %{buildroot}%{_defaultdocdir}/%{name}-%{version}/ +cp -p README %{buildroot}%{_defaultdocdir}/%{name}-%{version}-devel/ +cp -p examples/*.ml %{buildroot}%{_defaultdocdir}/%{name}-%{version}-devel/examples/ +cp -p doc/* %{buildroot}%{_defaultdocdir}/%{name}-%{version}-devel/API/ + +%clean +rm -rf %{buildroot} + +%files +%defattr(-,root,root,-) +%{ocaml_destdir}/ocamlgraph/ +%if %opt +%exclude %{ocaml_destdir}/*/*.a +%exclude %{ocaml_destdir}/*/*.cmxa +%exclude %{ocaml_destdir}/*/*.cmx +%endif +%exclude %{ocaml_destdir}/*/*.mli +%{_defaultdocdir}/%{name}-%{version}/LICENSE + +%files devel +%defattr(-,root,root,-) +%if %opt +%{ocaml_destdir}/*/*.a +%{ocaml_destdir}/*/*.cmxa +%{ocaml_destdir}/*/*.cmx +%endif +%{ocaml_destdir}/*/*.mli +# Include all code and examples in the doc directory +%{_defaultdocdir}/%{name}-%{version}-devel/ + +%changelog +* Wed Aug 13 2008 Alan Dunn 0.99c-2 +- Incorporates changes suggested during review: +- License information was incorrect +- rpmlint error now properly justified +* Thu Aug 07 2008 Alan Dunn 0.99c-1 +- Initial Fedora RPM release. diff --git a/ocamlgraph-makefile.patch b/ocamlgraph-makefile.patch new file mode 100644 index 0000000..e0221b1 --- /dev/null +++ b/ocamlgraph-makefile.patch @@ -0,0 +1,11 @@ +--- Makefile.in 2008-04-03 11:16:32.000000000 -0400 ++++ Makefile.in 2008-08-07 06:31:20.000000000 -0400 +@@ -213,7 +213,7 @@ + + install-findlib: META + ifdef OCAMLFIND +- $(OCAMLFIND) install ocamlgraph META *.mli \ ++ $(OCAMLFIND) install ocamlgraph META src/*.mli \ + graph$(LIBEXT) graph.cmx graph.cmo graph.cmi $(CMA) $(CMXA) + endif + diff --git a/ocamlgraph-test.result b/ocamlgraph-test.result new file mode 100644 index 0000000..24afc26 --- /dev/null +++ b/ocamlgraph-test.result @@ -0,0 +1,25 @@ +ocaml graph.cma tests/check.ml +iter: +pre 3 +pre 5 +pre 4 +pre 2 +post 2 +post 4 +post 5 +pre 6 +post 6 +post 3 +prefix: +pre 3 +pre 6 +pre 5 +pre 4 +pre 2 +step: +visit 6 +visit 5 +visit 4 +visit 2 +visit 3 +visit 1 diff --git a/sources b/sources index e69de29..f095052 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +3aff22a06afaa105ca40e31a5e15cf21 ocamlgraph-0.99c.tar.gz