"Jonathan Wilson" jonwil@tpgi.com.au wrote:
Given that simply calling whatever the locale functions are on windows and using their results is considered too legally risky (because the results are almost certainly covered under a MS copyright), the best solution is to simply take the best possible implementation we have now then build a testcase. Build a testcase that calls the locale functions and checks that the output matches. From there, you can fix WINE untill it passes the tests.
This is how it is done for most other things in WINE, so why not this?
Look at the dlls/kernel/tests/locale.c,test_CompareStringA/test_LCMapStringA
Another way is to look at what ReactOS has, do they have collation tables? Are they good? Can WINE use them? (I would assume they would need to be relicenced but other than that...)
I don't think ReactOS has anything except .nls and case mapping files generated with the tool I wrote. Even those files aren't used AFAIK.