]> Git Repo - secp256k1.git/blame - Makefile.am
Merge #648: Prevent ints from wrapping around in scratch space functions
[secp256k1.git] / Makefile.am
CommitLineData
6fac238f 1ACLOCAL_AMFLAGS = -I build-aux/m4
f9aac5b0 2
78cd96b1 3lib_LTLIBRARIES = libsecp256k1.la
78cd96b1 4include_HEADERS = include/secp256k1.h
238305fd 5include_HEADERS += include/secp256k1_preallocated.h
78cd96b1 6noinst_HEADERS =
a9f5c8b8 7noinst_HEADERS += src/scalar.h
1d52a8b1
PW
8noinst_HEADERS += src/scalar_4x64.h
9noinst_HEADERS += src/scalar_8x32.h
83836a95 10noinst_HEADERS += src/scalar_low.h
a9f5c8b8 11noinst_HEADERS += src/scalar_impl.h
1d52a8b1
PW
12noinst_HEADERS += src/scalar_4x64_impl.h
13noinst_HEADERS += src/scalar_8x32_impl.h
83836a95 14noinst_HEADERS += src/scalar_low_impl.h
78cd96b1 15noinst_HEADERS += src/group.h
11ab5622 16noinst_HEADERS += src/group_impl.h
78cd96b1 17noinst_HEADERS += src/num_gmp.h
11ab5622 18noinst_HEADERS += src/num_gmp_impl.h
78cd96b1 19noinst_HEADERS += src/ecdsa.h
11ab5622 20noinst_HEADERS += src/ecdsa_impl.h
e2f71f1e
PW
21noinst_HEADERS += src/eckey.h
22noinst_HEADERS += src/eckey_impl.h
78cd96b1 23noinst_HEADERS += src/ecmult.h
11ab5622 24noinst_HEADERS += src/ecmult_impl.h
44015000
AP
25noinst_HEADERS += src/ecmult_const.h
26noinst_HEADERS += src/ecmult_const_impl.h
949c1ebb
PW
27noinst_HEADERS += src/ecmult_gen.h
28noinst_HEADERS += src/ecmult_gen_impl.h
78cd96b1 29noinst_HEADERS += src/num.h
11ab5622 30noinst_HEADERS += src/num_impl.h
78cd96b1 31noinst_HEADERS += src/field_10x26.h
11ab5622 32noinst_HEADERS += src/field_10x26_impl.h
78cd96b1 33noinst_HEADERS += src/field_5x52.h
11ab5622
PW
34noinst_HEADERS += src/field_5x52_impl.h
35noinst_HEADERS += src/field_5x52_int128_impl.h
36noinst_HEADERS += src/field_5x52_asm_impl.h
7c068998 37noinst_HEADERS += src/assumptions.h
78cd96b1 38noinst_HEADERS += src/util.h
548de42e
AP
39noinst_HEADERS += src/scratch.h
40noinst_HEADERS += src/scratch_impl.h
861f9a59
GM
41noinst_HEADERS += src/testrand.h
42noinst_HEADERS += src/testrand_impl.h
bbd5ba7c
PW
43noinst_HEADERS += src/hash.h
44noinst_HEADERS += src/hash_impl.h
78cd96b1 45noinst_HEADERS += src/field.h
11ab5622 46noinst_HEADERS += src/field_impl.h
6558a267 47noinst_HEADERS += src/bench.h
fea19e7b 48noinst_HEADERS += contrib/lax_der_parsing.h
eed87af1 49noinst_HEADERS += contrib/lax_der_parsing.c
4a243da4 50noinst_HEADERS += contrib/lax_der_privatekey_parsing.h
eed87af1 51noinst_HEADERS += contrib/lax_der_privatekey_parsing.c
78cd96b1 52
001f1763
WL
53if USE_EXTERNAL_ASM
54COMMON_LIB = libsecp256k1_common.la
55noinst_LTLIBRARIES = $(COMMON_LIB)
56else
57COMMON_LIB =
58endif
59
81b2faeb 60pkgconfigdir = $(libdir)/pkgconfig
c7ee71f7
AT
61pkgconfig_DATA = libsecp256k1.pc
62
001f1763
WL
63if USE_EXTERNAL_ASM
64if USE_ASM_ARM
65libsecp256k1_common_la_SOURCES = src/asm/field_10x26_arm.s
66endif
67endif
68
8881212e 69libsecp256k1_la_SOURCES = src/secp256k1.c
3093576a 70libsecp256k1_la_CPPFLAGS = -DSECP256K1_BUILD -I$(top_srcdir)/include -I$(top_srcdir)/src $(SECP_INCLUDES)
642cd062 71libsecp256k1_la_LIBADD = $(SECP_LIBS) $(COMMON_LIB)
8881212e 72
7b50483a
GM
73if VALGRIND_ENABLED
74libsecp256k1_la_CPPFLAGS += -DVALGRIND
75endif
76
78cd96b1
CF
77noinst_PROGRAMS =
78if USE_BENCHMARK
bc65aa79 79noinst_PROGRAMS += bench_verify bench_sign bench_internal bench_ecmult
504c63d7 80bench_verify_SOURCES = src/bench_verify.c
001f1763 81bench_verify_LDADD = libsecp256k1.la $(SECP_LIBS) $(SECP_TEST_LIBS) $(COMMON_LIB)
3b7d26b2 82# SECP_TEST_INCLUDES are only used here for CRYPTO_CPPFLAGS
83bench_verify_CPPFLAGS = -DSECP256K1_BUILD $(SECP_TEST_INCLUDES)
fa5c13ff 84bench_sign_SOURCES = src/bench_sign.c
001f1763 85bench_sign_LDADD = libsecp256k1.la $(SECP_LIBS) $(SECP_TEST_LIBS) $(COMMON_LIB)
039723d5 86bench_internal_SOURCES = src/bench_internal.c
001f1763 87bench_internal_LDADD = $(SECP_LIBS) $(COMMON_LIB)
ac01378c 88bench_internal_CPPFLAGS = -DSECP256K1_BUILD $(SECP_INCLUDES)
bc65aa79
PW
89bench_ecmult_SOURCES = src/bench_ecmult.c
90bench_ecmult_LDADD = $(SECP_LIBS) $(COMMON_LIB)
91bench_ecmult_CPPFLAGS = -DSECP256K1_BUILD $(SECP_INCLUDES)
78cd96b1
CF
92endif
93
20b8877b 94TESTS =
78cd96b1
CF
95if USE_TESTS
96noinst_PROGRAMS += tests
97tests_SOURCES = src/tests.c
a724d729 98tests_CPPFLAGS = -DSECP256K1_BUILD -I$(top_srcdir)/src -I$(top_srcdir)/include $(SECP_INCLUDES) $(SECP_TEST_INCLUDES)
3d230225
GM
99if VALGRIND_ENABLED
100tests_CPPFLAGS += -DVALGRIND
101noinst_PROGRAMS += valgrind_ctime_test
102valgrind_ctime_test_SOURCES = src/valgrind_ctime_test.c
57d3a3c6 103valgrind_ctime_test_LDADD = libsecp256k1.la $(SECP_LIBS) $(SECP_LIBS) $(COMMON_LIB)
3d230225 104endif
a724d729
AP
105if !ENABLE_COVERAGE
106tests_CPPFLAGS += -DVERIFY
107endif
001f1763 108tests_LDADD = $(SECP_LIBS) $(SECP_TEST_LIBS) $(COMMON_LIB)
78cd96b1 109tests_LDFLAGS = -static
20b8877b
AP
110TESTS += tests
111endif
112
113if USE_EXHAUSTIVE_TESTS
114noinst_PROGRAMS += exhaustive_tests
115exhaustive_tests_SOURCES = src/tests_exhaustive.c
a724d729
AP
116exhaustive_tests_CPPFLAGS = -DSECP256K1_BUILD -I$(top_srcdir)/src $(SECP_INCLUDES)
117if !ENABLE_COVERAGE
118exhaustive_tests_CPPFLAGS += -DVERIFY
119endif
83483869 120exhaustive_tests_LDADD = $(SECP_LIBS) $(COMMON_LIB)
20b8877b
AP
121exhaustive_tests_LDFLAGS = -static
122TESTS += exhaustive_tests
78cd96b1
CF
123endif
124
fbecc38a 125if USE_ECMULT_STATIC_PRECOMPUTATION
dcb2e3b3 126CPPFLAGS_FOR_BUILD +=-I$(top_srcdir) -I$(builddir)/src
fbecc38a
TD
127
128gen_context_OBJECTS = gen_context.o
e4ce3936 129gen_context_BIN = gen_context$(BUILD_EXEEXT)
dcb2e3b3 130gen_%.o: src/gen_%.c src/libsecp256k1-config.h
fbecc38a
TD
131 $(CC_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD) -c $< -o $@
132
e4ce3936 133$(gen_context_BIN): $(gen_context_OBJECTS)
a34bcaad 134 $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) $^ -o $@
fbecc38a 135
b8e39ac5
CF
136$(libsecp256k1_la_OBJECTS): src/ecmult_static_context.h
137$(tests_OBJECTS): src/ecmult_static_context.h
6da1446d 138$(bench_internal_OBJECTS): src/ecmult_static_context.h
bc65aa79 139$(bench_ecmult_OBJECTS): src/ecmult_static_context.h
fbecc38a 140
e4ce3936
CF
141src/ecmult_static_context.h: $(gen_context_BIN)
142 ./$(gen_context_BIN)
c37812f5 143
642cd062 144CLEANFILES = $(gen_context_BIN) src/ecmult_static_context.h
fbecc38a
TD
145endif
146
642cd062 147EXTRA_DIST = autogen.sh src/gen_context.c src/basic-config.h
0739bbb6
AP
148
149if ENABLE_MODULE_ECDH
150include src/modules/ecdh/Makefile.am.include
151endif
a5a66c70 152
9f443be0
PW
153if ENABLE_MODULE_RECOVERY
154include src/modules/recovery/Makefile.am.include
155endif
This page took 0.049614 seconds and 4 git commands to generate.