cmake_minimum_required(VERSION 3.10.0) file(GLOB bc_core_sources COMMON/bc_core/*.c COMMON/bc_core/shared/*.c COMMON/bc_core/shared/base/*.c COMMON/bc_core/shared/ecdsa/*.c COMMON/bc_core/shared/libbtc/*.c COMMON/tz_spay_common/tl/spay_authenticate_transaction_tl.c COMMON/tz_spay_common/tl/spay_pin_random_util_tl.c COMMON/tz_spay_common/tl/spay_json_parser_tl.c NDK/tz_platform/vendor/Ndk/core/tl/*.c) SET(bc_core ${bc_core_sources}) file(GLOB bc_tui_sources COMMON/tui_bc/*.c COMMON/tui_bc/shared/process_cmd.c COMMON/tui_bc/shared/tl_spay_tui.c COMMON/tui_bc/shared/process_cmd_pinpad.c COMMON/tui_bc/shared/process_cmd_coldwallet.c COMMON/tui_bc/shared/Vendor_Interface.c COMMON/tui_bc/shared/control/*.c COMMON/tui_bc/shared/pinpad/TuiPinpadScreen.c COMMON/tui_bc/shared/pinpad/TuiPinpadState.c COMMON/tui_bc/shared/mnemonic/*.c COMMON/tui_bc/shared/png/*.c COMMON/tui_bc/shared/screen/*.c COMMON/tui_bc/shared/secure_object/*.c COMMON/tui_bc/shared/touch/*.c COMMON/tz_spay_common/tl/spay_authenticate_transaction_tl.c COMMON/tz_spay_common/tl/spay_pin_random_util_tl.c #COMMON/tz_spay_common/tl/spay_msk_tl.c #COMMON/tz_spay_common/tl/spay_init_tl.c NDK/tz_platform/vendor/Ndk/tui/tl/*.c) SET(bc_tui ${bc_tui_sources}) add_library(bc-core-so SHARED bccore-c.c ${bc_core}) add_library(bc-tui-so-360-xhdpi SHARED bctui-c.c ${bc_tui}) add_library(bc-tui-so-360-xxhdpi SHARED bctui-c.c ${bc_tui}) add_library(bc-tui-so-360-xxxhdpi SHARED bctui-c.c ${bc_tui}) find_library( log-lib log ) target_link_libraries( bc-core-so ${log-lib} ) target_link_libraries( bc-tui-so-360-xhdpi ${log-lib} ) target_link_libraries( bc-tui-so-360-xxhdpi ${log-lib} ) target_link_libraries( bc-tui-so-360-xxxhdpi ${log-lib} ) TARGET_INCLUDE_DIRECTORIES( bc-core-so PUBLIC COMMON/bc_core/public/msgs COMMON/bc_core/public COMMON/bc_core/shared COMMON/bc_core/shared/base COMMON/bc_core/shared/ecdsa COMMON/bc_core/shared/libbtc COMMON/tz_platform/public/ COMMON/tz_platform/public/tl COMMON/tz_platform/public/tlc COMMON/tz_spay_common/public NDK/tz_platform/vendor/Ndk/core/tl) SET(tui_includes COMMON/tui_bc/public/ COMMON/tui_bc/shared/ COMMON/tui_bc/shared/control COMMON/tui_bc/shared/mnemonic COMMON/tui_bc/shared/png COMMON/tui_bc/shared/screen COMMON/tui_bc/shared/secure_object COMMON/tui_bc/shared/touch COMMON/tui_bc/resource/ COMMON/tui_bc/resource/tui_bc_resource/resolution_w720_HD/layout_include COMMON/tui_bc/resource/tui_bc_resource/resolution_w720_HD/resource_include COMMON/tui_bc/resource/tui_bc_resource/resolution_w1080_FHD/layout_include COMMON/tui_bc/resource/tui_bc_resource/resolution_w1080_FHD/resource_include COMMON/tui_bc/resource/tui_bc_resource/resolution_w1440_WQHD/layout_include COMMON/tui_bc/resource/tui_bc_resource/resolution_w1440_WQHD/resource_include COMMON/tui_bc/resource/tui_bc_resource/resolution_w1536_QXGA/layout_include COMMON/tui_bc/resource/tui_bc_resource/resolution_w1536_QXGA/resource_include COMMON/tz_platform/public/ COMMON/tz_platform/public/tl COMMON/tz_spay_common/public NDK/tz_platform/vendor/Ndk/tui/tl bctui-c.h ImageResources.h) TARGET_INCLUDE_DIRECTORIES( bc-tui-so-360-xhdpi PUBLIC ${tui_includes} ) TARGET_INCLUDE_DIRECTORIES( bc-tui-so-360-xxhdpi PUBLIC ${tui_includes} ) TARGET_INCLUDE_DIRECTORIES( bc-tui-so-360-xxxhdpi PUBLIC ${tui_includes} ) TARGET_COMPILE_DEFINITIONS( bc-tui-so-360-xhdpi PUBLIC CMAKE_C_FLAGS "-DUSE_VS \ -DCOLD_WALLET \ -DUX3_0 \ -D_CRT_SECURE_NO_WARNINGS \ -DSUPPORT_SOFTKEY_PUNCHCUT \ -DDPI320" ) TARGET_COMPILE_DEFINITIONS( bc-tui-so-360-xxhdpi PUBLIC CMAKE_C_FLAGS "-DUSE_VS \ -DUX3_0 \ -DCOLD_WALLET \ -D_CRT_SECURE_NO_WARNINGS \ -DSUPPORT_SOFTKEY_PUNCHCUT \ -DDPI480" ) TARGET_COMPILE_DEFINITIONS( bc-tui-so-360-xxxhdpi PUBLIC CMAKE_C_FLAGS "-DUSE_VS \ -DCOLD_WALLET \ -DUX3_0 \ -D_CRT_SECURE_NO_WARNINGS \ -DSUPPORT_SOFTKEY_PUNCHCUT \ -DDPI640" ) TARGET_COMPILE_DEFINITIONS( bc-core-so PUBLIC CMAKE_C_FLAGS "-DUSE_VS \ -DENABLE_DBG_LOG \ -DuECC_SUPPORTS_secp256k1 \ -Ddefault_RNG_defined \ -D_CRT_SECURE_NO_WARNINGS \ -DCOLD_WALLET \ -DSTAGING_ENV \ -DJWK_SUPPORT \ -DSUPPORT_MST \ -DSUPPORT_INAPP \ -DSUPPORT_P2P \ -DOPENSSL_NO_DSA \ -DOPENSSL_NO_DH \ -DOPENSSL_NO_ENGINE \ -DOPENSSL_NO_CMS \ -DOPENSSL_NO_STDIO \ -DOPENSSL_NO_LOCKING \ -DOPENSSL_NO_BIO \ -DOPENSSL_NO_PKCS7 \ -DOPENSSL_NO_DEPRECATED \ -DOPENSSL_NO_ERR \ -DOPENSSL_NO_LHASH \ -DOPENSSL_NO_EVP \ -DOPENSSL_NO_EC \ -DOPENSSL_NO_ECDSA \ -DOPENSSL_NO_ECDH \ -DOPENSSL_NO_RSA \ -DOPENSSL_NO_SHA \ -DOPENSSL_NO_SHA0 \ -DOPENSSL_NO_SHA1 \ -DOPENSSL_NO_SHA256 \ -DOPENSSL_NO_SHA384 \ -DOPENSSL_NO_SHA512 \ -DOPENSSL_EXPORT_VAR_AS_FUNCTION \ -DGETPID_IS_MEANINGLESS \ -DNO_SYS_TYPES_H \ -DOWN_ALLOCATOR \ -DSWD")