mirror of
https://github.com/cookiengineer/audacity
synced 2025-05-23 16:11:40 +02: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:
parent
f8239de14c
commit
4b2b3458e8
.github/workflows
help
scripts/ci
src
4
.github/workflows/cmake_build.yml
vendored
4
.github/workflows/cmake_build.yml
vendored
@ -74,9 +74,9 @@ jobs:
|
||||
cache-name: cache-conan-modules
|
||||
with:
|
||||
path: ${{ env.CONAN_USER_HOME }}
|
||||
key: host-2-${{ matrix.config.name }}-${{ hashFiles('cmake-proxies/CMakeLists.txt') }}
|
||||
key: host-3-${{ matrix.config.name }}-${{ hashFiles('cmake-proxies/CMakeLists.txt') }}
|
||||
restore-keys: |
|
||||
host-2-${{ matrix.config.name }}-
|
||||
host-3-${{ matrix.config.name }}-
|
||||
|
||||
- name: Configure
|
||||
env:
|
||||
|
@ -45,7 +45,11 @@ if( ${_OPT}package_manual )
|
||||
) \
|
||||
")
|
||||
|
||||
install( DIRECTORY "${out_dir}/${host}/" DESTINATION "help/manual" )
|
||||
if( "${CMAKE_GENERATOR}" MATCHES "Xcode" )
|
||||
install( DIRECTORY "${out_dir}/${host}/" DESTINATION "${_APPDIR}/help/manual" )
|
||||
elseif( "${CMAKE_GENERATOR}" MATCHES "Visual Studio*" )
|
||||
install( DIRECTORY "${out_dir}/${host}/" DESTINATION "help/manual" )
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if( NOT CMAKE_SYSTEM_NAME MATCHES "Darwin" )
|
||||
|
@ -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
|
||||
|
@ -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\""
|
||||
|
@ -1373,6 +1373,7 @@ if( "${CMAKE_GENERATOR}" MATCHES "Xcode|Visual Studio*" )
|
||||
USE_SOURCE_PERMISSIONS
|
||||
PATTERN "*.pdb" EXCLUDE
|
||||
PATTERN "*.ilk" EXCLUDE
|
||||
PATTERN "*.dSYM" EXCLUDE
|
||||
)
|
||||
else()
|
||||
if( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
|
||||
|
Loading…
x
Reference in New Issue
Block a user