diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2020-05-01 21:16:47 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2020-10-12 16:20:47 +0900 |
| commit | dcfc2dbf148cd533ed5419efde31822c38bcdaf5 (patch) | |
| tree | dc2c34281aaa2f9141179bc846add702e26fe4e0 | |
| parent | d70536e0e8d46139305648a12f67a9a94ed519a0 (diff) | |
| download | mruby-dcfc2dbf148cd533ed5419efde31822c38bcdaf5.tar.gz mruby-dcfc2dbf148cd533ed5419efde31822c38bcdaf5.zip | |
Add `host-shared.rb` to create shared mruby library.
| -rw-r--r-- | target/host-shared.rb | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/target/host-shared.rb b/target/host-shared.rb new file mode 100644 index 000000000..c6b6eb3dc --- /dev/null +++ b/target/host-shared.rb @@ -0,0 +1,72 @@ +MRuby::Build.new do |conf| + # load specific toolchain settings + + # Gets set by the VS command prompts. + if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR'] + toolchain :visualcpp + else + toolchain :gcc + end + + # include the GEM box + conf.gembox 'full-core' + + # C compiler settings + conf.cc do |cc| + cc.flags = '-fPIC' + end + + # mrbc settings + # conf.mrbc do |mrbc| + # mrbc.compile_options = "-g -B%{funcname} -o-" # The -g option is required for line numbers + # end + + conf.archiver do |archiver| + archiver.command = 'gcc' + archiver.archive_options = '-shared -o %{outfile} %{objs}' + end + + # Linker settings + # conf.linker do |linker| + # linker.command = ENV['LD'] || 'gcc' + # linker.flags = [ENV['LDFLAGS'] || []] + # linker.flags_before_libraries = [] + # linker.libraries = %w() + # linker.flags_after_libraries = [] + # linker.library_paths = [] + # linker.option_library = '-l%s' + # linker.option_library_path = '-L%s' + # linker.link_options = "%{flags} -o "%{outfile}" %{objs} %{libs}" + # end + + # Archiver settings + # conf.archiver do |archiver| + # archiver.command = ENV['AR'] || 'ar' + # archiver.archive_options = 'rs "%{outfile}" %{objs}' + # end + + # Parser generator settings + # conf.yacc do |yacc| + # yacc.command = ENV['YACC'] || 'bison' + # yacc.compile_options = %q[-o "%{outfile}" "%{infile}"] + # end + + # gperf settings + # conf.gperf do |gperf| + # gperf.command = 'gperf' + # gperf.compile_options = %q[-L ANSI-C -C -p -j1 -i 1 -g -o -t -N mrb_reserved_word -k"1,3,$" "%{infile}" > "%{outfile}"] + # end + + # file extensions + conf.exts do |exts| + exts.library = '.so' + end + + # file separetor + # conf.file_separator = '/' + + # Turn on `enable_debug` for better debugging + enable_debug + conf.enable_bintest + conf.enable_test +end |
