Shachar Shemesh wine-devel@sun.consumer.org.il writes:
I have the creeping suspicion you don't realize just how much of a shortcut using fribidi is. All of the stuff we have there already that says "exteremely preliminary" is going to be replaced with approximately four to five lines of code.
Knowing Microsoft, I have the creeping suspicion that it's not going to be that easy. I'd be very happy to be proven wrong, but there's only one way to do that, and it's to show us the code. Not the configure checks, the actual code.
At the moment, I think it is particularily counter-useful to have mandatory BiDi support in Wine, as this means (among mere applying the BiDi algorithm) translating each string printed to UTF-32 and back (unless we can say for sure that no BiDi is going to be required - havn't found a really good algorithm for that yet, but I'm working on it). Not having the proper library on your machine is a pretty good way of indicating that BiDi is not interesting to you (and is, more or less, the way MS tackled the exact same dillema).
Well, obviously the number one reason for having that code inside Wine is that we can make it work with UTF-16 and skip the conversion step. And if there's really a need to disable BiDi for performance reasons, a config option is a much better way than trying to guess depending on the existence of an external library.
The only interesting question is whether using the external library allows us to do everything we need with reasonable performance, and whether it makes things easier. The only way to answer that is to try it one way or the other and see what you come up with.
If you think using the external library is the way to go, fine, do it that way and submit a patch. Then we can start really discussing it. And don't worry about configure checks or packaging issues; we'll deal with that later on.