-
Notifications
You must be signed in to change notification settings - Fork 453
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 option to build DXTex as shared lib to cmake #573
Conversation
52ebf80
to
dcea118
Compare
I've always had these libraries focused on static C++ lib scenarios and not built as DLLs since there's no consistent ABI design (COM or C flat). What's your scenario that a DLL is required? Also, you could move all the declspec annotations to the class level instead of the individual methods for the non-free functions which would at least minimize the code-lines changed. |
Hi Walbourn, my point to let the user decide if it want to use static or shared libs, taking my example, I'm developing a game engine, and, often i request new features and updates of packages, and since the DirectXTex is only static, at every change I need to redistribute the entire binary. I believe u have seen that the default behavior was mantained (static linkage). Also, this change can turn the lib closer to KTX (OpenGL and Vulkan texture handler). About your request to reduce the number of declspec, this is fine for me. |
Required some test updates to get this to build. |
Walbourn, about the failed tests, do u have any idea about what is causing the |
d29aa34
to
07d80c5
Compare
b05cbd8
to
fabee0f
Compare
Forget this Walbourn, I've fixed the workflows, now they are handling the latest vcpkg version |
About the previous reply, I saw that the modified workflows were not getting the correct vcpkg commit hash, so I added the step to get the hash and saved in the env, to later get it in |
I had the VCPKG-based workflows using a commitId value from the 'repository variables' and set them to the 'formal releases' rather than using 'latest HEAD', but workflows run by non-owners of the repo are restricted as secrets so that's why they were failing. I wonder if I can set it up to use the var if accessible and fallback to "HEAD" otherwise. |
I'm working on some additional commits here to add another build pipeline to validate this model and add Thanks! |
So, in this case, I only
You're welcome. |
9fbb8b6
to
af912f7
Compare
This pull request solves the #572, only for CMake, and doesn't modify the behavior of the previous build, tested, compiles for all utilities (ddsview, texconv, texassemble and texdiag)