Need to know if my plan for handling both compat and non-compat builds can work #1468
Replies: 1 comment
-
I am going to close this as no more relevant. I opened a pull request to add a compat feature to zlib-ng package. Whether the port will succeed or not, one can see there all the relevant info to implement it locally. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello,
I want to say again thanks to @Dead2 for having helped me to understand what could be the right plan for my use case.
Wherever possible I plan to use vcpkg for zlib dependencies. The package manager allows to customize dependencies behavior and through a combination of overlay ports and overlay triplets I have been able to get each package that depends on the old zlib automatically compiled with zlib-ng in compat mode prior to install. For the few packages I had chance to try, it works fine.
Now the problem comes when there is a package that depends on zlib-ng native because basically, it will point to my custom zlib-ng compiled in compat mode. I'm trying to find if there is a solution on vcpkg side, but I'm also wondering if two different ports could be a better option (ex:
zlib-ng
,zlib-ng-compat
) or, perhaps, some sort of autodetection and switching mechanism within zlib-ng itself.Unfortunately I can't do any testing because in all ports I didn't find any that depends on zlib-ng and I'm surprised of such lack of interest. I opened several posts here and there and hope people will be aware of the existence of such amazing library.
Supposed that I will be able to sort out the problem above, I could find myself in situations where, in the same process, a package loads zlib-ng compat, another one zlib-ng non compat, another one the old zlib (in cases where recompilation with zlib-ng compat fails). Third party closed source libraries may also load their own version of zlib. A sample is OpenCv compiled with CUDA (where Nvidia uses a special version of zlib renamed into zlibwapi). Can I expect no conflicts? If any, what would be the best solution to detect and fix at compile time any conflict and avoid at runtime random and unexpected invalid access memory errors (and similar) ?
Can my plan work? Or I should diminish my ambitions?
Beta Was this translation helpful? Give feedback.
All reactions