diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/mkmf.rb | 22 |
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) |