diff options
author | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-01-28 09:22:28 +0000 |
---|---|---|
committer | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-01-28 09:22:28 +0000 |
commit | f24c8333e221fa865630ab5824233e96d1dd855d (patch) | |
tree | f4719eae9af178c03bf32e55b0d5b6f778552393 /lib | |
parent | 8a453df391e3ec1c527f3bb311b6174907c892ea (diff) |
merges r21749 and r21750 from trunk into ruby_1_9_1.
* lib/mkmf.rb (mkintpath): new function which converts native path
to format acceptable in Makefile.
* lib/mkmf.rb (configuration): convers srcdir, topdir and hdrdir.
a patch by Alexey Borzenkov <snaury AT gmail.com> at
[ruby-core:21448].
--
* lib/mkmf.rb (configuration): leaves PATH_SEPARATOR unchanged.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@21829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
-rw-r--r-- | lib/mkmf.rb | 31 |
1 files changed, 26 insertions, 5 deletions
diff --git a/lib/mkmf.rb b/lib/mkmf.rb index 0f6f61d984..da84cb85cc 100644 --- a/lib/mkmf.rb +++ b/lib/mkmf.rb @@ -1299,6 +1299,29 @@ def winsep(s) s.tr('/', '\\') end +# Converts native path to format acceptable in Makefile +# +# Internal use only. +# +if !CROSS_COMPILING + case CONFIG['build_os'] + when 'mingw32' + def mkintpath(path) + # mingw uses make from msys and it needs special care + # converts from C:\some\path to /C/some/path + path = path.dup + path.tr!('\\', '/') + path.sub!(/\A([A-Za-z]):(?=\/)/, '/\1') + path + end + end +end +unless defined?(mkintpath) + def mkintpath(path) + path + end +end + def configuration(srcdir) mk = [] vpath = $VPATH.dup @@ -1308,8 +1331,6 @@ def configuration(srcdir) if CONFIG['target_os'] != 'cygwin' vpath = vpath.map {|p| p.sub(/.*/, '$(shell cygpath -u \&)')} end - when 'mingw32' - CONFIG['PATH_SEPARATOR'] = ';' end end CONFIG["hdrdir"] ||= $hdrdir @@ -1318,9 +1339,9 @@ SHELL = /bin/sh #### Start of system configuration section. #### #{"top_srcdir = " + $top_srcdir.sub(%r"\A#{Regexp.quote($topdir)}/", "$(topdir)/") if $extmk} -srcdir = #{srcdir.gsub(/\$\((srcdir)\)|\$\{(srcdir)\}/) {CONFIG[$1||$2]}.quote} -topdir = #{($extmk ? CONFIG["topdir"] : $topdir).quote} -hdrdir = #{CONFIG["hdrdir"].quote} +srcdir = #{srcdir.gsub(/\$\((srcdir)\)|\$\{(srcdir)\}/) {mkintpath(CONFIG[$1||$2])}.quote} +topdir = #{mkintpath($extmk ? CONFIG["topdir"] : $topdir).quote} +hdrdir = #{mkintpath(CONFIG["hdrdir"]).quote} arch_hdrdir = #{$arch_hdrdir} VPATH = #{vpath.join(CONFIG['PATH_SEPARATOR'])} } |