diff --git a/scripts/apidoc_full.sh b/scripts/apidoc_full.sh index 34daf37b5..4dc6ef27f 100755 --- a/scripts/apidoc_full.sh +++ b/scripts/apidoc_full.sh @@ -12,17 +12,53 @@ set -eu -CONFIG_H='include/mbedtls/mbedtls_config.h' +. $(dirname "$0")/project_detection.sh -if [ -r $CONFIG_H ]; then :; else - echo "$CONFIG_H not found" >&2 - exit 1 +if in_mbedtls_repo; then + CONFIG_H='include/mbedtls/mbedtls_config.h' + if [ -r $CONFIG_H ]; then :; else + echo "$CONFIG_H not found" >&2 + fi fi -CONFIG_BAK=${CONFIG_H}.bak -cp -p $CONFIG_H $CONFIG_BAK +if in_mbedtls_repo; then + CRYPTO_CONFIG_H='tf-psa-crypto/include/psa/crypto_config.h' + if [ -r $CRYPTO_CONFIG_H ]; then :; else + echo "$CRYPTO_CONFIG_H not found" >&2 + exit 1 + fi +fi + +if in_tf_psa_crypto_repo; then + CRYPTO_CONFIG_H='include/psa/crypto_config.h' + if [ -r $CRYPTO_CONFIG_H ]; then :; else + echo "$CRYPTO_CONFIG_H not found" >&2 + exit 1 + fi +fi -scripts/config.py realfull -make apidoc +if in_tf_psa_crypto_repo || (in_mbedtls_repo && !in_3_6_branch); then + CRYPTO_CONFIG_BAK=${CRYPTO_CONFIG_H}.bak + cp -p $CRYPTO_CONFIG_H $CRYPTO_CONFIG_BAK +fi -mv $CONFIG_BAK $CONFIG_H +if in_mbedtls_repo; then + CONFIG_BAK=${CONFIG_H}.bak + cp -p $CONFIG_H $CONFIG_BAK + scripts/config.py realfull + make apidoc + mv $CONFIG_BAK $CONFIG_H +elif in_tf_psa_crypto_repo; then + scripts/config.py realfull + TF_PSA_CRYPTO_ROOT_DIR=$PWD + rm -rf doxygen/build-apidoc-full + mkdir doxygen/build-apidoc-full + cd doxygen/build-apidoc-full + cmake -DCMAKE_BUILD_TYPE:String=Check -DGEN_FILES=ON $TF_PSA_CRYPTO_ROOT_DIR + make tfpsacrypto-apidoc + cd $TF_PSA_CRYPTO_ROOT_DIR +fi + +if in_tf_psa_crypto_repo || (in_mbedtls_repo && !in_3_6_branch); then + mv $CRYPTO_CONFIG_BAK $CRYPTO_CONFIG_H +fi diff --git a/scripts/doxygen.sh b/scripts/doxygen.sh index 8c37b20de..7d051ed1e 100755 --- a/scripts/doxygen.sh +++ b/scripts/doxygen.sh @@ -8,8 +8,10 @@ # Abort on errors (and uninitialised variables) set -eu -if [ -d library -a -d include -a -d tests ]; then :; else - echo "Must be run from Mbed TLS root" >&2 +. $(dirname "$0")/project_detection.sh + +if in_mbedtls_repo || in_tf_psa_crypto_repo; then :; else + echo "Must be run from Mbed TLS root or TF-PSA-Crypto root" >&2 exit 1 fi @@ -28,5 +30,8 @@ if grep -E "(warning|error):" doc.filtered; then exit 1; fi -make apidoc_clean +if in_mbedtls_repo; then + make apidoc_clean +fi + rm -f doc.out doc.err doc.filtered