blob: 790848f05da0d8dc2435f14479236679f1eac0f1 [file] [log] [blame]
Benny Prijono42c5b9e2006-05-10 19:24:40 +00001
2 Configuring the Build System
3 Update: 04 May 2006
4
5
6 1. Overview
7
8 The "configure" script in pjproject root directory is not an autoconf script,
9but it's just a custom script to generate "build.mak" for the build system.
10The "build.mak" file declares the following global Makefile variables:
11
12 MACHINE_NAME
13 The processor and hardware platform of the target. For each MACHINE_NAME,
14 there must be matching "m-*.mak" entry in "build/" subdirectory. For
15 example, when MACHINE_NAME is declared as "i386", then there must be
16 "m-i386.mak" file in "build/" subdirectory.
17
18 OS_NAME
19 Operating system name, determines which "os-*.mak" in "build/" dir to use.
20
21 HOST_NAME
22 Build host name, determines which "host-*.mak" to use.
23
24 CC_NAME
25 Compiler name, determines which "cc-*.mak" to use.
26
27 TARGET_NAME
28 Determines suffix to be added to output files (for example,
29 "libpjsip-i386-linux-gcc.a"). The value normally is equal to
30 $(MACHINE_NAME)-$(OS_NAME)-$(CC_NAME), but it can contain any value.
31
32 CROSS_COMPILE
33 Determine the prefix to be applied when invoking build tools (for
34 example, "powerpc-rtems-"). The default is empty.
35
36
37 At present, the configure script CAN NOT be used for configuring cross
38compilation. For cross compiling, you must create the "build.mak" file
39manually.
40
41
42 2. Supported Hosts and Targets
43
44 The number of supported hosts and targets will (hopefully) increase over time.
45See "build/" subdirectory for list of supported machines, OSes, hosts, and
46compilers.
47