Hi George
The build system is particularly difficult to change.
If you look through the mailing list archives, I documented some of my
experiences with MSVC 14 in a 13 March 2018 email entitled "First steps in
building with MSVC 14 / Visual Studio 2015". I didn't get far. A patch with
some of my changes is attached.
Good luck and let us know if (or when ;) you need any help
Damjan
On Sun, Sep 23, 2018 at 2:14 PM George K <[email protected]> wrote:
> Hello everyone,
>
> I 'm currently trying to build Open Office on Windows. I 've setup most of
> the environment but I am having trouble finding the Windows 7.0 SDK, witch
> contains MSVC 2008, as it is unavailable from Microsoft. Peter kindly
> pointed me at an image of Windows Server 2008 Standard
> <https://www.microsoft.com/en-us/download/details.aspx?id=5023>. Should I
> setup a VM with that image, or download Windows 7? I 'm currently trying to
> build on a Windows 10 machine. Any help and directions would be welcome.
>
> That said, I would like to contribute to Open Office, by making the build
> process easier and migrating the project for Windows on MSVC 2017. I have
> thought of the following build process:
>
> - Install Visual Studio 2017(All libraries and tools needed would be
> provided through the installation)
> - Install all other prerequisites using a Windows BATCH file(Provide a .bat
> file for automating installation of Java, Cygwin etc. and setting up the
> modules. Or, if complexity demands it, install python and do all the above
> through it. Optimally, checkout the repo from svn and be ready for build).
> - Build Open Office as usual.
>
> That might be complicated, but I 'm willing to try. I 'm currently trying
> to familiarize my self with the code and I would be grateful if someone
> pointed me to the right direction. Let's keep an open discussion of Open
> Office's build process. Feel free to suggest new things or improve my own.
>
> Thanks in advance,
> George
>
Index: configure.ac
===================================================================
--- configure.ac (revision 1828823)
+++ configure.ac (working copy)
@@ -4004,7 +4004,7 @@
AC_MSG_RESULT([external])
AM_PATH_PYTHON([2.7])
- python_include=`$PYTHON -c "import distutils.sysconfig;
print(distutils.sysconfig.get_config_var('INCLUDEPY'));"`
+ python_include=`$PYTHON -c "import distutils.sysconfig;
print(distutils.sysconfig.get_config_var('INCLUDEPY'));" | tr -d '\r\n'`
python_version=`$PYTHON -c "import distutils.sysconfig;
print(distutils.sysconfig.get_config_var('VERSION'));"`
PYTHON_CFLAGS="-I$python_include"
PYTHON_LIBS="-lpython$python_version"
Index: oowintool
===================================================================
--- oowintool (revision 1828823)
+++ oowintool (working copy)
@@ -207,6 +207,12 @@
'dll_path' => 'redist/x86/Microsoft.VC90.CRT',
'dll_suffix' => '90'
);
+my %msvc_2015 = (
+ 'ver' => '14.0',
+ 'key' => 'Microsoft/VisualStudio/14.0/Setup/VC/ProductDir',
+ 'dll_path' => 'redist/x86/Microsoft.VC140.CRT',
+ 'dll_suffix' => '140'
+);
sub find_msvs()
{
@@ -230,7 +236,7 @@
sub find_msvc()
{
- my @ms_versions = ( \%msvc_2008, \%msvc_express_2008, \%msvc_2005,
\%msvc_express_2005, \%msvc_net_2003 );
+ my @ms_versions = ( \%msvc_2015, \%msvc_2008, \%msvc_express_2008,
\%msvc_2005, \%msvc_express_2005, \%msvc_net_2003 );
for $ver (@ms_versions)
{
@@ -351,10 +357,15 @@
$ver->{'dll_path'});
copy_dll ($srcdir, "msvcp" . $ver->{'dll_suffix'} . ".dll",
- $dest . $ver->{'dll_suffix'});
- copy_dll ($srcdir, "msvcr" . $ver->{'dll_suffix'} . ".dll",
- $dest . $ver->{'dll_suffix'});
- if ($ver->{'dll_suffix'} >= 90) {
+ $dest . $ver->{'dll_suffix'});
+ if ($ver->{'dll_suffix'} >= 140) {
+ copy_dll ($srcdir, "vcruntime" . $ver->{'dll_suffix'} . ".dll",
+ $dest . $ver->{'dll_suffix'});
+ } else {
+ copy_dll ($srcdir, "msvcr" . $ver->{'dll_suffix'} . ".dll",
+ $dest . $ver->{'dll_suffix'});
+ }
+ if (90 <= $ver->{'dll_suffix'} && $ver->{'dll_suffix'} < 140) {
copy_dll ($srcdir, "msvcm" . $ver->{'dll_suffix'} . ".dll",
$dest . $ver->{'dll_suffix'});
copy_dll ($srcdir, "Microsoft.VC90.CRT.manifest", $dest .
$ver->{'dll_suffix'});
Index: soltools/cpp/_include.c
===================================================================
--- soltools/cpp/_include.c (revision 1828823)
+++ soltools/cpp/_include.c (working copy)
@@ -43,6 +43,11 @@
#endif
#include <limits.h>
+/* MSVC++ 14 does not have PATH_MAX any more: */
+#if defined(_MSC_VER) && !defined(PATH_MAX)
+#define PATH_MAX 512
+#endif
+
#include "cpp.h"
Includelist includelist[NINCLUDE];
Index: soltools/cpp/_macro.c
===================================================================
--- soltools/cpp/_macro.c (revision 1828823)
+++ soltools/cpp/_macro.c (working copy)
@@ -33,6 +33,11 @@
#endif
#include <limits.h>
+/* MSVC++ 14 does not have PATH_MAX any more: */
+#if defined(_MSC_VER) && !defined(PATH_MAX)
+#define PATH_MAX 512
+#endif
+
#include "cpp.h"
#define NCONCAT 16384
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]