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

noreply@sourceforge.net noreply@sourceforge.net
Wed, 21 Nov 2001 18:14:29 -0800


Bugs item #410620, was opened at 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: Closed
>Resolution: Fixed
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: Ka-Ping Yee (ping)
Date: 2001-11-21 18:14

Message:
Logged In: YES 
user_id=45338

This got fixed by patch #471894.

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

Comment By: Nobody/Anonymous (nobody)
Date: 2001-11-16 07:25

Message:
Logged In: NO 

I run into the same problem when trying to build/install
pyhton-2.1.1 without write-access to /usr/local/bin/
using prefix=...

it took quite some time util I understood the problem
(it's my first try with python) and found the same fix.

why isn't this _correct_ patch included ???

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

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