aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/mkmf.rb22
1 files changed, 13 insertions, 9 deletions
diff --git a/lib/mkmf.rb b/lib/mkmf.rb
index 47d468d2f1..fb6253b3f5 100644
--- a/lib/mkmf.rb
+++ b/lib/mkmf.rb
@@ -364,6 +364,10 @@ def dir_config(target, idefault=nil, ldefault=nil)
[idir, ldir]
end
+def with_destdir(dir)
+ /^\$[\(\{]/ =~ dir ? dir : "$(DESTDIR)"+dir
+end
+
def create_makefile(target, srcdir = File.dirname($0))
save_libs = $libs.dup
save_libpath = $LIBPATH.dup
@@ -455,14 +459,14 @@ else
""
end
}
-prefix = $(DESTDIR)#{CONFIG["prefix"].sub(drive, '')}
-exec_prefix = #{CONFIG["exec_prefix"].sub(drive, '')}
-libdir = #{$libdir.sub(drive, '')}
-rubylibdir = #{$rubylibdir.sub(drive, '')}
-archdir = #{$archdir.sub(drive, '')}
-sitedir = #{$sitedir.sub(drive, '')}
-sitelibdir = #{$sitelibdir.sub(drive, '')}
-sitearchdir = #{$sitearchdir.sub(drive, '')}
+prefix = #{with_destdir CONFIG["prefix"].sub(drive, '')}
+exec_prefix = #{with_destdir CONFIG["exec_prefix"].sub(drive, '')}
+libdir = #{with_destdir $libdir.sub(drive, '')}
+rubylibdir = #{with_destdir $rubylibdir.sub(drive, '')}
+archdir = #{with_destdir $archdir.sub(drive, '')}
+sitedir = #{with_destdir $sitedir.sub(drive, '')}
+sitelibdir = #{with_destdir $sitelibdir.sub(drive, '')}
+sitearchdir = #{with_destdir $sitearchdir.sub(drive, '')}
target_prefix = #{target_prefix}
#### End of system configuration section. ####
@@ -503,7 +507,7 @@ EOMF
mfile.printf <<EOMF
$(sitearchdir)$(target_prefix)/$(DLLIB): $(DLLIB)
- @$(RUBY) -r ftools -e 'File::makedirs(*ARGV)' $(libdir) $(sitearchdir)$(target_prefix)
+ @$(RUBY) -r ftools -e 'File::makedirs(*ARGV)' $(sitearchdir)$(target_prefix)
@$(RUBY) -r ftools -e 'File::install(ARGV[0], ARGV[1], 0555, true)' $(DLLIB) $(sitearchdir)$(target_prefix)/$(DLLIB)
EOMF
install_rb(mfile, "$(sitelibdir)$(target_prefix)", srcdir)