mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-11 13:43:47 +01:00
f7d654b81e
This is mainly a matter of automake trickery: we build each static library in two versions now: one with the TOR_UNIT_TESTS macro defined, and one without. When TOR_UNIT_TESTS is defined, we can enable mocking and expose more functions. When it's not defined, we can lock the binary down more. The alternatives would be to have alternate build modes: a "testing configuration" for building the libraries with test support, and a "production configuration" for building them without. I don't favor that approach, since I think it would mean more people runnning binaries build for testing, or more people not running unit tests.
122 lines
3.5 KiB
Plaintext
122 lines
3.5 KiB
Plaintext
|
|
noinst_LIBRARIES += \
|
|
src/common/libor.a \
|
|
src/common/libor-crypto.a \
|
|
src/common/libor-event.a
|
|
|
|
if UNITTESTS_ENABLED
|
|
noinst_LIBRARIES += \
|
|
src/common/libor-testing.a \
|
|
src/common/libor-crypto-testing.a \
|
|
src/common/libor-event-testing.a
|
|
endif
|
|
|
|
EXTRA_DIST+= \
|
|
src/common/common_sha1.i \
|
|
src/common/Makefile.nmake
|
|
|
|
#CFLAGS = -Wall -Wpointer-arith -O2
|
|
AM_CPPFLAGS += -I$(srcdir)/src/common -Isrc/common
|
|
|
|
if USE_OPENBSD_MALLOC
|
|
libor_extra_source=src/ext/OpenBSD_malloc_Linux.c
|
|
else
|
|
libor_extra_source=
|
|
endif
|
|
|
|
src_common_libcurve25519_donna_a_CFLAGS=
|
|
|
|
if BUILD_CURVE25519_DONNA
|
|
src_common_libcurve25519_donna_a_SOURCES=\
|
|
src/ext/curve25519_donna/curve25519-donna.c
|
|
src_common_libcurve25519_donna_a_CFLAGS+=\
|
|
@F_OMIT_FRAME_POINTER@
|
|
noinst_LIBRARIES+=src/common/libcurve25519_donna.a
|
|
LIBDONNA=src/common/libcurve25519_donna.a
|
|
else
|
|
if BUILD_CURVE25519_DONNA_C64
|
|
src_common_libcurve25519_donna_a_SOURCES=\
|
|
src/ext/curve25519_donna/curve25519-donna-c64.c
|
|
noinst_LIBRARIES+=src/common/libcurve25519_donna.a
|
|
LIBDONNA=src/common/libcurve25519_donna.a
|
|
else
|
|
LIBDONNA=
|
|
endif
|
|
endif
|
|
|
|
if CURVE25519_ENABLED
|
|
libcrypto_extra_source=src/common/crypto_curve25519.c
|
|
endif
|
|
|
|
LIBOR_A_SOURCES = \
|
|
src/common/address.c \
|
|
src/common/compat.c \
|
|
src/common/container.c \
|
|
src/common/di_ops.c \
|
|
src/common/log.c \
|
|
src/common/memarea.c \
|
|
src/common/mempool.c \
|
|
src/common/procmon.c \
|
|
src/common/util.c \
|
|
src/common/util_codedigest.c \
|
|
$(libor_extra_source)
|
|
|
|
LIBOR_CRYPTO_A_SOURCES = \
|
|
src/common/aes.c \
|
|
src/common/crypto.c \
|
|
src/common/crypto_format.c \
|
|
src/common/torgzip.c \
|
|
src/common/tortls.c \
|
|
$(libcrypto_extra_source)
|
|
|
|
LIBOR_EVENT_A_SOURCES = src/common/compat_libevent.c
|
|
|
|
src_common_libor_a_SOURCES = $(LIBOR_A_SOURCES)
|
|
src_common_libor_crypto_a_SOURCES = $(LIBOR_CRYPTO_A_SOURCES)
|
|
src_common_libor_event_a_SOURCES = $(LIBOR_EVENT_A_SOURCES)
|
|
|
|
src_common_libor_testing_a_SOURCES = $(LIBOR_A_SOURCES)
|
|
src_common_libor_crypto_testing_a_SOURCES = $(LIBOR_CRYPTO_A_SOURCES)
|
|
src_common_libor_event_testing_a_SOURCES = $(LIBOR_EVENT_A_SOURCES)
|
|
|
|
src_common_libor_testing_a_CPPFLAGS = -DTOR_UNIT_TESTS $(AM_CPPFLAGS)
|
|
src_common_libor_crypto_testing_a_CPPFLAGS = -DTOR_UNIT_TESTS $(AM_CPPFLAGS)
|
|
src_common_libor_event_testing_a_CPPFLAGS = -DTOR_UNIT_TESTS $(AM_CPPFLAGS)
|
|
|
|
COMMONHEADERS = \
|
|
src/common/address.h \
|
|
src/common/aes.h \
|
|
src/common/ciphers.inc \
|
|
src/common/compat.h \
|
|
src/common/compat_libevent.h \
|
|
src/common/container.h \
|
|
src/common/crypto.h \
|
|
src/common/crypto_curve25519.h \
|
|
src/common/di_ops.h \
|
|
src/common/memarea.h \
|
|
src/common/mempool.h \
|
|
src/common/procmon.h \
|
|
src/common/testsupport.h \
|
|
src/common/torgzip.h \
|
|
src/common/torint.h \
|
|
src/common/torlog.h \
|
|
src/common/tortls.h \
|
|
src/common/util.h
|
|
|
|
noinst_HEADERS+= $(COMMONHEADERS)
|
|
|
|
DISTCLEANFILES+= src/common/common_sha1.i
|
|
|
|
src/common/common_sha1.i: $(libor_SOURCES) $(libor_crypto_a_SOURCES) $(COMMONHEADERS)
|
|
$(AM_V_GEN)if test "@SHA1SUM@" != none; then \
|
|
(cd "$(srcdir)" && "@SHA1SUM@" $(src_common_libor_SOURCES) $(src_common_libor_crypto_a_SOURCES) $(COMMONHEADERS)) | "@SED@" -n 's/^\(.*\)$$/"\1\\n"/p' > $@; \
|
|
elif test "@OPENSSL@" != none; then \
|
|
(cd "$(srcdir)" && "@OPENSSL@" sha1 $(src_common_libor_SOURCES) $(src_Common_libor_crypto_a_SOURCES) $(COMMONHEADERS)) | "@SED@" -n 's/SHA1(\(.*\))= \(.*\)/"\2 \1\\n"/p' > $@; \
|
|
else \
|
|
rm $@; \
|
|
touch $@; \
|
|
fi
|
|
|
|
src/common/util_codedigest.o: src/common/common_sha1.i
|
|
|