<div dir="ltr"><div class="gmail_default" style="font-size:small">Hi,</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">I just got through hooking HarfBuzz into a project that runs on Windows (and Monday we get to make sure it runs on the PS4 as well). Even with the help of Daniel Maciel here, who had done a similar thing already, it still took me a couple of hours all together.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">The thing is there's no reason for that, and I think there are lots of people out there who would like to use HarfBuzz on a variety of platforms if (a) they knew it existed, and (b) they knew they could just use it.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">It might seem that supporting Windows, random game consoles, etc, takes a lot of development work, but actually the opposite is true; all that needs to happen is removal of the dependency on an OS-dependant build system -- then the problem just goes away.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">It seems to me that the best way to do this is just to provide one .cpp file that just includes everything else. That way you just add a cpp to your project, include one .h where you want to use it, and you're done -- you don't have to worry about having build tools installed, static vs dynamic linkage, syncing up 64 vs 32-bit libraries, keeping straight all the precompiled libraries for all your OSs, etc.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">In general among people I know who ship software that runs on many OSs, this is the solution that has stood the test of time and is simple and just works for the maximum number of people. (Actually the absolute best thing to do, from a usability standpoint, is to pack everything into just one actual text file -- as in the stb libraries [<a href="https://github.com/nothings/stb">https://github.com/nothings/stb</a>] -- but beyond some size of project this may reduce understandability, so given that, an include-all cpp file is a reasonable compromise).</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Of course now that I have got this working for my current project, the strife involved in building does not matter so much for me, but as with any library the multiplier of any time saved becomes enormous the more people use the software. Conversely, a lot of programmers out there get a lot more powerful as soon as they don't have to deal with a bunch of friction in integrating some code.</div></div>