# This file is part of the openHiTLS project.
#
# openHiTLS is licensed under the Mulan PSL v2.
# You can use this software according to the terms and conditions of the Mulan PSL v2.
# You may obtain a copy of Mulan PSL v2 at:
#
# http://license.coscl.org.cn/MulanPSL2
#
# THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# Mark preset as loaded (prevents profile system from overriding)
set(HITLS_PRESET_LOADED ON CACHE BOOL "" FORCE)
# Build type options
set(HITLS_BUILD_STATIC ON CACHE BOOL "" FORCE)
set(HITLS_BUILD_SHARED ON CACHE BOOL "" FORCE)
# BSL modules
set(HITLS_BSL_INIT ON CACHE BOOL "" FORCE)
set(HITLS_BSL_SAL ON CACHE BOOL "" FORCE)
set(HITLS_BSL_SAL_MEM ON CACHE BOOL "" FORCE)
set(HITLS_BSL_SAL_LOCK ON CACHE BOOL "" FORCE)
set(HITLS_BSL_LOG ON CACHE BOOL "" FORCE)
set(HITLS_BSL_ERR ON CACHE BOOL "" FORCE)
set(HITLS_BSL_HASH ON CACHE BOOL "" FORCE)
set(HITLS_BSL_SAL_STR ON CACHE BOOL "" FORCE)
set(HITLS_BSL_SAL_FILE ON CACHE BOOL "" FORCE)
set(HITLS_BSL_UIO_BUFFER ON CACHE BOOL "" FORCE)
set(HITLS_BSL_UIO_MEM ON CACHE BOOL "" FORCE)
set(HITLS_BSL_UIO_PLT ON CACHE BOOL "" FORCE)
set(HITLS_BSL_UIO_UDP ON CACHE BOOL "" FORCE)
set(HITLS_BSL_SAL_THREAD ON CACHE BOOL "" FORCE)
set(HITLS_BSL_SAL_NET ON CACHE BOOL "" FORCE)
set(HITLS_BSL_SAL_TIME ON CACHE BOOL "" FORCE)
set(HITLS_BSL_TLV ON CACHE BOOL "" FORCE)
set(HITLS_BSL_BASE64 ON CACHE BOOL "" FORCE)
set(HITLS_BSL_ASN1 ON CACHE BOOL "" FORCE)
set(HITLS_BSL_BUFFER ON CACHE BOOL "" FORCE)
set(HITLS_BSL_LIST ON CACHE BOOL "" FORCE)
set(HITLS_BSL_OBJ ON CACHE BOOL "" FORCE)
set(HITLS_BSL_PARAMS ON CACHE BOOL "" FORCE)
set(HITLS_BSL_PEM ON CACHE BOOL "" FORCE)
# Crypto modules
set(HITLS_CRYPTO_EAL ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_EALINIT ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_ENTROPY ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_DRBG_HASH ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_SHA256 ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_SHA384 ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_SHA512 ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_HKDF ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_AES ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_GCM ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_CHACHA20 ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_HPKE ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_BN ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_X25519 ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_CURVE_NISTP256 ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_CURVE_NISTP384 ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_CURVE_NISTP521 ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_DRBG_CTR ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_CMAC_AES ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_ECDSA ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_ECDH ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_ECC ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_MLKEM ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_MLDSA ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_XMSS ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_XMSSMT ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_SLH_DSA ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_CBC ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_RSA ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_SHA1 ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_CIPHER ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_PKEY ON CACHE BOOL "" FORCE)
set(HITLS_CRYPTO_CODECSKEY ON CACHE BOOL "" FORCE)
# TLS modules
set(HITLS_TLS_CALLBACK_SAL ON CACHE BOOL "" FORCE)
set(HITLS_TLS_CALLBACK_CERT ON CACHE BOOL "" FORCE)
set(HITLS_TLS_CALLBACK_CRYPT ON CACHE BOOL "" FORCE)
set(HITLS_TLS_CONFIG ON CACHE BOOL "" FORCE)
set(HITLS_TLS_HOST ON CACHE BOOL "" FORCE)
set(HITLS_TLS_MAINTAIN ON CACHE BOOL "" FORCE)
set(HITLS_TLS_PROTO ON CACHE BOOL "" FORCE)
set(HITLS_TLS_PROTO_DTLS12 ON CACHE BOOL "" FORCE)
set(HITLS_TLS_PROTO_DTLCP11 ON CACHE BOOL "" FORCE)
set(HITLS_TLS_FEATURE_MTU_QUERY ON CACHE BOOL "" FORCE)
set(HITLS_TLS_SUITE_ECDHE_RSA_WITH_AES_128_CBC_SHA ON CACHE BOOL "" FORCE)
# PKI modules
set(HITLS_PKI_INFO ON CACHE BOOL "" FORCE)
set(HITLS_PKI_PKCS12 ON CACHE BOOL "" FORCE)
set(HITLS_PKI_X509 ON CACHE BOOL "" FORCE)
# TLS No DFX features
set(HITLS_TLS_FEATURE_EXTENDED_MASTER_SECRET OFF CACHE BOOL "" FORCE)
set(HITLS_TLS_PROTO_CLOSE_STATE OFF CACHE BOOL "" FORCE)
set(HITLS_TLS_PROTO_DFX OFF CACHE BOOL "" FORCE)