Replace python one liner with script to build dfu files

This commit is contained in:
Dominic Spill
2017-01-24 15:44:15 -07:00
parent 8b51f21c37
commit fdeaa92b7e
2 changed files with 9 additions and 2 deletions

7
firmware/dfu.py Normal file
View File

@ -0,0 +1,7 @@
import os.path
import struct
with open("_header.bin", "wb") as f:
x = struct.pack('<H', os.path.getsize('hackrf_usb_dfu.bin') // 512 + 1)
y = [0xda, 0xff, x[0], x[1], 0xff, 0xff, 0xff, 0xff]
f.write(bytearray(y))

View File

@ -194,9 +194,9 @@ macro(DeclareTargets)
COMMAND rm -f _tmp.dfu _header.bin COMMAND rm -f _tmp.dfu _header.bin
COMMAND cp ${PROJECT_NAME}_dfu.bin _tmp.dfu COMMAND cp ${PROJECT_NAME}_dfu.bin _tmp.dfu
COMMAND ${DFU_COMMAND} COMMAND ${DFU_COMMAND}
COMMAND python -c \"import os.path\; import struct\; print\('0000000: da ff ' + ' '.join\(map\(lambda s: '%02x' % ord\(s\), struct.pack\('<H', os.path.getsize\('${PROJECT_NAME}_dfu.bin'\) / 512 + 1\)\)\) + ' ff ff ff ff'\)\" | xxd -g1 -r > _header.bin COMMAND python ../../dfu.py
COMMAND cat _header.bin _tmp.dfu >${PROJECT_NAME}.dfu COMMAND cat _header.bin _tmp.dfu >${PROJECT_NAME}.dfu
COMMAND rm -f _tmp.dfu _header.bin #COMMAND rm -f _tmp.dfu _header.bin
) )
add_custom_target( add_custom_target(