Browse Source

wire/Makefile: refactor to allow non-experimental spec patches.

And rename the current patches to all be _exp_*.patch.  These
are applied after the basic patches.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>


Header from folded patch 'fix.patch':
ppa
Rusty Russell 4 years ago
committed by Christian Decker
parent
commit
7af63eb0a7
  1. 68
      wire/Makefile
  2. 2
      wire/common_wiregen.c
  3. 2
      wire/common_wiregen.h
  4. 0
      wire/extracted_onion_exp_1b1c9a71038bd72453cabefd3ace17ce8b8dd96e.patch
  5. 0
      wire/extracted_onion_exp_badonion_blinding.patch
  6. 0
      wire/extracted_onion_exp_enctlv.patch
  7. 0
      wire/extracted_onion_exp_offers.patch
  8. 0
      wire/extracted_peer_exp_1b1c9a71038bd72453cabefd3ace17ce8b8dd96e.patch
  9. 0
      wire/extracted_peer_exp_add_htlc-plus-blinding.patch
  10. 0
      wire/extracted_peer_exp_dual_fund.patch
  11. 0
      wire/extracted_peer_exp_dual_fund_more.patch
  12. 0
      wire/extracted_peer_exp_tmp_chan_id.patch
  13. 0
      wire/extracted_peer_exp_varonionmessage.patch
  14. 2
      wire/onion_printgen.c
  15. 2
      wire/onion_printgen.h
  16. 2
      wire/onion_wiregen.c
  17. 2
      wire/onion_wiregen.h
  18. 2
      wire/peer_printgen.c
  19. 2
      wire/peer_printgen.h
  20. 2
      wire/peer_wiregen.c
  21. 2
      wire/peer_wiregen.h

68
wire/Makefile

@ -47,34 +47,58 @@ BOLT_EXTRACT=$(LOCAL_BOLTDIR)/tools/extract-formats.py
WIRE_BOLT_DEPS := $(BOLT_DEPS) tools/gen/impl_template tools/gen/header_template
# Explicit command to re-extract CSV from BOLTs.
extract-bolt-csv: bolt-precheck
@$(BOLT_EXTRACT) $(LOCAL_BOLTDIR)/0[127]*.md > wire/peer_wire.csv
@echo '#include <wire/onion_defs.h>' > wire/onion_wire.csv
@$(BOLT_EXTRACT) $(LOCAL_BOLTDIR)/04*.md >> wire/onion_wire.csv
ALL_PEER_PATCHES := $(sort $(wildcard wire/extracted_peer*.patch))
ALL_ONION_PATCHES := $(sort $(wildcard wire/extracted_onion*.patch))
extract-bolt12-csv: bolt-precheck
$(BOLT_EXTRACT) $(LOCAL_BOLTDIR)/12*.md > wire/bolt12_exp_wire.csv
# These are applied to the non-exp csvs to make the exp csvs.
PEER_EXP_PATCHES := $(sort $(wildcard wire/extracted_peer_exp*.patch))
ONION_EXP_PATCHES := $(sort $(wildcard wire/extracted_onion_exp*.patch))
ifeq ($(EXPERIMENTAL_FEATURES),1)
extract-bolt-csv: extract-bolt12-csv
endif
# These are always applied to the bolts.
PEER_PATCHES := $(filter-out $(PEER_EXP_PATCHES),$(ALL_PEER_PATCHES))
ONION_PATCHES := $(filter-out $(ONION_EXP_PATCHES),$(ALL_ONION_PATCHES))
# Explicit command to add patchfile for BOLT CSV's
extract-experimental-bolt-csv: bolt-precheck
@$(BOLT_EXTRACT) $(LOCAL_BOLTDIR)/0[127]*.md | diff -u wire/peer_exp_wire.csv - >wire/extracted_peer_experimental_$(BOLTVERSION) | if [ $$? -lt 0 ];then exit 1;fi
@{ echo '#include <wire/onion_defs.h>'; $(BOLT_EXTRACT) $(LOCAL_BOLTDIR)/04*.md; } | diff -u wire/onion_exp_wire.csv - > wire/extracted_onion_experimental_$(BOLTVERSION) | if [ $$? -lt 0 ];then exit 1;fi
# Explicit command to re-extract CSV from BOLTs and patch.
# This is not a normal make depencency, since we don't want this
# called implicitly.
# Note: You will need to run extract-bolt12-csv manually!
extract-bolt-csv: extract-peer-csv extract-onion-csv
ifeq ($(EXPERIMENTAL_FEATURES),1)
EXPERIMENTAL_PEER_PATCHES := $(sort $(wildcard wire/extracted_peer_experimental_*))
EXPERIMENTAL_ONION_PATCHES := $(sort $(wildcard wire/extracted_onion_experimental_*))
extract-peer-csv: wire/peer_wire.csv.raw
@set -e; T=wire/peer_wire.csv; trap "rm -f $$T.$$$$" 0; cp $< $$T.$$$$; for p in $(PEER_PATCHES); do echo APPLY $$p; patch $$T.$$$$ $$p; done; mv $$T.$$$$ $$T
wire/peer_exp_wire.csv: wire/peer_wire.csv $(EXPERIMENTAL_PEER_PATCHES)
@set -e; trap "rm -f $@.$$$$" 0; cp $< $@.$$$$; for exp in $(EXPERIMENTAL_PEER_PATCHES); do patch $@.$$$$ $$exp >/dev/null ; done; mv $@.$$$$ $@
extract-onion-csv: wire/onion_wire.csv.raw
@set -e; T=wire/onion_wire.csv; trap "rm -f $$T.$$$$" 0; cp $< $$T.$$$$; for p in $(ONION_PATCHES); do echo APPLY $$p; patch $$T.$$$$ $$p; done; mv $$T.$$$$ $$T
wire/onion_exp_wire.csv: wire/onion_wire.csv $(EXPERIMENTAL_ONION_PATCHES)
@set -e; trap "rm -f $@.$$$$" 0; cp $< $@.$$$$; for exp in $(EXPERIMENTAL_ONION_PATCHES); do patch $@.$$$$ $$exp; done >/dev/null ; mv $@.$$$$ $@
endif
extract-bolt12-csv: wire/bolt12_wire.csv.raw
@set -e; T=wire/bolt12_wire.csv; trap "rm -f $$T.$$$$" 0; cp $< $$T.$$$$; for p in $(BOLT12_PATCHES); do echo APPLY $$p; patch $$T.$$$$ $$p; done; mv $$T.$$$$ $$T
wire/peer_wire.csv.raw: bolt-precheck
@$(BOLT_EXTRACT) $(LOCAL_BOLTDIR)/0[127]*.md > $@
wire/onion_wire.csv.raw: bolt-precheck
@(echo '#include <wire/onion_defs.h>'; $(BOLT_EXTRACT) $(LOCAL_BOLTDIR)/04*.md) > $@
wire/bolt12_wire.csv.raw: bolt-precheck
@$(BOLT_EXTRACT) $(LOCAL_BOLTDIR)/12*.md > $@
# How to make the exp versions from non-exp versions:
wire/peer_exp_wire.csv: wire/peer_wire.csv
@set -e; T=$@; trap "rm -f $$T.$$$$" 0; cp $< $$T.$$$$; for p in $(PEER_EXP_PATCHES); do echo APPLY $$p; patch $$T.$$$$ $$p; done; mv $$T.$$$$ $$T
wire/onion_exp_wire.csv: wire/onion_wire.csv
@set -e; T=$@; trap "rm -f $$T.$$$$" 0; cp $< $$T.$$$$; for p in $(ONION_EXP_PATCHES); do echo APPLY $$p; patch $$T.$$$$ $$p; done; mv $$T.$$$$ $$T
wire/bolt12_exp_wire.csv: wire/bolt12_wire.csv
@set -e; T=$@; trap "rm -f $$T.$$$$" 0; cp $< $$T.$$$$; for p in $(BOLT12_EXP_PATCHES); do echo APPLY $$p; patch $$T.$$$$ $$p; done; mv $$T.$$$$ $$T
# These can be deleted.
.INTERMEDIATE: wire/peer_wire.csv.raw wire/onion_wire.csv.raw wire/bolt12_wire.csv.raw
# Explicit command to add patchfile for BOLT CSV's against current one.
generate-bolt-csv-patch: bolt-precheck
@$(BOLT_EXTRACT) $(LOCAL_BOLTDIR)/0[127]*.md | diff -u wire/peer$(EXP)_wire.csv - >wire/extracted_peer$(EXP)_$(BOLTVERSION).patch | if [ $$? -lt 0 ];then exit 1;fi; echo wire/extracted_peer$(EXP)_$(BOLTVERSION).patch
@{ echo '#include <wire/onion_defs.h>'; $(BOLT_EXTRACT) $(LOCAL_BOLTDIR)/04*.md; } | diff -u wire/onion$(EXP)_wire.csv - > wire/extracted_onion$(EXP)_$(BOLTVERSION).patch | if [ $$? -lt 0 ];then exit 1;fi; echo wire/extracted_onion$(EXP)_$(BOLTVERSION).patch
# tlvs_n1 and n2 are used for test vectors, thus not referenced: expose them
# for testing and to prevent compile error about them being unused.

2
wire/common_wiregen.c

@ -100,4 +100,4 @@ bool fromwire_custommsg_out(const tal_t *ctx, const void *p, u8 **msg)
fromwire_u8_array(&cursor, &plen, *msg, msg_len);
return cursor != NULL;
}
// SHA256STAMP:3d4dd8c4e467b5a2158181d3b2e1e7f59f5082c8c5c91ba35d1fdda9a8d1ed6e
// SHA256STAMP:9dd0524ec6bd37da39061033975a68f614938210cec718e6ce32cf0d6a1e55b9

2
wire/common_wiregen.h

@ -41,4 +41,4 @@ bool fromwire_custommsg_out(const tal_t *ctx, const void *p, u8 **msg);
#endif /* LIGHTNING_WIRE_COMMON_WIREGEN_H */
// SHA256STAMP:3d4dd8c4e467b5a2158181d3b2e1e7f59f5082c8c5c91ba35d1fdda9a8d1ed6e
// SHA256STAMP:9dd0524ec6bd37da39061033975a68f614938210cec718e6ce32cf0d6a1e55b9

0
wire/extracted_onion_experimental_1b1c9a71038bd72453cabefd3ace17ce8b8dd96e → wire/extracted_onion_exp_1b1c9a71038bd72453cabefd3ace17ce8b8dd96e.patch

0
wire/extracted_onion_experimental_badonion_blinding → wire/extracted_onion_exp_badonion_blinding.patch

0
wire/extracted_onion_experimental_enctlv → wire/extracted_onion_exp_enctlv.patch

0
wire/extracted_onion_experimental_offers → wire/extracted_onion_exp_offers.patch

0
wire/extracted_peer_experimental_1b1c9a71038bd72453cabefd3ace17ce8b8dd96e → wire/extracted_peer_exp_1b1c9a71038bd72453cabefd3ace17ce8b8dd96e.patch

0
wire/extracted_peer_experimental_add_htlc-plus-blinding → wire/extracted_peer_exp_add_htlc-plus-blinding.patch

0
wire/extracted_peer_experimental_dual_fund → wire/extracted_peer_exp_dual_fund.patch

0
wire/extracted_peer_experimental_dual_fund_more → wire/extracted_peer_exp_dual_fund_more.patch

0
wire/extracted_peer_experimental_tmp_chan_id → wire/extracted_peer_exp_tmp_chan_id.patch

0
wire/extracted_peer_experimental_varonionmessage → wire/extracted_peer_exp_varonionmessage.patch

2
wire/onion_printgen.c

@ -653,4 +653,4 @@ void printonion_wire_tlv_message(const char *tlv_name, const u8 *msg) {
printwire_tlvs(tlv_name, &msg, &plen, print_tlvs_tlv_payload, ARRAY_SIZE(print_tlvs_tlv_payload));
}
}
// SHA256STAMP:de983a18d6a298f6dc27229bc10eaaf846bc313e06450e23d122ea84de5c829a
// SHA256STAMP:1af6b26217b4ee1dd0b9001ca463ff07463e89524ab11a9b80f99321c5e8bd0c

2
wire/onion_printgen.h

@ -57,4 +57,4 @@ void printwire_mpp_timeout(const char *fieldname, const u8 *cursor);
#endif /* LIGHTNING_WIRE_ONION_PRINTGEN_H */
// SHA256STAMP:de983a18d6a298f6dc27229bc10eaaf846bc313e06450e23d122ea84de5c829a
// SHA256STAMP:1af6b26217b4ee1dd0b9001ca463ff07463e89524ab11a9b80f99321c5e8bd0c

2
wire/onion_wiregen.c

@ -697,4 +697,4 @@ bool fromwire_mpp_timeout(const void *p)
return false;
return cursor != NULL;
}
// SHA256STAMP:de983a18d6a298f6dc27229bc10eaaf846bc313e06450e23d122ea84de5c829a
// SHA256STAMP:1af6b26217b4ee1dd0b9001ca463ff07463e89524ab11a9b80f99321c5e8bd0c

2
wire/onion_wiregen.h

@ -207,4 +207,4 @@ bool fromwire_mpp_timeout(const void *p);
#endif /* LIGHTNING_WIRE_ONION_WIREGEN_H */
// SHA256STAMP:de983a18d6a298f6dc27229bc10eaaf846bc313e06450e23d122ea84de5c829a
// SHA256STAMP:1af6b26217b4ee1dd0b9001ca463ff07463e89524ab11a9b80f99321c5e8bd0c

2
wire/peer_printgen.c

@ -2036,4 +2036,4 @@ void printpeer_wire_tlv_message(const char *tlv_name, const u8 *msg) {
printwire_tlvs(tlv_name, &msg, &plen, print_tlvs_reply_channel_range_tlvs, ARRAY_SIZE(print_tlvs_reply_channel_range_tlvs));
}
}
// SHA256STAMP:7cb56bd1ecb24076a620bf103cd28fc31cd45a31e2d6e59a1fd1f2a742d520fd
// SHA256STAMP:b2c31b272b7ada6d454bb530173e0f68d1f9274a17267f9a3ecb40cbf8ea478e

2
wire/peer_printgen.h

@ -70,4 +70,4 @@ void printwire_gossip_timestamp_filter(const char *fieldname, const u8 *cursor);
void printwire_channel_update_checksums(const char *fieldname, const u8 **cursor, size_t *plen);
void printwire_channel_update_timestamps(const char *fieldname, const u8 **cursor, size_t *plen);
#endif /* LIGHTNING_WIRE_PEER_PRINTGEN_H */
// SHA256STAMP:7cb56bd1ecb24076a620bf103cd28fc31cd45a31e2d6e59a1fd1f2a742d520fd
// SHA256STAMP:b2c31b272b7ada6d454bb530173e0f68d1f9274a17267f9a3ecb40cbf8ea478e

2
wire/peer_wiregen.c

@ -1630,4 +1630,4 @@ bool fromwire_channel_update_option_channel_htlc_max(const void *p, secp256k1_ec
*htlc_maximum_msat = fromwire_amount_msat(&cursor, &plen);
return cursor != NULL;
}
// SHA256STAMP:7cb56bd1ecb24076a620bf103cd28fc31cd45a31e2d6e59a1fd1f2a742d520fd
// SHA256STAMP:b2c31b272b7ada6d454bb530173e0f68d1f9274a17267f9a3ecb40cbf8ea478e

2
wire/peer_wiregen.h

@ -595,4 +595,4 @@ bool fromwire_channel_update_option_channel_htlc_max(const void *p, secp256k1_ec
#endif /* LIGHTNING_WIRE_PEER_WIREGEN_H */
// SHA256STAMP:7cb56bd1ecb24076a620bf103cd28fc31cd45a31e2d6e59a1fd1f2a742d520fd
// SHA256STAMP:b2c31b272b7ada6d454bb530173e0f68d1f9274a17267f9a3ecb40cbf8ea478e

Loading…
Cancel
Save