diff options
Diffstat (limited to 'src/ruby/ext/grpc/extconf.rb')
-rw-r--r-- | src/ruby/ext/grpc/extconf.rb | 22 |
1 files changed, 4 insertions, 18 deletions
diff --git a/src/ruby/ext/grpc/extconf.rb b/src/ruby/ext/grpc/extconf.rb index 84ee3f8364..b259f8146f 100644 --- a/src/ruby/ext/grpc/extconf.rb +++ b/src/ruby/ext/grpc/extconf.rb @@ -54,6 +54,8 @@ LIB_DIRS = [ LIBDIR ] +windows = RUBY_PLATFORM =~ /mingw|mswin/ + grpc_root = File.expand_path(File.join(File.dirname(__FILE__), '../../../..')) grpc_config = ENV['GRPC_CONFIG'] || 'opt' @@ -64,27 +66,16 @@ else grpc_lib_dir = File.join(grpc_root, 'libs', grpc_config) end -unless File.exist?(File.join(grpc_lib_dir, 'libgrpc.a')) +unless File.exist?(File.join(grpc_lib_dir, 'libgrpc.a')) or windows for var in %w( CC AR ) do ENV[var] = RbConfig::CONFIG[var] end ENV['LD'] = ENV['CC'] - if RUBY_PLATFORM =~ /mingw|mswin/ - ENV['SYSTEM'] = 'MINGW32' - end - ENV['EMBED_OPENSSL'] = 'true' ENV['EMBED_ZLIB'] = 'true' - grpc_cppflags = '' - grpc_cppflags << ' -D_WIN32_WINNT=0x600 ' - grpc_cppflags << ' -DUNICODE ' - grpc_cppflags << ' -D_UNICODE ' - - ENV['CPPFLAGS'] = grpc_cppflags - output_dir = File.expand_path(RbConfig::CONFIG['topdir']) grpc_lib_dir = File.join(output_dir, 'libs', grpc_config) ENV['BUILDDIR'] = output_dir @@ -95,7 +86,7 @@ unless File.exist?(File.join(grpc_lib_dir, 'libgrpc.a')) end $CFLAGS << ' -I' + File.join(grpc_root, 'include') -$LDFLAGS << ' ' + File.join(grpc_lib_dir, 'libgrpc.a') +$LDFLAGS << ' ' + File.join(grpc_lib_dir, 'libgrpc.a') unless windows if grpc_config == 'gcov' $CFLAGS << ' -O0 -fprofile-arcs -ftest-coverage' $LDFLAGS << ' -fprofile-arcs -ftest-coverage -rdynamic' @@ -108,11 +99,6 @@ $CFLAGS << ' -pedantic ' $CFLAGS << ' -Werror ' $CFLAGS << ' -Wno-format ' -case RUBY_PLATFORM -when /mingw|mswin/ - $LDFLAGS << ' -static ' -end - output = File.join('grpc', 'grpc_c') puts 'Generating Makefile for ' + output create_makefile(output) |