-
Notifications
You must be signed in to change notification settings - Fork 1.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
C++/C#: Move the Windows autobuilder into a subfolder in ql/csharp
.
#16487
Conversation
This is a necessary preparation for moving the C# dependency management to `paket`, which in turn is a necessary preparation for moving the C# build to bazel. As we discovered in #16376, `paket` tries to restore all projects recursively from the root folder. If we support building C# code under both `ql/csharp` and `ql/cpp`, we need to have a single lockfile under `ql`, as both codebases share the same set of dependencies (and utilities from `ql/csharp/extractor`). Then, `paket` will also try to restore things that look like "C# projects" in other languages' folders, which is not what we want. Therefore, we address this by moving all C# code into a common root directory, `ql/csharp`. This needs an internal PR to adjust the buildsystem to look for the autobuilder in the new location.
18930cc
to
869bf8a
Compare
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.
LGTM
As discussed in the other PR, waiting for explicit approval from @github/codeql-c-extractor , who are currently at an offsite. |
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.
Change-wise this LGTM, just one little comment.
Before approving this I'd like to understand two things related to releases:
- Will the C++ Windows autobuilder still be included?
- Will the C++ Windows autobuilder still be included in such a way that it is correctly picked up when attempting autobuild of a C/C++ project on Windows?
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com>
Re releases: The internal PR changes the path where we're looking for the autobuilder, so that it's still correctly included in the released bundle. I verified that manually with a bundle build. The invocation of the autobuilder doesn't change at all by the moving of the directories. |
This is a necessary preparation for moving the C# dependency management to
paket
, which in turn is a necessary preparation for moving the C# build to bazel.As we discovered in #16376,
paket
tries to restore all projects recursively from the root folder. If we support building C# code under bothql/csharp
andql/cpp
, we need to have a single lockfile underql
, as both codebases share the same set of dependencies (and utilities fromql/csharp/extractor
).Then,
paket
will also try to restore things that look like "C# projects" in other languages' folders, which is not what we want.Therefore, we address this by moving all C# code into a common root directory,
ql/csharp
.This needs an internal PR to adjust the buildsystem to look for the autobuilder in the new location.