| |
| Configuring the Build System |
| Update: 04 May 2006 |
| |
| |
| 1. Overview |
| |
| The "configure" script in pjproject root directory is not an autoconf script, |
| but it's just a custom script to generate "build.mak" for the build system. |
| The "build.mak" file declares the following global Makefile variables: |
| |
| MACHINE_NAME |
| The processor and hardware platform of the target. For each MACHINE_NAME, |
| there must be matching "m-*.mak" entry in "build/" subdirectory. For |
| example, when MACHINE_NAME is declared as "i386", then there must be |
| "m-i386.mak" file in "build/" subdirectory. |
| |
| OS_NAME |
| Operating system name, determines which "os-*.mak" in "build/" dir to use. |
| |
| HOST_NAME |
| Build host name, determines which "host-*.mak" to use. |
| |
| CC_NAME |
| Compiler name, determines which "cc-*.mak" to use. |
| |
| TARGET_NAME |
| Determines suffix to be added to output files (for example, |
| "libpjsip-i386-linux-gcc.a"). The value normally is equal to |
| $(MACHINE_NAME)-$(OS_NAME)-$(CC_NAME), but it can contain any value. |
| |
| CROSS_COMPILE |
| Determine the prefix to be applied when invoking build tools (for |
| example, "powerpc-rtems-"). The default is empty. |
| |
| |
| At present, the configure script CAN NOT be used for configuring cross |
| compilation. For cross compiling, you must create the "build.mak" file |
| manually. |
| |
| |
| 2. Supported Hosts and Targets |
| |
| The number of supported hosts and targets will (hopefully) increase over time. |
| See "build/" subdirectory for list of supported machines, OSes, hosts, and |
| compilers. |
| |