Skip to content

particle-iot/buildpack-hal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Buildpack for HAL firmware

Buildpack for modern (HAL based) Particle firmware.

Build Status

Particle firmware
HAL (you are here) / Legacy
Base

This image inherits base buildpack.

Building image

Before building this image, build or pull buildpack-base.

$ export BUILDPACK_IMAGE=hal
$ git clone "git@github.com:particle-iot/buildpack-${BUILDPACK_IMAGE}.git"
$ cd buildpack-$BUILDPACK_IMAGE
$ ./scripts/build-and-push

Releasing

This repository is added to our Travis CI. To release a new version of this buildpack all you need to do is to create a new Git tag and push it to this repo and Travis will do all the work.

Running

$ mkdir -p ~/tmp/input && mkdir -p ~/tmp/output && mkdir -p ~/tmp/cache
$ docker run --rm \
  -v ~/tmp/input:/input \
  -v ~/tmp/output:/output \
  -v ~/tmp/cache:/cache \
  -e FIRMWARE_REPO=https://github.com/particle-iot/firmware.git#v0.5.1 \
  -e PLATFORM_ID=6 \
  particle/buildpack-hal

Input files

Source files have to be placed in ~/tmp/input

Output files

After build ~/tmp/output will be propagated with:

  • run.log - stdout combined with stderr
  • stderr.log - contents of stderr, usefull to parse gcc errors

Files only available if compilation succeeds:

  • firmware.bin - compiled firmware
  • memory-use.log - firmware memory use

ARM GCC version

When building image, couple variations will be created (you can see them by typing docker images | grep particle/buildpack-hal). Most important are different ARM GCC versions you can use.