FreeCalypso > hg > fc-magnetite
comparison doc/Compiling @ 522:9363ea39c74c
configure.sh: implemented SUFFIX= setting, replacing raw BUILD_DIR=
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Tue, 24 Jul 2018 02:37:02 +0000 |
| parents | 69da44f2909e |
| children | 6917ea63bffa |
comparison
equal
deleted
inserted
replaced
| 521:f9125919bbe4 | 522:9363ea39c74c |
|---|---|
| 57 | 57 |
| 58 In order to build our FreeCalypso Magnetite firmware for a particular target in | 58 In order to build our FreeCalypso Magnetite firmware for a particular target in |
| 59 a particular configuration, run a command like this from the top level of the | 59 a particular configuration, run a command like this from the top level of the |
| 60 fc-magnetite tree: | 60 fc-magnetite tree: |
| 61 | 61 |
| 62 ./configure.sh gtamodem l1reconst | 62 ./configure.sh fcdev3b hybrid |
| 63 | 63 |
| 64 The first argument to the configure.sh script selects the target, and the second | 64 The first required argument to the configure.sh script selects the target, the |
| 65 argument selects the configuration. As of this writing, the following targets | 65 second required argument selects the build configuration recipe, and any further |
| 66 are supported: | 66 arguments beyond these two (optional) allow changing various configurable |
| 67 settings that aren't strictly fixed by the hardware target or by the build | |
| 68 configuration recipe. | |
| 69 | |
| 70 As of this writing, the following hardware targets are supported: | |
| 67 | 71 |
| 68 c11x Motorola C11x/12x | 72 c11x Motorola C11x/12x |
| 69 c139 Motorola C139/140 | 73 c139 Motorola C139/140 |
| 70 dsample TI's D-Sample C05 board (no working radio currently) | 74 dsample TI's D-Sample C05 board (no working radio currently) |
| 71 fcdev3b FreeCalypso FCDEV3B | 75 fcdev3b FreeCalypso FCDEV3B |
| 73 pirelli Pirelli DP-L10 | 77 pirelli Pirelli DP-L10 |
| 74 | 78 |
| 75 For the available configurations (the second required argument to the configure | 79 For the available configurations (the second required argument to the configure |
| 76 script), look in the configs directory and read the various write-ups under doc. | 80 script), look in the configs directory and read the various write-ups under doc. |
| 77 | 81 |
| 78 Each configuration is built in its own directory; by default the build directory | 82 Each configuration is built in its own directory; the name of this build |
| 79 is named build-$TARGET-$CONFIG, i.e., for the example configure.sh line above, | 83 directory takes the form of build-$TARGET-$CONFIG$SUFFIX, i.e., for the example |
| 80 the resulting build directory will be build-gtamodem-l1reconst. You can change | 84 configure.sh line above, the resulting build directory will be named |
| 81 the name of this directory by appending a BUILD_DIR=dir argument to the | 85 build-fcdev3b-hybrid. The $SUFFIX part is empty by default, but can be set on |
| 82 ./configure.sh line after the two required arguments. | 86 the command line in order to distinguish non-standard builds that had some |
| 87 tunable settings changed to values other than the default. For example, if you | |
| 88 are building the hybrid configuration for the fcdev3b target as above, but you | |
| 89 need to disable MELODY_E2, you could run the configure script as follows: | |
| 90 | |
| 91 ./configure.sh fcdev3b hybrid MELODY_E2=0 SUFFIX=-noe2 | |
| 92 | |
| 93 The build directory would then become build-fcdev3b-hybrid-noe2, and the | |
| 94 specified suffix will also be included in the firmware version ID string that | |
| 95 gets compiled into the image. | |
| 83 | 96 |
| 84 To actually compile the firmware, cd into the created build directory and run | 97 To actually compile the firmware, cd into the created build directory and run |
| 85 make there. Unfortunately the use of TI's proprietary compiler via Wine makes | 98 make there. Unfortunately the use of TI's proprietary compiler via Wine makes |
| 86 the build quite slow, but there is a trick to speed it up: if you run some | 99 the build quite slow, but there is a trick to speed it up: if you run some |
| 87 other Wine program that stays open and does not exit on its own (e.g., wine cmd) | 100 other Wine program that stays open and does not exit on its own (e.g., wine cmd) |
