[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