Bug 198877

Summary: setup.py bdist_rpm fails with "Installed (but unpackaged) file(s) found"
Product: [Fedora] Fedora Reporter: Jan Martinek <honza>
Component: pythonAssignee: Jeremy Katz <katzj>
Status: CLOSED DUPLICATE QA Contact: Brock Organ <borgan>
Severity: medium Docs Contact:
Priority: medium    
Version: 5CC: katzj, mads, nshmyrev, tsui.tony
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-01-06 21:23:04 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jan Martinek 2006-07-14 11:03:28 UTC
Description of problem:

setup.py fails to build rpm.

How reproducible:
Always

Steps to Reproduce:
1. Create dir "foo" with these files:

foo.py
setup.py

setup.py contains:
----
#!/usr/bin/env python
from distutils.core import setup

setup(
name='foo',
version='0.1',
py_modules=['foo'],
)
----
contents of file foo.py is not important.

2. from the 'foo' directory run

python setup.py bdist_rpm
  
Actual results:

building of rpm fails with

Checking for unpackaged file(s): /usr/lib/rpm/check-files
/var/tmp/foo-0.1-1-buildroot
error: Installed (but unpackaged) file(s) found:
   /usr/lib/python2.4/site-packages/foo.pyo


Expected results:

The command above should create a rpm package.

Comment 1 Mihai Ibanescu 2006-07-17 02:23:13 UTC
This is a known issue. What happens is, depending on the configuration of rpm,
optimized files may be generated (it is an option in the rpm macros file).

To work around this problem, in the %install section you have to use:

python setup.py install --optimize 1 --root=$RPM_BUILD_ROOT
--record=INSTALLED_FILES 

I am generally using bdist_rpm just to generate the template spec file, since I
cannot control a lot of things that are important from within bdist_rpm. If you
choose to continue to use bdist_rpm, you could create a file called install.spec
containing the above line, and then do:

python setup.py bdist_rpm --install-script install.spec

This should be filed upstream with the python developers; if you want to do that
yourself please use
http://sourceforge.net/tracker/?group_id=5470&atid=105470&func=add



Comment 3 Mads Kiilerich 2008-03-28 09:57:33 UTC
FYI I got this problem on F8 trying to build pyscard-1.6.6 with "./setup.py
build bdist_rpm"

http://www.aczoom.com/cms/forums/blockhosts/no-rpm-builds hinted me to a
workaround that works for me:
echo "%_unpackaged_files_terminate_build 0" >> ~/.rpmmacros

What is the status of this issue? Unresolved disagreement between python and rpm
guys?

Comment 4 Mads Kiilerich 2009-01-15 22:51:02 UTC
Ok, we tried to blame upstream, but it popped up again in issue 236535, and this time it seems like we will get it fixed ...

*** This bug has been marked as a duplicate of bug 236535 ***