In addition, update the documents referring `build_config.rb` which is
no longer used. The new `build_config.rb` describes the new configuration
structure in the comment.
* In explanation of mruby, the expression `build_config.rb` is frequently
used including official documents, so I think that it will not make sense
if the file is no longer used.
* The `MRUBY_TARGET` mechanism seems to have little improvement, so I don't
think it should be changed to avoid unnecessary confusion.
* `MRUBY_TARGET` and `MRuby.targets` represent somewhat different things,
so using the same term "target" is a bit confusing.
The mechanism that can be written short when using a file under
`build_config` (renamed from `target`) directory remains
(`build_config/${MRUBY_CONFIG}.rb` is used if the path specified
in `MRUBY_CONFIG` doesn't exist).
You have to specify `TARGET` to specify a configuration, e.g.
```
rake TARGET=host-debug all test
```
When you port `mruby` to a new configuration:
1. copy an existing configuration under `target` directory
2. modify the new configuration file
3. build using the new configuration
4. send PR if you please
This allows us to add `enable_test` anywhere in a build target,
without having to worry about the order in which they are included.
Previously, there was a bug that occured when adding 'mruby-test' gem
to dependencies before additional gems.
Instead of adding the 'mruby-test' gem dependency manually to a test build,
we now only need to call `enable_test` in the target. This also allows us to
call `test_enabled?` downstream when running mruby tests ourselves.
/cc #2924
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
"test runner" means target simulator like QEmu, GDB sim, and so on. Also "test runner" might be debug agents for real targets.
If you do not setup test_runner, Rake will work same as before.