2015-08-25 02:03:17 +01:00
|
|
|
include_directories(../include)
|
2014-06-20 20:00:00 +01:00
|
|
|
|
|
|
|
add_library(
|
2015-01-29 00:37:10 +00:00
|
|
|
ssl
|
2014-06-20 20:00:00 +01:00
|
|
|
|
2017-07-09 21:17:55 +01:00
|
|
|
bio_ssl.cc
|
|
|
|
d1_both.cc
|
|
|
|
d1_lib.cc
|
|
|
|
d1_pkt.cc
|
|
|
|
d1_srtp.cc
|
|
|
|
dtls_method.cc
|
|
|
|
dtls_record.cc
|
2018-01-26 17:14:30 +00:00
|
|
|
handoff.cc
|
2017-08-14 20:08:34 +01:00
|
|
|
handshake.cc
|
2017-07-12 21:25:57 +01:00
|
|
|
handshake_client.cc
|
|
|
|
handshake_server.cc
|
2017-07-09 21:17:55 +01:00
|
|
|
s3_both.cc
|
|
|
|
s3_lib.cc
|
|
|
|
s3_pkt.cc
|
2017-07-12 22:16:39 +01:00
|
|
|
ssl_aead_ctx.cc
|
2017-07-09 21:17:55 +01:00
|
|
|
ssl_asn1.cc
|
2017-07-12 21:31:08 +01:00
|
|
|
ssl_buffer.cc
|
|
|
|
ssl_cert.cc
|
|
|
|
ssl_cipher.cc
|
2017-07-12 22:16:39 +01:00
|
|
|
ssl_file.cc
|
2017-07-20 04:28:43 +01:00
|
|
|
ssl_key_share.cc
|
2017-07-12 22:16:39 +01:00
|
|
|
ssl_lib.cc
|
2017-07-12 22:26:06 +01:00
|
|
|
ssl_privkey.cc
|
2017-07-12 22:35:14 +01:00
|
|
|
ssl_session.cc
|
|
|
|
ssl_stat.cc
|
|
|
|
ssl_transcript.cc
|
|
|
|
ssl_versions.cc
|
2017-07-09 21:17:55 +01:00
|
|
|
ssl_x509.cc
|
2017-07-12 22:35:14 +01:00
|
|
|
t1_enc.cc
|
2017-07-13 03:43:42 +01:00
|
|
|
t1_lib.cc
|
2017-07-12 22:35:14 +01:00
|
|
|
tls_method.cc
|
2017-07-13 03:43:42 +01:00
|
|
|
tls_record.cc
|
|
|
|
tls13_both.cc
|
2017-07-13 04:00:28 +01:00
|
|
|
tls13_client.cc
|
2017-07-13 03:43:42 +01:00
|
|
|
tls13_enc.cc
|
2017-07-13 04:00:28 +01:00
|
|
|
tls13_server.cc
|
2014-06-20 20:00:00 +01:00
|
|
|
)
|
2014-07-16 19:37:51 +01:00
|
|
|
|
Support symbol prefixes
- In base.h, if BORINGSSL_PREFIX is defined, include
boringssl_prefix_symbols.h
- In all .S files, if BORINGSSL_PREFIX is defined, include
boringssl_prefix_symbols_asm.h
- In base.h, BSSL_NAMESPACE_BEGIN and BSSL_NAMESPACE_END are
defined with appropriate values depending on whether
BORINGSSL_PREFIX is defined; these macros are used in place
of 'namespace bssl {' and '}'
- Add util/make_prefix_headers.go, which takes a list of symbols
and auto-generates the header files mentioned above
- In CMakeLists.txt, if BORINGSSL_PREFIX and BORINGSSL_PREFIX_SYMBOLS
are defined, run util/make_prefix_headers.go to generate header
files
- In various CMakeLists.txt files, add "global_target" that all
targets depend on to give us a place to hook logic that must run
before all other targets (in particular, the header file generation
logic)
- Document this in BUILDING.md, including the fact that it is
the caller's responsibility to provide the symbol list and keep it
up to date
- Note that this scheme has not been tested on Windows, and likely
does not work on it; Windows support will need to be added in a
future commit
Change-Id: If66a7157f46b5b66230ef91e15826b910cf979a2
Reviewed-on: https://boringssl-review.googlesource.com/31364
Commit-Queue: David Benjamin <davidben@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
Reviewed-by: David Benjamin <davidben@google.com>
2018-08-27 02:53:36 +01:00
|
|
|
add_dependencies(ssl global_target)
|
|
|
|
|
2015-10-06 02:32:10 +01:00
|
|
|
target_link_libraries(ssl crypto)
|
|
|
|
|
2014-07-16 19:37:51 +01:00
|
|
|
add_executable(
|
2015-01-29 00:37:10 +00:00
|
|
|
ssl_test
|
2014-07-16 19:37:51 +01:00
|
|
|
|
2017-07-18 20:42:18 +01:00
|
|
|
span_test.cc
|
2015-03-22 21:22:08 +00:00
|
|
|
ssl_test.cc
|
2015-05-16 00:08:49 +01:00
|
|
|
|
2018-01-04 07:07:58 +00:00
|
|
|
$<TARGET_OBJECTS:boringssl_gtest_main>
|
2015-05-16 00:08:49 +01:00
|
|
|
$<TARGET_OBJECTS:test_support>
|
2014-07-16 19:37:51 +01:00
|
|
|
)
|
|
|
|
|
Support symbol prefixes
- In base.h, if BORINGSSL_PREFIX is defined, include
boringssl_prefix_symbols.h
- In all .S files, if BORINGSSL_PREFIX is defined, include
boringssl_prefix_symbols_asm.h
- In base.h, BSSL_NAMESPACE_BEGIN and BSSL_NAMESPACE_END are
defined with appropriate values depending on whether
BORINGSSL_PREFIX is defined; these macros are used in place
of 'namespace bssl {' and '}'
- Add util/make_prefix_headers.go, which takes a list of symbols
and auto-generates the header files mentioned above
- In CMakeLists.txt, if BORINGSSL_PREFIX and BORINGSSL_PREFIX_SYMBOLS
are defined, run util/make_prefix_headers.go to generate header
files
- In various CMakeLists.txt files, add "global_target" that all
targets depend on to give us a place to hook logic that must run
before all other targets (in particular, the header file generation
logic)
- Document this in BUILDING.md, including the fact that it is
the caller's responsibility to provide the symbol list and keep it
up to date
- Note that this scheme has not been tested on Windows, and likely
does not work on it; Windows support will need to be added in a
future commit
Change-Id: If66a7157f46b5b66230ef91e15826b910cf979a2
Reviewed-on: https://boringssl-review.googlesource.com/31364
Commit-Queue: David Benjamin <davidben@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
Reviewed-by: David Benjamin <davidben@google.com>
2018-08-27 02:53:36 +01:00
|
|
|
add_dependencies(ssl_test global_target)
|
|
|
|
|
2018-01-04 07:07:58 +00:00
|
|
|
target_link_libraries(ssl_test ssl crypto boringssl_gtest)
|
2018-08-10 16:30:55 +01:00
|
|
|
if(WIN32)
|
2017-03-09 06:13:07 +00:00
|
|
|
target_link_libraries(ssl_test ws2_32)
|
|
|
|
endif()
|
Add a run_tests target to run all tests.
It's very annoying having to remember the right incant every time I want
to switch around between my build, build-release, build-asan, etc.,
output directories.
Unfortunately, this target is pretty unfriendly without CMake 3.2+ (and
Ninja 1.5+). This combination gives a USES_TERMINAL flag to
add_custom_target which uses Ninja's "console" pool, otherwise the
output buffering gets in the way. Ubuntu LTS is still on an older CMake,
so do a version check in the meantime.
CMake also has its own test mechanism (CTest), but this doesn't use it.
It seems to prefer knowing what all the tests are and then tries to do
its own output management and parallelizing and such. We already have
our own runners. all_tests.go could actually be converted tidily, but
generate_build_files.py also needs to read it, and runner.go has very
specific needs.
Naming the target ninja -C build test would be nice, but CTest squats
that name and CMake grumps when you use a reserved name, so I've gone
with run_tests.
Change-Id: Ibd20ebd50febe1b4e91bb19921f3bbbd9fbcf66c
Reviewed-on: https://boringssl-review.googlesource.com/6270
Reviewed-by: Adam Langley <alangley@gmail.com>
2015-10-15 02:34:40 +01:00
|
|
|
add_dependencies(all_tests ssl_test)
|