-
Notifications
You must be signed in to change notification settings - Fork 7.2k
[libcoap] Add new port (#47602) #47886
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
Conversation
16e56fc to
e45e04a
Compare
|
Why does CI fails with: ? CMakeLists.txt:726: Is there a problem in the CI that breaks the use of If nobody knows, I will comment the line. Its purpose is tests only. |
|
That will cause the debug and release builds to stomp on each other because you're writing back to the source directory. You can either not write to the source directory like that (ideally), or you can add |
ports/libcoap/portfile.cmake
Outdated
| ${FEATURE_OPTIONS} | ||
| -DENABLE_DOCS=OFF | ||
| -DDTLS_BACKEND=openssl | ||
| -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON) |
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.
e45e04a to
1304223
Compare
|
@BillyONeal Thanks for the review. The CI should pass now. I will remove the draft tag when CI will succeed. |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
@microsoft-github-policy-service rerun |
2 similar comments
|
@microsoft-github-policy-service rerun |
|
@microsoft-github-policy-service rerun |
ports/libcoap/portfile.cmake
Outdated
| # A false condition hardcodes CMAKE_BINARY_DIR: | ||
| # CMakeLists.txt:811 | ||
| # $<$<AND:$<BOOL:${COAP_WITH_LIBTINYDTLS}>,$<BOOL:${USE_VENDORED_TINYDTLS}>>:${CMAKE_BINARY_DIR}/include/tinydtls> | ||
| set(VCPKG_POLICY_SKIP_ABSOLUTE_PATHS_CHECK enabled) |
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.
Please patch this out rather than setting a VCPKG_POLICY
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.
Fixed
ports/libcoap/portfile.cmake
Outdated
| # There is a configure_file with output in source file. | ||
| DISABLE_PARALLEL_CONFIGURE |
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.
It's probably worth trying to patch this to fix it. Could you apply obgm/libcoap@0bd03b6 as a patch? For example, starting with:
vcpkg_download_distfile(DLLEXPORT_PATCH
URLS https://github.com/obgm/libcoap/commit/0bd03b658ed2d75fdb7cb8f6add201b39b428298.patch?full_index=1
FILENAME obgm-remove-self-configure-file-0bd03b658ed2d75fdb7cb8f6add201b39b428298.patch
SHA512 0 #fix this to the real SHA :)
)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.
Nice catch. It will fix it.
| "dtls": { | ||
| "description": "compile with dtls support", | ||
| "dependencies": [ | ||
| "openssl" | ||
| ] | ||
| }, |
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.
Can you speak to https://learn.microsoft.com/vcpkg/contributing/maintainer-guide#default-features-should-enable-behaviors-not-apis ? It seems very likely that this fails that requirement.
In particular, just because upstream has a way to change the thing does not mean the vcpkg port needs a feature hooked up for it.
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 took a look in source code. dtls doesn't change API. There is just functions like coap_tls_is_supported / coap_dtls_is_supported that will return 0 or 1 but I didn't found new functions.
I enabled it by default because previous MR did it.
And I would like to have a feature to be able to not depend on openssl.
1304223 to
eb71b6d
Compare
BillyONeal
left a comment
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.
Thanks!
Fixes #47602
Based on #24119
find_packagecalls are REQUIRED, are satisfied byvcpkg.json's declared dependencies, or disabled with CMAKE_DISABLE_FIND_PACKAGE_Xxx.vcpkg.jsonmatches what upstream says.vcpkg.jsonmatches what upstream says../vcpkg x-add-version --alland committing the result.