]>
Commit | Line | Data |
---|---|---|
07f83521 | 1 | DIST_SUBDIRS = secp256k1 univalue cryptoconditions |
eb12a14d | 2 | |
c4379e3a JG |
3 | AM_LDFLAGS = $(PTHREAD_CFLAGS) $(LIBTOOL_LDFLAGS) $(SAN_LDFLAGS) $(HARDENED_LDFLAGS) |
4 | AM_CXXFLAGS = $(SAN_CXXFLAGS) $(HARDENED_CXXFLAGS) $(ERROR_CXXFLAGS) | |
c459de2f | 5 | AM_CPPFLAGS = $(HARDENED_CPPFLAGS) |
6a753e4f | 6 | EXTRA_LIBRARIES = |
35b8af92 | 7 | |
6b9f0d55 | 8 | if EMBEDDED_LEVELDB |
56c157d5 CF |
9 | LEVELDB_CPPFLAGS += -I$(srcdir)/leveldb/include |
10 | LEVELDB_CPPFLAGS += -I$(srcdir)/leveldb/helpers/memenv | |
11 | LIBLEVELDB += $(builddir)/leveldb/libleveldb.a | |
12 | LIBMEMENV += $(builddir)/leveldb/libmemenv.a | |
6b9f0d55 CF |
13 | |
14 | # NOTE: This dependency is not strictly necessary, but without it make may try to build both in parallel, which breaks the LevelDB build system in a race | |
15 | $(LIBLEVELDB): $(LIBMEMENV) | |
16 | ||
17 | $(LIBLEVELDB) $(LIBMEMENV): | |
18 | @echo "Building LevelDB ..." && $(MAKE) -C $(@D) $(@F) CXX="$(CXX)" \ | |
19 | CC="$(CC)" PLATFORM=$(TARGET_OS) AR="$(AR)" $(LEVELDB_TARGET_FLAGS) \ | |
c459de2f | 20 | OPT="$(AM_CXXFLAGS) $(PIE_FLAGS) $(CXXFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -D__STDC_LIMIT_MACROS" |
6b9f0d55 CF |
21 | endif |
22 | ||
54372482 | 23 | BITCOIN_CONFIG_INCLUDES=-I$(builddir)/config |
6a753e4f | 24 | BITCOIN_INCLUDES=-I$(builddir) -I$(builddir)/obj $(BDB_CPPFLAGS) $(BOOST_CPPFLAGS) $(LEVELDB_CPPFLAGS) $(CRYPTO_CFLAGS) $(SSL_CFLAGS) |
f4d81129 | 25 | |
55668266 | 26 | BITCOIN_INCLUDES += -I$(srcdir)/secp256k1/include |
9e74de25 | 27 | BITCOIN_INCLUDES += -I$(srcdir)/cryptoconditions/include |
ccc47c55 MT |
28 | BITCOIN_INCLUDES += -I$(srcdir)/cryptoconditions/src |
29 | BITCOIN_INCLUDES += -I$(srcdir)/cryptoconditions/src/asn | |
a55c186a | 30 | BITCOIN_INCLUDES += -I$(srcdir)/snark |
31 | BITCOIN_INCLUDES += -I$(srcdir)/snark/libsnark | |
a10a6e2a | 32 | BITCOIN_INCLUDES += -I$(srcdir)/univalue/include |
55668266 | 33 | |
9d365796 | 34 | if TARGET_WINDOWS |
35 | LIBBITCOIN_SERVER=libbitcoin_server.a -lcurl | |
36 | endif | |
37 | if TARGET_DARWIN | |
38 | LIBBITCOIN_SERVER=libbitcoin_server.a -lcurl | |
39 | else | |
9feb4b9e | 40 | LIBBITCOIN_SERVER=libbitcoin_server.a -lcurl |
9d365796 | 41 | endif |
42 | ||
84ce18ca WL |
43 | LIBBITCOIN_WALLET=libbitcoin_wallet.a |
44 | LIBBITCOIN_COMMON=libbitcoin_common.a | |
45 | LIBBITCOIN_CLI=libbitcoin_cli.a | |
46 | LIBBITCOIN_UTIL=libbitcoin_util.a | |
47 | LIBBITCOIN_CRYPTO=crypto/libbitcoin_crypto.a | |
42181656 | 48 | LIBVERUS_CRYPTO=crypto/libverus_crypto.a |
f2c10320 | 49 | LIBVERUS_PORTABLE_CRYPTO=crypto/libverus_portable_crypto.a |
07a99017 | 50 | LIBSECP256K1=secp256k1/libsecp256k1.la |
2c8d8268 | 51 | LIBCRYPTOCONDITIONS=cryptoconditions/libcryptoconditions_core.la |
a55c186a | 52 | LIBSNARK=snark/libsnark.a |
1dc62631 | 53 | LIBUNIVALUE=univalue/libunivalue.la |
1785bdb9 | 54 | LIBZCASH=libzcash.a |
07a99017 | 55 | |
6a753e4f CF |
56 | if ENABLE_ZMQ |
57 | LIBBITCOIN_ZMQ=libbitcoin_zmq.a | |
58 | endif | |
59 | if ENABLE_PROTON | |
60 | LIBBITCOIN_PROTON=libbitcoin_proton.a | |
61 | endif | |
62 | if BUILD_BITCOIN_LIBS | |
63 | LIBZCASH_CONSENSUS=libzcashconsensus.la | |
64 | endif | |
65 | if ENABLE_WALLET | |
66 | LIBBITCOIN_WALLET=libbitcoin_wallet.a | |
67 | endif | |
07a99017 PW |
68 | |
69 | $(LIBSECP256K1): $(wildcard secp256k1/src/*) $(wildcard secp256k1/include/*) | |
f2c10320 | 70 | $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F) OPTFLAGS="-O2 -march=x86-64 -g " |
84ce18ca | 71 | |
1dae6e93 | 72 | LIBSNARK_CXXFLAGS = $(AM_CXXFLAGS) $(PIC_FLAGS) -DBINARY_OUTPUT -DNO_PT_COMPRESSION=1 -fstack-protector-all |
daad2c27 JG |
73 | LIBSNARK_CONFIG_FLAGS = CURVE=ALT_BN128 NO_PROCPS=1 NO_DOCS=1 STATIC=1 NO_SUPERCOP=1 FEATUREFLAGS=-DMONTGOMERY_OUTPUT NO_COPY_DEPINST=1 NO_COMPILE_LIBGTEST=1 |
74 | if HAVE_OPENMP | |
75 | LIBSNARK_CONFIG_FLAGS += MULTICORE=1 | |
76 | endif | |
792c05d8 JG |
77 | if TARGET_DARWIN |
78 | LIBSNARK_CONFIG_FLAGS += PLATFORM=darwin | |
79 | endif | |
82e839e4 | 80 | |
26a8f68e | 81 | $(LIBSNARK): $(wildcard snark/src/*) |
1dae6e93 | 82 | $(AM_V_at) CC="$(CC)" CXX="$(CXX)" AR="$(AR)" CXXFLAGS="$(LIBSNARK_CXXFLAGS)" $(MAKE) $(AM_MAKEFLAGS) -C snark/ DEPINST="$(LIBSNARK_DEPINST)" $(LIBSNARK_CONFIG_FLAGS) OPTFLAGS="-O2 -march=x86-64" |
82e839e4 JG |
83 | |
84 | libsnark-tests: $(wildcard snark/src/*) | |
1dae6e93 | 85 | $(AM_V_at) CC="$(CC)" CXX="$(CXX)" AR="$(AR)" CXXFLAGS="$(LIBSNARK_CXXFLAGS)" $(MAKE) $(AM_MAKEFLAGS) -C snark/ check DEPINST="$(LIBSNARK_DEPINST)" $(LIBSNARK_CONFIG_FLAGS) OPTFLAGS="-O2 -march=x86-64" |
26a8f68e | 86 | |
fbc98d77 | 87 | $(LIBUNIVALUE): $(wildcard univalue/lib/*) |
9feb4b9e | 88 | $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F) OPTFLAGS="-O2 -march=x86-64 -g " |
84ce18ca | 89 | |
07f83521 | 90 | $(LIBCRYPTOCONDITIONS): $(wildcard cryptoconditions/src/*) $(wildcard cryptoconditions/include/*) |
f2c10320 | 91 | $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F) OPTFLAGS="-O2 -march=x86-64 -g " |
07f83521 | 92 | |
071473c5 | 93 | # Make is not made aware of per-object dependencies to avoid limiting building parallelization |
94 | # But to build the less dependent modules first, we manually select their order here: | |
6a753e4f CF |
95 | EXTRA_LIBRARIES += \ |
96 | $(LIBBITCOIN_CRYPTO) \ | |
9feb4b9e | 97 | $(LIBVERUS_CRYPTO) \ |
98 | $(LIBVERUS_PORTABLE_CRYPTO) \ | |
6a753e4f CF |
99 | $(LIBBITCOIN_UTIL) \ |
100 | $(LIBBITCOIN_COMMON) \ | |
101 | $(LIBBITCOIN_SERVER) \ | |
102 | $(LIBBITCOIN_CLI) \ | |
1785bdb9 | 103 | libzcash.a |
4f9e993b | 104 | if ENABLE_WALLET |
f4d81129 | 105 | BITCOIN_INCLUDES += $(BDB_CPPFLAGS) |
9feb4b9e | 106 | EXTRA_LIBRARIES += $(LIBBITCOIN_WALLET) |
4f9e993b | 107 | endif |
f200002c | 108 | if ENABLE_ZMQ |
9feb4b9e | 109 | EXTRA_LIBRARIES += $(LIBBITCOIN_ZMQ) |
f200002c | 110 | endif |
99eb947a | 111 | if ENABLE_PROTON |
9feb4b9e | 112 | EXTRA_LIBRARIES += $(LIBBITCOIN_PROTON) |
99eb947a | 113 | endif |
35b8af92 | 114 | |
6a753e4f | 115 | lib_LTLIBRARIES = $(LIBZCASH_CONSENSUS) |
2cf5f16c | 116 | |
f930341d | 117 | bin_PROGRAMS = |
8e0fc390 | 118 | noinst_PROGRAMS = |
65e8ba4d | 119 | TESTS = |
f930341d | 120 | |
f64557f7 | 121 | #if BUILD_BITCOIND |
5166804f | 122 | bin_PROGRAMS += komodod |
f64557f7 | 123 | #endif |
f930341d | 124 | |
c101c769 | 125 | if BUILD_BITCOIN_UTILS |
4d65d051 | 126 | bin_PROGRAMS += komodo-cli komodo-tx |
f930341d | 127 | endif |
5da8e41d | 128 | if ENABLE_WALLET |
129 | bin_PROGRAMS += wallet-utility | |
f930341d | 130 | endif |
35b8af92 | 131 | |
35b8af92 | 132 | |
1785bdb9 | 133 | LIBZCASH_H = \ |
c06664fb | 134 | zcash/IncrementalMerkleTree.hpp \ |
6c36a9fe | 135 | zcash/NoteEncryption.hpp \ |
369df065 SB |
136 | zcash/Address.hpp \ |
137 | zcash/JoinSplit.hpp \ | |
138 | zcash/Note.hpp \ | |
81469bbb | 139 | zcash/prf.h \ |
9ffe371d | 140 | zcash/Proof.hpp \ |
cc552e4d | 141 | zcash/util.h \ |
7614198f JG |
142 | zcash/Zcash.h \ |
143 | zcash/zip32.h | |
e463edc1 | 144 | |
99ca5e1a | 145 | .PHONY: FORCE collate-libsnark check-symbols check-security |
35b8af92 | 146 | # bitcoin core # |
5a407bd0 | 147 | BITCOIN_CORE_H = \ |
8b78a819 T |
148 | addressindex.h \ |
149 | spentindex.h \ | |
5a407bd0 WL |
150 | addrman.h \ |
151 | alert.h \ | |
a372168e | 152 | amount.h \ |
99eb947a S |
153 | amqp/amqpabstractnotifier.h \ |
154 | amqp/amqpconfig.h \ | |
155 | amqp/amqpnotificationinterface.h \ | |
156 | amqp/amqppublishnotifier.h \ | |
157 | amqp/amqpsender.h \ | |
bfc60703 | 158 | arith_uint256.h \ |
fc72c078 S |
159 | asyncrpcoperation.h \ |
160 | asyncrpcqueue.h \ | |
7cd0af7c | 161 | base58.h \ |
10e5357e | 162 | bech32.h \ |
5a407bd0 | 163 | bloom.h \ |
2c8d8268 | 164 | cc/eval.h \ |
e8b5f0d5 | 165 | chain.h \ |
bfc60703 | 166 | chainparams.h \ |
ff734e90 | 167 | chainparamsbase.h \ |
a60120e9 | 168 | chainparamsseeds.h \ |
5a407bd0 WL |
169 | checkpoints.h \ |
170 | checkqueue.h \ | |
171 | clientversion.h \ | |
172 | coincontrol.h \ | |
173 | coins.h \ | |
174 | compat.h \ | |
ff734e90 JT |
175 | compat/byteswap.h \ |
176 | compat/endian.h \ | |
177 | compat/sanity.h \ | |
561e9e9d | 178 | compressor.h \ |
691161d4 | 179 | consensus/consensus.h \ |
bd006110 | 180 | consensus/params.h \ |
780f526b | 181 | consensus/upgrades.h \ |
da29ecbc | 182 | consensus/validation.h \ |
ae775b5b | 183 | core_io.h \ |
6bd1d60c | 184 | core_memusage.h \ |
4dcb64c0 MT |
185 | crypto/haraka.h \ |
186 | crypto/haraka_portable.h \ | |
187 | crypto/verus_hash.h \ | |
5b3bc971 | 188 | deprecation.h \ |
5a407bd0 | 189 | hash.h \ |
afd64f76 WL |
190 | httprpc.h \ |
191 | httpserver.h \ | |
5a407bd0 WL |
192 | init.h \ |
193 | key.h \ | |
3d31e09c | 194 | key_io.h \ |
5a407bd0 | 195 | keystore.h \ |
e3da7a57 | 196 | dbwrapper.h \ |
5a407bd0 WL |
197 | limitedmap.h \ |
198 | main.h \ | |
540629c6 | 199 | memusage.h \ |
afd4b94b | 200 | merkleblock.h \ |
a6df7ab5 | 201 | metrics.h \ |
5a407bd0 WL |
202 | miner.h \ |
203 | mruset.h \ | |
5a407bd0 | 204 | net.h \ |
ff734e90 | 205 | netbase.h \ |
5a407bd0 | 206 | noui.h \ |
45232b19 S |
207 | paymentdisclosure.h \ |
208 | paymentdisclosuredb.h \ | |
b649e039 | 209 | policy/fees.h \ |
df852d2b | 210 | pow.h \ |
29a8ade7 | 211 | prevector.h \ |
bfc60703 WL |
212 | primitives/block.h \ |
213 | primitives/transaction.h \ | |
c5325a32 | 214 | primitives/nonce.h \ |
5a407bd0 | 215 | protocol.h \ |
d2e74c55 | 216 | pubkey.h \ |
6354935c | 217 | random.h \ |
6b51b9b1 | 218 | reverselock.h \ |
4519a766 DC |
219 | rpc/client.h \ |
220 | rpc/protocol.h \ | |
221 | rpc/server.h \ | |
a9496b08 | 222 | rpc/register.h \ |
928b950e | 223 | scheduler.h \ |
611116d4 | 224 | script/interpreter.h \ |
cbd22a50 | 225 | script/script.h \ |
ff734e90 | 226 | script/script_error.h \ |
2c8d8268 | 227 | script/serverchecker.h \ |
e088d65a | 228 | script/sign.h \ |
c4408a6c | 229 | script/standard.h \ |
5a407bd0 | 230 | serialize.h \ |
fa736190 | 231 | streams.h \ |
d7d187e8 CF |
232 | support/allocators/secure.h \ |
233 | support/allocators/zeroafterfree.h \ | |
1630219d | 234 | support/cleanse.h \ |
17fb6090 | 235 | support/events.h \ |
d7d187e8 | 236 | support/pagelocker.h \ |
5a407bd0 WL |
237 | sync.h \ |
238 | threadsafety.h \ | |
14f888ca | 239 | timedata.h \ |
b77dfdc9 | 240 | tinyformat.h \ |
eb5f63fe | 241 | torcontrol.h \ |
e691e21f | 242 | transaction_builder.h \ |
5a407bd0 WL |
243 | txdb.h \ |
244 | txmempool.h \ | |
245 | ui_interface.h \ | |
246 | uint256.h \ | |
defe37a6 | 247 | uint252.h \ |
999a2ab4 | 248 | undo.h \ |
5a407bd0 | 249 | util.h \ |
ad49c256 | 250 | utilmoneystr.h \ |
bfc60703 | 251 | utilstrencodings.h \ |
ad49c256 | 252 | utiltime.h \ |
26c16d9d | 253 | validationinterface.h \ |
5a407bd0 | 254 | version.h \ |
6e9c7629 | 255 | wallet/asyncrpcoperation_mergetoaddress.h \ |
fc72c078 | 256 | wallet/asyncrpcoperation_sendmany.h \ |
06c19063 | 257 | wallet/asyncrpcoperation_shieldcoinbase.h \ |
a354a59f | 258 | wallet/crypter.h \ |
ff734e90 | 259 | wallet/db.h \ |
34aca1b0 | 260 | wallet/rpcwallet.h \ |
50c72f23 JS |
261 | wallet/wallet.h \ |
262 | wallet/wallet_ismine.h \ | |
f200002c | 263 | wallet/walletdb.h \ |
3a868069 | 264 | veruslaunch.h \ |
f200002c JG |
265 | zmq/zmqabstractnotifier.h \ |
266 | zmq/zmqconfig.h\ | |
267 | zmq/zmqnotificationinterface.h \ | |
268 | zmq/zmqpublishnotifier.h | |
269 | ||
35b8af92 CF |
270 | |
271 | obj/build.h: FORCE | |
56c157d5 | 272 | @$(MKDIR_P) $(builddir)/obj |
35b8af92 | 273 | @$(top_srcdir)/share/genbuild.sh $(abs_top_builddir)/src/obj/build.h \ |
8b78a819 | 274 | $(abs_top_srcdir) |
71697f97 | 275 | libbitcoin_util_a-clientversion.$(OBJEXT): obj/build.h |
35b8af92 | 276 | |
38ba3c66 | 277 | # server: zcashd |
c459de2f CF |
278 | libbitcoin_server_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) $(EVENT_CFLAGS) $(EVENT_PTHREADS_CFLAGS) |
279 | libbitcoin_server_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) | |
4f9e993b | 280 | libbitcoin_server_a_SOURCES = \ |
b39e1bdb | 281 | sendalert.cpp \ |
4f9e993b WL |
282 | addrman.cpp \ |
283 | alert.cpp \ | |
7553b173 | 284 | alertkeys.h \ |
fc72c078 S |
285 | asyncrpcoperation.cpp \ |
286 | asyncrpcqueue.cpp \ | |
fb78cc23 | 287 | bloom.cpp \ |
2c8d8268 | 288 | cc/eval.cpp \ |
20c3ac51 | 289 | cc/import.cpp \ |
44a9fd7c | 290 | cc/CCassetsCore.cpp \ |
44a9fd7c | 291 | cc/CCcustom.cpp \ |
292 | cc/CCtx.cpp \ | |
293 | cc/CCutils.cpp \ | |
ca4a5f26 | 294 | cc/StakeGuard.cpp \ |
295 | cc/StakeGuard.h \ | |
2abababa | 296 | cc/assets.cpp \ |
d082e563 | 297 | cc/faucet.cpp \ |
e3ec4c50 | 298 | cc/rewards.cpp \ |
0542b1cd | 299 | cc/dice.cpp \ |
43911537 | 300 | cc/lotto.cpp \ |
7137a022 | 301 | cc/fsm.cpp \ |
d96ce6e9 | 302 | cc/MofN.cpp \ |
c926780f | 303 | cc/oracles.cpp \ |
304 | cc/prices.cpp \ | |
305 | cc/pegs.cpp \ | |
306 | cc/triggers.cpp \ | |
307 | cc/payments.cpp \ | |
308 | cc/gateways.cpp \ | |
287a373a | 309 | cc/channels.cpp \ |
43911537 | 310 | cc/auction.cpp \ |
561f3e18 | 311 | cc/betprotocol.cpp \ |
e8b5f0d5 | 312 | chain.cpp \ |
4f9e993b | 313 | checkpoints.cpp \ |
20c3ac51 | 314 | crosschain.cpp \ |
4dcb64c0 MT |
315 | crypto/haraka.h \ |
316 | crypto/haraka_portable.h \ | |
317 | crypto/verus_hash.h \ | |
17d0160a | 318 | crypto/verus_hash.cpp \ |
5b3bc971 | 319 | deprecation.cpp \ |
afd64f76 WL |
320 | httprpc.cpp \ |
321 | httpserver.cpp \ | |
4f9e993b | 322 | init.cpp \ |
e3da7a57 | 323 | dbwrapper.cpp \ |
4f9e993b | 324 | main.cpp \ |
afd4b94b | 325 | merkleblock.cpp \ |
9feb4b9e | 326 | metrics.h \ |
4a85e067 | 327 | miner.cpp \ |
4f9e993b WL |
328 | net.cpp \ |
329 | noui.cpp \ | |
20c3ac51 | 330 | notarisationdb.cpp \ |
45232b19 S |
331 | paymentdisclosure.cpp \ |
332 | paymentdisclosuredb.cpp \ | |
b649e039 | 333 | policy/fees.cpp \ |
df852d2b | 334 | pow.cpp \ |
e2655e0a | 335 | rest.cpp \ |
4519a766 | 336 | rpc/blockchain.cpp \ |
9feb4b9e | 337 | rpc/crosschain.cpp \ |
4519a766 DC |
338 | rpc/mining.cpp \ |
339 | rpc/misc.cpp \ | |
340 | rpc/net.cpp \ | |
341 | rpc/rawtransaction.cpp \ | |
342 | rpc/server.cpp \ | |
2c8d8268 | 343 | script/serverchecker.cpp \ |
bfe029fe | 344 | script/sigcache.cpp \ |
14f888ca | 345 | timedata.cpp \ |
eb5f63fe | 346 | torcontrol.cpp \ |
4f9e993b WL |
347 | txdb.cpp \ |
348 | txmempool.cpp \ | |
26c16d9d | 349 | validationinterface.cpp \ |
e463edc1 | 350 | $(BITCOIN_CORE_H) \ |
1785bdb9 | 351 | $(LIBZCASH_H) |
4f9e993b | 352 | |
f200002c | 353 | if ENABLE_ZMQ |
007148fa | 354 | libbitcoin_zmq_a_CPPFLAGS = $(BITCOIN_INCLUDES) $(ZMQ_CFLAGS) |
c459de2f | 355 | libbitcoin_zmq_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) |
f200002c | 356 | libbitcoin_zmq_a_SOURCES = \ |
8b78a819 T |
357 | zmq/zmqabstractnotifier.cpp \ |
358 | zmq/zmqnotificationinterface.cpp \ | |
359 | zmq/zmqpublishnotifier.cpp | |
f200002c JG |
360 | endif |
361 | ||
99eb947a | 362 | if ENABLE_PROTON |
99eb947a | 363 | libbitcoin_proton_a_CPPFLAGS = $(BITCOIN_INCLUDES) |
ad96d74a | 364 | libbitcoin_proton_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) |
99eb947a S |
365 | libbitcoin_proton_a_SOURCES = \ |
366 | amqp/amqpabstractnotifier.cpp \ | |
367 | amqp/amqpnotificationinterface.cpp \ | |
368 | amqp/amqppublishnotifier.cpp | |
369 | endif | |
f200002c | 370 | |
38ba3c66 | 371 | # wallet: zcashd, but only linked when wallet enabled |
c459de2f CF |
372 | libbitcoin_wallet_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) |
373 | libbitcoin_wallet_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) | |
4f9e993b | 374 | libbitcoin_wallet_a_SOURCES = \ |
0bb3d40f JG |
375 | utiltest.cpp \ |
376 | utiltest.h \ | |
6962bb3d | 377 | zcbenchmarks.cpp \ |
2f3ecb44 | 378 | zcbenchmarks.h \ |
6e9c7629 | 379 | wallet/asyncrpcoperation_mergetoaddress.cpp \ |
fc72c078 | 380 | wallet/asyncrpcoperation_sendmany.cpp \ |
06c19063 | 381 | wallet/asyncrpcoperation_shieldcoinbase.cpp \ |
a354a59f | 382 | wallet/crypter.cpp \ |
50c72f23 | 383 | wallet/db.cpp \ |
45232b19 S |
384 | paymentdisclosure.cpp \ |
385 | paymentdisclosuredb.cpp \ | |
9feb4b9e | 386 | transaction_builder.cpp \ |
45232b19 | 387 | wallet/rpcdisclosure.cpp \ |
50c72f23 | 388 | wallet/rpcdump.cpp \ |
5a9f2110 | 389 | cc/CCassetstx.cpp \ |
c2f34bc3 | 390 | cc/CCtx.cpp \ |
50c72f23 JS |
391 | wallet/rpcwallet.cpp \ |
392 | wallet/wallet.cpp \ | |
393 | wallet/wallet_ismine.cpp \ | |
394 | wallet/walletdb.cpp \ | |
9feb4b9e | 395 | zcash/zip32.cpp \ |
e463edc1 | 396 | $(BITCOIN_CORE_H) \ |
1785bdb9 | 397 | $(LIBZCASH_H) |
0b47fe6b | 398 | |
84ce18ca | 399 | # crypto primitives library |
c459de2f CF |
400 | crypto_libbitcoin_crypto_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_CONFIG_INCLUDES) |
401 | crypto_libbitcoin_crypto_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) | |
4791b99e | 402 | crypto_libbitcoin_crypto_a_SOURCES = \ |
4791b99e | 403 | crypto/common.h \ |
6d25662f JG |
404 | crypto/equihash.cpp \ |
405 | crypto/equihash.h \ | |
60157808 | 406 | crypto/equihash.tcc \ |
ff734e90 | 407 | crypto/hmac_sha256.cpp \ |
a8f5087e | 408 | crypto/hmac_sha256.h \ |
ff734e90 | 409 | crypto/hmac_sha512.cpp \ |
36fa4a78 | 410 | crypto/hmac_sha512.h \ |
ff734e90 JT |
411 | crypto/ripemd160.cpp \ |
412 | crypto/ripemd160.h \ | |
413 | crypto/sha1.cpp \ | |
4791b99e | 414 | crypto/sha1.h \ |
ff734e90 JT |
415 | crypto/sha256.cpp \ |
416 | crypto/sha256.h \ | |
417 | crypto/sha512.cpp \ | |
42181656 | 418 | crypto/sha512.h \ |
4dcb64c0 MT |
419 | crypto/haraka.h \ |
420 | crypto/haraka_portable.h \ | |
42181656 | 421 | crypto/verus_hash.h \ |
422 | crypto/verus_hash.cpp | |
4791b99e | 423 | |
2cc0a252 JG |
424 | if ENABLE_MINING |
425 | EQUIHASH_TROMP_SOURCES = \ | |
8b78a819 T |
426 | pow/tromp/equi_miner.h \ |
427 | pow/tromp/equi.h \ | |
428 | pow/tromp/osx_barrier.h | |
cbe39a38 | 429 | |
2cc0a252 | 430 | crypto_libbitcoin_crypto_a_CPPFLAGS += \ |
8b78a819 | 431 | -DEQUIHASH_TROMP_ATOMIC |
2cc0a252 | 432 | crypto_libbitcoin_crypto_a_SOURCES += \ |
8b78a819 | 433 | ${EQUIHASH_TROMP_SOURCES} |
2cc0a252 | 434 | endif |
4791b99e | 435 | |
f2c10320 AD |
436 | # Verus hash specific library - optimized |
437 | crypto_libverus_crypto_a_CPPFLAGS = -O3 -Wint-conversion -march=x86-64 -msse4 -msse4.1 -msse4.2 -mssse3 -mavx -maes -g -funroll-loops -fomit-frame-pointer -fPIC $(AM_CPPFLAGS) | |
438 | crypto_libverus_crypto_a_CXXFLAGS = -O3 -Wint-conversion -march=x86-64 -msse4 -msse4.1 -msse4.2 -mssse3 -mavx -maes -g -funroll-loops -fomit-frame-pointer -fPIC $(AM_CXXFLAGS) | |
42181656 | 439 | crypto_libverus_crypto_a_SOURCES = \ |
440 | crypto/haraka.h \ | |
f2c10320 AD |
441 | crypto/haraka.c |
442 | ||
443 | # Verus hash specific library - portable | |
444 | crypto_libverus_portable_crypto_a_CPPFLAGS = -O3 -Wint-conversion -march=x86-64 -g -funroll-loops -fomit-frame-pointer -fPIC $(AM_CPPFLAGS) | |
445 | crypto_libverus_portable_crypto_a_CXXFLAGS = -O3 -Wint-conversion -march=x86-64 -g -funroll-loops -fomit-frame-pointer -fPIC $(AM_CXXFLAGS) | |
446 | crypto_libverus_portable_crypto_a_SOURCES = \ | |
5296a850 MT |
447 | crypto/haraka_portable.h \ |
448 | crypto/haraka_portable.c | |
42181656 | 449 | |
38ba3c66 | 450 | # common: shared between zcashd and non-server tools |
42181656 | 451 | libbitcoin_common_a_CPPFLAGS = -fPIC $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) |
452 | libbitcoin_common_a_CXXFLAGS = -fPIC $(AM_CXXFLAGS) $(PIE_FLAGS) | |
0b47fe6b | 453 | libbitcoin_common_a_SOURCES = \ |
eda37330 | 454 | amount.cpp \ |
ff734e90 | 455 | arith_uint256.cpp \ |
75c82d49 | 456 | base58.cpp \ |
10e5357e | 457 | bech32.cpp \ |
0b47fe6b | 458 | chainparams.cpp \ |
75c82d49 | 459 | coins.cpp \ |
561e9e9d | 460 | compressor.cpp \ |
780f526b | 461 | consensus/upgrades.cpp \ |
ae775b5b JG |
462 | core_read.cpp \ |
463 | core_write.cpp \ | |
4dcb64c0 MT |
464 | crypto/haraka.h \ |
465 | crypto/haraka_portable.h \ | |
466 | crypto/verus_hash.h \ | |
17d0160a | 467 | crypto/verus_hash.cpp \ |
0b47fe6b | 468 | hash.cpp \ |
20c3ac51 | 469 | importcoin.cpp \ |
0b47fe6b | 470 | key.cpp \ |
3d31e09c | 471 | key_io.cpp \ |
75c82d49 | 472 | keystore.cpp \ |
0b47fe6b | 473 | netbase.cpp \ |
9feb4b9e | 474 | metrics.cpp \ |
ff734e90 JT |
475 | primitives/block.cpp \ |
476 | primitives/transaction.cpp \ | |
c5325a32 | 477 | primitives/nonce.cpp \ |
0b47fe6b | 478 | protocol.cpp \ |
d2e74c55 | 479 | pubkey.cpp \ |
928b950e | 480 | scheduler.cpp \ |
8a8e10f0 | 481 | script/cc.cpp \ |
611116d4 | 482 | script/interpreter.cpp \ |
cbd22a50 | 483 | script/script.cpp \ |
29bd53a1 | 484 | script/script_ext.cpp \ |
ff734e90 | 485 | script/script_error.cpp \ |
e088d65a | 486 | script/sign.cpp \ |
c4408a6c | 487 | script/standard.cpp \ |
3a868069 | 488 | veruslaunch.cpp \ |
e691e21f | 489 | transaction_builder.cpp \ |
e463edc1 | 490 | $(BITCOIN_CORE_H) \ |
1785bdb9 | 491 | $(LIBZCASH_H) |
84ce18ca WL |
492 | |
493 | # util: shared between all executables. | |
494 | # This library *must* be included to make sure that the glibc | |
495 | # backward-compatibility objects and their sanity checks are linked. | |
c459de2f CF |
496 | libbitcoin_util_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) |
497 | libbitcoin_util_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) | |
84ce18ca | 498 | libbitcoin_util_a_SOURCES = \ |
d7d187e8 | 499 | support/pagelocker.cpp \ |
84ce18ca | 500 | chainparamsbase.cpp \ |
71697f97 | 501 | clientversion.cpp \ |
bfc60703 WL |
502 | compat/glibc_sanity.cpp \ |
503 | compat/glibcxx_sanity.cpp \ | |
504 | compat/strnlen.cpp \ | |
6354935c | 505 | random.cpp \ |
4519a766 | 506 | rpc/protocol.cpp \ |
1630219d | 507 | support/cleanse.cpp \ |
0b47fe6b | 508 | sync.cpp \ |
de79aaa7 | 509 | uint256.cpp \ |
0b47fe6b | 510 | util.cpp \ |
ad49c256 | 511 | utilmoneystr.cpp \ |
bfc60703 | 512 | utilstrencodings.cpp \ |
ad49c256 | 513 | utiltime.cpp \ |
e463edc1 | 514 | $(BITCOIN_CORE_H) \ |
1785bdb9 | 515 | $(LIBZCASH_H) |
35b8af92 | 516 | |
d5aab704 | 517 | if GLIBC_BACK_COMPAT |
84ce18ca | 518 | libbitcoin_util_a_SOURCES += compat/glibc_compat.cpp |
d5aab704 CF |
519 | endif |
520 | ||
38ba3c66 | 521 | # cli: zcash-cli |
c459de2f CF |
522 | libbitcoin_cli_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) |
523 | libbitcoin_cli_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) | |
0b47fe6b | 524 | libbitcoin_cli_a_SOURCES = \ |
4519a766 | 525 | rpc/client.cpp \ |
e463edc1 | 526 | $(BITCOIN_CORE_H) \ |
1785bdb9 | 527 | $(LIBZCASH_H) |
0b47fe6b | 528 | |
84ce18ca | 529 | nodist_libbitcoin_util_a_SOURCES = $(srcdir)/obj/build.h |
35b8af92 CF |
530 | # |
531 | ||
532 | # bitcoind binary # | |
5166804f | 533 | komodod_SOURCES = bitcoind.cpp |
9000990c | 534 | komodod_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) |
535 | komodod_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) | |
5166804f | 536 | komodod_LDFLAGS = $(RELDFLAGS) $(AM_LDFLAGS) $(LIBTOOL_APP_LDFLAGS) |
72ac792b | 537 | |
538 | if TARGET_WINDOWS | |
5166804f | 539 | komodod_SOURCES += bitcoind-res.rc |
72ac792b | 540 | endif |
541 | ||
5166804f | 542 | komodod_LDADD = \ |
84ce18ca WL |
543 | $(LIBBITCOIN_SERVER) \ |
544 | $(LIBBITCOIN_COMMON) \ | |
a10a6e2a | 545 | $(LIBUNIVALUE) \ |
84ce18ca | 546 | $(LIBBITCOIN_UTIL) \ |
6a753e4f CF |
547 | $(LIBBITCOIN_ZMQ) \ |
548 | $(LIBBITCOIN_PROTON) \ | |
84ce18ca | 549 | $(LIBBITCOIN_CRYPTO) \ |
42181656 | 550 | $(LIBVERUS_CRYPTO) \ |
f2c10320 | 551 | $(LIBVERUS_PORTABLE_CRYPTO) \ |
1785bdb9 | 552 | $(LIBZCASH) \ |
26a8f68e | 553 | $(LIBSNARK) \ |
4a290b52 | 554 | $(LIBLEVELDB) \ |
07a99017 | 555 | $(LIBMEMENV) \ |
07f83521 SS |
556 | $(LIBSECP256K1) \ |
557 | $(LIBCRYPTOCONDITIONS) | |
55668266 | 558 | |
4f9e993b | 559 | if ENABLE_WALLET |
9feb4b9e | 560 | komodod_LDADD += $(LIBBITCOIN_WALLET) |
4f9e993b | 561 | endif |
72ac792b | 562 | |
5166804f | 563 | komodod_LDADD += \ |
c4da0970 NW |
564 | $(BOOST_LIBS) \ |
565 | $(BDB_LIBS) \ | |
566 | $(SSL_LIBS) \ | |
567 | $(CRYPTO_LIBS) \ | |
df377ca8 WL |
568 | $(EVENT_PTHREADS_LIBS) \ |
569 | $(EVENT_LIBS) \ | |
6a753e4f CF |
570 | $(ZMQ_LIBS) \ |
571 | $(PROTON_LIBS) \ | |
d3612b1c | 572 | $(LIBBITCOIN_CRYPTO) \ |
42181656 | 573 | $(LIBVERUS_CRYPTO) \ |
f2c10320 | 574 | $(LIBVERUS_PORTABLE_CRYPTO) \ |
1785bdb9 | 575 | $(LIBZCASH_LIBS) |
35b8af92 | 576 | |
99eb947a | 577 | if ENABLE_PROTON |
253b35b2 | 578 | komodod_LDADD += $(LIBBITCOIN_PROTON) $(PROTON_LIBS) |
99eb947a S |
579 | endif |
580 | ||
72ac792b | 581 | # bitcoin-cli binary # |
5166804f | 582 | komodo_cli_SOURCES = bitcoin-cli.cpp |
9000990c | 583 | komodo_cli_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) $(EVENT_CFLAGS) |
584 | komodo_cli_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) | |
5166804f | 585 | komodo_cli_LDFLAGS = $(RELDFLAGS) $(AM_LDFLAGS) $(LIBTOOL_APP_LDFLAGS) |
72ac792b | 586 | |
8b78a819 T |
587 | # wallet-utility binary # |
588 | if ENABLE_WALLET | |
589 | wallet_utility_SOURCES = wallet-utility.cpp | |
590 | wallet_utility_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) | |
591 | wallet_utility_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) | |
592 | wallet_utility_LDFLAGS = $(RELDFLAGS) $(AM_LDFLAGS) $(LIBTOOL_APP_LDFLAGS) | |
593 | endif | |
594 | ||
dee632cc | 595 | if TARGET_WINDOWS |
5166804f | 596 | komodo_cli_SOURCES += bitcoin-cli-res.rc |
dee632cc CF |
597 | endif |
598 | ||
5166804f | 599 | komodo_cli_LDADD = \ |
8b78a819 T |
600 | $(LIBBITCOIN_CLI) \ |
601 | $(LIBUNIVALUE) \ | |
602 | $(LIBBITCOIN_UTIL) \ | |
603 | $(BOOST_LIBS) \ | |
604 | $(SSL_LIBS) \ | |
605 | $(CRYPTO_LIBS) \ | |
606 | $(EVENT_LIBS) \ | |
607 | $(LIBZCASH) \ | |
608 | $(LIBBITCOIN_CRYPTO) \ | |
3a868069 | 609 | $(LIBVERUS_CRYPTO) \ |
f2c10320 | 610 | $(LIBVERUS_PORTABLE_CRYPTO) \ |
8b78a819 T |
611 | $(LIBZCASH_LIBS) |
612 | ||
613 | if ENABLE_WALLET | |
614 | wallet_utility_LDADD = \ | |
615 | libbitcoin_wallet.a \ | |
616 | $(LIBBITCOIN_COMMON) \ | |
617 | $(LIBBITCOIN_CRYPTO) \ | |
48d800c2 | 618 | $(LIBVERUS_CRYPTO) \ |
f2c10320 | 619 | $(LIBVERUS_PORTABLE_CRYPTO) \ |
8b78a819 T |
620 | $(LIBSECP256K1) \ |
621 | $(LIBBITCOIN_UTIL) \ | |
622 | $(BOOST_LIBS) \ | |
623 | $(BDB_LIBS) \ | |
624 | $(CRYPTO_LIBS) \ | |
625 | $(LIBZCASH) \ | |
626 | $(LIBSNARK) \ | |
afa02103 | 627 | $(LIBZCASH_LIBS)\ |
7213e636 | 628 | $(LIBCRYPTOCONDITIONS) |
8b78a819 | 629 | endif |
2a03a390 | 630 | |
66a89c08 | 631 | # zcash-tx binary # |
4d65d051 | 632 | komodo_tx_SOURCES = komodo-tx.cpp |
9000990c | 633 | komodo_tx_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) |
634 | komodo_tx_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) | |
4d65d051 | 635 | komodo_tx_LDFLAGS = $(RELDFLAGS) $(AM_LDFLAGS) $(LIBTOOL_APP_LDFLAGS) |
72ac792b | 636 | |
cc24610f | 637 | if TARGET_WINDOWS |
4d65d051 | 638 | komodo_tx_SOURCES += bitcoin-tx-res.rc |
cc24610f LD |
639 | endif |
640 | ||
66a89c08 | 641 | # FIXME: Is libzcash needed for zcash_tx? |
4d65d051 | 642 | komodo_tx_LDADD = \ |
a10a6e2a | 643 | $(LIBUNIVALUE) \ |
cbe39a38 JG |
644 | $(LIBBITCOIN_COMMON) \ |
645 | $(LIBBITCOIN_UTIL) \ | |
c4da0970 | 646 | $(LIBSECP256K1) \ |
1785bdb9 | 647 | $(LIBZCASH) \ |
26a8f68e | 648 | $(LIBSNARK) \ |
d3612b1c | 649 | $(LIBBITCOIN_CRYPTO) \ |
42181656 | 650 | $(LIBVERUS_CRYPTO) \ |
f2c10320 | 651 | $(LIBVERUS_PORTABLE_CRYPTO) \ |
07f83521 SS |
652 | $(LIBZCASH_LIBS) \ |
653 | $(LIBCRYPTOCONDITIONS) | |
28d412ff | 654 | |
4d65d051 | 655 | komodo_tx_LDADD += $(BOOST_LIBS) $(CRYPTO_LIBS) |
cbe39a38 | 656 | # |
2a03a390 | 657 | |
c9c4611d | 658 | # zcash protocol primitives # |
1785bdb9 | 659 | libzcash_a_SOURCES = \ |
8b78a819 T |
660 | zcash/IncrementalMerkleTree.cpp \ |
661 | zcash/NoteEncryption.cpp \ | |
662 | zcash/Address.cpp \ | |
663 | zcash/JoinSplit.cpp \ | |
664 | zcash/Proof.cpp \ | |
665 | zcash/Note.cpp \ | |
666 | zcash/prf.cpp \ | |
667 | zcash/util.cpp \ | |
7614198f | 668 | zcash/zip32.cpp \ |
8b78a819 T |
669 | zcash/circuit/commitment.tcc \ |
670 | zcash/circuit/gadget.tcc \ | |
671 | zcash/circuit/merkle.tcc \ | |
672 | zcash/circuit/note.tcc \ | |
673 | zcash/circuit/prfs.tcc \ | |
674 | zcash/circuit/utils.tcc | |
e463edc1 | 675 | |
c4379e3a | 676 | libzcash_a_CPPFLAGS = -DMULTICORE -fopenmp -fPIC -DBINARY_OUTPUT -DCURVE_ALT_BN128 -DBOOST_SPIRIT_THREADSAFE -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS $(HARDENED_CPPFLAGS) $(HARDENED_CXXFLAGS) $(HARDENED_LDFLAGS) -pipe $(SAN_LDFLAGS) -O1 -g -Wstack-protector $(SAN_CXXFLAGS) -fstack-protector-all -fPIE -fvisibility=hidden -DSTATIC $(BITCOIN_INCLUDES) |
e463edc1 | 677 | |
9feb4b9e | 678 | #libzcash_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) |
679 | #libzcash_a_LDFLAGS = $(RELDFLAGS) $(AM_LDFLAGS) $(LIBTOOL_APP_LDFLAGS) | |
680 | #libzcash_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) -DMONTGOMERY_OUTPUT | |
e463edc1 | 681 | |
c4379e3a | 682 | libzcash_a_CXXFLAGS = $(SAN_CXXFLAGS) $(HARDENED_CXXFLAGS) -fwrapv -fno-strict-aliasing |
c4379e3a | 683 | libzcash_a_LDFLAGS = $(SAN_LDFLAGS) $(HARDENED_LDFLAGS) |
decde386 SB |
684 | libzcash_a_CPPFLAGS += -DMONTGOMERY_OUTPUT |
685 | ||
08d6b02d | 686 | # zcashconsensus library # |
2cf5f16c | 687 | if BUILD_BITCOIN_LIBS |
08d6b02d JG |
688 | include_HEADERS = script/zcashconsensus.h |
689 | libzcashconsensus_la_SOURCES = \ | |
6d25662f | 690 | crypto/equihash.cpp \ |
36fa4a78 | 691 | crypto/hmac_sha512.cpp \ |
bfc60703 | 692 | crypto/ripemd160.cpp \ |
2cf5f16c | 693 | crypto/sha1.cpp \ |
36fa4a78 PW |
694 | crypto/sha256.cpp \ |
695 | crypto/sha512.cpp \ | |
2cf5f16c | 696 | hash.cpp \ |
bfc60703 | 697 | primitives/transaction.cpp \ |
c5325a32 | 698 | primitives/nonce.cpp \ |
2cf5f16c | 699 | pubkey.cpp \ |
08d6b02d | 700 | script/zcashconsensus.cpp \ |
bfc60703 WL |
701 | script/interpreter.cpp \ |
702 | script/script.cpp \ | |
2cf5f16c CF |
703 | uint256.cpp \ |
704 | utilstrencodings.cpp | |
705 | ||
706 | if GLIBC_BACK_COMPAT | |
8b78a819 | 707 | libzcashconsensus_la_SOURCES += compat/glibc_compat.cpp |
2cf5f16c CF |
708 | endif |
709 | ||
c459de2f | 710 | libzcashconsensus_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined $(RELDFLAGS) |
3d02d0f6 | 711 | libzcashconsensus_la_LIBADD = $(LIBSECP256K1) |
0cb91a8d | 712 | libzcashconsensus_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(builddir)/obj -I$(srcdir)/secp256k1/include -I$(srcdir)/cryptoconditions/include -DBUILD_BITCOIN_INTERNAL |
c459de2f | 713 | libzcashconsensus_la_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) |
72ac792b | 714 | |
cdd36c6c | 715 | endif |
72ac792b | 716 | # |
2cf5f16c | 717 | |
9773b95f | 718 | CLEANFILES = leveldb/libleveldb.a leveldb/libmemenv.a *.gcda *.gcno */*.gcno wallet/*/*.gcno |
35b8af92 CF |
719 | |
720 | DISTCLEANFILES = obj/build.h | |
721 | ||
83bef3fc | 722 | EXTRA_DIST = leveldb snark |
35b8af92 CF |
723 | |
724 | clean-local: | |
725 | -$(MAKE) -C leveldb clean | |
4300876c | 726 | -$(MAKE) -C secp256k1 clean |
e2283742 | 727 | -$(MAKE) -C snark clean |
da96e3b7 | 728 | -$(MAKE) -C univalue clean |
26d1b65c | 729 | rm -f leveldb/*/*.gcno leveldb/helpers/memenv/*.gcno |
54372482 | 730 | -rm -f config.h |
65e8ba4d | 731 | |
6b9f0d55 | 732 | .rc.o: |
70c71c50 | 733 | @test -f $(WINDRES) |
71697f97 | 734 | $(AM_V_GEN) $(WINDRES) -DWINDRES_PREPROC -i $< -o $@ |
6b9f0d55 CF |
735 | |
736 | .mm.o: | |
70c71c50 | 737 | $(AM_V_CXX) $(OBJCXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ |
c459de2f | 738 | $(CPPFLAGS) $(AM_CXXFLAGS) $(AM_CXXFLAGS) $(PIE_FLAGS) $(CXXFLAGS) -c -o $@ $< |
6b9f0d55 | 739 | |
a5e918a0 CF |
740 | check-symbols: $(bin_PROGRAMS) |
741 | if GLIBC_BACK_COMPAT | |
742 | @echo "Checking glibc back compat of [$(bin_PROGRAMS)]..." | |
2d342736 | 743 | $(AM_V_at) READELF=$(READELF) CPPFILT=$(CPPFILT) $(top_srcdir)/contrib/devtools/symbol-check.py $(bin_PROGRAMS) |
a5e918a0 CF |
744 | endif |
745 | ||
56734f4b TH |
746 | check-security: $(bin_PROGRAMS) |
747 | if HARDEN | |
748 | @echo "Checking binary security of [$(bin_PROGRAMS)]..." | |
2d342736 | 749 | $(AM_V_at) READELF=$(READELF) OBJDUMP=$(OBJDUMP) $(top_srcdir)/contrib/devtools/security-check.py $(bin_PROGRAMS) |
56734f4b TH |
750 | endif |
751 | ||
6b9f0d55 | 752 | %.pb.cc %.pb.h: %.proto |
70c71c50 CF |
753 | @test -f $(PROTOC) |
754 | $(AM_V_GEN) $(PROTOC) --cpp_out=$(@D) --proto_path=$(abspath $(<D) $<) | |
6b9f0d55 | 755 | |
4c121ffd SS |
756 | if ENABLE_TESTS |
757 | include Makefile.ktest.include | |
8962d040 | 758 | #include Makefile.test.include |
759 | #include Makefile.gtest.include | |
4c121ffd | 760 | endif |