I spent last night and this morning splitting the single patch I had, into 13 separate patches. Most are build system tweaks(DESTDIR, parallel make, INSTALL, proper target depends). Also, proper PIC support in the libs, and a few other things. Below is the meta-info that my patch oriented build system maintains. I''ll be sending each patch as a separate mail(I apologize for the mail flood ahead of time). ps: I decided to split out these patches, and send upstream, before uploading my deb packages. If possible, I''d like to have these applied, and a new version rolled based on them. pps: These are generated against 2.0.3. ==Name: proper-depends.patch Description: Use proper targets in makefiles A rule in make should produce only what it''s target allows. When it produces side-effects, things like ctrl-c and parallellism break it oddly. DiffStat: xen/Makefile | 9 +++++---- xen/arch/x86/Makefile | 14 ++++++++++---- xen/common/Makefile | 3 ++- xen/drivers/acpi/Makefile | 3 ++- xen/drivers/char/Makefile | 3 ++- xen/drivers/pci/Makefile | 3 ++- 6 files changed, 23 insertions(+), 12 deletions(-) Name: pic-lib.patch Description: support PIC code generation Libraries have 2 methods of being compiled; a .so must contain non-pic objects, while the .a can contain standard objects. DiffStat: tools/libxc/Makefile | 34 +++++++++++++++++++++------------- tools/libxutil/Makefile | 11 ++++++++--- 2 files changed, 29 insertions(+), 16 deletions(-) Name: doc-make-vars.patch Description: Use vars for complex programs It''s generally standard to call complex programs indirectly thru make variables. This allows them to be replaced easily with alternative versions, without editting each makefile. . Additionally, this patch makes use of $(pkgdocdir) in docs/Makefile. DiffStat: docs/Makefile | 53 +++++++++++++++++++++++++++++++++++------------------ 1 files changed, 35 insertions(+), 18 deletions(-) Name: INSTALL.patch Depends: proper-depends.patch, pic-lib.patch, doc-make-vars.patch Description: use INSTALL everywhere Use install(by way of INSTALL variables) to create directories, install programs, and install data files. DiffStat: Makefile | 22 +++++++++++++--------- docs/Makefile | 10 ++++++---- tools/examples/Makefile | 20 ++++++++++++-------- tools/libxc/Makefile | 12 ++++++++---- tools/libxutil/Makefile | 9 +++++++-- tools/misc/Makefile | 11 +++++++---- tools/misc/miniterm/Makefile | 7 +++++-- tools/sv/Makefile | 18 ++++++++++-------- tools/xentrace/Makefile | 16 ++++++++++------ tools/xfrd/Makefile | 8 ++++++-- xen/Makefile | 17 ++++++++++------- 11 files changed, 94 insertions(+), 56 deletions(-) Name: bash-for-mkbuildtree.patch Description: mkbuildtree requires bash DiffStat: linux-2.4.28-xen-sparse/mkbuildtree | 2 +- linux-2.6.10-xen-sparse/mkbuildtree | 2 +- netbsd-2.0-xen-sparse/mkbuildtree | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) Name: parallel-make.patch Depends: INSTALL.patch, proper-depends.patch Description: support parallellism better Using shell for loops doesn''t allow make to run it the most parallel modes. Use patsubst/addsuffix tricks to make this work. DiffStat: Makefile | 60 +++++++++++++++++++++++------------------------------------ xen/Makefile | 9 +++----- 2 files changed, 28 insertions(+), 41 deletions(-) Name: init-script-force-reload.patch Description: add force-reload option Debian policy requires init scripts to implement force-reload. So, alias that to restart. DiffStat: tools/examples/init.d/xend | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Name: fhs-paths.patch Depends: INSTALL.patch Description: Use FHS-compatible paths DiffStat: tools/python/xen/sv/params.py | 4 ++-- tools/python/xen/xend/XendRoot.py | 2 +- tools/sv/Makefile | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) Name: linux-2.4-modules.patch Description: conditionally call modules targets for 2.4 There was a complaint on the mailing list about linux 2.6 not building if module support was disabled; a patch was done to fix this. However, the same change was not done to the 2.4 files. DiffStat: buildconfigs/mk.linux-2.4-xen0 | 6 ++++-- buildconfigs/mk.linux-2.4-xenU | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) Name: python-path.patch Description: fix path to python There is no python2 in debian. Instead, use python. DiffStat: tools/python/xen/xend/server/SrvServer.py | 2 +- tools/python/xen/xend/sxp.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) Name: prefix-DESTDIR.patch Depends: INSTALL.patch, doc-make-vars.patch, fhs-paths.patch, linux-2.4-modules.patch, parallel-make.patch, pic-lib.patch, proper-depends.patch Description: use DESTDIR correctly Standard makefiles always attempt to install to the root(/). Setting DESTDIR is the normal way to install to an alternative location. . Setting prefix has the possibility of breaking programs, as the prefix may have been embedded inside a compiled binary. DiffStat: Makefile | 11 ++++++----- buildconfigs/mk.linux-2.4-xen0 | 4 ++-- buildconfigs/mk.linux-2.4-xenU | 4 ++-- buildconfigs/mk.linux-2.6-xen0 | 4 ++-- buildconfigs/mk.linux-2.6-xenU | 4 ++-- docs/Makefile | 13 +++++++------ tools/examples/Makefile | 20 ++++++++++---------- tools/libxc/Makefile | 12 ++++++------ tools/libxutil/Makefile | 8 ++++---- tools/misc/Makefile | 8 ++++---- tools/misc/miniterm/Makefile | 4 ++-- tools/python/Makefile | 6 ++---- tools/sv/Makefile | 14 +++++++------- tools/xentrace/Makefile | 12 ++++++------ tools/xfrd/Makefile | 4 ++-- xen/Makefile | 20 ++++++++++---------- 16 files changed, 74 insertions(+), 74 deletions(-) Name: sane-make-syntax.patch Depends: INSTALL.patch, parallel-make.patch, prefix-DESTDIR.patch Description: fix non-standard make/shell syntax Fix use of `pwd`, &&, and || true. Also, remove (). DiffStat: Makefile | 16 ++++++++-------- tools/Makefile | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) Name: xen-banner.patch Depends: INSTALL.patch, parallel-make.patch, prefix-DESTDIR.patch, proper-depends.patch Description: split banner.h Split banner.h, to make it easier to edit, and more properly fit in with normal build systems. . Also, inline the rules to actually build figlet. DiffStat: xen/Makefile | 50 +++++++++++++++++++++++-------------------- xen/include/xen/banner.h | 12 ++++++++++ xen/include/xen/compile.h.in | 13 +++++++++++ 3 files changed, 52 insertions(+), 23 deletions(-) ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel