v8/build
jkummerow@chromium.org 8daf7e7de1 MIPS: fix mips_arch_variant bug in GYP build.
There is a small bug that causes to build mips32r2
version of v8 as mips32 (r1). This affects only
the compiled code.

In the default case of building for mips32r2,
the compiler flags are the following:

-EL -mhard-float -mips32r2 -Wa,-mips32r2 -mips32 -Wa,-mips32

Since the "last flag wins" the object files are
compiled as mips32. In a funny twist, the
code sourcery lite compilers do not have multi-lib support,
and there is a bug that if you tell it to link mips32,
it will silently link the object files with
mips32r2 libraries, and then the resulting binary is mips32r2.

This commit fixes the mips32r1/mips32r2 build.

BUG=
TEST=

Review URL: https://codereview.chromium.org/11289003
Patch from Akos Palfi <palfia@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12833 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-10-30 10:54:44 +00:00
..
all.gyp Added check for trailing whitespaces and corrected existing violations. 2011-09-01 11:28:10 +00:00
android.gypi Enable shared library on android 2012-10-24 12:11:15 +00:00
common.gypi MIPS: fix mips_arch_variant bug in GYP build. 2012-10-30 10:54:44 +00:00
gyp_v8 Prepare for using GYP build on buildbots 2012-05-11 12:18:09 +00:00
README.txt Update python version in build/README.txt to what's used by Chromium 2011-09-12 09:59:59 +00:00
standalone.gypi Build V8 for Android IA 2012-07-18 11:43:44 +00:00

This directory contains the V8 GYP files used to generate actual project files
for different build systems.

This is currently work in progress but this is expected to replace the SCons
based build system.

To use this a checkout of GYP is needed inside this directory. From the root of
the V8 project do the following:

$ svn co http://gyp.googlecode.com/svn/trunk build/gyp

Note for the command lines below that Debug is the default configuration,
so specifying that on the command lines is not required.


To generate Makefiles on Linux:
-------------------------------

$ build/gyp_v8

This will build makefiles for ia32, x64 and the ARM simulator with names
Makefile-ia32, Makefile-x64 and Makefile-armu respectively.

To build and run for ia32 in debug and release version do:

$ make -f Makefile-ia32
$ out/Debug/shell
$ make -f Makefile-ia32 BUILDTYPE=Release
$ out/Release/shell

Change the makefile to build and run for the other architectures.


To generate Xcode project files on Mac OS:
------------------------------------------

$ build/gyp_v8

This will make an Xcode project for the ia32 architecture. To build and run do:

$ xcodebuild -project build/all.xcodeproj
$ samples/build/Debug/shell
$ xcodebuild -project build/all.xcodeproj -configuration Release
$ samples/build/Release/shell


To generate Visual Studio solution and project files on Windows:
----------------------------------------------------------------

On Windows an additional third party component is required. This is cygwin in
the same version as is used by the Chromium project. This can be checked out
from the Chromium repository. From the root of the V8 project do the following:

> svn co http://src.chromium.org/svn/trunk/deps/third_party/cygwin@66844 third_party/cygwin

To run GYP Python is required and it is recommended to use the same version as
is used by the Chromium project. This can also be checked out from the Chromium
repository. From the root of the V8 project do the following:

> svn co http://src.chromium.org/svn/trunk/tools/third_party/python_26@89111 third_party/python_26

Now generate Visual Studio solution and project files for the ia32 architecture:

> third_party\python_26\python build/gyp_v8

Now open build\All.sln in Visual Studio.