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

Upstream fixes to elect Windows static C runtime #8344

Closed
wrowe opened this issue Sep 24, 2019 · 3 comments
Closed

Upstream fixes to elect Windows static C runtime #8344

wrowe opened this issue Sep 24, 2019 · 3 comments

Comments

@wrowe
Copy link
Contributor

wrowe commented Sep 24, 2019

The Windows build of envoy wants to avoid the dependency on MSVCRT.dll, Microsoft's C Runtime, and associated C++ stdlib .dll's.

Most foreign_cc externals support this on a project-by-project basis; a few do not. This issue is tracking the following pull requests to support this feature, and eliminate our .patch files to the CMake logic of these upstream projects.

The following patches are introduced by PR #8280

madler/zlib#448 ENABLE_STATIC_CRT cmake flag
(Open no activity)

nghttp2/nghttp2#1393 ENABLE_STATIC_CRT cmake flag
nghttp2/nghttp2#1394 nghttp2_static.lib/.a output rename
(Accepted and merged for nghttp2 1.40.0 release)

nghttp2/nghttp2#1395 resolve ssize_t
(Patch under discussion)

opentracing/opentracing-cpp@0fb05a4
(Rolled into opentracing-cpp release 1.6.0, needs envoy dependency update)

@wrowe
Copy link
Contributor Author

wrowe commented Oct 7, 2019

libevent/libevent#908
Avoid transforming base C_FLAGS set deliberately

has been submitted, accepted and merged to master. libevent patch will fall off after we pick up a new baseline commit.

@wrowe
Copy link
Contributor Author

wrowe commented Oct 7, 2019

Note we propose to drop these patches from our effective patch set; while they remain useful they are not needed for successful bazel external_cmake() builds;
madler/zlib#448 ENABLE_STATIC_CRT cmake flag
nghttp2/nghttp2#1393 ENABLE_STATIC_CRT cmake flag
nghttp2/nghttp2#1394 nghttp2_static.lib/.a output rename

@wrowe
Copy link
Contributor Author

wrowe commented Oct 9, 2019

#8280 passes all tests using Envoy's bazel cflag elections without the individual proposals upstream to add this toggle for their Debug/Release/ReleaseWithDebInfo targets, so we can safely close this ticket as not blocking envoy binaries.

@wrowe wrowe closed this as completed Oct 9, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants