Project

General

Profile

Actions

Bug #3024

closed

mkmf: Directory names with spaces cause invalid Makefiles to be generated

Added by emerose (Sam Quigley) over 12 years ago. Updated over 9 years ago.

Status:
Closed
Priority:
Normal
Target version:
ruby -v:
ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-darwin10.2.0]
Backport:
[ruby-core:29056]

Description

=begin
mkmf does not properly quote or escape directory names containing spaces, and thus creates invalid Makefiles. For example, a recent run of mkmf created a Makefile containing:

BINDIR = $(bindir)
RUBYCOMMONDIR = $(sitedir)$(target_prefix)
RUBYLIBDIR = /Users/sq/Code/Third Party/flint/vendor/gems/bcrypt-ruby-2.1.2/lib$(target_prefix)
RUBYARCHDIR = /Users/sq/Code/Third Party/flint/vendor/gems/bcrypt-ruby-2.1.2/lib$(target_prefix)

When make is run, it fails with the following errors:

[...]
make
Makefile:128: warning: overriding commands for target /Users/sq/Code/Third' Makefile:122: warning: ignoring old commands for target /Users/sq/Code/Third'
[...]
make install
Makefile:128: warning: overriding commands for target /Users/sq/Code/Third' Makefile:122: warning: ignoring old commands for target /Users/sq/Code/Third'
mkdir -p /Users/sq/Code/Third
/opt/local/bin/ginstall -c -m 0755 bcrypt_ext.bundle /Users/sq/Code/Third Party/flint/vendor/gems/bcrypt-ruby-2.1.2/lib
/opt/local/bin/ginstall: omitting directory `/Users/sq/Code/Third'
make: *** [Party/flint/vendor/gems/bcrypt-ruby-2.1.2/lib/bcrypt_ext.bundle] Error 1

This issue (or something very similar) was reported as Ruby bug #2308 on 2005-08-25 here: http://rubyforge.org/tracker/index.php?func=detail&aid=2308&group_id=426&atid=1698
=end


Related issues 1 (0 open1 closed)

Has duplicate Ruby master - Bug #7036: Compiling extensions with Ruby in a path with spacesClosednobu (Nobuyoshi Nakada)09/18/2012Actions
Actions

Also available in: Atom PDF