Hello, ... I have just uploaded ocaml 3.07beta2 to :
deb http://people.debian.org/~luther/ocaml . They are apt-gettable, and more or less lintian clean : ... ocaml-source stuff skipped ... W: ocaml-base: binary-or-shlib-defines-rpath ./usr/lib/ocaml/3.07/stublibs/dllgraphics.so /usr/X11R6/lib W: ocaml-base: binary-or-shlib-defines-rpath ./usr/lib/ocaml/3.07/stublibs/dlllabltk.so /usr/lib:/usr/X11R6/lib W: ocaml-base: binary-or-shlib-defines-rpath ./usr/lib/ocaml/3.07/stublibs/dlltkanim.so /usr/lib:/usr/X11R6/lib W: ocaml-base: missing-depends-line E: ocaml: binary-without-manpage camlp4sch E: ocaml: binary-without-manpage ocamldep.opt W: ocaml: script-not-executable ./usr/lib/ocaml/3.07/camlheader W: ocaml source: newer-standards-version 3.6.0 W: ocaml source: outdated-autotools-helper-file config/gnu/config.guess 2001-06-25 W: ocaml source: outdated-autotools-helper-file config/gnu/config.sub 2001-06-08 That said, they don't install cleanly because of emacs stuff : While compiling toplevel forms in file /usr/share/emacs20/site-lisp/ocaml/caml-xemacs.el: !! File error (("Cannot open load file" "overlay")) :((( Could an emacs guru have a look at this one ? The good news is that many of our patches where integrated upstream, the only missing stuff is : ======= versioned_libdir.dpatch ================ diff -ur ocaml-3.07beta2.orig/camlp4/config/configure_batch ocaml-3.07beta2/camlp4/config/configure_batch --- ocaml-3.07beta2.orig/camlp4/config/configure_batch 2002-07-23 16:11:49.000000000 +0200 +++ ocaml-3.07beta2/camlp4/config/configure_batch 2003-08-26 14:41:45.000000000 +0200 @@ -92,13 +92,13 @@ *) echo "BINDIR=$bindir" >> Makefile.cnf;; esac case "$libdir" in - "") echo 'LIBDIR=$(PREFIX)/lib/camlp4' >> Makefile.cnf - libdir="$prefix/lib/camlp4";; + "") echo 'LIBDIR=$(PREFIX)/lib/ocaml/3.07/camlp4' >> Makefile.cnf + libdir="$prefix/lib/ocaml/3.07/camlp4";; *) echo "LIBDIR=$libdir" >> Makefile.cnf;; esac case "$mandir" in - "") echo 'MANDIR=$(PREFIX)/man/man1' >> Makefile.cnf - mandir="$prefix/man/man1";; + "") echo 'MANDIR=$(PREFIX)/share/man/man1' >> Makefile.cnf + mandir="$prefix/share/man/man1";; *) echo "MANDIR=$mandir" >> Makefile.cnf;; esac diff -ur ocaml-3.07beta2.orig/configure ocaml-3.07beta2/configure --- ocaml-3.07beta2.orig/configure 2003-08-20 17:10:58.000000000 +0200 +++ ocaml-3.07beta2/configure 2003-08-26 14:41:45.000000000 +0200 @@ -146,8 +146,8 @@ *) echo "BINDIR=$bindir" >> Makefile;; esac case "$libdir" in - "") echo 'LIBDIR=$(PREFIX)/lib/ocaml' >> Makefile - libdir="$prefix/lib/ocaml";; + "") echo 'LIBDIR=$(PREFIX)/lib/ocaml/3.07' >> Makefile + libdir="$prefix/lib/ocaml/3.07";; *) echo "LIBDIR=$libdir" >> Makefile;; esac echo 'STUBLIBDIR=$(LIBDIR)/stublibs' >> Makefile ======= clean.dpatch ================ diff -ur ocaml-3.07beta2.orig/camlp4/camlp4/Makefile ocaml-3.07beta2/camlp4/camlp4/Makefile --- ocaml-3.07beta2.orig/camlp4/camlp4/Makefile 2003-08-21 15:50:21.000000000 +0200 +++ ocaml-3.07beta2/camlp4/camlp4/Makefile 2003-08-26 14:45:32.000000000 +0200 @@ -39,6 +39,7 @@ clean:: rm -f *.cm* *.pp[io] *.o *.a *.bak .*.bak *.out *.opt rm -f $(CAMLP4) + rm -f camlp4.a depend: cp .depend .depend.bak diff -ur ocaml-3.07beta2.orig/otherlibs/labltk/Makefile ocaml-3.07beta2/otherlibs/labltk/Makefile --- ocaml-3.07beta2.orig/otherlibs/labltk/Makefile 2002-05-16 17:23:05.000000000 +0200 +++ ocaml-3.07beta2/otherlibs/labltk/Makefile 2003-08-26 14:45:32.000000000 +0200 @@ -3,7 +3,7 @@ SUBDIRS=compiler support lib jpf frx tkanim examples_labltk \ camltk labltk examples_camltk browser -all: +all: backup cd support; $(MAKE) cd compiler; $(MAKE) cd labltk; $(MAKE) -f Makefile.gen @@ -16,7 +16,7 @@ cd tkanim; $(MAKE) cd browser; $(MAKE) -allopt: +allopt: backup cd support; $(MAKE) opt cd labltk; $(MAKE) -f Makefile.gen cd labltk; $(MAKE) opt @@ -71,5 +71,13 @@ for d in $(SUBDIRS); do \ cd $$d; $(MAKE) -f Makefile clean; cd ..; \ done + -mv README.labltk README + -mv labltk/.depend.original labltk/.depend + -mv camltk/.depend.original camltk/.depend + +backup: + -mv README README.labltk + -cp labltk/.depend labltk/.depend.original + -cp camltk/.depend camltk/.depend.original depend: diff -ur ocaml-3.07beta2.orig/otherlibs/systhreads/Makefile ocaml-3.07beta2/otherlibs/systhreads/Makefile --- ocaml-3.07beta2.orig/otherlibs/systhreads/Makefile 2003-08-21 15:52:07.000000000 +0200 +++ ocaml-3.07beta2/otherlibs/systhreads/Makefile 2003-08-26 14:45:32.000000000 +0200 @@ -68,6 +68,7 @@ clean: partialclean rm -f *.o *.a *.so rm -f $(GENFILES) + rm -f dllthreads.so install: if test -f dllthreads.so; then cp dllthreads.so $(STUBLIBDIR)/dllthreads.so; fi ======= objinfo.dpatch ================ #! /bin/sh -e ## 16_objinfo.dpatch by <[EMAIL PROTECTED]> ## ## All lines beginning with `## DP:' are a description of the patch. ## DP: Makefiles, configure scripts and other build stuff adapted for ## DP: debian package creation if [ $# -ne 1 ]; then echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 exit 1 fi case "$1" in -patch) patch -f --no-backup-if-mismatch -p1 < $0;; -unpatch) patch -f --no-backup-if-mismatch -R -p1 < $0;; *) echo "`basename $0`: script expects -patch|-unpatch as argument" >&2 exit 1;; esac exit 0 @DPATCH@ diff -ur ocaml-3.07beta1.orig/tools/Makefile ocaml-3.07beta1/tools/Makefile --- ocaml-3.07beta1.orig/tools/Makefile 2003-04-02 03:17:58.000000000 +0200 +++ ocaml-3.07beta1/tools/Makefile 2003-08-06 13:15:53.000000000 +0200 @@ -23,7 +23,8 @@ COMPFLAGS= -warn-error A $(INCLUDES) LINKFLAGS=$(INCLUDES) -all: ocamldep ocamlprof ocamlcp ocamlmktop ocamlmklib scrapelabels addlabels +all: ocamldep ocamlprof ocamlcp ocamlmktop ocamlmklib scrapelabels addlabels \ + objinfo opt.opt: ocamldep.opt --- ocaml-3.07-3.06.99.2003.07.05.orig/man/ocamlc.m +++ ocaml-3.07-3.06.99.2003.07.05/man/ocamlc.m @@ -241,7 +241,8 @@ .SH SEE ALSO .BR ocaml (1), -.BR ocamlrun (1). +.BR ocamlrun (1), +.BR objinfo (1). .br .I The Objective Caml user's manual, chapter "Batch compilation". --- ocaml-3.07-3.06.99.2003.07.05.orig/man/ocamlopt.m +++ ocaml-3.07-3.06.99.2003.07.05/man/ocamlopt.m @@ -224,7 +224,8 @@ array or string outside of its bounds. .SH SEE ALSO -.BR ocamlc (1). +.BR ocamlc (1), +.BR objinfo (1). .br .I The Objective Caml user's manual, chapter "Native-code compilation". --- ocaml-3.07-3.06.99.2003.07.05.orig/man/objinfo.m +++ ocaml-3.07-3.06.99.2003.07.05/man/objinfo.m @@ -0,0 +1,40 @@ +.TH OCAML-SOAP 1 "October 26, 2002" +.SH NAME +objinfo \- dump an OCaml compilation unit description +.SH SYNOPSIS +.B objinfo +.RI file\ ... +.SH DESCRIPTION +Dump information contained in OCaml compilation units. +Currently it works on .cmi, .cmo and .cma files. +.sp 2 +.B objinfo +is able to show information regarding: +.br +.IP +module names +.sp 2 +unit name +.sp 2 +declared primitives +.sp 2 +imported interfaces +.sp 2 +md5sums of imported interfaces +.sp 2 +forced custom mode +.sp 2 +extra C libraries needed +.sp 2 +extra C flags needed +.sp 2 +use of unsafe features +.PP +depending on its invocation on .cmi, .cmo or .cma arguments. +.SH SEE ALSO +.BR ocamlc (1), +.BR ocamlopt (1) +.br +.SH AUTHOR +This manual page was written by Stefano Zacchiroli <[EMAIL PROTECTED]>, +for the Debian GNU/Linux system (but may be used by others). ============================================================================ The first one is too debian specific as is the middle chunk of the second patch. Both other chunks of the second patch could have been integrated, and i will ask Xavier why he let them out. For the objinfo patch, two remarks, Xavier told me it would be good to ship it, but he likes to do more improvement in the post 3.07 timeframe, and it should probably be renamed ocamlobjinfo. Stefano, if you feel like doing this, you could already modify the objinfo patch so that it is called ocamlobjinfo. Ok, that is for the ocaml 3.07beta2 packages, now a bit of future planning. AS you now know, the plan calls for releasing ocaml 3.07 as part of sarge. I think this is a reasonable goal and we have proven that we can handle it. Furthermore, i will just ship a plain ocaml 3.07 package, and not go forward with the parallel installation plan for now. I have broached the subject with Xavier though, and there needs to be discussion about this both in the ocaml team and on the ocaml mailing list, but it will definitively not be something to be used in the ocaml 3.07/debian sarge timeframe. An Ocaml 3.07.99 cvs snapshot package in experimental will probably be the right place for experimenting such things in the post sarge timeframe. Are we all agreed on this rough plan ? If yes, please everyone, could you either test your packages with the ocaml-3.07-beta2 (feel free to upload them also to my repository or something), and if there are problems with it, or if you are awaiting a new upstream release for ocaml 3.07 (as is often the case) try to get some kind of schedule out of upstream. Possibly even packaging cvs snapshots or something such to my private repository in the meantime, and i would even encourage you to upload this to unstable as soon as ocaml 3.07 is released and in unstable, since this is the code we are going to ship with sarge. 3.06 will be available in testing for some time, but is considered dead for sarge release purpose. If there is code currently in unstable that fix bugs, but is delayed to enter testing because of the glibc upgrade or something such, please consider uploading it to testing-proposed-updates instead. I did so for the ocaml 3.06-21, which i backported to 3.06-17.sarge1. I uploaded a ia64 build i generated on one of the debian sarge dchroots, and altough it is not autobuilt right now, it will once aj enables the testing-proposed-updates autobuilders again. Ask aj for it first though, and tell him it is part of the plan to make place for ocaml 3.07 in unstable. Friendly, Sven Luther

