From f26d43dad65c8aafdba057dde9cfa1adb4b58012 Mon Sep 17 00:00:00 2001 From: Tim Ruffing Date: Thu, 2 Dec 2021 13:44:36 +0100 Subject: [PATCH] build: Remove #undef hack for ASM in the precomputation programs This was necessary because we used to cross-compile the library but compile the precomputation programs for the build host. Now it's no longer necessary and we can cleanly link even the external ASM (which was the intent of #935). On the way, remove an obsolete "-I" parameter. --- Makefile.am | 8 +++++++- src/gen_ecmult_gen_static_prec_table.c | 6 ------ src/gen_ecmult_static_pre_g.c | 6 ------ 3 files changed, 7 insertions(+), 13 deletions(-) diff --git a/Makefile.am b/Makefile.am index 2623b9e29f..5a3bda48bd 100644 --- a/Makefile.am +++ b/Makefile.am @@ -119,7 +119,7 @@ endif if USE_EXHAUSTIVE_TESTS noinst_PROGRAMS += exhaustive_tests exhaustive_tests_SOURCES = src/tests_exhaustive.c -exhaustive_tests_CPPFLAGS = -I$(top_srcdir)/src $(SECP_INCLUDES) +exhaustive_tests_CPPFLAGS = $(SECP_INCLUDES) if !ENABLE_COVERAGE exhaustive_tests_CPPFLAGS += -DVERIFY endif @@ -131,8 +131,14 @@ endif ### Precomputed tables EXTRA_PROGRAMS = gen_ecmult_static_pre_g gen_ecmult_gen_static_prec_table CLEANFILES = $(EXTRA_PROGRAMS) + gen_ecmult_static_pre_g_SOURCES = src/gen_ecmult_static_pre_g.c +gen_ecmult_static_pre_g_CPPFLAGS = $(SECP_INCLUDES) +gen_ecmult_static_pre_g_LDADD = $(SECP_LIBS) $(COMMON_LIB) + gen_ecmult_gen_static_prec_table_SOURCES = src/gen_ecmult_gen_static_prec_table.c +gen_ecmult_gen_static_prec_table_CPPFLAGS = $(SECP_INCLUDES) +gen_ecmult_gen_static_prec_table_LDADD = $(SECP_LIBS) $(COMMON_LIB) # See Automake manual, Section "Errors with distclean". # We don't list any dependencies for the prebuilt files here because diff --git a/src/gen_ecmult_gen_static_prec_table.c b/src/gen_ecmult_gen_static_prec_table.c index d42448212a..1be5731b9b 100644 --- a/src/gen_ecmult_gen_static_prec_table.c +++ b/src/gen_ecmult_gen_static_prec_table.c @@ -13,12 +13,6 @@ #include "libsecp256k1-config.h" #endif -/* In principle we could use ASM, but this yields only a minor speedup in - build time and it's very complicated. In particular when cross-compiling, we'd - need to build the ASM for the build and the host machine. */ -#undef USE_EXTERNAL_ASM -#undef USE_ASM_X86_64 - #include "../include/secp256k1.h" #include "assumptions.h" #include "util.h" diff --git a/src/gen_ecmult_static_pre_g.c b/src/gen_ecmult_static_pre_g.c index af40d13f9c..ba1d1f17d7 100644 --- a/src/gen_ecmult_static_pre_g.c +++ b/src/gen_ecmult_static_pre_g.c @@ -13,12 +13,6 @@ #include "libsecp256k1-config.h" #endif -/* In principle we could use ASM, but this yields only a minor speedup in - build time and it's very complicated. In particular when cross-compiling, we'd - need to build the ASM for the build and the host machine. */ -#undef USE_EXTERNAL_ASM -#undef USE_ASM_X86_64 - #include "../include/secp256k1.h" #include "assumptions.h" #include "util.h"