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

Swap linux-arm build to use linux-arm64-lts #71

Merged
merged 1 commit into from Mar 20, 2023

Conversation

cswendrowski
Copy link
Contributor

@cswendrowski cswendrowski commented Mar 17, 2023

It took a lot of time to build and verify, but I was able to confirm this brings down the compiled GLIBC.

Closes #69.

@vweevers
Copy link
Member

Do you reckon this can be released as semver-patch? Is there any reason that downgrading glibc could be a breaking change?

@vweevers vweevers added the semver-patch Bug fixes that are backward compatible label Mar 20, 2023
@cswendrowski
Copy link
Contributor Author

Do you reckon this can be released as semver-patch? Is there any reason that downgrading glibc could be a breaking change?

So far as I'm aware from my testing, compiling on a lower GLIBC is only more inclusive of targets, not less. The compilation would have failed if we had too old a GLIBC, so a patch should be fine

@vweevers
Copy link
Member

Alright, and we won't need the openssl_fips fix (#69 (comment))?

@cswendrowski
Copy link
Contributor Author

Alright, and we won't need the openssl_fips fix (#69 (comment))?

We won't know until we run the Github release action - I needed it to do builds locally, but your Action has previously worked without that update, and my hope is it will do so again. If that fails, we'll need to submit that PR upstream to both leveldb and snappy or otherwise apply those changes when building, which doesn't feel right but I have no idea what else to try

@vweevers
Copy link
Member

Added 89397fd and running it on main now.

@vweevers
Copy link
Member

vweevers commented Mar 20, 2023

Failed with the openssl_fips error. I reckon it worked previously because the docker images were using an older node version.

@vweevers
Copy link
Member

In any case it's unrelated to this PR so I'll go ahead and merge this.

Could you send another PR to fix the *.gyp files? That solution is fine because the *.gyp files are ours. Thank you!

@vweevers vweevers merged commit 5ea74ab into Level:main Mar 20, 2023
@cswendrowski
Copy link
Contributor Author

Added 89397fd and running it on main now.

Darn, seems like the same issue: https://github.com/Level/classic-level/actions/runs/4471788122/jobs/7857118969#step:5:48

I have no idea why this would have cropped up since the last build - these are the same dependency versions, and this failed on android-arm, which is unchanged, so I can only assume some environmental difference is now at play.

Some more research reveals it may be the case that Node 14 previously included an openssl_fips, but Node 16 no longer does: nodejs/node-gyp#2750 (comment)

So it seems like it should be possible to add that variable to the node process.config rather than make changes upstream. Will investigate further

@vweevers
Copy link
Member

@cswendrowski In case you missed it because we wrote our comments at the same time: #71 (comment)

@cswendrowski
Copy link
Contributor Author

In any case it's unrelated to this PR so I'll go ahead and merge this.

Could you send another PR to fix the *.gyp files? That solution is fine because the *.gyp files are ours. Thank you!

Ah neat, I hadn't noticed those weren't in the submodule. PR open! #72

reconbot added a commit to serialport/bindings-cpp that referenced this pull request Apr 20, 2023
Two problems to fix with this one
- our rpi arm64 isn't working possibly because our libc is too new, so we'll target the lts of arm64, worked for [level](Level/classic-level#71) thankful for [their investigation](Level/classic-level#69)
- our arm64 builds were just broken and wouldn't build so we're fixing that with a
reconbot added a commit to serialport/bindings-cpp that referenced this pull request Apr 20, 2023
Two problems to fix with this one
- our rpi arm64 isn't working possibly because our libc is too new, so we'll target the lts of arm64, worked for [level](Level/classic-level#71) thankful for [their investigation](Level/classic-level#69)
- our arm64 builds were just broken and wouldn't build so we're fixing that with a variable in our binding.gyp for `openssl_fips`

When this is released it will hopefully fix serialport/node-serialport#2438
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
semver-patch Bug fixes that are backward compatible
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

linux-arm and linux-arm64 prebuild comes with GLIBC which is too new for Raspberry Pi
2 participants