Hi I've begun the long overdue task of porting AOO to 64 bit Windows.
With my changes so far, oowintool can now detect (the 64 bit only) Java 1.9, dmake can now compile in Cygwin64, ./configure and ./bootstrap complete successfully, and (with uncommitted patches) both dmake and gbuild modules manage to compile, link, and deliver 64 bit binaries :-). My progress will be documented on https://wiki.openoffice.org/ wiki/Win64_port and a blog entry might also be nice (how do you post to our blog?). One notable change in my (as yet uncommitted) patches will require the Windows bitness to match the build bitness, ie. a 32 bit build will require 32 bit Windows, and a 64 bit build will require 64 bit Windows. Why? Our configure.ac does not support cross-compilation at all, explicitly checking for it and deliberately failing ./configure. It is not possible to build 32 bit builds on 64 bit hosts, or vice versa, on any operating system, and probably never was (the temporary special case of building 32 bit AOO on Windows 64, only worked because 32 bit x86 was hardcoded for Windows, and will end). Also, due to the fact MSVC implements compiling to different bitness using compilers in different paths, supporting both a 32 and 64 bit build will require that we stop searching $PATH for the compiler (cl.exe), and either autodetect it through "oowintool --msvc-productdir" or, failing that, by passing a --with-cl-home option to ./configure. Whether our $with_cl_home arrived from oowintool or the --with-cl-home option, we will use: * $with_cl_home/bin/cl.exe on x86 hosts * $with_cl_home/bin/amd64/cl.exe on x86_64 hosts While the progress I've made [in 1 weekend ;-)] is impressive, I imagine a full port to Win64 will be long (assembly language development for the Win64 UNO bridge, code audit for long <-> pointer conversions which work on *nix64 but not on Win64), and you best get a 32 bit Windows if you plan to build the stable 32 bit AOO in the meanwhile. Please prepare yourselves. Alternatively, it should be possible to explicitly support compiling 32 bit AOO binaries on Win64 with additional work (it essentially comes down to the CPU and CPUNAME environment variables, and maybe some hacks to set_soenv.in's COMPATH, ILIB and PATH); the changes involved should be modest. But how much does this matter to people, and who is willing to help implement it? Damjan