github.com/aquanetwork/aquachain@v1.7.8/crypto/secp256k1/libsecp256k1/Makefile.am (about) 1 ACLOCAL_AMFLAGS = -I build-aux/m4 2 3 lib_LTLIBRARIES = libsecp256k1.la 4 if USE_JNI 5 JNI_LIB = libsecp256k1_jni.la 6 noinst_LTLIBRARIES = $(JNI_LIB) 7 else 8 JNI_LIB = 9 endif 10 include_HEADERS = include/secp256k1.h 11 noinst_HEADERS = 12 noinst_HEADERS += src/scalar.h 13 noinst_HEADERS += src/scalar_4x64.h 14 noinst_HEADERS += src/scalar_8x32.h 15 noinst_HEADERS += src/scalar_low.h 16 noinst_HEADERS += src/scalar_impl.h 17 noinst_HEADERS += src/scalar_4x64_impl.h 18 noinst_HEADERS += src/scalar_8x32_impl.h 19 noinst_HEADERS += src/scalar_low_impl.h 20 noinst_HEADERS += src/group.h 21 noinst_HEADERS += src/group_impl.h 22 noinst_HEADERS += src/num_gmp.h 23 noinst_HEADERS += src/num_gmp_impl.h 24 noinst_HEADERS += src/ecdsa.h 25 noinst_HEADERS += src/ecdsa_impl.h 26 noinst_HEADERS += src/eckey.h 27 noinst_HEADERS += src/eckey_impl.h 28 noinst_HEADERS += src/ecmult.h 29 noinst_HEADERS += src/ecmult_impl.h 30 noinst_HEADERS += src/ecmult_const.h 31 noinst_HEADERS += src/ecmult_const_impl.h 32 noinst_HEADERS += src/ecmult_gen.h 33 noinst_HEADERS += src/ecmult_gen_impl.h 34 noinst_HEADERS += src/num.h 35 noinst_HEADERS += src/num_impl.h 36 noinst_HEADERS += src/field_10x26.h 37 noinst_HEADERS += src/field_10x26_impl.h 38 noinst_HEADERS += src/field_5x52.h 39 noinst_HEADERS += src/field_5x52_impl.h 40 noinst_HEADERS += src/field_5x52_int128_impl.h 41 noinst_HEADERS += src/field_5x52_asm_impl.h 42 noinst_HEADERS += src/java/org_bitcoin_NativeSecp256k1.h 43 noinst_HEADERS += src/java/org_bitcoin_Secp256k1Context.h 44 noinst_HEADERS += src/util.h 45 noinst_HEADERS += src/scratch.h 46 noinst_HEADERS += src/scratch_impl.h 47 noinst_HEADERS += src/testrand.h 48 noinst_HEADERS += src/testrand_impl.h 49 noinst_HEADERS += src/hash.h 50 noinst_HEADERS += src/hash_impl.h 51 noinst_HEADERS += src/field.h 52 noinst_HEADERS += src/field_impl.h 53 noinst_HEADERS += src/bench.h 54 noinst_HEADERS += contrib/lax_der_parsing.h 55 noinst_HEADERS += contrib/lax_der_parsing.c 56 noinst_HEADERS += contrib/lax_der_privatekey_parsing.h 57 noinst_HEADERS += contrib/lax_der_privatekey_parsing.c 58 59 if USE_EXTERNAL_ASM 60 COMMON_LIB = libsecp256k1_common.la 61 noinst_LTLIBRARIES = $(COMMON_LIB) 62 else 63 COMMON_LIB = 64 endif 65 66 pkgconfigdir = $(libdir)/pkgconfig 67 pkgconfig_DATA = libsecp256k1.pc 68 69 if USE_EXTERNAL_ASM 70 if USE_ASM_ARM 71 libsecp256k1_common_la_SOURCES = src/asm/field_10x26_arm.s 72 endif 73 endif 74 75 libsecp256k1_la_SOURCES = src/secp256k1.c 76 libsecp256k1_la_CPPFLAGS = -DSECP256K1_BUILD -I$(top_srcdir)/include -I$(top_srcdir)/src $(SECP_INCLUDES) 77 libsecp256k1_la_LIBADD = $(JNI_LIB) $(SECP_LIBS) $(COMMON_LIB) 78 79 libsecp256k1_jni_la_SOURCES = src/java/org_bitcoin_NativeSecp256k1.c src/java/org_bitcoin_Secp256k1Context.c 80 libsecp256k1_jni_la_CPPFLAGS = -DSECP256K1_BUILD $(JNI_INCLUDES) 81 82 noinst_PROGRAMS = 83 if USE_BENCHMARK 84 noinst_PROGRAMS += bench_verify bench_sign bench_internal bench_ecmult 85 bench_verify_SOURCES = src/bench_verify.c 86 bench_verify_LDADD = libsecp256k1.la $(SECP_LIBS) $(SECP_TEST_LIBS) $(COMMON_LIB) 87 bench_sign_SOURCES = src/bench_sign.c 88 bench_sign_LDADD = libsecp256k1.la $(SECP_LIBS) $(SECP_TEST_LIBS) $(COMMON_LIB) 89 bench_internal_SOURCES = src/bench_internal.c 90 bench_internal_LDADD = $(SECP_LIBS) $(COMMON_LIB) 91 bench_internal_CPPFLAGS = -DSECP256K1_BUILD $(SECP_INCLUDES) 92 bench_ecmult_SOURCES = src/bench_ecmult.c 93 bench_ecmult_LDADD = $(SECP_LIBS) $(COMMON_LIB) 94 bench_ecmult_CPPFLAGS = -DSECP256K1_BUILD $(SECP_INCLUDES) 95 endif 96 97 TESTS = 98 if USE_TESTS 99 noinst_PROGRAMS += tests 100 tests_SOURCES = src/tests.c 101 tests_CPPFLAGS = -DSECP256K1_BUILD -I$(top_srcdir)/src -I$(top_srcdir)/include $(SECP_INCLUDES) $(SECP_TEST_INCLUDES) 102 if !ENABLE_COVERAGE 103 tests_CPPFLAGS += -DVERIFY 104 endif 105 tests_LDADD = $(SECP_LIBS) $(SECP_TEST_LIBS) $(COMMON_LIB) 106 tests_LDFLAGS = -static 107 TESTS += tests 108 endif 109 110 if USE_EXHAUSTIVE_TESTS 111 noinst_PROGRAMS += exhaustive_tests 112 exhaustive_tests_SOURCES = src/tests_exhaustive.c 113 exhaustive_tests_CPPFLAGS = -DSECP256K1_BUILD -I$(top_srcdir)/src $(SECP_INCLUDES) 114 if !ENABLE_COVERAGE 115 exhaustive_tests_CPPFLAGS += -DVERIFY 116 endif 117 exhaustive_tests_LDADD = $(SECP_LIBS) 118 exhaustive_tests_LDFLAGS = -static 119 TESTS += exhaustive_tests 120 endif 121 122 JAVAROOT=src/java 123 JAVAORG=org/bitcoin 124 JAVA_GUAVA=$(srcdir)/$(JAVAROOT)/guava/guava-18.0.jar 125 CLASSPATH_ENV=CLASSPATH=$(JAVA_GUAVA) 126 JAVA_FILES= \ 127 $(JAVAROOT)/$(JAVAORG)/NativeSecp256k1.java \ 128 $(JAVAROOT)/$(JAVAORG)/NativeSecp256k1Test.java \ 129 $(JAVAROOT)/$(JAVAORG)/NativeSecp256k1Util.java \ 130 $(JAVAROOT)/$(JAVAORG)/Secp256k1Context.java 131 132 if USE_JNI 133 134 $(JAVA_GUAVA): 135 @echo Guava is missing. Fetch it via: \ 136 wget https://search.maven.org/remotecontent?filepath=com/google/guava/guava/18.0/guava-18.0.jar -O $(@) 137 @false 138 139 .stamp-java: $(JAVA_FILES) 140 @echo Compiling $^ 141 $(AM_V_at)$(CLASSPATH_ENV) javac $^ 142 @touch $@ 143 144 if USE_TESTS 145 146 check-java: libsecp256k1.la $(JAVA_GUAVA) .stamp-java 147 $(AM_V_at)java -Djava.library.path="./:./src:./src/.libs:.libs/" -cp "$(JAVA_GUAVA):$(JAVAROOT)" $(JAVAORG)/NativeSecp256k1Test 148 149 endif 150 endif 151 152 if USE_ECMULT_STATIC_PRECOMPUTATION 153 CPPFLAGS_FOR_BUILD +=-I$(top_srcdir) 154 CFLAGS_FOR_BUILD += -Wall -Wextra -Wno-unused-function 155 156 gen_context_OBJECTS = gen_context.o 157 gen_context_BIN = gen_context$(BUILD_EXEEXT) 158 gen_%.o: src/gen_%.c 159 $(CC_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD) -c $< -o $@ 160 161 $(gen_context_BIN): $(gen_context_OBJECTS) 162 $(CC_FOR_BUILD) $^ -o $@ 163 164 $(libsecp256k1_la_OBJECTS): src/ecmult_static_context.h 165 $(tests_OBJECTS): src/ecmult_static_context.h 166 $(bench_internal_OBJECTS): src/ecmult_static_context.h 167 $(bench_ecmult_OBJECTS): src/ecmult_static_context.h 168 169 src/ecmult_static_context.h: $(gen_context_BIN) 170 ./$(gen_context_BIN) 171 172 CLEANFILES = $(gen_context_BIN) src/ecmult_static_context.h $(JAVAROOT)/$(JAVAORG)/*.class .stamp-java 173 endif 174 175 EXTRA_DIST = autogen.sh src/gen_context.c src/basic-config.h $(JAVA_FILES) 176 177 if ENABLE_MODULE_ECDH 178 include src/modules/ecdh/Makefile.am.include 179 endif 180 181 if ENABLE_MODULE_RECOVERY 182 include src/modules/recovery/Makefile.am.include 183 endif