--- ocaml-3.10.0.orig/debian/ocaml-base.dirs.in +++ ocaml-3.10.0/debian/ocaml-base.dirs.in @@ -0,0 +1,2 @@ +usr/lib/ocaml/#OcamlABI#/stublibs +usr/share/doc/ocaml-base --- ocaml-3.10.0.orig/debian/rules +++ ocaml-3.10.0/debian/rules @@ -0,0 +1,309 @@ +#!/usr/bin/make -f +include /usr/share/dpatch/dpatch.make + +PACKAGE = ocaml +OCAMLMAJOR = 3.10 +OCAMLMINOR = 0 +OCAMLABI = $(OCAMLMAJOR).$(OCAMLMINOR) +STDLIBDIR = /usr/lib/ocaml/$(OCAMLABI) +MD5SUMSDIR = /var/lib/ocaml/md5sums +INSTDIR = $(CURDIR)/debian/ocaml-nox/usr + +NATIVE_ARCHS = $(shell cat debian/native-archs) +DISTDIR = $(PACKAGE)-$(OCAMLMAJOR).$(OCAMLMINOR) +SRCTARBALL = $(PACKAGE)-source-$(OCAMLMAJOR).$(OCAMLMINOR).tar.bz2 + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# This has to be exported to make some magic below work. +export DH_OPTIONS + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + INSTALL_PROGRAM += -s +endif + +abi-sed: + for t in `find debian/ -name \*.in | grep -v debian/control.in`; do \ + sed -e 's%#OcamlABI#%$(OCAMLABI)%' -e 's%#OcamlMAJOR#%$(OCAMLMAJOR)%' $$t >$${t%.in}; \ + done + touch $@ + +abi-sed-clean: + rm -f abi-sed + for t in `find debian/ -name \*.in | grep -v debian/control.in`; do \ + rm -f $${t%.in}; \ + done + +# Generate ocaml-native-compilers' Architecture field. +# Should never be called automatically. +debian/control: + sed -e 's/#OcamlNativeArchs#/$(NATIVE_ARCHS)/g' debian/control.in > $@ + +pre-config: debian/$(SRCTARBALL) + touch $@ +debian/$(SRCTARBALL): + ln -fs . $(DISTDIR) # beware of the symlink recursion! + tar --anchored -chjf $@ \ + --exclude=$(DISTDIR)/$(DISTDIR) \ + --exclude-from=debian/ocaml-source.exclude \ + $(DISTDIR)/ + +config-stamp: pre-config patch-stamp abi-sed + dh_testdir + ./configure --with-pthread -prefix /usr \ + -libdir /usr/lib/ocaml/$(OCAMLABI) \ + -mandir /usr/share/man \ + -tkdefs "-I/usr/include/tcl8.4" \ + -tklibs "-L/usr/lib -ltk8.4 -ltcl8.4" + sed -e "s%MANDIR=.*$$%MANDIR=\$$(PREFIX)/share/man%g" \ + -e "s%LIBDIR=.*$$%LIBDIR=\$$(PREFIX)/lib/ocaml/$(OCAMLABI)%g" \ + -e "s%STUBLIBDIR=.*$$%STUBLIBDIR=\$$(PREFIX)/lib/ocaml/$(OCAMLABI)/stublibs%g" \ + config/Makefile > config/Makefile.debian + mv config/Makefile.debian config/Makefile + if test -z "`grep "OTHERLIBRARIES.*labltk" config/Makefile`"; then\ + echo "Error, labltk library was not built"; \ + echo "Check your tcl/tk development packages"; \ + echo "Aborting."; \ + exit 1; \ + fi + (cd debian/ocaml-md5sums && chmod +x configure && ./configure $(MD5SUMSDIR)) + touch config-stamp + + +patch-stamp: abi-sed +# Architecture +build: build-arch build-indep + +build-arch: build-arch-stamp +build-arch-stamp: config-stamp + + # Add here commands to compile the arch part of the package. + if test ! -d boot.debian; then \ + cp -xa boot boot.debian; \ + fi + $(MAKE) world + $(MAKE) bootstrap +ifneq ($(findstring $(DEB_BUILD_ARCH),$(NATIVE_ARCHS)),) + @echo "Building native compilers" + $(MAKE) opt opt.opt + touch opt-built-stamp +endif + if [ -x ./ocamlopt ]; then \ + $(MAKE) -C debian/ocaml-md5sums opt; \ + else \ + $(MAKE) -C debian/ocaml-md5sums all; \ + fi + $(MAKE) -C debian/dh-ocaml + $(MAKE) -C debian/policy + touch build-arch-stamp + +build-indep: build-indep-stamp config-stamp +build-indep-stamp: + # create ocaml source tarball + touch $@ + +clean: abi-sed unpatch + dh_testdir + dh_testroot + -$(RM) build-arch-stamp build-indep-stamp config-stamp abi-sed opt-built-stamp pre-config + + # Add here commands to clean up after the build process. + [ ! -f "$(CURDIR)/config/Makefile" ] || $(MAKE) clean + if test -d boot.debian; then \ + $(RM) -r boot; \ + mv boot.debian boot; \ + fi + [ ! -f "$(CURDIR)/config/Makefile" ] || $(MAKE) -C emacs clean + $(MAKE) -C debian/ocaml-md5sums clean + $(MAKE) -C debian/dh-ocaml clean + $(MAKE) -C debian/policy clean +ifneq "$(wildcard /usr/share/misc/config.sub)" "" + -cp -f /usr/share/misc/config.sub config/gnu/config.sub +endif +ifneq "$(wildcard /usr/share/misc/config.guess)" "" + -cp -f /usr/share/misc/config.guess config/gnu/config.guess +endif + # File not cleaned by upstream + -$(RM) _boot_log1 + -$(RM) _boot_log2 + -$(RM) _log + -$(RM) myocamlbuild_config.ml + -$(RM) ocaml-$(OCAMLABI) + + dh_clean debian/README.labltk camlp4/config/Makefile.cnf camlp4/config/Makefile config/m.h config/s.h config/Makefile emacs/ocamltags driver/ocamlcomp.sh + debian/rules abi-sed-clean + -$(RM) debian/$(SRCTARBALL) + +install: install-indep install-arch +install-indep: build-indep + dh_testdir + dh_testroot + dh_clean -k -i + dh_installdirs -i + + # Install Emacs files + $(MAKE) -C emacs EMACSDIR=$(CURDIR)/debian/ocaml-mode/usr/share/emacs/site-lisp/ocaml-mode \ + NOCOMPILE=true simple-install + if ! head -n 1 emacs/ocamltags.in | grep -q '^#!/bin/sh'; then \ + sed -i -e '1 i #!/bin/sh' emacs/ocamltags.in; \ + fi + $(MAKE) -C emacs SCRIPTDIR=$(CURDIR)/debian/ocaml-mode/usr/bin install-ocamltags + + dh_install -i + +install-arch: build-arch + dh_testdir + dh_testroot + dh_clean -k -a + dh_installdirs -a + + # Let's install ocaml first. + sed -e 's|PREFIX=\"/.*\"|PREFIX=\"$(INSTDIR)"|' < config/config.sh > config/config.debian.install.sh + $(MAKE) install PREFIX=$(INSTDIR) + + # Now move the graphics files over + if [ -e opt-built-stamp ]; then \ + dh_movefiles -pocaml \ + --sourcedir=debian/ocaml-nox \ + `cat debian/ocaml-nox.optfiles`; \ + else \ + dh_movefiles -pocaml \ + --sourcedir=debian/ocaml-nox; \ + fi + + # Move away camlp4 stuff + if [ -e opt-built-stamp ]; then \ + dh_movefiles --sourcedir=debian/ocaml-nox -pcamlp4-extra \ + `cat debian/camlp4-extra.optfiles` ; \ + dh_movefiles --sourcedir=debian/ocaml-nox -pcamlp4 \ + `cat debian/camlp4.optfiles` ; \ + else \ + dh_movefiles --sourcedir=debian/ocaml-nox -pcamlp4-extra ; \ + dh_movefiles --sourcedir=debian/ocaml-nox -pcamlp4 ; \ + fi + + # Then move the ocaml-base-nox package. + dh_movefiles --sourcedir=debian/ocaml-nox -pocaml-base-nox + + # And base's corresponding graphics stuff. + dh_movefiles --sourcedir=debian/ocaml-nox -pocaml-base + + # The ocaml-native-compilers, if available. + if [ -e opt-built-stamp ]; then \ + dh_movefiles -pocaml-native-compilers \ + --sourcedir=debian/ocaml-nox; \ + cp debian/ocamlfind/ocaml-native-compilers.conf \ + debian/ocaml-native-compilers/usr/share/ocaml-findlib/; \ + fi + + # The interpreter files + dh_movefiles --sourcedir=debian/ocaml-nox -pocaml-interp + + # Install ocaml-md5sums + $(MAKE) -C debian/ocaml-md5sums install DESTDIR=$(CURDIR)/debian/ocaml-base-nox/usr/bin + + # Compute core entries of the ocaml md5sums registry and install them + (cd debian/ocaml-md5sums && \ + chmod +x feeding.sh && \ + for pkg in ocaml-nox ocaml ocaml-compiler-libs; do \ + mkdir -p ../$$pkg$(MD5SUMSDIR); \ + ./feeding.sh $$pkg $(STDLIBDIR) $(OCAMLABI) ../$$pkg$(STDLIBDIR) > \ + ../$$pkg$(MD5SUMSDIR)/$$pkg.md5sums; \ + done) + + # Install dh_ocaml + $(MAKE) -C debian/dh-ocaml install DESTDIR=$(CURDIR)/debian/ocaml-nox + + # Remove .opt manpages from ocaml-nox + rm -f debian/ocaml-nox/usr/share/man/man1/*.opt.1 + + # Make some symbolic links + cd debian/ocaml/usr/share/doc/ocaml; \ + ln -sf ../ocaml-base-nox/Changes.gz .; \ + ln -sf ../ocaml-base-nox/README.gz .; \ + ln -sf ../ocaml-base-nox/README.Debian .; \ + ln -sf ../ocaml-base-nox/ocaml_packaging_policy.txt.gz .; \ + ln -sf ../ocaml-base-nox/ocaml_packaging_policy.html . + cd debian/ocaml-nox/usr/share/doc/ocaml-nox; \ + ln -sf ../ocaml-base-nox/Changes.gz .; \ + ln -sf ../ocaml-base-nox/README.gz .; \ + ln -sf ../ocaml-base-nox/README.Debian .; \ + ln -sf ../ocaml-base-nox/ocaml_packaging_policy.txt.gz .; \ + ln -sf ../ocaml-base-nox/ocaml_packaging_policy.html . + cd debian/ocaml-base/usr/share/doc/ocaml-base; \ + ln -sf ../ocaml-base-nox/Changes.gz .; \ + ln -sf ../ocaml-base-nox/README.gz .; \ + ln -sf ../ocaml-base-nox/README.Debian .; \ + ln -sf ../ocaml-base-nox/ocaml_packaging_policy.txt.gz .; \ + ln -sf ../ocaml-base-nox/ocaml_packaging_policy.html . + + dh_install -a + +# Must not depend on anything. This is to be called by +# binary-arch/binary-multi in another 'make' thread. +binary-common: + dh_testdir + dh_testroot + dh_installchangelogs Changes + dh_installdocs + -find debian/ocaml -type d -name CVS -exec rm -rf {} \; + -find debian/ocaml -type f -name .cvsignore -exec rm -rf {} \; + dh_installexamples + dh_installmenu + dh_installemacsen + dh_installman + dh_link + dh_strip + dh_compress + dh_fixperms + dh_makeshlibs + dh_installdeb + +# Build architecture independant packages using the common target. +binary-indep: install-indep + $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common + dh_gencontrol -i -- -VF:OCamlABI="$(OCAMLABI)" + dh_md5sums -i + dh_builddeb -i + +# Build architecture dependant packages using the common target. +binary-arch: install-arch + $(MAKE) -f debian/rules DH_OPTIONS=-s binary-common + dh_shlibdeps -s + if [ ! -e opt-built-stamp ]; then \ + dh_gencontrol -pocaml-nox -- \ + -VF:BestProvides=",ocaml-best-compilers" \ + -VF:OCamlABI="$(OCAMLABI)"; \ + else \ + dh_gencontrol -pocaml-nox -- \ + -VF:BestProvides="" \ + -VF:OCamlABI="$(OCAMLABI)"; \ + dh_gencontrol -pocaml-native-compilers -- \ + -VF:OCamlABI="$(OCAMLABI)"; \ + fi + dh_gencontrol -pocaml -- -VF:OCamlABI="$(OCAMLABI)" + dh_gencontrol -pocaml-base-nox -- -VF:OCamlABI="$(OCAMLABI)" + dh_gencontrol -pocaml-base -- -VF:OCamlABI="$(OCAMLABI)" + dh_gencontrol -pocaml-interp -- -VF:OCamlABI="$(OCAMLABI)" + dh_gencontrol -pocaml-compiler-libs -- -VF:OCamlABI="$(OCAMLABI)" + dh_gencontrol -pcamlp4 -- -VF:OCamlABI="$(OCAMLABI)" + dh_gencontrol -pcamlp4-extra -- -VF:OCamlABI="$(OCAMLABI)" + dh_md5sums -s + dh_builddeb -s + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install install-indep install-arch build-arch abi-sed-clean --- ocaml-3.10.0.orig/debian/compat +++ ocaml-3.10.0/debian/compat @@ -0,0 +1 @@ +5 --- ocaml-3.10.0.orig/debian/cdbs/ocaml-docbase-template.txt +++ ocaml-3.10.0/debian/cdbs/ocaml-docbase-template.txt @@ -0,0 +1,8 @@ +Document: @PACKAGE@-ocamldoc-api-reference +Title: @PACKAGE@ OCamldoc API Reference +Abstract: API reference manual for @PACKAGE@ (generated via OCamldoc) +Section: Applications/Programming + +Format: HTML +Index: /usr/share/doc/@PACKAGE@/html/api/index.html +Files: /usr/share/doc/@PACKAGE@/html/api/* --- ocaml-3.10.0.orig/debian/cdbs/ocaml-vars.mk +++ ocaml-3.10.0/debian/cdbs/ocaml-vars.mk @@ -0,0 +1,110 @@ +# +# Description: Useful CDBS variables for OCaml related packages +# +# Copyright © 2006-2007 Stefano Zacchiroli +# +# This program is free software; you can redistribute it and/or modify it under +# the terms of the GNU General Public License as published by the Free Software +# Foundation; either version 2, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +# details. +# +# You should have received a copy of the GNU General Public License along with +# this program; if not, write to the Free Software Foundation, Inc., 51 +# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# $Id: ocaml-vars.mk 4236 2007-08-31 09:45:13Z zack $ + +_cdbs_scripts_path ?= /usr/lib/cdbs +_cdbs_rules_path ?= /usr/share/cdbs/1/rules +_cdbs_class_path ?= /usr/share/cdbs/1/class + +ifndef _cdbs_class_ocaml_vars +_cdbs_class_ocaml_vars = 1 + +# current OCaml ABI version (e.g. 3.10.0). +# Used internally by ocaml.mk (substituted for @OCamlABI@ in $(OCAML_IN_FILES) +# below), may be useful to debian/rules writers as well +OCAML_ABI := $(shell /usr/bin/ocamlc -version) + +# OCaml standard library location. +# Used internally by ocaml.mk (substituted for @OCamlStdlibDir@ in +# $(OCAML_IN_FILES) below), may be useful to debian/rules writers as well +OCAML_STDLIB_DIR := $(shell /usr/bin/ocamlc -where) + +# OCaml stublibs (i.e. DLLs) location. +# Used internally by ocaml.mk (substituted for @OCamlDllDir@) in +# $(OCAML_IN_FILES) below), may be useful to debian/rules writers as well +OCAML_DLL_DIR := $(OCAML_STDLIB_DIR)/stublibs + +# list of .in files contained (non-recursively) in debian/ that requires +# pre-build filling. +# Used internally by ocaml.mk. +# debian/rules writers might need to add stuff to this list: +# e.g.: OCAML_IN_FILES += debian/patches/foo # (no .in extension) +OCAML_IN_FILES := $(filter-out debian/control,$(patsubst %.in,%,$(wildcard debian/*.in))) + +# 'yes' if native code compilation is available on the build architecture, 'no' otherwise. +# For debian/rules writers. +OCAML_HAVE_OCAMLOPT := $(shell if test -x /usr/bin/ocamlopt ; then echo "yes" ; else echo "no" ; fi) + +# space separated list of Debian architectures supporting OCaml native code +# compilation. +# Used internally by ocaml.mk and substituted in debian/control.in for the +# @OCamlNativeArchs@ marker; may be useful to debian/rules writers as well +OCAML_NATIVE_ARCHS := $(shell cat $(OCAML_STDLIB_DIR)/native-archs) + +# comma separated list of members of the OCaml team. +# Substituted in debian/control.in for the @OCamlTeam@ marker +OCAML_TEAM = + +OCAML_TEAM += Julien Cristau , +OCAML_TEAM += Ralf Treinen , +OCAML_TEAM += Remi Vanicat , +OCAML_TEAM += Samuel Mimram , +OCAML_TEAM += Stefano Zacchiroli , +OCAML_TEAM += Sven Luther , +OCAML_TEAM += Sylvain Le Gall +# no trailing "," (comma) on the last name + +# space separated list of packages matching the naming convention for OCaml +# development libraries, i.e. libXXX-ocaml-dev. +# For debian/rules writers +OCAML_LIBDEV_PACKAGES := $(filter lib%-ocaml-dev,$(DEB_PACKAGES)) + +# as above, but keep packages matching the convention for OCaml runtime +# libraries, i.e. libXX-ocaml +OCAML_LIB_PACKAGES := $(filter lib%-ocaml,$(DEB_PACKAGES)) + +# space separated list of packages on which ocamldoc usage is required. For +# each package listed here will have ocamldoc invoked on all *.ml/*.mli files +# installed under $(OCAML_STDLIB_DIR) to generated html documentation which +# will be shipped in /usr/share/doc/PACKAGE/html/*. +# Typical usage is OCAML_OCAMLDOC_PACKAGES = $(OCAML_LIBDEV_PACKAGES). +# For debian/rules writers +OCAML_OCAMLDOC_PACKAGES = +#OCAML_OCAMLDOC_PACKAGES = $(OCAML_LIBDEV_PACKAGES) # more "aggressive" default + +# generic (i.e. non backend specific) flags to be passed to ocamldoc +# For debian/rules writers +OCAML_OCAMLDOC_FLAGS = -stars -m A + +# html-specific flags to be passed to ocamldoc (in addition to -html -d DESTDIR) +# For debian/rules writers +OCAML_OCAMLDOC_FLAGS_HTML = + +# man-specific flags to be passed to ocamldoc (in addition to -man -d DESTDIR) +# For debian/rules writers +OCAML_OCAMLDOC_FLAGS_MAN = -man-mini + +# where to install HTML version of the ocamldoc generated API reference. You +# can use "$(cdbs_curpkg)" stem there, it will be expanded to the current +# package name by CDBS +# For debian/rules writers +OCAML_OCAMLDOC_DESTDIR_HTML = usr/share/doc/$(cdbs_curpkg)/html/api + +endif + --- ocaml-3.10.0.orig/debian/cdbs/ocaml.mk +++ ocaml-3.10.0/debian/cdbs/ocaml.mk @@ -0,0 +1,102 @@ +# +# Description: CDBS class for OCaml related packages +# +# Copyright © 2006-2007 Stefano Zacchiroli +# +# This program is free software; you can redistribute it and/or modify it under +# the terms of the GNU General Public License as published by the Free Software +# Foundation; either version 2, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +# details. +# +# You should have received a copy of the GNU General Public License along with +# this program; if not, write to the Free Software Foundation, Inc., 51 +# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# $Id: ocaml.mk 4274 2007-09-02 17:12:05Z zack $ + +_cdbs_scripts_path ?= /usr/lib/cdbs +_cdbs_rules_path ?= /usr/share/cdbs/1/rules +_cdbs_class_path ?= /usr/share/cdbs/1/class + +ifndef _cdbs_class_ocaml +_cdbs_class_ocaml = 1 + +# needed by debian/control:: rule below +include $(_cdbs_rules_path)/buildcore.mk$(_cdbs_makefile_suffix) + +# to ensure invocations and tests on /usr/bin/ocaml* are meaningful +CDBS_BUILD_DEPENDS := $(CDBS_BUILD_DEPENDS), ocaml-nox + +# import OCAML_* make variables +include $(_cdbs_class_path)/ocaml-vars.mk$(_cdbs_makefile_suffix) + +ifdef _cdbs_rules_debhelper + +# ensure dpkg-gencontrol will fill F:OCamlABI fields with the proper value +DEB_DH_GENCONTROL_ARGS += -- -VF:OCamlABI="$(OCAML_ABI)" +DEB_DH_GENCONTROL_ARGS += -VF:OCamlNativeArchs="$(OCAML_NATIVE_ARCHS)" + +endif + +# post-install hook to invoke ocamldoc on OCAML_OCAMLDOC_PACKAGES packages +$(patsubst %,binary-install/%,$(DEB_PACKAGES)):: + @if (echo $(OCAML_OCAMLDOC_PACKAGES) | egrep '( |^)$(cdbs_curpkg)( |$$)' > /dev/null) ; then \ + echo 'mkdir -p debian/$(cdbs_curpkg)/$(OCAML_OCAMLDOC_DESTDIR_HTML)' ; \ + mkdir -p debian/$(cdbs_curpkg)/$(OCAML_OCAMLDOC_DESTDIR_HTML) ; \ + echo 'invoking ocamldoc on debian/$(cdbs_curpkg)$(OCAML_STDLIB_DIR)/ ...' ; \ + find debian/$(cdbs_curpkg)$(OCAML_STDLIB_DIR)/ \ + -type f -name '*.mli' -or -name '*.ml' \ + | xargs ocamldoc $(OCAML_OCAMLDOC_FLAGS) \ + -html $(OCAML_OCAMLDOC_FLAGS_HTML) \ + -d debian/$(cdbs_curpkg)/$(OCAML_OCAMLDOC_DESTDIR_HTML) \ + || true ; \ + fi + +# post-build hook to create doc-base entries for OCAML_OCAMLDOC_PACKAGES packages +$(patsubst %,build/%,$(DEB_PACKAGES)):: + @if (echo $(OCAML_OCAMLDOC_PACKAGES) | egrep '( |^)$(cdbs_curpkg)( |$$)' > /dev/null) ; then \ + sed -e 's/@PACKAGE@/$(cdbs_curpkg)/g' \ + $(_cdbs_class_path)/ocaml-docbase-template.txt$(_cdbs_makefile_suffix) \ + > debian/$(cdbs_curpkg).doc-base.ocamldoc-apiref ; \ + fi +clean:: + rm -f debian/*.doc-base.ocamldoc-apiref + +# generate .in files counterpars before building, substituting @OCamlABI@ +# markers with the proper value; clean stamps after building +pre-build:: ocamlinit +ocamlinit: ocamlinit-stamp +ocamlinit-stamp: + for f in $(OCAML_IN_FILES) ; do \ + sed \ + -e 's,@OCamlABI@,$(OCAML_ABI),g' \ + -e 's,@OCamlStdlibDir@,$(OCAML_STDLIB_DIR),g' \ + -e 's,@OCamlDllDir@,$(OCAML_DLL_DIR),g' \ + $$f.in > $$f ; \ + done + touch $@ +clean:: + rm -f ocamlinit-stamp $(OCAML_IN_FILES) + +# avoid dpatch breaking upon clean if debian/patches/*.in files are in use +deapply-dpatches: ocamlinit + +# update debian/control substituting @OCamlNativeArchs@ +# XXX ASSUMPTION: debian/control has already been generated, i.e. this rule is +# executed after the debian/control:: rule in builcore.mk +ifneq ($(DEB_AUTO_UPDATE_DEBIAN_CONTROL),) +debian/control:: + if test -f debian/control && test -f debian/control.in ; then \ + sed -i \ + -e "s/@OCamlNativeArchs@/$(OCAML_NATIVE_ARCHS)/g" \ + -e "s/@OCamlTeam@/$(OCAML_TEAM)/g" \ + $@ ; \ + fi +endif + +endif + --- ocaml-3.10.0.orig/debian/ld.conf.in +++ ocaml-3.10.0/debian/ld.conf.in @@ -0,0 +1,2 @@ +/usr/local/lib/ocaml/#OcamlABI#/stublibs +/usr/lib/ocaml/#OcamlABI#/stublibs --- ocaml-3.10.0.orig/debian/changelog +++ ocaml-3.10.0/debian/changelog @@ -0,0 +1,1426 @@ +ocaml (3.10.0-8) unstable; urgency=low + + [ Stefano Zacchiroli ] + * CDBS class + - invoke ocamldoc after dh_install has been run (otherwise ocamldoc is + likely to generate empty API references ...) + - add support for automatic generation of doc-base entries for ocamldoc + generated API reference + - better test for package membership to OCAML_OCAMLDOC_PACKAGES + * debian/ocaml-base-nox.README.Debian + - add an entry describing the requirement for compiling ocamldoc-generated + LaTeX documentation (closes: #420782) + + -- Stefano Zacchiroli Sun, 02 Sep 2007 19:11:14 +0200 + +ocaml (3.10.0-7) unstable; urgency=low + + [ Sylvain Le Gall ] + * add patch not-native-no-aspp to workaround FTBFS, as described upstream in + bug 4375 (closes: #429185) + * don't ignore make clean error + * move menu section of ocaml interpreter to Applications/Programming + to comply with new menu structure + + + [ Stefano Zacchiroli ] + * CDBS class + - add support for specifying the target dir for generated documentation + - various fixes in ocamldoc invocation + + -- Sylvain Le Gall Sat, 01 Sep 2007 22:33:52 +0200 + +ocaml (3.10.0-6) unstable; urgency=low + + [ Stefano Zacchiroli ] + * debian/ocaml-nox.dirs.in + - avoid creating empty /usr/include/ocaml/* directory (closes: #439017) + * CDBS class + - add support for automatic ocamldoc HTML documentation generation + * Policy + - add an appendix about the CDBS class with some minimal information and + pointers to the commented .mk files + + -- Stefano Zacchiroli Thu, 30 Aug 2007 15:54:24 +0200 + +ocaml (3.10.0-5) experimental; urgency=low + + [ Ralf Treinen ] + * ocaml-mode.emacsen-install: do not hardcode the emacs flavours for which + to compile ocaml-mode (closes: Bug#433082) + * ocaml-mode: Bump primary dependency from emacs21 to emacs22. + + [ Stefano Zacchiroli ] + * add patch arm_ccheckbound_typo, fix a typing error typo which makes ocaml + FTBFS on arm + * ocaml-source: install ocaml tarball as + /usr/src/ocaml-source-VERSION.tar.bz2; the "-source" part was erroneously + missing and make other packages FTBFS + * bump debhelper dependencies and compatibility level to 5 + + -- Stefano Zacchiroli Sun, 12 Aug 2007 19:29:07 +0200 + +ocaml (3.10.0-4) experimental; urgency=low + + * debian/patches/install_ocamlbuild.dpatch + - patched to install ocamlbuild as .native/.byte (following upstream + convention which will become widespread in the future), but changes + ocamlbuild to be a symlink to the best ocamlbuild available + * CDBS class: + - avoid dpatch breaking upon clean if debian/patches/*.in files are in use + - fix the usage example for "OCAML_IN_FILES += ...", it was wrong + + -- Stefano Zacchiroli Wed, 04 Jul 2007 11:50:43 +0200 + +ocaml (3.10.0-3) experimental; urgency=low + + * debian/patches/00list + - enabled install_ocamlbuild patch (was disabled by mistake) and patched + it fixing a wrong path + * debian/rules + - pass -libdir to configure (now that it is supported upstream) in + addition to sed-ing generated config Makefiles; otherwise ocamlrun won't + get the correct libdir setting + * debian/ocaml-md5sums/ocaml-md5sums.1 + - written ocaml-md5sums manpage + * debian/ocaml-native-compilers.links + - delegated to dh_link the creation of .opt manpage symlinks and added the + missing one for ocamlbuild.opt + + -- Stefano Zacchiroli Sat, 16 Jun 2007 16:17:17 +0000 + +ocaml (3.10.0-2) experimental; urgency=low + + * Split two new packages: "camlp4" and "camlp4-extra" to cope with the huge + size increase of the new camlp4 + * Policy + - update the Vcs-Svn info to the latest PTS documentation + - describe dependencies from a -dev package to its companion shared stub + package (if any) and suggest the usage of ${binary:Version} + * debian/copyright + - added in place of copyright.in, nothing to replace there + * debian/man/camlp4*.1 + - added manpages for camlp4 related executables; content partially using + html2man, partially taken from the camlp4 wiki + * debian/control + - moved ledit recommends from ocaml-nox to ocaml-interp (which ships the + interactive toplevel) + - minor improvements to various descriptions + + -- Stefano Zacchiroli Sat, 16 Jun 2007 12:41:32 +0100 + +ocaml (3.10.0-1) experimental; urgency=low + + [ Stefano Zacchiroli ] + * New upstream (stable) release + * debian/patches/* + - removed: ocaml-interp_manpage, build_wo_debug_info (integrated upstream) + - updated: install_ocamlbuild + * ship ocaml-compiler-libs objects as STDLIB/ocaml-compiler-libs/{parsing/, + typing/, utils/} rather than as a flat dir tree + * re-enabled ocaml-source package (which ships + /usr/src/ocaml-3.10.0.tar.bz2), now with a better way to generate it: + everything in the build dir except debian/ will be copied in the resulting + tarball + * debian/ocaml-source.exclude + - new file: list of tar exclude patterns, matching file won't be shipped + in the ocaml source tarball + + -- Stefano Zacchiroli Wed, 13 Jun 2007 17:19:10 +0200 + +ocaml (3.10.0~beta-1) experimental; urgency=low + + [ Samuel Mimram ] + * Ship dh_ocaml into ocaml-nox + + [ Stefano Zacchiroli ] + * New upstream beta release (3.10.0). + * debian/patches/* + - removed: versioned_libdir (no longer needed with this upstream) + - ported to this upstream: call_ld_with_proper_flags, alpha_ld_no-relax, + no_rpath + - added: build_wo_debug_info.dpatch (avoid building camlp4/ocamldoc with + debug info, wont be needed for the stable release) + * CDBS class + - added support for the OCAML_DLL_DIR variable, pointing ATM to the + stublibs/ subdirectory of the standard library directory. It's + substituted for @OCamlDllDir@ in .in files + - remove files which have been generated from their .in counterparts upon + clean target invocation + * Policy + - mandate the compilation of *.cm[ao] with debugging information for + libraries and forbid it for bytecode programs + * debian/rules + - delegated more installation stuff to dh_install + * debian/control + - get rid of the no longer needed ocaml-source package + + [Ralf Treinen] + * debian/patches/* + - added: install_scripts_config: use a patched config.sh since PREFIX is + diferent at compile time and at installation time + - added: ocaml-interp_manpage, fixes typo in ocaml manpage + (closes: Bug#417847). + * debian/rules: + - added creation of config/config.debian.install + - Patch LIBDIR and STBLIBDIR setting in config/Makefile after invokation + of configure + + -- Stefano Zacchiroli Tue, 17 Apr 2007 09:57:47 +0200 + +ocaml (3.09.3-1) experimental; urgency=low + + [ Samuel Mimram ] + * New upstream release. + + -- Julien Cristau Sat, 30 Sep 2006 01:15:16 +0200 + +ocaml (3.09.3~rc1-1) experimental; urgency=low + + [ Julien Cristau ] + * New upstream release candidate. + + -- Samuel Mimram Sun, 10 Sep 2006 23:11:31 +0000 + +ocaml (3.09.2-7) unstable; urgency=low + + [ Julien Cristau ] + * Fix typo in ocaml-base description (Closes: #390224). + + [ Stefano Zacchiroli ] + * debian/control + - added XS-Vcs-Svn field to let users know where our svn repository is + * Added .txt suffix to the textual version of the policy + * Ship CDBS class for building OCaml related packages in + /usr/share/cdbs/1/; permission granted by the CDBS maintainers to + ship files there, see #387299. (Closes: #387299). + * Updated policy (now at version 0.7.1); changes: + - added a best-practice section about using the XS-Vcs-Svn field in + debian/control of OCaml related packages + - fixed typo in the suggested debian/rules line to fill the OFILES + variable + + [ Samuel Mimram ] + * Updated policy (section 2.3) to explain how to add a conditional + dependency on ocaml-base-nox-VERSION for native/bytecode packages. + + -- Stefano Zacchiroli Sat, 28 Oct 2006 15:42:08 +0200 + +ocaml (3.09.2-6) unstable; urgency=low + + * Correct /usr/include/caml symbolic link, closes: #379271. + * Correct symbolic links in documentation directories. + * Updated policy. + + -- Samuel Mimram Sun, 23 Jul 2006 14:37:36 +0000 + +ocaml (3.09.2-5) unstable; urgency=low + + * Added a missing dependency on docbook-xml, closes: #373996. + + -- Samuel Mimram Fri, 16 Jun 2006 17:58:35 +0000 + +ocaml (3.09.2-4) unstable; urgency=low + + [ Julien Cristau ] + * Update reference to upstream tarball location in debian/copyright. + * Actually apply the patch to fix the stdlib manpages' section. + + [ Samuel Mimram ] + * Integrate the ocaml policy in the package. Added a build dependency on + docbook-utils to build it. + * Put the symbolic links directly in the packages instead of using postinst. + * Put forgotten ocamldep.opt in ocaml-native-compilers. + * We don't need to remove rpaths anymore. + + -- Samuel Mimram Fri, 16 Jun 2006 09:11:02 +0000 + +ocaml (3.09.2-3) unstable; urgency=low + + * Uploading to unstable. + + -- Samuel Mimram Mon, 15 May 2006 20:40:39 +0000 + +ocaml (3.09.2-2) experimental; urgency=low + + [ Julien Cristau ] + * Add a patch to put stdlib manpages in section 3o. + * Fix typo in ocamldumpobj(1). + * Add symlinks so that ocamldep.opt(1) and ocamllex.opt(1) exist. + + [ Samuel Mimram ] + * Updated standards version to 3.7.2, no changes needed. + + -- Samuel Mimram Wed, 10 May 2006 21:32:57 +0000 + +ocaml (3.09.2-1) experimental; urgency=low + + * New upstream release. + * Added no_rpath.dpatch (taken from Red Hat) in order for caml not to put + rpath in generated shared libraries, closes: #361865. + + -- Samuel Mimram Tue, 18 Apr 2006 17:14:59 +0000 + +ocaml (3.09.1+3.09.2rc1-1) experimental; urgency=low + + [ Julien Cristau ] + * Remove dh_gencontrol line for ocaml-source from the binary-arch target + (ocaml-source is built in binary-indep). + * New upstream release candidate: + + add support for GNU/Hurd (Closes: #358274). + + fix handling of `new' in camlp4 which caused stack overflow (Closes: + #355651). + * Drop kbsd-gnu.dpatch, obsolete. + + [ Samuel Mimram ] + * Use new icon, closes: #358946. + * Link to README.Debian instead of README.Debian.gz in + /usr/share/doc/ocaml-base, closes: #355975. + + -- Julien Cristau Thu, 30 Mar 2006 15:10:14 +0200 + +ocaml (3.09.1-3) unstable; urgency=low + + * Enable ocaml-mode for emacs-snapshot (Closes: #347917). + * Change the patch added in 3.09.1-2, because it broke ocamlopt -pack on + sparc (we now filter link options to remove the "-Wl," part, and then use + ld). Thanks to Sylvain Le Gall for noticing, and to Samuel Thibault for + his help debugging this (Closes: #351853). + * [debian/rules] Make install-* depend on build-*, and tweak the rules to + not rerun configure in the 'binary' phase. + + -- Julien Cristau Thu, 9 Feb 2006 15:14:43 +0100 + +ocaml (3.09.1-2) unstable; urgency=low + + [ Samuel Mimram ] + * Cleaning ocaml-md5sums, closes: #346279. + + [ Julien Cristau ] + * build-arch is a phony target. + * Add patch to make ocamlopt -output-obj and ocamlopt -pack call the linker + via gcc instead of directly, which allows us to pass the same linking + options in these cases and in the common case (where ocamlopt already used + gcc). This should unbreak ocamlopt -pack on alpha, and thus fix the build + failure of camomile. + + -- Julien Cristau Thu, 12 Jan 2006 15:33:00 +0100 + +ocaml (3.09.1-1) unstable; urgency=low + + [ Samuel Mimram ] + * Removing possibly leftover /usr/lib/ocaml/ld.conf, closes: #300846. + * Updated objinfo.dpatch. + * Added dumpobj.dpatch to install ocamldumpobj. + * Added a rule in rules to generate (manually) ocaml-source.files and + updated ocaml-source.files. + * Added a watch file. + + [ Julien Cristau ] + * New upstream release + + sparc is correctly detected and alignment of doubles and 64-bit ints on + double-word boundaries is forced (Closes: #344615). + * Remove Suggests on xlibs-dev which doesn't exist anymore. + + -- Samuel Mimram Wed, 4 Jan 2006 20:32:13 +0100 + +ocaml (3.09.0-4) unstable; urgency=low + + [ Julien Cristau ] + * debian/rules: the abi-sed rule is phony, we don't want to run configure + twice. + * Stop building the native compilers on hppa, they are buggy and upstream + considers this port dead (see bug#342704). + + [ Samuel Mimram ] + * Added for_pack_static.dpatch (from CVS) to correct a bug when linking, + disabled for now though. + * Added myself to uploaders. + + [ Julien Cristau ] + * Install the list of architectures with native compilers in the ocaml-nox + package. + + [ Sven Luther ] + * This version should make it into testing, so let's (Closes: #338435). + + -- Sven Luther Mon, 19 Dec 2005 13:36:31 +0000 + +ocaml (3.09.0-3) unstable; urgency=low + + * Fix build on non-native arches which was broken by the changes to + debian/rules in the previous release. Sorry for this :( + + -- Julien Cristau Fri, 9 Dec 2005 11:01:06 +0100 + +ocaml (3.09.0-2) unstable; urgency=low + + * Modified debian/rules to exit with an error when native compiler build + fails, instead of building a broken package. + * New patch kbsd-gnu.dpatch to add support for GNU/Hurd and GNU/k*BSD on + i386 (thanks to Robert Millan and Aurélien Jarno; Closes: #216886). + * Add myself to Uploaders (acked by Sven). + * Add patch by Steve Langasek to fix native code linking + by passing the --no-relax option to ld (Closes: #338437). + Bug#335578 stays open since a proper fix to the generated asm would still + be better than this workaround. + + -- Julien Cristau Thu, 8 Dec 2005 10:19:39 +0100 + +ocaml (3.09.0-1) unstable; urgency=low + + * New upstream release. + - self references are now ruled out (Closes: #263163, #294753) + - better escaping in manpages generated by ocamldoc (Closes: #301046) + - typo fixed in ocamldoc.1 (Closes: #304360) + - argument order changed in Map.fold (Closes: #327211) + + [ Julien Cristau ] + * Cleanup debian/control: remove redundant Depends. + * Update location of ocaml-md5sums stuff. + * Build-Depend on chrpath and delete rpath from DLLs. + * Various lintian warnings fixed, and overrides cleaned up. + + [ Sven Luther ] + * Updated to new upstream release. + * Modified the packaging ifrastructure to not use hard-coded abi number + except in the head of debian/rules. All else is sed'ed from #OcamlABI# + (and #OcamlMAJOR# for the debian/copyright file and the upstream url). + + -- Debian OCaml Maintainers Mon, 07 Nov 2005 10:56:49 +0100 + +ocaml (3.08.3-8) unstable; urgency=low + + Changes by Jérôme Marant: + * Create a new `ocaml-mode' package dedicated at Emacs-related files + (Closes: Bug#312618, Bug#322210) + * debian/control: + - Add new ocaml-mode package section + - [ocaml-nox] + + Remove emacsen-common dependency + + Suggests tuareg-mode or ocaml-mode + * debian/ocaml-mode.dirs: New file + * debian/ocaml-nox.dirs: Remove emacsen-related files entries + * debian/ocaml-mode.emacsen-install, + debian/ocaml-mode.emacsen-remove, + debian/ocaml-mode.emacsen-startup: New files respectively renamed from + emacsen-install, emacsen-remove and emacsen-startup + * debian/ocaml-nox.postint: Rename previous existing emacs site + conffiles to .save in order to avoid messing with the new + ocaml-mode + * debian/rules: Install ocaml-mode files in their own location + * debian/ocaml-base-nox.README.Debian: Mention new ocaml-mode package + * debian/ocaml-nox.NEWS: + - New file + - Mention all emacs-related files moved to a separate ocaml-mode + package + - Mention that all previous emacs conffiles are renamed in order + not to mess with the new ocaml-mode + * debian/ocaml-mode.README.Debian: + - New file + - Explain how to override tuareg-mode in case both modes are + installed + + * debian/changelog: Remove spurious changelog entry + + * Move ocaml-md5sums from a dpatch to a debian subdirectory + * debian/patches/ocaml-md5sums.dpatch: Remove file + * debian/patches/00list: Remove ocaml-md5sums entry + * debian/ocaml-md5sums/{configure,feeding.sh,Makefile,ocaml-md5sums.ml.in}: + - New files + * debian/rules: Update ocaml-md5sums files location accordingly + + * Move ocaml-nox menu file to ocaml-interp since the toplevel + is provided by ocaml-interp + * debian/ocaml-interp.menu: + - New file renamed from ocaml-nox.menu + - Change 'ocaml' to 'ocaml-interp' in the required package for + the menu to be displayed + * debian/ocaml-interp.dirs: Add pixmaps directory + * debian/ocaml-nox.dirs: Remove pixmaps directory + + * Move xpm files away from the /usr/X11R6 deprecated directory + hierarchy to /usr/share/pixmaps, as per Policy (11.8.7) + * debian/rules: install JoeCaml.xpm in /usr/share/pixmaps within the + ocaml-interp package + * debian/ocaml-interp.menu: Change pixmap location + + * Really install menu files + * debian/rules: uncomment dh_installmenu in the build-common target + + * debian/ocaml-nox.preinst: Remove bashism + + * Add dependencies on gcc and binutils for all interpreters since + OCaml compilers may use of them (Closes: Bug#322722) + * debian/control: + - [ocaml-nox]: Add dependency on both gcc and binutils + - [ocaml-native-compilers]: Likewise + + Changes by Stefano Zacchiroli: + * debian/rules + - remove spurious CVS directories from labltk examples + (Closes: Bug#322712) + * debian/ocamlfind/ocaml-native-compilers.conf + - gets installed under /usr/share/ocaml-findlib/ so that, if + ocamlfind is available, compiling with findlib will use the + native compilers + + -- Debian OCaml Maintainers Thu, 08 Sep 2005 12:46:36 +0200 + +ocaml (3.08.3-7) unstable; urgency=low + + Changes by Sven Luther: + * debian/patches/byterun_interp_ia64_fix.dpatch + - Removed spurious ia64 cast which broke builds with gcc 4.0 + + Changes by Stefano Zacchiroli: + * debian/control + - added versioned dep from ocaml-compiler-libs to ocaml-base-nox to + ensure ocaml-md5sums exists at postinst invocation time + * debian/{ocaml-compiler-libs,ocaml-nox,ocaml}.postrm + - invoke ocaml-md5sums update only if it is available, if not + md5sums database will be updated next time ocaml-base-nox will be + installed (Closes: Bug#322210) + * debian/patches/ocaml-md5sums + - avoid failure on update if /var/lib/ocaml/md5sums does not exists + + -- Debian OCaml Maintainers Fri, 12 Aug 2005 10:47:30 +0200 + +ocaml (3.08.3-6) unstable; urgency=low + + Changes by Stefano Zacchiroli: + * debian/control + - added versioned dep from ocaml to ocaml-base-nox to ensure + ocaml-md5sums exists at postinst invocation time (Closes: #320779) + + -- Debian OCaml Maintainers Sun, 31 Jul 2005 11:37:24 +0200 + +ocaml (3.08.3-5) unstable; urgency=low + + Changes by Stefano Zacchiroli: + * debian/patches/ocaml-md5sums.dpatch + - use relative path for ocamlrun when compiling ocaml-md5sums + (Closes: #320622) + - enable external specification, via env var, of ocamlobjinfo path + - fixed bug in feeding.sh which inhibit discovery of *.cm[ao] + * debian/rules + - passes relative path of ocamlobjinfo to ocaml-md5sums + + -- Debian OCaml Maintainers Fri, 29 Jul 2005 12:55:56 +0200 + +ocaml (3.08.3-4) unstable; urgency=low + + Changes by Julien Cristau: + * Create directories in /usr/local/lib with proper permissions in + ocaml-base-nox's postinst, and remove them if empty in prerm + (Closes: #270925). + * debian/patches/asmcomp_amd64_emit.mlp.dpatch: patch from upstream bugfix + branch by Xavier Leroy to fix code generation on amd64 (reported by John + Skaller). + * debian/patches/fix_i386_gcc4_build.dpatch: patch from upstream to fix + inline i386 assembly in the num library to allow building ocaml with + gcc-4.0 (Closes: #309317). + * debian/control: Add a dependency on emacsen-common, because this is needed + to install the caml emacs mode in ocaml-nox (Closes: #312618). + + Changes by Stefano Zacchiroli: + * debian/patches/ocaml-md5sums, debian/rules, + debian/{ocaml,ocaml-nox,ocaml-compiler-libs}.{postinst,postrm} + - added ocaml-md5sums, ocaml md5sum registry handler for the forthcoming + dh_ocaml + * Removed debian/ocaml-compiler-libs.README.Debian (out of date copy of + debian/README.Debian); added symlink from ocaml-base to README.Debian + * Added debian/svn-deblayout to make svn structure work with + svn-buildpackage + * debian/control + - bumped Standards-Version to 3.6.2 + - changed Maintainer to Debian OCaml Maintainers for this upload, set + Uploaders to Sven and me + * debian/rules + - ignore error on clean target for config.{sub,guess} so that + svn-buildpackage does not fail at clean time + + -- Debian OCaml Maintainers Thu, 21 Jul 2005 00:24:26 +0200 + +ocaml (3.08.3-3) unstable; urgency=medium + + * Missed the include symlink in 3.08 -> 3.08.3 migration. + /me slaps myself, really need to automate this. + + -- Sven Luther Wed, 23 Mar 2005 00:30:19 +0100 + +ocaml (3.08.3-2) unstable; urgency=medium + + * Missed some 3.08 -> 3.08.3 migration for ld.conf files. + + -- Sven Luther Tue, 22 Mar 2005 08:06:01 +0100 + +ocaml (3.08.3-1) unstable; urgency=medium + + * New upstream stable point version. + - breaks binary compatibility, we thus have to up the ABI version + to 3.08.3. + * New features + - ignore unknown warning options for forward and backward compatibility + - runtime: export caml_compare_unordered (PR#3479) + - camlp4: install argl.* files (PR#3439) + - ocamldoc: add -man-section option (Closes: #287538) + - labltk: add the "solid" relief option (PR#3343) + - compiler: ocamlc -i now prints variance annotations + * Bug fixes: + - typing: fix unsoundness in type declaration variance inference. + Type parameters which are constrained must now have an explicit variant + annotation, otherwise they are invariant. This is not backward + compatible, so this might break code which either uses subtyping or + uses the relaxed value restriction (i.e. was not typable before 3.07) + - typing: erroneous partial match warning for polymorphic variants (PR#3424) + - runtime: handle the case of an empty command line (PR#3409, PR#3444) + - stdlib: make Sys.executable_name an absolute path in native code (PR#3303) + - runtime: fix memory leak in finalise.c + - runtime: auto-trigger compaction even if gc is called manually (PR#3392) + - stdlib: fix segfault in Obj.dup on zero-sized values (PR#3406) + - camlp4: correct parsing of the $ identifier (PR#3310, PR#3469) + - autoconf: better checking of SSE2 instructions (PR#3329, PR#3330) + - graphics: make close_graph close the X display as well as the window (PR#3312) + - num: fix big_int_of_string (empty string) (PR#3483) + - num: fix big bug on 64-bit architecture (PR#3299) + - str: better documentation of string_match and string_partial_match (PR#3395) + - unix: fix file descriptor leak in Unix.accept (PR#3423) + - unix: miscellaneous clean-ups + - unix: fix documentation of Unix.tm (PR#3341) + - compiler: fix error message with -pack when .cmi is missing (PR#3028) + - cygwin: fix problem with compilation of camlheader (PR#3485) + - stdlib: Filename.basename doesn't return an empty string any more (PR#3451) + - stdlib: better documentation of Open_excl flag (PR#3450) + - ocamlcp: accept -thread option (PR#3511) + - ocamldep: handle spaces in file names (PR#3370) + - compiler: remove spurious warning in pattern-matching on variants (PR#3424) + + -- Sven Luther Mon, 21 Mar 2005 07:46:26 +0100 + +ocaml (3.08.2-1) unstable; urgency=low + + * new upstream stable release. + + -- Sven Luther Sat, 27 Nov 2004 12:25:08 +0100 + +ocaml (3.08.1-2) unstable; urgency=high + + * Cleaned up ocaml-source location. + + -- Sven Luther Wed, 25 Aug 2004 15:10:12 +0200 + +ocaml (3.08.1-1) unstable; urgency=high + + * New upstream stable point release. + * Dropped QPL 6c qnd choice of venue clause from the QPL licence. + * The emacs files are now under GPL, adding them again. + * Added ocamlmklib man page, courtesy of Samuel Mimram . + * Removed camlp4-coq-fix, since it is now fixed upstream. + + -- Sven Luther Thu, 19 Aug 2004 18:49:30 +0200 + +ocaml (3.08.0-2) unstable; urgency=low + + * Applied patch adding some missing .cmx to enable coq 3.08 to build. + * Enabled hppa native code compiler. (Closes: #260711) + * Don't install native compiler libs on arches they are not built. + * Readded objinfo patch. + + -- Sven Luther Mon, 26 Jul 2004 14:08:42 +0200 + +ocaml (3.08.0-1) unstable; urgency=low + + * New upstream release. + - Added support for IPv6 in unix library. (Closes: #223480, #234400) + * Do not install the emacs files, until upstream gives a response about the + licencing issue. (Closes: #227159, #227163) + * Fix non-native compiler supporting arches build. (Closes: #259261) + * Added amd64 native code compilers build. (Closes: #248334) + * Now include the nums package again, since 3.08 include the new free + version. (Closes: #240902) + * Now include ocamldoc manpage. (Closes: #255239) + + -- Sven Luther Thu, 15 Jul 2004 09:21:55 +0200 + +ocaml (3.07.2a-4) unstable; urgency=low + + * *-nox and -interp now conflict with the package which previously + distributed their files as suggested in policy 7.5.1 + * Fixed the Conflicts entries to use the proper version of ocaml: + 3.07.2a instead of 3.07. + + -- Mike Furr Mon, 5 Jul 2004 14:13:55 -0400 + +ocaml (3.07.2a-3) unstable; urgency=low + + * Split out the ocaml interpreter and all required files into ocaml-interp + * Split out all of the tk/xlibs stuff from ocaml into ocaml-nox and from + ocaml-base into ocaml-base-nox + * Added a bunch of internal modules from the compiler into a new binary: + compiler-libs. Also added notes in REAMDE.D and copyright that these + are QPL, not LGPL like everything else. + * Changed 'Objectif' to 'Objective' in ocaml-source short description + * Cleaned up debian/rules. It now uses stamp files a little more + intelligently so that it doesn't rebuild the whole thing every time + * Check to see if /usr/include/caml EXISTS and is a symblink thus + eliminating a spurious warning message from ocaml-nox.preinst + * Removed 'num' library from ocaml-sources.files + + -- Mike Furr Thu, 10 Jun 2004 22:44:34 -0400 + +ocaml (3.07.2a-2) unstable; urgency=low + + * Now install the config/Makefile so that nat/bignum can be built as an + external package. + * Modified configure so that the Makefile variables for both nat/bignum + implementations are written in the config/Makefile. + + -- Sven Luther Wed, 17 Dec 2003 12:52:28 +0100 + +ocaml (3.07.2a-1) unstable; urgency=low + + * New upstream .2 release, including the ocaml-3.07-pl2 patch. + * Removed the otherlibs/num library, since the copyright is non-free, and + the copyright got lost in the HP/Compaq acquisition. Thanks to Bdale + Garbee for trying to solve this issue, but since the release approaches, + and upstream is reimplementing the library anyway, i will remove it here. + * Fixed broken emacs file caml-types.el. (Closes: #218226) + + -- Sven Luther Fri, 31 Oct 2003 14:46:02 +0100 + +ocaml (3.07-7) unstable; urgency=high + + * Fixed hppa build problem : hppa needs doubleword aligned doubles. + * Removed .dpatch extensions for debian/patches/00list, should enable to + build with older versions of debhelper, like the one in woody. + (Closes: #214967). + * Removed leftover ocaml 3.06 ld.conf stuff. (Closes: #214772) + * Applied the ocaml-3.07-pl2 patch inplace of the previous camlp4 patch. + (Closes: #216152) + + -- Sven Luther Fri, 17 Oct 2003 00:48:39 +0200 + +ocaml (3.07-6) unstable; urgency=low + + * Changed from the -a to the -s option in debhelper functions. Fixed FTBFS + in all non-native autobuilders. + + -- Sven Luther Mon, 6 Oct 2003 09:07:42 +0200 + +ocaml (3.07-5) unstable; urgency=low + + * Somehow the objinfo patch forgot to install objinfo, fixed now. Also + renamed objinfo to ocamlobjinfo, to be more in line with the other ocaml + executables. + * Test for emacsen flavor early one and abort if unsupported. + (Closes: #213862) + + -- Sven Luther Fri, 3 Oct 2003 17:08:29 +0200 + +ocaml (3.07-4) unstable; urgency=low + + * Arg, dh_gencontrol seems to not support putting stuff after the + substitution variable, which seems somewhat broken to me, anyway, let's + put the substitution variable last. + * Forgot to add the camlp4_optional.dpatch to the list of patches to be + applied. (Closes: #213881) + + -- Sven Luther Fri, 3 Oct 2003 10:54:26 +0200 + +ocaml (3.07-3) unstable; urgency=low + + * Fixed BestProvide magic, as a space was breaking non-native builds. + + -- Sven Luther Fri, 3 Oct 2003 08:16:18 +0200 + +ocaml (3.07-2) unstable; urgency=low + + * I mistakenly uploaded to experimental, and thus am forced to upload a -2. + + -- Sven Luther Thu, 2 Oct 2003 11:41:53 +0200 + +ocaml (3.07-1) experimental; urgency=low + + * New upstream release. + - Most debian patches where included upstream. + - Standard library now use .3o suffixes. (Closes: #205391) + * Dpatchification. + * Applied the camlp4 optional arguments fix. + * Fixed emacsen-install so that caml-xemacs and caml-emacs get installed + only for the corresponding emacs flavors. Thanks go to Jerome Marant. + * Moved ocaml-source into a tarball. + + -- Sven Luther Wed, 1 Oct 2003 13:31:23 +0200 + +ocaml (3.06-21) unstable; urgency=low + + * I botched the debian/rules in the -20 release, fixed it. + + -- Sven Luther Wed, 20 Aug 2003 13:57:28 +0200 + +ocaml (3.06-20) unstable; urgency=low + + * Fixed BestProvides substvar stuff. (Closes: #205228, #204537) + + -- Sven Luther Tue, 19 Aug 2003 18:36:29 +0200 + +ocaml (3.06-19) unstable; urgency=low + + * Fix a alloc_channel bug. (Closes: #204146). + + -- Sven Luther Wed, 6 Aug 2003 10:54:38 +0200 + +ocaml (3.06-18) unstable; urgency=low + + * Dropped camlp4, libcamltk-ocaml and camltk provides as it may confuse apt. + + -- Sven Luther Fri, 18 Jul 2003 22:29:45 +0200 + +ocaml (3.06-17) unstable; urgency=low + + * Fixes typo in ocaml_packaging_policy. + * Moved ocamldoc generated library manpages from section o to 3. + * Linked to libgdbm-compat, using the new libgdbm-dev package. + (Closes: #188553) + * Removed the /etc/magic debconf question, as ocaml is recognized by file + since version 4.02-1. (Closes: #190037, #189774) + * Uncommented site specific emacs stuff as suggested by Laurent Bonnaud and + okeyed by Ralf Treinen. (Closes: #192131) + * Conflicts with camlidl (<< 1.04), warn if /usr/include/caml is still not + a symlink, but this should only happen if the user did some hand + installation. (Closes: #195574, #192552) + + -- Sven Luther Sun, 8 Jun 2003 11:52:10 +0200 + +ocaml (3.06-16) unstable; urgency=low + + * Fix GC memory problem in stat_aux function in stat.c, reported in upstream + bug #1665 and causes random SEGVs when using Unix.Largefile.stat or + friends. Thanks to David Brown for providing a patch. (Closes: #191582) + * Properly install the latex file ocamldoc.sty. (Closes: #175821) + * Fixed or overrided most lintian warnings. + * Fixed configure script to work around the sparc FTBFS with gcc 3.2. + * Applied Remi's ocaml_packaging_policy changes. (Closes: #177850) + * Backported the config/auto-aux/async_io.c patch from CVS, to solve the + graphics module/sleep problem. (Closes: #179199) + + -- Sven Luther Sat, 3 May 2003 09:45:38 +0200 + +ocaml (3.06-15) unstable; urgency=low + + * Fixed the /usr/include/caml issue. (Closes: #173720) + + -- Sven Luther Tue, 24 Dec 2002 10:31:55 +0100 + +ocaml (3.06-14) unstable; urgency=low + + * Removed the (bad) /usr/lib/ocaml/3.06/ld.conf that comes with the ocaml + package. + * Now run ocaml-ldconf in ocaml postinst also. This is needed since + /usr/lib/ocaml/3.06/ld.conf was in ocaml 3.06-13 and will thus be removed + when we upgradeto 3.06-14. + * Some script cleanup. + + -- Sven Luther Tue, 17 Dec 2002 00:05:22 +0100 + +ocaml (3.06-13) unstable; urgency=low + + * Ocaml and ocaml-base now provides ocaml-3.06-1 and ocaml-base-3.06-1. All + library packages depending on ocaml-3.06 and ocaml-base-3.06 are now + uninstallable, and should be rebuilt with these new dependencies. Notice + that a bug in dpkg (Bug#170825) allows to upgrade ocaml to 3.06-13 even if + packages depending on the older virtual provides are still present, + apt-get handles this properly. + * Changed libdir from /usr/lib/ocaml to /usr/lib/ocaml/3.06, and adapted the + ocaml_packaging_policy consequently. + * Added Stefano's section on META files and findlib in the + ocaml_packaging_policy. + * Now /usr/include/caml is a symlink to /usr/lib/ocaml/3.06/caml, and not + the other side around. Need to find a nicer solution here, or even stop + shipping the headers in /usr/include. One solution would be to ship them + under /usr/include/ocaml/3.06/caml. + + -- Sven Luther Sat, 14 Dec 2002 22:24:05 +0100 + +ocaml (3.06-12) unstable; urgency=low + + * Fixed configure so it now builds dbm support. (Closes: #168458) + + -- Sven Luther Mon, 11 Nov 2002 12:45:32 +0100 + +ocaml (3.06-11) unstable; urgency=low + + * Applied posix systhread patch from Xavier. Now the tick thread dies + properly when killing a threaded native code program. (Closes: #144719) + + -- Sven Luther Tue, 29 Oct 2002 18:22:16 +0100 + +ocaml (3.06-10) unstable; urgency=low + + * Now call dh_installdebconf to install the debconf .templates file. + (Closes: #166707) + + -- Sven Luther Mon, 28 Oct 2002 10:29:04 +0100 + +ocaml (3.06-9) unstable; urgency=low + + * Now test for the existence of /etc/magic before trying to fill it. + + -- Sven Luther Mon, 28 Oct 2002 10:29:04 +0100 + +ocaml (3.06-8) unstable; urgency=low + + * Added objinfo man page, courtesy of Stefano Zacchiroli, and modified + ocamlc manpage to make reference to it. + * Applied Stefano's .ocamlinit patch. (Closes: #166199) + * Added a debconf template to fill /etc/magic with the appropriate ocaml + magic. + + -- Sven Luther Sun, 27 Oct 2002 00:20:24 +0200 + +ocaml (3.06-7) unstable; urgency=low + + * Ocaml needed a rebuild, since native code compilation using the Str + library was broken. I don't really understand what did break, most + probably it is one of the developpment libraries (binutils, libc6, ...) + which did change in an incompatible way we are not aware of. + * Now ship objinfo. (Closes: #165446) + * Applied odoc_man.ml patch from Maxence i got out of CVS. (Closes: #159581) + * Removed /usr/lib/ocaml/ld.conf from the ocaml package, since it is shipped + with ocaml-base. (Closes: #161742) + + -- Sven Luther Wed, 23 Oct 2002 10:20:04 +0200 + +ocaml (3.06-6.1) unstable; urgency=low + + * (NMU) recompile at maintener request + Since i uploaded ocam lsource only, ocaml-source was not built, + so i asked for an NMU, not having the bandwith for uploading ocaml-source + myself. (Sven Luther) + + -- Remi Vanicat Tue, 24 Sep 2002 11:46:27 +0200 + +ocaml (3.06-6) unstable; urgency=high + + * ocaml-ldconf in postrm was called only on remove, not upgrade. + (Closes: #159859). + * Moved ocaml-source stuff to /usr/src. + (Closes: #159862). + * Added more verbose info to ocaml-ldconf.ml + (Closes: #159860). + * Now ocaml-ldconf also accepts the -R option to remove all directories + associated with the given package. + + -- Sven Luther Fri, 6 Sep 2002 18:12:18 +0200 + +ocaml (3.06-5) unstable; urgency=high + + * Removed reference to /usr/include/ocaml in README.Debian. + (Closes: #158126). + + -- Sven Luther Mon, 2 Sep 2002 14:38:22 +0200 + +ocaml (3.06-4) unstable; urgency=high + + * Apparently the dh_ocamlld patch did not do, i will now call ocaml-ldconf + in ocaml-base.postinst, to be sure the /usr/lib/ocaml/ld.conf is created + correctly (Closes: #158905). + + -- Sven Luther Mon, 2 Sep 2002 14:04:17 +0200 + +ocaml (3.06-3) unstable; urgency=high + + * Added a Provide: ocaml-source-3.06 to the ocaml-source control file. + (Asked by Jerome Marant) + + -- Sven Luther Fri, 30 Aug 2002 09:39:25 +0200 + +ocaml (3.06-2) unstable; urgency=high + + * Now we create the /usr/local/lib/ocaml directory in the postinst instead + of including it in the package. We also don't fail if we are not able to + create this directory (if /usr/local is mounted read-only for example). + (Closes: #157898) + * Now use mmap() instead of malloc() for allocation of major heap chunks, + for alpha (same fix as for the ia64 problem encountered previously). + (Closes: #158444) + + -- Sven Luther Thu, 29 Aug 2002 08:26:53 +0200 + +ocaml (3.06-1) unstable; urgency=high + + * New upstream (bugfix) release. (Closes: Bug#139427) + * 3.05 as released by upstream was broken, i should not have uploaded it (as + it broke all the libraries) but it was too late when i was made aware of + the problems with 3.05. + * Added a statement in the ocaml-source package description that it is _not_ + supposed to be used for building ocaml. (Closes: #150077) + * Now ship labltk examples and README file. (Closes: #152588) + * Added ia64 to the list of arches who support the native code compilers. + (Closes: #157110) + * Removed .opt man pages from the list of files of the ocaml package. + (Closes: #152237) + * Camlp4 -where now gives the correct path. (Closes: #155701) + * Now include a default /usr/lib/ocaml/ld.conf file in the ocaml-base + package. (Closes: #156042, #155428) + * Updated ocaml_packaging_policy and README.Debian file. + * ocaml-ldconf now handles directory only lines in /etc/ocaml/ld.donf as the + add command. + + -- Sven Luther Tue, 20 Aug 2002 15:36:45 +0200 + +ocaml (3.05-1) unstable; urgency=high + + * New upstream release. + * Now /usr/lib/ocaml/stublibs is the default path for storing dynamic stub + libraries. We still keep the ocaml-ldconf/dh_ocamlld stuff on, as it may + still be usefull and for backward compatibility, but we will slowly + migrate all library packages to use the new path. + * Some updates to the policy file (standard stublib path, findlib, ...) + * Now ship labltk examples and README file. + * This upstream release fixes the bytecode compilers for powerpc (the same + as the patch applied in 3.04-9) and ia64. + + -- Sven Luther Tue, 30 Jul 2002 10:44:39 +0200 + +ocaml (3.04-13) unstable; urgency=high + + * Modified ocaml-ldconf.ml so it no longer reverse the path list + (contributed from Denis Barbier ). + + -- Sven Luther Thu, 13 Jun 2002 17:15:12 +0200 + +ocaml (3.04-12) unstable; urgency=high + + * Link the .opt manpages by hand in postinst/prerm scripts, until debhelper + is fixed to support .so files pointing to manpages from other binary + packages. (Closes: Bug#138642) + + -- Sven Luther Wed, 24 Apr 2002 11:25:17 +0200 + +ocaml (3.04-11) unstable; urgency=high + + * Now install also the emacs caml-help.el file. + * Removed the "\C-c\C-b" addition bindings, since they cause conflicts with + xemacs21 (Closes: Bug#139812) (taken from upsteream CVS). + + -- Sven Luther Fri, 19 Apr 2002 19:29:13 +0200 + +ocaml (3.04-10) unstable; urgency=high + + * Fixed the bad /usr/lib/ocaml/ld.conf file permissions (Closes: Bug#138495). + * Added the ocaml-ldconf.1 manpage. + * Hopefully fixed the dangling camlp4r.opt.1 and camlp4o.opt.1 symlinks + (Closes: Bug#138642). + + -- Sven Luther Tue, 19 Mar 2002 09:12:59 +0100 + +ocaml (3.04-9) unstable; urgency=high + + * Applied the correct powerpc patch from upstream (Closes: Bug#134113) + + -- Sven Luther Tue, 19 Feb 2002 18:11:56 +0100 + +ocaml (3.04-8) unstable; urgency=high + + * Removed the not working ppc patch and replaced it by the one from + upstream's CVS (hope it works) (Closes: Bug#134113) + * Fixed ocaml-ldconf so it would work even if the files did not exist, and + added two of the ld.conf files as conffiles (not /usr/lib/ocaml/ld.conf, + which is a install time generated package). + * Renamed the include files again to /usr/include/caml, as it breaks things + otherwise. + + -- Sven Luther Mon, 18 Feb 2002 11:30:35 +0100 + +ocaml (3.04-7) unstable; urgency=high + + * Fixed the emacs problem (Closes: Bug#132955) + * Fixed the dh_ocamlld execution problem (Closes: Bug#132959) + + -- Sven Luther Mon, 11 Feb 2002 17:35:52 +0100 + +ocaml (3.04-6) unstable; urgency=low + + * Added ocaml-ldconf and ld.conf handling. + * Added a ocaml_packaging_policy file. + * Fixed the emacs problem, hope it works. + * Added a symlink from /usr/lib/ocaml/caml to /usr/include/ocaml + * Fixed the ocaml-native-compilers description problem. + + -- Sven Luther Thu, 7 Feb 2002 12:19:10 +0100 + +ocaml (3.04-5) unstable; urgency=low + + * Split ocamlc.opt, ocamlopt.opt and ocamllex.opt into the + ocaml-native-compilers package. + * The ocaml-best-compilers virtual package is provided by + ocaml-native-compilers if it is built and by ocaml if not. + * Added an ocaml-source package containing the source to ocaml for packages + which need them as build-depends. + * Applied Ian Zimmerman's caml.el patch. (Closes:#129650,#130301) + + + -- Sven Luther Wed, 16 Jan 2002 18:08:39 +0100 + +ocaml (3.04-4) unstable; urgency=low + + * fixed emacs support and added ocamltags. + + -- Sven Luther Wed, 16 Jan 2002 16:50:12 +0100 + +ocaml (3.04-3) unstable; urgency=low + + * small patch to build on powerpc. + * don't build opt.opt on ia64. + * ocaml now doesn't include the ocaml-base stuff anymore but depends on it. + + -- Sven Luther Wed, 9 Jan 2002 17:34:00 +0100 + +ocaml (3.04-2) unstable; urgency=low + + * added runtime dynamic libraries to ocaml-base. + * other small fixes. + + -- Sven Luther Thu, 20 Dec 2001 09:35:21 +0100 + +ocaml (3.04-1) unstable; urgency=low + + * New upstream release. + + -- Sven Luther Fri, 14 Dec 2001 12:44:03 +0100 + +ocaml (3.02-3) unstable; urgency=low + + * alpha lacked the -mieee flag to gcc, so the fpu exceptions were not caught + correctly. + + -- Sven Luther Tue, 6 Nov 2001 12:46:52 +0100 + +ocaml (3.02-2) unstable; urgency=low + + * Build with gcc. + + -- Sven Luther Thu, 9 Aug 2001 14:11:19 +0200 + +ocaml (3.02-1) unstable; urgency=low + + * New upstream release. + * This is mostly a upstream bugfix release, including fixes to the arm + native code compiler and the config stuff for the parisc port. + + -- Sven Luther Mon, 30 Jul 2001 17:20:38 +0200 + +ocaml (3.01-6.1) unstable; urgency=low + + * copy in new config.{guess,sub} to get support for new architectures. + Closes: #94755. + + -- LaMont Jones Mon, 9 Jul 2001 21:39:34 -0600 + +ocaml (3.01-6) unstable; urgency=low + + * Fix from Xavier Leroy for the arm native code compiler bug. + + -- Sven Luther Fri, 6 Apr 2001 15:34:26 +0200 + +ocaml (3.01-5.2) unstable; urgency=low + + * Adds menu file, Closes: #83490. + + -- Sven Luther Wed, 4 Apr 2001 15:00:53 +0200 + +ocaml (3.01-5.1) unstable; urgency=low + + * Fixes configure script to automatically find tcl/tk 8.3. This will + enable us to build this package on potato also. + + -- Sven Luther Tue, 3 Apr 2001 13:12:27 +0200 + +ocaml (3.01-5) unstable; urgency=low + + * Disabled native code support on the arm arch, waiting for an upstream fix + on it. + * Removed Build dependency on emacsen, since it is no longer needed at + build time, but at install time. + + -- Sven Luther Thu, 29 Mar 2001 13:03:43 +0200 + +ocaml (3.01-4) unstable; urgency=low + + * fixes arm build. Fixes: #90089. + + -- Sven Luther Thu, 22 Mar 2001 15:37:30 +0100 + +ocaml (3.01-3) unstable; urgency=low + + * clean now trully brings the package to it's previous state. + * added emacs patch from Ralf Treineim. + + -- Sven Luther Thu, 22 Mar 2001 09:57:32 +0100 + +ocaml (3.01-2) unstable; urgency=low + + * Fix missing dbm and labltk builds. + + -- Sven Luther Fri, 16 Mar 2001 10:49:02 +0100 + +ocaml (3.01-1) unstable; urgency=low + + * New upstream release. + + -- Sven Luther Fri, 9 Mar 2001 16:25:19 +0100 + +ocaml (3.00-6) unstable; urgency=low + + * Added some suggest field, Fixes: #85280. + + -- Sven Luther Fri, 9 Feb 2001 09:40:14 +0100 + +ocaml (3.00-5) unstable; urgency=low + + * Erm, ... apparently, strip is still not behaving itself correctly, it + removed the bytecode from the ocamlbrowser executable :((( + Fixed it by don't stripping ocamlbrowser and ocamldebug manually. + + -- Sven Luther Mon, 5 Feb 2001 14:50:54 +0100 + +ocaml (3.00-4) unstable; urgency=low + + * added debhelper to the Build-depends :(((( + + -- Sven Luther Tue, 10 Jan 2001 18:25:32 +0100 + +ocaml (3.00-3) unstable; urgency=low + + * had to rebuild due to the dpkg 1.8.1.1 bug :((( + + -- Sven Luther Tue, 9 Jan 2001 15:45:32 +0100 + +ocaml (3.00-2) unstable; urgency=low + + * Updated to standard version 3.2.1.0. + * Added build dependencies, hope i didn't miss them. + * Needed rebuilt on alpha anyway, since the tcl/tk developpment packages + where missing when it got built, now, the build dependencies should handle + this correctly. + * Fixes #81337. (bcopy redefinition bug due to new libc). Thanks for + Paul Slootman for providing a patch to this one. + * Fixes #69724 (i hope). Now that strip doesn't destroy files it doesn't + know anything about, we can strip executables safely again. + + -- Sven Luther Mon, 8 Jan 2001 14:34:26 +0100 + +ocaml (3.00-1) unstable; urgency=low + + * new upstream release. + + -- Sven Luther Thu, 27 Apr 2000 00:22:42 +0200 + +ocaml3 (2.99-1) unstable; urgency=low + + * New upstream release. This is the beta version of upcomming ocaml 3.0. + * This package will conflict with ocaml 2.04 for now, when ocaml 3.0 + comes out, it will replace ocaml 2.04 also. Don't know if we will need + a ocaml 2.04 compatibility package, i guess not, but if needed, we could + do it. + + -- Sven Luther Mon, 6 Mar 2000 13:03:17 +0100 + +ocaml (2.04-6) frozen unstable; urgency=low + + * emacs mode was missing, added it again. + + -- Sven Luther Tue, 29 Feb 2000 14:37:35 +0100 + +ocaml (2.04-5) frozen unstable; urgency=low + + * Fix the lintian error about LGPL link pointing to old place. + + -- Sven Luther Fri, 4 Feb 2000 16:14:27 +0100 + +ocaml (2.04-4) unstable; urgency=low + + * Added a libncurses5-dev dependency, as ocamlopt needs it to compile + programs, not sure if a depends dependency is the right way to do things + though. + + -- Sven Luther Fri, 4 Feb 2000 15:29:23 +0100 + +ocaml (2.04-3) unstable; urgency=low + + * Don't strip binaries, as stripping of ocaml binaries is not supported. + * Closes Bug #49637. + + -- Sven Luther Tue, 25 Jan 2000 17:14:53 +0100 + +ocaml (2.04-2) unstable; urgency=low + + * Disables m68k nativ code compiler. + * Closes Bug #52130. + + -- Sven Luther Thu, 9 Dec 1999 10:20:06 +0100 + +ocaml (2.04-1) unstable; urgency=low + + * New upstream release. + + -- Sven Luther Tue, 30 Nov 1999 14:46:37 +0100 + +ocaml (2.03-1) unstable; urgency=low + + * New upstream release. + * License change (QPL & LGPL mix), can go in main now. + * configuration patch seems to be included in main. + + -- Sven Luther Mon, 22 Nov 1999 11:40:28 +0100 + +ocaml (2.02-9) unstable; urgency=low + + * fixed thread support for native code stuff, + using systhread instead of thread. + + -- Sven Luther Thu, 18 Nov 1999 14:55:46 +0100 + +ocaml (2.02-8) unstable; urgency=low + + * fixed bad suggests line for ocaml-doc. + + -- Sven Luther Mon, 8 Nov 1999 12:26:47 +0100 + +ocaml (2.02-7) unstable; urgency=low + + * Added a man page for ocamldebug. + * seems FHS compliant. + + -- Sven Luther Sat, 9 Oct 1999 14:20:25 +0200 + +ocaml (2.02-6) unstable; urgency=low + + * Adding FHS-compliance. + + -- Sven Luther Sat, 9 Oct 1999 12:05:47 +0200 + +ocaml (2.02-5) unstable; urgency=low + + * Removed again the m68k native code compiler, since it was buggy. + * Fixed a bug in the thread library. + + -- Sven Luther Wed, 30 Jun 1999 09:13:00 +0200 + +ocaml (2.02-4) unstable; urgency=low + + * Fixed a last bug with the m68k native code compiler. + + -- Sven Luther Sat, 29 May 1999 20:43:41 +0200 + +ocaml (2.02-3) unstable; urgency=low + + * Enabled m68k native code compiler. + + -- Sven Luther Fri, 7 May 1999 10:24:34 +0200 + +ocaml (2.02-2) unstable; urgency=low + + * Fixed m68k build, at least i hope so, didn't test it though ... + + * Fixed emacs mode build and install. + + -- Sven Luther Thu, 29 Apr 1999 20:05:35 +0100 + +ocaml (2.02-1) unstable; urgency=low + + * New upstream release. + + -- Sven Luther Mon, 08 Mar 1999 17:50:35 +0100 + +ocaml (2.01-5) unstable; urgency=low + + * fixed the ocamlmktop bug, by removing the $PREFIX stuff from + tools/Makefile. It is not needed there. + + -- Sven Luther Wed, 26 Feb 1999 07:40:35 +0100 + +ocaml (2.01-4) unstable; urgency=low + + * fixed some stuff in the $PREFIX Makefile changes. + + -- Sven Luther Tue, 16 Feb 1999 19:55:35 +0100 + +ocaml (2.01-3) unstable; urgency=low + + * added some Makefile stuff to help build packages when native code + compiler is not supported. + * html documentation is now another package (ocaml-doc) together with + documentation in another format. + + -- Sven Luther Tue, 16 Feb 1999 19:55:35 +0100 + +ocaml (2.01-2) unstable; urgency=low + + * Removed the mli2html patch again, conforming to the wishes of + the upstream author. Due to licensing problems, if we want it, + we have to have autorization of INRIA. Anyway, the mli2html patch + was buggy, creating different .mli files if -html was used or not. + * Fixed the configure script and Makefile so that you can use -prefix + option and change the install prefix by changing the PREFIX variable. + + -- Sven Luther Tue, 16 Feb 1999 10:31:35 +0100 + +ocaml (2.01-1) unstable; urgency=low + + * New upstream release. + + -- Sven Luther Tue, 11 Feb 1999 13:51:35 +0100 + +ocaml (2.00-2) unstable; urgency=low + + * added mli2html patch to create html documents from .mli files + + -- Sven Luther Sun, 13 Sep 1998 09:08:05 +0200 + +ocaml (2.00-1) unstable; urgency=low + + * new upstream source + + -- Sven Luther Mon, 31 Aug 1998 10:08:05 +0200 + +ocaml (1.07-1) unstable; urgency=low + + * new upstream source + + -- Sven Luther Sat, 21 Feb 1998 10:36:26 +0800 + +ocaml (1.05-2) unstable; urgency=low + + * Build with libc6 + + -- Christophe Le Bars Sun, 28 Sep 1997 16:45:02 +0200 + +ocaml (1.05-1) non-free; urgency=low + + * New upstream source + + -- Christophe Le Bars Fri, 22 Aug 1997 23:01:51 +0200 + +ocaml (1.03-2) frozen-non-free non-free; urgency=low + + * Added ocamlmktop manpage (Bug#6264) + + -- Christophe Le Bars Tue, 22 Apr 1997 23:44:12 +0200 + +ocaml (1.03-1) non-free; urgency=low + + * New upstream source + * Added html reference manual + + -- Christophe Le Bars Fri, 1 Nov 1996 15:51:00 +0100 + +ocaml (1.02-1) non-free; urgency=low + + * Initial release + * Added Debian GNU/Linux Linux package maintenance system files + + -- Christophe Le Bars Fri, 11 Oct 1996 22:25:01 +0200 + --- ocaml-3.10.0.orig/debian/ocaml-md5sums/feeding.sh +++ ocaml-3.10.0/debian/ocaml-md5sums/feeding.sh @@ -0,0 +1,40 @@ +#!/bin/sh +# Copyright (C) 2005, Stefano Zacchiroli +# +# This is free software, you can redistribute it and/or modify it under the +# terms of the GNU General Public License version 2 as published by the Free +# Software Foundation. + +pkg="$1" +stdlibdir="$2" +version="$3" +rootdir="$4" +SORT="sort -k 2" +if [ -x ./ocaml-md5sums.opt ]; then + OCAML_MD5SUMS="./ocaml-md5sums.opt" +elif [ -x ./ocaml-md5sums ]; then + OCAML_MD5SUMS="./ocaml-md5sums" +else + echo "Can't find ocaml-md5sums{.opt,}, aborting." + exit 2 +fi +export OCAMLOBJINFO="../../boot/ocamlrun ../../tools/objinfo" +COMPUTE="$OCAML_MD5SUMS compute --package $pkg-$version" +if [ -z "$pkg" ] || [ -z "$stdlibdir" ] || [ -z "$version" ] || [ -z "$rootdir" ]; then + echo "Usage: feeding.sh " + exit 1 +fi +case "$pkg" in + ocaml-compiler-libs) + find $rootdir -name "*.cm[ao]" | $COMPUTE | $SORT + ;; + *) + RUNTIME="`echo $pkg | sed 's/ocaml/ocaml-base/'`-$version" + find $rootdir -name "*.cm[ao]" | + grep -v $stdlibdir/ocamldoc/ | + grep -v $stdlibdir/camlp4/ | + $COMPUTE --runtime $RUNTIME | + $SORT + ;; +esac + --- ocaml-3.10.0.orig/debian/ocaml-md5sums/ocaml-md5sums.ml.in +++ ocaml-3.10.0/debian/ocaml-md5sums/ocaml-md5sums.ml.in @@ -0,0 +1,317 @@ +(* + * ocaml-md5sums - use and maintain debian registry of ocaml md5sums + * + * Copyright (C) 2005, Stefano Zacchiroli + * + * Created: Wed, 06 Apr 2005 16:55:39 +0200 zack + * Last-Modified: Fri, 12 Aug 2005 10:28:10 +0200 zack + * + * This is free software, you can redistribute it and/or modify it under the + * terms of the GNU General Public License version 2 as published by the Free + * Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more + * details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., 59 Temple + * Place, Suite 330, Boston, MA 02111-1307 USA + *) + +open Printf + +(** {2 Constants} *) + +let my_version = "@VERSION@" +let md5sums_dir = "@MD5SUMS_DIR@" +let md5sums_index = "MD5SUMS" +let md5sums_ext = ".md5sums" +let registry_file = sprintf "%s/%s" md5sums_dir md5sums_index + +(** {2 System requirements} *) + +let ocamlobjinfo = + try (* needed at ocaml package build time, when *) + Sys.getenv "OCAMLOBJINFO" (* ocamlobjinfo is not yet installed *) + with Not_found -> "/usr/bin/ocamlobjinfo" + +(** {2 Regular expressions, for parsing purposes} *) + +let unit_name_line_RE = + Str.regexp "^[ \t]*Unit[ \t]+name[ \t]*:[ \t]*\\([a-zA-Z0-9_]+\\)[ \t]*$" +let md5sum_line_RE = + Str.regexp "^[ \t]*\\([a-f0-9]+\\)[ \t]+\\([a-zA-Z0-9_]+\\)[ \t]*$" +let blanks_RE = Str.regexp "[ \t]+" +let ignorable_line_RE = Str.regexp "^[ \t]*\\(#.*\\)?" +let md5sums_ext_RE = Str.regexp (sprintf "^.*%s$" (Str.quote md5sums_ext)) + +(** {2 Argument parsing} *) + +let objects = ref [] +let dev_dep = ref "" +let runtime_dep = ref "-" +let dep_version = ref "-" +let verbosity = ref 0 +let dump_info_to = ref "" +let load_info_from = ref "" +let action = ref None + +let usage_msg = + "Use and maintain system-wide ocaml md5sums registry\n" + ^ "Usage:\n" + ^ " ocaml-md5sum compute --package [option ...] file ...\n" + ^ " ocaml-md5sum dep [option ...] file ...\n" + ^ " ocaml-md5sum update [option ...]\n" + ^ "Options:" +let cmdline_spec = [ + "--package", Arg.Set_string dev_dep, + "set package name for development dependency"; + "--runtime", Arg.Set_string runtime_dep, + "set package name for runtime dependency"; + "--version", Arg.Set_string dep_version, + "set package version for dependencies"; + "--dump-info", Arg.Set_string dump_info_to, + "dump ocamlobjinfo to file"; + "--load-info", Arg.Set_string load_info_from, + "restore ocamlobjinfo from file"; + "-v", Arg.Unit (fun () -> incr verbosity), "increase verbosity"; + "--my-version", Arg.Unit (fun () -> print_endline my_version ; exit 0), + "print ocaml-md5sum version and exit"; +] +let die_usage () = + Arg.usage cmdline_spec usage_msg; + exit 1 + +(** {2 Helpers} *) + +let error msg = prerr_endline ("Error: " ^ msg); exit 2 +let warning msg = prerr_endline ("Warning: " ^ msg) +let info ?(level = 1) msg = + if !verbosity >= level then prerr_endline ("Info: " ^ msg) +let iter_in f ic = + try while true do f (input_line ic) done with End_of_file -> () +let iter_file f fname = + let ic = open_in fname in + iter_in f ic; + close_in ic +let iter_table f = iter_file (fun line -> f (Str.split blanks_RE line)) + +module Strings = Set.Make (String) + +(** read until the end of standard input + * @return the list of lines read from stdin, without trailing "\n" *) +let read_stdin () = + let lines = ref [] in + iter_in (fun s -> lines := s :: !lines) stdin; + List.rev !lines + +let is_empty fname = (Unix.stat fname).Unix.st_size = 0 +let is_regular fname = (Unix.stat fname).Unix.st_kind = Unix.S_REG +let is_dir fname = (Unix.stat fname).Unix.st_kind = Unix.S_DIR + +(** {2 Auxiliary functions} *) + +(** loads info previously stored in a file using --dump-info and stores them in + * two hashtables + * @param defined hashtable for md5sums of defined units + * @param imported hashtable for md5sums of imported units + * @param fname file where the dump has been saved *) +let load_info ~defined ~imported fname = + info ("loading ocamlobjinfo information from " ^ fname); + let lineno = ref 0 in + iter_table + (fun fields -> + incr lineno; + match fields with + | [ "defined"; md5; unit_name ] -> + info ~level:2 (String.concat " " fields); + Hashtbl.replace defined unit_name md5 + | [ "imported"; md5; unit_name ] -> + info ~level:2 (String.concat " " fields); + Hashtbl.replace imported unit_name md5 + | _ -> + warning (sprintf "ignoring dump entry (%s, line %d)" fname !lineno)) + fname + +(** dumps ocamlobjinfo to file + * @param defined hashtable containing md5sums of defined units + * @param imported hashtable containing md5sums of imported units + * @param fname file where to dump ocamlobjinfo *) +let dump_info ~defined ~imported fname = + info ("dumping ocamlobjinfo information to " ^ fname); + let oc = open_out fname in + Hashtbl.iter + (fun unit_name md5sum -> fprintf oc "defined %s %s\n" md5sum unit_name) + defined; + Hashtbl.iter + (fun unit_name md5sum -> fprintf oc "imported %s %s\n" md5sum unit_name) + imported; + close_out oc + +(** @param fnames list of *.cm[ao] file names + * @return a pair of hash tables . Both tables + * contains mappings . defined_units lists units defined in + * given files while imported_units imported ones *) +let unit_info fnames = + let (defined, imported) = (Hashtbl.create 1024, Hashtbl.create 1024) in + if !load_info_from <> "" then + load_info ~defined ~imported !load_info_from; + List.iter + (fun fname -> + info ("getting unit info from " ^ fname); + let current_unit = ref "" in + let ic = Unix.open_process_in (sprintf "%s %s" ocamlobjinfo fname) in + iter_in + (fun line -> + if Str.string_match unit_name_line_RE line 0 then + current_unit := Str.matched_group 1 line + else if Str.string_match md5sum_line_RE line 0 then + let md5sum = Str.matched_group 1 line in + let unit_name = Str.matched_group 2 line in + if unit_name = !current_unit then begin (* defined unit *) + let dump_entry = sprintf "defined %s %s" md5sum unit_name in + info ~level:2 dump_entry; + Hashtbl.replace defined unit_name md5sum + end else begin (* imported unit *) + let dump_entry = sprintf "imported %s %s" md5sum unit_name in + info ~level:2 dump_entry; + Hashtbl.replace imported unit_name md5sum + end) + ic; + close_in ic) + fnames; + Hashtbl.iter (* imported := imported - defined *) + (fun unit_name _ -> Hashtbl.remove imported unit_name) + defined; + if !dump_info_to <> "" then + dump_info ~defined ~imported !dump_info_to; + (defined, imported) + +(** pretty print a registry entry sending output to an output channel *) +let pp_entry outchan ~md5sum ~unit_name ~dev_dep ~runtime_dep ~dep_version = + fprintf outchan "%s %s %s %s %s\n" + md5sum unit_name dev_dep runtime_dep dep_version + +(** iter a function over the entries of a registry file + * @param f function to be executed for each entries, it takes 4 labeled + * arguments: ~md5sum ~unit_name ~package ?version + * @param fname file containining the registry *) +let iter_registry f fname = + info ("processing registry " ^ fname); + let lineno = ref 0 in + iter_file + (fun line -> + incr lineno; + (match Str.split blanks_RE line with + | [ md5sum; unit_name; dev_dep; runtime_dep; dep_version ] -> + f ~md5sum ~unit_name ~dev_dep ~runtime_dep ~dep_version + | _ when Str.string_match ignorable_line_RE line 0 -> () + | _ -> + warning (sprintf "ignoring registry entry (%s, line %d)" + fname !lineno))) + fname + +(** @param fname file name of the registry file, if fname does not exists an + * empty registry will be returned + * @return an hashtbl mapping pairs to pairs . E.g. ("Foo_bar", "74be7fa4320ebd9415f1c7cfc04c2d7b") -> + * ("libfoo-ocaml-dev", ">= 1.2.3-4") *) +let parse_registry fname = + let registry = Hashtbl.create 1024 in + if Sys.file_exists fname then + iter_registry + (fun ~md5sum ~unit_name ~dev_dep ~runtime_dep ~dep_version -> + Hashtbl.replace registry (unit_name, md5sum) + (dev_dep, runtime_dep, dep_version)) + fname; + registry + +(** {2 Main functions, one for each command line action} *) + +(** compute registry entry for a set of ocaml objects *) +let compute dev_dep runtime_dep dep_version objects () = + let defined, _ = unit_info objects in + Hashtbl.iter + (fun unit_name md5sum -> + pp_entry stdout ~md5sum ~unit_name ~dev_dep ~runtime_dep ~dep_version) + defined + +(** compute package dependencies for a set of ocaml objects *) +let dep objects () = + let _, imported = unit_info objects in + let registry = parse_registry registry_file in + let deps = + Hashtbl.fold + (fun unit_name md5sum deps -> + try + let (dev_dep, runtime_dep, dep_version) = + Hashtbl.find registry (unit_name, md5sum) + in + Strings.add (sprintf "%s %s %s" dev_dep runtime_dep dep_version) deps + with Not_found -> deps) + imported + Strings.empty + in + Strings.iter print_endline deps + +(** update debian registry of ocaml md5sums *) +let update () = + info (sprintf "updating registry %s using info from %s/" + registry_file md5sums_dir); + let keys = Hashtbl.create 1024 in (* history of seen registry keys *) + if Sys.file_exists md5sums_dir && is_dir md5sums_dir then begin + let dir = Unix.opendir md5sums_dir in + let registry = open_out registry_file in + try + while true do + let fname = sprintf "%s/%s" md5sums_dir (Unix.readdir dir) in + if (Str.string_match md5sums_ext_RE fname 0) && is_regular fname then + iter_registry + (fun ~md5sum ~unit_name ~dev_dep ~runtime_dep ~dep_version -> + if Hashtbl.mem keys (unit_name, md5sum) then + error (sprintf "duplicate entry %s %s in registry" unit_name + md5sum); + Hashtbl.replace keys (unit_name, md5sum) (); + pp_entry registry ~md5sum ~unit_name ~dev_dep ~runtime_dep + ~dep_version) + fname + done + with End_of_file -> + Unix.closedir dir; + close_out registry; + if is_empty registry_file then Sys.remove registry_file + end else + warning (sprintf "%s/ does not exist or is not a directory, not updating" + md5sums_dir) + +(** {2 Main} *) + +(** main *) +let main () = + Arg.parse cmdline_spec + (fun s -> + if !action = None then + action := Some s + else + objects := s :: !objects) + usage_msg; + match !action with + | Some "update" -> update () + | Some action -> + let objects = + match !objects with + | [] when !load_info_from = "" -> read_stdin () + | objects -> List.rev objects + in + (match action with + | "compute" -> + if !dev_dep = "" then die_usage (); + compute !dev_dep !runtime_dep !dep_version objects () + | "dep" -> dep objects () + | _ -> die_usage ()) + | None -> die_usage () + +let _ = Unix.handle_unix_error main () + --- ocaml-3.10.0.orig/debian/ocaml-md5sums/configure.in +++ ocaml-3.10.0/debian/ocaml-md5sums/configure.in @@ -0,0 +1,15 @@ +#!/bin/sh +VERSION="#OcamlABI#" +DEFAULT="/var/lib/ocaml/#OcamlABI#/md5sums" +if [ -z "$1" ]; then + echo "No dir provided, using default: $DEFAULT" + echo "You can override it with: ./configure [ md5sums_dir ]" + MD5SUMS_DIR="$DEFAULT" +else + MD5SUMS_DIR="$1" +fi +echo -n "Creating ocaml-md5sums.ml ... " +sed -e "s:@MD5SUMS_DIR@:$MD5SUMS_DIR:" \ + -e "s:@VERSION@:$VERSION:" \ + < ocaml-md5sums.ml.in > ocaml-md5sums.ml +echo "done." --- ocaml-3.10.0.orig/debian/ocaml-md5sums/Makefile +++ ocaml-3.10.0/debian/ocaml-md5sums/Makefile @@ -0,0 +1,30 @@ + +DESTDIR = /usr/local/bin +OFLAGS = -nostdlib -I ../../stdlib -I ../../otherlibs/unix -I ../../otherlibs/str +OCAMLC = ../../boot/ocamlrun ../../ocamlc $(OFLAGS) +OCAMLOPT = ../../boot/ocamlrun ../../ocamlopt $(OFLAGS) +OCAML_LIBS = unix str +NAME = ocaml-md5sums +BYTE = $(NAME) +OPT = $(NAME).opt + +all: $(BYTE) +opt: $(OPT) +install: + if [ -x "$(OPT)" ]; then \ + cp -a "$(OPT)" $(DESTDIR)/$(NAME); \ + elif [ -x "$(BYTE)" ]; then \ + cp -a "$(BYTE)" $(DESTDIR)/$(NAME); \ + else \ + echo "Nothing to be installed, aborting."; \ + exit 2; \ + fi + +$(BYTE): $(NAME).ml + $(OCAMLC) $(patsubst %,%.cma,$(OCAML_LIBS)) -o $@ $< +$(OPT): $(NAME).ml + $(OCAMLOPT) $(patsubst %,%.cmxa,$(OCAML_LIBS)) -o $@ $< + +clean: + rm -f ocaml-md5sums ocaml-md5sums.opt *.cm[aiox] *.cmxa *.[ao] + --- ocaml-3.10.0.orig/debian/ocaml-md5sums/ocaml-md5sums.1 +++ ocaml-3.10.0/debian/ocaml-md5sums/ocaml-md5sums.1 @@ -0,0 +1,48 @@ +.TH OCAML-MD5SUMS "1" "June 2007" "ocaml-md5sums 3.10.0" "User Commands" +.SH NAME +ocaml-md5sums \- use and maintain system-wide OCaml md5sums registry +.SH SYNOPSIS +.B ocaml-md5sums compute +\fB\-\-package\fR +[\fIoption\ ...\fR] \fIfile ...\fR +.br +.B ocaml-md5sums dep +[\fIoption\ ...\fR] \fIfile ...\fR +.br +.B ocaml-md5sums update +[\fIoption\ ...\fR] +.SH DESCRIPTION +ocaml-md5sums is an administrative tool for maintaining the system-wide +registry of md5sums of OCaml modules. For each OCaml object registered, the +registry contains information about which modules (compilation unit) are +contained and their md5sums. +.SH OPTIONS +.HP +\fB\-\-package\fR set package name for development dependency +.HP +\fB\-\-runtime\fR set package name for runtime dependency +.HP +\fB\-\-version\fR set package version for dependencies +.HP +\fB\-\-dump\-info\fR dump ocamlobjinfo to file +.HP +\fB\-\-load\-info\fR restore ocamlobjinfo from file +.HP +\fB\-v\fR increase verbosity +.HP +\fB\-\-my\-version\fR print ocaml\-md5sum version and exit +.TP +\fB\-help\fR +Display this list of options +.TP +\fB\-\-help\fR +Display this list of options +.SH "SEE ALSO" +.BR ocamlc(1), +.BR ocaml(1). +.SH AUTHOR +ocaml-md5sums is Copyright Stefano Zacchiroli and is distributed under the +terms of the GNU General Public License. +.PP +This manual page was written by Stefano Zacchiroli , +for the Debian project (but may be used by others). --- ocaml-3.10.0.orig/debian/ocaml-base-nox.README.Debian +++ ocaml-3.10.0/debian/ocaml-base-nox.README.Debian @@ -0,0 +1,56 @@ +ocaml for Debian +---------------- + + 1) The ocaml package has been split into different binary packages : + + o ocaml : contains the full ocaml suite + o ocaml-nox : the full suite except for the graphics(Tk) modules + o ocaml-base : contains the rutime stuff (ocamlrun + dlls + Tk) + o ocaml-base-nox : contains the rutime stuff (ocamlrun + dlls - Tk) + + o ocaml-native-compilers : contains the native built part of the ocaml suite + (ocamlc.opt, ocamlopt.opt, ocamllex.opt, camlp4o.opt and camlp4r.opt) + o ocaml-compiler-libs : contains several modules used internally by + the ocaml compilers. They are not needed for normal ocaml + development, but may be helpful in the development of certain + applications. + o ocaml-source : contains the full ocaml source for the (few) package which + need them at build time or for personal use (it should _not_ be used to + build ocam litself). + + o ocaml-mode: contains a major mode for editing OCaml files in Emacs. + + 2) The caml include files are found under /usr/lib/ocaml//caml. + A symlink is provided from /usr/include/caml for convenience. If + /usr/include/caml was previously a directory, for whatever reason, a warning + will be isued and the file moved to /usr/include/caml.bad. This can be + safely erased later on. + + 3) User installed stuff should not go under /usr/lib/ocaml/, + but rather under /usr/local/lib/ocaml/. + I will take no responsability for people who break this rule and mess things + up. + + 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. As of ocaml 3.08, ocaml-ldconf is now deprecated + and not available anymore. + Notice that user installed dll.so files should go into + /usr/local/lib/ocaml//stublibs which is searched before + /usr/lib/ocaml//stublibs. + + -- Jerome Marant , Sat Aug 20 11:51:32 2005 + +ocamldoc's LaTeX output +----------------------- + +ocamldoc can generated documentation in LaTeX format which can be later on +compiled using a LaTeX environment. The LaTeX sources generated by ocamldoc +exploits the fullpage.sty style, which is not included in a default texlive +installation (the Debian LaTeX environment of choice). + +In order to be able to compile ocamldoc generated LaTeX sources you will need +to install the "texlive-latex-extra" package. + + -- Stefano Zacchiroli Sun, 02 Sep 2007 18:22:14 +0200 --- ocaml-3.10.0.orig/debian/camlp4.dirs.in +++ ocaml-3.10.0/debian/camlp4.dirs.in @@ -0,0 +1,2 @@ +usr/bin +usr/lib/ocaml/#OcamlABI#/camlp4 --- ocaml-3.10.0.orig/debian/ocaml.postrm +++ ocaml-3.10.0/debian/ocaml.postrm @@ -0,0 +1,9 @@ +#!/bin/sh -e + +if [ "$1" = "remove" ]; then + if [ -x /usr/bin/ocaml-md5sums ]; then + /usr/bin/ocaml-md5sums update + fi +fi + +#DEBHELPER# --- ocaml-3.10.0.orig/debian/ocaml-nox.postrm +++ ocaml-3.10.0/debian/ocaml-nox.postrm @@ -0,0 +1,11 @@ +#!/bin/sh -e + +rm -f /usr/include/caml + +if [ "$1" = "remove" ]; then + if [ -x /usr/bin/ocaml-md5sums ]; then + /usr/bin/ocaml-md5sums update + fi +fi + +#DEBHELPER# --- ocaml-3.10.0.orig/debian/copyright +++ ocaml-3.10.0/debian/copyright @@ -0,0 +1,167 @@ +This package was debianized by Sven Luther on +Fri, 14 Dec 2001 12:44:03 +0100. + +It was downloaded from: + + http://caml.inria.fr/pub/distrib/ocaml-3.10/ + +Upstream Authors: Xavier Leroy, Jerome Vouillon and Damien Doligez +Upstream Author for the camlp4 part: Daniel de Rauglaudre + +Copyright 1996-2006 Institut National de Recherche en Informatique et en +Automatique. +Emacs mode copyright 1996-1998 Ian T Zimmerman . +Tcl/tk binding copyright 1999-2002 Institut National de Recherche en +Informatique et en Automatique and Kyoto University. + +In the following, "the Library" refers to all files marked "Copyright +INRIA" in the following directories and their sub-directories: + + asmrun, byterun, camlp4, config, otherlibs, stdlib, win32caml + +and "the Compiler" refers to all files marked "Copyright INRIA" in the +following directories and their sub-directories: + + asmcomp, boot, bytecomp, debugger, driver, lex, ocamldoc, parsing, + tools, toplevel, typing, utils, yacc + +and the "emacs bindings" refer to all files marked "Copyright INRIA" in +the following directory: + + emacs + +The Compiler is distributed under the terms of the Q Public License +version 1.0 with a change to choice of law (included below). + +The Library is distributed under the terms of the GNU Library General +Public License version 2 (found in /usr/share/common-licenses/LGPL-2 +on debian systems). + +The emacs bindings are distributed under the terms of the GNU General +Public License version 2 (found in /usr/share/common-licenses/GPL-2 +on debian systems). + +As a special exception to the Q Public Licence, you may develop +application programs, reusable components and other software items +that link with the original or modified versions of the Compiler +and are not made available to the general public, without any of the +additional requirements listed in clause 6c of the Q Public licence. + +As a special exception to the GNU Library General Public License, you +may link, statically or dynamically, a "work that uses the Library" +with a publicly distributed version of the Library to produce an +executable file containing portions of the Library, and distribute +that executable file under terms of your choice, without any of the +additional requirements listed in clause 6 of the GNU Library General +Public License. By "a publicly distributed version of the Library", +we mean either the unmodified Library as distributed by INRIA, or a +modified version of the Library that is distributed under the +conditions defined in clause 3 of the GNU Library General Public +License. This exception does not however invalidate any other reasons +why the executable file might be covered by the GNU Library General +Public License. + +---------------------------------------------------------------------- + + THE Q PUBLIC LICENSE version 1.0 + + Copyright (C) 1999 Troll Tech AS, Norway. + Everyone is permitted to copy and + distribute this license document. + +The intent of this license is to establish freedom to share and change +the software regulated by this license under the open source model. + +This license applies to any software containing a notice placed by the +copyright holder saying that it may be distributed under the terms of +the Q Public License version 1.0. Such software is herein referred to +as the Software. This license covers modification and distribution of +the Software, use of third-party application programs based on the +Software, and development of free software which uses the Software. + + Granted Rights + +1. You are granted the non-exclusive rights set forth in this license +provided you agree to and comply with any and all conditions in this +license. Whole or partial distribution of the Software, or software +items that link with the Software, in any form signifies acceptance of +this license. + +2. You may copy and distribute the Software in unmodified form +provided that the entire package, including - but not restricted to - +copyright, trademark notices and disclaimers, as released by the +initial developer of the Software, is distributed. + +3. You may make modifications to the Software and distribute your +modifications, in a form that is separate from the Software, such as +patches. The following restrictions apply to modifications: + + a. Modifications must not alter or remove any copyright notices + in the Software. + + b. When modifications to the Software are released under this + license, a non-exclusive royalty-free right is granted to the + initial developer of the Software to distribute your + modification in future versions of the Software provided such + versions remain available under these terms in addition to any + other license(s) of the initial developer. + +4. You may distribute machine-executable forms of the Software or +machine-executable forms of modified versions of the Software, +provided that you meet these restrictions: + + a. You must include this license document in the distribution. + + b. You must ensure that all recipients of the machine-executable + forms are also able to receive the complete machine-readable + source code to the distributed Software, including all + modifications, without any charge beyond the costs of data + transfer, and place prominent notices in the distribution + explaining this. + + c. You must ensure that all modifications included in the + machine-executable forms are available under the terms of this + license. + +5. You may use the original or modified versions of the Software to +compile, link and run application programs legally developed by you or +by others. + +6. You may develop application programs, reusable components and other +software items that link with the original or modified versions of the +Software. These items, when distributed, are subject to the following +requirements: + + a. You must ensure that all recipients of machine-executable + forms of these items are also able to receive and use the + complete machine-readable source code to the items without any + charge beyond the costs of data transfer. + + b. You must explicitly license all recipients of your items to + use and re-distribute original and modified versions of the + items in both machine-executable and source code forms. The + recipients must be able to do so without any charges whatsoever, + and they must be able to re-distribute to anyone they choose. + + c. If the items are not available to the general public, and the + initial developer of the Software requests a copy of the items, + then you must supply one. + + Limitations of Liability + +In no event shall the initial developers or copyright holders be +liable for any damages whatsoever, including - but not restricted to - +lost revenue or profits or other direct, indirect, special, incidental +or consequential damages, even if they have been advised of the +possibility of such damages, except to the extent invariable law, if +any, provides otherwise. + + No Warranty + +The Software and this license document are provided AS IS with NO +WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + + Choice of Law + +This license is governed by the Laws of France. --- ocaml-3.10.0.orig/debian/TODO.Debian +++ ocaml-3.10.0/debian/TODO.Debian @@ -0,0 +1,12 @@ +TODO list for ocaml 3.10.0 (and beyond ...) + +- lintian warnings + + lintian /home/srv/debian/pkg-ocaml-maint/packages/ocaml/build-area/ocaml_3.10.0-3_i386.changes + + W: ocaml-nox: script-not-executable ./usr/lib/ocaml/3.10.0/camlheader + W: ocaml-mode: binary-without-manpage usr/bin/ocamltags + E: ocaml-compiler-libs: copyright-should-refer-to-common-license-file-for-gpl + W: ocaml: binary-without-manpage usr/bin/labltk + W: ocaml: binary-without-manpage usr/bin/ocamlbrowser + --- ocaml-3.10.0.orig/debian/ocaml-base-nox.install.in +++ ocaml-3.10.0/debian/ocaml-base-nox.install.in @@ -0,0 +1 @@ +debian/ld.conf /usr/lib/ocaml/#OcamlABI#/ --- ocaml-3.10.0.orig/debian/ocaml.postinst +++ ocaml-3.10.0/debian/ocaml.postinst @@ -0,0 +1,7 @@ +#!/bin/sh -e + +if [ "$1" = "configure" ]; then + ocaml-md5sums update +fi + +#DEBHELPER# --- ocaml-3.10.0.orig/debian/ocaml-mode.emacsen-startup +++ ocaml-3.10.0/debian/ocaml-mode.emacsen-startup @@ -0,0 +1,22 @@ +;; -*-emacs-lisp-*- +;; +;; Emacs startup file for the Debian GNU/Linux ocaml package +;; +;; Originally contributed by Nils Naumann +;; Modified by Dirk Eddelbuettel +;; Adapted for dh-make by Jim Van Zandt + +;; The ocaml package follows the Debian/GNU Linux 'emacsen' policy and +;; byte-compiles its elisp files for each 'emacs flavor' (emacs19, +;; xemacs19, emacs20, xemacs20...). The compiled code is then +;; installed in a subdirectory of the respective site-lisp directory. +;; We have to add this to the load-path: +(setq load-path + (nconc load-path + (list (concat "/usr/share/" + (symbol-name flavor) + "/site-lisp/ocaml-mode")))) +(setq auto-mode-alist + (cons '("\\.ml[iylp]?$" . caml-mode) auto-mode-alist)) +(autoload 'caml-mode "caml" "Major mode for editing Caml code." t) +(autoload 'run-caml "inf-caml" "Run an inferior Caml process." t) --- ocaml-3.10.0.orig/debian/dh-ocaml/Makefile +++ ocaml-3.10.0/debian/dh-ocaml/Makefile @@ -0,0 +1,13 @@ +all: dh_ocaml.1 + +install: all + mkdir -p $(DESTDIR)/usr/bin + cp dh_ocaml $(DESTDIR)/usr/bin/ + mkdir -p $(DESTDIR)/usr/share/man/man1 + cp dh_ocaml.1 $(DESTDIR)/usr/share/man/man1/ + +clean: + rm -f dh_ocaml.1 + +dh_ocaml.1: + pod2man dh_ocaml > $@ --- ocaml-3.10.0.orig/debian/dh-ocaml/dh_ocaml +++ ocaml-3.10.0/debian/dh-ocaml/dh_ocaml @@ -0,0 +1,324 @@ +#!/usr/bin/perl -w +# vim: set ai sw=2: VIM modeline +# +# dh_ocaml - debhelper which computes OCaml md5sums and calculates OCaml +# dependencies +# +# Copyright (C) 2005-2006, Stefano Zacchiroli +# Samuel Mimram +# +# Created: Fri, 01 Apr 2005 19:50:48 +0200 zack +# Last-Modified: $Id: dh_ocaml 3180 2006-09-18 17:25:50Z smimram $ +# +# This is free software, you can redistribute it and/or modify it under the +# terms of the GNU General Public License version 2 or above as published by the +# Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +# details. +# +# You should have received a copy of the GNU General Public License along with +# this program; if not, write to the Free Software Foundation, Inc., 59 Temple +# Place, Suite 330, Boston, MA 02111-1307 USA + +# TODO ask joeyh for a O_PARAMS and s/M_PARAMS/O_PARAMS/ + +=head1 NAME + +dh_ocaml - calculates OCaml packages dependencies + +=cut + +use strict; +use Debian::Debhelper::Dh_Lib; +init(); + +my $ocamlc = "/usr/bin/ocamlc"; +my $omd5 = "/usr/bin/ocaml-md5sums"; +my @binaries = ($ocamlc, $omd5); +foreach my $bin (@binaries) { + error "$bin does not exists or is not executable" unless -x $bin; +} +chomp (my $ocaml_lib_dir = `$ocamlc -where`); +chomp (my $ocaml_version = `$ocamlc -version`); + +my $md5dir = "/var/lib/ocaml/md5sums"; +my $md5ext = ".md5sums"; +my $ocaml_magic_line = "#!/usr/bin/ocamlrun"; + +=head1 SYNOPSIS + +B [S>] + +=head1 DESCRIPTION + +dh_ocaml is a debhelper program that is responsible for filling the +${ocaml:Provides} and ${ocaml:Depends} substitutions and adding them to +substvars files. It also adds postinst and postrm scripts for maintaining +system registry of OCaml md5sums where required. + +dh_ocaml acts on two kinds of binary packages: those shipping development part +of OCaml libraries (usually named libXXX-ocaml-dev), and those shipping OCaml +bytecode non-custom executables (i.e. executables interpreted by +/usr/bin/ocamlrun). + +On OCaml library packages dh_ocaml will firstly look at OCaml objects (files +matching *.cm[ao]) shipped by the package. Then, dh_ocaml uses ocamlobjinfo on +them for collecting information about OCaml modules (or units, in ocamlobjinfo +terminology) defined and used by them. Information about defined units will be +used to automatically create the OCaml md5sums registry entry for your package, +e.g. /var/lib/ocaml/md5sums/libXXX-ocaml-dev.md5sums. Information about +imported units will instead be used as keys in the OCaml md5sums registry for +retrieving dependency information for the package. Those information will then +be used to fill the "${ocaml:Depends}" substvars. They will also be used to +fill the "${ocaml:Provides}" substvar which will be replaced by a name of the +form libXXX-ocaml-dev-NNNN, where NNNN is an md5sum computed from the +interfaces of the modules provided by the library. + +dh_ocaml takes also care of creating postinst and postrm autoscripts which +update the global system registry (/var/lib/ocaml/md5sums/MD5SUMS) with the +registry entry shipped by your package. + +On non-library packages, dh_ocaml tries to guess the OCaml objects corresponding +to shipped bytecode binaries and extract from them information about imported +units. Extracted information will then be used for filling "${ocaml:Depends}" as +discussed for the library case. + +In addition to dependencies extracted from the system md5sum registry, dh_ocaml +will add in ${ocaml:Provides}: + +=over + +=item 1. + +dependency from libXXX-ocaml-dev to libXXX-ocaml (runtime part of the library), +if there is a libXXX-ocaml package in debian/control; + +=item 2. + +dependency from libXXX-ocaml-dev to ocaml-findlib if the package ships any META +file in the OCaml library directory; + +=item 3. + +dependency from libXXX-ocaml, if any, to the appropriate ocaml-base-* package +(please note that the substvar for libXXX-ocaml will be filled while processing +libXXX-ocaml-dev); + +=item 4. + +dependency on ocaml-base-nox- for packages shipping bytecode +non-custom OCaml executables. + +=back + +=head1 OPTIONS + +=over 4 + +=item B<-m> I + +By default, the list of OCaml objects shipped by your package which should be +analyzed for retrieving dependency information is guessed by dh_ocaml. + +The -m option permit to specify a file which lists, one per line, that OCaml +objects. They should be in one of the format understandable by ocamlobjinfo +(*.cma, *.cmi, *.cmo) and are considered relative to the package build +directory. + +=item B<-l> I + +The association between development part of libraries and their runtimes is +guessed by dh_ocaml according to the OCaml packaging policy. Thus, +libXXX-ocaml-dev is the name of the package shipping the development part of XXX +library while libXXX-ocaml, if any, is the name of the package shipping the +corresponding runtime. + +Using -l you could override the pairs development package name, runtime package +name. The value passed to -l admits no spaces and must be a comma separated list +of items. Each item can be a single package name (stating that that name +corresponds to the development part of a library) or two package names separated +by a colon (stating that the first corresponds to the development part of a +library, while the second to its accompanying runtime part). + +=item B<-d> + +By default, dependency on findlib is generated for development parts of +libraries which ship any META file. Using -d you can disable the generation of +such dependency (even if this is discouraged and is very likely to violate the +OCaml packaging policy) + +=back + +=head1 CONFORMS TO + +Debian policy, version 3.7.2 + +OCaml packaging policy, version 1.0.0 + +=cut + +# find ocaml bytecode executables contained in a given directory +# (i.e. executables whose first line is #!/usr/bin/ocamlrun) +sub find_ocaml_bc_binaries($) { + my ($dir) = @_; + my @binaries = split /\n/, `find $dir -type f -perm -0100`; + my @bc_binaries; + foreach my $bin (@binaries) { + my $line = `head -1 $bin` or next; + chomp $line; + push @bc_binaries, $bin if $line eq $ocaml_magic_line; + } + return @bc_binaries; +} + +# add an entry to the ocaml:Depends substvar, filter out dummy "-" values +sub add_ocaml_dep($$$) { + my ($package, $dep, $version) = @_; + return if $dep eq "-" or $package eq ""; + if ($version =~ /-\s*$/) { # ocaml-md5sums returns "-" for "no version" + addsubstvar $package, "ocaml:Depends", $dep; + } else { + addsubstvar $package, "ocaml:Depends", $dep, $version; + } +} + +# fill the ocaml:Depends substvar, reading info from file +sub fill_ocaml_depends($$$$$) { + my ($package, $tmp, $fname, $is_library, $runtime) = @_; + delsubstvar $package, "ocaml:Depends"; # for idempotency + if (-f $fname) { + open DEPS, "< $fname" or die "can't open $fname"; + while (my $line = ) { + chomp $line; + if ($line =~ /^\s*(.+)\s+(.+)\s+(.+)\s*$/) { + # matched groups: dev_dep, runtime_dep, dep_version + if ($is_library) { + add_ocaml_dep $package, $1, ">= $3"; + add_ocaml_dep $package, $runtime, "= $dh{VERSION}" if $runtime; + if (`find $tmp -type f -name "META*"` ne "" and not $dh{D_FLAG}) { + # package has META and findlib dependency has not been forbidden + add_ocaml_dep $package, "ocaml-findlib", "-" + } + add_ocaml_dep $runtime, $2, ">= $3"; + } else { + add_ocaml_dep $package, $2, ">= $3"; + } + } + } + close DEPS; + } + add_ocaml_dep $package, "ocaml-base-nox-$ocaml_version", "-" unless $is_library; +} + +# fill the ocaml:Provides substvar +sub fill_ocaml_provides($$$$) { + my ($package, $tmp, $fname, $is_library) = @_; + return if (not $is_library); + delsubstvar $package, "ocaml:Provides"; # for idempotency + if (-f $fname) { + open PROV, "< $fname" or die "can't open $fname"; + while (my $lin = ) { + chomp $line; + addsubstvar $package, "ocaml:Provides", $line; + } + close PROV; + } +} + +# check if a given binary package exists in debian/control +sub package_exists($) { + my ($name) = @_; + my $retval = grep /^\Q$name\E$/, getpackages(); + return $retval; +} + +# return true if a given package has to be handled as an ocaml development +# library package. Usually this implies that package has a name like +# libXXX-ocaml-dev, but could be overridden with -l +# -l argument has the form "devpkg:runtime,devpkg:runtime,..." devpkg is the +# name of the development package :runtime (optional part) is the name of the +# associated runtime package +# examples: -l foo -l foo:bar -l foo:bar,baz,dum:dam +sub is_library($$) { + my ($package, $overrides) = @_; + return 1 if $overrides and $overrides =~ /(^|,)\Q$package\E($|:|,)/; + return ($package =~ /^lib.*-ocaml-dev$/); +} + +# return true if a given package has to be handled as containing ocaml binaries +# usually this implies that package name does not match libXXX-ocaml(-dev)? but +# overrides should be considered as per is_library above +sub is_binary($$) { + my ($package, $overrides) = @_; + return 0 if $overrides and $overrides =~ /(^|,|:)\Q$package\E($|:|,)/; + return (not ($package =~ /^lib.*-ocaml(-dev)?$/)); +} + +# return the runtime package corresponding to a given one +sub runtime_of_library($$) { + my ($package, $overrides) = @_; + my $runtime = ""; + if ($overrides and $overrides =~ /(^|,)\Q$package\E:([^,]+)/) { + $runtime = $2; + } elsif ($package =~ /^(lib.*-ocaml)-dev$/) { + $runtime = $1; + } + return (package_exists $runtime ? $runtime : ""); +} + +# main +exit 0 if $dh{NO_ACT}; +foreach my $package (@{$dh{DOPACKAGES}}) { + my $tmp = tmpdir $package; + my $ext = pkgext $package; + isnative($package); # sets $dh{VERSION} + my $oinfo = "debian/$ext" . "oinfo.debhelper"; # ocaml objects info + my $olist = "debian/$ext" . "olist.debhelper"; # ocaml object list + my $oprovides = "debian/$ext" . "oprovides.debhelper"; # provided package + $olist = $dh{M_PARAMS} if $dh{M_PARAMS}; # override object list with -m + my $odeps = "debian/$ext" . "odeps.debhelper"; # ocaml dependencies + if (is_library $package, $dh{L_PARAMS}) { # ocaml library package + my $runtime = runtime_of_library $package, $dh{L_PARAMS}; + my $flags = "--package $package --version $dh{VERSION}"; + $flags .= " --runtime $runtime" if $runtime; + # create md5sum registry entry and post.* scripts + complex_doit "find $tmp$ocaml_lib_dir -type f -name '*.cm[ao]' > $olist" + unless $dh{M_PARAMS}; + complex_doit "mkdir -p $tmp$md5dir"; + complex_doit("$omd5 $flags --dump-info $oinfo --dump-provides $oprovides compute < $olist" + . " | sort -k 2" # optional pass, just for "pretty" printing + . " > $tmp$md5dir/$package$md5ext"); + autoscript $package, "postinst", "postinst-ocaml"; + autoscript $package, "postrm", "postrm-ocaml"; + complex_doit "$omd5 --load-info $oinfo dep < $olist > $odeps"; # compute deps + fill_ocaml_depends $package, $tmp, $odeps, 1, $runtime; + fill_ocaml_provides $package, $tmp, $oprovides, 1; + } elsif (is_binary $package, $dh{L_PARAMS}) { # ocaml binary package + my @binaries = find_ocaml_bc_binaries $tmp; + next unless @binaries; # nothing to do if no bytecode binary has been found + complex_doit "> $odeps"; + if (not $dh{M_PARAMS}) { + foreach my $bin (@binaries) { # try to find .cmo of bc binaries + my $guess = basename $bin . ".cm[ao]"; + complex_doit "find . -type f -name '$guess' >> $olist" + } + } + complex_doit "$omd5 dep < $olist > $odeps"; # compute deps + fill_ocaml_depends $package, $tmp, $odeps, 0, ""; + } +} + +=head1 SEE ALSO + +L, L, L + +This program is a part of debhelper. + +=head1 AUTHORS + +Stefano Zacchiroli , Samuel Mimram + +=cut --- ocaml-3.10.0.orig/debian/ocaml-source.install.in +++ ocaml-3.10.0/debian/ocaml-source.install.in @@ -0,0 +1 @@ +debian/ocaml-source-#OcamlABI#.tar.bz2 /usr/src/ --- ocaml-3.10.0.orig/debian/ocaml-mode.README.Debian +++ ocaml-3.10.0/debian/ocaml-mode.README.Debian @@ -0,0 +1,14 @@ +ocaml-mode for Debian +--------------------- + + WARNING: tuareg-mode may be installed on your system. Since it + has a higher priority than ocaml-mode, it will be used for + every OCaml file loaded into (X)Emacs. + + If you absolutely want to override those default settings and + use ocaml-mode instead of tuareg-mode, you only need to add the + following line to your .emacs: + + (load-file "/etc/emacs/site-start.d/50ocaml-mode.el") + + -- Jerome Marant , Sat Sep 3 11:41:37 2005 --- ocaml-3.10.0.orig/debian/ocaml-compiler-libs.postrm +++ ocaml-3.10.0/debian/ocaml-compiler-libs.postrm @@ -0,0 +1,9 @@ +#!/bin/sh -e + +if [ "$1" = "remove" ]; then + if [ -x /usr/bin/ocaml-md5sums ]; then + /usr/bin/ocaml-md5sums update + fi +fi + +#DEBHELPER# --- ocaml-3.10.0.orig/debian/camlp4.links +++ ocaml-3.10.0/debian/camlp4.links @@ -0,0 +1,10 @@ +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/mkcamlp4.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4o.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4r.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4o.opt.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4r.opt.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4o.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4r.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4o.opt.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4r.opt.1.gz --- ocaml-3.10.0.orig/debian/ocaml-nox.postinst.in +++ ocaml-3.10.0/debian/ocaml-nox.postinst.in @@ -0,0 +1,17 @@ +#!/bin/sh -e + +if [ "$1" = "configure" ]; then + ln -sf /usr/lib/ocaml/#OcamlABI#/caml /usr/include/ + + ocaml-md5sums update + + # Save Emacs conffiles from previous ocaml versions + for f in ocaml ocaml-nox ; do + file="/etc/emacs/site-start.d/50$f.el" + if [ -e "$file" ]; then + mv "$file" "$file.save" + fi + done +fi + +#DEBHELPER# --- ocaml-3.10.0.orig/debian/ocaml-compiler-libs.install.in +++ ocaml-3.10.0/debian/ocaml-compiler-libs.install.in @@ -0,0 +1,4 @@ +debian/ocaml-compiler-libs.override /usr/share/lintian/overrides/ocaml-compiler-libs +parsing/* /usr/lib/ocaml/#OcamlABI#/compiler-libs/parsing/ +typing/* /usr/lib/ocaml/#OcamlABI#/compiler-libs/typing/ +utils/* /usr/lib/ocaml/#OcamlABI#/compiler-libs/utils/ --- ocaml-3.10.0.orig/debian/ocaml-base-nox.prerm.in +++ ocaml-3.10.0/debian/ocaml-base-nox.prerm.in @@ -0,0 +1,7 @@ +#!/bin/sh -e + +rmdir /usr/local/lib/ocaml/#OcamlABI#/stublibs 2>/dev/null || true +rmdir /usr/local/lib/ocaml/#OcamlABI# 2>/dev/null || true +rmdir /usr/local/lib/ocaml 2>/dev/null || true + +#DEBHELPER# --- ocaml-3.10.0.orig/debian/ocaml-interp.dirs.in +++ ocaml-3.10.0/debian/ocaml-interp.dirs.in @@ -0,0 +1,4 @@ +usr/bin +usr/share/man/man1 +usr/lib/ocaml/#OcamlABI# +usr/share/pixmaps --- ocaml-3.10.0.orig/debian/ocaml-nox.optfiles.in +++ ocaml-3.10.0/debian/ocaml-nox.optfiles.in @@ -0,0 +1,6 @@ +usr/bin/labltk +usr/lib/ocaml/#OcamlABI#/libgraphics.a +usr/lib/ocaml/#OcamlABI#/labltk +usr/lib/ocaml/#OcamlABI#/graphics.cmx +usr/lib/ocaml/#OcamlABI#/graphics.cmxa +usr/lib/ocaml/#OcamlABI#/graphics.a --- ocaml-3.10.0.orig/debian/patches/no_rpath.dpatch +++ ocaml-3.10.0/debian/patches/no_rpath.dpatch @@ -0,0 +1,22 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## no_rpath.dpatch by Stefano Zacchiroli +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Don't use rpath. + +@DPATCH@ +diff -urNad trunk~/tools/ocamlmklib.mlp trunk/tools/ocamlmklib.mlp +--- trunk~/tools/ocamlmklib.mlp 2007-02-07 11:31:36.000000000 +0100 ++++ trunk/tools/ocamlmklib.mlp 2007-04-11 11:10:26.000000000 +0200 +@@ -33,6 +33,11 @@ + and implib = ref "" (* windows implib flag *) + and verbose = ref false + ++(* Debian specific: inhibit rpath *) ++let byteccrpath = "" ++and nativeccrpath = "" ++and mksharedlibrpath = "" ++ + let starts_with s pref = + String.length s >= String.length pref && + String.sub s 0 (String.length pref) = pref --- ocaml-3.10.0.orig/debian/patches/man-ocamlmklib.dpatch +++ ocaml-3.10.0/debian/patches/man-ocamlmklib.dpatch @@ -0,0 +1,151 @@ +#! /bin/sh -e +## man-ocamlmklib.dpatch by Samuel Mimram +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: MAnpage for ocamlmklib + +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 -urN ocaml-3.08.1.orig/man/ocamlmklib.m ocaml-3.08.1/man/ocamlmklib.m +--- ocaml-3.08.1.orig/man/ocamlmklib.m 1970-01-01 01:00:00.000000000 +0100 ++++ ocaml-3.08.1/man/ocamlmklib.m 2004-08-19 18:38:55.000000000 +0200 +@@ -0,0 +1,127 @@ ++.\" Hey, EMACS: -*- nroff -*- ++.TH OCAMLMKLIB 1 "August 19, 2004" ++.SH NAME ++ocamlmklib \- generate libraries with mixed C / Caml code. ++.SH SYNOPSIS ++.B ocalmklib ++.RI [ options ] " files" ++.SH DESCRIPTION ++The ++.B ocamlmklib ++command facilitates the construction of libraries containing both Caml code and C code, and usable both in static linking and dynamic linking modes. ++.SH OPTIONS ++.TP ++.B \-h, \-\-help ++Show summary of options. ++.TP ++.BI \-cclib\ lib ++C library passed to ocamlc ++.B \-a ++or ++.BR ocamlopt (1) ++.B \-a ++only. ++.TP ++.BI \-ccopt\ opt ++C option passed to ++.BR ocamlc (1) ++.B \-a ++or ++.BR ocamlopt (1) ++.B \-a ++only. ++.TP ++.B \-custom ++Disable dynamic loading. ++.TP ++.BI \-dllpath\ dir ++Add ++.I dir ++to the run-time search path for DLLs. ++.TP ++.BI \-I\ dir ++Add ++.I dir ++to the path searched for Caml object files. ++.TP ++.B \-failsafe ++Fall back to static linking if DLL construction failed. ++.TP ++.BI \-ldopt\ opt ++C option passed to the shared linker only. ++.TP ++.B \-linkall ++Build Caml archive with link-all behavior. ++.TP ++.BI \-l lib ++Specify a dependent C library. ++.TP ++.BI \-L dir ++Add ++.I dir ++to the path searched for C libraries. ++.TP ++.BI \-ocamlc\ cmd ++Use ++.I cmd ++in place of ++.BR ocamlc (1). ++.TP ++.BI \-ocamlopt\ cmd ++Use ++.I cmd ++in place of ++.BR ocamlopt (1). ++.TP ++.BI \-o\ name ++Generated Caml library is named ++.IR name .cma ++or ++.IR name .cmxa. ++.TP ++.BI \-oc\ name ++Generated C library is named ++.RI dll name .so ++or ++.RI lib name .a. ++.TP ++.BI \-rpath\ dir ++Same as ++.B \-dllpath ++.IR dir . ++.TP ++.BI \-R dir ++Same as ++.BR \-rpath . ++.TP ++.B \-verbose ++Print commands before executing them. ++.TP ++\fB\-Wl\fR, \fB\-rpath \fIdir ++Same as ++.B \-dllpath ++.IR dir . ++.TP ++\fB\-Wl\fR, \fB\-rpath\ \-Wl \fIdir ++Same as ++.B \-dllpath ++.IR dir . ++.TP ++\fB\-Wl\fR, \fB\-R\fIdir ++Same as ++.B \-dllpath ++.IR dir . ++.TP ++.BI \-F dir ++Specify a framework directory (MacOSX). ++.TP ++.BI \-framework\ name ++Use framework ++.I name ++(MacOSX). ++.SH SEE ALSO ++.BR ocamlc (1), ++.BR ocamlopt (1). ++.SH AUTHOR ++This manual page was written by Samuel Mimram , ++for the Debian project (but may be used by others). --- ocaml-3.10.0.orig/debian/patches/not-native-no-aspp.dpatch +++ ocaml-3.10.0/debian/patches/not-native-no-aspp.dpatch @@ -0,0 +1,18 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## not-native-no-aspp.dpatch by Sylvain Le Gall +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +@DPATCH@ +diff -urNad ocaml-3.10.0~/build/mkmyocamlbuild_config.sh ocaml-3.10.0/build/mkmyocamlbuild_config.sh +--- ocaml-3.10.0~/build/mkmyocamlbuild_config.sh 2007-03-12 12:58:48.000000000 +0100 ++++ ocaml-3.10.0/build/mkmyocamlbuild_config.sh 2007-08-31 10:55:34.734613125 +0200 +@@ -5,6 +5,7 @@ + + sed \ + -e 's/^#ml \(.*\)/\1/' \ ++ -e 's/\$(AS)/no/' \ + -e 's/^\(#.*\)$/(* \1 *)/' \ + -e 's/^\(.*\$([0-9]).*\)$/(* \1 *)/' \ + -e 's/^\([^(=]*\)=\([^"]*\)$/let <:lower<\1>> = "\2";;/' \ --- ocaml-3.10.0.orig/debian/patches/stdlib_man_section.dpatch +++ ocaml-3.10.0/debian/patches/stdlib_man_section.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## stdlib_man_section.dpatch by Julien Cristau +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Put manpages in section 3o instead of 3. + +@DPATCH@ +diff -urNad ocaml-3.09.2~/ocamldoc/Makefile ocaml-3.09.2/ocamldoc/Makefile +--- ocaml-3.09.2~/ocamldoc/Makefile 2005-11-10 15:44:36.000000000 +0100 ++++ ocaml-3.09.2/ocamldoc/Makefile 2006-05-04 00:07:52.000000000 +0200 +@@ -318,7 +318,7 @@ + stdlib_man/Pervasives.3o: $(STDLIB_MLIS) + $(MKDIR) stdlib_man + $(OCAMLDOC_RUN) -man -d stdlib_man $(INCLUDES) \ +- -t "OCaml library" -man-mini \ ++ -t "OCaml library" -man-mini -man-section 3o \ + $(STDLIB_MLIS) + + autotest_stdlib: dummy --- ocaml-3.10.0.orig/debian/patches/dumpobj.dpatch +++ ocaml-3.10.0/debian/patches/dumpobj.dpatch @@ -0,0 +1,68 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## dumpobj.dpatch by Samuel Mimram +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Ship ocamldumpobj and add a manpage for it. + +@DPATCH@ +diff -urNad ocaml-3.09.1~/man/ocamlc.m ocaml-3.09.1/man/ocamlc.m +--- ocaml-3.09.1~/man/ocamlc.m 2006-01-04 20:35:35.000000000 +0100 ++++ ocaml-3.09.1/man/ocamlc.m 2006-01-04 20:37:08.000000000 +0100 +@@ -243,7 +243,8 @@ + .SH SEE ALSO + .BR ocaml (1), + .BR ocamlrun (1), +-.BR ocamlobjinfo (1). ++.BR ocamlobjinfo (1), ++.BR ocamldumpobj (1). + .br + .I The Objective Caml user's manual, + chapter "Batch compilation". +diff -urNad ocaml-3.09.1~/man/ocamldumpobj.m ocaml-3.09.1/man/ocamldumpobj.m +--- ocaml-3.09.1~/man/ocamldumpobj.m 1970-01-01 01:00:00.000000000 +0100 ++++ ocaml-3.09.1/man/ocamldumpobj.m 2006-01-04 20:44:49.000000000 +0100 +@@ -0,0 +1,20 @@ ++.TH OCAMLDUMPOBJ 1 "January 4, 2006" ++.SH NAME ++ocamldumpobj \- disassembler for OCaml executable and .cmo object files ++. ++.SH SYNOPSIS ++.B ocamldumpobj ++.RI file\ ... ++. ++.SH DESCRIPTION ++Disassembler for executable and .cmo object files compiled by OCaml. ++. ++.SH SEE ALSO ++.BR ocamlc (1), ++.BR ocamlopt (1), ++.BR ocamlobjinfo (1). ++.br ++. ++.SH AUTHOR ++This manual page was written by Samuel Mimram , ++for the Debian GNU/Linux system (but may be used by others). +diff -urNad ocaml-3.09.1~/man/ocamlopt.m ocaml-3.09.1/man/ocamlopt.m +--- ocaml-3.09.1~/man/ocamlopt.m 2006-01-04 20:35:35.000000000 +0100 ++++ ocaml-3.09.1/man/ocamlopt.m 2006-01-04 20:39:46.000000000 +0100 +@@ -226,7 +226,8 @@ + + .SH SEE ALSO + .BR ocamlc (1), +-.BR ocamlobjinfo (1). ++.BR ocamlobjinfo (1), ++.BR ocamldumpobj (1). + .br + .I The Objective Caml user's manual, + chapter "Native-code compilation". +diff -urNad ocaml-3.09.1~/tools/Makefile ocaml-3.09.1/tools/Makefile +--- ocaml-3.09.1~/tools/Makefile 2006-01-04 20:35:35.000000000 +0100 ++++ ocaml-3.09.1/tools/Makefile 2006-01-04 20:36:07.000000000 +0100 +@@ -71,6 +71,7 @@ + cp ocamlcp $(BINDIR)/ocamlcp$(EXE) + cp profiling.cmi profiling.cmo $(LIBDIR) + cp objinfo $(BINDIR)/ocamlobjinfo$(EXE) ++ cp dumpobj $(BINDIR)/ocamldumpobj$(EXE) + + clean:: + rm -f ocamlprof ocamlcp --- ocaml-3.10.0.orig/debian/patches/arm_ccheckbound_typo.dpatch +++ ocaml-3.10.0/debian/patches/arm_ccheckbound_typo.dpatch @@ -0,0 +1,20 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## arm_ccheckbound_typo.dpatch by Stefano Zacchiroli +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: fix typo (which induce typing error and in turn FTBFS) in the usage of +## DP: the Ccheckbound type constructore in the arm asm compiler + +@DPATCH@ +diff -urNad trunk~/asmcomp/arm/selection.ml trunk/asmcomp/arm/selection.ml +--- trunk~/asmcomp/arm/selection.ml 2001-03-30 14:22:32.000000000 +0200 ++++ trunk/asmcomp/arm/selection.ml 2007-07-25 17:51:02.000000000 +0200 +@@ -106,7 +106,7 @@ + | _ -> + (Iextcall("__modsi3", false), args) + end +- | Ccheckbound -> ++ | Ccheckbound _ -> + begin match args with + [Cop(Clsr, [arg1; Cconst_int n]); arg2] + when n > 0 && n < 32 && not(is_intconst arg2) -> --- ocaml-3.10.0.orig/debian/patches/00list +++ ocaml-3.10.0/debian/patches/00list @@ -0,0 +1,12 @@ +objinfo.dpatch +dumpobj.dpatch +man-ocamlmklib.dpatch +#kbsd-gnu.dpatch +alpha_ld_no-relax.dpatch +call_ld_with_proper_flags.dpatch +no_rpath.dpatch +stdlib_man_section.dpatch +install_scripts_config.dpatch +install_ocamlbuild.dpatch +arm_ccheckbound_typo.dpatch +not-native-no-aspp --- ocaml-3.10.0.orig/debian/patches/objinfo.dpatch +++ ocaml-3.10.0/debian/patches/objinfo.dpatch @@ -0,0 +1,110 @@ +#! /bin/sh -e +## ocamlobjinfo.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: ship ocamlobjinfo and add a manpage for it. + +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 -urNad ocaml-3.09.1~/man/ocamlc.m ocaml-3.09.1/man/ocamlc.m +--- ocaml-3.09.1~/man/ocamlc.m 2004-07-13 14:25:10.000000000 +0200 ++++ ocaml-3.09.1/man/ocamlc.m 2006-01-04 20:29:18.000000000 +0100 +@@ -242,7 +242,8 @@ + + .SH SEE ALSO + .BR ocaml (1), +-.BR ocamlrun (1). ++.BR ocamlrun (1), ++.BR ocamlobjinfo (1). + .br + .I The Objective Caml user's manual, + chapter "Batch compilation". +diff -urNad ocaml-3.09.1~/man/ocamlobjinfo.m ocaml-3.09.1/man/ocamlobjinfo.m +--- ocaml-3.09.1~/man/ocamlobjinfo.m 1970-01-01 01:00:00.000000000 +0100 ++++ ocaml-3.09.1/man/ocamlobjinfo.m 2006-01-04 20:29:18.000000000 +0100 +@@ -0,0 +1,40 @@ ++.TH OCAML-SOAP 1 "October 26, 2002" ++.SH NAME ++ocamlobjinfo \- dump an OCaml compilation unit description ++.SH SYNOPSIS ++.B ocamlobjinfo ++.RI file\ ... ++.SH DESCRIPTION ++Dump information contained in OCaml compilation units. ++Currently it works on .cmi, .cmo and .cma files. ++.sp 2 ++.B ocamlobjinfo ++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 , ++for the Debian GNU/Linux system (but may be used by others). +diff -urNad ocaml-3.09.1~/man/ocamlopt.m ocaml-3.09.1/man/ocamlopt.m +--- ocaml-3.09.1~/man/ocamlopt.m 2004-07-13 14:25:10.000000000 +0200 ++++ ocaml-3.09.1/man/ocamlopt.m 2006-01-04 20:29:18.000000000 +0100 +@@ -225,7 +225,8 @@ + array or string outside of its bounds. + + .SH SEE ALSO +-.BR ocamlc (1). ++.BR ocamlc (1), ++.BR ocamlobjinfo (1). + .br + .I The Objective Caml user's manual, + chapter "Native-code compilation". +diff -urNad ocaml-3.09.1~/tools/Makefile ocaml-3.09.1/tools/Makefile +--- ocaml-3.09.1~/tools/Makefile 2005-11-17 15:26:37.000000000 +0100 ++++ ocaml-3.09.1/tools/Makefile 2006-01-04 20:30:02.000000000 +0100 +@@ -24,7 +24,7 @@ + LINKFLAGS=$(INCLUDES) + + all: ocamldep ocamlprof ocamlcp ocamlmktop ocamlmklib scrapelabels addlabels \ +- dumpobj ++ dumpobj objinfo + + opt.opt: ocamldep.opt + +@@ -70,6 +70,7 @@ + cp ocamlprof $(BINDIR)/ocamlprof$(EXE) + cp ocamlcp $(BINDIR)/ocamlcp$(EXE) + cp profiling.cmi profiling.cmo $(LIBDIR) ++ cp objinfo $(BINDIR)/ocamlobjinfo$(EXE) + + clean:: + rm -f ocamlprof ocamlcp --- ocaml-3.10.0.orig/debian/patches/call_ld_with_proper_flags.dpatch +++ ocaml-3.10.0/debian/patches/call_ld_with_proper_flags.dpatch @@ -0,0 +1,31 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## call_ld_with_proper_flags.dpatch by Stefano Zacchiroli +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Filter linkflags passed to ld by ocamlopt -pack and -output-obj +## DP: to remove the "-Wl," parts, which are only used when ocamlopt calls +## DP: gcc. + +@DPATCH@ +diff -urNad trunk~/Makefile trunk/Makefile +--- trunk~/Makefile 2007-03-05 10:18:22.000000000 +0100 ++++ trunk/Makefile 2007-04-11 10:51:08.000000000 +0200 +@@ -314,6 +314,7 @@ + partialclean:: + rm -f ocaml toplevel/toplevellib.cma + ++Wl = -Wl, + # The configuration file + + utils/config.ml: utils/config.mlp config/Makefile +@@ -325,8 +326,8 @@ + -e 's|%%BYTELINK%%|$(BYTECC) $(BYTECCLINKOPTS)|' \ + -e 's|%%NATIVECC%%|$(NATIVECC) $(NATIVECCCOMPOPTS)|' \ + -e 's|%%NATIVELINK%%|$(NATIVECC) $(NATIVECCLINKOPTS)|' \ +- -e 's|%%PARTIALLD%%|$(PARTIALLD) $(NATIVECCLINKOPTS)|' \ +- -e 's|%%PACKLD%%|$(PARTIALLD) $(NATIVECCLINKOPTS) -o |' \ ++ -e 's|%%PARTIALLD%%|$(PARTIALLD) $(subst $(Wl),,$(NATIVECCLINKOPTS))|' \ ++ -e 's|%%PACKLD%%|$(PARTIALLD) $(subst $(Wl),,$(NATIVECCLINKOPTS)) -o |' \ + -e 's|%%BYTECCLIBS%%|$(BYTECCLIBS)|' \ + -e 's|%%NATIVECCLIBS%%|$(NATIVECCLIBS)|' \ + -e 's|%%RANLIBCMD%%|$(RANLIBCMD)|' \ --- ocaml-3.10.0.orig/debian/patches/00dpatch.conf +++ ocaml-3.10.0/debian/patches/00dpatch.conf @@ -0,0 +1,2 @@ +conf_debianonly=1 +conf_origtargzpath=../upstream --- ocaml-3.10.0.orig/debian/patches/kbsd-gnu.dpatch +++ ocaml-3.10.0/debian/patches/kbsd-gnu.dpatch @@ -0,0 +1,32 @@ +#! /bin/sh -e +## kbsd-gnu.dpatch by Aurelien Jarno +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Port to GNU/k*BSD + +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@ +--- ocaml-3.09.0/configure 2005-11-10 00:50:29.000000000 +0100 ++++ ocaml-3.09.0/configure 2005-11-10 00:53:37.000000000 +0100 +@@ -480,7 +480,7 @@ + + if test $withsharedlibs = "yes"; then + case "$host" in +- *-*-linux-gnu|*-*-linux|*-*-freebsd[3-9]*) ++ *-*-linux-gnu|*-*-linux|*-*-k*bsd*-gnu|*-*-gnu*|*-*-freebsd[3-9]*) + sharedcccompopts="-fPIC" + mksharedlib="$bytecc -shared -o" + bytecclinkopts="$bytecclinkopts -Wl,-E" + --- ocaml-3.10.0.orig/debian/patches/for_pack_static.dpatch +++ ocaml-3.10.0/debian/patches/for_pack_static.dpatch @@ -0,0 +1,407 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## for_pack_static.dpatch by Alain Frisch and Xavier Leroy +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Correct interaction between -for-pack and static approximations. +## DP: See http://caml.inria.fr/mantis/view.php?id=3825. + +@DPATCH@ +diff -urNad ocaml-3.09.0~/asmcomp/closure.ml ocaml-3.09.0/asmcomp/closure.ml +--- ocaml-3.09.0~/asmcomp/closure.ml 2005-12-11 19:33:52.000000000 +0100 ++++ ocaml-3.09.0/asmcomp/closure.ml 2005-12-11 19:34:29.000000000 +0100 +@@ -10,7 +10,7 @@ + (* *) + (***********************************************************************) + +-(* $Id: closure.ml,v 1.48 2005/10/24 09:05:27 xleroy Exp $ *) ++(* $Id: closure.ml,v 1.48.2.2 2005/12/11 10:21:12 xleroy Exp $ *) + + (* Introduction of closures, uncurrying, recognition of direct calls *) + +@@ -33,9 +33,18 @@ + let rec build_closure_env env_param pos = function + [] -> Tbl.empty + | id :: rem -> +- Tbl.add id (Uprim(Pfield pos, [Uvar env_param])) ++ Tbl.add id (Uprim(Pfield pos, [Uvar env_param])) + (build_closure_env env_param (pos+1) rem) + ++(* Auxiliary for accessing globals. We change the name of the global ++ to the name of the corresponding asm symbol. This is done here ++ and no longer in Cmmgen so that approximations stored in .cmx files ++ contain the right names if the -for-pack option is active. *) ++ ++let getglobal id = ++ Uprim(Pgetglobal (Ident.create_persistent (Compilenv.symbol_for_global id)), ++ []) ++ + (* Check if a variable occurs in a [clambda] term. *) + + let occurs_var var u = +@@ -62,7 +71,7 @@ + | Uwhile(cond, body) -> occurs cond || occurs body + | Ufor(id, lo, hi, dir, body) -> occurs lo || occurs hi || occurs body + | Uassign(id, u) -> id = var || occurs u +- | Usend(_, met, obj, args) -> ++ | Usend(_, met, obj, args) -> + occurs met || occurs obj || List.exists occurs args + and occurs_array a = + try +@@ -103,7 +112,7 @@ + | _ -> 2 (* arithmetic and comparisons *) + + (* Very raw approximation of switch cost *) +- ++ + let lambda_smaller lam threshold = + let size = ref 0 in + let rec lambda_size lam = +@@ -276,7 +285,7 @@ + let bindings1 = + List.map (fun (id, rhs) -> (id, Ident.rename id, rhs)) bindings in + let sb' = +- List.fold_right ++ List.fold_right + (fun (id, id', _) s -> Tbl.add id (Uvar id') s) + bindings1 sb in + Uletrec( +@@ -529,7 +538,8 @@ + end + | Lprim(Pgetglobal id, []) as lam -> + check_constant_result lam +- (Uprim(Pgetglobal id, [])) (Compilenv.global_approx id) ++ (getglobal id) ++ (Compilenv.global_approx id) + | Lprim(Pmakeblock(tag, mut) as prim, lams) -> + let (ulams, approxs) = List.split (List.map (close fenv cenv) lams) in + (Uprim(prim, ulams), +@@ -547,7 +557,7 @@ + | Lprim(Psetfield(n, _), [Lprim(Pgetglobal id, []); lam]) -> + let (ulam, approx) = close fenv cenv lam in + (!global_approx).(n) <- approx; +- (Uprim(Psetfield(n, false), [Uprim(Pgetglobal id, []); ulam]), ++ (Uprim(Psetfield(n, false), [getglobal id; ulam]), + Value_unknown) + | Lprim(p, args) -> + simplif_prim p (close_list_approx fenv cenv args) +@@ -558,7 +568,7 @@ + close_switch fenv cenv sw.sw_consts sw.sw_numconsts sw.sw_failaction + and block_index, block_actions = + close_switch fenv cenv sw.sw_blocks sw.sw_numblocks sw.sw_failaction in +- (Uswitch(uarg, ++ (Uswitch(uarg, + {us_index_consts = const_index; + us_actions_consts = const_actions; + us_index_blocks = block_index; +@@ -579,7 +589,7 @@ + (uarg, Value_constptr n) -> + sequence_constant_expr arg uarg + (close fenv cenv (if n = 0 then ifnot else ifso)) +- | (uarg, _ ) -> ++ | (uarg, _ ) -> + let (uifso, _) = close fenv cenv ifso in + let (uifnot, _) = close fenv cenv ifnot in + (Uifthenelse(uarg, uifso, uifnot), Value_unknown) +diff -urNad ocaml-3.09.0~/asmcomp/cmmgen.ml ocaml-3.09.0/asmcomp/cmmgen.ml +--- ocaml-3.09.0~/asmcomp/cmmgen.ml 2005-08-01 17:51:09.000000000 +0200 ++++ ocaml-3.09.0/asmcomp/cmmgen.ml 2005-12-11 19:37:05.000000000 +0100 +@@ -10,7 +10,7 @@ + (* *) + (***********************************************************************) + +-(* $Id: cmmgen.ml,v 1.103 2005/08/01 15:51:09 xleroy Exp $ *) ++(* $Id: cmmgen.ml,v 1.103.2.2 2005/12/11 10:21:12 xleroy Exp $ *) + + (* Translation from closed lambda to C-- *) + +@@ -27,7 +27,7 @@ + + let bind name arg fn = + match arg with +- Cvar _ | Cconst_int _ | Cconst_natint _ | Cconst_symbol _ ++ Cvar _ | Cconst_int _ | Cconst_natint _ | Cconst_symbol _ + | Cconst_pointer _ | Cconst_natpointer _ -> fn arg + | _ -> let id = Ident.create name in Clet(id, arg, fn (Cvar id)) + +@@ -343,7 +343,7 @@ + [] -> Cvar id + | e1::el -> Csequence(set_fn (Cvar id) (Cconst_int idx) e1, + fill_fields (idx + 2) el) in +- Clet(id, ++ Clet(id, + Cop(Cextcall("caml_alloc", typ_addr, true), + [Cconst_int wordsize; Cconst_int tag]), + fill_fields 1 args) +@@ -423,7 +423,7 @@ + int_const n + | Const_base(Const_char c) -> + Cconst_int(((Char.code c) lsl 1) + 1) +- | Const_pointer n -> ++ | Const_pointer n -> + if n <= max_repr_int && n >= min_repr_int + then Cconst_pointer((n lsl 1) + 1) + else Cconst_natpointer +@@ -477,7 +477,7 @@ + when bi = Pint32 && size_int = 8 && not big_endian -> + (* Force sign-extension of low 32 bits *) + Cop(Casr, [Cop(Clsl, [contents; Cconst_int 32]); Cconst_int 32]) +- | Cop(Calloc, [hdr; ops; contents]) -> ++ | Cop(Calloc, [hdr; ops; contents]) -> + contents + | _ -> + Cop(Cload(if bi = Pint32 then Thirtytwo_signed else Word), +@@ -645,7 +645,7 @@ + let lcases = Array.length cases in + let new_cases = Array.create lcases 0 in + let store = Switch.mk_store (=) in +- ++ + for i = 0 to Array.length cases-1 do + let act = cases.(i) in + let new_act = store.Switch.act_store act in +@@ -741,7 +741,7 @@ + Cvar id as e -> + if Ident.same id boxed_id then need_boxed := true; e + | Clet(id, arg, body) -> Clet(id, subst arg, subst body) +- | Cassign(id, arg) -> ++ | Cassign(id, arg) -> + if Ident.same id boxed_id then begin + assigned := true; + Cassign(unboxed_id, subst(unbox_fn arg)) +@@ -759,11 +759,11 @@ + Cswitch(subst arg, index, Array.map subst cases) + | Cloop e -> Cloop(subst e) + | Ccatch(nfail, ids, e1, e2) -> Ccatch(nfail, ids, subst e1, subst e2) +- | Cexit (nfail, el) -> Cexit (nfail, List.map subst el) ++ | Cexit (nfail, el) -> Cexit (nfail, List.map subst el) + | Ctrywith(e1, id, e2) -> Ctrywith(subst e1, id, subst e2) + | e -> e in + let res = subst exp in +- (res, !need_boxed, !assigned) ++ (res, !need_boxed, !assigned) + + (* Translate an expression *) + +@@ -820,20 +820,20 @@ + Cop(Capply typ_addr, cargs) + | Usend(kind, met, obj, args) -> + let call_met obj args clos = +- if args = [] then Cop(Capply typ_addr,[get_field clos 0;obj;clos]) else +- let arity = List.length args + 1 in ++ if args = [] then Cop(Capply typ_addr,[get_field clos 0;obj;clos]) else ++ let arity = List.length args + 1 in + let cargs = Cconst_symbol(apply_function arity) :: obj :: +- (List.map transl args) @ [clos] in ++ (List.map transl args) @ [clos] in + Cop(Capply typ_addr, cargs) + in + bind "obj" (transl obj) (fun obj -> +- match kind, args with +- Self, _ -> ++ match kind, args with ++ Self, _ -> + bind "met" (lookup_label obj (transl met)) (call_met obj args) +- | Cached, cache :: pos :: args -> ++ | Cached, cache :: pos :: args -> + call_cached_method obj (transl met) (transl cache) (transl pos) + (List.map transl args) +- | _ -> ++ | _ -> + bind "met" (lookup_tag obj (transl met)) (call_met obj args)) + | Ulet(id, exp, body) -> + begin match is_unboxed_number exp with +@@ -853,7 +853,7 @@ + | Uprim(prim, args) -> + begin match (simplif_primitive prim, args) with + (Pgetglobal id, []) -> +- Cconst_symbol (Compilenv.symbol_for_global id) ++ Cconst_symbol (Ident.name id) + | (Pmakeblock(tag, mut), []) -> + transl_constant(Const_block(tag, [])) + | (Pmakeblock(tag, mut), args) -> +@@ -961,7 +961,7 @@ + (exit_if_false cond (transl ifso) raise_num) + (transl ifnot) + | Uifthenelse(Uprim(Psequor, _) as cond, ifso, ifnot) -> +- let raise_num = next_raise_count () in ++ let raise_num = next_raise_count () in + make_catch + raise_num + (exit_if_true cond raise_num (transl ifnot)) +@@ -1007,7 +1007,7 @@ + (remove_unit(transl body), + Clet(id_prev, Cvar id, + Csequence +- (Cassign(id, ++ (Cassign(id, + Cop(inc, [Cvar id; Cconst_int 2])), + Cifthenelse + (Cop(Ccmpi Ceq, [Cvar id_prev; high]), +@@ -1152,7 +1152,7 @@ + | Pintcomp cmp -> + tag_int(Cop(Ccmpi(transl_comparison cmp), [transl arg1; transl arg2])) + | Pisout -> +- transl_isout (transl arg1) (transl arg2) ++ transl_isout (transl arg1) (transl arg2) + (* Float operations *) + | Paddfloat -> + box_float(Cop(Caddf, +@@ -1216,7 +1216,7 @@ + box_float( + bind "index" (transl arg2) (fun idx -> + bind "arr" (transl arg1) (fun arr -> +- Csequence(Cop(Ccheckbound, ++ Csequence(Cop(Ccheckbound, + [float_array_length(header arr); idx]), + unboxed_float_array_ref arr idx)))) + end +@@ -1239,7 +1239,7 @@ + box_int bi (Cop(Csubi, + [transl_unbox_int bi arg1; transl_unbox_int bi arg2])) + | Pmulbint bi -> +- box_int bi (Cop(Cmuli, ++ box_int bi (Cop(Cmuli, + [transl_unbox_int bi arg1; transl_unbox_int bi arg2])) + | Pdivbint bi -> + box_int bi (safe_divmod Cdivi +@@ -1366,7 +1366,7 @@ + + and make_catch ncatch body handler = match body with + | Cexit (nexit,[]) when nexit=ncatch -> handler +-| _ -> Ccatch (ncatch, [], body, handler) ++| _ -> Ccatch (ncatch, [], body, handler) + + and make_catch2 mk_body handler = match handler with + | Cexit (_,[])|Ctuple []|Cconst_int _|Cconst_pointer _ -> +@@ -1377,7 +1377,7 @@ + nfail + (mk_body (Cexit (nfail,[]))) + handler +- ++ + and exit_if_true cond nfail otherwise = + match cond with + | Uconst (Const_pointer 0) -> otherwise +@@ -1387,14 +1387,14 @@ + | Uprim(Psequand, _) -> + begin match otherwise with + | Cexit (raise_num,[]) -> +- exit_if_false cond (Cexit (nfail,[])) raise_num ++ exit_if_false cond (Cexit (nfail,[])) raise_num + | _ -> + let raise_num = next_raise_count () in + make_catch + raise_num + (exit_if_false cond (Cexit (nfail,[])) raise_num) + otherwise +- end ++ end + | Uprim(Pnot, [arg]) -> + exit_if_false arg otherwise nfail + | Uifthenelse (cond, ifso, ifnot) -> +@@ -1444,7 +1444,7 @@ + | _ -> + let n_index = Array.length index in + let actions = Array.map transl cases in +- ++ + let inters = ref [] + and this_high = ref (n_index-1) + and this_low = ref (n_index-1) +@@ -1576,17 +1576,17 @@ + | Const_base(Const_string s) -> + let lbl = new_const_label() in + (Clabel_address lbl, +- Cint(string_header (String.length s)) :: Cdefine_label lbl :: ++ Cint(string_header (String.length s)) :: Cdefine_label lbl :: + emit_string_constant s cont) + | Const_immstring s -> + begin try +- (Clabel_address (Hashtbl.find immstrings s), cont) ++ (Clabel_address (Hashtbl.find immstrings s), cont) + with Not_found -> +- let lbl = new_const_label() in +- Hashtbl.add immstrings s lbl; +- (Clabel_address lbl, +- Cint(string_header (String.length s)) :: Cdefine_label lbl :: +- emit_string_constant s cont) ++ let lbl = new_const_label() in ++ Hashtbl.add immstrings s lbl; ++ (Clabel_address lbl, ++ Cint(string_header (String.length s)) :: Cdefine_label lbl :: ++ emit_string_constant s cont) + end + | Const_base(Const_int32 n) -> + let lbl = new_const_label() in +@@ -1733,22 +1733,22 @@ + (raise_num, [], + Cloop + (Clet( +- mi, +- Cop(Cor, +- [Cop(Clsr, [Cop(Caddi, [Cvar li; Cvar hi]); Cconst_int 1]); +- Cconst_int 1]), +- Csequence( +- Cifthenelse +- (Cop (Ccmpi Clt, +- [tag; +- Cop(Cload Word, +- [Cop(Cadda, +- [meths; lsl_const (Cvar mi) log2_size_addr])])]), +- Cassign(hi, Cop(Csubi, [Cvar mi; Cconst_int 2])), +- Cassign(li, Cvar mi)), +- Cifthenelse +- (Cop(Ccmpi Cge, [Cvar li; Cvar hi]), Cexit (raise_num, []), +- Ctuple [])))), ++ mi, ++ Cop(Cor, ++ [Cop(Clsr, [Cop(Caddi, [Cvar li; Cvar hi]); Cconst_int 1]); ++ Cconst_int 1]), ++ Csequence( ++ Cifthenelse ++ (Cop (Ccmpi Clt, ++ [tag; ++ Cop(Cload Word, ++ [Cop(Cadda, ++ [meths; lsl_const (Cvar mi) log2_size_addr])])]), ++ Cassign(hi, Cop(Csubi, [Cvar mi; Cconst_int 2])), ++ Cassign(li, Cvar mi)), ++ Cifthenelse ++ (Cop(Ccmpi Cge, [Cvar li; Cvar hi]), Cexit (raise_num, []), ++ Ctuple [])))), + Ctuple []), + Clet ( + tagged, Cop(Cadda, [lsl_const (Cvar li) log2_size_addr; +@@ -1811,13 +1811,13 @@ + Clet ( + cached, Cop(Cand, [Cop(Cload Word, [cache]); mask]), + Clet ( +- real, ++ real, + Cifthenelse(Cop(Ccmpa Cne, [tag'; tag]), +- cache_public_method (Cvar meths) tag cache, ++ cache_public_method (Cvar meths) tag cache, + cached_pos), + Cop(Cload Word, [Cop(Cadda, [Cop (Cadda, [Cvar real; Cvar meths]); + Cconst_int(2*size_addr-1)])])))) +- ++ + in + let body = Clet(clos', clos, body) in + let fun_args = +@@ -1904,13 +1904,13 @@ + {fun_name = name2; + fun_args = [arg, typ_addr; clos, typ_addr]; + fun_body = Cop(Calloc, +- [alloc_closure_header 4; ++ [alloc_closure_header 4; + Cconst_symbol(name1 ^ "_" ^ string_of_int (num+1)); + int_const 1; Cvar arg; Cvar clos]); + fun_fast = true} + :: intermediate_curry_functions arity (num+1) + end +- ++ + let curry_function arity = + if arity >= 0 + then intermediate_curry_functions arity 0 --- ocaml-3.10.0.orig/debian/patches/install_scripts_config.dpatch +++ ocaml-3.10.0/debian/patches/install_scripts_config.dpatch @@ -0,0 +1,32 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## install_scripts_config.dpatch by Ralf Treinen +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Use for installatation a patched config.sh (created by debian/rules) +## DP: Ralf Treinen + +@DPATCH@ +diff -urNad ocaml-3.10.0~beta~/build/install.sh ocaml-3.10.0~beta/build/install.sh +--- ocaml-3.10.0~beta~/build/install.sh 2007-03-06 10:48:38.000000000 +0100 ++++ ocaml-3.10.0~beta/build/install.sh 2007-04-11 15:21:12.000000000 +0200 +@@ -3,7 +3,7 @@ + + cd `dirname $0`/.. + +-. config/config.sh ++. config/config.debian.install.sh + + not_installed=$PWD/_build/not_installed + +diff -urNad ocaml-3.10.0~beta~/build/partial-install.sh ocaml-3.10.0~beta/build/partial-install.sh +--- ocaml-3.10.0~beta~/build/partial-install.sh 2007-03-06 10:48:38.000000000 +0100 ++++ ocaml-3.10.0~beta/build/partial-install.sh 2007-04-11 15:21:33.000000000 +0200 +@@ -8,7 +8,7 @@ + + cd `dirname $0`/.. + +-. config/config.sh ++. config/config.debian.install.sh + + not_installed=$PWD/_build/not_installed + --- ocaml-3.10.0.orig/debian/patches/install_ocamlbuild.dpatch +++ ocaml-3.10.0/debian/patches/install_ocamlbuild.dpatch @@ -0,0 +1,41 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## install_ocamlbuild.dpatch by Stefano Zacchiroli +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +@DPATCH@ +diff -urNad trunk~/build/partial-install.sh trunk/build/partial-install.sh +--- trunk~/build/partial-install.sh 2007-06-17 15:13:23.000000000 +0100 ++++ trunk/build/partial-install.sh 2007-06-17 15:15:11.000000000 +0100 +@@ -47,6 +47,21 @@ + [ -x "$3" ] || chmod +x "$3" + } + ++installbestlink() { ++ if [ -f "$1" ]; then ++ echo " linking binary $3 to `basename $1`" ++ ln -fs "$1" "$3" ++ else ++ if [ -f "$2" ]; then ++ echo " linking binary $3 to `basename $2`" ++ ln -fs "$2" "$3" ++ else ++ echo "None of $1, $2 exists" ++ exit 3 ++ fi ++ fi ++} ++ + installlib() { + if [ -f "$1" ]; then + dest="$2/`basename $1`" +@@ -143,7 +158,7 @@ + cd ocamlbuild + installbin ocamlbuild.byte$EXE $BINDIR/ocamlbuild.byte$EXE + installbin ocamlbuild.native$EXE $BINDIR/ocamlbuild.native$EXE +-installbestbin ocamlbuild.native$EXE ocamlbuild.byte$EXE $BINDIR/ocamlbuild$EXE ++installbestlink ocamlbuild.native$EXE ocamlbuild.byte$EXE $BINDIR/ocamlbuild$EXE + + installlibdir \ + ocamlbuildlib.$A \ --- ocaml-3.10.0.orig/debian/patches/alpha_ld_no-relax.dpatch +++ ocaml-3.10.0/debian/patches/alpha_ld_no-relax.dpatch @@ -0,0 +1,30 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## alpha_ld_no-relax.dpatch by Stefano Zacchiroli +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Pass the --no-relax option to ld to fix a segfault in initialization +## DP: code (bug#338437) + + +@DPATCH@ +diff -urNad trunk~/configure trunk/configure +--- trunk~/configure 2007-03-06 16:02:09.000000000 +0000 ++++ trunk/configure 2007-04-10 17:08:18.000000000 +0000 +@@ -271,7 +271,8 @@ + gcc,alpha*-*-linux*) + if cc="$bytecc" sh ./hasgot -mieee; then + bytecccompopts="-mieee $bytecccompopts"; +- fi;; ++ fi ++ bytecclinkopts="-Wl,--no-relax";; + cc,mips-*-irix6*) + # Add -n32 flag to ensure compatibility with native-code compiler + bytecccompopts="-n32" +@@ -630,6 +631,7 @@ + nativecccompopts="$gcc_warnings -DSHRINKED_GNUC";; + *,*,rhapsody,*) nativecccompopts="$gcc_warnings -DDARWIN_VERSION_6 $dl_defs" + if $arch64; then partialld="ld -r -arch ppc64"; fi;; ++ alpha,gcc*,linux*,*) nativecclinkopts="-Wl,--no-relax";; + *,gcc*,cygwin,*) nativecccompopts="$gcc_warnings -U_WIN32";; + *,gcc*,*,*) nativecccompopts="$gcc_warnings";; + esac --- ocaml-3.10.0.orig/debian/patches/missing-manpage-links.dpatch +++ ocaml-3.10.0/debian/patches/missing-manpage-links.dpatch @@ -0,0 +1,16 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## missing-manpage-links.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +@DPATCH@ +diff -urNad ocaml-3.09.2~/man/Makefile ocaml-3.09.2/man/Makefile +--- ocaml-3.09.2~/man/Makefile 2002-04-24 11:09:35.000000000 +0200 ++++ ocaml-3.09.2/man/Makefile 2006-05-04 00:27:38.000000000 +0200 +@@ -20,3 +20,5 @@ + for i in *.m; do cp $$i $(DIR)/`basename $$i .m`.$(MANEXT); done + echo '.so man$(MANEXT)/ocamlc.$(MANEXT)' > $(DIR)/ocamlc.opt.$(MANEXT) + echo '.so man$(MANEXT)/ocamlopt.$(MANEXT)' > $(DIR)/ocamlopt.opt.$(MANEXT) ++ echo '.so man$(MANEXT)/ocamldep.$(MANEXT)' > $(DIR)/ocamldep.opt.$(MANEXT) ++ echo '.so man$(MANEXT)/ocamllex.$(MANEXT)' > $(DIR)/ocamllex.opt.$(MANEXT) --- ocaml-3.10.0.orig/debian/ocaml-mode.emacsen-remove +++ ocaml-3.10.0/debian/ocaml-mode.emacsen-remove @@ -0,0 +1,15 @@ +#!/bin/sh -e +# /usr/lib/emacsen-common/packages/remove/ocaml-mode + +FLAVOR=$1 +PACKAGE=ocaml-mode + +if [ ${FLAVOR} != emacs ]; then + if test -x /usr/sbin/install-info-altdir; then + echo remove/${PACKAGE}: removing Info links for ${FLAVOR} + install-info-altdir --quiet --remove --dirname=${FLAVOR} /usr/info/#PACKAGE#.info.gz + fi + + echo remove/${PACKAGE}: purging byte-compiled files for ${FLAVOR} + rm -rf /usr/share/${FLAVOR}/site-lisp/${PACKAGE} +fi --- ocaml-3.10.0.orig/debian/camlp4.manpages +++ ocaml-3.10.0/debian/camlp4.manpages @@ -0,0 +1 @@ +debian/man/camlp4.1 --- ocaml-3.10.0.orig/debian/ocaml-source.dirs.in +++ ocaml-3.10.0/debian/ocaml-source.dirs.in @@ -0,0 +1 @@ +usr/src --- ocaml-3.10.0.orig/debian/ocaml-compiler-libs.postinst +++ ocaml-3.10.0/debian/ocaml-compiler-libs.postinst @@ -0,0 +1,7 @@ +#!/bin/sh -e + +if [ "$1" = "configure" ]; then + ocaml-md5sums update +fi + +#DEBHELPER# --- ocaml-3.10.0.orig/debian/policy/ocaml_packaging_policy.xml +++ ocaml-3.10.0/debian/policy/ocaml_packaging_policy.xml @@ -0,0 +1,71 @@ + + + + + + + +ocaml"> +ocaml-&ocaml-version;"> +ocaml-base-&ocaml-version;"> +ocaml-findlib"> +ocamldoc-base"> +OCaml"> + +ocamlc"> +ocamlopt"> +ocamldoc"> +ocamlfind"> +CamlP4"> + + + + + + + + + + + +]> + + + &debian-name; &ocaml-name; Packaging Policy for OCaml &ocaml-version; + Revision 0.7.1 + &authors; + &legal; + + + + Generalities about &ocaml-name; packages in Debian + &chapter-generalities; + + + + Packaging OCaml Programs + &chapter-progpack; + + + + Packaging OCaml libraries + &chapter-libpack; + + + + The OCaml CDBS class + &appendix-cdbs; + + + + &ocaml-force; resources + &appendix-resources; + + + + Using the SVN repository + &appendix-svn; + + --- ocaml-3.10.0.orig/debian/policy/chapter-progpack.xml +++ ocaml-3.10.0/debian/policy/chapter-progpack.xml @@ -0,0 +1,159 @@ +
+ Creating Packages for OCaml Programs + + Any package providing executables built from OCaml source should conform to the following guidelines. + + + + The source package should, if possible, use the name of the upstream + package without modifications. + + + + Programs which are not particularly CPU hungry should be + compiled into bytecode form, and the corresponding binary packages + should be Architecture: all in order to minimize + archive usage and avoid the need of rebuilding them on all + architectures. See for details on + this kind of packages. + + + + Other programs + should be compiled into native form on architectures where the native + compiler is available, and into bytecode on other architectures. + See for details on how to achieve + this. The corresponding binary packages should be Architecture: + any and will need to be built on any architecture. + + + + All bytecode executables should be linked dynamically against the shared libraries for C bindings, so as to not bloat the archive. + + + That said, often the upstream authors will favor statically linked bytecode executables, because so they don't need to worry about the presence of the dll stub libraries and such. This is not a valid reason to use statically linked bytecode in a Debian package. + + + +
+ +
+Bytecode Packages + +A bytecode package has all +its binaries compiled into bytecode. It depends on a package +containing the OCaml runtime system. By consequence, such a package +has its architecture field set to all. + + + +A bytecode package must depend on +ocaml-base-nox-&ocaml-version; (or +ocaml-base-&ocaml-version; if the program either +uses the Graphics or the LablTk module). In +order for the package to be able to be rebuilt or even binNMUed +without a change in the packaging, this version should not +be hardcoded in the debian/control +file. Instead, the package should depend on +ocaml-base-nox-${F:OCamlABI} and use OCAMLABI +:= $(shell ocamlc -version) and dh_gencontrol -- +-VF:OCamlABI="$(OCAMLABI)" in the +debian/rules file. + + + +A bytecode package must build-depend-indep on +ocaml-nox-&ocaml-version; (or +ocaml-&ocaml-version; if the program either uses +the Graphics or the LablTk module). The +current version number of OCaml should not be hardcoded +into the build-dependency (this is a deviation from a practice which +used be recommended but is depreciated now). Of course, if it is +necessary to ensure that the version of OCaml has a certain value then +version constraints can be used. However, this should be justified by +the requirements of the compilation of the program. + + + + Bytecode programs which are compiled by ocamlc -custom must not be stripped. In particular, their package should be excluded from the dh_strip script. When compiled this way, an elf executable is generated containing the ocaml interpreter, and the bytecode of the program in a section which is removed when the program is stripped. For more information, see the bug 256900. An override for the lintian warning is considered as acceptable in this situation. + + + + Bytecode programs should not be compiled for debugging, i.e. they should not + be compiled passing the option to + ocamlc (or ocamlc.opt). + + +
+ +
+ Bytecode and native versions of programs + + As explained in , native OCaml compilers are not available everywhere. For architectures missing native compiler, a bytecode version of the program should be provided. + + + + The package's debian/rules should build the native code executable if supported on the architecture it is built on, and fall back to building the bytecode version if no working native code compiler is available. Exceptions to this are the executables who are small or not time critical, which may be built only as bytecode. It is the decision of the individual maintainers to choose this, maybe guided by the practice of the upstream author. + + + + The availability of the native compiler can be tested in the debian/rules file by testing the possibility of executing /usr/bin/ocamlopt, and build the bytecode version or the native version of the program according to the result of the test. This is a sample snippet of debian/rules doing so: + + build-stamp: + dh_testdir + + if [ -x /usr/bin/ocamlopt ]; then \ + $(MAKE) opt; \ + else \ + $(MAKE) all; \ + fi + + + + + The bytecode versions are portable. In order to spare the buildds and the Debian archive, bytecode versions should be compiled once for all for big packages (which either take a lot of place on disks or take a lot of time to build). For example, the spamoracle package provides the spamoracle-byte package which is Architecture: all and contains the bytecode version of spamoracle, and the spamoracle package which contains the native version of spamoracle and is available only where a native OCaml compiler is available (Architecture: alpha amd64 arm i386 ia64 kfreebsd-i386 powerpc sparc). + + + + Bytecode versions of the programs should depend on ocaml-base-nox-&ocaml-version; (or ocaml-base-&ocaml-version; the program either uses the Graphics or the LablTk module). In order for the package to be able to be rebuilt or even binNMUed without a change in the packaging, this version should not be hardcoded in the debian/control file. Instead, the package should depend on ocaml-base-nox-${F:OCamlABI} and use OCAMLABI := $(shell ocamlc -version) and dh_gencontrol -- -VF:OCamlABI="$(OCAMLABI)" in the debian/rules file. + + + The following is a snippet of a sample debian/control: + + Package: spamoracle-byte + Architecture: all + Depends: ocaml-base-nox-${F:OCamlABI} + Provides: spamoracle + Conflicts: spamoracle + Replaces: spamoracle + + + The following its pairing debian/rules snippet: + + OCAMLABI := $(shell ocamlc -version) + ... + binary-indep: build install + dh_gencontrol -i -- -VF:OCamlABI="$(OCAMLABI)" + + + + + In the case where there is only one package, which provides either a native version where available or a bytecode version otherwise, the dependency on ocaml-base-nox-&ocaml-version; should be added only when the package is built in native mode. For example, the debian/control of approx contains: + + Package: approx + Architecture: any + Depends: ${shlibs:Depends}, ${F:OCamlRun}, adduser, bzip2, curl + + and the corresponding debian/rules contains: + + OCAMLABI = $(shell ocamlc -version) + BYTECODE = $(shell [ -x /usr/bin/ocamlopt ] || echo yes) + OCAMLRUN = $(if $(BYTECODE),ocaml-base-nox-$(OCAMLABI)) + ... + binary-arch: + ... + dh_gencontrol -- -VF:OCamlRun="$(OCAMLRUN)" + + + +
--- ocaml-3.10.0.orig/debian/policy/appendix-svn.xml +++ ocaml-3.10.0/debian/policy/appendix-svn.xml @@ -0,0 +1,292 @@ + +
+ Use SVN and let your users know about it + + (Hopefully) All OCaml-related Debian packages are maintained using a + centralized Subversion + (SVN for short) repository. This practice reduce the + efforts needed to contribute work inside &ocaml-force; and, in case of + need, provides a place where to massively perform changes to all + OCaml-related Debian packages. + + + Nonetheless, Debian users can benefit knowing we are using a SVN + repository (they can for instance subscribe to the RSS feed for changes + or have a place where to look for finding patches corresponding to bugs + tagged "pending" in the BTS). + + + For this reason it is recommended to add the + XS-Vcs-Svn and XS-Vcs-Browser fields to the + debian/control of packages maintained in + &ocaml-force; SVN repository. Its name specifies that we are + using Subversion as our Version Control System (VCS); + their values are the URLs pointing to the package's trunk directory and to + a browsable view of the same directory. See Bug + #391023 (which contains the forthcoming text for the Debian + Developer's Reference) for more information about these fields. + + + The general scheme for using the fields are thus: + + XS-Vcs-Svn: svn://svn.debian.org/svn/pkg-ocaml-maint/trunk/packages/PACKAGE_NAME + XS-Vcs-Browser: http://svn.debian.org/wsvn/pkg-ocaml-maint/trunk/packages/PACKAGE_NAME/trunk/ + + + Usage example of the XS-Vcs-* fields, from the + <application>findlib</application> package + + + Source: findlib + Section: devel + Priority: optional + Maintainer: Stefano Zacchiroli <zack@debian.org> + Build-Depends: debhelper (>> 4.0.0), ocaml (>= 3.09.2), m4, gawk | awk, dpatch, cdbs + Standards-Version: 3.7.2 + XS-Vcs-Svn: svn://svn.debian.org/svn/pkg-ocaml-maint/trunk/packages/findlib + XS-Vcs-Browser: http://svn.debian.org/wsvn/pkg-ocaml-maint/trunk/packages/findlib/trunk/ + + Package: ocaml-findlib + Section: devel + Architecture: any + Depends: ocaml-nox-${F:OCamlABI}, ${shlibs:Depends}, ${misc:Depends} + Description: Management tool for OCaml programming language libraries + ... + + + +
+ +
+ How to obtain a copy of the SVN repository + + You can obtain a copy of debian-ocaml-maint SVN repository by + + svn co svn+ssh://svn.debian.org/svn/pkg-ocaml-maint + + You must be member of the + Debian + OCaml Task Force in order to have write access to the repository. + +
+ +
+ Structure of the SVN repository + + We keep all files of the debian subdirectory under SVN control, and + upstream only as a compressed tarball. The rationale behind this is + that changes to upstream files should be managed by the dpatch patch + manager. Hence, all the diffs to upstream files are kept in a + subdirectory of debian/, and it is not necessary to manage upstream on + file-by-file basis. + + + + The structure of the pkg-ocaml-maint SVN repository is as follows, where + generic names are indicated in square brackets [ .. ], and where the + contents of subdirectories not directly relevant for package management + are not detailed: + + tags + packages + [package1] + [version1] + [version2] + ... + [package2] + [version1] + ... + ... + projects + test + trunk + packages + [package1] + trunk + debian + upstream + [upstream-tarball-version1] + [upstream-tarball-version2] + ... + [package2] + ... + policy + projects + tools + + +
+ +
+ How to add a new package to the SVN repository + + Place yourself in the directory trunk/packages of your working copy of + the SVN repository. Create a directory with the same name as your + source package (let's say, my-package), and subdirectories upstream + and trunk. Put the current upstream tarball in upstream, and the + current debian directory with all its relevant files in trunk. This + should now look like this: + + trunk/packages/my_package + upstream + my_package_1.2.3.orig.tar.gz + trunk + debian + changelog + control + copyright + patches + 00_list + 01_patch1.dpatch + ... + ... + + + + + If everything is in order you can do a svn add my_package from the trunk/packages directory, and eventually svn commit. + +
+ +
+ How to set up your package for use with <application>svn-buildpackage</application> + + + Please see the svn-buildpackage documentation for complete + information. The important issues here are: + + + + Since we keep upstream as a tarball we have to use svn-buildpackage in + so-called merge mode. This means that, before compiling the package, + the debianized source tree is constructed by untarring the orig tarball, and then merging the contents of the trunk subdirectory in it. + + + + + The structure of our SVN repository is not among the default structures + of svn-buildpackage. Hence, we have to override the default location of some + directories. + + + + + + + Place yourself in trunk/packages/my_packages/trunk, and do the following: + svn propset mergeWithUpstream 1 debian. + This registers the property "mergeWithUpstream" with the current + directory, such that svn-buildpackage knows + that it has to use merge mode as explained above. + + + + Create a file debian/svn-deblayout with the following contents: + +origDir=../upstream +origUrl=svn+ssh://svn.debian.org/svn/pkg-ocaml-maint/trunk/packages/my_package/upstream +tagsUrl=svn+ssh://svn.debian.org/svn/pkg-ocaml-maint/tags/packages/my_package + + + + + Remember that "my_package" has to be replaced by the name of your + actual package. svn-buildpackage will not include this file in the + source package when actually building the package. + + + + If you tried svn-buildpackage before writing your debian/svn-deblayout remember + to delete .svn/deb-layout, since svn-buildpackages caches here the content + of svn-deblayout (that would be empty in this case) and will ignore + your debian/svn-deblayout. + +
+ +
+ How to build a package with <application>svn-buildpackage</application> + + + Please refer to the svn-builpackage documentation for more complete + information. Here is just a quick guide. + + + + All options, except those starting on , are passed to + dpkg-buildpackage. Hence, basic usage should be something like this + (from the trunk/packages/my_package/trunk directory): svn-buildpackage -rfakeroot -uc -us. + + + + svn-buildpackage will complain when your copy + of the debian directory is not in sync with the repository. You may use + the option to override this behaviour. + The package will be build in the directory + ../build-area. + + + + If your package is ready for upload you may use the option + for the final build. This will put a tag in the svn-repository on the + current version, and add a new entry in the changlog to start working + on the upcomming next version: svn-buildpackage --svn-tag. + Provided you have commited all your changes to the svn repository, this + will after a successful build of the package create a tag for the current + version in tags/packages/my_package. The tagging is done directly in the + SVN repository. + + + + + Some useful aliases taken from the + svn-buildpackage HOWTO: + +alias svn-b='svn-buildpackage -rfakeroot --svn-dont-clean -us -uc --svn-ignore' +alias svn-bt='svn-buildpackage -rfakeroot --svn-lintian --svn-dont-clean --svn-tag' + + + + + The former (svn-b) is to be used for test builds, while you are + working on your package; while the latter (svn-bt) is to be used at + the end, after you commit your changes and just before uploading a new + version of the package to the debian archive. + + + + Adding -k<your gpg id> to the svn-bt alias may also be useful when working on + collaboratively maintained packages: + +alias svn-bt='svn-buildpackage -rfakeroot -k<gpgid> --svn-lintian --svn-dont-clean --svn-tag' + + + +
+ +
+ dpatch + + + dpatch will work properly at package build time with the SVN + structure described above since all of the build process will be + carried out in a fresh directory. However, invoking + debian/rules with the "clean" target in + the trunk/ directory will fail since + dpatch is unable to de-apply patches. Passing + to + svn-buildpackage fixes this + misbehaviour (aliases suggested above already include this + flag). + + + If you want to use dpatch-edit-patch to handle patches, you will need to invoke + it in "debian only mode" ( flag, see man dpatch-edit-patch) and to tell him + where to find the upstream tarball. Adding the following line to your + ~/.dpatch.conf will be enough: + +conf_origtargzpath=../upstream + + +
+ --- ocaml-3.10.0.orig/debian/policy/appendix-cdbs.xml +++ ocaml-3.10.0/debian/policy/appendix-cdbs.xml @@ -0,0 +1,59 @@ + + To help maintainers of OCaml-related packages in adhering to this policy, a + class for the CDBS + build system has been made available and is shipped as part of + the ocaml-nox package. Please consider using it in your + packages at it will both ease your work and permit to perform changes to a + wide range of packages acting on a single piece of software (the CDBS class + itself). + + + + To use the class in your package it is enough to include the file + /usr/share/cdbs/1/class/ocaml.mk from your + debian/rules. If you use debhelper (please do) you + should include the OCaml class after the debhelper on. A typical + debian/rules heading for a package using plain Makefile + (i.e. no autotools) and dpatch is as follows: + +#!/usr/bin/make -f +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/class/makefile.mk +include /usr/share/cdbs/1/class/ocaml.mk +include /usr/share/cdbs/1/rules/dpatch.mk + + For an example of such a package see the pcre-ocaml + Debian source package. + + + + A detailed description of how to use the OCaml CDBS class should be provided + in this section, but at the time of writing is a future work :-). In the + meantime if you know CDBS, the .mk files which compose the OCaml + class are well commented and they should give you enough information to + customize the build process of your package. The latest version of them is + available in the repository of the &ocaml-force; and can be browsed on the + web: + + + + ocaml-vars.mk + + + contains (Makefile) convenience variables which can be used in + debian/rules + + + + + + ocaml.mk + + + implements the class logic + + + + + + --- ocaml-3.10.0.orig/debian/policy/Makefile +++ ocaml-3.10.0/debian/policy/Makefile @@ -0,0 +1,27 @@ +NULL = +INSTALL_STUFF = \ + ocaml_packaging_policy.html/ \ + ocaml_packaging_policy.txt \ + $(NULL) + +all: html text + +# to be used on alioth for updating policy linked by pkg-ocaml-maint home page +install: all + cp -r $(INSTALL_STUFF) ~/pkg-ocaml-maint/htdocs/ + +html: ocaml_packaging_policy.html/index.html +text: ocaml_packaging_policy.txt + +ocaml_packaging_policy.html/index.html: ocaml_packaging_policy.xml *.xml + docbook2html $< -o $(dir $@) +ocaml_packaging_policy.txt: ocaml_packaging_policy.xml *.xml + docbook2txt $< + +clean: + $(RM) -rf ocaml_packaging_policy.html/ ocaml_packaging_policy.txt + +upload_web: all + scp -rC ocaml_packaging_policy ocaml_packaging_policy.html alioth.debian.org:/org/alioth.debian.org/chroot/home/groups/pkg-ocaml-maint/htdocs/ + +.PHONY: html text upload_web --- ocaml-3.10.0.orig/debian/policy/README +++ ocaml-3.10.0/debian/policy/README @@ -0,0 +1,23 @@ +----------------------- +* * +* HOWTO-XML * +* DOCBOOK * +* * +* * +----------------------- + + +If you are interested in writing in the policy, you should +take a look at + +http://docbook.sourceforge.net/ +http://www.oasis-open.org/docbook/documentation/reference/html/docbook.html + +When you finish write your part, just do a make clean && make all. It will result +in having ocaml_packaging_policy.html... + +Sylvain LE GALL +Sat, 18 October 2003 + +In order to compile the xml documents you need to install the package +docbook-utils. [Ralf, 5/7/2006] --- ocaml-3.10.0.orig/debian/policy/appendix-resources.xml +++ ocaml-3.10.0/debian/policy/appendix-resources.xml @@ -0,0 +1,6 @@ + + + &ocaml-force;'s website: http://pkg-ocaml-maint.alioth.debian.org/ (it's an Alioth project) + &ocaml-force;'s mailing list: debian-ocaml-maint@lists.debian.org (archives) + + --- ocaml-3.10.0.orig/debian/policy/authors.xml +++ ocaml-3.10.0/debian/policy/authors.xml @@ -0,0 +1,38 @@ + + + + The Debian OCaml Task Force +
debian-ocaml-maint@lists.debian.org
+
+
--- ocaml-3.10.0.orig/debian/policy/chapter-libpack.xml +++ ocaml-3.10.0/debian/policy/chapter-libpack.xml @@ -0,0 +1,315 @@ +
+ Creating Packages for OCaml Libraries + + + A package which provides an OCaml library called xxx should be split as follows: + + + + + For libraries which are not purely programmed in OCaml (e.g. C bindings), libxxx-ocaml should provide the shared library stubs (dll*.so), and all other stuff needed to run a bytecode executable that links into this library. It should depend on ocaml-base-&ocaml-version; (or ocaml-base-nox-&ocaml-version;) as well as any other library needed. The versioned dependency on ocaml-base is important since libraries are binary incompatible between releases of OCaml. + + + libxxx-ocaml packages should be in Section: libs + + + + + libxxx-ocaml-dev should provide the rest of the library package, in fact anything needed to develop programs using the library. If the library uses other libraries or C libraries, this package should depend on them. + + + + libxxx-ocaml-dev should depend on its + companion libxxx-ocaml package (if any). + The reason is that at compile time the &ocaml-name; compiler + will try to load the shared library stubs, aborting the + compilation in case of failure. Hence the development package + is useless if the corresponding stub package is missing. To + ensure compatibility the dependency among the two packages + should be strictly versioned. In order for the resulting + packages to be binNMU safe this + requirement states that the dependency should make use of a + ${binary:Version} substitution variable. + + + Dependency from a -dev package to its companion share + library stub package (if any), from the + <application>pcre-ocaml</application> package + + Package: libpcre-ocaml + Architecture: any + Section: libs + Depends: ocaml-base-nox-${F:OCamlABI}, ${shlibs:Depends}, ${misc:Depends} + ... + + Package: libpcre-ocaml-dev + Architecture: any + Section: libdevel + Depends: ocaml-nox-${F:OCamlABI}, libpcre3-dev (>= 4.5), libpcre-ocaml (= ${binary:Version}), ocaml-findlib (>= 1.1), ${misc:Depends} + ... + + + + + + libxxx-ocaml-dev packages should be in Section: libdevel + + + All &ocaml-name; bytecode libraries + (*.cma) and bytecode object files + (*.cmo) should be compiled for + debugging, i.e. they should be compiled passing the + option to ocamlc (or + ocamlc.opt). + + + + + + + Optionally, two other packages may be created: + + + + libxxx-ocaml-bin may include binaries provided by the library source package if they are numerous. This package should conform with the same regulations as other packages providing ocaml programs. It is only needed to split off this package if there is a significant number of programs included in the library, if not, the programs should go into libxxx-ocaml-dev. + + + + + libxxx-ocaml-doc may include any kind of documentation provided by the library source package or as separate documentation. Again, if there is only little documentation, they should go with the -dev package. + + + + + + + It is recommended that libraries use the option to pack all the modules provided by the library into one module. + + + We don't think upstream libraries will be moving to this scheme anytime soon (unless we actively lobby for it) so this is just a recommendation for now. + + + + It is recommended that each library package ships a META file in order to make the library usable via ocamlfind (see the Debian package ocaml-findlib). See for more information on this. + +
+ +
+ Paths for libraries + + + Libraries should be installed in &ocaml-sys-dir;/ or in a subdirectory of this directory. This includes in particular bytecode libraries (*.cma), native libraries (*.cmxa), bytecode object files (*.cmo), native object files (*.cmx), static libraries (*.a) and META files. The only exception to this rule is for shared libraries (dll*.so) which should be installed in &ocaml-sys-dir;/stublibs, as can it be seen in the &ocaml-sys-dir;/ld.conf file. + + + + If upstream developers already use a subdirectory of the OCaml standard library path, this path should be preserved in the Debian package but made relative to the standard library path of OCaml. Before using the provided subdirectory, packagers should obviously check if there is no subdirectory name clash with another OCaml library. + + + + If upstream developers don't use this scheme, packagers are encouraged not to install this library in the standard library directory. They should create at least a subdirectory per source package (in order to avoid name clashes). Packagers should also consider to do a larger separation by creating a subdirectory per binary package (in order to avoid META name clash). A suggested rule to choose name for this subdirectory is to use either the package name provided by the META of the upstream, or the name of the library itself. + +
+ +
+ Handling dependencies on OCaml + + Some parts of the package need to know the current version of OCaml. For example, libraries should be installed &ocaml-sys-dir;/. However, the current version of OCaml should never be hardcoded in the package (&ocaml-version; here). This would make a binNMU impossible when the version of OCaml changes. Instead .in files should be used where @OCamlABI@ is replaced at build-time by the current OCaml version. + + + + For example, the package ocaml-mad would normally contain a file libmad-ocaml-dev.install for installing files with dh_install, containing: + + usr/lib/ocaml/&ocaml-version;/mad/META + usr/lib/ocaml/&ocaml-version;/mad/*.a + usr/lib/ocaml/&ocaml-version;/mad/*.cm* + usr/lib/ocaml/&ocaml-version;/mad/*.ml* + + In order to avoid the explicit mention of the version of OCaml (&ocaml-version;), the package actually contains instead a file libmad-ocaml-dev.install.in which contains: + + usr/lib/ocaml/@OCamlABI@/mad/META + usr/lib/ocaml/@OCamlABI@/mad/*.a + usr/lib/ocaml/@OCamlABI@/mad/*.cm* + usr/lib/ocaml/@OCamlABI@/mad/*.ml* + + The string @OCamlABI@ is substituted at build-time by the version of OCaml. Here are the relevant parts of the debian/rules file: + + OCAMLABI := $(shell ocamlc -version) + OFILES := $(filter-out debian/control,$(patsubst %.in,%,$(wildcard debian/*.in))) + + ocamlinit: + for f in $(OFILES); do sed -e 's/@OCamlABI@/$(OCAMLABI)/g' $$f.in > $$f; done + + config.status: ocamlinit configure + [...] + + .PHONY: build clean binary-indep binary-arch binary install ocamlinit + + + + + The only exception to this rule (properly handled by the example above) is the debian/control file, which should never be generated at build-time. As explained in , the dependency should nevertheless not hardcode the version of OCaml: the debian/control file should have a Depends: ocaml-base-nox-${F:OCamlABI} which is filled by a dh_gencontrol -s -- -VF:OCamlABI="$(OCAMLABI)" in the debian/rules file. + +
+ +
+ Providing <filename>META</filename> files + + + The ocaml-findlib provides a tool (named ocamlfind) to handle OCaml libraries and store information about libraries dependencies, compiler flags, linking options, etc. Meta informations regarding a library are contained in files (usually one for each library), named META files, contained in the library directory. The distribution of META files is the best way to make more easy to use the Debian-specific oragnization of libraries. Packages distributing META files should suggest the use of &ocamlfind;, that is have a Suggest: ocaml-findlib. + + + + By default, &ocamlfind; will look for META in this order: + + &ocaml-metas-dir;/ + &ocaml-sys-dir;/package/ + + + + + The naming scheme of META is pretty simple. + + + + If the META file is placed in the subdirectory + of the package, it should be called META. + + + + + If the META file is placed in &ocaml-metas-dir;/, it should be called META.packagename, where packagename is the name of the subdirectory where the library is stored. + + + + + + + For example, the META file for the lablgtk library is named META and has path &ocaml-sys-dir;/lablgtk/META, where &ocaml-sys-dir; is the main OCaml installation directory and lablgtk is the lablgtk library directory. + + + + If upstream doesn't provide a META, packagers are encouraged to create one. In this case, the META should be sent to upstream authors, in order to have it included in the next version of the upstream source. For more information about META files, have a look at the Findlib manual, at the several META files provided by other packages (e.g. lablgtk, pxp, pcre, netstring, lablgl, ...) or ask on the debian-ocaml-maint mailing list for help. + +
+ + + +
+ &camlp4; + + Actually, &camlp4; extensions are stored in + &ocaml-sys-dir;/camlp4/. In order to do something + cleaner, &ocaml-force; proposes to put this files in their own directory, even in their + own package. It is not mandatory, but it could ease a lot by avoiding + name clashes. + + + + You just have to consider a &camlp4; file just as a standard library, except that you + prefix them with -syntax. For example: the syntax + extension coming with libokey-ocaml-dev should be stored + in &ocaml-sys-dir;/okey-syntax/, the package + containing it should be called libokey-syntax-ocaml-dev. + + + + It is recommended to use META to specify how to handle this + extension. + + + + All definition is taken from previous text considering syntax extension as a standalone + library. + + +
+ +
+ Documentation + + The documentation is a joint effort of &ocaml-force; and usptream. + There are many ways to have documentation: + + header files (*.mli), + source files (*.ml), + specific documentation provided by the upstream, + OCamldoc generated documentation. + + + + + This documentation should be browsable by different mean, from the + most simple to the most complex. At least, they should all be readable with + simple text editor. Specific and &ocamldoc; generated documentations should be provided in HTML format. + There are also at least two + specific &ocaml-name; browser : docbrowse shipped + with cameleon and ocamlbrowser + shipped with &ocaml-name; itself. The first one, needs specific + &ocamldoc; generated documentation. The second one enables + the user to browse directly the prototype of each function shipped in the cmi gives + to the application. + + + + You can generate &ocamldoc;-specific documentation by using + the of this application. By using this, you dump the + intermediary representation of the document that will be generated by ocamldoc. + This can be used to generate HTML documentation and manpages, by reloading this + file (using ). + + + + As of today, there is no way to post-process &ocamldoc; + specific documentation. A &debian-name; package is under construction to do this + task. It will be referred as &ocamldoc-base;. + +
--- ocaml-3.10.0.orig/debian/policy/legal.xml +++ ocaml-3.10.0/debian/policy/legal.xml @@ -0,0 +1,30 @@ + + 20022003200420052006 + Sylvain LE GALL, Sven LUTHER, Samuel MIMRAM, Ralf TREINEN, + and Stefano ZACCHIROLI + + + + This manual is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License + as published by the Free Software Foundation; either version + 2 of the License, or (at your option) any later version. + + + This is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See + the GNU General Public License for more details. + + + A copy of the GNU General Public License is available as + /usr/share/common-licenses/GPL in the Debian GNU/Linux + distribution or on the World Wide Web at + The GNU Public Licence. + + + You can also obtain it by writing to the + Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. + + --- ocaml-3.10.0.orig/debian/policy/chapter-generalities.xml +++ ocaml-3.10.0/debian/policy/chapter-generalities.xml @@ -0,0 +1,263 @@ +
+ Bytecode and Native Code + +
+ Bytecode and Native Code Executables + + + The OCaml compiler can produce two kinds of executables: bytecode + and native. Native executables (produced by the compiler + ocamlopt) are generally faster than bytecode + executables since they are compiled specifically for an + architecture. Bytecode executables (produced by the compiler + &ocamlc;) have the advantage of being portable, + which means that a bytecode executable can be run on any + architecture without having to be recompiled. Bytecode executables + are smaller than native code executables. If considering only one + process the advantage in size is annihilated by the need for the + OCaml run time system for executing bytecode, however there is an + advantage when running several bytecode processes in parallel + since the runtime system can then be shared. It should be noted + that OCaml compilers to native code are not provided for every + architecture. Only the following ones are supported: + &supported-archs;. + + + Packages providing both native and bytecode versions of a program + prog usually name them respectively + prog.opt and prog.byte + and provide a symbolic link prog to the best + available version (generally prog.opt). + +
+ +
+ Bytecode and Native Code Compilers + + + The ocaml-native-compilers package contains + the OCaml compiler executables built in native mode: + ocamlc.opt, which produces bytecode, and + ocamlopt.opt, which produces native + code. Since the OCaml compilers are themselves written in OCaml + this package exists only on architectures where compilation to + native code is supported. + + + + The ocaml-nox package contains the OCaml + compiler executables built in bytecode mode: + ocamlc, which produces bytecode, and on + architectures where compilation to native code is supported the + compiler ocamlopt, which produces native + code. It is important to understand that on architectures where + compilation to native code is supported both + packages contain compilers from OCaml to both bytecode and native + code, the difference lies in the nature (installation size and + execution speed) of the compiler executables. + + + + OCaml Compilers + + + + + Compiles to bytecode + Compiles to native code + + + + + Compiler executable in bytecode + ocamlc + ocamlopt + + + Compiler executable in native code + ocamlc.opt + ocamlopt.opt + + + +
+ + + + Compiling with native code versions of the compilers is generally + faster than with compilers in bytecode. Unfortunately, the + ocaml-native-compilers package is not + available on every architecture. Packages should + therefore never depend directly on this package. In + order to build big programs and benefit from this natively built + compiler, packages should depend on + ocaml-best-compilers which itself depends on + ocaml-native-compilers where available and on + ocaml elsewhere. Since it is a virtual + package, it cannot (yet) be a versioned dependency. The version + dependency should thus be carried by the + ocaml dependency. Note that dependency on + ocaml-best-compilers is only necessary for + real big programs for which compilation takes a lot of + resources. For most small programs the compilers from the + ocaml-nox package are perfectly sufficient, + and faster to install in a build environment than compiler executables + in native code. + +
+
+ +
+ OCaml in Debian + + + At the time of this writing, the latest version of OCaml in + Debian is &ocaml-version;. + +
+ Packages for OCaml + + The ocaml package depends on all the basic + packages needed to develop programs with OCaml. More specifically, + the packaging of OCaml is split into smaller packages. The + packages with suffix -nox contain libraries + that don't need X (i.e., for programs that don't use the + Graphics or LablTk modules) in order to + avoid dependencies on big packages for users who do not need to + run graphical applications. Here is the list of binary packages into + which OCaml is split: + + + + + The ocaml and ocaml-nox packages contain the compiler and its libraries. + + + + + The ocaml-native-compilers package contains the OCaml compilers built in native mode (ocamlc.opt and ocamlopt.opt). + + + The compilers themselves are built in native mode, nonetheless, both compilers for compiling toward bytecode and native code are contained in this package. + + + + + The ocaml-base and ocaml-base-nox packages contain the interpreter and runtime libraries needed by bytecode programs compiled with OCaml (in particular, the package ocaml-base-nox contains the ocamlrun program). + + + + + The ocaml-interp package contains the toplevel system for OCaml (ocaml) which provides for an interactive interpreter of the language. + + + + + The ocaml-mode package contains the OCaml Emacs mode (the one provided with OCaml, not the tuareg mode which is in the package tuareg-mode). + + + + + The ocaml-source package contains the sources of the OCaml compiler. + + + + + The ocaml-compiler-libs package contains some internal libraries of the OCaml compiler (needed only in very rare cases, e.g. for developing languages which reuse OCaml internals). + + + + + + + Since libraries produced by OCaml are binary incompatible when + compiled with different releases of OCaml, versioned virtual + packages are also provided by packages at items (1) and (2): + ocaml-&ocaml-version;, + ocaml-nox-&ocaml-version;, + ocaml-base-&ocaml-version;, + ocaml-base-nox-&ocaml-version;. + +
+ +
+ OCaml Location + + The root of all installed OCaml libraries is the OCaml + standard library directory, which is + /usr/lib/ocaml/VERSION/, at the time of writing + &ocaml-sys-dir;. This location can be obtained + from the OCaml compiler by invoking it as ocamlc -where. + + +
+ +
+ + + +
+ Files Used and Produced by the OCaml Compiler + + + The &ocaml-name; compiler can produce or use the following kind of files: + + bytecode executables (they can be recognized since they start with the shebang line #!/usr/bin/ocamlrun) + + bytecode executables linked in custom mode. They are generated by ocamlc (or ocamlc.opt), when the -custom flag is given at link time. Those executables are in ELF format and include both the final bytecode and the bytecode interpreter. strip should never be invoked on them, since it will remove the bytecode part. + + + native executables (in ELF format) + bytecode libraries (*.cma) + native libraries (*.cmxa) + shared libraries (for C bindings) (dll*.so, lib*.so) + static libraries (for C bindings) (lib*.a) + bytecode object files (*.cmo) + native object files (*.cmx) + configuration files for handling libraries with ocamlfind (META) + + + + +
+ +
+ Locally Installing OCaml Programs and Libraries + + + Installation and use of locally installed OCaml related programs is out of the scope of this document. However, in order to have it work with a standard Debian installation, you should follow some guidelines. + + + + Executable files should be installed in /usr/local/bin. + + + + + Shared libraries (for C bindings) should be installed in /usr/local/lib/ocaml/&ocaml-version;/stublibs/ + + + + + Basically, every other file should be installed in /usr/local/lib/ocaml/&ocaml-version;/. This includes in particular bytecode libraries (*.cma), native libraries (*.cmxa), bytecode object files (*.cmo), native object files (*.cmx), static libraries (*.a) and META files. + + + + + + + The default configuration of ocamlfind (the OCaml + library manager recommended in Debian) first looks for a local + installation of libraries and then for libraries installed by Debian + packages. The next section describes the standard paths for files + contained in Debian packages. + + + + + The + preceding any library in the of ocamlc or ocamlopt won't be expanded to the local standard library path. You need to specify the path entirely. + + + +
--- ocaml-3.10.0.orig/debian/ocaml-base-nox.postinst.in +++ ocaml-3.10.0/debian/ocaml-base-nox.postinst.in @@ -0,0 +1,30 @@ +#!/bin/sh +if [ ! -e /usr/local/lib/ocaml ]; then + if mkdir /usr/local/lib/ocaml 2>/dev/null; then + chown root:staff /usr/local/lib/ocaml + chmod 2775 /usr/local/lib/ocaml + fi +fi +if [ ! -e /usr/local/lib/ocaml/#OcamlABI# ]; then + if mkdir /usr/local/lib/ocaml/#OcamlABI# 2>/dev/null; then + chown root:staff /usr/local/lib/ocaml/#OcamlABI# + chmod 2775 /usr/local/lib/ocaml/#OcamlABI# + fi +fi +if [ ! -e /usr/local/lib/ocaml/#OcamlABI#/stublibs ]; then + if mkdir /usr/local/lib/ocaml/#OcamlABI#/stublibs 2>/dev/null; then + chown root:staff /usr/local/lib/ocaml/#OcamlABI#/stublibs + chmod 2775 /usr/local/lib/ocaml/#OcamlABI#/stublibs + fi +fi + +for i in /usr/lib/ocaml/3.06 /etc/ocaml /var/lib/ocaml /usr/lib/ocaml; \ +do \ + if [ -e $i/ld.conf ]; then \ + echo "Removing leftover $i/ld.conf"; \ + rm -f $i/ld.conf; \ + rmdir --ignore-fail-on-non-empty $i; \ + fi; \ +done + +#DEBHELPER# --- ocaml-3.10.0.orig/debian/ocaml-nox.install.in +++ ocaml-3.10.0/debian/ocaml-nox.install.in @@ -0,0 +1,4 @@ +debian/cdbs/* /usr/share/cdbs/1/class/ +debian/ocaml-nox.override /usr/share/lintian/overrides/ocaml-nox +config/Makefile /usr/lib/ocaml/#OcamlABI#/config/Makefile +debian/native-archs /usr/lib/ocaml/#OcamlABI#/ --- ocaml-3.10.0.orig/debian/ocaml-base.files.in +++ ocaml-3.10.0/debian/ocaml-base.files.in @@ -0,0 +1,3 @@ +usr/lib/ocaml/#OcamlABI#/stublibs/dllgraphics.so +usr/lib/ocaml/#OcamlABI#/stublibs/dlllabltk.so +usr/lib/ocaml/#OcamlABI#/stublibs/dlltkanim.so --- ocaml-3.10.0.orig/debian/ocaml-nox.override.in +++ ocaml-3.10.0/debian/ocaml-nox.override.in @@ -0,0 +1 @@ +script-not-executable ./usr/lib/ocaml/#OcamlABI#/camlheader --- ocaml-3.10.0.orig/debian/svn-deblayout +++ ocaml-3.10.0/debian/svn-deblayout @@ -0,0 +1,3 @@ +origDir=../upstream +origUrl=svn+ssh://svn.debian.org/svn/pkg-ocaml-maint/trunk/packages/ocaml/upstream +tagsUrl=svn+ssh://svn.debian.org/svn/pkg-ocaml-maint/tags/packages/ocaml --- ocaml-3.10.0.orig/debian/ocaml.dirs.in +++ ocaml-3.10.0/debian/ocaml.dirs.in @@ -0,0 +1,3 @@ +usr/bin +usr/lib/ocaml/#OcamlABI# +usr/share/doc/ocaml --- ocaml-3.10.0.orig/debian/ocaml-mode.emacsen-install +++ ocaml-3.10.0/debian/ocaml-mode.emacsen-install @@ -0,0 +1,55 @@ +#! /bin/sh -e +# /usr/lib/emacsen-common/packages/install/ocaml-mode + +# Written by Jim Van Zandt , borrowing heavily +# from the install scripts for gettext by Santiago Vila +# and octave by Dirk Eddelbuettel . + +FLAVOR=$1 +PACKAGE=ocaml-mode + +if [ ${FLAVOR} = emacs ]; then exit 0; fi + +echo install/${PACKAGE}: Handling install for emacsen flavor ${FLAVOR} + +FLAVORTEST=`echo $FLAVOR | cut -c-6` +if [ ${FLAVORTEST} = xemacs ] ; then + SITEFLAG="-no-site-file" +else + SITEFLAG="--no-site-file" +fi +FLAGS="${SITEFLAG} -q -batch -l path.el -f batch-byte-compile" + +ELDIR=/usr/share/emacs/site-lisp/${PACKAGE} +ELCDIR=/usr/share/${FLAVOR}/site-lisp/${PACKAGE} + +# Install-info-altdir does not actually exist. +# Maybe somebody will write it. +if test -x /usr/sbin/install-info-altdir; then + echo install/${PACKAGE}: install Info links for ${FLAVOR} + install-info-altdir --quiet --section "" "" --dirname=${FLAVOR} /usr/info/${PACKAGE}.info.gz +fi + +install -m 755 -d ${ELCDIR} + +cd ${ELDIR} +case "${FLAVOR}" in + xemacs21) + FILES=`ls *.el | grep -v caml-emacs` + ;; + + *) + FILES=`ls *.el | grep -v caml-xemacs` + ;; + +esac +cp ${FILES} ${ELCDIR} +cd ${ELCDIR} + +cat << EOF > path.el +(setq load-path (cons "." load-path) byte-compile-warnings nil) +EOF +${FLAVOR} ${FLAGS} ${FILES} +rm -f *.el path.el + +exit 0 --- ocaml-3.10.0.orig/debian/control.in +++ ocaml-3.10.0/debian/control.in @@ -0,0 +1,210 @@ +Source: ocaml +Section: devel +Priority: optional +Maintainer: Debian OCaml Maintainers +Uploaders: Sven Luther , Stefano Zacchiroli , Julien Cristau , Samuel Mimram , Sylvain Le Gall +Build-Depends: debhelper (>> 4.0.2), tcl8.4-dev, tk8.4-dev, libncurses5-dev, libgdbm-dev, dpatch, bzip2, docbook-xml, docbook-utils +Standards-Version: 3.7.2 +XS-Vcs-Svn: svn://svn.debian.org/svn/pkg-ocaml-maint/trunk/packages/ocaml +XS-Vcs-Browser: http://svn.debian.org/wsvn/pkg-ocaml-maint/trunk/packages/ocaml/trunk/ + +Package: ocaml-nox +Architecture: any +Depends: libncurses5-dev, ocaml-base-nox (=${binary:Version}), ocaml-base-nox-${F:OCamlABI}, ocaml-interp-${F:OCamlABI}, gcc, binutils +Suggests: ocaml-doc, libgdbm-dev, tuareg-mode | ocaml-mode +Recommends: camlp4, ledit, file +Provides: ocaml-nox-${F:OCamlABI}, ${F:BestProvides}, libnums-ocaml-dev +Replaces: camlp4 (<< 3.10.0), ocaml (<< 3.07.2a-3), libnums-ocaml-dev +Conflicts: camlp4 (<< 3.10.0), camlidl (<< 1.04), ocaml (<< 3.07.2a-3), libnums-ocaml-dev +Description: ML language implementation with a class-based object system + Objective Caml (OCaml) 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. + . + OCaml comprises two compilers. One generates bytecode + which is then interpreted by a C program. This compiler runs quickly, + generates compact code with moderate memory requirements, and is + portable to essentially any 32 or 64 bit Unix platform. Performance of + generated programs is quite good for a bytecoded implementation: + almost twice as fast as Caml Light 0.7. This compiler can be used + either as a standalone, batch-oriented compiler that produces + standalone programs, or as an interactive, toplevel-based system. + . + The other compiler generates high-performance native code for a number + of processors. Compilation takes longer and generates bigger code, but + the generated programs deliver excellent performance, while retaining + the moderate memory requirements of the bytecode compiler. It is not + available on all arches though. + . + This package contains everything needed to develop ocaml applications + that do not require the graphics library. + +Package: camlp4 +Architecture: any +Depends: ocaml-nox-${F:OCamlABI} +Provides: camlp4-${F:OCamlABI} +Description: Pre Processor Pretty Printer for OCaml + Objective Caml (OCaml) 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. + . + CamlP4 is a Pre-Processor-Pretty-Printer for Objective Caml. It + offers tools for syntax (Stream Parsers and Grammars) and the + ability to modify the concrete syntax of the language + (Quotations, Syntax Extensions). + . + This package contains the basic CamlP4 executables and libraries + for pre-processing and pretty-printing OCaml sources both + interactively and in a batch fashion. + +Package: camlp4-extra +Architecture: any +Depends: camlp4-${F:OCamlABI} +Description: Pre Processor Pretty Printer for OCaml - extras + Objective Caml (OCaml) 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. + . + CamlP4 is a Pre-Processor-Pretty-Printer for Objective Caml. It + offers tools for syntax (Stream Parsers and Grammars) and the + ability to modify the concrete syntax of the language + (Quotations, Syntax Extensions). + . + This package contains pre-linked executables and libraries for + pre-processing and pretty-printing OCaml sources out of the box + for various common needs. + +Package: ocaml +Architecture: any +Depends: ocaml-base (= ${binary:Version}), ocaml-base-${F:OCamlABI}, ocaml-nox-${F:OCamlABI} +Suggests: tcl8.4-dev, tk8.4-dev +Provides: ocaml-${F:OCamlABI} +Description: ML language implementation with a class-based object system + Objective Caml (OCaml) 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. + . + OCaml comprises two compilers. One generates bytecode + which is then interpreted by a C program. This compiler runs quickly, + generates compact code with moderate memory requirements, and is + portable to essentially any 32 or 64 bit Unix platform. Performance of + generated programs is quite good for a bytecoded implementation: + almost twice as fast as Caml Light 0.7. This compiler can be used + either as a standalone, batch-oriented compiler that produces + standalone programs, or as an interactive, toplevel-based system. + . + The other compiler generates high-performance native code for a number + of processors. Compilation takes longer and generates bigger code, but + the generated programs deliver excellent performance, while retaining + the moderate memory requirements of the bytecode compiler. It is not + available on all arches though. + . + This package contains everything needed to develop ocaml applications, + including the graphics libraries. + +Package: ocaml-base-nox +Architecture: any +Provides: ocaml-base-nox-${F:OCamlABI}, libnums-ocaml +Depends: ${shlibs:Depends} +Replaces: ocaml-base (<< 3.07.2a-3), libnums-ocaml +Conflicts: ocaml (<< 3.04-2), ocaml-base (<< 3.07.2a-3), libnums-ocaml +Description: Runtime system for ocaml bytecode executables + Objective Caml (OCaml) 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 only the runtime system needed to run bytecode + executables that do not use the graphics library. The `ocaml' package + contains the full development suite of Objective Caml. + +Package: ocaml-base +Architecture: any +Depends: ${shlibs:Depends}, ocaml-base-nox-${F:OCamlABI} +Provides: ocaml-base-${F:OCamlABI} +Description: Runtime system for ocaml bytecode executables + Objective Caml (OCaml) 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 only the runtime system needed to run bytecode + executables. The `ocaml' package contains the full development suite of + Objective Caml. You may wish to install the 'ocaml-base-nox' package if + you do not require any graphical capabilities for your runtime. + +Package: ocaml-native-compilers +Architecture: #OcamlNativeArchs# +Depends: ocaml-nox (= ${binary:Version}), ocaml-nox-${F:OCamlABI}, gcc, binutils, ${shlibs:Depends} +Provides: ocaml-best-compilers +Replaces: ocaml-nox (<= 3.09.2-3) +Description: Native code compilers of the ocaml suite (the .opt ones) + Objective Caml (OCaml) 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 native code version of the compilers and lexer + (ocamlc.opt, ocamllex.opt, ocamlopt.opt, camlp4o.opt and camlp4r.opt). + The normal version of these programs are found in the ocaml package. + For big source codes, these packages can be two to three times faster, but + for most normal sized sources, the difference won't be noticeable. + +Package: ocaml-source +Architecture: all +Provides: ocaml-source-${F:OCamlABI} +Description: Sources for Objective Caml + Objective Caml (OCaml) 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 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: any +Provides: ocaml-interp-${F:OCamlABI} +Depends: ocaml-base-nox-${F:OCamlABI} +Recommends: ledit +Replaces: ocaml (<< 3.07.2a-3) +Conflicts: ocaml (<< 3.07.2a-3) +Description: OCaml interactive interpreter and standard libraries + Objective Caml (OCaml) 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. + +Package: ocaml-compiler-libs +Architecture: any +Provides: ocaml-compiler-libs-${F:OCamlABI} +Depends: ocaml-nox-${F:OCamlABI} +Description: OCaml interpreter and standard libraries + Objective (OCaml) 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 several modules used internally by the ocaml + compilers. They are not needed for normal ocaml development, but may + be helpful in the development of certain applications. + +Package: ocaml-mode +Architecture: all +Depends: emacs21 | emacsen +Suggests: ocaml +Conflicts: ocaml-nox (<< 3.08.3-8) +Description: A major mode for editing Objective Caml in Emacs + Objective (OCaml) 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 provides support for editing both Objective Caml and + Caml Light programs with Emacs and XEmacs. + . + Caml-mode supports: + - indentation + - compilation and error retrieving + - interaction with the toplevel + - font-lock + - imenu --- ocaml-3.10.0.orig/debian/ocaml-compiler-libs.copyright +++ ocaml-3.10.0/debian/ocaml-compiler-libs.copyright @@ -0,0 +1,135 @@ +This package was debianized by Sven Luther on +Fri, 14 Dec 2001 12:44:03 +0100. + +It was downloaded from: + + http://caml.inria.fr/pub/distrib/ocaml-3.10/ + +Upstream Authors: Xavier Leroy, Jerome Vouillon and Damien Doligez +Upstream Author for the camlp4 part: Daniel de Rauglaudre + +NOTE: All of the files in the compiler-libs package fall under the +license of "the Compiler" below, which means that they are QPL, +NOT LGPL. + +Copyright: + +In the following, "the Compiler" refers to all files marked "Copyright +INRIA" in the following directories and their sub-directories: + + asmcomp, boot, bytecomp, debugger, driver, lex, ocamldoc, parsing, + tools, toplevel, typing, utils, yacc + +The Compiler is distributed under the terms of the Q Public License +version 1.0 with a change to choice of law (included below). + +As a special exception to the Q Public Licence, you may develop +application programs, reusable components and other software items +that link with the original or modified versions of the Compiler +and are not made available to the general public, without any of the +additional requirements listed in clause 6c of the Q Public licence. + +---------------------------------------------------------------------- + + THE Q PUBLIC LICENSE version 1.0 + + Copyright (C) 1999 Troll Tech AS, Norway. + Everyone is permitted to copy and + distribute this license document. + +The intent of this license is to establish freedom to share and change +the software regulated by this license under the open source model. + +This license applies to any software containing a notice placed by the +copyright holder saying that it may be distributed under the terms of +the Q Public License version 1.0. Such software is herein referred to +as the Software. This license covers modification and distribution of +the Software, use of third-party application programs based on the +Software, and development of free software which uses the Software. + + Granted Rights + +1. You are granted the non-exclusive rights set forth in this license +provided you agree to and comply with any and all conditions in this +license. Whole or partial distribution of the Software, or software +items that link with the Software, in any form signifies acceptance of +this license. + +2. You may copy and distribute the Software in unmodified form +provided that the entire package, including - but not restricted to - +copyright, trademark notices and disclaimers, as released by the +initial developer of the Software, is distributed. + +3. You may make modifications to the Software and distribute your +modifications, in a form that is separate from the Software, such as +patches. The following restrictions apply to modifications: + + a. Modifications must not alter or remove any copyright notices + in the Software. + + b. When modifications to the Software are released under this + license, a non-exclusive royalty-free right is granted to the + initial developer of the Software to distribute your + modification in future versions of the Software provided such + versions remain available under these terms in addition to any + other license(s) of the initial developer. + +4. You may distribute machine-executable forms of the Software or +machine-executable forms of modified versions of the Software, +provided that you meet these restrictions: + + a. You must include this license document in the distribution. + + b. You must ensure that all recipients of the machine-executable + forms are also able to receive the complete machine-readable + source code to the distributed Software, including all + modifications, without any charge beyond the costs of data + transfer, and place prominent notices in the distribution + explaining this. + + c. You must ensure that all modifications included in the + machine-executable forms are available under the terms of this + license. + +5. You may use the original or modified versions of the Software to +compile, link and run application programs legally developed by you or +by others. + +6. You may develop application programs, reusable components and other +software items that link with the original or modified versions of the +Software. These items, when distributed, are subject to the following +requirements: + + a. You must ensure that all recipients of machine-executable + forms of these items are also able to receive and use the + complete machine-readable source code to the items without any + charge beyond the costs of data transfer. + + b. You must explicitly license all recipients of your items to + use and re-distribute original and modified versions of the + items in both machine-executable and source code forms. The + recipients must be able to do so without any charges whatsoever, + and they must be able to re-distribute to anyone they choose. + + c. If the items are not available to the general public, and the + initial developer of the Software requests a copy of the items, + then you must supply one. + + Limitations of Liability + +In no event shall the initial developers or copyright holders be +liable for any damages whatsoever, including - but not restricted to - +lost revenue or profits or other direct, indirect, special, incidental +or consequential damages, even if they have been advised of the +possibility of such damages, except to the extent invariable law, if +any, provides otherwise. + + No Warranty + +The Software and this license document are provided AS IS with NO +WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + + Choice of Law + +This license is governed by the Laws of France. --- ocaml-3.10.0.orig/debian/ocaml-nox.preinst +++ ocaml-3.10.0/debian/ocaml-nox.preinst @@ -0,0 +1,7 @@ +#!/bin/sh -e + +if [ ! -h /usr/include/caml ] && [ -e /usr/include/caml ]; then + echo "WARNING, /usr/include/caml is not a symlink !!!!" +fi + +#DEBHELPER# --- ocaml-3.10.0.orig/debian/ocaml.docs +++ ocaml-3.10.0/debian/ocaml.docs @@ -0,0 +1 @@ +otherlibs/labltk/examples_labltk --- ocaml-3.10.0.orig/debian/ocaml-base-nox.dirs.in +++ ocaml-3.10.0/debian/ocaml-base-nox.dirs.in @@ -0,0 +1,4 @@ +usr/bin +usr/share/man/man1 +usr/lib/ocaml/#OcamlABI# +usr/lib/ocaml/#OcamlABI#/stublibs --- ocaml-3.10.0.orig/debian/ocaml.xpm +++ ocaml-3.10.0/debian/ocaml.xpm @@ -0,0 +1,290 @@ +/* XPM */ +static char * ocaml_32_xpm[] = { +"32 32 255 2", +" c None", +". c #FFFFFF", +"+ c #6666FF", +"@ c #CC6666", +"# c #6767FF", +"$ c #6969FF", +"% c #6A6AFF", +"& c #6E6EFF", +"* c #7070FF", +"= c #7373FF", +"- c #7575FF", +"; c #7777FF", +"> c #7979FF", +", c #7A7AFF", +"' c #7D7DFF", +") c #7F7FFF", +"! c #8383FF", +"~ c #8585FF", +"{ c #8686FF", +"] c #8888FF", +"^ c #8D8DFF", +"/ c #8F8FFF", +"( c #9191FF", +"_ c #9494FF", +": c #9797FF", +"< c #9999FF", +"[ c #9B9BFF", +"} c #9C9CFF", +"| c #A3A3FF", +"1 c #A9A9FF", +"2 c #ABABFF", +"3 c #ADADFF", +"4 c #AFAFFF", +"5 c #B1B1FF", +"6 c #B5B5FF", +"7 c #B8B8FF", +"8 c #BABAFF", +"9 c #BEBEFF", +"0 c #C1C1FF", +"a c #C2C2FF", +"b c #C4C4FF", +"c c #C9C9FF", +"d c #CCCCFF", +"e c #CFCFFF", +"f c #D3D3FF", +"g c #D4D4FF", +"h c #D6D6FF", +"i c #D8D8FF", +"j c #DADAFF", +"k c #DFDFFF", +"l c #E0E0FF", +"m c #E5E5FF", +"n c #E6E6FF", +"o c #E9E9FF", +"p c #EBEBFF", +"q c #ECECFF", +"r c #EFEFFF", +"s c #F2F2FF", +"t c #F5F5FF", +"u c #F7F7FF", +"v c #F8F8FF", +"w c #FAFAFF", +"x c #FDFDFF", +"y c #FEFEFF", +"z c #C96464", +"A c #BD5E5E", +"B c #B95C5C", +"C c #9D4E4E", +"D c #CB6666", +"E c #CA6565", +"F c #C76464", +"G c #C66363", +"H c #C46262", +"I c #C26161", +"J c #BF6060", +"K c #BB5E5E", +"L c #BA5D5D", +"M c #B75C5C", +"N c #B65B5B", +"O c #B35A5A", +"P c #B25959", +"Q c #AE5757", +"R c #AB5656", +"S c #AA5555", +"T c #A85454", +"U c #A65353", +"V c #A35252", +"W c #9B4E4E", +"X c #964B4B", +"Y c #944A4A", +"Z c #924949", +"` c #904848", +" . c #8C4646", +".. c #8B4646", +"+. c #884444", +"@. c #874444", +"#. c #854343", +"$. c #824141", +"%. c #341A1A", +"&. c #CD6868", +"*. c #CC6767", +"=. c #C26262", +"-. c #9E5050", +";. c #653333", +">. c #934B4B", +",. c #793E3E", +"'. c #673535", +"). c #CE6B6B", +"!. c #CD6A6A", +"~. c #592E2E", +"{. c #B86060", +"]. c #613333", +"^. c #CE6D6D", +"/. c #AA5A5A", +"(. c #A45757", +"_. c #BE6565", +":. c #CF6F6F", +"<. c #CF7070", +"[. c #9D5555", +"}. c #D07272", +"|. c #402323", +"1. c #D17474", +"2. c #6F3E3E", +"3. c #C26D6D", +"4. c #BA6868", +"5. c #D17676", +"6. c #884D4D", +"7. c #D27777", +"8. c #D27979", +"9. c #D47C7C", +"0. c #8C5252", +"a. c #D37C7C", +"b. c #BD7070", +"c. c #D58080", +"d. c #D47F7F", +"e. c #7D4B4B", +"f. c #D68383", +"g. c #D58282", +"h. c #D78585", +"i. c #D28383", +"j. c #D78787", +"k. c #D78888", +"l. c #D88989", +"m. c #B47373", +"n. c #D88B8B", +"o. c #A66B6B", +"p. c #D98D8D", +"q. c #D98E8E", +"r. c #CE8787", +"s. c #573A3A", +"t. c #926262", +"u. c #875B5B", +"v. c #DB9494", +"w. c #D69191", +"x. c #8C5F5F", +"y. c #BC8080", +"z. c #DC9797", +"A. c #A97474", +"B. c #DD9999", +"C. c #4E3636", +"D. c #DE9B9B", +"E. c #DD9A9A", +"F. c #8B6161", +"G. c #DE9D9D", +"H. c #CC9191", +"I. c #DF9F9F", +"J. c #DFA0A0", +"K. c #D99C9C", +"L. c #B18080", +"M. c #E0A3A3", +"N. c #8F6868", +"O. c #E1A5A5", +"P. c #E3AAAA", +"Q. c #DAA3A3", +"R. c #D6A0A0", +"S. c #9A7474", +"T. c #E3ACAC", +"U. c #C49494", +"V. c #E4AFAF", +"W. c #967373", +"X. c #725858", +"Y. c #E6B2B2", +"Z. c #836666", +"`. c #E7B5B5", +" + c #DAABAB", +".+ c #E7B7B7", +"++ c #C9A0A0", +"@+ c #957878", +"#+ c #E9BDBD", +"$+ c #9D7F7F", +"%+ c #655252", +"&+ c #E9BEBE", +"*+ c #B89999", +"=+ c #C9A8A8", +"-+ c #ECC6C6", +";+ c #EAC5C5", +">+ c #A58B8B", +",+ c #EDC8C8", +"'+ c #786666", +")+ c #EECBCB", +"!+ c #EDCACA", +"~+ c #867373", +"{+ c #EECDCD", +"]+ c #D6B8B8", +"^+ c #C3A8A8", +"/+ c #EFCFCF", +"(+ c #EACBCB", +"_+ c #E2C4C4", +":+ c #BBA4A4", +"<+ c #F0D3D3", +"[+ c #AD9999", +"}+ c #E8CECE", +"|+ c #C3AEAE", +"1+ c #F3DADA", +"2+ c #F2D9D9", +"3+ c #E2CBCB", +"4+ c #EAD3D3", +"5+ c #A89797", +"6+ c #F4DEDE", +"7+ c #F3DDDD", +"8+ c #9A8D8D", +"9+ c #F6E2E2", +"0+ c #E9D7D7", +"a+ c #A79B9B", +"b+ c #A29696", +"c+ c #F7E6E6", +"d+ c #F6E5E5", +"e+ c #F2E2E2", +"f+ c #EBDCDC", +"g+ c #C8BCBC", +"h+ c #F4E6E6", +"i+ c #D8CCCC", +"j+ c #F8EBEB", +"k+ c #F6EAEA", +"l+ c #EEE2E2", +"m+ c #F9EEEE", +"n+ c #FAF1F1", +"o+ c #DED6D6", +"p+ c #FBF3F3", +"q+ c #F6EEEE", +"r+ c #CDC6C6", +"s+ c #FCF5F5", +"t+ c #FBF5F5", +"u+ c #F6F1F1", +"v+ c #ECE7E7", +"w+ c #FCF8F8", +"x+ c #FAF6F6", +"y+ c #E6E2E2", +"z+ c #F0EDED", +"A+ c #FDFBFB", +"B+ c #F9F7F7", +"C+ c #F7F5F5", +"D+ c #F2F0F0", +"E+ c #FEFDFD", +"F+ c #FDFCFC", +" c.c. ", +" c.;+c.z.z. ", +" c.c.c.v.^.o. ", +" c.c.c.c.D .:+ ", +"c.c.c.a.@ L #.|+ n.n.n. n.n. ", +"c.c.c.P T O W *+ z.z.n.n.z. n.n.n. ", +"D.l.U U u.-.O A. n.n.n.h.n.z. n.n.d.8.n. ", +"k.N U U 8.*.=.}. z.z.n.@ ).!.}. !.&.^.&.@ n. ", +"H.U U }.8.7.7.z. n.@ @ @ *.@ *.&.&.*.@ @ *.D @ n. ", +"U h.a.5.h.z.z.z.@ @ @ @ @ @ @ @ @ @ @ @ *.H n.n. ", +" g.1.).7.l.n.@ @ @ &.@ @ @ @ @ @ @ @ @ *.&.z w.n. ", +" 7.^.D &.).<.<.).*.@ @ @ @ @ @ @ @ @ @ @ &.).!.n.n.n.", +" q.G F D @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ *.&.^.E ^.n.", +" e.S P I E @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ ^.^.^.n.", +" e.+.C B F D @ @ @ @ @ @ @ @ @ @ @ @ @ @ E V S V V ", +" e.e.+.R I D @ @ D E G H G z D @ @ @ @ G X ]. ", +" S.Z B E @ z A S ` +.C B z @ @ @ @ I ` X. ", +" S :.!.@ H -.S S S W./.G @ @ @ @ J @.Z. ", +" S q.<.F J ` ~+S 3.D D E F F K +.@+ ", +" @ p.L U N C W. r.I I M U T P X g. ", +" @ @ =. V Q 0. }./.R Y 2.F.X S g.g. ", +" @ @ @ Q P @ }. }.(.@.Z. A.U X g.g.", +" @ P @ _.Q Q g.g.R S. m.g.g.g.", +" @ S @ 4.@ @ g.1.0. =.m.g.", +" @ @ @ 4.4.@ g.f.6. g.H g.", +" @ &.@ @ @ @ g.g.t. }.1.i.", +" @ S {. @ 4.3.Q g.a.g. 9.=.", +" *.S S 4.9.K. }.1.g. }.}.", +" S S ).@ Q 4.k. }.z >+ }.1.", +" *.*.*.S @ 4.v.q.}.p.$.g. g.7.@ ", +" ;.S V S S [+ 4.&.Q ` ,.s.%+g. @ @ @ ", +" ;.;.;.;. 4.4.;.;. 8+,.,.,. "}; --- ocaml-3.10.0.orig/debian/ocamlfind/ocaml-native-compilers.conf +++ ocaml-3.10.0/debian/ocamlfind/ocaml-native-compilers.conf @@ -0,0 +1,2 @@ +ocamlc="ocamlc.opt" +ocamlopt="ocamlopt.opt" --- ocaml-3.10.0.orig/debian/ocaml-interp.menu +++ ocaml-3.10.0/debian/ocaml-interp.menu @@ -0,0 +1,5 @@ +?package(ocaml-interp):needs="text" section="Applications/Programming" \ + title="Ocaml" longtitle="Ocaml Toplevel" \ + hints="ocaml" \ + command="/usr/bin/ocaml" \ + icon="/usr/share/pixmaps/ocaml.xpm" --- ocaml-3.10.0.orig/debian/ocaml-base.copyright +++ ocaml-3.10.0/debian/ocaml-base.copyright @@ -0,0 +1,31 @@ +This package was debianized by Sven Luther on +Fri, 14 Dec 2001 12:44:03 +0100. + +It was downloaded from ftp.inria.fr:/lang/caml-light/ + +Upstream Authors: Xavier Leroy, Jerome Vouillon and Damien Doligez + +Copyright: + +In the following, "the Library" refers to all files marked "Copyright +INRIA" in the following directories and their sub-directories: + + asmrun, byterun, camlp4, config, otherlibs, stdlib, win32caml + +The Library is distributed under the terms of the GNU Library General +Public License version 2 (found in /usr/share/common-licenses/LGPL-2 +on debian systems). + +As a special exception to the GNU Library General Public License, you +may link, statically or dynamically, a "work that uses the Library" +with a publicly distributed version of the Library to produce an +executable file containing portions of the Library, and distribute +that executable file under terms of your choice, without any of the +additional requirements listed in clause 6 of the GNU Library General +Public License. By "a publicly distributed version of the Library", +we mean either the unmodified Library as distributed by INRIA, or a +modified version of the Library that is distributed under the +conditions defined in clause 3 of the GNU Library General Public +License. This exception does not however invalidate any other reasons +why the executable file might be covered by the GNU Library General +Public License. --- ocaml-3.10.0.orig/debian/ocaml.files.in +++ ocaml-3.10.0/debian/ocaml.files.in @@ -0,0 +1,8 @@ +usr/bin/labltk +usr/bin/ocamlbrowser +usr/lib/ocaml/#OcamlABI#/graphics.cma +usr/lib/ocaml/#OcamlABI#/graphics.cmi +usr/lib/ocaml/#OcamlABI#/graphicsX11.cmi +usr/lib/ocaml/#OcamlABI#/graphics.mli +usr/lib/ocaml/#OcamlABI#/graphicsX11.mli +usr/lib/ocaml/#OcamlABI#/labltk --- ocaml-3.10.0.orig/debian/ocaml-nox.dirs.in +++ ocaml-3.10.0/debian/ocaml-nox.dirs.in @@ -0,0 +1,9 @@ +usr/bin +usr/lib/ocaml/#OcamlABI# +usr/lib/ocaml/#OcamlABI#/config +usr/include +usr/share/doc/ocaml-nox +usr/share/man/man1 +usr/share/man/man3 +usr/share/texmf/tex/latex/misc +usr/share/lintian/overrides --- ocaml-3.10.0.orig/debian/native-archs +++ ocaml-3.10.0/debian/native-archs @@ -0,0 +1 @@ +alpha amd64 arm hurd-i386 i386 ia64 kfreebsd-i386 powerpc sparc --- ocaml-3.10.0.orig/debian/camlp4-extra.files.in +++ ocaml-3.10.0/debian/camlp4-extra.files.in @@ -0,0 +1,10 @@ +usr/bin/camlp4boot +usr/bin/camlp4of +usr/bin/camlp4rf +usr/bin/camlp4oof +usr/bin/camlp4orf +usr/bin/camlp4prof +usr/lib/ocaml/#OcamlABI#/camlp4/camlp4of.cma +usr/lib/ocaml/#OcamlABI#/camlp4/camlp4rf.cma +usr/lib/ocaml/#OcamlABI#/camlp4/camlp4oof.cma +usr/lib/ocaml/#OcamlABI#/camlp4/camlp4orf.cma --- ocaml-3.10.0.orig/debian/ocaml-nox.links +++ ocaml-3.10.0/debian/ocaml-nox.links @@ -0,0 +1,2 @@ +usr/share/man/man1/ocamlbuild.1.gz usr/share/man/man1/ocamlbuild.byte.1.gz +usr/share/man/man1/ocamlbuild.1.gz usr/share/man/man1/ocamlbuild.native.1.gz --- ocaml-3.10.0.orig/debian/ocaml-interp.files.in +++ ocaml-3.10.0/debian/ocaml-interp.files.in @@ -0,0 +1,65 @@ +usr/share/man/man1/ocaml.1 +usr/bin/ocaml +usr/lib/ocaml/#OcamlABI#/stdlib.cma +usr/lib/ocaml/#OcamlABI#/arg.cmi +usr/lib/ocaml/#OcamlABI#/array.cmi +usr/lib/ocaml/#OcamlABI#/arrayLabels.cmi +usr/lib/ocaml/#OcamlABI#/buffer.cmi +usr/lib/ocaml/#OcamlABI#/callback.cmi +usr/lib/ocaml/#OcamlABI#/camlinternalOO.cmi +usr/lib/ocaml/#OcamlABI#/char.cmi +usr/lib/ocaml/#OcamlABI#/complex.cmi +usr/lib/ocaml/#OcamlABI#/digest.cmi +usr/lib/ocaml/#OcamlABI#/filename.cmi +usr/lib/ocaml/#OcamlABI#/format.cmi +usr/lib/ocaml/#OcamlABI#/gc.cmi +usr/lib/ocaml/#OcamlABI#/genlex.cmi +usr/lib/ocaml/#OcamlABI#/hashtbl.cmi +usr/lib/ocaml/#OcamlABI#/int32.cmi +usr/lib/ocaml/#OcamlABI#/int64.cmi +usr/lib/ocaml/#OcamlABI#/lazy.cmi +usr/lib/ocaml/#OcamlABI#/lexing.cmi +usr/lib/ocaml/#OcamlABI#/list.cmi +usr/lib/ocaml/#OcamlABI#/listLabels.cmi +usr/lib/ocaml/#OcamlABI#/map.cmi +usr/lib/ocaml/#OcamlABI#/marshal.cmi +usr/lib/ocaml/#OcamlABI#/moreLabels.cmi +usr/lib/ocaml/#OcamlABI#/nativeint.cmi +usr/lib/ocaml/#OcamlABI#/obj.cmi +usr/lib/ocaml/#OcamlABI#/oo.cmi +usr/lib/ocaml/#OcamlABI#/parsing.cmi +usr/lib/ocaml/#OcamlABI#/pervasives.cmi +usr/lib/ocaml/#OcamlABI#/printexc.cmi +usr/lib/ocaml/#OcamlABI#/printf.cmi +usr/lib/ocaml/#OcamlABI#/queue.cmi +usr/lib/ocaml/#OcamlABI#/random.cmi +usr/lib/ocaml/#OcamlABI#/scanf.cmi +usr/lib/ocaml/#OcamlABI#/set.cmi +usr/lib/ocaml/#OcamlABI#/sort.cmi +usr/lib/ocaml/#OcamlABI#/stack.cmi +usr/lib/ocaml/#OcamlABI#/stdLabels.cmi +usr/lib/ocaml/#OcamlABI#/std_exit.cmi +usr/lib/ocaml/#OcamlABI#/stream.cmi +usr/lib/ocaml/#OcamlABI#/string.cmi +usr/lib/ocaml/#OcamlABI#/stringLabels.cmi +usr/lib/ocaml/#OcamlABI#/sys.cmi +usr/lib/ocaml/#OcamlABI#/weak.cmi +usr/lib/ocaml/#OcamlABI#/toplevellib.cma +usr/lib/ocaml/#OcamlABI#/toploop.cmi +usr/lib/ocaml/#OcamlABI#/topdirs.cmi +usr/lib/ocaml/#OcamlABI#/topmain.cmi +usr/lib/ocaml/#OcamlABI#/unix.cma +usr/lib/ocaml/#OcamlABI#/unix.cmi +usr/lib/ocaml/#OcamlABI#/unixLabels.cmi +usr/lib/ocaml/#OcamlABI#/str.cma +usr/lib/ocaml/#OcamlABI#/str.cmi +usr/lib/ocaml/#OcamlABI#/dynlink.cmi +usr/lib/ocaml/#OcamlABI#/dynlink.cma +usr/lib/ocaml/#OcamlABI#/bigarray.cmi +usr/lib/ocaml/#OcamlABI#/bigarray.cma +usr/lib/ocaml/#OcamlABI#/nums.cma +usr/lib/ocaml/#OcamlABI#/big_int.cmi +usr/lib/ocaml/#OcamlABI#/nat.cmi +usr/lib/ocaml/#OcamlABI#/num.cmi +usr/lib/ocaml/#OcamlABI#/ratio.cmi +usr/lib/ocaml/#OcamlABI#/arith_status.cmi --- ocaml-3.10.0.orig/debian/camlp4.optfiles.in +++ ocaml-3.10.0/debian/camlp4.optfiles.in @@ -0,0 +1,2 @@ +usr/bin/camlp4o.opt +usr/bin/camlp4r.opt --- ocaml-3.10.0.orig/debian/ocaml-native-compilers.links +++ ocaml-3.10.0/debian/ocaml-native-compilers.links @@ -0,0 +1,5 @@ +usr/share/man/man1/ocamlc.1.gz usr/share/man/man1/ocamlc.opt.1.gz +usr/share/man/man1/ocamldep.1.gz usr/share/man/man1/ocamldep.opt.1.gz +usr/share/man/man1/ocamldoc.1.gz usr/share/man/man1/ocamldoc.opt.1.gz +usr/share/man/man1/ocamllex.1.gz usr/share/man/man1/ocamllex.opt.1.gz +usr/share/man/man1/ocamlopt.1.gz usr/share/man/man1/ocamlopt.opt.1.gz --- ocaml-3.10.0.orig/debian/watch +++ ocaml-3.10.0/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://caml.inria.fr/pub/distrib/ocaml-([\d\.]+)/ocaml-([\d\.]+).tar.gz --- ocaml-3.10.0.orig/debian/ocaml-base-nox.files.in +++ ocaml-3.10.0/debian/ocaml-base-nox.files.in @@ -0,0 +1,10 @@ +usr/bin/ocamlrun +usr/share/man/man1/ocamlrun.1 +usr/lib/ocaml/#OcamlABI#/stublibs/dllunix.so +usr/lib/ocaml/#OcamlABI#/stublibs/dllstr.so +usr/lib/ocaml/#OcamlABI#/stublibs/dllbigarray.so +usr/lib/ocaml/#OcamlABI#/stublibs/dllthreads.so +usr/lib/ocaml/#OcamlABI#/stublibs/dllvmthreads.so +usr/lib/ocaml/#OcamlABI#/stublibs/dllmldbm.so +usr/lib/ocaml/#OcamlABI#/stublibs/dllnums.so +usr/lib/ocaml/#OcamlABI#/ld.conf --- ocaml-3.10.0.orig/debian/ocaml-source.exclude +++ ocaml-3.10.0/debian/ocaml-source.exclude @@ -0,0 +1,2 @@ +*/debian +*/*-stamp --- ocaml-3.10.0.orig/debian/ocaml-compiler-libs.dirs.in +++ ocaml-3.10.0/debian/ocaml-compiler-libs.dirs.in @@ -0,0 +1,4 @@ +usr/lib/ocaml/#OcamlABI#/compiler-libs/parsing +usr/lib/ocaml/#OcamlABI#/compiler-libs/typing +usr/lib/ocaml/#OcamlABI#/compiler-libs/utils +usr/share/lintian/overrides --- ocaml-3.10.0.orig/debian/ocaml-base-nox.copyright +++ ocaml-3.10.0/debian/ocaml-base-nox.copyright @@ -0,0 +1,31 @@ +This package was debianized by Sven Luther on +Fri, 14 Dec 2001 12:44:03 +0100. + +It was downloaded from ftp.inria.fr:/lang/caml-light/ + +Upstream Authors: Xavier Leroy, Jerome Vouillon and Damien Doligez + +Copyright: + +In the following, "the Library" refers to all files marked "Copyright +INRIA" in the following directories and their sub-directories: + + asmrun, byterun, config, maccaml, otherlibs, stdlib, win32caml + +The Library is distributed under the terms of the GNU Library General +Public License version 2 (found in /usr/share/common-licenses/LGPL-2 +on debian systems). + +As a special exception to the GNU Library General Public License, you +may link, statically or dynamically, a "work that uses the Library" +with a publicly distributed version of the Library to produce an +executable file containing portions of the Library, and distribute +that executable file under terms of your choice, without any of the +additional requirements listed in clause 6 of the GNU Library General +Public License. By "a publicly distributed version of the Library", +we mean either the unmodified Library as distributed by INRIA, or a +modified version of the Library that is distributed under the +conditions defined in clause 3 of the GNU Library General Public +License. This exception does not however invalidate any other reasons +why the executable file might be covered by the GNU Library General +Public License. --- ocaml-3.10.0.orig/debian/ocaml-base-nox.manpages +++ ocaml-3.10.0/debian/ocaml-base-nox.manpages @@ -0,0 +1 @@ +debian/ocaml-md5sums/ocaml-md5sums.1 --- ocaml-3.10.0.orig/debian/ocaml-native-compilers.dirs +++ ocaml-3.10.0/debian/ocaml-native-compilers.dirs @@ -0,0 +1,3 @@ +usr/bin +usr/share/man/man1 +usr/share/ocaml-findlib --- ocaml-3.10.0.orig/debian/man/camlp4.1 +++ ocaml-3.10.0/debian/man/camlp4.1 @@ -0,0 +1,137 @@ +.TH CAMLP4 "1" "June 2007" "CamlP4 3.10.0" "User Commands" +.SH NAME +CamlP4 \- Pre-Processor-Pretty-Printer for Objective Caml +.SH SYNOPSIS +.B camlp4 +[\fIload-options\fR] [\fI--\fR] [\fIother-options\fR] +.SH DESCRIPTION +Camlp4 is a Pre-Processor-Pretty-Printer for Objective Caml. It offers tools +for syntax (Stream Parsers and Grammars) and the ability to modify the concrete +syntax of the language (Quotations, Syntax Extensions). + +The Objective Caml compiler has a special option "-pp", allowing to call any +preprocessor. If Camlp4 is used, the parsing is done (only once) by Camlp4, and +the Objective Caml compiler resumes the rest of the compilation (typing, code +generation). + +Camlp4 can parse normal OCaml concrete syntax or any other user-definable +syntax. As an example, an alternative syntax is provided, named Revised, +because it tries to fix some problems of the original syntax. + +Camlp4 can pretty print the normal OCaml concrete syntax or the revised one +(Pretty-Printer). It is therefore always possible to have a version of your +sources compilable by the compiler Objective Caml without preprocessing. + +Camlp4 can also serve as a Program Transformation tool, the user can supply +transformations and apply them easily as a pre-processing task. This is done +with Filters. +.SH OPTIONS +.TP +\fB.ml\fR +Parse this implementation file +.TP +\fB.mli\fR +Parse this interface file +.TP +\fB.(cmo|cma)\fR +Load this module inside the Camlp4 core +.TP +\fB\-I\fR +Add directory in search patch for object files. +.TP +\fB\-where\fR +Print camlp4 library directory and exit. +.TP +\fB\-nolib\fR +No automatic search for object files in library directory. +.TP +\fB\-intf\fR +Parse as an interface, whatever its extension. +.TP +\fB\-impl\fR +Parse as an implementation, whatever its extension. +.TP +\fB\-str\fR +Parse as an implementation. +.TP +\fB\-unsafe\fR +Generate unsafe accesses to array and strings. +.TP +\fB\-noassert\fR +Obsolete, do not use this option. +.TP +\fB\-verbose\fR +More verbose in parsing errors. +.TP +\fB\-loc\fR +Name of the location variable (default: _loc). +.TP +\fB\-QD\fR +Dump quotation expander result in case of syntax error. +.TP +\fB\-o\fR +Output on instead of standard output. +.TP +\fB\-v\fR +Print Camlp4 version and exit. +.TP +\fB\-version\fR +Print Camlp4 version number and exit. +.TP +\fB\-no_quot\fR +Don't parse quotations, allowing to use, e.g. "<:>" as token. +.TP +\fB\-loaded\-modules\fR +Print the list of loaded modules. +.TP +\fB\-parser\fR +Load the parser Camlp4Parsers/.cmo +.TP +\fB\-printer\fR +Load the printer Camlp4Printers/.cmo +.TP +\fB\-filter\fR +Load the filter Camlp4Filters/.cmo +.TP +\fB\-ignore\fR +ignore the next argument +.TP +\fB\-\-\fR +Deprecated, does nothing +.PP +Options added by loaded object files: +.TP +\fB\-I\fR +Add a directory to INCLUDE search path. +.TP +\fB\-U\fR +Undefine for IFDEF instruction. +.TP +\fB\-D\fR +Define for IFDEF instruction. +.TP +\fB\-meta_action\fR +Undocumented +.TP +\fB\-split_gext\fR +Old name for the option \fB\-split_ext\fR. +.TP +\fB\-split_ext\fR +Split EXTEND by functions to turn around a PowerPC problem. +.TP +\fB\-help_seq\fR +Print explanations about new sequences and exit. +.SH "SEE ALSO" +.BR ocamlc(1), +.BR ocaml(1). +.br +The full documentation for +.B CamlP4 +is being developed on a Wiki available on the web at +.br +.B . +.SH AUTHOR +CamlP4 is Copyright INRIA, it was mainly written by Nicolas Pouillard. +.PP +This manual page was written by Stefano Zacchiroli , +for the Debian project (but may be used by others). --- ocaml-3.10.0.orig/debian/ocaml-mode.dirs +++ ocaml-3.10.0/debian/ocaml-mode.dirs @@ -0,0 +1,2 @@ +usr/bin +usr/share/emacs/site-lisp/ocaml-mode --- ocaml-3.10.0.orig/debian/camlp4.files.in +++ ocaml-3.10.0/debian/camlp4.files.in @@ -0,0 +1,5 @@ +usr/bin/camlp4 +usr/bin/camlp4o +usr/bin/camlp4r +usr/bin/mkcamlp4 +usr/lib/ocaml/#OcamlABI#/camlp4/ --- ocaml-3.10.0.orig/debian/ocaml-nox.NEWS +++ ocaml-3.10.0/debian/ocaml-nox.NEWS @@ -0,0 +1,14 @@ +ocaml-nox (3.08.3-8) unstable; urgency=low + + * The Emacs mode for editing both Objective Caml and Caml Light + programs which is shipped with ocaml has been moved to its own + `ocaml-mode' package. + + * If found, previous Emacs site conffiles called + /etc/emacs/site-start.d/50ocaml.el and + /etc/emacs/site-start.d/50ocaml-nox.el are renamed to + .save in order not to mess with the site conffile from + the new `ocaml-mode' package. + + -- Jerome Marant Sat, 20 Aug 2005 13:30:25 +0200 + --- ocaml-3.10.0.orig/debian/control +++ ocaml-3.10.0/debian/control @@ -0,0 +1,210 @@ +Source: ocaml +Section: devel +Priority: optional +Maintainer: Debian OCaml Maintainers +Uploaders: Sven Luther , Stefano Zacchiroli , Julien Cristau , Samuel Mimram , Sylvain Le Gall +Build-Depends: debhelper (>> 5.0.0), tcl8.4-dev, tk8.4-dev, libncurses5-dev, libgdbm-dev, dpatch, bzip2, docbook-xml, docbook-utils +Standards-Version: 3.7.2 +XS-Vcs-Svn: svn://svn.debian.org/svn/pkg-ocaml-maint/trunk/packages/ocaml +XS-Vcs-Browser: http://svn.debian.org/wsvn/pkg-ocaml-maint/trunk/packages/ocaml/trunk/ + +Package: ocaml-nox +Architecture: any +Depends: libncurses5-dev, ocaml-base-nox (=${binary:Version}), ocaml-base-nox-${F:OCamlABI}, ocaml-interp-${F:OCamlABI}, gcc, binutils +Suggests: ocaml-doc, libgdbm-dev, tuareg-mode | ocaml-mode +Recommends: camlp4, ledit, file +Provides: ocaml-nox-${F:OCamlABI}, ${F:BestProvides}, libnums-ocaml-dev +Replaces: camlp4 (<< 3.10.0), ocaml (<< 3.07.2a-3), libnums-ocaml-dev +Conflicts: camlp4 (<< 3.10.0), camlidl (<< 1.04), ocaml (<< 3.07.2a-3), libnums-ocaml-dev +Description: ML language implementation with a class-based object system + Objective Caml (OCaml) 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. + . + OCaml comprises two compilers. One generates bytecode + which is then interpreted by a C program. This compiler runs quickly, + generates compact code with moderate memory requirements, and is + portable to essentially any 32 or 64 bit Unix platform. Performance of + generated programs is quite good for a bytecoded implementation: + almost twice as fast as Caml Light 0.7. This compiler can be used + either as a standalone, batch-oriented compiler that produces + standalone programs, or as an interactive, toplevel-based system. + . + The other compiler generates high-performance native code for a number + of processors. Compilation takes longer and generates bigger code, but + the generated programs deliver excellent performance, while retaining + the moderate memory requirements of the bytecode compiler. It is not + available on all arches though. + . + This package contains everything needed to develop ocaml applications + that do not require the graphics library. + +Package: camlp4 +Architecture: any +Depends: ocaml-nox-${F:OCamlABI} +Provides: camlp4-${F:OCamlABI} +Description: Pre Processor Pretty Printer for OCaml + Objective Caml (OCaml) 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. + . + CamlP4 is a Pre-Processor-Pretty-Printer for Objective Caml. It + offers tools for syntax (Stream Parsers and Grammars) and the + ability to modify the concrete syntax of the language + (Quotations, Syntax Extensions). + . + This package contains the basic CamlP4 executables and libraries + for pre-processing and pretty-printing OCaml sources both + interactively and in a batch fashion. + +Package: camlp4-extra +Architecture: any +Depends: camlp4-${F:OCamlABI} +Description: Pre Processor Pretty Printer for OCaml - extras + Objective Caml (OCaml) 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. + . + CamlP4 is a Pre-Processor-Pretty-Printer for Objective Caml. It + offers tools for syntax (Stream Parsers and Grammars) and the + ability to modify the concrete syntax of the language + (Quotations, Syntax Extensions). + . + This package contains pre-linked executables and libraries for + pre-processing and pretty-printing OCaml sources out of the box + for various common needs. + +Package: ocaml +Architecture: any +Depends: ocaml-base (= ${binary:Version}), ocaml-base-${F:OCamlABI}, ocaml-nox-${F:OCamlABI} +Suggests: tcl8.4-dev, tk8.4-dev +Provides: ocaml-${F:OCamlABI} +Description: ML language implementation with a class-based object system + Objective Caml (OCaml) 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. + . + OCaml comprises two compilers. One generates bytecode + which is then interpreted by a C program. This compiler runs quickly, + generates compact code with moderate memory requirements, and is + portable to essentially any 32 or 64 bit Unix platform. Performance of + generated programs is quite good for a bytecoded implementation: + almost twice as fast as Caml Light 0.7. This compiler can be used + either as a standalone, batch-oriented compiler that produces + standalone programs, or as an interactive, toplevel-based system. + . + The other compiler generates high-performance native code for a number + of processors. Compilation takes longer and generates bigger code, but + the generated programs deliver excellent performance, while retaining + the moderate memory requirements of the bytecode compiler. It is not + available on all arches though. + . + This package contains everything needed to develop ocaml applications, + including the graphics libraries. + +Package: ocaml-base-nox +Architecture: any +Provides: ocaml-base-nox-${F:OCamlABI}, libnums-ocaml +Depends: ${shlibs:Depends} +Replaces: ocaml-base (<< 3.07.2a-3), libnums-ocaml +Conflicts: ocaml (<< 3.04-2), ocaml-base (<< 3.07.2a-3), libnums-ocaml +Description: Runtime system for ocaml bytecode executables + Objective Caml (OCaml) 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 only the runtime system needed to run bytecode + executables that do not use the graphics library. The `ocaml' package + contains the full development suite of Objective Caml. + +Package: ocaml-base +Architecture: any +Depends: ${shlibs:Depends}, ocaml-base-nox-${F:OCamlABI} +Provides: ocaml-base-${F:OCamlABI} +Description: Runtime system for ocaml bytecode executables + Objective Caml (OCaml) 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 only the runtime system needed to run bytecode + executables. The `ocaml' package contains the full development suite of + Objective Caml. You may wish to install the 'ocaml-base-nox' package if + you do not require any graphical capabilities for your runtime. + +Package: ocaml-native-compilers +Architecture: alpha amd64 arm hurd-i386 i386 ia64 kfreebsd-i386 powerpc sparc +Depends: ocaml-nox (= ${binary:Version}), ocaml-nox-${F:OCamlABI}, gcc, binutils, ${shlibs:Depends} +Provides: ocaml-best-compilers +Replaces: ocaml-nox (<= 3.09.2-3) +Description: Native code compilers of the ocaml suite (the .opt ones) + Objective Caml (OCaml) 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 native code version of the compilers and lexer + (ocamlc.opt, ocamllex.opt, ocamlopt.opt, camlp4o.opt and camlp4r.opt). + The normal version of these programs are found in the ocaml package. + For big source codes, these packages can be two to three times faster, but + for most normal sized sources, the difference won't be noticeable. + +Package: ocaml-source +Architecture: all +Provides: ocaml-source-${F:OCamlABI} +Description: Sources for Objective Caml + Objective Caml (OCaml) 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 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: any +Provides: ocaml-interp-${F:OCamlABI} +Depends: ocaml-base-nox-${F:OCamlABI} +Recommends: ledit +Replaces: ocaml (<< 3.07.2a-3) +Conflicts: ocaml (<< 3.07.2a-3) +Description: OCaml interactive interpreter and standard libraries + Objective Caml (OCaml) 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. + +Package: ocaml-compiler-libs +Architecture: any +Provides: ocaml-compiler-libs-${F:OCamlABI} +Depends: ocaml-nox-${F:OCamlABI} +Description: OCaml interpreter and standard libraries + Objective (OCaml) 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 several modules used internally by the ocaml + compilers. They are not needed for normal ocaml development, but may + be helpful in the development of certain applications. + +Package: ocaml-mode +Architecture: all +Depends: emacs22 | emacsen +Suggests: ocaml +Conflicts: ocaml-nox (<< 3.08.3-8) +Description: A major mode for editing Objective Caml in Emacs + Objective (OCaml) 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 provides support for editing both Objective Caml and + Caml Light programs with Emacs and XEmacs. + . + Caml-mode supports: + - indentation + - compilation and error retrieving + - interaction with the toplevel + - font-lock + - imenu --- ocaml-3.10.0.orig/debian/camlp4-extra.dirs.in +++ ocaml-3.10.0/debian/camlp4-extra.dirs.in @@ -0,0 +1,2 @@ +usr/bin +usr/lib/ocaml/#OcamlABI#/camlp4 --- ocaml-3.10.0.orig/debian/ocaml.install.in +++ ocaml-3.10.0/debian/ocaml.install.in @@ -0,0 +1 @@ +otherlibs/labltk/README /usr/share/doc/ocaml/README.labltk --- ocaml-3.10.0.orig/debian/camlp4-extra.links +++ ocaml-3.10.0/debian/camlp4-extra.links @@ -0,0 +1,20 @@ +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4boot.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4of.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4rf.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4oof.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4orf.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4prof.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4of.opt.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4rf.opt.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4oof.opt.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4orf.opt.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4boot.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4of.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4rf.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4oof.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4orf.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4prof.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4of.opt.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4rf.opt.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4oof.opt.1.gz +usr/share/man/man1/camlp4.1.gz usr/share/man/man1/camlp4orf.opt.1.gz --- ocaml-3.10.0.orig/debian/camlp4-extra.optfiles.in +++ ocaml-3.10.0/debian/camlp4-extra.optfiles.in @@ -0,0 +1,4 @@ +usr/bin/camlp4of.opt +usr/bin/camlp4rf.opt +usr/bin/camlp4oof.opt +usr/bin/camlp4orf.opt --- ocaml-3.10.0.orig/debian/ocaml-base-nox.docs +++ ocaml-3.10.0/debian/ocaml-base-nox.docs @@ -0,0 +1,4 @@ +Changes +README +debian/policy/ocaml_packaging_policy.txt +debian/policy/ocaml_packaging_policy.html --- ocaml-3.10.0.orig/debian/ocaml-interp.install.in +++ ocaml-3.10.0/debian/ocaml-interp.install.in @@ -0,0 +1 @@ +debian/ocaml.xpm /usr/share/pixmaps --- ocaml-3.10.0.orig/debian/ocaml-native-compilers.files +++ ocaml-3.10.0/debian/ocaml-native-compilers.files @@ -0,0 +1 @@ +/usr/bin/*.opt --- ocaml-3.10.0.orig/debian/ocaml-compiler-libs.override +++ ocaml-3.10.0/debian/ocaml-compiler-libs.override @@ -0,0 +1 @@ +copyright-should-refer-to-common-license-file-for-gpl