summaryrefslogtreecommitdiffhomepage
path: root/doc
diff options
context:
space:
mode:
authorKOBAYASHI Shuji <[email protected]>2020-10-19 15:03:22 +0900
committerKOBAYASHI Shuji <[email protected]>2020-10-19 15:03:22 +0900
commit81c21088196fd92d08c253efc2feb8dbead88acf (patch)
tree8429a165026b2335dd1d994fca790906e1721ce4 /doc
parent27492e53a0440aee7c411d5e72b6f092cf85d6a1 (diff)
downloadmruby-81c21088196fd92d08c253efc2feb8dbead88acf.tar.gz
mruby-81c21088196fd92d08c253efc2feb8dbead88acf.zip
Revert `MRUBY_TARGET` mechanism; ref #5096
* 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).
Diffstat (limited to 'doc')
-rw-r--r--doc/guides/compile.md39
-rw-r--r--doc/mruby3.md32
2 files changed, 22 insertions, 49 deletions
diff --git a/doc/guides/compile.md b/doc/guides/compile.md
index 233c3e594..ad57970e3 100644
--- a/doc/guides/compile.md
+++ b/doc/guides/compile.md
@@ -24,40 +24,29 @@ Optional:
## Build
-To compile `mruby`, just call `rake` inside of the mruby source
-root. To generate and execute the test tools call `rake test`. To
-clean all build files call `rake clean`. To see full command line on
-build, call `rake -v`.
-
-If you want to compile for the specific configuration, specify
-`MRUBY_TARGET` or `TARGET` environment variable, e.g
-
-```sh
-rake TAGRET=host
-```
-
-The default target is `host`. The compilation target desciption files
-(with `.rb` suffix) are contained in the `target` directory.
-
-A build description file contains the build configuration of mruby and
-looks like the following for example:
-
+Inside of the root directory of the mruby source a file exists
+called *build_config.rb*. This file contains the build configuration
+of mruby and looks like this for example:
```ruby
MRuby::Build.new do |conf|
toolchain :gcc
end
```
-All tools necessary to compile mruby can be set or modified here. In
-case you want to try different configuration, you can create a new
-configuration file under `target` and specify the configuration using
-the `MRUBY_TARGET` environment variable.
+All tools necessary to compile mruby can be set or modified here. In case
+you want to maintain an additional *build_config.rb* you can define a
+customized path using the *$MRUBY_CONFIG* environment variable. If the
+path doesn't exist, *build_config/${MRUBY_CONFIG}.rb* is used.
+
+To compile just call `rake` inside of the mruby source root. To
+generate and execute the test tools call `rake test`. To clean
+all build files call `rake clean`. To see full command line on
+build, call `rake -v`.
## Build Configuration
-To create a new configuration, copy the existing configuration in the
-`target` directory, and modify it. We wish you submit a pull-request,
-once you created a new configuration for a new platform.
+We wish you submit a pull-request to *build_config/**PLATFORM**.rb*, once you
+created a new configuration for a new platform.
Inside of the configuration file, the following options can be
configured based on your environment.
diff --git a/doc/mruby3.md b/doc/mruby3.md
index 029c9887e..e611a1b16 100644
--- a/doc/mruby3.md
+++ b/doc/mruby3.md
@@ -3,45 +3,29 @@ User visible changes in `mruby3`
# Build System
-You can specify `TARGET` option to `rake` via a command line
-option, or via an environment variable, e.g.
-
-`rake TARGET=host all`
-
-or
-
-`TARGET=host rake all`
-
-It's much easier to switch multiple targets than the
-previous `build_config.rb` system.
-
## `presym` target
The first compilation of `mruby` may require generation of a
static symbol table named `build/presym`. You can generate
the table by `rake gensym`.
-## `target` directory
+## `build_config` directory
-Build target specification files are loaded from `target`
-directory. The default `TARGET` is `host` which is described
-in `target/host.rb`. There are many other targets for example:
+Typical build configuration files are located in `build_config`
+directory. For examples:
* `host-gprof`: compiles with `gprof` for performance tuning
* `host-m32`: compiles in gcc 32bit mode on 64bit platforms
* `boxing`: compiles all three boxing options
* `clang-asan`: compiles with `clang`'s Address Sanitizer
-`target/host.rb` comes with comments to help writing a new
-target description.
-
-If you want to have your target description out of the
-source tree, you can specify the path to the description
-file in `MRUBY_CONFIG`.
+`build_config/${MRUBY_CONFIG}.rb` is used if the path specified
+in `MRUBY_CONFIG` doesn't exist, so you can specify it as
+`rake MRUBY_CONFIG=boxing`.
-# Build Target Contribution
+# Build Configuration Contribution
-When you write a new target description, please
+When you write a new build configuration description, please
contribute. We welcome your contribution as a GitHub
pull-request.