@@ -187,6 +187,10 @@ AC_ARG_ENABLE(module_musig,
187187 AS_HELP_STRING ( [ --enable-module-musig] ,[ enable MuSig2 module [ default=yes] ] ) , [ ] ,
188188 [ SECP_SET_DEFAULT([ enable_module_musig] , [ yes] , [ yes] )] )
189189
190+ AC_ARG_ENABLE ( module_schnorrsig_fullagg ,
191+ AS_HELP_STRING ( [ --enable-module-schnorrsig-fullagg] ,[ enable schnorrsig full-aggregation module (experimental) [ default=no] ] ) , [ ] ,
192+ [ SECP_SET_DEFAULT([ enable_module_schnorrsig_fullagg] , [ no] , [ yes] )] )
193+
190194AC_ARG_ENABLE ( module_ellswift ,
191195 AS_HELP_STRING ( [ --enable-module-ellswift] ,[ enable ElligatorSwift module [ default=yes] ] ) , [ ] ,
192196 [ SECP_SET_DEFAULT([ enable_module_ellswift] , [ yes] , [ yes] )] )
@@ -397,6 +401,14 @@ SECP_CFLAGS="$SECP_CFLAGS $WERROR_CFLAGS"
397401
398402# Processing must be done in a reverse topological sorting of the dependency graph
399403# (dependent module first).
404+ if test x"$enable_module_schnorrsig_fullagg" = x"yes"; then
405+ if test x"$enable_module_schnorrsig" = x"no"; then
406+ AC_MSG_ERROR ( [ Module dependency error: You have disabled the schnorrsig module explicitly, but it is required by the schnorrsig fullagg module.] )
407+ fi
408+ enable_module_schnorrsig=yes
409+ SECP_CONFIG_DEFINES="$SECP_CONFIG_DEFINES -DENABLE_MODULE_SCHNORRSIG_FULLAGG=1"
410+ fi
411+
400412if test x"$enable_module_ellswift" = x"yes"; then
401413 SECP_CONFIG_DEFINES="$SECP_CONFIG_DEFINES -DENABLE_MODULE_ELLSWIFT=1"
402414fi
@@ -441,6 +453,10 @@ if test x"$enable_experimental" = x"no"; then
441453 if test x"$set_asm" = x"arm32"; then
442454 AC_MSG_ERROR ( [ ARM32 assembly is experimental. Use --enable-experimental to allow.] )
443455 fi
456+
457+ if test x"$enable_module_schnorrsig_fullagg" = x"yes"; then
458+ AC_MSG_ERROR ( [ Schnorrsig Full-Aggregation module is experimental. Use --enable-experimental to allow.] )
459+ fi
444460fi
445461
446462# ##
@@ -460,6 +476,7 @@ AM_CONDITIONAL([ENABLE_MODULE_ECDH], [test x"$enable_module_ecdh" = x"yes"])
460476AM_CONDITIONAL([ ENABLE_MODULE_RECOVERY] , [ test x"$enable_module_recovery" = x"yes"] )
461477AM_CONDITIONAL([ ENABLE_MODULE_EXTRAKEYS] , [ test x"$enable_module_extrakeys" = x"yes"] )
462478AM_CONDITIONAL([ ENABLE_MODULE_SCHNORRSIG] , [ test x"$enable_module_schnorrsig" = x"yes"] )
479+ AM_CONDITIONAL([ ENABLE_MODULE_SCHNORRSIG_FULLAGG] , [ test x"$enable_module_schnorrsig_fullagg" = x"yes"] )
463480AM_CONDITIONAL([ ENABLE_MODULE_MUSIG] , [ test x"$enable_module_musig" = x"yes"] )
464481AM_CONDITIONAL([ ENABLE_MODULE_ELLSWIFT] , [ test x"$enable_module_ellswift" = x"yes"] )
465482AM_CONDITIONAL([ USE_EXTERNAL_ASM] , [ test x"$enable_external_asm" = x"yes"] )
@@ -473,34 +490,35 @@ AC_OUTPUT
473490
474491echo
475492echo "Build Options:"
476- echo " with external callbacks = $enable_external_default_callbacks"
477- echo " with benchmarks = $enable_benchmark"
478- echo " with tests = $enable_tests"
479- echo " with exhaustive tests = $enable_exhaustive_tests"
480- echo " with ctime tests = $enable_ctime_tests"
481- echo " with coverage = $enable_coverage"
482- echo " with examples = $enable_examples"
483- echo " module ecdh = $enable_module_ecdh"
484- echo " module recovery = $enable_module_recovery"
485- echo " module extrakeys = $enable_module_extrakeys"
486- echo " module schnorrsig = $enable_module_schnorrsig"
487- echo " module musig = $enable_module_musig"
488- echo " module ellswift = $enable_module_ellswift"
493+ echo " with external callbacks = $enable_external_default_callbacks"
494+ echo " with benchmarks = $enable_benchmark"
495+ echo " with tests = $enable_tests"
496+ echo " with exhaustive tests = $enable_exhaustive_tests"
497+ echo " with ctime tests = $enable_ctime_tests"
498+ echo " with coverage = $enable_coverage"
499+ echo " with examples = $enable_examples"
500+ echo " module ecdh = $enable_module_ecdh"
501+ echo " module recovery = $enable_module_recovery"
502+ echo " module extrakeys = $enable_module_extrakeys"
503+ echo " module schnorrsig = $enable_module_schnorrsig"
504+ echo " module schnorrsig-halfagg = $enable_module_schnorrsig_fullagg"
505+ echo " module musig = $enable_module_musig"
506+ echo " module ellswift = $enable_module_ellswift"
489507echo
490- echo " asm = $set_asm"
491- echo " ecmult window size = $set_ecmult_window"
492- echo " ecmult gen table size = $set_ecmult_gen_kb KiB"
508+ echo " asm = $set_asm"
509+ echo " ecmult window size = $set_ecmult_window"
510+ echo " ecmult gen table size = $set_ecmult_gen_kb KiB"
493511# Hide test-only options unless they're used.
494512if test x"$set_widemul" != xauto; then
495- echo " wide multiplication = $set_widemul"
513+ echo " wide multiplication = $set_widemul"
496514fi
497515echo
498- echo " valgrind = $enable_valgrind"
499- echo " CC = $CC"
500- echo " CPPFLAGS = $CPPFLAGS"
501- echo " SECP_CFLAGS = $SECP_CFLAGS"
502- echo " CFLAGS = $CFLAGS"
503- echo " LDFLAGS = $LDFLAGS"
516+ echo " valgrind = $enable_valgrind"
517+ echo " CC = $CC"
518+ echo " CPPFLAGS = $CPPFLAGS"
519+ echo " SECP_CFLAGS = $SECP_CFLAGS"
520+ echo " CFLAGS = $CFLAGS"
521+ echo " LDFLAGS = $LDFLAGS"
504522
505523if test x"$print_msan_notice" = x"yes"; then
506524 echo
0 commit comments