Created attachment 597813 [details] example spec file for reproducing Description of problem: The attached .spec contains an example where %ghost is used for a directory and a file. Building this package works fine with rpm-4.8.0-27.el6.x86_64, but fails with rpm-4.9.1.3-7.fc17.x86_64. Version-Release number of selected component (if applicable): rpm-4.9.1.3-7.fc17.x86_64 How reproducible: 100% Steps to Reproduce: 1. download the attached spec file as /tmp/itsaghost.spec 2. rpmbuild -ba /tmp/itsaghost.spec Actual results: Processing files: itsaghost-1.0-1.fc17.x86_64 error: Recognition of file "/home/ndevos/rpmbuild/BUILDROOT/itsaghost-1.0-1.fc17.x86_64/var/lib/ghost" failed: mode 100755 cannot open `/home/ndevos/rpmbuild/BUILDROOT/itsaghost-1.0-1.fc17.x86_64/var/lib/ghost' (No such file or directory) Expected results: Something among the lines of: Processing files: itsaghost-1.0-1.el6.x86_64 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Checking for unpackaged file(s): /usr/lib/rpm/check-files /home/ndevos/rpmbuild/BUILDROOT/itsaghost-1.0-1.el6.x86_64 Wrote: /home/ndevos/rpmbuild/SRPMS/itsaghost-1.0-1.el6.src.rpm Wrote: /home/ndevos/rpmbuild/RPMS/x86_64/itsaghost-1.0-1.el6.x86_64.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.IdnFhg + umask 022 + cd /home/ndevos/rpmbuild/BUILD + rm -rf /home/ndevos/rpmbuild/BUILDROOT/itsaghost-1.0-1.el6.x86_64 + exit 0 Additional info: This problem was hit in the glusterfs sources where a bundled glusterfs.spec.in is the base for a glusterfs.spec included in an archive created with 'make dist'. The %ghost directory and file are created during runtime, and not during 'make install'. Any clarification on why this fails, and if the spec file can/should be adjusted would be much appreciated.
Hmm, curious case, and easily reproduced. I can think of several issues why it would fail, what's not so obvious how it succeeds :) I'm on vacation for the next two weeks so further investigation will have to wait. In the meanwhile an easy workaround is to create the %ghost directory during build, eg in the reproducer spec 'mkdir -p %{buildroot}/var/lib/ghost' instead of 'mkdir -p %{buildroot}/var/lib'. Also this is limited to non-existent %ghost directories only, summary updated.
Fixed upstream now. I'm still a bit puzzled how it manages to "work" on RHEL-6, but maybe I'll just shrug it away for now...
Thanks for 'fixing' this upstream. Please update this Bug when packages are available for testing.
rpm-4.10.1-1.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/rpm-4.10.1-1.fc18
Package rpm-4.10.1-1.fc18: * should fix your issue, * was pushed to the Fedora 18 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing rpm-4.10.1-1.fc18' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2012-15295/rpm-4.10.1-1.fc18 then log in and leave karma (feedback).
This doesn't fix the bug on Fedora 17. Can we get a backport of the fix into rpm-4.9 for Fedora 17? Or get rpm-4.10 on Fedora 17?
We reported this bug against F17. The fix is only in F18. As such I don't see how this can be Status: ON_QA. Can we get a response to comment 6 please? We'd like to see this fix backported into rpm-4.9 for Fedora 17.
rpm-4.10.1-1.fc18 has been pushed to the Fedora 18 stable repository. If problems still persist, please make note of it in this bug report.