1#! /usr/bin/make
2
3CONNECTD_HEADERS := connectd/connectd_wiregen.h		\
4	connectd/connectd_gossipd_wiregen.h		\
5	connectd/connectd.h				\
6	connectd/peer_exchange_initmsg.h		\
7	connectd/handshake.h				\
8	connectd/netaddress.h				\
9	connectd/tor_autoservice.h			\
10	connectd/tor.h
11
12CONNECTD_SRC := $(CONNECTD_HEADERS:.h=.c) connectd/connectd.c
13
14CONNECTD_OBJS := $(CONNECTD_SRC:.c=.o)
15$(CONNECTD_OBJS): $(CONNECTD_HEADERS)
16
17WEBSOCKETD_HEADERS := connectd/sha1.h
18WEBSOCKETD_SRC := $(WEBSOCKETD_HEADERS:.h=.c) connectd/websocketd.c
19
20WEBSOCKETD_OBJS := $(WEBSOCKETD_SRC:.c=.o)
21$(WEBSOCKETD_OBJS): $(WEBSOCKETD_HEADERS)
22
23# Make sure these depend on everything.
24ALL_C_SOURCES += $(CONNECTD_SRC) $(WEBSOCKETD_SRC)
25ALL_C_HEADERS += $(CONNECTD_HEADERS) $(WEBSOCKETD_HEADERS)
26ALL_PROGRAMS += lightningd/lightning_connectd
27ALL_PROGRAMS += lightningd/lightning_websocketd
28
29# Here's what lightningd depends on
30LIGHTNINGD_CONTROL_HEADERS += connectd/connectd_wiregen.h
31LIGHTNINGD_CONTROL_OBJS += connectd/connectd_wiregen.o
32
33# Common source we use.
34CONNECTD_COMMON_OBJS :=				\
35	common/amount.o				\
36	common/autodata.o			\
37	common/base32.o				\
38	common/base64.o				\
39	common/bech32.o				\
40	common/bech32_util.o			\
41	common/bigsize.o			\
42	common/bip32.o				\
43	common/channel_id.o			\
44	common/crypto_state.o			\
45	common/cryptomsg.o			\
46	common/daemon.o				\
47	common/daemon_conn.o			\
48	common/derive_basepoints.o		\
49	common/dev_disconnect.o			\
50	common/ecdh_hsmd.o			\
51	common/features.o			\
52	common/status_wiregen.o			\
53	common/gossip_rcvd_filter.o		\
54	common/key_derive.o			\
55	common/memleak.o			\
56	common/msg_queue.o			\
57	common/node_id.o			\
58	common/onionreply.o			\
59	common/per_peer_state.o			\
60	common/psbt_open.o			\
61	common/pseudorand.o			\
62	common/setup.o				\
63	common/status.o				\
64	common/status_wire.o			\
65	common/subdaemon.o			\
66	common/timeout.o			\
67	common/type_to_string.o			\
68	common/utils.o				\
69	common/utxo.o				\
70	common/version.o			\
71	common/wireaddr.o			\
72	common/wire_error.o			\
73	gossipd/gossipd_wiregen.o		\
74	lightningd/gossip_msg.o			\
75	wire/onion$(EXP)_wiregen.o
76
77lightningd/lightning_connectd: $(CONNECTD_OBJS) $(CONNECTD_COMMON_OBJS) $(BITCOIN_OBJS) $(WIRE_OBJS) $(HSMD_CLIENT_OBJS)
78
79lightningd/lightning_websocketd: $(WEBSOCKETD_OBJS) common/setup.o common/utils.o
80
81include connectd/test/Makefile
82