darvin / vts-browser-cpp-build-wrapper

Wrapper for vts-browser-cpp with build scripts for all 3rd-party dependencies

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

VTS Browser CPP - Build Wrapper

VTS Browser CPP is a collection of libraries that bring VTS client capabilities to your native applications.

This build wrapper allows easy building of 3rd-party dependencies required for the browser.

It provides configured git submodules and cmake build scripts for all 3rd-party libraries and for the browser.

The primary intention of this repository is to allow building of the browser on Microsoft Windows. However, the goal is to make it possible to build all the libraries on all platforms supported by the browser to minimize number of external runtime dependencies.

Building

Go to the directory where you have cloned the repository.

Make sure that all submodules are cloned too:

git pull
git submodule update --init --recursive

If you get an error that file names are too long, use this setting:

git config --system core.longpaths true

Always clone the repository - do NOT download the repository from github, the downloaded archive does not contain the submodules.

Building on Windows

Permission for Symlinks

On Windows, a specific permissions are required to allow creating symbolic file links. There are two ways to acquire the permission.

  • Start git and cmake as administrator.
  • (Recommended) Enable Developer mode in windows. See Settings -> Update & Security -> For developers.

Moreover, it may be necessary to enable creating symlinks when installing the git.

Compiler, Git & CMake

A C++14 capable compiler is required. We recommend MS Visual Studio 2017 or newer. It is freely available at: https://www.visualstudio.com/downloads/

The Visual Studio also contains git and cmake integrations. However, we recommend standalone versions available here: https://gitforwindows.org/ and https://cmake.org/download/

Python

Python is available at: https://www.python.org/downloads/windows/ Make sure to choose Python 2.

Also, during the installation, select to add the Python to environment variable PATH.

Build

Configure and build.

mkdir build
cd build
cmake -G"Visual Studio 15 2017 Win64" ..
cmake --build . --config relwithdebinfo

Building for UWP (Universal Windows Platform)

The prerequisites for Windows apply here too.

Configure and build.

mkdir build-uwp
cd build-uwp
cmake -DCMAKE_TOOLCHAIN_FILE=../externals/browser/browser/cmake/uwp.toolchain.cmake -G"Visual Studio 15 2017 Win64" ..
cmake --build . --config relwithdebinfo

Building on Linux

Install some prerequisites.

sudo apt update
sudo apt install \
    cmake \
    nasm \
    libssl-dev \
    python-minimal

Configure and build.

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=RELWITHDEBINFO ..
cmake --build .

Building on Mac

Configure and build.

mkdir build
cd build
cmake -GXcode ..

Use the generated XCode project as usual.

Building for iOS

Configure and build.

mkdir build-ios
cd build-ios
cmake -DCMAKE_TOOLCHAIN_FILE=../externals/browser/browser/cmake/ios.toolchain.cmake -GXcode ..

Use the generated XCode project as usual.

Bug Reports

For bug reports or enhancement suggestions use the Issue tracker.

How To Contribute

Check the CONTRIBUTING.md on the VTS Browser CPP repository. It applies equally here.

License

See the LICENSE file.

About

Wrapper for vts-browser-cpp with build scripts for all 3rd-party dependencies

License:BSD 2-Clause "Simplified" License


Languages

Language:C 89.8%Language:C++ 9.8%Language:CMake 0.4%