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

[Xen-devel] [PATCH 00/45 v3] tool changes to honor configure --prefix=DIR



In my attempt to get a xen.rpm from 'make rpmball' which operates
entirely below the configured --prefix= I came up with these changes.

This is a resend of the same series with the comments incorporated:
http://lists.xenproject.org/archives/html/xen-devel/2014-04/msg03240.html
http://lists.xenproject.org/archives/html/xen-devel/2014-07/msg03447.html

In v3 of this series configure is updated to provide all paths:
sysconfdir, docdir, mandir, includedir, libexecdir, localstatedir.

Additional options: with-initd-dir, with-linux-backend-modules,
with-bash_completion-dir and enable-rpath

Every path is now stored in config/Paths.mk.

With this series its now possible to run everything except pygrub below
the configured --prefix=.

NOTE: the renaming of tools/hotplug/Linux/init.d/xencommons.in may cause
trouble in configured working copies. Use 'git clean -dfx' to wipe all
and everything before git pull.

One outstanding bug is pygrub, which does not know about
$prefix/$lib/python/site-packages. This is still on my todo list.

Also ocamlfind behaves odd. Its required to pass
OCAMLDESTDIR=$PWD/dist/install/${prefix}/lib64/ocaml to make rpmball.
This looks like a limitation of ocaml-findlib. The rpath change includes
an ocaml patch to pass rpath to the oxenstored link command.

Please review and apply.

Olaf

Olaf Hering (46):
  stubdom: fix lwip compile
  tools/xenpaging: create dumpdir with mode 0700
  install.sh: Preserve permissions from make install
  tools/mkrpm: allow custom rpm package name
  tools: remove obsolete path.py from tools/python
  tools/pygrub: store kernels in /var/run/xen/pygrub
  tools/hotplug: create XEN_RUN_DIR at runtime
  tools/hotplug: create XEN_LOCK_DIR at runtime
  tools/hotplug: use XEN_LOCK_DIR instead of hardcoded path
  tools/examples: remove obsolete install targets
  remove obsolete SUBSYS_DIR variable
  Config.mk: move directory list into BUILD_MAKE_VARS
  Config.mk: replace dependency to genpath with actual target
  Config.mk: add new macro buildmakevars2header
  tools/libxl: use buildmakevars2header to create _paths.h
  tools/libxc: provide variable paths to libxc
  tools/libxc: use XEN_RUN_DIR for SUSPEND_LOCK_FILE
  Use configure --sysconfdir=DIR to set CONFIG_DIR
  Add configure --with-initd-dir=DIR
  tools/hotplug: use XEN_SCRIPT_DIR instead of hardcoded path
  tools/configure.ac: sort AC_CONFIG_FILES
  tools: use INITD_DIR instead of CONFIG_DIR/init.d|rc.d
  tools/hotplug: substitute XEN_SCRIPT_DIR on FreeBSD
  remove duplicate variables from config
  Use configure --mandir=DIR to set MANDIR
  Use configure --docdir=DIR to set DOCDIR
  Use configure --includedir=DIR to set INCLUDEDIR
  Use configure --libexecdir=BASEDIR to set LIBEXEC
  Use configure --prefix=DIR to set PREFIX
  Use configure --localstatedir=BASEDIR to set path to /var
  Add configure --enable-rpath
  Add configure --with-linux-backend-modules="mod1 mod2"
  Add configure --with-bash_completion-dir=DIR
  Make XENFIRMWAREDIR a subdir of libexecdir
  Use just PREFIX to reference the path in Paths.mk
  tools: remove private copies of includedir and libdir from libxenstat
  Use Paths.mk for docs, stubdom and tools build
  Move xenconsoled to libexec
  Move xenstored to libexec
  Move xenwatchdogd to libexec
  tools: use XEN_LIB_STORED instead of /var/lib/xenstored
  Use XEN_RUN_DIR instead of /var/run/xen
  Move systemd paths to Paths.mk
  Include Paths.mk in toplevel Makefile to fix uninstall
  Move MAN1DIR and MAN8DIR to Paths.mk
  rerun autogen.sh

 .gitignore                                         |   8 +
 Config.mk                                          |  35 ++--
 Makefile                                           |   7 +-
 README                                             |  12 --
 config/Docs.mk.in                                  |   7 -
 config/FreeBSD.mk                                  |   2 -
 config/Linux.modules                               |  20 --
 config/NetBSD.mk                                   |   5 -
 config/NetBSDRump.mk                               |   2 -
 config/Paths.mk.in                                 |  23 ++-
 config/StdGNU.mk                                   |  22 --
 config/Stubdom.mk.in                               |   8 -
 config/SunOS.mk                                    |  20 --
 config/Tools.mk.in                                 |  13 +-
 configure                                          | 125 ++++++++++--
 docs/Makefile                                      |   1 +
 docs/misc/distro_mapping.txt                       |   4 +-
 install.sh                                         |   3 -
 m4/paths.m4                                        | 110 ++++++++--
 m4/systemd.m4                                      |   4 +-
 m4/xenstored.m4                                    |   8 +-
 stubdom/Makefile                                   |  24 ++-
 stubdom/lwip.dhcp_create_request-hwaddr_len.patch  |  26 +++
 tools/Makefile                                     |  25 ++-
 tools/Rules.mk                                     |   2 +-
 tools/configure                                    | 222 ++++++++++++++++++---
 tools/configure.ac                                 |  53 ++++-
 tools/console/Makefile                             |   7 +-
 tools/examples/Makefile                            |  21 +-
 tools/hotplug/FreeBSD/Makefile                     |   5 +-
 .../FreeBSD/rc.d/{xencommons => xencommons.in}     |  18 +-
 tools/hotplug/FreeBSD/vif-bridge                   |   2 +-
 tools/hotplug/Linux/Makefile                       |  18 +-
 tools/hotplug/Linux/init.d/sysconfig.xencommons.in |   8 +-
 .../Linux/init.d/{xen-watchdog => xen-watchdog.in} |   4 +-
 .../init.d/{xencommons.in.in => xencommons.in}     |  18 +-
 .../Linux/init.d/{xendomains => xendomains.in}     |  14 +-
 tools/hotplug/Linux/systemd/Makefile               |  33 +--
 .../systemd/xen-qemu-dom0-disk-backend.service.in  |   4 +-
 .../hotplug/Linux/systemd/xen-watchdog.service.in  |   2 +-
 tools/hotplug/Linux/systemd/xenconsoled.service.in |   2 +-
 tools/hotplug/Linux/systemd/xendomains.service.in  |   6 +-
 tools/hotplug/Linux/update-modules.sh              |  36 ----
 tools/hotplug/Linux/{vif-setup => vif-setup.in}    |   2 +-
 .../{xen-backend.rules => xen-backend.rules.in}    |  16 +-
 ...-hotplug-common.sh => xen-hotplug-common.sh.in} |   4 +-
 tools/hotplug/Linux/{xendomains => xendomains.in}  |   9 +-
 tools/hotplug/NetBSD/Makefile                      |   6 +-
 tools/hotplug/NetBSD/block                         |   2 +-
 tools/hotplug/NetBSD/rc.d/xen-watchdog             |   2 +-
 .../NetBSD/rc.d/{xencommons => xencommons.in}      |  16 +-
 tools/hotplug/NetBSD/vif-bridge                    |   2 +-
 tools/hotplug/NetBSD/vif-ip                        |   2 +-
 tools/hotplug/common/Makefile                      |   2 +-
 tools/libxc/Makefile                               |   9 +
 tools/libxc/xc_private.h                           |   1 +
 tools/libxc/xc_suspend.c                           |   2 +-
 tools/libxl/Makefile                               |  13 +-
 tools/libxl/libxl_dm.c                             |   4 +-
 tools/libxl/libxl_internal.h                       |   1 -
 tools/libxl/libxl_paths.c                          |   7 +-
 tools/libxl/libxl_save_callout.c                   |   2 +-
 tools/misc/Makefile                                |   8 +-
 tools/misc/mkrpm                                   |   2 +-
 tools/ocaml/xenstored/Makefile                     |   5 +-
 tools/pygrub/Makefile                              |   8 +-
 tools/pygrub/src/pygrub                            |   8 +-
 tools/python/Makefile                              |   9 +-
 tools/vtpmmgr/Makefile                             |   6 +-
 tools/xcutils/Makefile                             |   4 +-
 tools/xenpaging/Makefile                           |   6 +-
 tools/xenstat/libxenstat/Makefile                  |   4 -
 tools/xenstore/Makefile                            |   7 +-
 tools/xenstore/xs_lib.c                            |   2 +-
 tools/xentrace/Makefile                            |   4 +-
 75 files changed, 695 insertions(+), 469 deletions(-)
 delete mode 100644 config/Linux.modules
 create mode 100644 stubdom/lwip.dhcp_create_request-hwaddr_len.patch
 rename tools/hotplug/FreeBSD/rc.d/{xencommons => xencommons.in} (81%)
 rename tools/hotplug/Linux/init.d/{xen-watchdog => xen-watchdog.in} (95%)
 rename tools/hotplug/Linux/init.d/{xencommons.in.in => xencommons.in} (88%)
 rename tools/hotplug/Linux/init.d/{xendomains => xendomains.in} (79%)
 delete mode 100755 tools/hotplug/Linux/update-modules.sh
 rename tools/hotplug/Linux/{vif-setup => vif-setup.in} (61%)
 rename tools/hotplug/Linux/{xen-backend.rules => xen-backend.rules.in} (62%)
 rename tools/hotplug/Linux/{xen-hotplug-common.sh => xen-hotplug-common.sh.in} 
(94%)
 rename tools/hotplug/Linux/{xendomains => xendomains.in} (98%)
 rename tools/hotplug/NetBSD/rc.d/{xencommons => xencommons.in} (83%)


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.