There are 3 parts to the complete FreeCalypso software suite which are builtindependently of each other:* The tools that run on a GNU/Linux PC or other host system are the most straightforward: there is a top level Makefile (named Makefile.hosttools if you looking at a development source snapshot, will be renamed to just Makefile in packaged releases of the host tools) that coordinates building and installing all of them.* The gsm-fw tree, which will eventually become our main GSM firmware, needs to be built with a GNU cross-compiler toolchain for ARM7. This firmware can be built for several different target devices and with different feature configurations, hence there is no singular build for it - it's more like the Linux kernel in terms of its build configuration management.* We also have a few utilities which need to be compiled to run on Calypso targets, but which are not part of gsm-fw; they are gathered in the target-utils tree. They are built with the same GNU toolchain for ARM7 as gsm-fw, but don't have any fancy configuration system.Building and installing FreeCalypso host tools==============================================If you are working with a packaged FC host tools release, just run 'make', then'make install' as root. If you are working with a development source snapshot,do 'make -f Makefile.hosttools' instead.The "standard" install directories are /usr/local/bin for binaries and/usr/local/share/freecalypso for helper files. If you need to change thesepaths to something else, you'll need to edit a bunch of individual componentMakefiles, and possibly also some source files like loadtools/defpath.c -sorry, FreeCalypso is not GNU and does not use autotools.Building and installing the ARM7 toolchain==========================================The current "official" GNU ARM toolchain for FreeCalypso consists ofbinutils-2.21.1, gcc-4.5.4 and newlib-2.0.0 with a specific set of patches andbuild configuration options. Build it as follows:1. Download these 3 source tarballs for the standard GNU+newlib components: binutils-2.21.1a.tar.bz2 gcc-core-4.5.4.tar.bz2 newlib-2.0.0.tar.gz2. Run the build+install.sh script in the toolchain directory. Read the comments in the script first for the usage instructions.The toolchain thus built will need to be in your PATH before you can compilegsm-fw or target-utils.Please note: the toolchain that is prescribed for FreeCalypso as above is*believed* to be equivalent to the one used by OsmocomBB, but there are noguarantees. Use any other toolchain at your own risk.Compiling target-utils======================Running 'make' in the target-utils tree with the ARM7 toolchain present in yourPATH will result in compalstage and loadagent being built; these are the twocomponents needed in order to use FreeCalypso loadtools. Run 'make install' toinstall these target binaries in /usr/local/share/freecalypso, which is whereloadtools will look for them.Run 'make all' in target-utils to build some other components that aren'treally needed.