global: remove unnecessary includes from headers.

Each header should only include the other headers it needs to compile;
`devtools/reduce-includes.sh */*.h` does this.  The C files then need
additional includes if they don't compile.

And remove the entirely useless wire/onion_wire.h, which only serves to include wire/onion_wiregen.h.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
Rusty Russell
2025-10-22 19:44:27 +10:30
parent 65d997842e
commit f6a4e79420
212 changed files with 178 additions and 153 deletions

View File

@@ -74,6 +74,8 @@ wire/peer_wiregen.h_args := --include='common/channel_id.h' --include='bitcoin/t
wire/peer_wiregen.c_args := -s --expose-tlv-type=tlv_n1 --expose-tlv-type=tlv_n2
wire/peer_printgen.c_args := --include='wire/peer_wiregen.h'
# The payload isn't parsed in a fromwire, so we need to expose it.
wire/onion_wiregen.h_args := --include='bitcoin/short_channel_id.h' --include='bitcoin/privkey.h' --include='common/bigsize.h' --include='common/amount.h' --include='common/node_id.h' --include='bitcoin/block.h' --include='common/sciddir_or_pubkey.h' -s --expose-tlv-type=tlv_payload
@@ -86,8 +88,8 @@ wire/peer_exp_printgen.h_args := --include='wire/channel_type_printgen.h'
wire/onion_exp_wiregen.h_args := $(wire/onion_wiregen.h_args)
wire/onion_exp_wiregen.c_args := $(wire/onion_wiregen.c_args)
wire/bolt12_wiregen.c_args := -s --expose-tlv-type=tlv_blinded_path --expose-tlv-type=tlv_invoice_request --expose-tlv-type=tlv_invoice
wire/bolt12_wiregen.h_args := --include='bitcoin/short_channel_id.h' --include='bitcoin/signature.h' --include='bitcoin/privkey.h' --include='common/bigsize.h' --include='common/amount.h' --include='common/node_id.h' --include='bitcoin/block.h' --include='wire/onion_wire.h' $(wire/bolt12_wiregen.c_args)
wire/bolt12_wiregen.c_args := -s --expose-tlv-type=tlv_blinded_path --expose-tlv-type=tlv_invoice_request --expose-tlv-type=tlv_invoice --include='wire/onion_wiregen.h'
wire/bolt12_wiregen.h_args := --include='bitcoin/short_channel_id.h' --include='bitcoin/signature.h' --include='bitcoin/privkey.h' --include='common/bigsize.h' --include='common/amount.h' --include='common/node_id.h' --include='bitcoin/block.h' $(wire/bolt12_wiregen.c_args)
wire/bolt12_printgen.c_args := --expose-tlv-type=tlv_blinded_path --expose-tlv-type=tlv_invoice_request --include='wire/onion_wiregen.h' --include='wire/onion_printgen.h'
wire/bolt12_printgen.h_args := --include='wire/bolt12_wiregen.h' --expose-tlv-type=tlv_blinded_path --expose-tlv-type=tlv_invoice_request

View File

@@ -2,7 +2,6 @@
#ifndef LIGHTNING_WIRE_ONION_DEFS_H
#define LIGHTNING_WIRE_ONION_DEFS_H
#include "config.h"
#include <common/sciddir_or_pubkey.h>
/* BOLT #4:
*

View File

@@ -1,8 +0,0 @@
#ifndef LIGHTNING_WIRE_ONION_WIRE_H
#define LIGHTNING_WIRE_ONION_WIRE_H
#include "config.h"
#include <stdbool.h>
#include <wire/onion_wiregen.h>
#endif /* LIGHTNING_WIRE_ONION_WIRE_H */

View File

@@ -1,7 +1,6 @@
#ifndef LIGHTNING_WIRE_PEER_WIRE_H
#define LIGHTNING_WIRE_PEER_WIRE_H
#include "config.h"
#include <stdbool.h>
#include <wire/peer_wiregen.h>

View File

@@ -1,6 +1,7 @@
#include "config.h"
#include <ccan/asort/asort.h>
#include <common/bigsize.h>
#include <common/utils.h>
#include <wire/tlvstream.h>
#include <wire/wire.h>

View File

@@ -2,8 +2,6 @@
#define LIGHTNING_WIRE_TLVSTREAM_H
#include "config.h"
#include <bitcoin/short_channel_id.h>
#include <ccan/short_types/short_types.h>
#include <ccan/tal/tal.h>
struct tlv_record_type {
u64 type;

View File

@@ -1,12 +1,9 @@
#ifndef LIGHTNING_WIRE_WIRE_H
#define LIGHTNING_WIRE_WIRE_H
#include "config.h"
#include <ccan/short_types/short_types.h>
#include <ccan/tal/tal.h>
#include <common/jsonrpc_errors.h>
#include <common/wireaddr.h>
#include <secp256k1_recovery.h>
#include <stdlib.h>
struct ripemd160;
struct sha256;