On 18/11/2018 20:15, Henri Verbeet wrote:
On Sun, 18 Nov 2018 at 21:19, Andre Heider a.heider@gmail.com wrote:
Hm, are they private? They're installed, and using wine's debug channels work just fine. Looking at the file, there're specific macros for !__WINESRC__ too, e.g. WINE_FIXME().
I think that's largely historic, we didn't use to define __WINESRC__ for tests and programs.
Oh okay, gotcha.
Apart from the debug channels, we use these too: toupperW() (unicode.h) wine_dlopen() (library.h), and I guess a few more.
Again, what are you doing exactly that you need those?
Are the specific reasons to not expose those useful functions to external projects?
I'm sure we'd consider it if there was a demand for them. As it is though, there's no guarantee those won't go away between releases, or change in incompatible ways, etc. Depending on what you're using them for, chances are that you should either be using the official Win32 APIs, or just be defining __WINESRC__. Perhaps you're doing something unusual enough that neither of those is an option, but in that case we'd be curious to learn more details.
The result hopefully won't be unusual ;) This is about Gallium Nine. As you might know, it's currently distributed as patches on top on wine. I extracted the relevant code pieces into its own repository to make it a standalone project, independent of wine - but built as a winelib project.
That's why there're various uses of wine specific headers and functions. But you made me dig up the reason for using those (it's not my code base) - and I don't see one, heh. I could replace all the minor stuff with either win32 or libc alternatives. The only thing left now is the debug channel stuff.
It would be nice if I could just use that too, but it shouldn't be too much work to use something different. Maybe just plain old OutputDebugString()?
Anyway, if those headers are considered wine internal this patch can be dropped, as well as the other one "winegcc: add -I for the prefix's include dir".
If anyone cares: https://github.com/dhewg/nine Still a WIP, but works for me so far.
Thanks, Andre