Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
biboumi
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
98
Issues
98
List
Boards
Labels
Service Desk
Milestones
Merge Requests
12
Merge Requests
12
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
louiz’
biboumi
Commits
c7299656
Commit
c7299656
authored
May 23, 2016
by
louiz’
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'rst'
parents
8f80b9c5
6f3dacc4
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
293 additions
and
273 deletions
+293
-273
INSTALL.rst
INSTALL.rst
+50
-45
README.rst
README.rst
+10
-9
doc/biboumi.1.rst
doc/biboumi.1.rst
+233
-219
No files found.
INSTALL.
md
→
INSTALL.
rst
View file @
c7299656
INSTALL
=======
tl;dr
=====
-----
cmake . && make && ./biboumi
cmake . && make && ./biboumi
If that didn’t work, read on.
Dependencies
============
------------
Build and runtime dependencies:
Tools:
~~~~~~
- A C++14 compiler (clang >= 3.4 or gcc >= 4.9 for example)
- CMake
- ronn (optional) to build the man page
Libraries:
~~~~~~~~~~
-
expat
expat_
Used to parse XML from the XMPP server.
http://expat.sourceforge.net/
-
libiconv
libiconv_
Encoding from anything into UTF-8
http://www.gnu.org/software/libiconv/
-
libuuid
libuuid_
Generate unique IDs
http://sourceforge.net/projects/libuuid/
-
libidn
(optional, but recommended)
libidn_
(optional, but recommended)
Provides the stringprep functionality. Without it, JIDs for IRC users are
not provided.
http://www.gnu.org/software/libidn/
-
c-ares
(optional, but recommended)
c-ares_
(optional, but recommended)
Asynchronously resolve domain names. This offers better reactivity and
performances when connecting to a big number of IRC servers at the same
time.
http://c-ares.haxx.se/
-
libbotan
1.11 (optional)
libbotan_
1.11 (optional)
Provides TLS support. Without it, IRC connections are all made in
plain-text mode.
Other branches than the 1.11 are not supported.
http://botan.randombit.net/
-
litesql
(optional)
litesql_
(optional)
Provides a way to store various options in a (sqlite3) database. Each user
of the gateway can store their own values (for example their prefered port,
or their IRC password).
http://git.louiz.org/litesql
-
systemd
(optional)
systemd_
(optional)
Provides the support for a systemd service of Type=notify. This is useful only
if you are packaging biboumi in a distribution with Systemd.
Configure
=========
---------
Configure the build system using cmake, there are many solutions to do that,
the simplest is to just run
cmake .
cmake .
in the current directory.
...
...
@@ -90,67 +88,74 @@ The list of available options:
- POLLER: lets you select the poller used by biboumi, at
compile-time. Possible values are:
EPOLL: use the Linux-specific epoll(7). This is the default on Linux.
POLL: use the standard poll(2). This is the default value on all non-Linux
platforms.
- EPOLL: use the Linux-specific epoll(7). This is the default on Linux.
- POLL: use the standard poll(2). This is the default value on all non-Linux
platforms.
- WITH_BOTAN and WITHOUT_BOTAN: The first force the usage of the Botan library,
if it is not found, the configuration process will fail. The second will
make the build process ignore the Botan library, it will not be used even
if it's available on the system. If none of these option is specified, the
library will be used if available and will be ignored otherwise.
if it is not found, the configuration process will fail. The second will
make the build process ignore the Botan library, it will not be used even
if it's available on the system. If none of these option is specified, the
library will be used if available and will be ignored otherwise.
- WITH_LIBIDN and WITHOUT_LIBIDN: Just like the WITH(OUT)_BOTAN options, but
for the IDN library
for the IDN library
- WITH_SYSTEMD and WITHOUT_SYSTEMD: Just like the other WITH(OUT)_* options,
but for the Systemd library
Example:
cmake . -DCMAKE_BUILD_TYPE=release -DCMAKE_INSTALL_PREFIX \
-DWITH_BOTAN=1 -DWITHOUT_SYSTEMD=1
cmake . -DCMAKE_BUILD_TYPE=release -DCMAKE_INSTALL_PREFIX=/usr
-DWITH_BOTAN=1 -DWITHOUT_SYSTEMD=1
This command will configure the project to build a release, with TLS enabled
(using Botan) but without using Systemd (even if available on the system).
Build
=====
-----
Once you’ve configured everything using cmake, build the project
-
Once you’ve configured everything using cmake, build the project
make
make
Install
=======
-------
And then, optionaly, Install the software system-wide
-
And then, optionaly, Install the software system-wide
make install
make install
Testing
=======
-------
You can run the test suite with
make check
make check
This project uses the Catch unit test framework, it will be automatically
fetched with cmake, by cloning the github repository.
You can also check the overall code coverage of this test suite by running
make coverage
make coverage
This requires gcov and lcov to be installed.
Run
===
---
Run the software using the `biboumi` binary. Read the documentation (the
man page biboumi(1) or the
`biboumi.1.
md`
file) for more information on how
man page biboumi(1) or the `biboumi.1.
rst`_
file) for more information on how
to use biboumi.
.. _expat: http://expat.sourceforge.net/
.. _libiconv: http://www.gnu.org/software/libiconv/
.. _libuuid: http://sourceforge.net/projects/libuuid/
.. _libidn: http://www.gnu.org/software/libidn/
.. _libbotan: http://botan.randombit.net/
.. _c-ares: http://c-ares.haxx.se/
.. _litesql: http://git.louiz.org/litesql
.. _systemd: https://www.freedesktop.org/wiki/Software/systemd/
.. _biboumi.1.rst: doc/biboumi.1.rst
README.
md
→
README.
rst
View file @
c7299656
...
...
@@ -21,21 +21,21 @@ important goal is to keep the software (and its code) light and simple.
Install
=======
Refer to the
[
INSTALL
][]
file.
-------
Refer to the
INSTALL_
file.
Usage
=====
Read
[
the documentation
](
doc/biboumi.1.md
)
.
Usage
-----
Read `the documentation`_.
Authors
=======
-------
Florent Le Coz (louiz’) <louiz@louiz.org>
Contact/Support
===============
---------------
* XMPP ChatRoom: biboumi@muc.poez.io
* Report a bug: https://dev.louiz.org/projects/biboumi/issues/new
...
...
@@ -51,11 +51,12 @@ beforehand.
Licence
=======
-------
Biboumi is Free Software.
(learn more: http://www.gnu.org/philosophy/free-sw.html)
Biboumi is released under the zlib license.
Please read the COPYING file for details.
[
INSTALL
]:
INSTALL
.. _INSTALL: INSTALL.rst
.. _the documentation: doc/biboumi.1.rst
doc/biboumi.1.
md
→
doc/biboumi.1.
rst
View file @
c7299656
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment