1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-19 17:40:15 +02:00

Finally got the install_wxlibs.sh script working properly

This commit is contained in:
Leland Lucius 2015-09-06 01:49:04 -05:00
parent 102f3c2130
commit c86c262efa

View File

@ -14,39 +14,49 @@ resolve()
update_paths() update_paths()
{ {
path=$(resolve "${1}") local indent="${1}"
base="${path##*/}" local path=$(resolve "${2}")
cp -p "${path}" "${LIBPATH}" local base="${path##*/}"
seen="${seen}:${path}"
echo "Updating library = '$path'" if [ -e "${LIBPATH}/${base}" ]
then
return
fi
printf "%${indent}.${indent}cCopying '${path}' into bundle\n" " "
cp -p "${path}" "${LIBPATH}"
for lib in $(otool -L "${path}" | awk '/libwx.*dylib /{print $1}') for lib in $(otool -L "${path}" | awk '/libwx.*dylib /{print $1}')
do do
path=$(resolve "${lib}") path=$(resolve "${lib}")
printf "%${indent}.${indent}cChanging '${lib}' to '@loader_path/../Frameworks/${path##*/}'\n" " "
install_name_tool -change "${lib}" "@loader_path/../Frameworks/${path##*/}" "${LIBPATH}/${base}" install_name_tool -change "${lib}" "@loader_path/../Frameworks/${path##*/}" "${LIBPATH}/${base}"
if [[ ! ${seen} =~ .*:${path}.* ]] update_paths $((indent + 2)) "${path}"
then
update_paths "${path}"
fi
done done
} }
BUILT_PRODUCTS_DIR=/tmp/Audacity.dst/Audacity/Audacity.app/Contents # For testing
EXECUTABLE_PATH=MacOS/audacity # BUILT_PRODUCTS_DIR=/tmp/Audacity.app/Contents
FRAMEWORKS_FOLDER_PATH=Frameworks # EXECUTABLE_PATH=MacOS/audacity
# FRAMEWORKS_FOLDER_PATH=Frameworks
EXEPATH="${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}" EXEPATH="${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}"
LIBPATH="${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}" LIBPATH="${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}"
mkdir -p "${LIBPATH}" mkdir -p "${LIBPATH}"
seen="" echo "Updating Audacity executable"
for lib in $(otool -L "${EXEPATH}" | awk '/libwx/{print $1}')
for lib in $(otool -L "${EXEPATH}" | awk '/libwx.*dylib /{print $1}')
do do
path=$(resolve "${lib}") path=$(resolve "${lib}")
printf "Changing '${lib}' to '@executable_path/../Frameworks/${path##*/}'\n"
install_name_tool -change "${lib}" "@executable_path/../Frameworks/${path##*/}" "${EXEPATH}" install_name_tool -change "${lib}" "@executable_path/../Frameworks/${path##*/}" "${EXEPATH}"
update_paths "${path}"
update_paths 2 "${path}"
done done
exit 0 exit 0