mirror of
https://github.com/aljazceru/lightning.git
synced 2025-12-18 22:54:25 +01:00
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':
This commit is contained in:
committed by
Christian Decker
parent
1794d0ff4e
commit
7af63eb0a7
@@ -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
generated
2
wire/common_wiregen.c
generated
@@ -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
generated
2
wire/common_wiregen.h
generated
@@ -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
|
||||
|
||||
2
wire/onion_printgen.c
generated
2
wire/onion_printgen.c
generated
@@ -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
generated
2
wire/onion_printgen.h
generated
@@ -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
generated
2
wire/onion_wiregen.c
generated
@@ -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
generated
2
wire/onion_wiregen.h
generated
@@ -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
generated
2
wire/peer_printgen.c
generated
@@ -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
generated
2
wire/peer_printgen.h
generated
@@ -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
generated
2
wire/peer_wiregen.c
generated
@@ -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
generated
2
wire/peer_wiregen.h
generated
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user