Bug 5370

Summary: RPM doesnt work with pathnames with spaces
Product: [Retired] Red Hat Linux Reporter: vharvey
Component: rpmAssignee: Jeff Johnson <jbj>
Status: CLOSED WONTFIX QA Contact:
Severity: medium Docs Contact:
Priority: high    
Version: 6.0   
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: 2001-04-03 12:23:50 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 vharvey 1999-09-26 01:59:43 UTC
I tried building an rpm from a tarball, and it failed. The
tarball was in a directory called "New GNOME Sources". It
found the spec, I guess, but failed with this message:

Macro % has illegal name (%define)
Executing: %prep
+ umask 022
+ cd /usr/src/redhat/BUILD
+ cd /usr/src/redhat/BUILD
+ rm -rf Gtk---1.0.2
+ /bin/gzip -dc /home/vincent/.gnome-desktop/New
Gnome/Gtk---1.0.2.tar.gz
/home/vincent/.gnome-desktop/New.gz: No such file or
directory
Gnome/Gtk---1.0.2.tar.gz: No such file or directory
+ tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd Gtk---1.0.2
/var/tmp/rpm-tmp.16971: cd: Gtk---1.0.2: No such file or
directory
Bad exit status from /var/tmp/rpm-tmp.16971 (%prep)

The reason I rate this high is becuase it seems like a real
embarrasing mistake, that I would bet is easily fixable.

Comment 1 Jeff Johnson 1999-09-26 13:23:59 UTC
Can you supply the specfile (just reply to this message with
spec file attached). Thanks.

Comment 2 Jeff Johnson 1999-10-01 19:20:59 UTC
Support for build configurations with pathnames with embedded
spaces has never been supported. If you insist on embedded spaces,
you might try escaping the spaces in you ~/.rpmmacros file.

Meanwhile, the spec file that you've included has another problem.
Macro expansion in rpm is *entirely* context free. That means that
a %define will be recognized in comments, inside strings, within
the false part of %ifarch, everywhere. You might want to try
defining it from the command line during the build as
	--define 'STATIC ...'