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

patch - add an ocaml-interp binary package



I would like to distribute executables in source form like this:

 #!/usr/bin/ocamlrun /usr/bin/ocaml
 #load "unix.cma"
 etc...

but this requires the ocaml package, which pulls in lots of development libraries like libc6-dev which we don't want on our normal system. I developed the attached patch to 3.06 which splits out an ocaml-interp package, it would be great for me if this was made part of the normal packaging. I think it would help promote ocaml as a Perl alternative.

-david

diff -ruN ocaml-3.06.orig/debian/control ocaml-3.06/debian/control
--- ocaml-3.06.orig/debian/control	2003-11-03 05:09:46.000000000 -0800
+++ ocaml-3.06/debian/control	2003-11-03 04:42:45.000000000 -0800
@@ -7,7 +7,7 @@
 
 Package: ocaml
 Architecture: any
-Depends: ${shlibs:Depends}, libncurses5-dev, ocaml-base (= ${Source-Version}), ocaml-base-3.06-1
+Depends: ${shlibs:Depends}, libncurses5-dev, ocaml-base (= ${Source-Version}), ocaml-interp-3.06-1
 Suggests: xlibs-dev, tcl8.3-dev, tk8.3-dev, ocaml-doc, libgdbmg1-dev, emacsen
 Recommends: ledit, file
 Provides: ${F:BestProvides} camlp4, libcamltk-ocaml-dev, ocamltk, ocaml-3.06-1
@@ -73,3 +73,15 @@
  This package contains the sources needed to build some packages which build
  depend on the ocaml source. Notice that if you want to rebuild ocaml, these
  will not work, consider using the source package instead.
+
+Package: ocaml-interp
+Architecture: all
+Provides: ocaml-interp-3.06-1
+Depends: ocaml-base-3.06-1
+Description: Ocaml interpreter and standard libraries
+ Objective Caml is an implementation of the ML language, based on
+ the Caml Light dialect extended with a complete class-based object system
+ and a powerful module system in the style of Standard ML.
+ .
+ This package contains the files required to run an ocaml shell from the
+ command line.
diff -ruN ocaml-3.06.orig/debian/ocaml-interp.dirs ocaml-3.06/debian/ocaml-interp.dirs
--- ocaml-3.06.orig/debian/ocaml-interp.dirs	1969-12-31 16:00:00.000000000 -0800
+++ ocaml-3.06/debian/ocaml-interp.dirs	2003-11-03 04:43:52.000000000 -0800
@@ -0,0 +1,2 @@
+usr/bin
+usr/lib/ocaml/3.06
diff -ruN ocaml-3.06.orig/debian/ocaml-interp.files ocaml-3.06/debian/ocaml-interp.files
--- ocaml-3.06.orig/debian/ocaml-interp.files	1969-12-31 16:00:00.000000000 -0800
+++ ocaml-3.06/debian/ocaml-interp.files	2003-11-03 04:59:03.000000000 -0800
@@ -0,0 +1,71 @@
+usr/bin/ocaml
+usr/lib/ocaml/3.06/arg.cmi
+usr/lib/ocaml/3.06/arith_status.cmi
+usr/lib/ocaml/3.06/array.cmi
+usr/lib/ocaml/3.06/arrayLabels.cmi
+usr/lib/ocaml/3.06/big_int.cmi
+usr/lib/ocaml/3.06/bigarray.cma
+usr/lib/ocaml/3.06/bigarray.cmi
+usr/lib/ocaml/3.06/buffer.cmi
+usr/lib/ocaml/3.06/callback.cmi
+usr/lib/ocaml/3.06/camlinternalOO.cmi
+usr/lib/ocaml/3.06/char.cmi
+usr/lib/ocaml/3.06/complex.cmi
+usr/lib/ocaml/3.06/dbm.cma
+usr/lib/ocaml/3.06/dbm.cmi
+usr/lib/ocaml/3.06/digest.cmi
+usr/lib/ocaml/3.06/dynlink.cma
+usr/lib/ocaml/3.06/dynlink.cmi
+usr/lib/ocaml/3.06/filename.cmi
+usr/lib/ocaml/3.06/format.cmi
+usr/lib/ocaml/3.06/gc.cmi
+usr/lib/ocaml/3.06/genlex.cmi
+usr/lib/ocaml/3.06/graphics.cma
+usr/lib/ocaml/3.06/graphics.cmi
+usr/lib/ocaml/3.06/graphicsX11.cmi
+usr/lib/ocaml/3.06/hashtbl.cmi
+usr/lib/ocaml/3.06/int32.cmi
+usr/lib/ocaml/3.06/int64.cmi
+usr/lib/ocaml/3.06/lazy.cmi
+usr/lib/ocaml/3.06/lexing.cmi
+usr/lib/ocaml/3.06/list.cmi
+usr/lib/ocaml/3.06/listLabels.cmi
+usr/lib/ocaml/3.06/map.cmi
+usr/lib/ocaml/3.06/marshal.cmi
+usr/lib/ocaml/3.06/moreLabels.cmi
+usr/lib/ocaml/3.06/nat.cmi
+usr/lib/ocaml/3.06/nativeint.cmi
+usr/lib/ocaml/3.06/num.cmi
+usr/lib/ocaml/3.06/nums.cma
+usr/lib/ocaml/3.06/obj.cmi
+usr/lib/ocaml/3.06/oo.cmi
+usr/lib/ocaml/3.06/outcometree.cmi
+usr/lib/ocaml/3.06/parsing.cmi
+usr/lib/ocaml/3.06/pervasives.cmi
+usr/lib/ocaml/3.06/printexc.cmi
+usr/lib/ocaml/3.06/printf.cmi
+usr/lib/ocaml/3.06/profiling.cmi
+usr/lib/ocaml/3.06/queue.cmi
+usr/lib/ocaml/3.06/random.cmi
+usr/lib/ocaml/3.06/ratio.cmi
+usr/lib/ocaml/3.06/scanf.cmi
+usr/lib/ocaml/3.06/set.cmi
+usr/lib/ocaml/3.06/sort.cmi
+usr/lib/ocaml/3.06/stack.cmi
+usr/lib/ocaml/3.06/stdLabels.cmi
+usr/lib/ocaml/3.06/std_exit.cmi
+usr/lib/ocaml/3.06/stdlib.cma
+usr/lib/ocaml/3.06/str.cma
+usr/lib/ocaml/3.06/str.cmi
+usr/lib/ocaml/3.06/stream.cmi
+usr/lib/ocaml/3.06/string.cmi
+usr/lib/ocaml/3.06/stringLabels.cmi
+usr/lib/ocaml/3.06/sys.cmi
+usr/lib/ocaml/3.06/topdirs.cmi
+usr/lib/ocaml/3.06/toplevellib.cma
+usr/lib/ocaml/3.06/toploop.cmi
+usr/lib/ocaml/3.06/topmain.cmi
+usr/lib/ocaml/3.06/unix.cma
+usr/lib/ocaml/3.06/unix.cmi
+usr/lib/ocaml/3.06/unixLabels.cmi
+usr/lib/ocaml/3.06/weak.cmi
diff -ruN ocaml-3.06.orig/debian/rules ocaml-3.06/debian/rules
--- ocaml-3.06.orig/debian/rules	2003-11-03 05:09:46.000000000 -0800
+++ ocaml-3.06/debian/rules	2003-11-03 05:04:47.000000000 -0800
@@ -115,6 +115,10 @@
 			--sourcedir=debian/ocaml;			\
 	fi
 
+	# The interpreter files
+	dh_movefiles -pocaml-interp					\
+			--sourcedir=debian/ocaml;			\
+
 	# And finally the ocaml-source package.
 	for i in `cat debian/ocaml-source.files`; do			\
 		install -m 644 -D $$i					\

Reply to: