Minos Galanakis | 2c824b4 | 2025-03-20 09:28:45 +0000 | [diff] [blame^] | 1 | #!/bin/sh |
| 2 | |
| 3 | # Generate doxygen documentation with a full mbedtls_config.h (this ensures that every |
| 4 | # available flag is documented, and avoids warnings about documentation |
| 5 | # without a corresponding #define). |
| 6 | # |
| 7 | # /!\ This must not be a Makefile target, as it would create a race condition |
| 8 | # when multiple targets are invoked in the same parallel build. |
| 9 | # |
| 10 | # Copyright The Mbed TLS Contributors |
| 11 | # SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later |
| 12 | |
| 13 | set -eu |
| 14 | |
| 15 | . $(dirname "$0")/project_detection.sh |
| 16 | |
| 17 | if in_mbedtls_repo; then |
| 18 | CONFIG_H='include/mbedtls/mbedtls_config.h' |
| 19 | if [ -r $CONFIG_H ]; then :; else |
| 20 | echo "$CONFIG_H not found" >&2 |
| 21 | fi |
| 22 | if ! in_3_6_branch; then |
| 23 | CRYPTO_CONFIG_H='tf-psa-crypto/include/psa/crypto_config.h' |
| 24 | fi |
| 25 | fi |
| 26 | |
| 27 | if in_tf_psa_crypto_repo; then |
| 28 | CRYPTO_CONFIG_H='include/psa/crypto_config.h' |
| 29 | fi |
| 30 | |
| 31 | if in_tf_psa_crypto_repo || (in_mbedtls_repo && ! in_3_6_branch); then |
| 32 | if [ -r $CRYPTO_CONFIG_H ]; then :; else |
| 33 | echo "$CRYPTO_CONFIG_H not found" >&2 |
| 34 | exit 1 |
| 35 | fi |
| 36 | CRYPTO_CONFIG_BAK=${CRYPTO_CONFIG_H}.bak |
| 37 | cp -p $CRYPTO_CONFIG_H $CRYPTO_CONFIG_BAK |
| 38 | fi |
| 39 | |
| 40 | if in_mbedtls_repo; then |
| 41 | CONFIG_BAK=${CONFIG_H}.bak |
| 42 | cp -p $CONFIG_H $CONFIG_BAK |
| 43 | scripts/config.py realfull |
| 44 | make apidoc |
| 45 | mv $CONFIG_BAK $CONFIG_H |
| 46 | elif in_tf_psa_crypto_repo; then |
| 47 | scripts/config.py realfull |
| 48 | TF_PSA_CRYPTO_ROOT_DIR=$PWD |
| 49 | rm -rf doxygen/build-apidoc-full |
| 50 | mkdir doxygen/build-apidoc-full |
| 51 | cd doxygen/build-apidoc-full |
| 52 | cmake -DCMAKE_BUILD_TYPE:String=Check -DGEN_FILES=ON $TF_PSA_CRYPTO_ROOT_DIR |
| 53 | make tfpsacrypto-apidoc |
| 54 | cd $TF_PSA_CRYPTO_ROOT_DIR |
| 55 | fi |
| 56 | |
| 57 | if in_tf_psa_crypto_repo || (in_mbedtls_repo && ! in_3_6_branch); then |
| 58 | mv $CRYPTO_CONFIG_BAK $CRYPTO_CONFIG_H |
| 59 | fi |