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

build: Update build-addons when node-gyp changes. #6787

Closed
wants to merge 3 commits into from
Closed

build: Update build-addons when node-gyp changes. #6787

wants to merge 3 commits into from

Conversation

lance
Copy link
Member

@lance lance commented May 16, 2016

Partially addresses #4607 by ensuring that build-addons are rebuilt when node-gyp is updated.

Checklist
  • tests and code linting passes
  • the commit message follows commit guidelines
Affected core subsystem(s)

build

Description of change

We can tell when node-gyp is changed by creating a prerequisite on
deps/npm/node_modules/node-gyp/package.json. The prerequisite is added
to the test/addons/.buildstamp since build-addons is .PHONY.

Testing for this change was entirely manual.

$ make clean test-build # Initial build
$ make test-build # Make sure build-addons doesn't rebuild
$ touch deps/npm/node_modules/node-gyp/package.json # simulate change
$ make test-build # Ensure build-addons rebuilds

@mscdex mscdex added the build Issues and PRs related to build files or the CI. label May 16, 2016
test/addons/.buildstamp: $(ADDONS_BINDING_GYPS) \
# Depends on node-gyp package.json so that build-addons is (re)executed when
# node-gyp is updated as part of an npm update.
test/addons/.buildstamp: deps/npm/node_modules/node-gyp/package.json $(ADDONS_BINDING_GYPS) \
Copy link
Member

Choose a reason for hiding this comment

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

I know the Makefile doesn’t always adhere to it, but ideally, lines should be < 80 characters in all files. You can just add the new entry like the other ones here using trailing \

@bnoordhuis
Copy link
Member

LGTM with nit and confirmed it works locally. Nice work. CI: https://ci.nodejs.org/job/node-test-pull-request/2698/

lance added 3 commits May 19, 2016 09:49
We can tell when `node-gyp` is changed by creating a prerequisite on
`deps/npm/node_modules/node-gyp/package.json`. The prerequisite is added
to the `test/addons/.buildstamp` since `build-addons` is .PHONY.

Testing for this change was entirely manual.

    $ make clean test-build # Initial build
    $ make test-build # Make sure build-addons doesn't rebuild
    $ touch deps/npm/node_modules/node-gyp/package.json # simulate change
    $ make test-build # Ensure build-addons rebuilds
@lance
Copy link
Member Author

lance commented May 19, 2016

@bnoordhuis sorry about that - easy to forget Makefile convention when your editor s/\t/ /. Fixed.

And fixed... microsoft/vscode#6542 👍

@bnoordhuis
Copy link
Member

@addaleax You want to sign off on this as well?

@addaleax
Copy link
Member

Yeah, LGTM :)

@bnoordhuis
Copy link
Member

Thanks Lance, landed in 99bf6fa.

@bnoordhuis bnoordhuis closed this May 20, 2016
bnoordhuis pushed a commit that referenced this pull request May 20, 2016
We can tell when `node-gyp` is changed by creating a prerequisite on
`deps/npm/node_modules/node-gyp/package.json`. The prerequisite is added
to the `test/addons/.buildstamp` since `build-addons` is .PHONY.

Testing for this change was entirely manual.

  $ make clean test-build # Initial build
  $ make test-build # Make sure build-addons doesn't rebuild
  $ touch deps/npm/node_modules/node-gyp/package.json # simulate change
  $ make test-build # Ensure build-addons rebuilds

PR-URL: #6787
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Fishrock123 pushed a commit that referenced this pull request May 23, 2016
We can tell when `node-gyp` is changed by creating a prerequisite on
`deps/npm/node_modules/node-gyp/package.json`. The prerequisite is added
to the `test/addons/.buildstamp` since `build-addons` is .PHONY.

Testing for this change was entirely manual.

  $ make clean test-build # Initial build
  $ make test-build # Make sure build-addons doesn't rebuild
  $ touch deps/npm/node_modules/node-gyp/package.json # simulate change
  $ make test-build # Ensure build-addons rebuilds

PR-URL: #6787
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
rvagg pushed a commit that referenced this pull request Jun 2, 2016
We can tell when `node-gyp` is changed by creating a prerequisite on
`deps/npm/node_modules/node-gyp/package.json`. The prerequisite is added
to the `test/addons/.buildstamp` since `build-addons` is .PHONY.

Testing for this change was entirely manual.

  $ make clean test-build # Initial build
  $ make test-build # Make sure build-addons doesn't rebuild
  $ touch deps/npm/node_modules/node-gyp/package.json # simulate change
  $ make test-build # Ensure build-addons rebuilds

PR-URL: #6787
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
@MylesBorins
Copy link
Contributor

@bnoordhuis lts?

@addaleax
Copy link
Member

addaleax commented Jun 3, 2016

@thealphanerd yes, but i think it needs to be backported?

@lance
Copy link
Member Author

lance commented Jun 3, 2016

@addaleax @thealphanerd let me know if it's needed, and I can submit a backport PR.

@MylesBorins
Copy link
Contributor

@lance would you be able to submit a backport PR please

@lance
Copy link
Member Author

lance commented Jul 13, 2016

@thealphanerd see #7713

MylesBorins pushed a commit that referenced this pull request Jul 14, 2016
Backported from
99bf6fa

We can tell when `node-gyp` is changed by creating a prerequisite on
`deps/npm/node_modules/node-gyp/package.json`. The prerequisite is added
to the `test/addons/.buildstamp` since `build-addons` is .PHONY.

Testing for this change was entirely manual.

  $ make clean test-build # Initial build
  $ make test-build # Make sure build-addons doesn't rebuild
  $ touch deps/npm/node_modules/node-gyp/package.json # simulate change
  $ make test-build # Ensure build-addons rebuilds

PR-URL: #6787
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
MylesBorins pushed a commit that referenced this pull request Jul 14, 2016
Backported from
99bf6fa

We can tell when `node-gyp` is changed by creating a prerequisite on
`deps/npm/node_modules/node-gyp/package.json`. The prerequisite is added
to the `test/addons/.buildstamp` since `build-addons` is .PHONY.

Testing for this change was entirely manual.

  $ make clean test-build # Initial build
  $ make test-build # Make sure build-addons doesn't rebuild
  $ touch deps/npm/node_modules/node-gyp/package.json # simulate change
  $ make test-build # Ensure build-addons rebuilds

PR-URL: #6787
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
MylesBorins pushed a commit that referenced this pull request Jul 14, 2016
Backported from
99bf6fa

We can tell when `node-gyp` is changed by creating a prerequisite on
`deps/npm/node_modules/node-gyp/package.json`. The prerequisite is added
to the `test/addons/.buildstamp` since `build-addons` is .PHONY.

Testing for this change was entirely manual.

  $ make clean test-build # Initial build
  $ make test-build # Make sure build-addons doesn't rebuild
  $ touch deps/npm/node_modules/node-gyp/package.json # simulate change
  $ make test-build # Ensure build-addons rebuilds

PR-URL: #6787
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
@MylesBorins MylesBorins mentioned this pull request Jul 14, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Issues and PRs related to build files or the CI.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants