On Wed, Aug 31, 2022 at 3:50 PM Bidouille <ooofo...@free.fr> wrote: > Seems to be paused since 2018: > https://wiki.openoffice.org/wiki/Win64_port > > So I've been playing around lately, and thinking how to do the Win64 port, a newer MSVC compiler, and to finish the port to gbuild or a better build system, all at the same time.
First I tried out the Meson build system (https://mesonbuild.com), which is getting popular. I can see the attraction, it's elegant, well designed, and the documentation is good. It's easy to start with. The language is similar to Python, but not Turing complete to prevent build scripts from getting too complex. The lack of any functions means that there's only one way to script the build, and all meson.build files end up looking the same. I got several modules to build: solenv, soltools, xml2cmp, and began sal. I got my hopes up, and then hit a fatal flaw: custom targets don't allow specifying the output directory, meaning that custom targets which output files to many directories (like our idl files) need many many meson.build files, one in every possible output directory. This isn't getting fixed upstream (https://github.com/mesonbuild/meson/issues/2320), and since we use custom targets extensively, Meson is useless to us. So I gave up on that attempt but still have that branch around, if anyone wants to have a look. Currently I am experimenting with the SCons build system again, but using a very different approach. I want to isolate a small number of modules, and get them building with SCons, in isolation from the rest of OpenOffice. Once this exists, it can be ported to Win64. It can be ported to newer MSVC. It can be ported wherever and changed however we need. Then, the rest of OpenOffice can be ported to it. Possibly, this could be just the UNO framework, which is critical to the Win64 port, as the "bridges" component is involved with custom assembly language calls to and from C++. It is just too difficult to port the whole of OpenOffice to Win64, or to newer MSVC, or to a newer build system. At least, broken up, it should be more manageable. I'll keep you updated regarding my progress. Damjan