[Pkg-xen-devel] Xen 4.1.1 packaging enhancement
Ian Campbell
ijc at hellion.org.uk
Thu Aug 18 10:39:59 UTC 2011
On Thu, 2011-08-18 at 17:53 +0800, Thomas Goirand wrote:
> >> Description: Xenstore communications library for Xen
> >> + XenStore is a database, hosted by domain 0,
> >
> > Not necessarily dom0 -- it is possible to run xenstore in another domain
> > (although only really prototypes of this have been done). </pendant>
>
> Can you provide a better wording then? Because currently, we have a
> single line long description, which isn't good for neither my taste and
> the one of Lintian. :)
Just drop the ", hosted by domain 0," ?
> >> +install-lib-ocaml_$(ARCH): DIR = $(BUILD_DIR)/install-utils_$(ARCH)
> >> +install-lib-ocaml_$(ARCH): PACKAGE_NAME = libxen-ocaml
> >> +install-lib-ocaml_$(ARCH): DH_OPTIONS = -p$(PACKAGE_NAME)
> >> +install-lib-ocaml_$(ARCH): $(STAMPS_DIR)/install-utils_$(ARCH)
> >> + dh_testdir
> >> + dh_testroot
> >> + dh_prep
> >> + install -D -m 0644 $(BUILD_DIR)/install-utils_$(ARCH)/usr/lib/ocaml/eventchn/dlleventchn_stubs.so $(CURDIR)/debian/$(PACKAGE_NAME)/$(OCAML_DLL_DIR)/dlleventchn_stubs.so
> >> + install -D -m 0644 $(BUILD_DIR)/install-utils_$(ARCH)/usr/lib/ocaml/mmap/dllmmap_stubs.so $(CURDIR)/debian/$(PACKAGE_NAME)/$(OCAML_DLL_DIR)/dllmmap_stubs.so
> >> + install -D -m 0644 $(BUILD_DIR)/install-utils_$(ARCH)/usr/lib/ocaml/xb/dllxb_stubs.so $(CURDIR)/debian/$(PACKAGE_NAME)/$(OCAML_DLL_DIR)/dllxb_stubs.so
> >> + install -D -m 0644 $(BUILD_DIR)/install-utils_$(ARCH)/usr/lib/ocaml/xc/dllxc_stubs.so $(CURDIR)/debian/$(PACKAGE_NAME)/$(OCAML_DLL_DIR)/dllxc_stubs.so
> >> + install -D -m 0644 $(BUILD_DIR)/install-utils_$(ARCH)/usr/lib/ocaml/xl/dllxl_stubs.so $(CURDIR)/debian/$(PACKAGE_NAME)/$(OCAML_DLL_DIR)/dllxl_stubs.so
> >
> > All these open-coded install lines (and the many which follow) can't be
> > right. Why can't dh_install be used for this stuff?
>
> The point is to use $(OCAML_DLL_DIR) from /usr/share/ocaml/ocamlvars.mk,
> which dh_install can't use. But it's wrong as well, best would be to use
> "ocamlfind install". I'll try working on that.
Does OCAML_DDL_DIR need plumbing into a (potentially new) upstream
configuration option so that the "make -C tools" Just Works? Or does
"ocamlfind install" already just work (I thought upstream was using it
already though).
>
> >> @@ -157,6 +228,7 @@
> >> install -D -m644 debian/xen-utils.README.Debian $(PACKAGE_DIR)/usr/share/doc/$(PACKAGE_NAME)/README.Debian
> >> install -D -m644 debian/xen-utils-$(VERSION).lintian-overrides $(PACKAGE_DIR)/usr/share/lintian/overrides/$(PACKAGE_NAME)
> >> dh_install --sourcedir=$(DIR) usr/lib/xen-$(VERSION)
> >> + strip -s --remove-section=.note --remove-section=.comment $(PACKAGE_DIR)/usr/lib/xen-$(VERSION)/boot/hvmloader
> >
> > What is this for?
>
> Isn't that obvious? Stripping hvmloader which was *not* stripped as
> reported by lintian... I was expecting that dh_stirp would do it, but
> it's not. It's a bit awkward to do it this way, but it works! :)
Ah, I thought you were specifically removing .note and .comment over and
above what dh_strip had done.
I suppose dh_strip wants/needs it to be executable in order to find it
or only looks in *bin or something. It's a shame dh_strip can't take a
list of additional files from somewhere
This isn't really a "binary" in the sense which I think policy 10.1
means (it just happens to be an ELF file). I think overriding the
Lintian warning would have been an appropriate response also.
>
> >> diff -r -u old/xen-4.1.1/qemu/audio/alsaaudio.c new/xen-4.1.1/qemu/audio/alsaaudio.c
> >> --- old/xen-4.1.1/qemu/audio/alsaaudio.c 2011-04-28 07:38:36.000000000 +0000
> >> +++ new/xen-4.1.1/qemu/audio/alsaaudio.c 2011-08-07 07:40:06.000000000 +0000
> >> @@ -475,7 +475,7 @@
> >> (obt->fmt != req->fmt ||
> >> obt->nchannels != req->nchannels ||
> >> obt->freq != req->freq)) {
> >> - dolog ("Audio paramters for %s\n", typ);
> >> + dolog ("Audio parameters for %s\n", typ);
> >> alsa_dump_info (req, obt);
> >> }
> >>
> >
> > Should this (and all the following changes to the qemu subtree) be
> > patches under debian/patches instead of applied directly?
>
> Same as above. It WAS patched in debian/patches, but I didn't add the -N
> option to diff, and new files didn't show up.
It'd be useful to exclude these bits of the patch in favour of including
debian/patches, just to avoid confusion/duplication etc.
>
> >> +LIBS += -lpulse -lSDL
> >
> > Should rather be a fix to the configure script?
> >
> >> BAD_OBJS += gdbstub.o acpi.o apic.o
> >> BAD_OBJS += vmmouse.o vmport.o tcg* helper.o vmware_vga.o virtio-balloon.o
> >>
> >> diff -r -u old/xen-4.1.1/tools/Makefile new/xen-4.1.1/tools/Makefile
> >> --- old/xen-4.1.1/tools/Makefile 2011-08-07 01:02:50.000000000 +0000
> >> +++ new/xen-4.1.1/tools/Makefile 2011-08-07 07:40:06.000000000 +0000
> >> @@ -109,7 +109,7 @@
> >> $(absolutify_xen_root); \
> >> $(buildmakevars2shellvars); \
> >> cd ioemu-dir; \
> >> - $(QEMU_ROOT)/xen-setup $(IOEMU_CONFIGURE_CROSS)
> >> + $(QEMU_ROOT)/xen-setup $(IOEMU_CONFIGURE_CROSS) --audio-drv-list="pa oss alsa sdl esd" --audio-card-list="ac97 es1370 sb16 cs4231a adlib gus" --enable-mixemu
> >
> > It'd be better to add a IOEMU_CONFIG_OPTS variable to the top-level
> > Config.mk and use it in the packaging. That sort of patch could be
> > upstreamed I think.
> >
> > Ian.
>
> Can you explain better how to do that? Really, we do need the audio and
> SDL options, so it'd be nice to get to know how to do it the best way.
e.g. add to tools/Makefile:
IOEMU_CONFIGURE_OPTIONS ?=
and make the above xen-setup invocation:
$(QEMU_ROOT)/xen-setup $(IOEMU_CONFIGURE_CROSS) $(IOEMU_CONFIGURE_OPTIONS)
and getting that patch upstream would allow you to define
IOEMU_CONFIGURE_OPTIONS in the packaging files instead of having to
patch.
Ian.
--
Ian Campbell
Current Noise: Soundgarden - Black Hole Sun
Playing an unamplified electric guitar is like strumming on a picnic table.
-- Dave Barry, "The Snake"
More information about the Pkg-xen-devel
mailing list