-
Notifications
You must be signed in to change notification settings - Fork 58
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
add debug build #17
Comments
The github workflow should be like this(https://github.com/gengjiawen/node-github-workflow/blob/master/.github/workflows/CI.yml) I guess xz format will be much better ? cc @rvagg name: CI
on: [push, pull_request]
jobs:
build-linux-debug:
runs-on: ubuntu-latest
container: gengjiawen/node-build
steps:
- uses: actions/checkout@v2
- name: Environment Information
run: npx envinfo
- run: git clone -b v13.11.0 --single-branch https://github.com/nodejs/node --depth=10
- name: Build
run: cd node && ./configure --debug && make -j2
- run: 7z a node-debug.7z node/out/Debug/node
- uses: actions/upload-artifact@v1
with:
name: node-debug-build
path: node-debug.7z |
7z, xz .. I think I'd prefer xz because it's more common, but I've just discovered I have 7z on my Ubuntu 18.04 machine which I guess it came with so maybe it's not too bad a choice. The way to pull this off is to make a new folder in the recipes folder and make a Dockerfile to set up an image to build the file and also a run.sh to perform the build. Copying the x86 one might be a good start:
You can test that it works by building the image and tagging it, then grabbing a Node.js tarball, then running it with something like:
where |
If we're publishing a Debug build with the purpose of improving debugging experience on native add-ons, we should probably include |
I am inclined not bundled them, I have a package has command to do such thing (only for lldb now). npm i -g @gengjiawen/node-dev
node-dev -h
node-dev setuplldb |
Those scripts are highly dependant on V8 version, we can't use the script from v12 with v10 or vice versa, for example. |
Maybe a script to directly to get the script from v8 repo. we can get v8 version from |
Still not getting how to do this, my thinking is to build the Node.js core and copy to related folder (foler name should be the version).
|
@gengjiawen do you mean for unofficial-builds or for the scripts @mmarchini is talking about? For unofficial-builds, |
FWIW I don't think we should block anything because of the scripts, we can add it later if we want to (I can do it once we have the build recipe). |
Nope, I tried to build the debug part, but still not get how to do it. I am not familiar with bash. Is there an easy way, the build part is easy #17 (comment). But I have no clue integrate it with current system. |
@gengjiawen do you mind if I give it a try? |
Not at all, go ahead :) |
Well, it's going to be less straightforward than I thought, since the target we usually use for releases assumes the build is, well, a https://github.com/nodejs/node/blob/master/Makefile#L1163-L1185 |
Yeah, that's a bit of a doozy, but I think all of the stuff in Makefile that builds these should be relatively easy to replace in a run.sh script. What are the resulting assets from this recipe are we aiming for? A single The most complicated stuff in there is running |
We discussed this in today's Release WG meeting and the consensus of the Release WG is that this should first be attempted as an https://unofficial-builds.nodejs.org/ / https://github.com/nodejs/unofficial-builds/ project.
@MylesBorins may be able to help with storage via Google credits.
Originally posted by @richardlau in nodejs/Release#555 (comment)
The text was updated successfully, but these errors were encountered: