Skip to content

Commit

Permalink
[Truffle] Update RbConfig to run su-opt
Browse files Browse the repository at this point in the history
  • Loading branch information
Brandon Fish committed Nov 9, 2016
1 parent c43d14b commit c985c07
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions truffle/src/main/ruby/core/rbconfig.rb
Expand Up @@ -87,15 +87,15 @@ module RbConfig
'ruby_install_name' => 'jruby-truffle',
'RUBY_SO_NAME' => '$(RUBY_BASE_NAME)',
'hdrdir' => "#{jruby_home}/lib/ruby/truffle/cext",
'COMPILE_C' => '$(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$< -o $@',
'bindir' => "#{jruby_home}/bin"
}

if Truffle::Safe.memory_safe? && Truffle::Safe.processes_safe?
MAKEFILE_CONFIG.merge!({
'COMPILE_C' => "$(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$< -o $@ && mx -p #{ENV['SULONG_HOME']} su-opt -S -always-inline -mem2reg $@ -o $@",
'CC' => "mx -p #{ENV['SULONG_HOME']} su-clang -I#{ENV['SULONG_HOME']}/include -S",
'CFLAGS' => " -emit-llvm -I#{ENV['OPENSSL_HOME']}/include -DHAVE_OPENSSL_110_THREADING_API -DHAVE_HMAC_CTX_COPY -DHAVE_EVP_CIPHER_CTX_COPY -DHAVE_BN_RAND_RANGE -DHAVE_BN_PSEUDO_RAND_RANGE -DHAVE_X509V3_EXT_NCONF_NID -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration -Wdivision-by-zero -Wdeprecated-declarations -Wextra-tokens ",
'LINK_SO' => "mx -v -p #{ENV['SULONG_HOME']} su-link -o $@ $(OBJS)",
'CFLAGS' => " -emit-llvm -I#{ENV['OPENSSL_HOME']}/include -DHAVE_OPENSSL_110_THREADING_API -DHAVE_HMAC_CTX_COPY -DHAVE_EVP_CIPHER_CTX_COPY -DHAVE_BN_RAND_RANGE -DHAVE_BN_PSEUDO_RAND_RANGE -DHAVE_X509V3_EXT_NCONF_NID -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration -Wdivision-by-zero -Wdeprecated-declarations -Wextra-tokens ",
'LINK_SO' => "mx -v -p #{ENV['SULONG_HOME']} su-link -o $@ -l #{ENV['OPENSSL_HOME']}/lib/libssl.dylib $(OBJS)",
'TRY_LINK' => "mx -p #{ENV['SULONG_HOME']} su-clang $(src) $(INCFLAGS) $(CFLAGS) -I#{ENV['SULONG_HOME']}/include $(LIBS)",
'CPP' => "mx -p #{ENV['SULONG_HOME']} su-clang -I#{ENV['SULONG_HOME']}/include -S"
})
Expand Down

2 comments on commit c985c07

@bjfish
Copy link
Contributor

@bjfish bjfish commented on c985c07 Nov 9, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@chrisseaton By adding su-opt, I don't see a parse error anymore. I see the following error for both jt build cexts and make:

irb(main):001:0> require "openssl"
RubyTruffleError: internal implementation error - LLVM error in null in /Users/brandonfish/Documents/jruby/lib/ruby/truffle/openssl/openssl.su@ab97c7cbc6d6d22966ec96d0a2a2aa76fcc410d4_ossl_pkey.ll - null
	from /Users/brandonfish/Documents/jruby/lib/ruby/truffle/openssl/openssl/pkey.rb:7:in `new'
	from /Users/brandonfish/Documents/jruby/lib/ruby/truffle/openssl/openssl/pkey.rb:7:in `DH'
	from /Users/brandonfish/Documents/jruby/lib/ruby/truffle/openssl/openssl/pkey.rb:6:in `PKey'
	from /Users/brandonfish/Documents/jruby/lib/ruby/truffle/openssl/openssl/pkey.rb:3:in `OpenSSL'
	from /Users/brandonfish/Documents/jruby/lib/ruby/truffle/openssl/openssl/pkey.rb:2:in `<main>'
	from /Users/brandonfish/Documents/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:55:in `gem_original_require'
	from /Users/brandonfish/Documents/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /Users/brandonfish/Documents/jruby/lib/ruby/truffle/openssl/openssl.rb:16:in `<main>'
	from /Users/brandonfish/Documents/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:55:in `gem_original_require'
	from /Users/brandonfish/Documents/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:55:in `require'
	from (irb):1:in `<main>'
	from /Users/brandonfish/Documents/jruby/truffle/src/main/ruby/core/kernel.rb:342:in `loop'
	from /Users/brandonfish/Documents/jruby/truffle/src/main/ruby/core/rubinius.rb:116:in `catch'
	from /Users/brandonfish/Documents/jruby/truffle/src/main/ruby/core/throw_catch.rb:56:in `block in catch'
	from /Users/brandonfish/Documents/jruby/truffle/src/main/ruby/core/throw_catch.rb:34:in `register'
	from /Users/brandonfish/Documents/jruby/truffle/src/main/ruby/core/throw_catch.rb:55:in `catch'
	from /Users/brandonfish/Documents/jruby/truffle/src/main/ruby/core/rubinius.rb:116:in `catch'
	from /Users/brandonfish/Documents/jruby/truffle/src/main/ruby/core/throw_catch.rb:56:in `block in catch'
	from /Users/brandonfish/Documents/jruby/truffle/src/main/ruby/core/throw_catch.rb:34:in `register'
	from /Users/brandonfish/Documents/jruby/truffle/src/main/ruby/core/throw_catch.rb:55:in `catch'
	from /Users/brandonfish/Documents/jruby/bin/jirb:13:in `<main>'

@chrisseaton
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This bug is where I'm up to in OpenSSL, so what you have is working correctly now.

Please sign in to comment.