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

CPP-1006 Initial version of a Windows config for Github Actions #567

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

absurdfarce
Copy link
Collaborator

No description provided.

@absurdfarce absurdfarce changed the title Initial version of a Windows config for Github Actions CPP-1006 Initial version of a Windows config for Github Actions Nov 6, 2024
OPENSSL_ROOT_DIR: C:/vcpkg/packages/openssl_x64-windows
steps:
- uses: actions/checkout@v4
- uses: ilammy/msvc-dev-cmd@v1
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Appears to be necessary to setup MSVC env properly. More at the Githubs.

- uses: actions/checkout@v4
- uses: ilammy/msvc-dev-cmd@v1
- name: Install dependencies
run: vcpkg install libuv zlib:x64-windows-static krb5 openssl
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Static zlib required for build

run: |
echo "PATH=${{ env.PATH }};${{ env.LIBUV_BIN_DIR }};${{ env.KERBEROS_BIN_DIR }};${{ env.OPENSSL_BIN_DIR }}" >> $env:GITHUB_ENV
- name: Fix name of static zlib dir
run: ln -s ${{ env.ZLIB_LIB_DIR }}/zlib.lib ${{ env.ZLIB_LIB_DIR }}/zlibstatic.lib
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

zlibstatic is apparently the expected name but the static build uses the default filename... so we manually fix it here

@@ -22,7 +22,6 @@
#include <string.h>

#include <gssapi/gssapi.h>
#include <gssapi/gssapi_generic.h>
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This header file isn't included in the krb5 vcpkg build. At least for modern versions of the gssapi lib this header isn't especially interesting so it seemed easy enough to remove.

@absurdfarce
Copy link
Collaborator Author

Worth noting that this isn't 💯 yet. Outstanding issues at this writing:

  • Only running against Windows 2019, need to setup a matrix
  • We're seeing several test failures due to missing host configs
  • Newer versions of MSVC include checks for memory leaks and apparently some of our unit tests are triggering those

I'm not necessarily looking for bullet-proof answers to each of these points before we merge this; I expect this process will iteratively get better over time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant