]> Git Repo - secp256k1.git/blob - Makefile.am
Rename msg32 to msghash32 in ecdsa_sign/verify and add explanation
[secp256k1.git] / Makefile.am
1 ACLOCAL_AMFLAGS = -I build-aux/m4
2
3 lib_LTLIBRARIES = libsecp256k1.la
4 include_HEADERS = include/secp256k1.h
5 include_HEADERS += include/secp256k1_preallocated.h
6 noinst_HEADERS =
7 noinst_HEADERS += src/scalar.h
8 noinst_HEADERS += src/scalar_4x64.h
9 noinst_HEADERS += src/scalar_8x32.h
10 noinst_HEADERS += src/scalar_low.h
11 noinst_HEADERS += src/scalar_impl.h
12 noinst_HEADERS += src/scalar_4x64_impl.h
13 noinst_HEADERS += src/scalar_8x32_impl.h
14 noinst_HEADERS += src/scalar_low_impl.h
15 noinst_HEADERS += src/group.h
16 noinst_HEADERS += src/group_impl.h
17 noinst_HEADERS += src/num_gmp.h
18 noinst_HEADERS += src/num_gmp_impl.h
19 noinst_HEADERS += src/ecdsa.h
20 noinst_HEADERS += src/ecdsa_impl.h
21 noinst_HEADERS += src/eckey.h
22 noinst_HEADERS += src/eckey_impl.h
23 noinst_HEADERS += src/ecmult.h
24 noinst_HEADERS += src/ecmult_impl.h
25 noinst_HEADERS += src/ecmult_const.h
26 noinst_HEADERS += src/ecmult_const_impl.h
27 noinst_HEADERS += src/ecmult_gen.h
28 noinst_HEADERS += src/ecmult_gen_impl.h
29 noinst_HEADERS += src/num.h
30 noinst_HEADERS += src/num_impl.h
31 noinst_HEADERS += src/field_10x26.h
32 noinst_HEADERS += src/field_10x26_impl.h
33 noinst_HEADERS += src/field_5x52.h
34 noinst_HEADERS += src/field_5x52_impl.h
35 noinst_HEADERS += src/field_5x52_int128_impl.h
36 noinst_HEADERS += src/field_5x52_asm_impl.h
37 noinst_HEADERS += src/assumptions.h
38 noinst_HEADERS += src/util.h
39 noinst_HEADERS += src/scratch.h
40 noinst_HEADERS += src/scratch_impl.h
41 noinst_HEADERS += src/selftest.h
42 noinst_HEADERS += src/testrand.h
43 noinst_HEADERS += src/testrand_impl.h
44 noinst_HEADERS += src/hash.h
45 noinst_HEADERS += src/hash_impl.h
46 noinst_HEADERS += src/field.h
47 noinst_HEADERS += src/field_impl.h
48 noinst_HEADERS += src/bench.h
49 noinst_HEADERS += contrib/lax_der_parsing.h
50 noinst_HEADERS += contrib/lax_der_parsing.c
51 noinst_HEADERS += contrib/lax_der_privatekey_parsing.h
52 noinst_HEADERS += contrib/lax_der_privatekey_parsing.c
53
54 if USE_EXTERNAL_ASM
55 COMMON_LIB = libsecp256k1_common.la
56 noinst_LTLIBRARIES = $(COMMON_LIB)
57 else
58 COMMON_LIB =
59 endif
60
61 pkgconfigdir = $(libdir)/pkgconfig
62 pkgconfig_DATA = libsecp256k1.pc
63
64 if USE_EXTERNAL_ASM
65 if USE_ASM_ARM
66 libsecp256k1_common_la_SOURCES = src/asm/field_10x26_arm.s
67 endif
68 endif
69
70 libsecp256k1_la_SOURCES = src/secp256k1.c
71 libsecp256k1_la_CPPFLAGS = -DSECP256K1_BUILD -I$(top_srcdir)/include -I$(top_srcdir)/src $(SECP_INCLUDES)
72 libsecp256k1_la_LIBADD = $(SECP_LIBS) $(COMMON_LIB)
73
74 if VALGRIND_ENABLED
75 libsecp256k1_la_CPPFLAGS += -DVALGRIND
76 endif
77
78 noinst_PROGRAMS =
79 if USE_BENCHMARK
80 noinst_PROGRAMS += bench_verify bench_sign bench_internal bench_ecmult
81 bench_verify_SOURCES = src/bench_verify.c
82 bench_verify_LDADD = libsecp256k1.la $(SECP_LIBS) $(SECP_TEST_LIBS) $(COMMON_LIB)
83 # SECP_TEST_INCLUDES are only used here for CRYPTO_CPPFLAGS
84 bench_verify_CPPFLAGS = -DSECP256K1_BUILD $(SECP_TEST_INCLUDES)
85 bench_sign_SOURCES = src/bench_sign.c
86 bench_sign_LDADD = libsecp256k1.la $(SECP_LIBS) $(SECP_TEST_LIBS) $(COMMON_LIB)
87 bench_internal_SOURCES = src/bench_internal.c
88 bench_internal_LDADD = $(SECP_LIBS) $(COMMON_LIB)
89 bench_internal_CPPFLAGS = -DSECP256K1_BUILD $(SECP_INCLUDES)
90 bench_ecmult_SOURCES = src/bench_ecmult.c
91 bench_ecmult_LDADD = $(SECP_LIBS) $(COMMON_LIB)
92 bench_ecmult_CPPFLAGS = -DSECP256K1_BUILD $(SECP_INCLUDES)
93 endif
94
95 TESTS =
96 if USE_TESTS
97 noinst_PROGRAMS += tests
98 tests_SOURCES = src/tests.c
99 tests_CPPFLAGS = -DSECP256K1_BUILD -I$(top_srcdir)/src -I$(top_srcdir)/include $(SECP_INCLUDES) $(SECP_TEST_INCLUDES)
100 if VALGRIND_ENABLED
101 tests_CPPFLAGS += -DVALGRIND
102 noinst_PROGRAMS += valgrind_ctime_test
103 valgrind_ctime_test_SOURCES = src/valgrind_ctime_test.c
104 valgrind_ctime_test_LDADD = libsecp256k1.la $(SECP_LIBS) $(SECP_LIBS) $(COMMON_LIB)
105 endif
106 if !ENABLE_COVERAGE
107 tests_CPPFLAGS += -DVERIFY
108 endif
109 tests_LDADD = $(SECP_LIBS) $(SECP_TEST_LIBS) $(COMMON_LIB)
110 tests_LDFLAGS = -static
111 TESTS += tests
112 endif
113
114 if USE_EXHAUSTIVE_TESTS
115 noinst_PROGRAMS += exhaustive_tests
116 exhaustive_tests_SOURCES = src/tests_exhaustive.c
117 exhaustive_tests_CPPFLAGS = -DSECP256K1_BUILD -I$(top_srcdir)/src $(SECP_INCLUDES)
118 if !ENABLE_COVERAGE
119 exhaustive_tests_CPPFLAGS += -DVERIFY
120 endif
121 exhaustive_tests_LDADD = $(SECP_LIBS) $(COMMON_LIB)
122 exhaustive_tests_LDFLAGS = -static
123 TESTS += exhaustive_tests
124 endif
125
126 if USE_ECMULT_STATIC_PRECOMPUTATION
127 CPPFLAGS_FOR_BUILD +=-I$(top_srcdir) -I$(builddir)/src
128
129 gen_context_OBJECTS = gen_context.o
130 gen_context_BIN = gen_context$(BUILD_EXEEXT)
131 gen_%.o: src/gen_%.c src/libsecp256k1-config.h
132         $(CC_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD) -c $< -o $@
133
134 $(gen_context_BIN): $(gen_context_OBJECTS)
135         $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) $^ -o $@
136
137 $(libsecp256k1_la_OBJECTS): src/ecmult_static_context.h
138 $(tests_OBJECTS): src/ecmult_static_context.h
139 $(bench_internal_OBJECTS): src/ecmult_static_context.h
140 $(bench_ecmult_OBJECTS): src/ecmult_static_context.h
141
142 src/ecmult_static_context.h: $(gen_context_BIN)
143         ./$(gen_context_BIN)
144
145 CLEANFILES = $(gen_context_BIN) src/ecmult_static_context.h
146 endif
147
148 EXTRA_DIST = autogen.sh src/gen_context.c src/basic-config.h
149
150 if ENABLE_MODULE_ECDH
151 include src/modules/ecdh/Makefile.am.include
152 endif
153
154 if ENABLE_MODULE_RECOVERY
155 include src/modules/recovery/Makefile.am.include
156 endif
157
158 if ENABLE_MODULE_EXTRAKEYS
159 include src/modules/extrakeys/Makefile.am.include
160 endif
161
162 if ENABLE_MODULE_SCHNORRSIG
163 include src/modules/schnorrsig/Makefile.am.include
164 endif
This page took 0.030561 seconds and 4 git commands to generate.