CLEAN_BUILD=YES (default) - clean all, then build all
CLEAN_BUILD=NO - clean only multi-input targets (CC, OP), usually safe
CLEAN_BUILD=NEVER - no clean at all, invalid multi-input targes, but fast
Now 'make release' on the top level will build release package.
For Windows it will build OpenPilot GCS Installer and all firmware
binaries which are now included into the GCS distribution and will
be installed into the <path>/OpenPilot/share/firmware-<version>
directory.
For other systems it will build all firmware files and the GCS, but
latter is not packaged yet.
In preparation for release build the Windows installer source is moved
out of ground/gcs source tree into release directory. It is also disabled
in the qmake source file and removed from top level Makefile.
This does not affect the size of the image or the RAM
used by the firmware image. All debugging symbols are
stripped from the elf file during the conversion to a
.bin file.
The board info blob is stored in the last 128 bytes of the
bootloader's flash bank. You can access this data from the
application firmware like this:
#include <pios_board_info.h>
if (pios_board_info_blob.magic == PIOS_BOARD_INFO_BLOB_MAGIC) {
/* Check some other fields */
}
DO NOT link pios_board_info.c into your application firmware.
Only bootloaders should provide the content for the board info
structure. The application firmware is only a user of the data.
Since msysGit lacks the install command, simple cp -f replacement
is provided. Don't forget to copy it into the msysGit bin subdirectory.
Introduced CLEAN_BUILD=NO make option to test packaging w/o cleaning.
Recommended for test builds only, not for production run.
make -j works great after PyMite dependency fix by commit
0005729056
So comment is updated as well.
This is done by separating PyMite-dependent sources and making them
dependent on autogenerated python code. This was tested with make -j
on Windows and worked fine. It failed with errors otherwise:
In file included from ../Libraries/PyMite/vm/class.c:28:
../Libraries/PyMite/vm/pm.h:198: fatal error: pmfeatures.h: No such file or directory