[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

OCaml find-requires and find-provides



Here are some working find-requires and find-provides scripts for OCaml. The produce dependencies according to what I wrote about here:

https://www.redhat.com/archives/fedora-packaging/2007-May/msg00105.html

(Ignore the earlier versions of the same scripts attached to that email).

To use them is simply a matter of adding the following lines to a spec file:

%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

Also attached is a patch to the ocaml.spec file to install these.

I've got working specs/SRPMs for ocaml-findlib, ocaml-extlib, ocaml-pcre and ocaml-calendar, which I'm going to put into BZ shortly as review requests.

Rich.

--
Emerging Technologies, Red Hat - http://et.redhat.com/~rjones/
Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod
Street, Windsor, Berkshire, SL4 1TE, United Kingdom.  Registered in
England and Wales under Company Registration No. 03798903
Index: ocaml.spec
===================================================================
RCS file: /home/remote/rjones/cvsroot/redhat/ocaml/ocaml/ocaml.spec,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ocaml.spec	18 May 2007 12:16:15 -0000	1.1
+++ ocaml.spec	25 May 2007 17:18:45 -0000	1.2
@@ -1,6 +1,6 @@
 Name:		ocaml
 Version:	3.09.3
-Release: 	1%{?dist}
+Release: 	2%{?dist}
 
 Summary:	Objective Caml compiler and programming environment
 
@@ -11,6 +11,8 @@
 Source1:	http://caml.inria.fr/distrib/ocaml-3.09/ocaml-3.09-refman.html.tar.gz
 Source2:	http://caml.inria.fr/distrib/ocaml-3.09/ocaml-3.09-refman.pdf
 Source3:	http://caml.inria.fr/distrib/ocaml-3.09/ocaml-3.09-refman.info.tar.gz
+Source4:	ocaml-find-requires.sh
+Source5:	ocaml-find-provides.sh
 Patch0:		ocaml-rpath.patch
 Patch1:		ocaml-user-cflags.patch
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -32,6 +34,11 @@
 Requires(post):	/sbin/install-info
 Requires(preun): /sbin/install-info
 
+%define _use_internal_dependency_generator 0
+%define __find_requires %{SOURCE4} -i Asttypes -i Outcometree -c
+%define __find_provides %{SOURCE5}
+
+
 %description
 Objective Caml is a high-level, strongly-typed, functional and
 object-oriented programming language from the ML family of languages.
@@ -110,6 +117,7 @@
 make world opt opt.opt
 # %{?_smp_mflags} breaks the build
 (cd emacs; make ocamltags)
+make -C tools objinfo
 
 
 %install
@@ -125,6 +133,10 @@
     mkdir -p $RPM_BUILD_ROOT%{_infodir};
     cd infoman; cp ocaml*.gz $RPM_BUILD_ROOT%{_infodir}
 )
+cp tools/objinfo $RPM_BUILD_ROOT%{_bindir}/ocamlobjinfo
+mkdir -p $RPM_BUILD_ROOT/usr/lib/rpm/
+cp %{SOURCE4} $RPM_BUILD_ROOT/usr/lib/rpm/
+cp %{SOURCE5} $RPM_BUILD_ROOT/usr/lib/rpm/
 
 
 %clean
@@ -151,6 +163,8 @@
 %{_mandir}/man1/*
 %{_mandir}/man3/*
 %{_libdir}/ocaml
+/usr/lib/rpm/ocaml-find-requires.sh
+/usr/lib/rpm/ocaml-find-provides.sh
 %{_infodir}/*
 %exclude %{_bindir}/camlp4*
 %exclude %{_bindir}/mkcamlp4
@@ -210,6 +224,9 @@
 
 
 %changelog
+* Fri May 25 2007 Richard W.M. Jones <rjones oirase home annexia org> - 3.09.3-2
+- Added ocaml-find-requires.sh and ocaml-find-provides.sh
+
 * Sat Dec  2 2006 Gerard Milmeister <gemi bluewin ch> - 3.09.3-1
 - new version 3.09.3
 

Attachment: ocaml-find-provides.sh
Description: application/shellscript

Attachment: ocaml-find-requires.sh
Description: application/shellscript

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]