From ff1092da439ed346b1a4d29d2bea50443cf41280 Mon Sep 17 00:00:00 2001 From: Matthias Neeracher Date: Mon, 1 Dec 2014 04:12:23 +0100 Subject: [PATCH] Compute sketch binary size after build --- AVRsack/ASBuilder.swift | 1 + AVRsack/BuildProject | 10 ++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/AVRsack/ASBuilder.swift b/AVRsack/ASBuilder.swift index b0314f0..695c6a1 100644 --- a/AVRsack/ASBuilder.swift +++ b/AVRsack/ASBuilder.swift @@ -54,6 +54,7 @@ class ASBuilder { args.append("board="+board) args.append("mcu="+boardProp["build.mcu"]) args.append("f_cpu="+boardProp["build.f_cpu"]) + args.append("max_size"+boardProp["upload.maximum_size"]) args.append("core="+boardProp["build.core"]) args.append("variant="+boardProp["build.variant"]) args.append("libs="+libPath) diff --git a/AVRsack/BuildProject b/AVRsack/BuildProject index d4ca0e7..6f03800 100755 --- a/AVRsack/BuildProject +++ b/AVRsack/BuildProject @@ -17,6 +17,7 @@ BUILD = { 'f_cpu' => 16000000, 'core' => 'arduino', 'variant' => 'standard', + 'max_size'=> 32256 } def parseArguments @@ -128,9 +129,10 @@ File.open("Rakefile", 'w') do |rakeFile| rakeFile.print < '#{BUILD['project']}.elf' do |task| sh "%s '%s' '%s'" % [HEX, task.prerequisites[0], task.name] end -task :default => ['#{BUILD['project']}.eep', '#{BUILD['project']}.hex'] +task :default => ['#{BUILD['project']}.eep', '#{BUILD['project']}.hex'] do + szCmd = "%s '%s' | tail -1 | awk '{print $4}'" % [SIZE, '#{BUILD['project']}.hex'] + sz = %x{#{'#'}{szCmd}}.chomp + puts "Binary sketch size: "+sz+" bytes (of a #{BUILD['max_size']} byte maximum)" +end END_RAKE end