1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-11-21 16:37:12 +01:00

Fixes macOS packaging issues

* Help is installed to correct location
* dSYM file is ignored
* Fixes weird issue with Conan picking up libraries from dSYM
This commit is contained in:
Dmitry Vedenko
2021-06-25 15:52:18 +03:00
parent f8239de14c
commit 4b2b3458e8
5 changed files with 20 additions and 9 deletions

View File

@@ -36,7 +36,8 @@ if [[ "${OSTYPE}" == msys* ]]; then # Windows
find ${BIN_OUTPUT_DIR} -name '*.iobj' -o -name '*.ipdb' -o -name '*.pdb' -o -name '*.ilk' | xargs rm -f
elif [[ "${OSTYPE}" == darwin* ]]; then # macOS
find ${BIN_OUTPUT_DIR} -name '*.dSYM' | xargs -J % mv % ${SYMBOLS_OUTPUT_DIR}
find ${CONAN_USER_HOME} -name '*.dSYM' | xargs -J % cp -R % ${SYMBOLS_OUTPUT_DIR}
find ${SHARED_OUTPUT_DIR} -name '*.dSYM' | xargs -J % mv % ${SYMBOLS_OUTPUT_DIR}
find ${CONAN_USER_HOME}/dsyms -name '*.dSYM' | xargs -J % cp -R % ${SYMBOLS_OUTPUT_DIR}
else # Linux & others
chmod +x scripts/ci/linux/split_debug_symbols.sh
find ${BIN_OUTPUT_DIR} -type f -executable -o -name '*.so' | xargs -n 1 scripts/ci/linux/split_debug_symbols.sh

View File

@@ -7,14 +7,19 @@ function extractDSym()
local lib=$1
local libfile=$(basename $lib)
local libname="${libfile%.*}"
local targetdir=$(dirname $lib)
local targetdir=$2
local dsymfile=${targetdir}/${libname}.dSYM
if [[ ! -L "$lib" && "$lib" != "{}" && $lib != *"dSYM"* ]]; then
echo "Extracting dSYMs from ${libfile} to ${libname}.dSYM"
dsymutil "$lib" -o "${targetdir}/${libname}.dSYM"
if [[ -d "$dsymfile" ]]; then
echo "Skipping dSYM generation for $libfile: dSYM exists"
elif [[ ! -L "$lib" && "$lib" != "{}" && $lib != *"dSYM"* ]]; then
echo "Extracting dSYMs from $libfile to $dsymfile"
dsymutil "$lib" -o "$dsymfile"
fi
}
export -f extractDSym
find $CONAN_USER_HOME -name "*.dylib" | xargs -I {} bash -c 'extractDSym "{}"'
mkdir -p "$CONAN_USER_HOME/dsyms"
find $CONAN_USER_HOME -name "*.dylib" | xargs -I {} bash -c "extractDSym \"{}\" \"$CONAN_USER_HOME/dsyms\""