Reviewers: Søren Gjesse,

Message:
Everyone: please take a look. Test it. Comment on it. Report issues. Complain
about the workflow. Tell me what you think.

Basic usage:
Go to your base v8 dir, run "make -jX" to build (with X threads) and
"tools/test-wrapper-gypbuild.py" to test.

Advanced usage:
For more fine-grained make targets, look at the Makefile. E.g. you can make
"ia32", "ia32.debug", "ia32.release", or "ia32.release.check" -- the latter will
build ia32.release and then run tests for it.
The GYP build supports distcc. If you have a bunch of fast machines around
running distccd, simply 'export CXX="distcc g++"' in your shell and then 'make
-j100' :-)
The "...check" targets ignore the -jX flag when they start tests, because tests run locally. To control the number of tests performed concurrently, call e.g.
"make ia32.check -j100 TESTJOBS=-j8" (default is TESTJOBS=-j16).
For more details on test-wrapper-gypbuild.py, run it with --help and/or look at its source. It conforms almost exactly to the old test.py script's interface.

Good news:
- make is a lot faster than scons, especially for incremental builds. Distcc
considerably reduces the time needed for clean builds of all targets at once.
- ia32 and x64 tests run significantly faster when built with make. Shorter
development cycles -- yay :-)

Bad news:
- ARM tests run significantly slower when built with make (on my machine, ~7min instead of ~5min), and a couple of them even time out. I haven't yet been able
to find out why, and would be glad to receive any hints/ideas/pointers.

Not tested yet (will do that shortly as time permits):
- generating VS or Xcode project files
- compiling V8 inside chromium
- ARM cross-compilation (as opposed to the simulator)

Description:
Make GYP build usable for day-to-day work

- Introduce a global Makefile that triggers GYP-based building
- Some fixes to .gyp[i] files to make everything work
- tools/test-wrapper-gypbuild.py as a temporary solution for easy testing


Please review this at http://codereview.chromium.org/7383006/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M .gitignore
  A Makefile
  M build/all.gyp
  M build/armu.gypi
  M build/common.gypi
  M build/v8-features.gypi
  A + preparser/preparser.gyp
  M samples/samples.gyp
  M src/d8.gyp
  M test/cctest/cctest.gyp
  M test/cctest/testcfg.py
  M test/preparser/testcfg.py
  M tools/gyp/v8.gyp
  A tools/test-wrapper-gypbuild.py
  M tools/test.py


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to