1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/ext/dl/extconf.rb
yugui 3ac20b9590 * ext/dl/extconf.rb ($distcleanfiles): added callback-?.c into
the distclean list.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-03 15:49:39 +00:00

37 lines
878 B
Ruby

require 'mkmf'
if( RbConfig::CONFIG['CC'] =~ /gcc/ )
$CFLAGS << " -fno-defer-pop -fno-omit-frame-pointer"
end
CALLBACKS = (0..8).map{|i| "callback-#{i}"}
CALLBACK_SRCS = CALLBACKS.map{|basename| "#{basename}.c"}
CALLBACK_OBJS = CALLBACKS.map{|basename| "#{basename}.o"}
$INSTALLFILES = [
["dl.h", "$(HDRDIR)"],
]
$distcleanfiles += [ "callback.h", *CALLBACK_SRCS ]
check = true
if( have_header("dlfcn.h") )
have_library("dl")
check &&= have_func("dlopen")
check &&= have_func("dlclose")
check &&= have_func("dlsym")
have_func("dlerror")
elsif( have_header("windows.h") )
check &&= have_func("LoadLibrary")
check &&= have_func("FreeLibrary")
check &&= have_func("GetProcAddress")
else
check = false
end
$objs = %w[ cfunc.o dl.o cptr.o handle.o ] + CALLBACK_OBJS
if check
$defs << %[-DRUBY_VERSION=\\"#{RUBY_VERSION}\\"]
create_makefile("dl")
end