Commit Graph

242 Commits

Author SHA1 Message Date
take_cheeze 380be0e829 Fix MSVC C++ ABI build. Close #2588. 2014-09-08 15:43:17 +09:00
take_cheeze e6ae5c8672 Fix default gem loading in generate_gem_table. 2014-09-05 15:25:24 +09:00
Tatsuhiko Kubo effc44f265 Fix error handlings for mrb_open_core(). 2014-08-20 05:48:09 +09:00
Tomoyuki Sahara 547f3177a9 fix build when neither src nor mrblib directory exists. 2014-08-11 17:30:21 +09:00
cremno 6526bb10f0 don't always generate gem functions
If the src and mrblib directories of a mrbgem don't exist or don't
include "usable" files (for tools like mirb), then functions for gem
initialization and finalization don't have to be generated.
2014-08-04 05:50:05 +02:00
take_cheeze a9c52675e6 Set $mrbtest_verbose flag in mrb_init_test_driver. 2014-07-14 21:11:14 +09:00
take_cheeze 3b8a797a4c Fix rake failure since mrbtest_objs isn't flattened.
Append generated test object to `@test_objs` of mrbgem spec.
Add method `custom_test_init?` to check whether mrbgem has custom test init function.
2014-07-12 21:41:44 +09:00
take_cheeze 03866f25f8 Run mrbgem and core tests on minimum dependencies.
Solves #2355.

In test drivers:
* Uses `mrb_t_pass_result` to check and pass test result to main `mrb_state`.
* Adds `mrb_init_test_driver` to init test `mrb_state`.
2014-07-12 14:11:18 +09:00
take_cheeze ab779b7ad8 Use mrb_print_error to print exception instead of mrb_p. 2014-07-08 22:25:32 +09:00
take_cheeze ef57fd55fb Add method toolchains and primary_toolchain to MRuby::Build.
* To check imported toolchains for setting up toolchain specific things.
* `primary_toolchain` returns the main toolchain name of the build.
2014-06-29 20:32:12 +09:00
Yukihiro "Matz" Matsumoto 8ef971a373 remove add_conflicts now; use add_conflict; ref #2390 2014-06-13 12:50:00 +09:00
take_cheeze eebb94410f Implement add_conflict. Usage is similar to add_dependency. 2014-06-13 01:07:53 +09:00
take_cheeze 6157e50843 Implement add_conflicts. Solve #2383. 2014-06-12 13:57:58 +09:00
Yukihiro "Matz" Matsumoto fe95f44013 rename mrb_atexit to mrb_state_atexit to clarify a func will be called at the end of state, not process; ref #2211 2014-06-10 17:59:56 +09:00
Masaki Muranaka 7b6150ab90 Add include_paths in dependency gems. 2014-06-10 10:55:02 +09:00
Yukihiro "Matz" Matsumoto 2f8047461f Merge pull request #2377 from monaka/pr-add-dot-s-extension
Add ".s" to source extensions.
2014-06-10 00:38:58 +09:00
Yukihiro "Matz" Matsumoto 74ed32f25c Merge pull request #2378 from monaka/pr-add-tools-dir-to-cxx-files-check-oaths
Find c++ files in tools/.
2014-06-10 00:38:33 +09:00
Masaki Muranaka c6d589e049 Do not export include/ dirs in mrbgems to core build.
In the current behavior, include/ dirs in mrbgems are set to
core's compiler.include_paths.
And they are never set to mrbgem's include_paths.
It may cause some dangerous issues because it can change
mruby core's macros by mrbgems.

After this fix, include/ in a gem is used in the gem itself only.
2014-06-09 23:08:13 +09:00
Masaki Muranaka 2c144425d9 Find c++ files in tools/.
Some tools may be written in C++.
2014-06-09 22:55:02 +09:00
Masaki Muranaka 9601777893 Add ".s" to source extensions.
It uses ".s" as the source for assembler on some toolchains including GCC.
2014-06-09 22:46:35 +09:00
Masaki Muranaka 78176ee7f5 Remove redundant substitutions.
"#{MRUBY_ROOT}/include" is set in Command::Compiler#initialize .
2014-06-08 14:42:21 +09:00
take_cheeze 39bbdd5f2f Add bintest for mrbc. 2014-06-06 21:46:58 +09:00
Yukihiro "Matz" Matsumoto d3fda42eb6 Merge pull request #2359 from take-cheeze/src_gen_dep
Add generator script to dependency so that it will regenerate C codes when it's modified.
2014-06-06 16:38:11 +09:00
Yukihiro "Matz" Matsumoto a763d11490 Merge branch 'atexit' of https://github.com/take-cheeze/mruby into take-cheeze-atexit 2014-06-05 13:22:28 +09:00
take_cheeze fb3c2f6b08 Add generator script to dependency so that it will regenerate C codes when it's modified. 2014-06-04 22:53:36 +09:00
Carson McDonald fe09686c2f Fix mgem test args passing 2014-06-03 16:29:42 +09:00
take_cheeze 9ac23ae214 Support extension '.cc' in globbing. 2014-05-20 22:52:08 +09:00
take_cheeze 6a15f42ec5 Rebuild no mrb_open mrbgems test when config file is modified. 2014-05-12 21:37:54 +09:00
take_cheeze 64300b2c43 Add API mrb_atexit().
`mrb_final_mrbgems` will be called as mrb_state atexit function.
Maybe useful in #1844.
2014-05-08 22:19:14 +09:00
cremno 6ff1b63b0d MSVC: treat implicit function decl. as error
As equivalent to GCC's `-Werror-implicit-function-declaration`.
2014-05-02 21:05:56 +02:00
take_cheeze 2063bee7cc Remove use of define_singleton_method. 2014-05-01 22:51:35 +09:00
take_cheeze b4a702f27d Implement header search for gcc and clang. 2014-05-01 16:49:54 +09:00
Nobuyoshi Nakada ab67c57f65 remove trailing spaces 2014-04-30 09:50:14 +09:00
kyab a13775eb22 Add doubling stack extend, as fix for #2016 2014-04-29 18:42:52 +09:00
take_cheeze 63bf375b0e Implement default gem info to use when there is no depending gem is defined. 2014-04-23 15:09:01 +09:00
Daniel Bovensiepen 874bec2af5 Implement :checksum_hash mrbgem option.
This allows to use a mgem with a specific checksum hash.
The following modification were necessary to implement this
function:
  - add run_checkout build command to use 'git checkout'
  - skip shallow copy in case checksum_hash is used
  - make 'master' the default branch if branch isn't defined
2014-04-20 05:39:40 +08:00
take_cheeze 604134e57d Make bintest enabling like other enable_xxx methods. 2014-04-09 13:59:39 +09:00
take_cheeze 758cdd5b33 Add MRuby::Build#disable_cxx_exception to force C++ ABI disable. 2014-04-08 20:16:18 +09:00
take_cheeze 66e0df34e0 Fix C++ files detection for automatic C++ ABI enabling. 2014-04-07 17:38:30 +09:00
Yukihiro "Matz" Matsumoto 4875f9b461 Merge pull request #2019 from monaka/pr-add-macro-for-mrbgem-version
Pass gem's version information to compilers.
2014-04-06 20:13:25 +09:00
Masaki Muranaka a54176d4a7 Pass gem's version information to compilers. 2014-04-06 11:58:57 +09:00
kyab 0ad9b900a5 Fix 'make test' fail to build on Windows(MSVC) 2014-04-05 19:28:48 +09:00
take_cheeze 69cc80abbc Refactor MRuby::Gem::List#check.
* Create mrbgem table before dependencies check.
* Topoligical sort gem list.
* Check circular mrbgem dependency.
2014-04-04 13:17:27 +09:00
kyab ad6fa200e2 Fix build fail for 'make test' with no mrbgems 2014-04-03 19:39:25 +09:00
Yukihiro "Matz" Matsumoto 5bcb119ed7 use File#directory? instead of File#exist?; ref c2d8b0 2014-03-21 09:24:28 +09:00
Yukihiro "Matz" Matsumoto c2d8b0303d avoid Dir.exist? that is not available in Ruby1.8 2014-03-21 03:23:26 +09:00
take_cheeze 624e34a6fe don't show version '0.0.0' in build summary since it's default version 2014-03-17 00:34:25 +09:00
take_cheeze 4bd623ba75 print gem summary in print_build_summary method 2014-03-17 00:34:24 +09:00
take_cheeze deb5f59bec fix compile error check of Mrbc command 2014-03-14 03:44:22 +09:00
Yukihiro "Matz" Matsumoto fa2e87c468 avoid mrb_string_value_cstr() to copy string between mrb_states in tests 2014-03-12 13:32:04 +09:00