diff options
Diffstat (limited to 'doc/make_cheatsheet.md')
-rw-r--r-- | doc/make_cheatsheet.md | 124 |
1 files changed, 0 insertions, 124 deletions
diff --git a/doc/make_cheatsheet.md b/doc/make_cheatsheet.md deleted file mode 100644 index 6b056a4f0b..0000000000 --- a/doc/make_cheatsheet.md +++ /dev/null @@ -1,124 +0,0 @@ -# How to use "configure" and "make" commands for Ruby - -This is for developers of Ruby. -If you are a user of Ruby, please see README.md. - -## In-place build - -``` -$ ./autogen.sh -$ ./configure --prefix=$PWD/local -$ make -$ make install -$ ./local/bin/ruby -e 'puts "Hello"' -Hello -``` - -## Out-of-place build - -``` -$ ./autogen.sh -$ mkdir ../ruby-build -$ cd ../ruby-build -$ ../ruby-src/configure --prefix=$PWD/local -$ make -$ make install -$ ./local/bin/ruby -e 'puts "Hello"' -Hello -``` - -## How to run the whole test suite - -``` -$ make check -``` - -It runs (about) three test suites: - -* `make test` (a test suite for the interpreter core) -* `make test-all` (for all builtin classes and libraries) -* `make test-spec` (a conformance test suite for Ruby implementations) -* `make test-bundler` (a test suite for the bundler examples) - -## How to run the test suite with log - -``` -$ make test OPTS=-v - -$ make test-all TESTS=-v - -$ make test-spec MSPECOPT=-Vfs -``` - -## How to run a part of the test suite - -### Runs a directory -``` -$ make test-all TESTS=test/rubygems -$ make test-all TESTS=rubygems -``` - -### Runs a file -``` -$ make test-all TESTS=test/ruby/test_foo.rb -$ make test-all TESTS=ruby/foo -``` - -### Runs a test whose name includes test_bar -``` -$ make test-all TESTS="test/ruby/test_foo.rb -n /test_bar/" -``` - -### Runs a file or directory with GNU make -``` -$ make test/ruby/test_foo.rb -$ make test/ruby/test_foo.rb TESTOPTS="-n /test_bar/" -``` - -### Runs a ruby-spec directory -``` -$ make test-spec MSPECOPT=spec/ruby/core/foo -``` - -### Runs a ruby-spec file -``` -$ make test-spec MSPECOPT=spec/ruby/core/foo/bar_spec.rb -``` - -### Runs a ruby-spec file or directory with GNU make -``` -$ make spec/ruby/core/foo/bar_spec.rb -``` - -### Runs a bundler spec file -``` -$ make test-bundler BUNDLER_SPECS=commands/exec_spec.rb:58 -``` - -## How to measure coverage of C and Ruby code - -You need to be able to use gcc (gcov) and lcov visualizer. - -``` -$ ./autogen.sh -$ ./configure --enable-gcov -$ make -$ make update-coverage -$ rm -f test-coverage.dat -$ make test-all COVERAGE=true -$ make lcov -$ open lcov-out/index.html -``` - -If you need only C code coverage, you can remove `COVERAGE=true` from the above process. -You can also use `gcov` command directly to get per-file coverage. - -If you need only Ruby code coverage, you can remove `--enable-gcov`. -Note that `test-coverage.dat` accumulates all runs of `make test-all`. -Make sure that you remove the file if you want to measure one test run. - -You can see the coverage result of CI: https://rubyci.org/coverage - -## How to benchmark - -see https://github.com/ruby/ruby/tree/master/benchmark#make-benchmark |