1#
2# OpenBOR - http://www.LavaLit.com
3# -----------------------------------------------------------------------
4# Licensed under the BSD license, see LICENSE in OpenBOR root for details.
5#
6# Copyright (c) 2004 - 2011 OpenBOR Team
7#
8
9#!/bin/bash
10# Script updates the hardcoded dynamic libraries paths
11# to paths that are relative to the executable.
12
13if [ -z "${DWNDEV+xxx}" ]; then
14  . environ.sh 10
15fi
16
17if [ "${DWNDEV}" == "/opt/mac" ]; then
18  exit
19fi
20
21############ Update Library References ############
22IFS='
23'
24
25#copy libs, used to be in build.sh
26lib_copy=(`find ${DWNDEV}/lib -name "libSDL-*.dylib"`)
27lib_copy+=(`find ${DWNDEV}/lib -name "libSDL_gfx.*.dylib"`)
28lib_copy+=(`find ${DWNDEV}/lib -name "libogg.*.dylib"`)
29lib_copy+=(`find ${DWNDEV}/lib -name "libvorbisfile.*.dylib"`)
30lib_copy+=(`find ${DWNDEV}/lib -name "libvorbis.*.dylib"`)
31lib_copy+=(`find ${DWNDEV}/lib -name "libz.[0-9].dylib"`)
32lib_copy+=(`find ${DWNDEV}/lib -name "libpng[0-9][0-9].dylib"`)
33
34for ((i = 0; i < ${#lib_copy[*]}; i = $i + 1)); do
35  cp ${lib_copy[i]} ./releases/DARWIN/OpenBOR.app/Contents/Libraries
36done
37
38# Order and pairing is critical!!!
39lib_ref_patch=(`find ${DWNDEV}/lib -name "libSDL-*.dylib"`)
40lib_ref_patch+=(`find ${DWNDEV}/lib -name "libSDL_gfx.*.dylib"`)
41lib_ref_patch+=(`find ${DWNDEV}/lib -name "libogg.*.dylib"`)
42lib_ref_patch+=(`find ${DWNDEV}/lib -name "libvorbisfile.*.dylib"`)
43lib_ref_patch+=(`find ${DWNDEV}/lib -name "libogg.*.dylib"`)
44lib_ref_patch+=(`find ${DWNDEV}/lib -name "libvorbis.*.dylib"`)
45lib_ref_patch+=(`find ${DWNDEV}/lib -name "libvorbis.*.dylib"`)
46lib_ref_patch+=(`find ${DWNDEV}/lib -name "libvorbisfile.*.dylib"`)
47lib_ref_patch+=(`find ${DWNDEV}/lib -name "libz.[0-9].dylib"`)
48lib_ref_patch+=(`find ${DWNDEV}/lib -name "libpng[0-9][0-9].dylib"`)
49
50for ((i = 0; i < ${#lib_ref_patch[*]}; i = $i + 2)); do
51
52  ${PREFIX}install_name_tool \
53  -change ${lib_ref_patch[i]} \
54  @executable_path/../Libraries/$(basename ${lib_ref_patch[i]}) \
55  releases/DARWIN/OpenBOR.app/Contents/Libraries/$(basename ${lib_ref_patch[i+1]})
56
57done
58
59######### Update Executable Library Paths ##########
60
61for ((i = 0; i < ${#lib_ref_patch[*]}; i = $i + 1)); do
62
63  ${PREFIX}install_name_tool \
64  -change ${lib_ref_patch[i]} \
65  @executable_path/../Libraries/$(basename ${lib_ref_patch[i]}) \
66  releases/DARWIN/OpenBOR.app/Contents/MacOS/OpenBOR
67
68done
69
70