[Pkg-ocaml-maint-commits] [SCM] OCaml packaging branch, experimental/master, updated. debian/4.00.0-1-12-g18c7d0d

Stephane Glondu steph at glondu.net
Wed Nov 14 14:55:27 UTC 2012


The following commit has been merged in the experimental/master branch:
commit f76e0cd31a5cac2d24738d7e1f9911582e9f94ad
Merge: 174c02a2d24e1bdb2ec47c3c8b6e9e7061883b1a 604d1769d7f8e577b2984fdd97aa0fc1b680c743
Author: Stephane Glondu <steph at glondu.net>
Date:   Wed Nov 14 13:10:43 2012 +0100

    Merge branch 'master' into experimental/master
    
    Conflicts:
    	debian/changelog
    	debian/rules

diff --combined debian/changelog
index a8af4dc,d00cb12..50f44d5
--- a/debian/changelog
+++ b/debian/changelog
@@@ -1,66 -1,13 +1,74 @@@
 -ocaml (3.12.1-5) UNRELEASED; urgency=low
 +ocaml (4.00.1-1) UNRELEASED; urgency=low
 +
++  [ Stéphane Glondu ]
 +  * New upstream release
  
+   [ Sylvain Le Gall ]
+   * Remove Sylvain Le Gall from uploaders
+ 
+   [ Mehdi Dogguy ]
+   * Use DEB_BUILD_GNU_TYPE instead of relying on "uname -m" (Closes: #689517).
+     Thanks to Konstantinos Margaritis for the patch.
+ 
 - -- Sylvain Le Gall <gildor at debian.org>  Fri, 21 Sep 2012 01:20:13 +0000
 + -- Stéphane Glondu <glondu at debian.org>  Wed, 14 Nov 2012 13:07:19 +0100
 +
 +ocaml (4.00.0-1) experimental; urgency=low
 +
 +  * New upstream release
 +
 + -- Stéphane Glondu <glondu at debian.org>  Fri, 27 Jul 2012 07:30:10 +0200
 +
 +ocaml (4.00.0~rc1-1) experimental; urgency=low
 +
 +  * New upstream release candidate
 +    - fix linking of pthread_atfork (Closes: #682441)
 +  * Merge changes from 3.12.1-4
 +
 + -- Stéphane Glondu <glondu at debian.org>  Sat, 21 Jul 2012 15:42:10 +0200
 +
 +ocaml (4.00.0~beta2-2) experimental; urgency=low
 +
 +  * Fix natdynlink detection on sparc
 +  * Cherry-pick an upstream fix in native compilation on powerpc
 +  * Fixes in the test suite:
 +    - use legacy -custom for lib-marshal test
 +    - some tests were still triggering ocamlopt even on bytecode
 +    - fix asmcomp tests on powerpc
 +    - fix symbol mangling in asmcomp tests on kfreebsd-i386 and sparc
 +  * Bump Standards-Version to 3.9.3
 +
 + -- Stéphane Glondu <glondu at debian.org>  Thu, 21 Jun 2012 16:42:25 +0200
 +
 +ocaml (4.00.0~beta2-1) experimental; urgency=low
 +
 +  * New upstream beta release
 +    - new "R" parameter in OCAMLRUNPARAMS to enable automatic
 +      randomization of the generic hash function (Closes: #659149,
 +      CVE-2012-0839)
 +    - the layout of the ocaml-compiler-libs binary package has changed
 +      significantly as a result of upstream installing +compiler-libs by
 +      itself; toplevel libraries have been moved there
 +  * Change the layout of the ocaml-source binary package
 +  * Merge changes from version 3.12.1-3
 +
 + -- Stéphane Glondu <glondu at debian.org>  Wed, 13 Jun 2012 22:38:41 +0200
 +
 +ocaml (4.00.0~~dev15+12379-1) experimental; urgency=low
 +
 +  * New upstream snapshot, based on the 4.00 upstream branch
 +    - partially revert r12328 to avoid FTBFS
 +    - the dbm bindings have been removed upstream and are now released
 +      separately
 +    - declare armel and armhf as native architectures supporting
 +      natdynlink
 +  * Run the test-suite
 +    - on kfreebsd-*, skip lib-thread tests (they hang and I am not able
 +      to reproduce it myself)
 +    - on slow architectures, skip some tests that take too much time
 +    - fix asmcomp tests on Hurd (Closes: #661716)
 +    - fix "embedded" test broken by our -custom behaviour
 +
 + -- Stéphane Glondu <glondu at debian.org>  Thu, 19 Apr 2012 09:04:28 +0200
  
  ocaml (3.12.1-4) unstable; urgency=low
  
diff --combined debian/control
index 548e113,d3497a5..4b0405b
--- a/debian/control
+++ b/debian/control
@@@ -4,22 -4,21 +4,21 @@@ Priority: optiona
  Maintainer: Debian OCaml Maintainers <debian-ocaml-maint at lists.debian.org>
  Uploaders:
   Samuel Mimram <smimram at debian.org>,
-  Sylvain Le Gall <gildor at debian.org>,
   Ralf Treinen <treinen at debian.org>,
   Stéphane Glondu <glondu at debian.org>,
   Mehdi Dogguy <mehdi at debian.org>
  Build-Depends:
   debhelper (>= 8),
   pkg-config,
 + quilt,
   autotools-dev,
   binutils-dev,
   tcl8.5-dev,
   tk8.5-dev,
   libncurses5-dev,
 - libgdbm-dev,
   bzip2,
   dh-ocaml (>= 1.0.0~)
 -Standards-Version: 3.9.2
 +Standards-Version: 3.9.3
  Vcs-Git: git://git.debian.org/git/pkg-ocaml-maint/packages/ocaml.git
  Vcs-Browser: http://git.debian.org/?p=pkg-ocaml-maint/packages/ocaml.git
  Homepage: http://caml.inria.fr/
@@@ -41,6 -40,7 +40,6 @@@ Provides
   libnums-ocaml-dev
  Suggests:
   ocaml-doc,
 - libgdbm-dev,
   tuareg-mode | ocaml-mode
  Recommends:
   camlp4,
@@@ -197,7 -197,7 +196,7 @@@ Description: Runtime system for OCaml b
   you do not require any graphical capabilities for your runtime.
  
  Package: ocaml-native-compilers
 -Architecture: amd64 armel hurd-i386 i386 kfreebsd-i386 kfreebsd-amd64 lpia powerpc sparc
 +Architecture: amd64 armel armhf hurd-i386 i386 kfreebsd-i386 kfreebsd-amd64 lpia powerpc sparc
  Depends:
   ocaml-nox (= ${binary:Version}),
   gcc, binutils,
@@@ -232,7 -232,6 +231,7 @@@ Description: Sources for Objective Cam
  Package: ocaml-interp
  Architecture: any
  Depends:
 + ocaml-compiler-libs (= ${binary:Version}),
   ${ocaml:Depends},
   ${shlibs:Depends},
   ${misc:Depends}
diff --combined debian/rules
index 82cef0b,a29a23a..d7dffd8
--- a/debian/rules
+++ b/debian/rules
@@@ -2,7 -2,7 +2,7 @@@
  
  PACKAGE := ocaml
  ALL_PACKAGES := $(shell dh_listpackages)
 -OCAMLMAJOR := 3.12
 +OCAMLMAJOR := 4.00
  OCAMLMINOR := 1
  
  # Build cache (for Debian debugging)
@@@ -14,6 -14,7 +14,7 @@@ OCAML_STDLIB_DIR := /usr/lib/ocam
  OCAML_NATIVE_ARCHS := $(shell cat debian/native-archs)
  OCAML_NATDYNLINK_ARCHS := $(shell cat debian/natdynlink-archs)
  DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
+ DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
  OCAML_OPT_ARCH := $(findstring $(DEB_BUILD_ARCH),$(OCAML_NATIVE_ARCHS))
  OCAML_HAVE_OCAMLOPT := $(if $(OCAML_OPT_ARCH),yes,no)
  OCAML_OCAMLDOC_DESTDIR_HTML =
@@@ -30,17 -31,12 +31,17 @@@ include debian/ocamlinit.m
  MD5SUMSDIR = /var/lib/ocaml/md5sums
  INSTDIR = $(CURDIR)/debian/tmp/usr
  DISTDIR = $(PACKAGE)-$(OCAML_ABI)
 -SRCTARBALL = $(PACKAGE)-source-$(OCAML_ABI).tar.bz2
 +UPSTREAM_VERSION = $(shell dpkg-parsechangelog | awk '/^Version:/{print $$2}' | { read u; echo $${u%-*}; })
 +UPSTREAM_TARBALL = ../$(PACKAGE)_$(UPSTREAM_VERSION).orig.tar.bz2
 +SRCTARBALL = $(PACKAGE)-source-$(OCAML_ABI).tar
  
 +TESTDIR := debian/test-build
 +TESTRULES := debian/rules DEB_TEST_BUILD_PREFIX=$(CURDIR)/$(TESTDIR)
 +
 +ifeq (,$(DEB_TEST_BUILD_PREFIX))
  ifneq (,$(findstring ocaml-source,$(ALL_PACKAGES)))
    TARBALL_TARGET = debian/$(SRCTARBALL)
 -else
 -  TARBALL_TARGET =
 +endif
  endif
  
  # Environment variable for dh_ocaml
@@@ -59,10 -55,11 +60,11 @@@ export OCAML_OPT_ARC
  export OCAML_STDLIB_DIR
  
  CONFIGURE_OPTS := \
+   --host $(DEB_BUILD_GNU_TYPE)\
 -  --with-pthread -prefix /usr \
 -  -libdir $(OCAML_STDLIB_DIR) \
 +  --with-pthread -prefix $(DEB_TEST_BUILD_PREFIX)/usr \
 +  -libdir $(DEB_TEST_BUILD_PREFIX)$(OCAML_STDLIB_DIR) \
    -x11lib "$(shell pkg-config --variable=libdir x11)" \
 -  -mandir /usr/share/man \
 +  -mandir $(DEB_TEST_BUILD_PREFIX)/usr/share/man \
    -tkdefs "-I/usr/include/tcl8.5" \
    -tklibs "-L/usr/lib -ltk8.5 -ltcl8.5"
  
@@@ -75,11 -72,6 +77,11 @@@ CONFIGURE_SED := 
  %:
  	dh $@
  
 +# Needed because there is a "build" in the upstream tarball
 +.PHONY: build
 +build:
 +	dh $@
 +
  ocamlinit-stamp: $(TARBALL_TARGET)
  
  # Generate ocaml-native-compilers' Architecture field.
@@@ -98,19 -90,26 +100,19 @@@ pre-config-stamp: $(TARBALL_TARGET
  	    cp -f /usr/share/misc/config.$$ext config/gnu/config.$$ext; \
  	  fi; \
  	done
 +# Create empty directory present in upstream tarball
 +	mkdir -p compilerlibs
  	touch $@
  
  ifneq (,$(TARBALL_TARGET))
 -$(TARBALL_TARGET):
 -# Make a copy of the current (patched) sources in debian/$(DISTDIR)
 -	ln -fs . $(DISTDIR)	# beware of the symlink recursion!
 +$(TARBALL_TARGET): $(UPSTREAM_TARBALL)
  	mkdir debian/$(DISTDIR)
 -	tar --anchored -ch \
 -	  --exclude=$(DISTDIR)/$(DISTDIR)	\
 -	  --exclude-from=debian/ocaml-source.exclude \
 -	  $(DISTDIR)/ | tar -C debian -x
 -	rm -f $(DISTDIR)
 -# Copy patches and unapply them
 +# Copy upstream tarball
 +	cp $< debian/$(DISTDIR)
 +# Copy debian/patches
  	cp -a debian/patches debian/$(DISTDIR)/debian-patches
 -	cd debian/$(DISTDIR) && sort -r debian-patches/series | \
 -	while read u; do \
 -	  patch -R -V never -p1 < debian-patches/$$u; \
 -	done
  # Create the tarball and cleanup
 -	tar -C debian -cjf $@ $(DISTDIR)
 +	tar -C debian -cf $@ $(DISTDIR)
  	rm -Rf debian/$(DISTDIR)
  endif
  
@@@ -178,7 -177,7 +180,7 @@@ endi
  		sed -i 1d emacs/ocamltags.in; \
  	fi
  # Remaining stuff
 -	-rm -Rf debian/$(SRCTARBALL) debian/examples
 +	-rm -Rf debian/$(SRCTARBALL) debian/examples $(TESTDIR)
  
  .PHONY: override_dh_auto_install
  override_dh_auto_install: install-stamp
@@@ -197,28 -196,17 +199,28 @@@ endi
  # Install OCaml
  	sed -e 's|PREFIX=\"/.*\"|PREFIX=\"$(INSTDIR)"|' < config/config.sh > config/config.debian.install.sh
  	$(MAKE) install PREFIX=$(INSTDIR)
 +ifeq (,$(DEB_TEST_BUILD_PREFIX))
  # Remove empty directory
  	rmdir $(CURDIR)/debian/tmp$(OCAML_STDLIB_DIR)/ocamldoc/custom
 -# To avoid erroneous dh_install warnings
 -	rm -f $(INSTDIR)/share/man/man1/ocamlopt.opt.1 $(INSTDIR)/share/man/man1/ocamlc.opt.1
 +# Remove uninstalled files
 +	rm -f \
 +	  $(INSTDIR)/share/man/man1/ocamlopt.opt.1 \
 +	  $(INSTDIR)/share/man/man1/ocamlc.opt.1 \
 +	  $(INSTDIR)/bin/camlp4boot
 +ifeq ($(OCAML_HAVE_OCAMLOPT),no)
 +# Remove files that make no sense without ocamlopt
 +	rm -f \
 +	  $(INSTDIR)/share/man/man1/ocamloptp.1 \
 +	  $(INSTDIR)/share/man/man1/ocamlopt.1 \
 +	  $(INSTDIR)/bin/ocamloptp
 +endif
  # Dispatch files with dh_install
  	cd debian && \
  	for u in ocaml ocaml-nox; do \
  	  DESTDIR=tmp ./gen_modules.pl $$u.install > $$u.install.new; \
  	  mv $$u.install.new $$u.install; \
  	done
 -	if ! dh_install --list-missing; then \
 +	if ! dh_install --fail-missing; then \
  	  echo "===> dh_install has failed <==="; \
  	  find debian/tmp; \
  	  exit 1; \
@@@ -239,7 -227,6 +241,7 @@@
  	  ln -sf ../ocaml-base-nox/README.gz . && \
  	  ln -sf ../ocaml-base-nox/README.Debian .; \
  	); done
 +endif
  # Remaining stuff
  	touch $@
  
@@@ -269,52 -256,3 +271,52 @@@ endi
  	  echo "Please adjust OCAML_ABI in debian/rules"; \
  	  exit 2; \
  	fi
 +
 +.PHONY: regenerate
 +regenerate: debian/control
 +	git ls-tree --name-only -r HEAD debian \
 +	  | grep -v '^debian/\(patches/\|source/local-\)' \
 +	> debian/MANIFEST
 +
 +# Architectures where running the test suite completely makes the
 +# whole build last more than one hour on buildds. Originally, because
 +# some tests do not even finish on mips.
 +SLOW_ARCHITECTURES := hurd-i386 mips mipsel powerpc sparc armel
 +
 +.PHONY: override_dh_auto_test
 +override_dh_auto_test:
 +ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
 +# The test suite needs the just-compiled ocaml to be installed, so we
 +# rebuild a version with a local prefix and install it to run the
 +# tests; see:
 +#   http://caml.inria.fr/mantis/view.php?id=5483
 +ifeq (,$(DEB_TEST_BUILD_PREFIX))
 +	rm -rf $(TESTDIR)
 +	mkdir $(TESTDIR)
 +	tar -C $(TESTDIR) -xf $(UPSTREAM_TARBALL)
 +	tar -c --files-from=debian/MANIFEST | tar -C $(TESTDIR)/ocaml-* -x
 +	cp -a debian/patches $(TESTDIR)/ocaml-*/debian
 +	cd $(TESTDIR)/ocaml-* \
 +	  && QUILT_PATCHES=debian/patches quilt push -a \
 +	  && $(TESTRULES) build \
 +	  && dh_installdirs \
 +	  && $(TESTRULES) install-stamp \
 +	  && cp -a debian/tmp/* ..
 +# Broken test (see http://caml.inria.fr/mantis/view.php?id=5648)
 +	rm -f $(TESTDIR)/ocaml-*/testsuite/tests/lib-threads/test4.ml
 +# Thread tests seem to hang on buildds, but cannot reproduce elsewhere
 +ifneq (,$(findstring kfreebsd,$(DEB_BUILD_ARCH)))
 +	rm -rf $(TESTDIR)/ocaml-*/testsuite/tests/lib-threads
 +endif
 +# Tests that take too much time
 +ifneq (,$(filter $(DEB_BUILD_ARCH),$(SLOW_ARCHITECTURES)))
 +	for t in \
 +	  misc/nucleic.ml \
 +	  misc-unsafe/almabench.ml \
 +	  misc-unsafe/fft.ml \
 +	; do rm -rf $(TESTDIR)/ocaml-*/testsuite/tests/$$t; done
 +endif
 +	cd $(TESTDIR)/ocaml-*/testsuite \
 +	  && make all
 +endif
 +endif

-- 
OCaml packaging



More information about the Pkg-ocaml-maint-commits mailing list