trezor-mcu/firmware/Makefile

126 lines
3.5 KiB
Makefile
Raw Normal View History

APPVER = 1.0.0
ifeq ($(FASTFLASH),1)
OBJS += fastflash.o
OBJS += bootloader.o
endif
2014-04-29 05:26:51 -07:00
NAME = trezor
2017-12-13 10:38:51 -08:00
ifeq ($(EMULATOR),1)
OBJS += udp.o
else
2014-04-29 05:26:51 -07:00
OBJS += usb.o
2017-12-13 10:38:51 -08:00
endif
2015-11-02 15:08:18 -08:00
OBJS += u2f.o
2014-04-29 05:26:51 -07:00
OBJS += messages.o
OBJS += storage.o
OBJS += trezor.o
OBJS += pinmatrix.o
OBJS += fsm.o
OBJS += coins.o
OBJS += transaction.o
OBJS += protect.o
OBJS += layout2.o
OBJS += recovery.o
OBJS += reset.o
OBJS += signing.o
OBJS += crypto.o
2016-05-24 14:22:30 -07:00
OBJS += ethereum.o
2017-05-16 05:00:55 -07:00
OBJS += ethereum_tokens.o
2017-05-30 09:41:02 -07:00
OBJS += nem2.o
2017-07-20 14:58:19 -07:00
OBJS += nem_mosaics.o
2014-04-29 05:26:51 -07:00
OBJS += debug.o
OBJS += ../vendor/trezor-crypto/address.o
2015-12-15 14:01:54 -08:00
OBJS += ../vendor/trezor-crypto/bignum.o
OBJS += ../vendor/trezor-crypto/ecdsa.o
2016-04-22 08:49:00 -07:00
OBJS += ../vendor/trezor-crypto/curves.o
2015-12-15 14:01:54 -08:00
OBJS += ../vendor/trezor-crypto/secp256k1.o
OBJS += ../vendor/trezor-crypto/nist256p1.o
OBJS += ../vendor/trezor-crypto/rand.o
OBJS += ../vendor/trezor-crypto/memzero.o
2017-08-14 05:59:17 -07:00
OBJS += ../vendor/trezor-crypto/ed25519-donna/curve25519-donna-32bit.o
OBJS += ../vendor/trezor-crypto/ed25519-donna/curve25519-donna-helpers.o
OBJS += ../vendor/trezor-crypto/ed25519-donna/modm-donna-32bit.o
2017-06-25 07:37:45 -07:00
OBJS += ../vendor/trezor-crypto/ed25519-donna/ed25519-donna-basepoint-table.o
2017-08-14 05:59:17 -07:00
OBJS += ../vendor/trezor-crypto/ed25519-donna/ed25519-donna-32bit-tables.o
OBJS += ../vendor/trezor-crypto/ed25519-donna/ed25519-donna-impl-base.o
OBJS += ../vendor/trezor-crypto/ed25519-donna/ed25519.o
OBJS += ../vendor/trezor-crypto/ed25519-donna/curve25519-donna-scalarmult-base.o
OBJS += ../vendor/trezor-crypto/ed25519-donna/ed25519-sha3.o
OBJS += ../vendor/trezor-crypto/ed25519-donna/ed25519-keccak.o
2017-08-14 05:59:17 -07:00
2015-12-15 14:01:54 -08:00
OBJS += ../vendor/trezor-crypto/hmac.o
OBJS += ../vendor/trezor-crypto/bip32.o
OBJS += ../vendor/trezor-crypto/bip39.o
OBJS += ../vendor/trezor-crypto/pbkdf2.o
OBJS += ../vendor/trezor-crypto/base32.o
2015-12-15 14:01:54 -08:00
OBJS += ../vendor/trezor-crypto/base58.o
OBJS += ../vendor/trezor-crypto/segwit_addr.o
2015-12-15 14:01:54 -08:00
OBJS += ../vendor/trezor-crypto/ripemd160.o
OBJS += ../vendor/trezor-crypto/sha2.o
2016-05-24 12:31:34 -07:00
OBJS += ../vendor/trezor-crypto/sha3.o
OBJS += ../vendor/trezor-crypto/blake256.o
OBJS += ../vendor/trezor-crypto/hasher.o
2015-12-15 14:01:54 -08:00
2017-05-08 08:16:20 -07:00
OBJS += ../vendor/trezor-crypto/aes/aescrypt.o
OBJS += ../vendor/trezor-crypto/aes/aeskey.o
OBJS += ../vendor/trezor-crypto/aes/aestab.o
OBJS += ../vendor/trezor-crypto/aes/aes_modes.o
2015-12-15 14:01:54 -08:00
2017-05-29 07:07:13 -07:00
OBJS += ../vendor/trezor-crypto/nem.o
2015-12-15 14:01:54 -08:00
OBJS += ../vendor/trezor-qrenc/qr_encode.o
2014-08-08 10:09:54 -07:00
2017-12-18 13:33:58 -08:00
OBJS += ../vendor/nanopb/pb_common.o
OBJS += ../vendor/nanopb/pb_decode.o
OBJS += ../vendor/nanopb/pb_encode.o
2014-04-29 05:26:51 -07:00
OBJS += protob/messages.pb.o
OBJS += protob/types.pb.o
include ../Makefile.include
ifeq ($(FASTFLASH),1)
CFLAGS += -DFASTFLASH=1
else
CFLAGS += -DFASTFLASH=0
endif
DEBUG_LINK ?= 0
DEBUG_LOG ?= 0
2014-06-07 05:21:59 -07:00
CFLAGS += -Wno-sequence-point
2017-12-18 13:33:58 -08:00
CFLAGS += -I../vendor/nanopb -Iprotob -DPB_FIELD_16BIT=1
2014-08-08 10:09:54 -07:00
CFLAGS += -DQR_MAX_VERSION=0
CFLAGS += -DDEBUG_LINK=$(DEBUG_LINK)
CFLAGS += -DDEBUG_LOG=$(DEBUG_LOG)
2014-04-29 05:26:51 -07:00
CFLAGS += -DSCM_REVISION='"$(shell git rev-parse HEAD | sed 's:\(..\):\\x\1:g')"'
CFLAGS += -DUSE_ETHEREUM=1
2017-05-29 07:07:13 -07:00
CFLAGS += -DUSE_NEM=1
bootloader.o: ../fastflash/bootloader.bin
$(OBJCOPY) -I binary -O elf32-littlearm -B arm \
--redefine-sym _binary_$(shell echo -n "$<" | tr -c "[:alnum:]" "_")_start=__bootloader_start__ \
--redefine-sym _binary_$(shell echo -n "$<" | tr -c "[:alnum:]" "_")_size=__bootloader_size__ \
--rename-section .data=.rodata \
$< $@
coins_count.h: coins-gen.py coins.json
2017-12-18 13:48:52 -08:00
$(PYTHON) $< count > $@
coins_array.h: coins-gen.py coins.json
2017-12-18 13:48:52 -08:00
$(PYTHON) $< array > $@
nem_mosaics.c nem_mosaics.h: nem_mosaics.py nem_mosaics.json
2017-12-18 13:48:52 -08:00
$(PYTHON) $<
clean::
rm -f coins_count.h coins_array.h
rm -f nem_mosaics.c nem_mosaics.h