As of August 2020 the site you are on (wiki.newae.com) is deprecated, and content is now at rtfm.newae.com.

Difference between revisions of "Target Firmware Build System"

From ChipWhisperer Wiki
Jump to: navigation, search
Line 24: Line 24:
  
 
Where the application Makefile (e.g., simpleserial-aes/Makefile) described both the build commands to use and what files to build. The PLATFORM_INCLUDE.mk was only used to pull in hardware-specific files (the HAL).
 
Where the application Makefile (e.g., simpleserial-aes/Makefile) described both the build commands to use and what files to build. The PLATFORM_INCLUDE.mk was only used to pull in hardware-specific files (the HAL).
 +
 +
[[Category:Software Usage]]

Revision as of 09:37, 27 March 2017

The build system for the "victim" target firmware is related to all files in the folder chipwhisperer/hardware/victims/firmware. This page describes how the build system works.

Note there is two build systems - Release 3.3.0 and later use the newer build system. The old build system is described later, and should not be used for current development.

The build system generally has the following important folders/Makefiles:

application-specific-folder/Makefile
application-specific-folder/Makefile.platform [OPTIONAL]
crypto/Makefile.crypto
hal/Makefile.hal
Makefile.inc


To build an application, you run make in that application's folder. You can either specify the platform to build for at the command prompt, or you can save it to a specific file. For example to build simpleserial-aes for the XMEGA Target (used in CW-Lite):

$ cd chipwhisperer/hardware/victims/firmware/simpleserial-aes
$ make PLATFORM=CW303

Old Build System

The old build system could only work with AVR/XMEGA targets. It had the following files defining what was built:

application-folder/Makefile
hal/PLATFORM_INCLUDE.mk

Where the application Makefile (e.g., simpleserial-aes/Makefile) described both the build commands to use and what files to build. The PLATFORM_INCLUDE.mk was only used to pull in hardware-specific files (the HAL).