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

Add Windows Implementation Libraries as an external library #8427

Open
wants to merge 1 commit into
base: master
from

Conversation

@CookiePLMonster
Copy link
Contributor

CookiePLMonster commented Oct 23, 2019

Previously a part of #8316 but I would really like to use WIL in other PR's to get RAII wrappers around WinAPI resources.

Quoting the relevant part of this PR:

As a preparation, WIL has been added, since it's very useful for ensuring proper RAII-based destruction for several WinAPI types - in my case it was proper scoped calls to CoUninitialize and proper destruction of previously leaking (in some cases) PROPVARIANT.

WIL also includes proper unique_ptr-like wrappers around eg. module handles, file handles, registry handles, CoTaskMem memory... etc.

@@ -71,6 +71,11 @@ if(WIN32)

WASAPIStream.cpp
WASAPIStream.h
target_include_directories(audiocommon PRIVATE

This comment has been minimized.

Copy link
@Warepire

Warepire Oct 23, 2019

Maybe this part should remain with audiocommon or be moved somewhere more generic?

This comment has been minimized.

Copy link
@CookiePLMonster

CookiePLMonster Oct 23, 2019

Author Contributor

I don't know if we have a "more generic" place for this, so I just removed it from that PR and will make it part of WASAPI PR.

@CookiePLMonster CookiePLMonster force-pushed the CookiePLMonster:wil-submodule branch from cd79a97 to 5a48476 Oct 23, 2019
@CookiePLMonster

This comment has been minimized.

Copy link
Contributor Author

CookiePLMonster commented Oct 24, 2019

As per the discussion on IRC I'll modify cmake to make WIL a dependency library so it's easier to use than what it is now. Will do it around Saturday.

@CookiePLMonster

This comment has been minimized.

Copy link
Contributor Author

CookiePLMonster commented Oct 28, 2019

Yesterday I spent way more time than I'd like trying to fix cmake project on Windows and looks like it's just fundamentally broken - PCH seems to be set up incorrectly and I failed to fix it fully.

Because of this I am unable to test and come up with a reasonable way to integrate WIL there. Any ideas how to proceed?

Tagging @lioncash since they're usually involved in cmake discussions.

@CookiePLMonster CookiePLMonster force-pushed the CookiePLMonster:wil-submodule branch from 5a48476 to 82898c4 Oct 31, 2019
@CookiePLMonster

This comment has been minimized.

Copy link
Contributor Author

CookiePLMonster commented Oct 31, 2019

As per discussion on IRC earlier, I now added WIL as a regular directory and not a submodule.

I did notice one problem with that however - now when it's not a submodule, it's not obvious what exact revision it contains...

@CookiePLMonster CookiePLMonster changed the title Add Windows Implementation Libraries as a submodule Add Windows Implementation Libraries as an external library Oct 31, 2019
@leoetlino leoetlino added the RFC label Nov 8, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
4 participants
You can’t perform that action at this time.