diff options
Diffstat (limited to 'fw')
| -rw-r--r-- | fw/app/meson.build | 59 | ||||
| -rw-r--r-- | fw/meson.build | 20 | 
2 files changed, 79 insertions, 0 deletions
diff --git a/fw/app/meson.build b/fw/app/meson.build index 63c3c01..6665fe4 100644 --- a/fw/app/meson.build +++ b/fw/app/meson.build @@ -1 +1,60 @@ +external_project = import('unstable-external_project') +  application_source = meson.current_source_dir() + +external_project.add_project( +  configure_zephyr, +  configure_options: [ +    '--source-tree', application_source, +    '--build-tree', meson.current_build_dir() / 'build', +    '--board', board, +    '--zephyr-base', zephyr, +    '--zephyr-modules', ';'.join(zephyr_modules), +  ], +  verbose: true, +) + +application = custom_target( +  output: ['application.bin'], +  command: [ +    build_zephyr, +    '--build-tree', meson.current_build_dir() / 'build', +    '--binary-name', 'zephyr.bin', +    '--target-name', 'application.bin', +  ], +) + +version = '0.0.0' +header_size = '0x200' +slot_size = '0xc0000' + +update_image = custom_target( +  output: ['update-image.bin'], +  command: [ +    imgtool, +    'sign', +    '--version', version, +    '--header-size', header_size, +    '--slot-size', slot_size, +    '--key', signing_key, +    application, +    '@OUTPUT@', +  ], +  depends: application, +) + +application_signed_confirmed = custom_target( +  output: ['application.signed.confirmed.bin'], +  command: [ +    imgtool, +    'sign', +    '--version', version, +    '--header-size', header_size, +    '--slot-size', slot_size, +    '--key', signing_key, +    '--confirm', +    application, +    '@OUTPUT@', +  ], +  depends: application, +) diff --git a/fw/meson.build b/fw/meson.build index bc70142..8f45d5b 100644 --- a/fw/meson.build +++ b/fw/meson.build @@ -1,3 +1,23 @@ +board = 'nucleo_f767zi' + +fs = import('fs') +signing_key = fs.expanduser('~') / 'mcuboot' / 'key.pem' +  subdir('rtos')  subdir('app') +subdir('btl')  subdir('sim') + +factory_image = custom_target( +  output: ['factory-image.bin'], +  command: [ +    make_factory_image, +    '--bootloader', bootloader, +    '--application', application_signed_confirmed, +    '--factory-image', '@OUTPUT@', +  ], +  depends: [ +    bootloader, +    application_signed_confirmed, +  ], +)  | 
