1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-11-18 13:38:12 +00:00
trezor-firmware/legacy/firmware/protob/Makefile

49 lines
1.5 KiB
Makefile
Raw Normal View History

ifneq ($(V),1)
Q := @
endif
SKIPPED_MESSAGES := Binance Cardano DebugMonero Eos Monero Ontology Ripple SdProtect Tezos WebAuthn \
DebugLinkRecordScreen DebugLinkEraseSdCard DebugLinkWatchLayout \
2022-12-23 17:09:20 +00:00
DebugLinkLayout GetNonce \
TxAckInput TxAckOutput TxAckPrev TxAckPaymentRequest \
EthereumSignTypedData EthereumTypedDataStructRequest EthereumTypedDataStructAck \
EthereumTypedDataValueRequest EthereumTypedDataValueAck
2019-04-27 14:15:35 +00:00
ifeq ($(BITCOIN_ONLY), 1)
2021-08-18 10:08:39 +00:00
SKIPPED_MESSAGES += Ethereum NEM Stellar
2019-04-27 14:15:35 +00:00
endif
PROTO_NAMES = messages messages-bitcoin messages-common messages-crypto messages-debug \
2021-08-18 10:08:39 +00:00
messages-ethereum messages-management messages-nem messages-stellar
PROTO_OPTIONS = $(PROTO_NAMES:=.options)
PROTO_COMPILED = $(PROTO_NAMES:=.pb)
PROTO_HEADERS = $(PROTO_COMPILED:=.h)
all: messages_map.h messages_map_limits.h messages.pb.h
2014-04-29 12:26:51 +00:00
2017-12-18 21:48:52 +00:00
PYTHON ?= python
# produces also all of $(PROTO_HEADERS)
messages.pb.h: $(PROTO_COMPILED) $(PROTO_OPTIONS)
@printf " NANOPB $@\n"
$(Q)nanopb_generator $(PROTO_COMPILED) \
-L '#include "%s"' \
-T -D . \
-s "mangle_names:M_FLATTEN"
@grep " CALLBACK, " $@ && echo "CALLBACK field found" && rm $@ && exit 1 || :
2014-04-29 12:26:51 +00:00
%.pb: %.proto
@printf " PROTOC $@\n"
$(Q)protoc -I/usr/include -I. $< -o $@
2014-04-29 12:26:51 +00:00
2017-05-29 11:46:32 +00:00
%_pb2.py: %.proto
@printf " PROTOC $@\n"
$(Q)protoc -I/usr/include -I. $< --python_out=.
2017-05-29 11:46:32 +00:00
messages_map.h messages_map_limits.h: messages_map.py messages_pb2.py
2019-04-27 14:15:35 +00:00
$(Q)$(PYTHON) $< ${SKIPPED_MESSAGES}
2017-05-29 11:46:32 +00:00
2014-04-29 12:26:51 +00:00
clean:
rm -f *.pb *.o *.d *.pb.c *.pb.h *_pb2.py messages_map.h messages_map_limits.h