Commit Graph

173 Commits

Author SHA1 Message Date
mstarzinger
4267a2ebe7 [build] Fix Makefile based (native) build.
This fixes the Python include path after the GYP files have been
relocated into another directory. It only affects 'make native', other
targets have been fixed in previous changes already.

R=jkummerow@chromium.org

Review-Url: https://codereview.chromium.org/2001053003
Cr-Commit-Position: refs/heads/master@{#36432}
2016-05-23 09:16:24 +00:00
mstarzinger
ee69b4ff31 [build] Fix Makefile based build.
This fixes the Python include path after the GYP files have been
relocated into another directory.

R=machenbach@chromium.org

Review-Url: https://codereview.chromium.org/1938893002
Cr-Commit-Position: refs/heads/master@{#35928}
2016-05-02 09:42:11 +00:00
machenbach
3bf44848c3 [gn] Move build to gypfiles
This prepares for pulling chromium's build as dependency for
gn. After this, the files in build and gypfiles need to stay
in sync until chromium is updated.

BUG=chromium:474921
LOG=n

Review-Url: https://codereview.chromium.org/1848553003
Cr-Commit-Position: refs/heads/master@{#35898}
2016-04-29 10:11:11 +00:00
machenbach
7f3954c57b [build] Move gyp folder
Uses now the same location chromium uses and which some tools
expect.

BUG=chromium:474921
LOG=n

Review URL: https://codereview.chromium.org/1929473002

Cr-Commit-Position: refs/heads/master@{#35817}
2016-04-27 12:37:35 +00:00
machenbach
cb855fe728 [build] Prepare moving v8.gyp to src/
This will allow to pull in gyp as a deps to the same location
as chromium (tools/gyp not build/gyp), needed for gn switch.

This is the first step of a 3-way move.
1) Copy v8.gyp in v8
2) Update references in embedders (follow up)
3) Remove old v8.gyp (follow up)

BUG=chromium:474921
LOG=n
NOTRY=true

Review URL: https://codereview.chromium.org/1920793002

Cr-Commit-Position: refs/heads/master@{#35760}
2016-04-25 12:20:24 +00:00
robtsuk
31355336d1 Fix android_arm build hosted on Mac
Fixes for misnamed toolchain from https://github.com/appcelerator/v8_titanium.

Added a way to specify the NDK path since the Mac versions of the NDK aren't checked into the tools repo.

Disabled a few dependencies which do not build on the Mac but which aren't needed for building usable V8 static libraries.

Made the including of libdl and librt omitted for Mac hosted builds.

BUG=

Review URL: https://codereview.chromium.org/1879793002

Cr-Commit-Position: refs/heads/master@{#35456}
2016-04-13 23:13:35 +00:00
clemensh
79b1ab61c2 Add a make target for generating Ctags file
This is very similar to the existing rule for a GTAGS file, and reuses
parts of it (the gtags.files file).

R=ahaas@chromium.org, mstarzinger@chromium.org, titzer@chromium.org
BUG=

Review URL: https://codereview.chromium.org/1873253002

Cr-Commit-Position: refs/heads/master@{#35435}
2016-04-13 09:21:06 +00:00
yangguo
f507bc1c72 [serializer] Add API to warm up startup snapshot with an additional script.
A startup snapshot is considered cold when it does not contain any
function code. We can now create a warm startup snapshot from a cold one
by running a warm-up script. Functions exercised by the warm-up script
are compiled and its code included in the warm startup snapshot. Side
effects caused by the warm-up script does not persist.

R=vogelheim@chromium.org
BUG=v8:4836
LOG=Y

Review URL: https://codereview.chromium.org/1805903002

Cr-Commit-Position: refs/heads/master@{#34849}
2016-03-17 10:34:16 +00:00
ssanfilippo
8136372a46 Add option in Makefile to preserve frame pointer.
LOG=N

Review URL: https://codereview.chromium.org/1778073003

Cr-Commit-Position: refs/heads/master@{#34670}
2016-03-10 12:59:50 +00:00
jochen
cf0435881c Add a library suitable for libfuzzer with a small unit test runner shell
BUG=chromium:577261
R=machenbach@chromium.org,jarin@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/1604203002

Cr-Commit-Position: refs/heads/master@{#33508}
2016-01-26 10:39:03 +00:00
joransiu
1091c2f07e S390: Makefile + Build Toolchain Updates
This is the first of several commits to contribute Linux on z Systems
(s390/s390x) port of V8.  We will be breaking up the changes into several
(hopefully) logical commits.

This commit contains the changes to V8 Makefile and build toolchains to
introduce S390 macros and compiler options.  Just for awareness for reviewers
is that s390 is 31-bit (not 32!) big-endian platform on Linux on z.  (MSB of address
is used to distinguish between 24-bit vs 31-bit addressing!)  s390x is
64-bit Linux on z.  Names follow the general linux convention on the platform.

A quick roadmap on upcoming commits:
- Add \#include of S390 header files in common files
- S390 related tests + tooling changes
- printf macro for printing size_t values.
- S390 platform-specific code generation code (bulk of changes!)

R=danno@chromium.org,svenpanne@chromium.org,michael_dawson@ca.ibm.com,jyan@ca.ibm.com,mtbrandyberry@ca.ibm.com
BUG=

Review URL: https://codereview.chromium.org/1585813002

Cr-Commit-Position: refs/heads/master@{#33304}
2016-01-14 17:17:11 +00:00
bradnelson
0e8b7ec8b1 Remove wasm compile time option and enable wasm behind a runtime flag.
Deferring enabling of tests to separate per platform CLs.

R=machenbach@chromium.org,titzer@chromium.org
BUG=

Review URL: https://codereview.chromium.org/1553083003

Cr-Commit-Position: refs/heads/master@{#33123}
2016-01-05 18:06:54 +00:00
machenbach
2a09d7f9b5 Revert of Remove wasm compile time option and enable wasm behind a runtime flag. (patchset #54 id:1050001 of https://codereview.chromium.org/1516753007/ )
Reason for revert:
[Sheriff] Some build failures, e.g.:
https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20shared/builds/7502

Original issue's description:
> Remove wasm compile time option and enable wasm behind a runtime flag.
>
> R=titzer@chromium.org
> BUG=
>
> Committed: https://crrev.com/153f2bd47cce9d5dfa74074dda34c02731d96924
> Cr-Commit-Position: refs/heads/master@{#32955}

TBR=titzer@chromium.org,bradnelson@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

Review URL: https://codereview.chromium.org/1531073003

Cr-Commit-Position: refs/heads/master@{#32957}
2015-12-17 17:59:00 +00:00
bradnelson
153f2bd47c Remove wasm compile time option and enable wasm behind a runtime flag.
R=titzer@chromium.org
BUG=

Review URL: https://codereview.chromium.org/1516753007

Cr-Commit-Position: refs/heads/master@{#32955}
2015-12-17 16:04:57 +00:00
dusan.m.milosavljevic
8bd431de92 MIPS64: Add big-endian support for mips64.
TEST=
BUG=

Review URL: https://codereview.chromium.org/1334793004

Cr-Commit-Position: refs/heads/master@{#31011}
2015-09-29 17:23:55 +00:00
mvstanton
18bba7cb41 Vector ICs: gyp flag to run with vector-stores on.
This is so we can build with the flag on in the snapshot.
D8 then needs to be run with --vector-stores.

BUG=
R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/1339593002

Cr-Commit-Position: refs/heads/master@{#30692}
2015-09-11 10:00:17 +00:00
bradnelson
dacb3d76a7 Add a makefile option for wasm prototype.
Adding wasm=on when invoking make will build with the wasm prototype, Ex:

make x64.debug wasm=on V=1

BUG=None
TEST=manual
R=titzer@chromium.org,ncbray@chromium.org
LOG=N

Review URL: https://codereview.chromium.org/1293073004

Cr-Commit-Position: refs/heads/master@{#30236}
2015-08-18 18:25:31 +00:00
yangguo
8e027195b4 Remove readline support from d8.
Nobody seems to use it. A good alternative is rlwrap.

R=jochen@chromium.org

Review URL: https://codereview.chromium.org/1250223002

Cr-Commit-Position: refs/heads/master@{#29810}
2015-07-23 13:20:31 +00:00
rmcilroy
91255190ea Add goma=on option to Makefile build.
Review URL: https://codereview.chromium.org/1225683010

Cr-Commit-Position: refs/heads/master@{#29551}
2015-07-09 09:50:59 +00:00
machenbach
d70419e474 [android] Completly move path logic to gyp config.
BUG=chromium:502176
LOG=n

Review URL: https://codereview.chromium.org/1203653002

Cr-Commit-Position: refs/heads/master@{#29245}
2015-06-24 05:35:14 +00:00
machenbach
2197ef2aaf [android] Merge gyp configurations.
The merge makes it possible to reuse variables from the
android configuration in standalone.gypi.

BUG=chromium:502176
LOG=n

Review URL: https://codereview.chromium.org/1196253002

Cr-Commit-Position: refs/heads/master@{#29189}
2015-06-22 13:17:23 +00:00
jochen
29deaef505 Introduce a new gyp flag to warn about to be deprecated APIs
This should help to keep syntax errors from creeping into v8.h

Also, I'll remove usages of to-be-deprecated APIs and turn this flag on
for standalone builds

BUG=4134
R=vogelheim@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/1149633003

Cr-Commit-Position: refs/heads/master@{#28538}
2015-05-21 10:34:22 +00:00
Jakob Kummerow
2064c3c9b2 Makefile: introduce debugsymbols=on flag
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/1085283002

Cr-Commit-Position: refs/heads/master@{#27852}
2015-04-15 15:20:18 +00:00
Weiliang Lin
a5fa093d0b introduce android_x64 build target
BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/966773005

Cr-Commit-Position: refs/heads/master@{#27055}
2015-03-09 03:23:12 +00:00
machenbach
5577dbdcf1 Remove version generation approach.
Revert "Partially reland Auto-generate v8 version based on tags."

This reverts commit 0707afc863.

Revert "Ensure tags are fetched when generating the V8 version."

This reverts commit ea6831e9de.

Revert "Restrict tag-update for version generation to cached git repos."

This reverts commit c6641e138b.

BUG=chromium:446166
LOG=n

Review URL: https://codereview.chromium.org/866263005

Cr-Commit-Position: refs/heads/master@{#26244}
2015-01-23 10:45:39 +00:00
machenbach
0707afc863 Partially reland Auto-generate v8 version based on tags.
This relands parts of
https://codereview.chromium.org/843913009

It prepares for using this script outside of v8, e.g. in a
chromium hook.

The script is intended to run as a hook and will create
version_gen.cc if the content has changed.

Changes to gyp and gn files can land as a follow up, once
calling the hook on the chromium side has landed.

BUG=chromium:446166
LOG=n

Review URL: https://codereview.chromium.org/830093003

Cr-Commit-Position: refs/heads/master@{#26144}
2015-01-19 16:23:39 +00:00
jochen
9d25205b29 Revert of Temporarily restore make dependencies (patchset #1 id:1 of https://codereview.chromium.org/733203008/)
Reason for revert:
make dependencies is stale now, and everybody should have switched over

Original issue's description:
> Temporarily restore make dependencies
>
> We will remove dependencies in about a week again.
>
> BUG=none
> R=machenbach@chromium.org
> LOG=y

TBR=machenbach@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=none

Review URL: https://codereview.chromium.org/791813007

Cr-Commit-Position: refs/heads/master@{#26134}
2015-01-19 13:21:16 +00:00
Sven Panne
e4c5b84652 Contribution of PowerPC port (continuation of 422063005)
Contribution of PowerPC port (continuation of 422063005). The inital patch
covers the core changes to the common files.  Subsequent patches will cover
changes to common files to support AIX and to update the ppc directories so
they are current with the changes in the rest of the project.

This is based off of the GitHub repository
https://github.com/andrewlow/v8ppc

BUG=
R=svenpanne@chromium.org, danno@chromium.org, sevnpanne@chromium.org

Review URL: https://codereview.chromium.org/817143002

Cr-Commit-Position: refs/heads/master@{#26091}
2015-01-16 07:42:15 +00:00
jochen
5d22f59d7b Update gyp files to guarantee proper recreation when changing deps
Also make sure that x86_64 is mapped to x64 as target arch

R=machenbach@chromium.org
LOG=n
BUG=none

Review URL: https://codereview.chromium.org/846363002

Cr-Commit-Position: refs/heads/master@{#26052}
2015-01-14 12:48:36 +00:00
yangguo
39cd762c6c Embed custom script into the snapshot.
R=vogelheim@chromium.org

Review URL: https://codereview.chromium.org/845973003

Cr-Commit-Position: refs/heads/master@{#26029}
2015-01-12 15:26:31 +00:00
jochen
aeb09e6dcf Merge v8_optimized_debug 1 and 2
All builders that used level 1 should meanwhile define
v8_enable_slow_dchecks, and so they can use level 2 without losing
coverage. Level 2, however, is considerably faster, so we want to use it
on those builders as well. The make optdebug setting is not affected by
this change.

BUG=none
R=machenbach@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/847753002

Cr-Commit-Position: refs/heads/master@{#26019}
2015-01-12 09:58:42 +00:00
jochen
77e3e48ee2 Introduce a gyp variable to control whether or not slow dchecks are on
The default for the various debug modes doesn't change.

In a follow-up, OptDebug1 and OptDebug2 will be merged

R=machenbach@chromium.org
LOG=y
BUG=none

Review URL: https://codereview.chromium.org/846653002

Cr-Commit-Position: refs/heads/master@{#26015}
2015-01-09 16:25:51 +00:00
jochen
0959123e57 Remove "extra checks"
Instead, just use DCHECKs. The builders that want them in release mode
should already be useding dcheck_always_on anyways

BUG=none
R=machenbach@chromium.org
LOG=y

Review URL: https://codereview.chromium.org/841083002

Cr-Commit-Position: refs/heads/master@{#26001}
2015-01-08 16:29:39 +00:00
jochen
fdf6777072 Remove the magic that sets CXX in the toplevel Makefile
The logic was supposed to trigger a rebuild if the CXX variable is
changed. However, it failed to track the other compiler related
variables, and, what is worse, conflicted with the clang=1 gyp setting
by forcing CXX to g++

The new logic just relies on tracking GYP defines, and checks whether
the CXX binary - if set - has a target different from the host
architecture.

BUG=none
R=jkummerow@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/807143003

Cr-Commit-Position: refs/heads/master@{#25973}
2015-01-07 13:33:20 +00:00
yangguo
7cff32a9bd Reland "Use same blob format for internal and external snapshots."
Review URL: https://codereview.chromium.org/791723004

Cr-Commit-Position: refs/heads/master@{#25741}
2014-12-10 11:46:55 +00:00
machenbach
da6dbe78bc Revert of Use same blob format for internal and external snapshots. (patchset #2 id:20001 of https://codereview.chromium.org/787033002/)
Reason for revert:
[sheriff] breaks http://build.chromium.org/p/client.v8/builders/V8-Blink%20Linux%2064%20%28dbg%29/builds/1293

Original issue's description:
> Use same blob format for internal and external snapshots.
>
> R=vogelheim@chromium.org

TBR=vogelheim@chromium.org,yangguo@chromium.org
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/792563002

Cr-Commit-Position: refs/heads/master@{#25729}
2014-12-09 16:19:57 +00:00
yangguo
03ba4becbf Use same blob format for internal and external snapshots.
R=vogelheim@chromium.org

Review URL: https://codereview.chromium.org/787033002

Cr-Commit-Position: refs/heads/master@{#25727}
2014-12-09 15:12:27 +00:00
jochen
8a7a81141f Temporarily restore make dependencies
We will remove dependencies in about a week again.

BUG=none
R=machenbach@chromium.org
LOG=y

Review URL: https://codereview.chromium.org/733203008

Cr-Commit-Position: refs/heads/master@{#25719}
2014-12-09 10:55:47 +00:00
jochen
779076e006 Update all DEPS to match chromium's DEPS at edb488e
Also remove the now disfunctinal 'builddeps' and 'dependencies' targets

BUG=none
R=machenbach@chromium.org,jkummerow@chromium.org
LOG=y

Review URL: https://codereview.chromium.org/788613002

Cr-Commit-Position: refs/heads/master@{#25710}
2014-12-08 12:27:26 +00:00
mstarzinger@chromium.org
f7763ac68d Switch 'make builddeps' to use HTTPS everywhere.
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/722613002

Cr-Commit-Position: refs/heads/master@{#25290}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25290 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-12 10:12:16 +00:00
jkummerow@chromium.org
e2e9e1d3f6 Add FLAG_trace_maps
R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/694533003

Cr-Commit-Position: refs/heads/master@{#25219}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25219 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-07 16:03:44 +00:00
bmeurer@chromium.org
4a679c8288 Add turbocheck Makefile target.
The turbocheck target is similar to quickcheck, but runs only the
turbofan variant.

R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/697573002

Cr-Commit-Position: refs/heads/master@{#25026}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-31 08:39:43 +00:00
machenbach@chromium.org
711218bc07 Make asan and lsan make flags work like on the bots.
BUG=
R=ishell@chromium.org, jkummerow@chromium.org

Review URL: https://codereview.chromium.org/631763003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24419 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-06 15:21:37 +00:00
bmeurer@chromium.org
bfd37ab267 Move unit tests to test/unittests.
As per discussion on the V8 team, this is the place we want them to live,
not following the Chrome Style Guide for this.

BUG=v8:3489
LOG=y
R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/615393002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24350 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-01 08:34:25 +00:00
mstarzinger@chromium.org
3a7cd5d273 Fix Makefile regeneration for compiler-unittests.
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/594823002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-23 11:44:31 +00:00
bmeurer@chromium.org
ab9bbed9d3 Synchronize GTest/GMock dependencies with Chromium.
Dependencies were updated in Chromium, see
https://codereview.chromium.org/425333002/ for details.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/451993002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22984 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-08 05:45:04 +00:00
jochen@chromium.org
8a20c73e3d Add dependencies on gtest and gmock
Because Benedikt said so.

BUG=none
LOG=y
R=bmeurer@chromium.org, machenbach@chromium.org

Review URL: https://codereview.chromium.org/434423002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22806 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-04 09:11:02 +00:00
paul.lind@imgtec.com
0f687199f2 Fix cross-compilation in Makefile.
Fix r22531, I dropped a necessary pair of parens.

BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/410003003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22565 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-23 14:54:12 +00:00
paul.lind@imgtec.com
14e88a5b53 Fix remaining CXX cross-compilation builds in Makefile.
r22509 fixed arm and mips (big-endian) cross-compilation builds.

It did not fix mipsel, mips64el, or arm64 builds, since the
toolchain prefix did not match the v8_target_arch.

For mips, the toolchain is typically named mips-linux-gnu-g++,
but it can compile for mipsel or mips64el via flags. (There can
also be mipsel-linux-gnu-g++ toolchains, and this patch will
work for mipsel build in that case).

For arm64, the toolchains seem to be named aarch64-linux-gnu-g++.

BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/408133002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22531 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-22 15:29:22 +00:00
jochen@chromium.org
b45ea40d93 Avoid bash-ism in Makefile
BUG=none
TBR=machenbach@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/412503002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22528 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-22 14:53:29 +00:00