FreeCalypso > hg > gsm-codec-lib
annotate INSTALL @ 529:79cd992de3ad
libgsmfr2: API definitions for TFO transform
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Thu, 19 Sep 2024 08:07:26 +0000 |
| parents | a53225b44ea5 |
| children |
| rev | line source |
|---|---|
|
208
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 Dependency graph |
|
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 ================ |
|
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 |
|
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 The complete Themyscira GSM codec libraries & utilities package as presented |
|
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 here consists of two principal parts: |
|
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 |
|
454
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
7 Division 1: libgsmefr, libgsmfr2 and libtwamr, the set of C code libraries |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
8 intended to be usable by other software; |
|
208
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 |
|
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 Division 2: various command line utilities that were developed under the |
|
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 umbrella of this project and are being released accordingly. |
|
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 |
|
454
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
13 Division 2 components have a compile-time dependency on Division 1 (most of |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
14 these Division 2 command line utilities link with the libraries), but not the |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
15 other way around: none of the core libraries have any dependency on any other |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
16 part of this package, not even on each other. |
|
208
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 |
|
454
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
18 Previous versions of gsm-codec-lib suite had a dependency on libgsm, the |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
19 original GSM 06.10 implementation library from 1990s, and our suite was |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
20 originally architectured as extending and building on top of libgsm. However, |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
21 this dependency has now been eliminated, and our new GSM codec libraries and |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
22 utilities suite is now completely independent from historical libgsm. |
|
208
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 |
|
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 Compiling and installing Themyscira libraries and utilities |
|
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 =========================================================== |
|
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 |
|
454
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
27 The configuration and build process has been fully revamped since previous |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
28 versions: |
|
208
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 |
|
454
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
30 * You now need to run ./configure before running 'make' - however, please note |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
31 that our ./configure script is hand-coded, not Autotools/autohell, hence |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
32 there is no autoreconf nonsense involved. |
|
208
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 |
|
454
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
34 * When you run ./configure, you get the opportunity to either leave CC=, CFLAGS= |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
35 and the install prefix at their default values, or change them to your own |
|
4b6fa53a8240
INSTALL: document the new way
Mychaela Falconia <falcon@freecalypso.org>
parents:
209
diff
changeset
|
36 preferences. |
|
208
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 |
|
461
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
38 * There are no more mandatory install-lib and install-utils targets, instead |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
39 you get standard 'make install' that installs everything into whichever |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
40 prefix you chose at configure time. (The ability to install only Division 1 |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
41 components with 'make install-lib' or only Division 2 components with |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
42 'make install-utils' is still available, but it is now an experts-only |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
43 option: if you don't see yourself needing this type of split install, then |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
44 you don't need it.) |
|
208
13d27ff5b5df
add documents for release
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 |
|
461
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
46 The default install prefix is /usr/local, following the general standard for |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
47 software packages and configure scripts. To change this install location, pass |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
48 the standard --prefix=/wherever option to ./configure script. In addition to |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
49 --prefix, our configure script accepts --exec-prefix, --bindir, --includedir |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
50 and --libdir options, following the common standard. |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
51 |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
52 The default compilation settings are CC=gcc and CFLAGS=-O2; to change them, |
|
a53225b44ea5
further refinement of build system:
Mychaela Falconia <falcon@freecalypso.org>
parents:
454
diff
changeset
|
53 pass CC=my-whatever-cc and/or CFLAGS="-fwhatever-flags" to configure. |
