summaryrefslogtreecommitdiff
path: root/readme.txt
blob: 8cb62c2fbaf5860e61d41ec059b932ec6e1a9e10 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62


libao Binding for the Ada Programming Language
==============================================


Overview
--------

This a thick binding, so the rough edges of C have all been filed off. In
particular:

 * ao_initialize/ao_shutdown are now automatic
 * ao_option/Option_List objects are deallocated when they go out of scope
 * ao_device/Device objects are automatically closed upon program end
 * All error codes have been converted to exceptions

A short example program is available in /example/.


Dependencies
------------

An Ada 2012 compiler and standard library (build)
A C compiler and standard library (build)
gprbuild (build)
libao (run)


Build Instructions
------------------

Ensure that all dependencies are installed, including any developer or header
packages for libao. Then the following commands will build and install the
binding:

    gprbuild aao.gpr
    gprinstall -p -m aao.gpr

The other gpr file, example.gpr, can be used to build the short example
programs provided.


Further Information
-------------------

C API of libao:
https://xiph.org/ao/doc/libao-api.html


Credits and Legal
-----------------

This binding and the short Ada example were written by Jedidiah Barber.

The short C example program was written by Stan Seibert.

All code of this binding and example programs is released into the public
domain. Consult unlicense.txt and the header of the C example program for
further information.