2020-06-29 03:01:30 +02:00
|
|
|
= fediblock-backend
|
|
|
|
:showtitle:
|
|
|
|
:toc: preamble
|
|
|
|
:project: fediblock-backend
|
2020-06-29 06:13:38 +02:00
|
|
|
:uri-base: https://schlomp.space/FediBlock/backend
|
2020-06-29 03:01:30 +02:00
|
|
|
:uri-branch-main: {uri-base}/src/branch/main
|
|
|
|
|
|
|
|
:uri-gcc: https://gcc.gnu.org/
|
|
|
|
:uri-clang: https://clang.llvm.org/
|
|
|
|
:uri-cmake: https://cmake.org/
|
|
|
|
:uri-catch: https://github.com/catchorg/Catch2
|
|
|
|
:uri-dpkg: https://packages.qa.debian.org/dpkg
|
|
|
|
:uri-rpm-build: http://www.rpm.org
|
|
|
|
:uri-clang-tidy: https://clang.llvm.org/extra/clang-tidy/
|
2020-06-29 06:35:19 +02:00
|
|
|
:uri-cgicc: https://www.gnu.org/software/cgicc/
|
|
|
|
:uri-nlohmann-json: https://nlohmann.github.io/json/
|
2020-06-29 03:01:30 +02:00
|
|
|
|
|
|
|
*{project}* turns form data into JSON and opens a pull request on
|
|
|
|
link:https://schlomp.space/FediBlock/data[FediBlock/data].
|
|
|
|
|
|
|
|
== Install
|
|
|
|
|
|
|
|
=== From source
|
|
|
|
|
|
|
|
==== Dependencies
|
|
|
|
|
|
|
|
* Tested OS: Linux
|
|
|
|
* C\++ compiler with C++17 support (tested: link:{uri-gcc}[GCC] 7/8/9,
|
|
|
|
link:{uri-clang}[clang] 6/7)
|
|
|
|
* link:{uri-cmake}[CMake] (at least: 3.9)
|
2020-06-29 06:48:22 +02:00
|
|
|
* link:{uri-cgicc}[cgicc] (tested: 3.2)
|
|
|
|
* link:{uri-nlohmann-json}[nlohmann-json] (tested: 3.6 / 2.1)
|
2020-06-29 03:01:30 +02:00
|
|
|
* Optional
|
|
|
|
** Tests: link:{uri-catch}[Catch] (tested: 2.5 / 1.2)
|
|
|
|
** DEB package: link:{uri-dpkg}[dpkg] (tested: 1.19)
|
|
|
|
** RPM package: link:{uri-rpm-build}[rpm-build] (tested: 4.11)
|
|
|
|
|
|
|
|
==== Get sourcecode
|
|
|
|
|
|
|
|
[source,shell]
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
git clone https://schlomp.space/FediBlock/fediblock-backend.git
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
==== Compile
|
|
|
|
|
|
|
|
[source,shell]
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
mkdir -p build && cd build
|
|
|
|
cmake ..
|
|
|
|
cmake --build . -- --jobs=$(nproc --ignore=1)
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
.CMake options:
|
|
|
|
* `-DCMAKE_BUILD_TYPE=Debug` for a debug build.
|
|
|
|
* `-DWITH_TESTS=YES` if you want to compile the tests.
|
|
|
|
* `-DWITH_CLANG-TIDY=YES` to check the sourcecode with
|
|
|
|
link:{uri-clang-tidy}[clang-tidy] while compiling.
|
|
|
|
* One of:
|
|
|
|
** `-DWITH_DEB=YES` if you want to be able to generate a deb-package.
|
|
|
|
** `-DWITH_RPM=YES` if you want to be able to generate an rpm-package.
|
|
|
|
|
|
|
|
To create a deb or rpm package, run `make package` after compiling.
|
|
|
|
|
|
|
|
include::{uri-base}/raw/branch/main/CONTRIBUTING.adoc[]
|