From 9f346d1442190f05c91f7fdbdb4ed3c190844521 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 26 Feb 2014 07:35:57 -0700 Subject: [PATCH] New upstream release, 1.8.4+dev, where the "+dev" refers to a bug fix that was applied immediately after the 1.8.4 release. Also: - Drop upstreamed patch. - Install graph.cmxs and enable the -debuginfo subpackage. - Update expected test results. - BR ocaml-findlib only, not ocaml-findlib-devel. - Install graph editing tools into -tools subpackage. - Fix the bytecode build. --- .gitignore | 2 +- ocaml-ocamlgraph.spec | 83 ++++++++++++++++++--------- ocamlgraph-1.8.1-install-extras.patch | 17 ------ ocamlgraph-1.8.4-byte-install.patch | 23 ++++++++ ocamlgraph-test.result | 1 + sources | 2 +- 6 files changed, 83 insertions(+), 45 deletions(-) delete mode 100644 ocamlgraph-1.8.1-install-extras.patch create mode 100644 ocamlgraph-1.8.4-byte-install.patch diff --git a/.gitignore b/.gitignore index 73cb476..393c029 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -/ocamlgraph-1.8.3.tar.gz +/ocamlgraph-1.8.4+dev.tar.gz diff --git a/ocaml-ocamlgraph.spec b/ocaml-ocamlgraph.spec index d8b7e01..1675b61 100644 --- a/ocaml-ocamlgraph.spec +++ b/ocaml-ocamlgraph.spec @@ -1,45 +1,33 @@ -# 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. - %global opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0) %global ocaml_destdir %{_libdir}/ocaml +%if !%{opt} %global debug_package %{nil} +%endif Name: ocaml-ocamlgraph -Version: 1.8.3 -Release: 5%{?dist} +Version: 1.8.4 +Release: 1%{?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-%{version}.tar.gz +Source0: http://ocamlgraph.lri.fr/download/ocamlgraph-%{version}+dev.tar.gz Source1: ocamlgraph-test.result - -# Fix the install-findlib rule, and install some extras. -Patch0: ocamlgraph-1.8.1-install-extras.patch +# When building the byte variant, do not try to install artifacts that were +# not built. +Patch0: ocamlgraph-1.8.4-byte-install.patch BuildRequires: libart_lgpl-devel BuildRequires: libgnomecanvas-devel BuildRequires: ocaml -BuildRequires: ocaml-findlib-devel +BuildRequires: ocaml-findlib BuildRequires: ocaml-lablgtk-devel BuildRequires: ocaml-ocamldoc ExclusiveArch: %{ocaml_arches} %global __requires_exclude ocaml\\\(Sig\\\) +%global libname %(sed -e 's/^ocaml-//' <<< %{name}) %description Ocamlgraph provides several different implementations of graph data @@ -55,8 +43,7 @@ tools. %package devel Summary: Development files for %{name} -Group: Development/Libraries -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} %description devel @@ -64,9 +51,21 @@ The %{name}-devel package contains libraries and signature files for developing applications that use %{name}. +%package tools +Summary: Graph editing tools for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + + +%description tools +The %{name}-tools package contains graph editing tools for use with +%{name}. + + %prep -%setup -q -n ocamlgraph-%{version} +%setup -q -n %{libname}-%{version}+dev +%if ! %opt %patch0 +%endif cp -p %{SOURCE1} . @@ -101,6 +100,9 @@ diff -u test ocamlgraph-test.result %install mkdir -p %{buildroot}%{ocaml_destdir} make OCAMLFIND_DESTDIR=%{buildroot}%{ocaml_destdir} install-findlib +%if %opt +install -m 0755 -p graph.cmxs %{buildroot}%{ocaml_destdir}/%{libname} +%endif # Include all code and examples in the docs mkdir -p dox-devel/examples @@ -108,9 +110,24 @@ mkdir -p dox-devel/API cp -p examples/*.ml dox-devel/examples cp -p doc/* dox-devel/API +# Install the graph editing tools +mkdir -p %{buildroot}%{_bindir} +%if %opt +install -m 0755 -p editor/editor.opt %{buildroot}/%{_bindir}/ocaml-graph-editor +install -m 0755 -p dgraph/dgraph.opt %{buildroot}%{_bindir}/ocaml-graph-viewer +install -m 0755 -p view_graph/viewgraph.opt \ + %{buildroot}%{_bindir}/ocaml-viewgraph +%else +install -m 0755 -p editor/editor.byte %{buildroot}/%{_bindir}/ocaml-graph-editor +install -m 0755 -p dgraph/dgraph.byte %{buildroot}%{_bindir}/ocaml-graph-viewer +install -m 0755 -p view_graph/viewgraph.byte \ + %{buildroot}%{_bindir}/ocaml-viewgraph +%endif + + %files %doc COPYING CREDITS FAQ LICENSE -%{ocaml_destdir}/ocamlgraph/ +%{ocaml_destdir}/%{libname}/ %if %opt %exclude %{ocaml_destdir}/*/*.a %exclude %{ocaml_destdir}/*/*.cmxa @@ -131,7 +148,21 @@ cp -p doc/* dox-devel/API %{ocaml_destdir}/*/*.mli +%files tools +%{_bindir}/* + + %changelog +* Wed Feb 26 2014 Jerry James - 1.8.4-1 +- New upstream release, 1.8.4+dev, where the "+dev" refers to a bug fix + that was applied immediately after the 1.8.4 release +- Drop upstreamed patch +- Install graph.cmxs and enable the -debuginfo subpackage +- Update expected test results +- BR ocaml-findlib only, not ocaml-findlib-devel +- Install graph editing tools into -tools subpackage +- Fix the bytecode build + * Wed Oct 02 2013 Richard W.M. Jones - 1.8.3-5 - Rebuild for ocaml-lablgtk 2.18. diff --git a/ocamlgraph-1.8.1-install-extras.patch b/ocamlgraph-1.8.1-install-extras.patch deleted file mode 100644 index 5d6cc3f..0000000 --- a/ocamlgraph-1.8.1-install-extras.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- Makefile.in.orig 2011-10-17 08:27:03.000000000 -0600 -+++ Makefile.in 2011-10-25 11:25:33.708625231 -0600 -@@ -349,8 +349,12 @@ - $(OCAMLFIND) install ocamlgraph META \ - $(SRCDIR)/*.mli $(VIEWER_DIR)/*.mli $(DGRAPH_DIR)/*.mli \ - graph$(LIBEXT) graph.cmx graph.cmo graph.cmi $(CMA) $(CMXA) \ -- $(VIEWER_CMXLIB) $(VIEWER_CMOLIB) $(DGRAPH_CMXLIB) \ -- $(DGRAPH_CMOLIB) -+ $(VIEWER_CMILIB) $(VIEWER_CMXLIB) \ -+ $(VIEWER_CMXLIB:.cmx=.o) $(VIEWER_CMOLIB) \ -+ $(DGRAPH_CMILIB) $(DGRAPH_CMXLIB) \ -+ $(DGRAPH_CMXLIB:.cmx=.o) $(DGRAPH_CMOLIB) \ -+ $(filter-out dgraph/dGraphTest.cmx, $(DGRAPH_CMX)) \ -+ $(filter-out dgraph/dGraphTest.cmo, $(DGRAPH_CMO)) - else - $(OCAMLFIND) install ocamlgraph META \ - $(SRCDIR)/*.mli $(VIEWER_DIR)/*.mli $(DGRAPH_DIR)/*.mli \ diff --git a/ocamlgraph-1.8.4-byte-install.patch b/ocamlgraph-1.8.4-byte-install.patch new file mode 100644 index 0000000..63dde78 --- /dev/null +++ b/ocamlgraph-1.8.4-byte-install.patch @@ -0,0 +1,23 @@ +--- Makefile.in.orig 2014-02-07 13:12:54.000000000 -0700 ++++ Makefile.in 2014-02-25 20:00:00.000000000 -0700 +@@ -418,16 +418,13 @@ + ifeq (@LABLGNOMECANVAS@,yes) + $(OCAMLFIND) install ocamlgraph META \ + $(SRCDIR)/*.mli $(VIEWER_DIR)/*.mli $(DGRAPH_DIR)/*.mli \ +- graph$(OBJEXT) graph$(LIBEXT) graph.cmx graph.cmo graph.cmi \ +- $(CMA) $(CMXA) \ +- $(VIEWER_CMXLIB) $(VIEWER_CMOLIB) $(VIEWER_CMILIB) \ +- $(VIEWER_CMXLIB:.cmx=.o) \ +- $(DGRAPH_CMXLIB) $(DGRAPH_CMOLIB) $(DGRAPH_CMILIB) \ +- $(DGRAPH_CMXLIB:.cmx=.o) ++ graph.cmo graph.cmi $(CMA) \ ++ $(VIEWER_CMOLIB) $(VIEWER_CMILIB) \ ++ $(DGRAPH_CMOLIB) $(DGRAPH_CMILIB) + else + $(OCAMLFIND) install ocamlgraph META \ + $(SRCDIR)/*.mli $(VIEWER_DIR)/*.mli $(DGRAPH_DIR)/*.mli \ +- graph$(LIBEXT) graph.cmx graph.cmo graph.cmi $(CMA) $(CMXA) ++ graph.cmo graph.cmi $(CMA) + endif + endif + diff --git a/ocamlgraph-test.result b/ocamlgraph-test.result index 114ef29..bd57c93 100644 --- a/ocamlgraph-test.result +++ b/ocamlgraph-test.result @@ -1,3 +1,4 @@ +mkdir -p bin ocamlopt.opt -o bin/test-ts unix.cmxa graph.cmxa tests/test_topsort.ml ocaml graph.cma tests/check.ml iter: diff --git a/sources b/sources index 965059f..e49a492 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -ad2dc42f74c77dae9302c40cf2b5ff86 ocamlgraph-1.8.3.tar.gz +3ba9870d4dd309a168b7e3f4bfc83bcc ocamlgraph-1.8.4+dev.tar.gz