-
Notifications
You must be signed in to change notification settings - Fork 6.5k
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
[nss] Add new ports nspr and nss #21281
Conversation
Better don't touch |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!
After committing all other changes, the version database must be updated
git add -u && git commit
git checkout 4df8c6d7f0468264576f1d17401277b3d401b27f -- versions
./vcpkg x-add-version --all
Diff
diff --git a/versions/baseline.json b/versions/baseline.json
index 7faf07c..1dfa76a 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -4704,10 +4704,6 @@
"baseline": "3.66",
"port-version": 0
},
- "nss": {
- "baseline": "3.66",
- "port-version": 0
- },
"nsync": {
"baseline": "1.24.0",
"port-version": 0
Please get failure logs here. |
done: #21296 |
Hey @JackBoosY, thanks for your close interest.
I don't have the resources to deal with all these platforms. The x64-windows dlls seem to work fine so far. I made sure the 32bit target builds but haven't tested the binaries. They should work, though. I can't comment about the others. As for the logs, except for the spurious 502 from V8 source repo, the only issue I see is vcpkg_find_acquire forgetting about NSINSTALL. I don't see why it wouldn't work, perhaps you are hiding some of the untrusted changes from your CI? |
For completeness' sake, here's the stdout from x64-windows
|
set(PROGNAME nsinstall) | ||
set(MOZBUILD_VERSION 3.3) | ||
set(PATHS ${DOWNLOADS}/tools/nsinstall/bin) | ||
set(URL "https://ftp.mozilla.org/pub/mozilla/libraries/win32/MozillaBuildSetup-${MOZBUILD_VERSION}.exe") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can only use the compressed package, not installation file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- They don't publish anything else
- I don't run it, I rename it to 7z.exe and unpack it.
- There are other packages that do the same in that file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will take a look.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we really want to add another program to vcpkg_find_acquire_program.cmake
?
It is expensive, every change triggers rebuilds of all ports which depend on this function.
And I don't think nsinstall
will become widely used.
I'll try to make your job easier by providing some questions to discuss:
That's all I can think of. This one is may be second only to openssl in terms of weirdness of its build system :) Why do crypto libs are like this? They are the flakiest pieces of software we need to deal with, so need to be as easy to build as possible. 🤷♂️ |
349a1ec
to
8e967de
Compare
the ebuilds were rebased on latest master, with mozbuild removed from vfap |
Sorry for late, I will handle this tomorrow. |
Here it says the latest stable release is 3.66: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_Releases There seem to be newer releases (newest is currently 3.72) and actually seems legitimate but couldn't be sure. |
Agreed, if the build system is too complex, we should add a new port instead of that.
If there is a call relationship between public header files and private header files, we still need to install them in the subfolders of include, because users actually need to use them.
For those executables, they serve two purposes:
Yeah, some binaries, such as boost's build tool b2, also have this problem: the official binary is signed, but the code generated locally is not signed, which may cause the anti-virus report to be abnormal. The signature requires an official certificate, and there is nothing we can do about it. |
For new ports:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!
PRs must add only one version and must not modify any published versions
When making any changes to a library, the version or port-version in vcpkg.json
or CONTROL
must be modified.
Error: Local changes detected for nss but no changes to version or port version.
-- Version: 3.66
-- Old SHA: 74331f33e8cabdd7e32bab08568dfed5f2036dd2
-- New SHA: 4fc55269b5e0eef3da5603e20666d596a32a3bf1
-- Did you remember to update the version or port version?
-- Pass `--overwrite-version` to bypass this check.
***No files were updated.***
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!
PRs must add only one version and must not modify any published versions
When making any changes to a library, the version or port-version in vcpkg.json
or CONTROL
must be modified.
Error: Local changes detected for nss but no changes to version or port version.
-- Version: 3.75
-- Old SHA: abae7ed682f2ff2d1d3287d51659241ecb6064d8
-- New SHA: 2c918224c896738bb5862c57cd96332a5b4315e2
-- Did you remember to update the version or port version?
-- Pass `--overwrite-version` to bypass this check.
***No files were updated.***
Error: Local changes detected for nspr but no changes to version or port version.
-- Version: 4.33
-- Old SHA: 99b796c358ae8d5272b275b67830095989e4661b
-- New SHA: bbe343bb451274bc1045f9cca555e3ae26f09000
-- Did you remember to update the version or port version?
-- Pass `--overwrite-version` to bypass this check.
***No files were updated.***
After committing all other changes, the version database must be updated
git add -u && git commit
git checkout 75ae1ef84437bc457fb4db54360f88af57bb158a -- versions
./vcpkg x-add-version --all
Diff
diff --git a/versions/baseline.json b/versions/baseline.json
index 27a7549..4c38380 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -7244,10 +7244,18 @@
"baseline": "2021-10-23",
"port-version": 0
},
+ "vcpkg-tool-gyp-nss": {
+ "baseline": "2022-03-04",
+ "port-version": 0
+ },
"vcpkg-tool-meson": {
"baseline": "0.60.2",
"port-version": 2
},
+ "vcpkg-tool-mozbuild": {
+ "baseline": "3.3",
+ "port-version": 0
+ },
"vcpkg-tool-nodejs": {
"baseline": "14.17.4",
"port-version": 0
You have modified or added at least one vcpkg.json where a "license" field is missing.
If you feel able to do so, please consider adding a "license" field to the following files:
ports/vcpkg-tool-gyp-nss/vcpkg.json
ports/vcpkg-tool-mozbuild/vcpkg.json
Valid values for the license field can be found in the documentation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!
PRs must add only one version and must not modify any published versions
When making any changes to a library, the version or port-version in vcpkg.json
or CONTROL
must be modified.
Error: Local changes detected for nss but no changes to version or port version.
-- Version: 3.75
-- Old SHA: abae7ed682f2ff2d1d3287d51659241ecb6064d8
-- New SHA: 2c918224c896738bb5862c57cd96332a5b4315e2
-- Did you remember to update the version or port version?
-- Pass `--overwrite-version` to bypass this check.
***No files were updated.***
Error: Local changes detected for nspr but no changes to version or port version.
-- Version: 4.33
-- Old SHA: 99b796c358ae8d5272b275b67830095989e4661b
-- New SHA: bbe343bb451274bc1045f9cca555e3ae26f09000
-- Did you remember to update the version or port version?
-- Pass `--overwrite-version` to bypass this check.
***No files were updated.***
After committing all other changes, the version database must be updated
git add -u && git commit
git checkout 75ae1ef84437bc457fb4db54360f88af57bb158a -- versions
./vcpkg x-add-version --all
Diff
diff --git a/versions/baseline.json b/versions/baseline.json
index 27a7549..4c38380 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -7244,10 +7244,18 @@
"baseline": "2021-10-23",
"port-version": 0
},
+ "vcpkg-tool-gyp-nss": {
+ "baseline": "2022-03-04",
+ "port-version": 0
+ },
"vcpkg-tool-meson": {
"baseline": "0.60.2",
"port-version": 2
},
+ "vcpkg-tool-mozbuild": {
+ "baseline": "3.3",
+ "port-version": 0
+ },
"vcpkg-tool-nodejs": {
"baseline": "14.17.4",
"port-version": 0
You have modified or added at least one vcpkg.json where a "license" field is missing.
If you feel able to do so, please consider adding a "license" field to the following files:
ports/vcpkg-tool-gyp-nss/vcpkg.json
ports/vcpkg-tool-mozbuild/vcpkg.json
Valid values for the license field can be found in the documentation
if(VCPKG_CROSSCOMPILING) | ||
message(FATAL_ERROR "This is a host only port!") | ||
endif() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I assume this is not needed, right?
Looks passed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You have modified or added at least one vcpkg.json where a "license" field is missing.
If you feel able to do so, please consider adding a "license" field to the following files:
ports/vcpkg-tool-gyp-nss/vcpkg.json
ports/vcpkg-tool-mozbuild/vcpkg.json
Valid values for the license field can be found in the documentation
Will add |
NSS 3.76 was released: https://groups.google.com/a/mozilla.org/g/dev-tech-crypto/c/W13LB93wep4/m/v3yN3ISSBAAJ Should I wait until this gets merged and bump it in a separate PR or just do it? |
@plq Let's wait for merge this first. |
I'm pretty sure this is pretty much good, thank you so much for your contribution despite it taking a long time to get 'through the tubes'! I made only nitpick comments and 1 question. (I will make the requested nitpick changes if you want me to) |
Guard for VCPKG_BUILD_TYPE Improve error reporting for unsupported VCPKG_TARGET_ARCHITECTURE Declare support for x64 rather than !x86 (given that the URI in question only has x64 binaries) Fix version numbers to use 'version'.
I just made the nitpick changes. Thanks for your contribution! |
Looks all good, thanks for @BillyONeal review. |
Thanks for your contribution! |
If it weren't for the fabulous test bench you guys built, this would have taken even longer. Thanks a lot for the help, kudos :) |
Describe the pull request
What does your PR fix?
Fixes [New port request] [Netscape Portable Runtime] NSPR #7171 [New port request] [Network Security Services] NSS #7172
Which triplets are supported/not supported? Have you updated the CI baseline?
Does your PR follow the maintainer guide?
I did not make separate pull requests for NSPR and NSS as these are quite tightly coupled. Otherwise, It looks fine to my eyes
If you have added/updated a port: Have you run
./vcpkg x-add-version --all
and committed the result?I am still working on this PRyes