From 9ea857d7ee2ee9ccb8527751c27422f6dbc9a87b Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 7 Apr 2005 14:59:24 +0000 Subject: * ext/extmk.rb (extmake): keep directory names in Makefile as macros. * lib/mkmf.rb (configuration, create_makefile): ditto. * lib/mkmf.rb (CXX_EXT): separate C++ extensions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/mkmf.rb | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'lib/mkmf.rb') diff --git a/lib/mkmf.rb b/lib/mkmf.rb index 5e83eb76b2..841e79c0af 100644 --- a/lib/mkmf.rb +++ b/lib/mkmf.rb @@ -8,10 +8,11 @@ require 'shellwords' CONFIG = Config::MAKEFILE_CONFIG ORIG_LIBPATH = ENV['LIB'] -SRC_EXT = %w[c cc m cxx cpp] +CXX_EXT = %w[cc cxx cpp] if /mswin|bccwin|mingw|msdosdjgpp|human|os2/ !~ CONFIG['build_os'] - SRC_EXT.concat(%w[C]) + CXX_EXT.concat(%w[C]) end +SRC_EXT = %w[c m] << CXX_EXT $static = $config_h = nil unless defined? $configure_args @@ -847,8 +848,8 @@ SHELL = /bin/sh #### Start of system configuration section. #### srcdir = #{srcdir} -topdir = #{$topdir} -hdrdir = #{$extmk ? $hdrdir : '$(topdir)'} +topdir = #{$extmk ? CONFIG["topdir"] : $topdir} +hdrdir = #{$extmk ? CONFIG["hdrdir"] : '$(topdir)'} VPATH = #{vpath.join(CONFIG['PATH_SEPARATOR'])} } drive = File::PATH_SEPARATOR == ';' ? /\A\w:/ : /\A/ @@ -938,7 +939,7 @@ def create_makefile(target, srcprefix = nil) target_prefix = "" end - srcprefix ||= '$(srcdir)' + srcprefix ||= CONFIG['srcdir'] Config::expand(srcdir = srcprefix.dup) if not $objs @@ -979,7 +980,7 @@ def create_makefile(target, srcprefix = nil) dllib = target ? "$(TARGET).#{CONFIG['DLEXT']}" : "" staticlib = target ? "$(TARGET).#$LIBEXT" : "" mfile = open("Makefile", "wb") - mfile.print configuration(srcdir) + mfile.print configuration(srcprefix) mfile.print %{ libpath = #{$LIBPATH.join(" ")} LIBPATH = #{libpath} @@ -1058,7 +1059,7 @@ site-install-rb: install-rb mfile.print ".SUFFIXES: .#{SRC_EXT.join(' .')} .#{$OBJEXT}\n" mfile.print "\n" - %w[cc cpp cxx C].each do |ext| + CXX_EXT.each do |ext| COMPILE_RULES.each do |rule| mfile.printf(rule, ext, $OBJEXT) mfile.printf("\n\t%s\n\n", COMPILE_CXX) -- cgit v1.2.3