summaryrefslogtreecommitdiffstats
path: root/test/build.info
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2016-10-27 08:44:36 +0200
committerRichard Levitte <levitte@openssl.org>2016-11-03 13:13:31 +0100
commitb5b7c61fe337e2b5be931f42ce6f827ff344f3f6 (patch)
tree9fe0621ff1980f9e7d31b9029472f606df6dfa37 /test/build.info
parentab6e147c49f2382d2c30e313dd99aa23f66bc563 (diff)
Explain the deal with internal test programs
Reviewed-by: Emilia Käsper <emilia@openssl.org> (Merged from https://github.com/openssl/openssl/pull/1789)
Diffstat (limited to 'test/build.info')
-rw-r--r--test/build.info15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/build.info b/test/build.info
index 1c10a83c09..6f00865868 100644
--- a/test/build.info
+++ b/test/build.info
@@ -299,6 +299,21 @@ IF[{- !$disabled{tests} -}]
DEPEND[cipher_overhead_test]=../libcrypto ../libssl
ENDIF
+ # Internal test programs. These are essentially a collection of internal
+ # test routines. Because they sometimes need to reach internal symbols that
+ # aren't available through the shared library (at least on Linux, Solaris,
+ # Windows and VMS, where the exported symbols are those listed in util/*.num),
+ # these programs may be built on files directly picked from inside crypto/
+ # or ssl/, to test using symbols that exist in those specific files. These
+ # programs will also be linked with libcrypto / libssl, so we don't pick
+ # out more specific files than necessary.
+ # This might mean we have multiply defined symbols, but since linking is
+ # ordered with object files first and libraries after, the symbols from the
+ # object files will be chosen before those in the libraries. This is handled
+ # properly by all linkers.
+ # Note that when building with static libraries, none of those extra files
+ # are needed, since all symbols are available anyway, regardless of what's
+ # listed in util/*.num.
IF[{- !$disabled{poly1305} -}]
PROGRAMS_NO_INST=poly1305_internal_test
ENDIF