WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] Permit user to suppress passing --prefix

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] Permit user to suppress passing --prefix to setup.py
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 11 May 2009 09:55:12 -0700
Delivery-date: Mon, 11 May 2009 09:55:30 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1241721130 -3600
# Node ID bf946cc3008bcb927bf28de87160cc4ec2b180c0
# Parent  a1a0bd345acc99805ee534cf95a43e46402977f1
Permit user to suppress passing --prefix to setup.py

We change all invocations of setup.py as follows:

* use $(PYTHON) instead of `python' so that the user can specify
  an alternative python version if they need to.  If not set it
  defaults to `python' in Config.mk.

* pass --prefix=$(PREFIX) via a new make variable
  $(PYTHON_PREFIX_ARG).  This allows a user to suppress the
  --prefix=... argument entirely by setting PYTHON_PREFIX_ARG=''.
  This will work around the bug described here
     https://bugs.launchpad.net/ubuntu/+bug/362570
  where passing --prefix=/usr/local (which ought to have no effect as
  /usr/local is the default prefix) changes which subdirectory
  distutils chooses, and results in the files being installed in
  site-packages which is not on the default search path.

  Users not affected by this python packaging bug should not set
  PYTHON_PREFIX_ARG and their builds will not be affected.  (Provided
  PREFIX did not contain spaces.  People who put spaces in PREFIX are
  being quite optimistic.)

Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
---
 Config.mk               |    6 ++++++
 tools/pygrub/Makefile   |    6 +++---
 tools/python/Makefile   |    6 +++---
 tools/security/Makefile |    6 +++---
 4 files changed, 15 insertions(+), 9 deletions(-)

diff -r a1a0bd345acc -r bf946cc3008b Config.mk
--- a/Config.mk Thu May 07 10:03:18 2009 +0100
+++ b/Config.mk Thu May 07 19:32:10 2009 +0100
@@ -34,6 +34,12 @@ EXTRA_INCLUDES += $(EXTRA_PREFIX)/includ
 EXTRA_INCLUDES += $(EXTRA_PREFIX)/include
 EXTRA_LIB += $(EXTRA_PREFIX)/$(LIBLEAFDIR)
 endif
+
+PYTHON      ?= python
+PYTHON_PREFIX_ARG ?= --prefix="$(PREFIX)"
+# The above requires that PREFIX contains *no spaces*. This variable is here
+# to permit the user to set PYTHON_PREFIX_ARG to '' to workaround this bug:
+#  https://bugs.launchpad.net/ubuntu/+bug/362570
 
 # cc-option: Check if compiler supports first option, else fall back to second.
 # Usage: cflags-y += $(call cc-option,$(CC),-march=winchip-c6,-march=i586)
diff -r a1a0bd345acc -r bf946cc3008b tools/pygrub/Makefile
--- a/tools/pygrub/Makefile     Thu May 07 10:03:18 2009 +0100
+++ b/tools/pygrub/Makefile     Thu May 07 19:32:10 2009 +0100
@@ -6,12 +6,12 @@ all: build
 all: build
 .PHONY: build
 build:
-       CC="$(CC)" CFLAGS="$(CFLAGS)" python setup.py build
+       CC="$(CC)" CFLAGS="$(CFLAGS)" $(PYTHON) setup.py build
 
 .PHONY: install
 install: all
-       CC="$(CC)" CFLAGS="$(CFLAGS)" python setup.py install \
-               --prefix="$(PREFIX)" --root="$(DESTDIR)" --force
+       CC="$(CC)" CFLAGS="$(CFLAGS)" $(PYTHON) setup.py install \
+               $(PYTHON_PREFIX_ARG) --root="$(DESTDIR)" --force
        $(INSTALL_DIR) $(DESTDIR)/var/run/xend/boot
 
 .PHONY: clean
diff -r a1a0bd345acc -r bf946cc3008b tools/python/Makefile
--- a/tools/python/Makefile     Thu May 07 10:03:18 2009 +0100
+++ b/tools/python/Makefile     Thu May 07 19:32:10 2009 +0100
@@ -16,7 +16,7 @@ NLSDIR = $(SHAREDIR)/locale
 
 .PHONY: build buildpy
 buildpy: 
-       CC="$(CC)" CFLAGS="$(CFLAGS)" python setup.py build
+       CC="$(CC)" CFLAGS="$(CFLAGS)" $(PYTHON) setup.py build
 
 build: buildpy refresh-pot refresh-po $(CATALOGS)
 
@@ -55,8 +55,8 @@ refresh-po: $(POTFILE)
 
 .PHONY: install
 install: install-messages install-dtd
-       CC="$(CC)" CFLAGS="$(CFLAGS)" python setup.py install \
-               --prefix="$(PREFIX)" --root="$(DESTDIR)" --force
+       CC="$(CC)" CFLAGS="$(CFLAGS)" $(PYTHON) setup.py install \
+               $(PYTHON_PREFIX_ARG) --root="$(DESTDIR)" --force
 
 install-dtd: all
        $(INSTALL_DIR) $(DESTDIR)$(DOCDIR)
diff -r a1a0bd345acc -r bf946cc3008b tools/security/Makefile
--- a/tools/security/Makefile   Thu May 07 10:03:18 2009 +0100
+++ b/tools/security/Makefile   Thu May 07 19:32:10 2009 +0100
@@ -60,8 +60,8 @@ install: all $(ACM_CONFIG_FILE)
        $(INSTALL_DATA) $(ACM_INST_HTML) $(DESTDIR)$(ACM_SECGEN_HTMLDIR)
        $(INSTALL_DIR) $(DESTDIR)$(ACM_SECGEN_CGIDIR)
        $(INSTALL_PROG) $(ACM_INST_CGI) $(DESTDIR)$(ACM_SECGEN_CGIDIR)
-       python python/setup.py install \
-               --prefix="$(PREFIX)" --root="$(DESTDIR)" --force
+       $(PYTHON) python/setup.py install $(PYTHON_PREFIX_ARG) \
+               --root="$(DESTDIR)" --force
 else
 .PHONY: all
 all:
@@ -72,7 +72,7 @@ endif
 
 .PHONY: build
 build: $(ACM_INST_TOOLS) $(ACM_NOINST_TOOLS)
-       python python/setup.py build
+       $(PYTHON) python/setup.py build
        chmod 700 $(ACM_SCRIPTS)
 
 xensec_tool: $(OBJS_TOOL)

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] Permit user to suppress passing --prefix to setup.py, Xen patchbot-unstable <=