[Python-bugs-list] [ python-Bugs-410620 ] pydoc installation w.r.t. RPM.

noreply@sourceforge.net noreply@sourceforge.net
Mon, 30 Apr 2001 04:14:26 -0700


Bugs item #410620, was updated on 2001-03-22 15:20
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=410620&group_id=5470

Category: Installation
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Nobody/Anonymous (nobody)
Assigned to: Ka-Ping Yee (ping)
Summary: pydoc installation w.r.t. RPM.

Initial Comment:
Overview:

When building an RPM the value for the --prefix
configure variable takes on double meaning.  Why?
Well --prefix tells the build system to "build python
so that if runs from --prefix at run time".  This
infers that during "make install" you want to install
python in the --prefix area.  The problem is when
building an RPM you need to build python for --prefix
but install into a temprory place (not indicated by
the --prefix variable).  This is done by overriding
the environment variable $prefix during "make install"
so rpm can install into a temprary location in order
to snarf up the files for packaging.

Python in general plays this game well however from
2.1a2 to 2.1b1 the pydoc stuff breaks this paradigm.

I'm using this patch in my 2.1b1 rpm specfile but I
would prefer the patch to be incorporated into the
base installation.

-res

Patch included below:

--------------------- snip -------------------

*** Python-2.1b1/Makefile.pre.in.ORIG   Wed Mar 21
13:24:09 2001
--- Python-2.1b1/Makefile.pre.in        Wed Mar 21
13:24:48 2001
***************
*** 694,700 ****
  # This goes into $(exec_prefix)
  sharedinstall:
        PYTHONPATH= ./$(PYTHON) $(srcdir)/setup.py
install \
!               --install-platlib=$(DESTSHARED)
  
  # Build the toplevel Makefile
  Makefile.pre: Makefile.pre.in config.status
--- 694,700 ----
  # This goes into $(exec_prefix)
  sharedinstall:
        PYTHONPATH= ./$(PYTHON) $(srcdir)/setup.py
install \
!               --install-platlib=$(DESTSHARED)
--prefix=${prefix}
  
  # Build the toplevel Makefile
  Makefile.pre: Makefile.pre.in config.status


----------------------------------------------------------------------

Comment By: Anthon van der Neut (anthon)
Date: 2001-04-30 04:14

Message:
Logged In: YES 
user_id=90778

I ran into the same problem with 2.1 final release. Tried to
use the --root option in that place only to find that 
the .so files installed by sharedinstall: where now in 
$(RPM_BUILD_ROOT)/$(RPM_BUILD_ROOT)/.... :(
I chose the more restricted patch:
--- Makefile.pre.in.org
+++ Makefile.pre.in     Mon Apr 30 11:33:53 
2001                                
@@ -704,7 +708,7 @@
 # This goes into $(exec_prefix)
 sharedinstall:
        PYTHONPATH= ./$(PYTHON) $(srcdir)/setup.py install \
-               --install-platlib=$(DESTSHARED)
+               --install-platlib=$(DESTSHARED) --install-
scripts=$(BINDIR)
 
 # Build the toplevel Makefile
 Makefile.pre: Makefile.pre.in config.status
              

----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=410620&group_id=5470