blob: 57cee23b40b5ab8632be5fb8ce9ce8bb750deb24 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
if $mingw or $mswin
$objs = ["dlntest.o"]
testdll = "$(topdir)/dlntest.dll"
$cleanfiles << testdll
$cleanfiles << "dlntest.#{$LIBEXT}"
config_string('cleanobjs') {|t| $cleanfiles.concat(t.gsub(/\$\*/, 'dlntest').split)}
create_makefile("-test-/win32/dln")
m = File.read("Makefile")
dlntestlib = "dlntest.#{$LIBEXT}"
m.sub!(/^OBJS =.*/) {"#{$&} #{dlntestlib}"}
FileUtils.rm_f(RbConfig.expand(testdll.dup))
open("Makefile", "wb") do |mf|
mf.puts m, "\n"
sodir = $extout ? "$(RUBYARCHDIR)/" : ''
mf.print "#{sodir}$(DLLIB): #{dlntestlib}"
mf.puts
mf.puts "#{dlntestlib}: $(topdir)/dlntest.dll"
mf.puts
if $mingw
mf.puts "$(topdir)/dlntest.dll: DEFFILE := $(srcdir)/libdlntest.def"
mf.puts "$(topdir)/dlntest.dll: DLDFLAGS += -Wl,--out-implib,#{dlntestlib}"
end
mf.puts depend_rules("$(topdir)/dlntest.dll: libdlntest.o libdlntest.def")
mf.puts "\t$(ECHO) linking shared-object $(@F)\n"
mf.print "\t-$(Q)$(RM) $@\n"
mf.print "\t-$(Q)$(MAKEDIRS) $(@D)\n" if $extout
link_so = LINK_SO.gsub(/^/, "\t$(Q) ")
link_so.sub!(/\$\(LOCAL_LIBS\)/, '')
link_so.gsub!(/-\$\(arch\)/, '')
link_so.gsub!(/:.so=/, ':.dll=')
link_so.sub!(/\$\(OBJS\)/, "libdlntest.#{$OBJEXT}")
link_so.sub!(/\$\(DEFFILE\)/, "$(srcdir)/libdlntest.def")
mf.puts link_so
mf.puts
end
end
|