xref: /aosp_15_r20/external/tink/cc/examples/CMakeLists.txt (revision e7b1675dde1b92d52ec075b0a92829627f2c52a5)
1*e7b1675dSTing-Kang Changcmake_minimum_required(VERSION 3.13)
2*e7b1675dSTing-Kang Chang
3*e7b1675dSTing-Kang Changproject(Examples CXX)
4*e7b1675dSTing-Kang Chang
5*e7b1675dSTing-Kang Changset(CMAKE_CXX_STANDARD 14)
6*e7b1675dSTing-Kang Changset(CMAKE_CXX_STANDARD_REQUIRED ON)
7*e7b1675dSTing-Kang Chang
8*e7b1675dSTing-Kang Changset(CMAKE_BUILD_TYPE Release)
9*e7b1675dSTing-Kang Chang
10*e7b1675dSTing-Kang Chang# Import Tink as an in-tree dependency.
11*e7b1675dSTing-Kang Changadd_subdirectory(../.. tink)
12*e7b1675dSTing-Kang Chang
13*e7b1675dSTing-Kang Chang# Make sure we have bash.
14*e7b1675dSTing-Kang Changfind_program(BASH_PROGRAM bash REQUIRED)
15*e7b1675dSTing-Kang Chang
16*e7b1675dSTing-Kang Chang# Include path at the base of the examples folder.
17*e7b1675dSTing-Kang Changset(TINK_EXAMPLES_INCLUDE_PATH "${CMAKE_SOURCE_DIR}")
18*e7b1675dSTing-Kang Chang
19*e7b1675dSTing-Kang Changinclude(FetchContent)
20*e7b1675dSTing-Kang Chang
21*e7b1675dSTing-Kang ChangFetchContent_Declare(
22*e7b1675dSTing-Kang Chang  googletest
23*e7b1675dSTing-Kang Chang  URL       https://github.com/google/googletest/archive/refs/tags/release-1.11.0.tar.gz
24*e7b1675dSTing-Kang Chang  URL_HASH  SHA256=b4870bf121ff7795ba20d20bcdd8627b8e088f2d1dab299a031c1034eddc93d5
25*e7b1675dSTing-Kang Chang)
26*e7b1675dSTing-Kang Chang
27*e7b1675dSTing-Kang ChangFetchContent_GetProperties(googletest)
28*e7b1675dSTing-Kang Changif(NOT googletest_POPULATED)
29*e7b1675dSTing-Kang Chang  FetchContent_Populate(googletest)
30*e7b1675dSTing-Kang Chang  add_subdirectory(
31*e7b1675dSTing-Kang Chang    ${googletest_SOURCE_DIR}
32*e7b1675dSTing-Kang Chang    ${googletest_BINARY_DIR}
33*e7b1675dSTing-Kang Chang    EXCLUDE_FROM_ALL)
34*e7b1675dSTing-Kang Changendif()
35*e7b1675dSTing-Kang Chang
36*e7b1675dSTing-Kang Changenable_testing()
37*e7b1675dSTing-Kang Chang
38*e7b1675dSTing-Kang Changadd_subdirectory(aead)
39*e7b1675dSTing-Kang Changadd_subdirectory(digital_signatures)
40*e7b1675dSTing-Kang Changadd_subdirectory(hybrid_encryption)
41*e7b1675dSTing-Kang Changadd_subdirectory(jwt)
42*e7b1675dSTing-Kang Changadd_subdirectory(mac)
43*e7b1675dSTing-Kang Changadd_subdirectory(util)
44*e7b1675dSTing-Kang Changadd_subdirectory(walkthrough)
45