From 7b8b7bdc680d6e223d37cc8aecfd5c5776a8b177 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Fri, 15 Jun 2018 22:09:31 +0200 Subject: Update building.md --- BUILDING.md | 42 +++++++++++++++++++++++++----------------- linux/makepkg/PKGBUILD | 2 +- 2 files changed, 26 insertions(+), 18 deletions(-) diff --git a/BUILDING.md b/BUILDING.md index f654f8f..64bcd1e 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -1,21 +1,21 @@ ## Before you start ### [Qt](https://www.qt.io/) -An up-to-date version of Qt is required, even though the code, with minor -patches, can work with anything after 5.7. +Minimal required version is 5.10. -An up-to-date version of QtWebEngine is highly recommended also due to fixes to -Blink that do _not_ get backported. QtWebEngine can be built with older versions -of Qt. +An up-to-date version of QtWebEngine is highly recommended due to fixes to Blink +that do _not_ get backported. QtWebEngine can be built with older versions of +Qt, so consider building it if you use the LTS Qt release. ### [boost](http://www.boost.org/) -Required component: program_options +Required component: program_options, string algorithms -### cmake -Minimal version 3.1.0, but please use something up-to-date. +### cmake and a build tool +Minimal version 3.1.0, only 3.10+ is tested; your build tool of choice (make, +ninja, etc.) -### A working compiler with C++17 support - - gcc 7 +### A preferably working compiler with C++17 support + - gcc 7 or later - clang 4 or later - only MSVC is supported on Windows due to QtWebEngine @@ -26,9 +26,19 @@ smolbote follows the generic cmake build template: # 1. Clone the repository hg clone https://neueland.iserlohn-fortress.net/smolbote.hg +# (optional) you can also get checksums for some commits +# get node for the current commit +hg log -r tip --template='{node}' +# get sha512 checksums and signature +curl -O https://neueland.iserlohn-fortress.net/smolbote/integrity/$node +curl -O https://neueland.iserlohn-fortress.net/smolbote/integrity/$node.sig +# verify signature and files +gpg --verify $node.sig +sha512sum --check --quiet $node + # 2. Generate Makefile -mkdir release && cd release -cmake -DCMAKE_BUILD_TYPE=Release ../smolbote.hg +mkdir path/to/build && cd path/to/build +cmake -DCMAKE_BUILD_TYPE=Release path/to/smolbote.hg # 3. Build make -j 4 @@ -37,17 +47,15 @@ make -j 4 make install ~~~ -### howto --verbose - -#### -DCMAKE_BUILD_TYPE +### -DCMAKE_BUILD_TYPE Controls what flags and optimizations are set. Possible values: Debug, Release, RelWithDebInfo, MinSizeRel -#### -DCMAKE_INSTALL_PREFIX +### -DCMAKE_INSTALL_PREFIX Sets the install location. Binaries will be written to bin/, and plugins to lib/smolbote/. -#### Using libc++ +### Using libc++ You can use libc++ over stdlibc++ by setting UseLibCpp to On. Requires clang. ~~~ sh diff --git a/linux/makepkg/PKGBUILD b/linux/makepkg/PKGBUILD index 9783fc8..b088409 100644 --- a/linux/makepkg/PKGBUILD +++ b/linux/makepkg/PKGBUILD @@ -13,7 +13,7 @@ license=('GPL3') replaces=('smolbote-git') depends=('qt5-webengine>=5.10.1' 'boost-libs>=1.66.0') -makedepends=('mercurial' 'cmake' 'pkg-config' 'ninja' 'qt5-webengine>=5.10.1' 'boost>=1.66.0') +makedepends=('mercurial' 'cmake' 'pkg-config' 'ninja') # this is the central repository source=("smolbote-hg::hg+https://neueland.iserlohn-fortress.net/smolbote.hg") -- cgit v1.2.1