<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ouroboros/src/tools/CMakeLists.txt, branch master</title>
<subtitle>Ouroboros main repository</subtitle>
<id>http://www.ouroboros.rocks/cgit/ouroboros/atom?h=master</id>
<link rel='self' href='http://www.ouroboros.rocks/cgit/ouroboros/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/'/>
<updated>2026-02-13T08:22:29+00:00</updated>
<entry>
<title>build: Refactor CMake back to in-tree CMakeLists</title>
<updated>2026-02-13T08:22:29+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2026-02-02T21:50:17+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=3796f6b04b5fce183e5480b57725545cda033f99'/>
<id>urn:sha1:3796f6b04b5fce183e5480b57725545cda033f99</id>
<content type='text'>
This moves the build definitions back to src/ subdirectories
(CMakeLists.txt per component). Configuration and dependencies are
kept out of tree. Configuration options are bundled into cmake/config/
modules. Dependencies are grouped by component (system/, crypt/, eth/,
coverage/, etc.). It now consistently uses target-based commands
(target_include_directories, target_link_libraries) instead of global
include_directories(). Proper PRIVATE/PUBLIC visibility for executable
link libraries. CONFIG_OUROBOROS_DEBUG now properly set based on being
a valid debug config (not just checking the string name).

It also adds OuroborosTargets export for find_package() support and
CMake package config files (OuroborosConfig.cmake) for easier
integration with CMake projects.

The build logic now follows more idiomatic CMake practices with
configuration separated from target definitions.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>build: Refactor CMake modules</title>
<updated>2026-01-07T09:00:06+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri@ouroboros.rocks</email>
</author>
<published>2025-12-23T10:59:45+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=48c294105f5123dc876fbad199ec1e0166d82a18'/>
<id>urn:sha1:48c294105f5123dc876fbad199ec1e0166d82a18</id>
<content type='text'>
This moves the CMake build logic out of the source tree and splits it
up into a more modular form. The tests now have a CMakeLists.txt file
in their respective source directory.

Signed-off-by: Dimitri Staessens &lt;dimitri@ouroboros.rocks&gt;
Signed-off-by: Sander Vrijders &lt;sander@ouroboros.rocks&gt;
</content>
</entry>
<entry>
<title>ipcpd: Add broadcast IPCP</title>
<updated>2018-10-24T09:58:49+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri.staessens@ugent.be</email>
</author>
<published>2018-10-24T08:06:23+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=da60c56365ac13a262ffa6adaba7540c4d914843'/>
<id>urn:sha1:da60c56365ac13a262ffa6adaba7540c4d914843</id>
<content type='text'>
This adds a broadcast IPCP that allows us to easily create multicast
applications. The broadcast IPCP accepts flows for "&lt;layer_name&gt;.mc".
A tool, obc (Ouroboros broadcast), is added that sends and reads a
message to a broadcast layer.

Signed-off-by: Dimitri Staessens &lt;dimitri.staessens@ugent.be&gt;
Signed-off-by: Sander Vrijders &lt;sander.vrijders@ugent.be&gt;
</content>
</entry>
<entry>
<title>tools: Add ovpn application</title>
<updated>2018-10-22T14:38:44+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@ugent.be</email>
</author>
<published>2018-10-22T12:52:51+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=e161da9a580152e52a84c5ca31422355307bab42'/>
<id>urn:sha1:e161da9a580152e52a84c5ca31422355307bab42</id>
<content type='text'>
This adds the ovpn application which allows to send TCP/IP traffic
over Ouroboros. This is done by opening a TUN interface and allocating
a flow to another ovpn application so that applications using TCP/IP
can be used over Ouroboros as well.

Signed-off-by: Sander Vrijders &lt;sander.vrijders@ugent.be&gt;
Signed-off-by: Dimitri Staessens &lt;dimitri.staessens@ugent.be&gt;
</content>
</entry>
<entry>
<title>build: Allow out-of-tree build of tools</title>
<updated>2018-02-14T16:58:51+00:00</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri.staessens@ugent.be</email>
</author>
<published>2018-02-14T12:55:00+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=91012d9af758a48c4c57fc940dfcc8a581fa46ac'/>
<id>urn:sha1:91012d9af758a48c4c57fc940dfcc8a581fa46ac</id>
<content type='text'>
This removes the dependencies for the tools on some ouroboros internal
headers (endian.h and time_utils.h) so they can be built out-of-tree.
The echo-app tool has been renamed oecho and the cbr tool has been
renamed ocbr.

Signed-off-by: Dimitri Staessens &lt;dimitri.staessens@ugent.be&gt;
Signed-off-by: Sander Vrijders &lt;sander.vrijders@ugent.be&gt;
</content>
</entry>
<entry>
<title>tools: Add operf tool</title>
<updated>2016-10-30T12:24:19+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-10-30T09:53:04+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=05fa4879dd8c70156fd98eabed4634098b0feecb'/>
<id>urn:sha1:05fa4879dd8c70156fd98eabed4634098b0feecb</id>
<content type='text'>
This tool allows bidirectional bandwidth measurement between a client
and server application. The server reflects all traffic back to the
client. The traffic can be capped at a certain rate or set to flood.
</content>
</entry>
<entry>
<title>tools: Add a ping application</title>
<updated>2016-08-03T11:10:54+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-08-02T22:20:18+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=ca494922f3815077efbcd28da3748df38c8a6961'/>
<id>urn:sha1:ca494922f3815077efbcd28da3748df38c8a6961</id>
<content type='text'>
Ouoroboros ping application mimics the GNU ping application.
do "oping --help" for options.
</content>
</entry>
<entry>
<title>tools, lib: cbr tool for bandwidth testing</title>
<updated>2016-05-24T18:45:30+00:00</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-05-24T18:38:01+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=d74d67a0e2d3de0ec208ed9b839815a70d84f727'/>
<id>urn:sha1:d74d67a0e2d3de0ec208ed9b839815a70d84f727</id>
<content type='text'>
The tool sends constant bandwidth traffic between a client and a
server. cbr --help for more info.

Adds time_utils.h to the library containing useful functions for
arithmetic with timespec and timeval structures.
</content>
</entry>
<entry>
<title>tools: Simple echo application</title>
<updated>2016-03-21T16:41:29+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-03-21T16:41:29+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=3c6f5161b2903c1bf59bcc959301a7390c3c5c79'/>
<id>urn:sha1:3c6f5161b2903c1bf59bcc959301a7390c3c5c79</id>
<content type='text'>
This adds a simple echo application written to show application how to
use the API. It also updates the dev.h header file with the insights
gained from performing this excercise.
</content>
</entry>
<entry>
<title>src: Rename daemons and add tools folder</title>
<updated>2016-02-22T16:34:21+00:00</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-02-22T16:34:21+00:00</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=59c9251f3584e8d016c41305ec272bfbf662405a'/>
<id>urn:sha1:59c9251f3584e8d016c41305ec272bfbf662405a</id>
<content type='text'>
This renames the daemons to end with a 'd', as is common for UNIX
daemons. It also adds a tools folder, that will hold the tools of the
Ouroboros prototype. Examples are a simple echo application, an
application to instruct the IRM ...
</content>
</entry>
</feed>
