[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

mercurial 1.3.1 on etch




Hi,

I'm trying to build mercurial 1.3.1 on etch from the unstable sources, and I think I'm close. I'm currently getting

faheem@etch:/usr/local/src/mercurial/mercurial-1.3.1/debian$ debuild binary
dh --with quilt binary
   dh_install --with quilt
cp: cannot stat `debian/tmp/debian/tmp/usr/lib': No such file or directory
dh_install: command returned error code 256
make: *** [binary] Error 1
debuild: fatal error at line 1210:
couldn't exec fakeroot debian/rules: Bad file descriptor

Versions of debhelper and quilt I have installed are

faheem@etch:/usr/local/src/mercurial/mercurial-1.3.1/debian$ dpkg -l debhelper quilt ii debhelper 7.0.15~bpo40+2 helper programs for debian/rules ii quilt 0.46-7 Tool to work with series of patches

I tried to backport a more recent version of debhelper, but it seems hard.

So, it is trying to use debian/tmp/debian/tmp/usr/lib instead of debian/tmp/usr/lib. The changes I made to control and rules appear below. If you don't have rules and control for 1.3.1 conveniently handy, they apear after the changes. Any idea how I can fix this?

                                                          Regards, Faheem.

********************************************************************
diff -r 5d7b6413e993 -r a4afd75fd0b3 control
--- a/control	Thu Aug 06 15:21:24 2009 -0400
+++ b/control	Thu Aug 06 22:01:05 2009 -0400
@@ -5,9 +5,9 @@
 Uploaders: Vincent Danjean <vdanjean@debian.org>,
  Gerardo Curiel <gcuriel@debian.org.ve>,
  Vernon Tang <vt@foilhead.net>
-Build-Depends: debhelper (>= 7.0.50), quilt (>= 0.46-7),
+Build-Depends: debhelper, quilt (>= 0.46-7),
  patchutils (>= 0.2.25), gettext,
- python-support (>= 0.5.3), python-all-dev (>= 2.5.4-1~), xmlto, asciidoc
+ python-support (>= 0.5.3), python-all-dev, xmlto, asciidoc
 Standards-Version: 3.8.2
 Homepage: http://www.selenic.com/mercurial/
 Vcs-Svn: svn://svn.debian.org/python-apps/packages/mercurial/trunk
diff -r 5d7b6413e993 -r a4afd75fd0b3 rules
--- a/rules	Thu Aug 06 15:21:24 2009 -0400
+++ b/rules	Thu Aug 06 22:01:05 2009 -0400
@@ -17,7 +17,7 @@
 override_dh_auto_install: $(PYVERS:%=install-python%)

 install-python%: build-python%
- python$* setup.py install --root $(CURDIR)/debian/tmp --install-layout=deb
+	python$* setup.py install --root $(CURDIR)/debian/tmp
 	# Do not hardcode the python interpreter
 	sed -i '1c#!/usr/bin/python' debian/tmp/usr/bin/hg


********************************************************
rules
********************************************************
#!/usr/bin/make -f
# -*- mode: makefile; coding: utf-8 -*-

%:
	dh --with quilt $@

PYVERS=$(shell pyversions -vs)

override_dh_auto_build: $(PYVERS:%=build-python%)
	$(MAKE) -C doc man
	touch $@

build-python%: mercurial/__version__.py
	python$* setup.py build
	touch $@

override_dh_auto_install: $(PYVERS:%=install-python%)

install-python%: build-python%
	python$* setup.py install --root $(CURDIR)/debian/tmp
	# Do not hardcode the python interpreter
	sed -i '1c#!/usr/bin/python' debian/tmp/usr/bin/hg


override_dh_install:
	dh_install
	if test -d $(CURDIR)/debian/mercurial ; then \
		$(MAKE) -f debian/rules install-archdep ; \
	fi
	if test -d $(CURDIR)/debian/mercurial-common ; then \
		$(MAKE) -f debian/rules install-archindep ;\
	fi

install-archdep:
	# Install bash autocompletion.
	install -m 644 \
		contrib/bash_completion \
		$(CURDIR)/debian/mercurial/etc/bash_completion.d/mercurial

	# Install system-wide conffiles
	echo "# system-wide mercurial configuration file" \
		>  $(CURDIR)/debian/mercurial/etc/mercurial/hgrc
	echo "# See hgrc(5) for more information" \
		>>  $(CURDIR)/debian/mercurial/etc/mercurial/hgrc
	install -m 644 \
		contrib/mergetools.hgrc \
		$(CURDIR)/debian/mercurial/etc/mercurial/hgrc.d/mergetools.rc

	# Symlink docs
	rm -rf $(CURDIR)/debian/mercurial/usr/share/doc/mercurial
ln -s mercurial-common $(CURDIR)/debian/mercurial/usr/share/doc/mercurial
	# remove arch-independent python stuff
	find debian/mercurial/usr/lib \
		! -name '*.so' ! -type d -delete , \
		-type d -empty -delete

install-archindep:
	# remove arch-dependent python stuff
	find debian/mercurial-common/usr/lib \
		-name '*.so' ! -type d -delete , \
		-type d -empty -delete

override_dh_auto_clean:
	cp -a mercurial/__version__.py mercurial/__version__.py.save
	$(MAKE) clean
	mv mercurial/__version__.py.save mercurial/__version__.py
	$(RM) -rv tmp/
	$(RM) build-python*

mercurial/__version__.py:
	@echo "$@ is missing (you probably call 'make clean' directly)."
	@echo "Restore it from sources before building the package"
	@echo "Aborting."
	exit 1

********************************************************************
control
********************************************************************
Source: mercurial
Section: vcs
Priority: optional
Maintainer: Python Applications Packaging Team <python-apps-team@lists.alioth.debian.org>
Uploaders: Vincent Danjean <vdanjean@debian.org>,
 Gerardo Curiel <gcuriel@debian.org.ve>,
 Vernon Tang <vt@foilhead.net>
Build-Depends: debhelper, quilt (>= 0.46-7),
 patchutils (>= 0.2.25), gettext,
 python-support (>= 0.5.3), python-all-dev, xmlto, asciidoc
Standards-Version: 3.8.2
Homepage: http://www.selenic.com/mercurial/
Vcs-Svn: svn://svn.debian.org/python-apps/packages/mercurial/trunk
Vcs-Browser: http://svn.debian.org/viewsvn/python-apps/packages/mercurial/trunk/

Package: mercurial-common
Architecture: all Depends: ${misc:Depends}, ${python:Depends}
Recommends: mercurial (= ${binary:Version})
Suggests: wish,
 python-mysqldb,
 python-pygments,
 python-openssl
Conflicts: mercurial (<< ${binary:Version})
Replaces: mercurial (<< ${binary:Version})
Description: scalable distributed version control system (common files)
 Mercurial is a fast, lightweight Source Control Management system designed
 for efficient handling of very large distributed projects.
 .
 This package contains the architecture independent components of Mercurial,
 and is generally useless without the mercurial package.

Package: mercurial
Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, ucf (>= 2.0020),
 mercurial-common (= ${source:Version})
Suggests: qct,
 wish,
 vim | emacs,
 kdiff3 | tkdiff | meld | xxdiff
Description: scalable distributed version control system
 Mercurial is a fast, lightweight Source Control Management system designed
 for efficient handling of very large distributed projects.
 .
 Its features include:
  * O(1) delta-compressed file storage and retrieval scheme
  * Complete cross-indexing of files and changesets for efficient exploration
    of project history
  * Robust SHA1-based integrity checking and append-only storage model
  * Decentralized development model with arbitrary merging between trees
  * High-speed HTTP-based network merge protocol
  * Easy-to-use command-line interface
  * Integrated stand-alone web interface
  * Small Python codebase
 .
 This package contains the architecture dependent files.


Reply to: