pyconfigure

(Brandon Invergo)
2012-09-17: re-add virtualenv support

re-add virtualenv support

diff --git a/examples/mediagoblin/Makefile.in b/examples/mediagoblin/Makefile.in
--- a/examples/mediagoblin/Makefile.in
+++ b/examples/mediagoblin/Makefile.in
@@ -8,6 +8,7 @@ PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 PYTHON = @PYTHON@
+VIRTUALENV = @VIRTUALENV@
 SPHINXBUILD = @SPHINXBUILD@
 SHELL = @SHELL@
 INSTALL = @INSTALL@
@@ -31,7 +32,12 @@ all: install
 
 install:
 	$(NORMAL_INSTALL)
+ifneq ($VIRTUALENV, no)
+	$(VIRTUALENV) $(VIRTUALENV_FLAGS) $(DESTDIR)$(prefix) || virtualenv $(DESTDIR)$(prefix)
+	$(DESTDIR)$(prefix)/bin/python $(srcdir)/setup.py develop --prefix=$(DESTDIR)$(prefix)
+else
 	$(PYTHON) $(srcdir)setup.py develop --prefix=$(DESTDIR)$(prefix)
+endif
 	$(INSTALL_PROGRAM) $(srcdir)/lazyserver.sh $(DESTDIR)$(datadir)
 	$(INSTALL_PROGRAM) $(srcdir)/lazycelery.sh $(DESTDIR)$(datadir)
 	$(INSTALL_PROGRAM) $(srcdir)/lazystarter.sh $(DESTDIR)$(datadir)
@@ -65,7 +71,7 @@ distclean: $(wildcard $(srcdir)/docs/sou
 info: docs/build/texinfo/gnumediagoblin.info
 
 docs/build/texinfo/gnumediagoblin.info: $(wildcard docs/source/*)
-ifneq ($SPHINX_BUILD, none)
+ifneq ($SPHINX_BUILD, no)
 	$(MAKE) -C docs info SPHINXBUILD=$(SPHINXBUILD)
 endif
 
@@ -76,7 +82,7 @@ install-html: html
 html: docs/build/html/index.html
 
 docs/build/html/index.html: $(wildcard $(srcdir)/docs/source/*)
-ifneq ($SPHINX_BUILD, none)
+ifneq ($SPHINX_BUILD, no)
 	$(MAKE) -C docs html SPHINXBUILD=$(SPHINXBUILD)
 endif
 
@@ -87,7 +93,7 @@ install-pdf: pdf
 pdf: docs/build/latex/GNUMediaGoblin.pdf
 
 docs/build/latex/GNUMediaGoblin.pdf: $(wildcard $(srcdir)/docs/source/*)
-ifneq ($SPHINX_BUILD, none)
+ifneq ($SPHINX_BUILD, no)
 	$(MAKE) -C docs latexpdf SPHINXBUILD=$(SPHINXBUILD)
 endif
 
diff --git a/examples/mediagoblin/configure.ac b/examples/mediagoblin/configure.ac
--- a/examples/mediagoblin/configure.ac
+++ b/examples/mediagoblin/configure.ac
@@ -51,11 +51,24 @@ else
                             [AC_MSG_ERROR(Python interpreter too old)])
 fi
 
-AC_CHECK_PROGS([SPHINXBUILD], [sphinx-build sphinx-build2], [none])
-AS_IF([test "x$SPHINXBUILD" = xnone], 
+AC_CHECK_PROGS([SPHINXBUILD], [sphinx-build sphinx-build2], [no])
+AS_IF([test "x$SPHINXBUILD" = xno], 
 	    AC_MSG_WARN(sphinx-build is required to build documentation))
 
 
+AC_DEFUN([VIRTUALENV], [no])
+AC_ARG_WITH([virtualenv],
+	[AS_HELP_STRING([--with-virtualenv], [install to a Python virtualenv])],
+	[],
+	[with_virtualenv=no])
+AS_IF([test "x$with_virtualenv" != xno],
+	    AC_CHECK_PROGS([VIRTUALENV], [virtualenv virtualenv2], [no])
+	    AS_IF([test "x$VIRTUALENV" = xno],
+	    [AC_MSG_FAILURE(
+		[--with-virtualenv given but virtualenv could not be found])]))
+AC_ARG_VAR([VIRTUALENV_FLAGS], [flags to pass to the virtualenv command])
+	    
+
 PC_PYTHON_CHECK_HEADERS(,[AC_MSG_ERROR(could not find Python headers)])
 
 PC_PYTHON_SITE_PACKAGE_DIR