Re: [Xen-devel] Xen build - Debian vs Redhat layout patch options
Please ignore the patch debian-stubdom.Makefile.diff .
Not needed if make in debian/rules is simply run as "env -u LDFLAGS make install-stubdom". Sorry for noise.
Only 2 issues on xen-unstable.hg ...
- xen-watchdog-bug.diff - obvious bug on all platforms
- debian-python-2.6.diff - only needed for simple build on debian with no .deb packaging
... and one issue for debian packager:
- "env -u LDFLAGS" must be used in debian/rules makefile on two commands:
env -u LDFLAGS make install-xen
env -u LDFLAGS make install-stubdom
When the above is resolved xen-unstable.hg will be "fully debian-compatible". :-)
On Thu, Jan 20, 2011 at 7:15 PM, user virtual <virtualusr@xxxxxxxxx>
I summarize all patches in one mail here because I am not certain each is the best way to go, more like a discussion on how to finally close all holes to support debian builds.
Stefano provoked me to port all patches to unstable resulting in a big step forward:
Right! Almost all of the patches are already resolved in unstable repository. For building xen-unstable debian packeges in my last attempt, only one patch was absolutely necessary (debian-stubdom.Makefile.diff).
Strangely, manual run of "rules" makefile “fakeroot debian/rules binary”
builds everything even without this last patch applied, while using the
official packaging command "dpkg-buildpackage -rfakeroot" which calls
the above "rules" makefile fails without the patch.
It might be even theoretically possible to avoid this last patch, if one could find
which environment options applied by running dpkg-buildpackage break the
“make stubdom” command inside the "rules" makefile; find and unset them. Unfortunately I have no time for this unsure guessing
I found one more bug (xen-watchdog-bug.diff) preventing the stopping of xen-watchdog and by that provoking errors during the install and debian packet management.
While analyzing python patch (not on debian), I found out that it can be
dropped if I use the newer recommended debhelper command dh_pysupport to pack python
related parts. The issue however remains open (patch required) if somebody only wishes to build sources without using packaging to debian and dh_pysupport.
Ian: - This special casing of Debian is pretty horrid. How about we provide a general way to pass arguments to setup.py install and setup.py build, with the variables set by default to the empty string?
Sounds great Ian, but after looking into tools/python/setup.py, I feel this exceeds my current knowledge of your python tools.
Summary of attached patches against xen-unstable.hg:
1. debian-stubdom.Makefile.diff - necessary for
official packaging command "dpkg-buildpackage -rfakeroot", not needed for simple build without .deb packages
2. xen-watchdog-bug.diff - obvious bug on all platforms
3. debian-python-2.6.diff - only needed for simple build on debian with no .deb packaging
*.err - describes the error resolved by the patch
I would personally like 1. to be included in xen-unstable.hg, and of course bug 2. resolved.
Personally, I don't find 3. critical any more, as I always avoid installing software which is not .deb packaged, but there might be other opinions out there.
Otherwise, great work guys. I find xen-unstable.hg "almost fully debian-compatible".
PS: Please note that there is an outstanding issue which prevents compiling from xen-unstable.hg with "export debug=n".
I will summarize my latest experience regarding missing debian patches in xen-4.0-testing.hg in my next mail.
On Tue, Jan 11, 2011 at 11:07 PM, Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
user virtual writes ("Re: [Xen-devel] Xen build - Debian vs Redhat layout patch options"):
> I was encouraged by Bruce to forward my patches upstream to make Xen sourcesThanks.
> buildable from debian makefile debian/rules and for debian based target
Thanks for this. Posting them all one after another in a single
> I tried to make my 3 of 4 (5) patches to xen40-testing.hg as non intrusive
> as possible
> - backport-StdGNU.mk.diff (from xen-devel, already here)
message is not the most convenient format for a submission; better
would be one per email.
And there is no need to send us patches we already have; it just
causes confusion ...
We have machinery in xen-unstable.hg now which should cope with this,
> - debian-sysconfig-default.diff (conditional Makefile expansion)
so I don't think we need that change.
Stefano has dealt with most of these I think, but we still had
> Description: Simple Python install layout for Debian based systems
> Ported from origin below (Xen-3.4), which is a follower of
> previous version from ubuntu Xen-3.3 sources
> Drivers: User Virtual <virtualusr@xxxxxxxxx>
> URL: http://virtualusr.wordpress.com
> Origin: https://bugs.launchpad.net/ubuntu/+source/xen-3.3/+bug/378240/+attachment/662345/+files/xen-3.4_3.4.1-1ubuntu1.diff.gz
> Index: xen-4.0-4.0.1/tools/pygrub/Makefile
> --- xen-4.0-4.0.1.orig/tools/pygrub/Makefile 2010-08-25 10:22:42.000000000 +0200
> +++ xen-4.0-4.0.1/tools/pygrub/Makefile 2011-01-04 19:08:18.556582404 +0100
> @@ -11,7 +11,8 @@
> .PHONY: install
> install: all
> CC="$(CC)" CFLAGS="$(CFLAGS)" $(PYTHON) setup.py install \
> - $(PYTHON_PREFIX_ARG) --root="$(DESTDIR)" --force
> + $(PYTHON_PREFIX_ARG) --root="$(DESTDIR)" --force \
> + $(if $(filter y,$(DEBIANBASE)),--install-layout=deb)
> $(INSTALL_PYTHON_PROG) src/pygrub $(DESTDIR)/$(BINDIR)/pygrub
> $(INSTALL_DIR) $(DESTDIR)/var/run/xend/boot
This special casing of Debian is pretty horrid. How about we provide
a general way to pass arguments to setup.py install and setup.py
build, with the variables set by default to the empty string ?
Xen-devel mailing list