[MCOL-1634] Include Windows library build into mcsapi Created: 2018-08-08  Updated: 2023-10-26  Resolved: 2018-10-15

Status: Closed
Project: MariaDB ColumnStore
Component/s: None
Affects Version/s: 1.1.6
Fix Version/s: 1.1.7, 1.2.0

Type: Task Priority: Major
Reporter: Jens Röwekamp (Inactive) Assignee: Andrew Hutchings (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Environment:

Windows 10 (x64)


Sprint: 2018-16, 2018-17, 2018-18

 Description   

Currently one needs to manually build all dependent C++ libraries (libuv, snappy, boost, libxml2, libiconv, gtest etc.) and add them to their Visual Studio installation.

Efforts shall be made to automate the build of the dependent libraries for Windows and include them directly into the build process so that no manual dependency management is needed any more.

This could be done through Visual Studio's packet manager nuget, through git submodules of needed libraries or a combination of both.



 Comments   
Comment by Jens Röwekamp (Inactive) [ 2018-08-10 ]

Some dependent libraries weren't able to be built through cmake, but through cygwin or batch scripts. Therefore, the automation would have been more complicated.

As a result I decided to add an archive of pre-compiled dependent libraries to the documentation whose contents can be directly copied to the Visual Studio installation. This way we ensure that we use the same libraries for every build. The archive is hosted in our ColumnStore Google Drive so that we have version control as well.

I further documented how each library of the archive was acquired or built, and if our mcsapi needs the static or shared variant. This way updates of dependent libraries should be easily possible in the future.

I further changed from dynamic googletest libraries to static googletest libraries and adapted the CMake scripts accordingly.

For QA:
Built the bulk write adapter on a clean Windows 10 machine according to the documentation and run the regression test suite.

Comment by Andrew Hutchings (Inactive) [ 2018-10-15 ]

Buildbot proves this is working.

Generated at Thu Feb 08 02:30:13 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.