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-devel

[Xen-devel] [PATCH] Permit user to suppress passing --prefix to setup.py

iwj writes ("Re: [Xen-devel] [PATCH] Attempt to build xen-unstable on Ubuntu 
9.04 Server (Ubuntu Desktop installed)"):
> It'll be a simple fix which I'll test to make sure it doesn't have any
> effect on the build when you don't turn it on :-).

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>

diff -r a1a0bd345acc Config.mk
--- a/Config.mk Thu May 07 10:03:18 2009 +0100
+++ b/Config.mk Thu May 07 18:05:37 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)"
+# Sorry, if PREFIX contains spaces, you lose.  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 tools/pygrub/Makefile
--- a/tools/pygrub/Makefile     Thu May 07 10:03:18 2009 +0100
+++ b/tools/pygrub/Makefile     Thu May 07 18:01:43 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 tools/python/Makefile
--- a/tools/python/Makefile     Thu May 07 10:03:18 2009 +0100
+++ b/tools/python/Makefile     Thu May 07 18:01:01 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 tools/security/Makefile
--- a/tools/security/Makefile   Thu May 07 10:03:18 2009 +0100
+++ b/tools/security/Makefile   Thu May 07 18:01:43 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-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>