Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

deps: update V8 to 5.6 #10992

Merged
merged 7 commits into from
Feb 22, 2017
Merged

deps: update V8 to 5.6 #10992

merged 7 commits into from
Feb 22, 2017

Conversation

targos
Copy link
Member

@targos targos commented Jan 25, 2017

Depends on #9618.

V8 5.6 should become stable next week. It stable now!
I'm opening the PR now to track eventual issues with CI.

CI: https://ci.nodejs.org/job/node-test-commit/7473/?auto_refresh=true

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • commit message follows commit guidelines
Affected core subsystem(s)

v8

@targos targos added wip Issues and PRs that are still a work in progress. semver-major PRs that contain breaking changes and should be released in the next major version. v8 engine Issues and PRs related to the V8 dependency. labels Jan 25, 2017
@nodejs-github-bot nodejs-github-bot added build Issues and PRs related to build files or the CI. v8 engine Issues and PRs related to the V8 dependency. dont-land-on-v7.x labels Jan 25, 2017
@targos
Copy link
Member Author

targos commented Jan 25, 2017

Build fails on Windows (VS2015): https://ci.nodejs.org/job/node-compile-windows/6598/

@bnoordhuis
Copy link
Member

It's a bit buried in the sea of warnings but the build error is this:

c1xx : fatal error C1083: Cannot open source file: '..\..\..\build\Release\obj\global_intermediate\src\inspector\protocol\Protocol.cpp': No such file or directory [c:\workspace\node-compile-windows\label\win-vs2015\deps\v8\src\v8_base_0.vcxproj]
  Debugger.cpp
c1xx : fatal error C1083: Cannot open source file: '..\..\..\build\Release\obj\global_intermediate\src\inspector\protocol\Debugger.cpp': No such file or directory [c:\workspace\node-compile-windows\label\win-vs2015\deps\v8\src\v8_base_0.vcxproj]
  Profiler.cpp
c1xx : fatal error C1083: Cannot open source file: '..\..\..\build\Release\obj\global_intermediate\src\inspector\protocol\Profiler.cpp': No such file or directory [c:\workspace\node-compile-windows\label\win-vs2015\deps\v8\src\v8_base_0.vcxproj]
  Schema.cpp
c1xx : fatal error C1083: Cannot open source file: '..\..\..\build\Release\obj\global_intermediate\src\inspector\protocol\Schema.cpp': No such file or directory [c:\workspace\node-compile-windows\label\win-vs2015\deps\v8\src\v8_base_0.vcxproj]

Seems something goes wrong in the generate_inspector_protocol_sources phase.

@targos
Copy link
Member Author

targos commented Jan 25, 2017

cc @ofrobots ^
Maybe something missing in node.gyp?

@ofrobots
Copy link
Contributor

I ran out of day-time and couldn't look at this today. I will try again tomorrow. /cc @eugeneo.

@ChALkeR
Copy link
Member

ChALkeR commented Jan 26, 2017

V8 5.6 should become stable next week

I believe that already happened =).

@targos
Copy link
Member Author

targos commented Jan 30, 2017

/cc @dgozman

Maybe it's a bug in V8's gypfiles?
See nodejs/help#471 for more details on the error.

@eugeneo
Copy link
Contributor

eugeneo commented Jan 30, 2017

@targos I am not sure, but this might be an issue @ofrobots was looking into last week.

zcbenz added a commit to electron/node that referenced this pull request Feb 2, 2017
kevinsawicki pushed a commit to electron/node that referenced this pull request Feb 6, 2017
@YurySolovyov
Copy link

5.7 has been released with faster async/await and PromiseHook API. Would it make sense to jump into it ?

@targos
Copy link
Member Author

targos commented Feb 7, 2017

@YurySolovyov 5.7 is still in beta phase. We will update to it when Chrome 57 is stable (should be mid-March)

kevinsawicki pushed a commit to electron/node that referenced this pull request Feb 7, 2017
@targos targos removed the build Issues and PRs related to build files or the CI. label Feb 8, 2017
@targos
Copy link
Member Author

targos commented Feb 8, 2017

ping @nodejs/v8 for the Windows build issue.

Basically the problem is that deps\v8\src\v8_base_0.vcxproj instructs to look for the inspector generated source files in ..\..\..\build\Release\obj\global_intermediate\src but they are in fact in ..\..\..\Release\obj\global_intermediate\src.

@bnoordhuis
Copy link
Member

@targos Can you check if this patch helps?

diff --git a/deps/v8/gypfiles/toolchain.gypi b/deps/v8/gypfiles/toolchain.gypi
index 95eb1d9..5105fff 100644
--- a/deps/v8/gypfiles/toolchain.gypi
+++ b/deps/v8/gypfiles/toolchain.gypi
@@ -989,8 +989,6 @@
         #       present in VS 2003 and earlier.
         'msvs_disabled_warnings': [4351],
         'msvs_configuration_attributes': {
-          'OutputDirectory': '<(DEPTH)\\build\\$(ConfigurationName)',
-          'IntermediateDirectory': '$(OutDir)\\obj\\$(ProjectName)',
           'CharacterSet': '1',
         },
       }],

If we don't want to float a patch, we should be able to override it from common.gypi like this:

diff --git a/common.gypi b/common.gypi
index d87205e..7fd9efc 100644
--- a/common.gypi
+++ b/common.gypi
@@ -148,6 +148,10 @@
             }
           }]
         ],
+        'msvs_configuration_attributes': {
+          'IntermediateDirectory': '$(ConfigurationName)\\obj\\$(ProjectName)',
+          'OutputDirectory': '$(SolutionDir)$(ConfigurationName)',
+        },
         'msvs_settings': {
           'VCCLCompilerTool': {
             'Optimization': 3, # /Ox, full optimization

(Caveat emptor: needs to be duplicated in the Debug configuration.)

@ofrobots
Copy link
Contributor

ofrobots commented Feb 8, 2017

@bnoordhuis thanks for getting around to it sooner than me. I did a quick test on a windows box with that patch and it seems to work. /cc @ak239: can you think of a better upstream fix?

@targos
Copy link
Member Author

targos commented Feb 8, 2017

@bnoordhuis I confirm it works on my computer too. What prevents us from upstreaming this fix?

@eugeneo
Copy link
Contributor

eugeneo commented Mar 23, 2017

Are third_party being rolled as expected? https://github.com/v8/v8/blob/5.7-lkgr/third_party/inspector_protocol/lib/Values_h.template was updated 4 months ago and looks like this CL still has an old version.

@eugeneo
Copy link
Contributor

eugeneo commented Mar 23, 2017

Sorry, I've mistaken 5.6 and 5.7.

targos added a commit to targos/node that referenced this pull request Mar 25, 2017
Original commit message:

    [build] Fix gyp files for building inspector

    This patch fixes compilation of V8 with inspector on Windows as well as
    cross-compilation of the V8 inspector.

    BUG=

    Refs: nodejs#10992
    Review-Url: https://codereview.chromium.org/2705423003
    Cr-Commit-Position: refs/heads/master@{nodejs#43533}

PR-URL: nodejs#11752
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
@jasnell jasnell mentioned this pull request Apr 4, 2017
targos added a commit to targos/node that referenced this pull request Apr 10, 2017
Original commit message:

    [build] Fix gyp files for building inspector

    This patch fixes compilation of V8 with inspector on Windows as well as
    cross-compilation of the V8 inspector.

    BUG=

    Refs: nodejs#10992
    Review-Url: https://codereview.chromium.org/2705423003
    Cr-Commit-Position: refs/heads/master@{nodejs#43533}
hashseed pushed a commit to v8/node that referenced this pull request Apr 10, 2017
Original commit message:

    [build] Fix gyp files for building inspector

    This patch fixes compilation of V8 with inspector on Windows as well as
    cross-compilation of the V8 inspector.

    BUG=

    Refs: nodejs#10992
    Review-Url: https://codereview.chromium.org/2705423003
    Cr-Commit-Position: refs/heads/master@{nodejs#43533}
zcbenz added a commit to electron/node that referenced this pull request Apr 27, 2017
zcbenz added a commit to electron/node that referenced this pull request May 15, 2017
zcbenz added a commit to electron/node that referenced this pull request May 18, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
semver-major PRs that contain breaking changes and should be released in the next major version. v8 engine Issues and PRs related to the V8 dependency.
Projects
None yet
Development

Successfully merging this pull request may close these issues.