Logging framework for the Ada programming language
Go to file
Adrian-Ken Rueegsegger 1cf253e718 Drop Alog.Version package
Simplify build and remove unneeded Makefile targets.
2014-10-15 12:14:15 +02:00
data Add additional test for invalid config file. 2009-12-08 18:11:13 +01:00
doc doc: Create DESTDIR if necessary 2014-10-15 12:14:15 +02:00
examples examples: Rework policy DB example 2014-10-15 12:14:15 +02:00
gnat Install libs to $(PREFIX)/lib directory 2012-02-29 15:14:43 +01:00
src Move glue_syslog.c to src directory 2014-10-09 00:37:17 +02:00
tests Adjust name of test suite 2014-09-21 18:18:56 +02:00
.gitattributes Ommit .gitignore from release tarball 2014-10-15 12:14:15 +02:00
.gitignore Drop Alog.Version package 2014-10-15 12:14:15 +02:00
AUTHORS Update author email addresses 2011-11-17 11:57:36 +01:00
CHANGELOG Add changelog entry for v0.4.1 2012-02-23 15:23:53 +01:00
LICENSE Removed asciidoc-specific tags from README. 2008-03-03 15:04:57 +01:00
Makefile Drop Alog.Version package 2014-10-15 12:14:15 +02:00
README Update PGP pubkey in README 2013-10-18 12:20:37 +02:00
alog.gpr Set Compiler flags for C sources 2014-10-09 00:36:43 +02:00
alog_common.gpr Move glue_syslog.c to src directory 2014-10-09 00:37:17 +02:00
alog_tests.gpr Move glue_syslog.c to src directory 2014-10-09 00:37:17 +02:00

README

Alog README
===========

Alog is a stackable logging framework for Ada. It aims to be straight forward to
use and is easily extendable. It provides support for various logger types, log
facilities, loglevel policies and message transformations.


Prerequisites
-------------
Alog is written in Ada so you need to have GNAT installed to compile Alog. The
library comes in two flavours: base and full.
The base build includes facilities to log to files and syslog while the full
version provides more advanced log facilities like SMTP, Jabber/XMPP or
PostgreSQL. For the full version you need to have AWS (Ada Web Server) and APQ
(Ada95 database binding) installed (see the 'Installation' section).

GNAT is available for most distributions. Since Alog uses pedantic compiler
flags to check the code, make sure you have gnat version 4.3 or later installed
on your system.


Download
--------

Release version
~~~~~~~~~~~~~~~
The current release version of alog is available at
http://www.codelabs.ch/download/.

Verify a Release
~~~~~~~~~~~~~~~~
To verify the integrity and authenticity of the distribution tarball, import
the key http://www.codelabs.ch/keys/0xBB793815pub.asc and type the following
command:

  $ gpg --verify libalog-{version}.tar.bz2.sig

The key fingerprint of the public key ('0xBB793815') is:

  Key fingerprint = A2FB FF56 83FB 67D8 017B  C50C F8C5 F8B5 BB79 3815

Development version
~~~~~~~~~~~~~~~~~~~
The current development version of alog is available through its git repository:

  $ git clone http://git.codelabs.ch/git/alog.git

A browsable version of the repository is also available here:
http://git.codelabs.ch/?p=alog.git


Installation
------------
The base build of Alog has no special library dependencies. To run the testcases
(for both builds), you need to have the Ahven Unit Test-Framework installed:

* Ahven (Test-Framework):
  http://ahven.stronglytyped.org/

To compile the full build, you further need to have the following libraries
installed on your system:

* AWS (Ada Web Server):
  http://libre.adacore.com/tools/aws/

* APQ (Ada95 database binding):
  http://framework.kow.com.br/projects/show/apq

The building and installation process of Alog is simple. Just type in the
following commands. You must be root to install the library system wide.

  $ tar -xzf libalog-{version}.tar.bz2
  $ cd libalog-{version}
  $ make
  $ make PREFIX=/usr/local install

This will compile and install the base build (default). To do a full build, you
need to set and export the environment variable `TARGET` to "full" like so:

  $ export TARGET=full
  $ make
  $ make PREFIX=/usr/local install

If no `PREFIX` is specified, `$(HOME)/libraries` is used as installation
directory.


Tests
-----
After compiling and linking Alog, you can test if everything works as
expected by typing the following command:

  $ make tests

You should then see `PASS` behind each of the tests.