Remove "how to build" documentation

Instead, point to the CI configuration files, and include the extra
steps for Ubuntu 12.04 as a script. More useful, and less likely to
become outdated.
This commit is contained in:
Oliver Hamlet
2016-09-17 22:21:41 +01:00
parent 20b296a621
commit 19778db975
5 changed files with 28 additions and 69 deletions
+12 -6
View File
@@ -25,17 +25,19 @@ For example `LOOT v0.7.0-alpha-2-10-gf6d7e80_dev.7z` was built using the revisio
## Building LOOT
LOOT's build process uses [CMake](https://cmake.org). Most of LOOT's C++ dependencies are managed by CMake, but the following must be obtained manually:
### Windows
* [Boost](http://www.boost.org) v1.55+
Refer to `appveyor.yml` for the build process. The Appveyor configuration assumes that [CMake](https://cmake.org) and [Node.js](https://nodejs.org/) are already installed.
Building LOOT's GUI also uses [Node.js](https://nodejs.org/). With it installed, run `npm install` then `node_modules/.bin/bower install` from the repository root to install the additional tools and dependencies required.
### Linux
The GUI's HTML file is automatically built when building the LOOT GUI binary, but it can also be built by running `node scripts/vulcanize.js` from the repository root.
Refer to `.travis.yml` for the build process. If starting from a freshly-installed instance of Ubuntu Server 12.04, first run the steps in the `scripts/linux/prepare_ubuntu_precise.sh` to install some additional packages Travis instances have pre-installed.
Platform-specific instructions for building Windows binaries using Microsoft Visual Studio are given in [docs/BUILD.MSVC.md](docs/BUILD.MSVC.md), and instructions for building Linux binaries using GCC are given in [docs/BUILD.LINUX.md](docs/BUILD.LINUX.md).
Not all LOOT's features have been implemented for Linux builds. Issues labelled
`linux` on LOOT's issue tracker cover such missing features where they can be
implemented.
#### CMake Variables
### CMake Variables
LOOT uses the following CMake variables to set build parameters:
@@ -46,6 +48,10 @@ Parameter | Values | Default |Description
You may also need to set `BOOST_ROOT` if CMake cannot find Boost.
### Rebuilding the HTML UI
The GUI's HTML file is automatically built when building the LOOT GUI binary, but it can also be built by running `node scripts/vulcanize.js` from the repository root.
## Building The API Documentation
The API documentation is built using [Doxygen](http://www.stack.nl/~dimitri/doxygen/), [Breathe](https://breathe.readthedocs.io/en/latest/) and [Sphinx](http://www.sphinx-doc.org/en/stable/). On Windows, install Doxygen and [Python](https://www.python.org) 2.7, add Doxygen's binary path, `C:\Python27` and `C:\Python27\Scripts` (or wherever you installed Python to) to your `%PATH%`, then:
-44
View File
@@ -1,44 +0,0 @@
# Build Instructions using GCC
Linux binaries can be built for LOOT, and these instructions are for doing so on
Ubuntu 12.04, though they may also apply to other versions and
distributions.
## Building
Most of the procedure for building the API, tests and metadata validator can be
found in the `.travis.yml` file, which is the configuration file for LOOT's
Travis CI instance. However, Travis instances have a few more libraries and
utilities by default than Ubuntu 12.04 does, so installation of them will be
covered here.
Linux builds of the GUI application should be considered officially
**unsupported and unmaintained**, though contributions are welcome.
## Installing Missing Dependencies
### Base Dependencies
```
sudo apt-get install python-software-properties git build-essential libcurl4-openssl-dev
```
### UI Dependencies
```
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 68576280
sudo apt-add-repository 'deb https://deb.nodesource.com/node_4.x precise main'
sudo apt-get update
sudo apt-get install nodejs
```
## Runtime Differences
Not all LOOT's features have been implemented for Linux builds. Issues labelled
`linux` on LOOT's issue tracker cover such missing features where they can be
implemented. Unavoidable platform differences are documented here:
* On Windows, LOOT can detect game installs using their Registry entries. On
Linux this is obviously not possible, so either game paths will have to be
entered manually in LOOT's settings dialog when it is run, or LOOT will need
to be installed beside a game's Data folder for that game to be detected.
-19
View File
@@ -1,19 +0,0 @@
# Build Instructions using Microsoft Visual C++
These instructions were used to build LOOT using Microsoft Visual Studio 2015 Community, though they should apply to other versions of MSVC.
#### Boost
```
bootstrap.bat
b2 toolset=msvc threadapi=win32 link=static runtime-link=static variant=release address-model=32 --with-log --with-date_time --with-thread --with-filesystem --with-locale --with-regex --with-system --with-iostreams
```
`link`, `runtime-link` and `address-model` can all be modified if shared linking or 64 bit builds are desired. LOOT uses statically-linked Boost libraries by default: to change this, edit [CMakeLists.txt](../CMakeLists.txt).
#### LOOT
1. Set CMake up so that it builds the binaries in the `build` subdirectory of the LOOT folder.
2. Define any necessary parameters.
3. Configure CMake, then generate a build system for Visual Studio.
4. Open the generated solution file, and build it.
+3
View File
@@ -1,3 +1,6 @@
# Assumes that 'C:\projects' exists and that 7-zip is installed and 7z.exe is
# available on the PATH.
Add-Type -AssemblyName System.IO.Compression.FileSystem
$boostUrl = 'https://downloads.sourceforge.net/project/boost/boost/1.61.0/boost_1_61_0.7z?r=https%3A%2F%2Fsourceforge.net%2Fprojects%2Fboost%2Ffiles%2Fboost%2F1.61.0%2F&ts=1468862599&use_mirror=ncu'
+13
View File
@@ -0,0 +1,13 @@
#!/bin/bash
# This script prepares a fresh install of Ubuntu Server 12.04 so that the steps
# in .travis.yml can then be run.
sudo rm -rf /var/lib/apt/lists/*
sudo apt-get update
sudo apt-get install -y python-software-properties git build-essential libcurl4-openssl-dev
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 68576280
sudo apt-add-repository -y 'deb https://deb.nodesource.com/node_4.x precise main'
sudo apt-get update
sudo apt-get install -y nodejs