4) Starting from ocaml 3.05, ocaml now puts all dll.so files into a common
stublibs directory, so the ocaml-ldconf tool for handling the ld.conf
file is not needed anymore, but we will still keep it aroung until all
- libraries are ported. ocaml-ldconf is now declared deprecated, and will
- be removed in the near future, probably at the time of the ocaml 3.07
- release, and outputs a warning in this sense when a package still using
- it get installed.
+ libraries are ported. As of ocam l3.08, ocaml-ldconf is now deprecated
+ and not available anymore.
Notice that user installed dll.so files should go into
/usr/local/lib/ocaml/<ocaml_version>/stublibs which is searched before
/usr/lib/ocaml/<ocaml_version>/stublibs.
- The older method of using ocaml-ldconf is obsolet now.
-- Mike Furr <mfurr@debian.org>, Thu Jun 24 14:23:14 2004
It was downloaded from
- ftp://ftp.inria.fr:/INRIA/cristal/caml-light/ocaml-3.07
+ ftp://ftp.inria.fr:/INRIA/cristal/caml-light/ocaml-3.08
Upstream Authors: Xavier Leroy, Jerome Vouillon and Damien Doligez
Upstream Author for the camlp4 part: Daniel de Rauglaudre
-/usr/local/lib/ocaml/3.07/stublibs
-/usr/lib/ocaml/3.07/stublibs
+/usr/local/lib/ocaml/3.08/stublibs
+/usr/lib/ocaml/3.08/stublibs
usr/bin
usr/share/man/man1
-usr/lib/ocaml/3.07
-usr/lib/ocaml/3.07/stublibs
+usr/lib/ocaml/3.08
+usr/lib/ocaml/3.08/stublibs
usr/share/lintian/overrides
usr/bin/ocamlrun
usr/share/man/man1/ocamlrun.1
-usr/lib/ocaml/3.07/stublibs/dllunix.so
-usr/lib/ocaml/3.07/stublibs/dllstr.so
-usr/lib/ocaml/3.07/stublibs/dllbigarray.so
-usr/lib/ocaml/3.07/stublibs/dllthreads.so
-usr/lib/ocaml/3.07/stublibs/dllvmthreads.so
-usr/lib/ocaml/3.07/stublibs/dllmldbm.so
-usr/lib/ocaml/3.07/ld.conf
+usr/lib/ocaml/3.08/stublibs/dllunix.so
+usr/lib/ocaml/3.08/stublibs/dllstr.so
+usr/lib/ocaml/3.08/stublibs/dllbigarray.so
+usr/lib/ocaml/3.08/stublibs/dllthreads.so
+usr/lib/ocaml/3.08/stublibs/dllvmthreads.so
+usr/lib/ocaml/3.08/stublibs/dllmldbm.so
+usr/lib/ocaml/3.08/stublibs/dllnums.so
+usr/lib/ocaml/3.08/ld.conf
#!/bin/sh
-mkdir -p /usr/local/lib/ocaml/3.07/stublibs || true
+mkdir -p /usr/local/lib/ocaml/3.08/stublibs || true
for i in /usr/lib/ocaml/3.06 /etc/ocaml /var/lib/ocaml; do \
if [ -e $i/ld.conf ]; then \
-usr/lib/ocaml/3.07/stublibs
+usr/lib/ocaml/3.08/stublibs
-usr/lib/ocaml/3.07/stublibs/dllgraphics.so
-usr/lib/ocaml/3.07/stublibs/dlllabltk.so
-usr/lib/ocaml/3.07/stublibs/dlltkanim.so
+usr/lib/ocaml/3.08/stublibs/dllgraphics.so
+usr/lib/ocaml/3.08/stublibs/dlllabltk.so
+usr/lib/ocaml/3.08/stublibs/dlltkanim.so
stublibs directory, so the ocaml-ldconf tool for handling the ld.conf
file is not needed anymore, but we will still keep it aroung until all
libraries are ported. ocaml-ldconf is now declared deprecated, and will
- be removed in the near future, probably at the time of the ocaml 3.07
+ be removed in the near future, probably at the time of the ocaml 3.08
release, and outputs a warning in this sense when a package still using
it get installed.
Notice that user installed dll.so files should go into
It was downloaded from
- ftp://ftp.inria.fr:/INRIA/cristal/caml-light/ocaml-3.07
+ ftp://ftp.inria.fr:/INRIA/cristal/caml-light/ocaml-3.08
Upstream Authors: Xavier Leroy, Jerome Vouillon and Damien Doligez
Upstream Author for the camlp4 part: Daniel de Rauglaudre
-usr/lib/ocaml/3.07/compiler-libs
\ No newline at end of file
+usr/lib/ocaml/3.08/compiler-libs
usr/bin
usr/share/man/man1
-usr/lib/ocaml/3.07
+usr/lib/ocaml/3.08
usr/share/man/man1/ocaml.1
usr/bin/ocaml
-usr/lib/ocaml/3.07/stdlib.cma
-usr/lib/ocaml/3.07/arg.cmi
-usr/lib/ocaml/3.07/array.cmi
-usr/lib/ocaml/3.07/arrayLabels.cmi
-usr/lib/ocaml/3.07/buffer.cmi
-usr/lib/ocaml/3.07/callback.cmi
-usr/lib/ocaml/3.07/camlinternalOO.cmi
-usr/lib/ocaml/3.07/char.cmi
-usr/lib/ocaml/3.07/complex.cmi
-usr/lib/ocaml/3.07/digest.cmi
-usr/lib/ocaml/3.07/filename.cmi
-usr/lib/ocaml/3.07/format.cmi
-usr/lib/ocaml/3.07/gc.cmi
-usr/lib/ocaml/3.07/genlex.cmi
-usr/lib/ocaml/3.07/hashtbl.cmi
-usr/lib/ocaml/3.07/int32.cmi
-usr/lib/ocaml/3.07/int64.cmi
-usr/lib/ocaml/3.07/lazy.cmi
-usr/lib/ocaml/3.07/lexing.cmi
-usr/lib/ocaml/3.07/list.cmi
-usr/lib/ocaml/3.07/listLabels.cmi
-usr/lib/ocaml/3.07/map.cmi
-usr/lib/ocaml/3.07/marshal.cmi
-usr/lib/ocaml/3.07/moreLabels.cmi
-usr/lib/ocaml/3.07/nativeint.cmi
-usr/lib/ocaml/3.07/obj.cmi
-usr/lib/ocaml/3.07/oo.cmi
-usr/lib/ocaml/3.07/parsing.cmi
-usr/lib/ocaml/3.07/pervasives.cmi
-usr/lib/ocaml/3.07/printexc.cmi
-usr/lib/ocaml/3.07/printf.cmi
-usr/lib/ocaml/3.07/queue.cmi
-usr/lib/ocaml/3.07/random.cmi
-usr/lib/ocaml/3.07/scanf.cmi
-usr/lib/ocaml/3.07/set.cmi
-usr/lib/ocaml/3.07/sort.cmi
-usr/lib/ocaml/3.07/stack.cmi
-usr/lib/ocaml/3.07/stdLabels.cmi
-usr/lib/ocaml/3.07/std_exit.cmi
-usr/lib/ocaml/3.07/stream.cmi
-usr/lib/ocaml/3.07/string.cmi
-usr/lib/ocaml/3.07/stringLabels.cmi
-usr/lib/ocaml/3.07/sys.cmi
-usr/lib/ocaml/3.07/weak.cmi
-usr/lib/ocaml/3.07/toplevellib.cma
-usr/lib/ocaml/3.07/toploop.cmi
-usr/lib/ocaml/3.07/topdirs.cmi
-usr/lib/ocaml/3.07/topmain.cmi
-usr/lib/ocaml/3.07/unix.cma
-usr/lib/ocaml/3.07/unix.cmi
-usr/lib/ocaml/3.07/unixLabels.cmi
-usr/lib/ocaml/3.07/str.cma
-usr/lib/ocaml/3.07/str.cmi
-usr/lib/ocaml/3.07/dynlink.cmi
-usr/lib/ocaml/3.07/dynlink.cma
-usr/lib/ocaml/3.07/bigarray.cmi
-usr/lib/ocaml/3.07/bigarray.cma
+usr/lib/ocaml/3.08/stdlib.cma
+usr/lib/ocaml/3.08/arg.cmi
+usr/lib/ocaml/3.08/array.cmi
+usr/lib/ocaml/3.08/arrayLabels.cmi
+usr/lib/ocaml/3.08/buffer.cmi
+usr/lib/ocaml/3.08/callback.cmi
+usr/lib/ocaml/3.08/camlinternalOO.cmi
+usr/lib/ocaml/3.08/char.cmi
+usr/lib/ocaml/3.08/complex.cmi
+usr/lib/ocaml/3.08/digest.cmi
+usr/lib/ocaml/3.08/filename.cmi
+usr/lib/ocaml/3.08/format.cmi
+usr/lib/ocaml/3.08/gc.cmi
+usr/lib/ocaml/3.08/genlex.cmi
+usr/lib/ocaml/3.08/hashtbl.cmi
+usr/lib/ocaml/3.08/int32.cmi
+usr/lib/ocaml/3.08/int64.cmi
+usr/lib/ocaml/3.08/lazy.cmi
+usr/lib/ocaml/3.08/lexing.cmi
+usr/lib/ocaml/3.08/list.cmi
+usr/lib/ocaml/3.08/listLabels.cmi
+usr/lib/ocaml/3.08/map.cmi
+usr/lib/ocaml/3.08/marshal.cmi
+usr/lib/ocaml/3.08/moreLabels.cmi
+usr/lib/ocaml/3.08/nativeint.cmi
+usr/lib/ocaml/3.08/obj.cmi
+usr/lib/ocaml/3.08/oo.cmi
+usr/lib/ocaml/3.08/parsing.cmi
+usr/lib/ocaml/3.08/pervasives.cmi
+usr/lib/ocaml/3.08/printexc.cmi
+usr/lib/ocaml/3.08/printf.cmi
+usr/lib/ocaml/3.08/queue.cmi
+usr/lib/ocaml/3.08/random.cmi
+usr/lib/ocaml/3.08/scanf.cmi
+usr/lib/ocaml/3.08/set.cmi
+usr/lib/ocaml/3.08/sort.cmi
+usr/lib/ocaml/3.08/stack.cmi
+usr/lib/ocaml/3.08/stdLabels.cmi
+usr/lib/ocaml/3.08/std_exit.cmi
+usr/lib/ocaml/3.08/stream.cmi
+usr/lib/ocaml/3.08/string.cmi
+usr/lib/ocaml/3.08/stringLabels.cmi
+usr/lib/ocaml/3.08/sys.cmi
+usr/lib/ocaml/3.08/weak.cmi
+usr/lib/ocaml/3.08/toplevellib.cma
+usr/lib/ocaml/3.08/toploop.cmi
+usr/lib/ocaml/3.08/topdirs.cmi
+usr/lib/ocaml/3.08/topmain.cmi
+usr/lib/ocaml/3.08/unix.cma
+usr/lib/ocaml/3.08/unix.cmi
+usr/lib/ocaml/3.08/unixLabels.cmi
+usr/lib/ocaml/3.08/str.cma
+usr/lib/ocaml/3.08/str.cmi
+usr/lib/ocaml/3.08/dynlink.cmi
+usr/lib/ocaml/3.08/dynlink.cma
+usr/lib/ocaml/3.08/bigarray.cmi
+usr/lib/ocaml/3.08/bigarray.cma
+usr/lib/ocaml/3.08/nums.cma
+usr/lib/ocaml/3.08/big_int.cmi
+usr/lib/ocaml/3.08/nat.cmi
+usr/lib/ocaml/3.08/num.cmi
+usr/lib/ocaml/3.08/ratio.cmi
+usr/lib/ocaml/3.08/arith_status.cmi
-ocaml-native-compilers: binary-without-manpage camlp4o.opt
-ocaml-native-compilers: binary-without-manpage camlp4r.opt
-ocaml-native-compilers: binary-without-manpage ocamlc.opt
-ocaml-native-compilers: binary-without-manpage ocamldoc.opt
-ocaml-native-compilers: binary-without-manpage ocamllex.opt
-ocaml-native-compilers: binary-without-manpage ocamlopt.opt
usr/bin
-usr/lib/ocaml/3.07
-usr/lib/ocaml/3.07/config
-usr/include/ocaml/3.07
+usr/lib/ocaml/3.08
+usr/lib/ocaml/3.08/config
+usr/include/ocaml/3.08
usr/share/man/man1
usr/share/man/man3
usr/share/emacs/site-lisp/ocaml
-ocaml-nox: binary-without-manpage ocaml-noxbrowser
-ocaml-nox: binary-without-manpage ocaml-noxdoc
-ocaml-nox: binary-without-manpage ocaml-noxdoc.opt
-ocaml-nox: binary-without-manpage ocaml-noxmklib
-ocaml-nox: binary-without-manpage ocaml-noxtags
-ocaml-nox: binary-without-manpage camlp4sch
-ocaml-nox: binary-without-manpage ocaml-noxdep.opt
-ocaml-nox: executable-not-elf-or-script ./usr/bin/ocaml-noxtags
-ocaml-nox: menu-icon-has-bad-colors /usr/X11R6/include/X11/pixmaps/JoeCaml.xpm: lime
-ocaml-nox: postinst-does-not-load-confmodule
-ocaml-nox: script-not-executable ./usr/lib/ocaml-nox/3.07/camlheader
#!/bin/sh -e
-ln -sf /usr/lib/ocaml/3.07/caml /usr/include/caml
+ln -sf /usr/lib/ocaml/3.08/caml /usr/include/caml
ln -sf ../ocaml-base-nox/Changes.gz /usr/share/doc/ocaml-nox
ln -sf ../ocaml-base-nox/README.gz /usr/share/doc/ocaml-nox
-usr/src/ocaml/ocaml-3.07
+usr/src/ocaml/ocaml-3.08
usr/share/lintian/overrides
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/configure
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/boot/ocamlc
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/boot/ocamllex
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/etc/mkcamlp4.sh.tpl
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/compile/compile.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/config/configure_batch
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/meta/mk_q_MLast.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/ocaml_src/tools/camlp4_comm.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/ocaml_src/tools/extract_crc.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/ocaml_src/tools/ocamlc.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/ocaml_src/tools/ocamlopt.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/tools/apply.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/tools/camlp4_comm.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/tools/conv.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/tools/extract_crc.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/tools/ocamlc.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/camlp4/tools/ocamlopt.sh
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/config/auto-aux/hasgot
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/config/auto-aux/runtest
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/config/auto-aux/searchpath
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/config/auto-aux/sharpbang
-ocaml-source: unusual-interpreter ./usr/src/ocaml/ocaml-3.06/config/auto-aux/sharpbang #!/bin/cat
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/config/auto-aux/solaris-ld
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/config/auto-aux/trycompile
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/config/gnu/config.guess
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/config/gnu/config.sub
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/driver/ocamlcomp.sh.in
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/ocamldoc/runocamldoc
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/otherlibs/labltk/examples_labltk/hello.tcl
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/otherlibs/str/regex-0.12/configure
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/tools/cleanup-header
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/tools/ocamlmktop.tpl
-ocaml-source: script-not-executable ./usr/src/ocaml/ocaml-3.06/tools/ocamlsize
usr/bin
-usr/lib/ocaml/3.07
+usr/lib/ocaml/3.08
usr/bin/labltk
-usr/lib/ocaml/3.07/libgraphics.a
-usr/lib/ocaml/3.07/graphics.cma
-usr/lib/ocaml/3.07/graphics.cmi
-usr/lib/ocaml/3.07/graphicsX11.cmi
-usr/lib/ocaml/3.07/graphics.mli
-usr/lib/ocaml/3.07/graphicsX11.mli
-usr/lib/ocaml/3.07/labltk
-usr/lib/ocaml/3.07/graphics.cmx
-usr/lib/ocaml/3.07/graphics.cmxa
-usr/lib/ocaml/3.07/graphics.a
\ No newline at end of file
+usr/lib/ocaml/3.08/libgraphics.a
+usr/lib/ocaml/3.08/graphics.cma
+usr/lib/ocaml/3.08/graphics.cmi
+usr/lib/ocaml/3.08/graphicsX11.cmi
+usr/lib/ocaml/3.08/graphics.mli
+usr/lib/ocaml/3.08/graphicsX11.mli
+usr/lib/ocaml/3.08/labltk
+usr/lib/ocaml/3.08/graphics.cmx
+usr/lib/ocaml/3.08/graphics.cmxa
+usr/lib/ocaml/3.08/graphics.a
-ocaml: binary-without-manpage labltk
-ocaml: cvsignore-file-in-package usr/share/doc/ocaml/examples_labltk/.cvsignore
-ocaml: binary-or-shlib-defines-rpath ./usr/lib/ocaml/3.06/stublibs/dllgraphics.so /usr/X11R6/lib
-ocaml: binary-or-shlib-defines-rpath ./usr/lib/ocaml/3.06/stublibs/dlllabltk.so /usr/lib:/usr/X11R6/lib
-ocaml: binary-or-shlib-defines-rpath ./usr/lib/ocaml/3.06/stublibs/dlltkanim.so /usr/lib:/usr/X11R6/lib
-ocaml: postinst-does-not-load-confmodule
-
-Policy for the packaging of ocaml libraries and programs (version 0.4)
+Policy for the packaging of ocaml libraries and programs (version 0.5)
----------------------------------------------------------------------
1) User installed libraries.
Debian package installed ocaml related stuff install per default under
- /usr/lib/ocaml/<ocaml_version> (that is /usr/lib/ocaml/3.06 for
- ocaml 3.06).
+ /usr/lib/ocaml/<ocaml_version> (that is /usr/lib/ocaml/3.08 for
+ ocaml 3.08).
User installed stuff cannot by policy go under this directory, since the
/usr tree is for dpkg handled packages alone. As thus, user installed
stuff should go into /usr/local/lib/ocaml/<ocaml_version> (that is
- /usr/local/lib/ocaml/3.06 for ocaml 3.06).
+ /usr/local/lib/ocaml/3.08 for ocaml 3.08).
Findlib knows about this, and will install user installed stuff into the
right place. But this does not resolve the problem of user stuff which
Starting from ocaml 3.05, ocaml now puts all dll.so files into a common
stublibs directory, so the ocaml-ldconf tool for handling the ld.conf
file is not needed anymore, but we will still keep it aroung until all
- libraries are ported. ocaml-ldconf is now declared deprecated, and will
- be removed in the near future, probably at the time of the ocaml 3.07
- release, and outputs a warning in this sense when a package still using
- it get installed.
+ libraries are ported. Since ocaml 3.08, ocaml-ldconf is now deprecated
+ and removed.
Notice that user installed dll.so files should go into
/usr/local/lib/ocaml/<ocaml_version>/stublibs which is searched before
/usr/lib/ocaml/<ocaml_version>/stublibs.
- Ocaml-ldconf handled the ld.conf file in a different way than what ocaml
- does. There are three involved files, /var/lib/ocaml/ld.conf which is
- handled by dpkg and its dh_ocamlld generated postinst/prerm script,
- /etc/ocaml/ld.conf which the sysadmin can adapt to its needs, and finally
- /usr/lib/ocaml/ld.conf which is generated from the previous two by
- ocaml-ldconf. Since many libraries don't know about this,
- /usr/lib/ocaml/ld.conf will be made read only (except for the
- ocaml-ldconf tool).
-
- Ocaml library packager should install the stub libraries (dll.so) into
- /usr/lib/ocaml/stublibs, so no further meddling with the ld.conf file is
- needed. If (for whatever unrecommended reasons) a separate stub library
- is wanted, then a call to dh_ocamlld should be added in the debian/rules
- file as follows :
-
- dh_ocamlld -p<package> <dir1> <dir2> ...
-
3) Findlib and META files
Findlib [2] provides a tool (namely "ocamlfind") to handle OCaml libraries
Meta information regarding a library are contained in files (usually one
for each library), named "META" files, contained in the library directory.
For example: the META file for the lablgtk [3] library is named "META" and
- has path /usr/lib/ocaml/3.06/lablgtk/META, where "/usr/lib/ocaml/3.06" is
+ has path /usr/lib/ocaml/3.08/lablgtk/META, where "/usr/lib/ocaml/3.08" is
the main OCaml installation directory and "lablgtk" is the lablgtk library
directory.
The ocaml libraries should always depend on the exact version of ocaml
they were build with. Since ocaml 3.06-13, the ocaml and ocaml-base
- package now provide virtual packages called ocaml-3.06-1 and
- ocaml-base-3.06-1 respectively.
+ package now provide virtual packages called ocaml-3.08 and
+ ocaml-base-3.081 respectively.
- Ocaml libraries should build depend on ocaml-3.06-1 :
+ Ocaml libraries should build depend on ocaml-3.08 :
- Build-Depends: ocaml-3.06-1
+ Build-Depends: ocaml-3.08
Ocaml library runtime packages (the libxxx-ocaml)
- should depend on ocaml-base-3.06-1 :
+ should depend on ocaml-base-3.08 :
- Depends: ocaml-base-3.06-1
+ Depends: ocaml-base-3.08
And Ocaml library developpment packages (the libxxx-ocaml-dev)
- should depend on ocaml-3.06-1 :
+ should depend on ocaml-3.08 :
- Depends: ocaml-3.06-1
+ Depends: ocaml-3.08
- The old way of doing this (epends: ocaml (>= 3.06), ocaml (<< 3.07)) is
+ The old way of doing this (Depends: ocaml (>= 3.08), ocaml (<< 3.09)) is
deprecated
It is necessary to do this to future proof library packages, so they will
install -m 644 utils/*.mli utils/*.cmi utils/*.cmo utils/*.cmx utils/*.o \
typing/*.mli typing/*.cmi typing/*.cmo typing/*.cmx typing/*.o \
parsing/*.mli parsing/*.cmi parsing/*.cmo parsing/*.cmx parsing/*.o \
- $(CURDIR)/debian/ocaml-compiler-libs/usr/lib/ocaml/3.07/compiler-libs
+ $(CURDIR)/debian/ocaml-compiler-libs/usr/lib/ocaml/3.08/compiler-libs
dh_install -a