aboutsummaryrefslogtreecommitdiff
path: root/BUILDING.md
diff options
context:
space:
mode:
authorAqua-sama <aqua@iserlohn-fortress.net>2017-03-19 17:52:44 +0100
committerAqua-sama <aqua@iserlohn-fortress.net>2017-03-19 17:52:44 +0100
commit3897ff83b6848e4169f1641b1132714870f01801 (patch)
tree5afcddd6543ceb0109db77156a6d9d452689c0a1 /BUILDING.md
parentAdded build script (diff)
downloadsmolbote-3897ff83b6848e4169f1641b1132714870f01801.tar.xz
Updated BUILDING.md
mach script can now build tarballs
Diffstat (limited to 'BUILDING.md')
-rw-r--r--BUILDING.md51
1 files changed, 26 insertions, 25 deletions
diff --git a/BUILDING.md b/BUILDING.md
index 2af8d4b..8118420 100644
--- a/BUILDING.md
+++ b/BUILDING.md
@@ -14,73 +14,74 @@ qbs setup-qt /usr/bin/qmake-qt5 qt5
For more information on qbs, refer to the [Qbs manual][1], sections Configuring
and Managing Qt versions.
-### Steps
+### Compiling
* Create a build folder
```
-[smolbote repo]$ mkdir build
+[smolbote repo]$ mkdir ../build
```
* Run qbs
```
-[smolbote repo]$ qbs build --build-directory build profile:qt5 release
+[smolbote repo]$ qbs build -d ../build profile:qt5 release
```
-Shortened:
-```
-[smolbote repo]$ qbs build -d build profile:qt5 release
-```
-This installs the files to build/release/install-root.
+This installs the files to ../build/release/install-root.
-* Test run using the specified Qt profile (optional)
+* Test run (optional)
```
-[smolbote repo]$ qbs run --build-directory build --file src/smolbote.qbs --products poi profile:qt5 release
+[smolbote repo]$ qbs run -d ../build -p poi profile:qt5 release
```
-Shortened:
+
+### Installing
+* With qbs
```
-[smolbote repo]$ qbs run -d build -f src/smolbote.qbs -p poi profile:qt5 release
+[smolbote repo]$ sudo qbs install -d build --no-build --install-root /usr/local --settings-dir /home/usr/.config/QtProject/qbs/1.7.1 profile:qt5 release"
```
### Notes
* Windows: MSVC compiler is required because of QtWebEngine dependency
* Windows: Passing the -v or -h parameters creates a dialog box instead of
writing the output to stdout. This is Qt behaviour.
+* Windows: Use windeployqt.exe to collect the libraries
+```
+QT_DIR\QT_VER\msvc2015_64\windeployqt.exe build-PROFILE\release\qtbrowser.exe
+```
* grsecurity: You may need to exception qbs.
## Packaging
### Tarball
-Creating a tarball:
+* Creating a tarball:
```
-tar -I "lzip -9" -cf build.tar.lz release-folder/*
+tar -I"lzip -9" -cf smolbote-$(git describe --tags).tar.lz --directory=../build/release/install-root . --owner=user:1000 --group=users:1000
```
-Signing a tarball:
+* Signing a tarball:
```
-gpg -u $FINGERPRINT -b $FILENAME
+gpg -u $email -b --armor $tarball
```
-u, --local-user name
> Use name as the user ID to sign. This option is silently ignored for the list
commands, so that it can be used in an options file.
-
-b, --detach-sign
> Make a detached signature.
+--armor
+> Create a human-readable signature
-Creating checksum:
+* Verify signature:
```
-sha512sum --binary build.tar.lz > checksum.sha512
+gpg --verify $signature $tarball
```
-Verifying checksum:
+* Creating checksum:
```
-sha512sum --check checksum.sha512
+sha512sum --binary $tarball* > $tarball.sha512
```
-### Windows
-Collect the required libraries using
-
+* Verifying checksum:
```
-QT_DIR\QT_VER\msvc2015_64\windeployqt.exe build-PROFILE\release\qtbrowser.exe
+sha512sum --check $tarball.sha512
```
[1]: https://doc.qt.io/qbs/index.html