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

V8 6.2.414.15 #29726

Merged
merged 10 commits into from Oct 11, 2017
Merged

V8 6.2.414.15 #29726

merged 10 commits into from Oct 11, 2017

Conversation

stesie
Copy link
Member

@stesie stesie commented Sep 24, 2017

Motivation for this change

Current version of V8 shipped with NixOS 5.4 is pretty old, actually it was published a year ago.
Since then updating was problematic, since upstream changed from Gyp to GN build system

This pull request packages GN (again, it was included once and then removed) and introduces a new package v8_6_x which packages current V8 version from Chromium/V8 beta release channel -- currently version 6.2.414.15

I also added a little update.sh shell script that updates the package recipe to latest V8 dependencies so future updates should be way easier

Caveats

The reason for me adding a new package and not simply upgrading "v8" was that due to re-packaging currently two features are lost, that the old package had

  • static flag, to trigger static compilation & linking
  • macOS support, can't test that as I don't have Mac hardware at hand
Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • Linux
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

@mention-bot
Copy link

@stesie, thanks for your PR! By analyzing the history of the files in this pull request, we identified @deeky666, @shlevy and @pSub to be potential reviewers.


installPhase = ''
install -vD out.gn/x64.release/d8 "$out/bin/d8"
install -vD out.gn/x64.release/mksnapshot "$out/bin/mksnapshot"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this not be ${arch}.release?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed it should, fixed

@Mic92
Copy link
Member

Mic92 commented Sep 25, 2017

It fails to build php-v8 in my case:

yes
checking whether to enable PDO support... yes
checking for mysql_commit in -lmysqlclient_r... checking for PDO_DBLIB support via FreeTDS... no
checking for Firebird support for PDO... no
checking for MySQL support for PDO... yes
checking for MySQL UNIX socket location... no
checking for mysql_config... /nix/store/3qmydxbzx7wvs759gslm744bqzp6zaq4-mariadb-client-10.1.25-dev/bin/mysql_config
checking for mysql_commit in -lmysqlclient_r... yes
checking for PDO includes... checking for PDO includes... /tmp/nix-build-php-7.0.22.drv-0/php-7.0.22/ext
checking Oracle OCI support for PDO... no
yes
checking for ODBC v3 support for PDO... no
checking for PostgreSQL support for PDO... yes
checking for pg_config... not found
configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path
checking for PDO includes... checking for PDO includes... /tmp/nix-build-php-7.1.8.drv-0/php-7.1.8/ext
checking Oracle OCI support for PDO... no
checking for ODBC v3 support for PDO... no
checking for PostgreSQL support for PDO... yes
checking for pg_config... not found
configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path
builder for ‘/nix/store/ab6yxiazghxp6l85hzv446n4dyi5pip8-php-7.0.22.drv’ failed with exit code 1
cannot build derivation ‘/nix/store/w7ssz0dg86kaa510lv51d04g9k5ksahb-php-v8-0.1.9.drv’: 1 dependencies couldn't be built
cannot build derivation ‘/nix/store/fnkqls86z8d3y8p12jjnk4jafaw6wg2i-php-v8js-1.4.1.drv’: 1 dependencies couldn't be built
builder for ‘/nix/store/p6ni55z6kvl0k12zhwi97lqvm5s5z7cz-php-7.1.8.drv’ failed with exit code 1
cannot build derivation ‘/nix/store/k6rm6y30dz6la2d2kxkrg464xy60v6rk-php-v8-0.1.9.drv’: 1 dependencies couldn't be built
cannot build derivation ‘/nix/store/93ps150nzvjw56rlhllykwincc4a1rjf-php-v8js-1.4.1.drv’: 1 dependencies couldn't be built
error: build of ‘/nix/store/93ps150nzvjw56rlhllykwincc4a1rjf-php-v8js-1.4.1.drv’, ‘/nix/store/fnkqls86z8d3y8p12jjnk4jafaw6wg2i-php-v8js-1.4.1.drv’, ‘/nix/store/k6rm6y30dz6la2d2kxkrg464xy60v6rk-php-v8-0.1.9.drv’, ‘/nix/store/w7ssz0dg86kaa510lv51d04g9k5ksahb-php-v8-0.1.9.drv’ failed
/run/current-system/sw/bin/nix-shell: failed to build all dependencies
The invocation of "nix-shell --keep-going -j4 --option build-use-sandbox true -p php71Packages.v8 -p php70Packages.v8js -p php70Packages.v8 -p php71Packages.v8js -p gn -p v8_6_x" failed
$ git worktree prune
nix-review 29726  38.58s user 4.94s system 7% cpu 10:06.03 total

@stesie
Copy link
Member Author

stesie commented Sep 25, 2017

@Mic92 are you sure it's related to my change? I cannot reproduce that and it errors out building php-7.0.22 and php-7.1.8, which just are a dependency to php-v8.

@Mic92
Copy link
Member

Mic92 commented Sep 25, 2017

Probably not, but it happens on master, when I use nix-review on this commit. Looks pretty similar to breakage: 032c50d

@stesie
Copy link
Member Author

stesie commented Sep 26, 2017

Yes, it was broken by commit b0280f5

... which splited pg-config into a separate, new build output "dev"

Update: created a separate PR for that fix

@copumpkin
Copy link
Member

Looks like @abbradar tried to delete this a while back: 003fa8f#diff-44657b1b205614922a0666e1fb8ca9b4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants