From 7f0f8156436b16b6716425824d571395c0a82441 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Wed, 9 May 2012 18:57:38 -0400 Subject: [PATCH] Copy libev dylib into the Resources and set the linked-in path. --- Makefile | 1 + fixup_shlibs.sh | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100755 fixup_shlibs.sh diff --git a/Makefile b/Makefile index 8e7ad3e..68c82c7 100644 --- a/Makefile +++ b/Makefile @@ -9,6 +9,7 @@ DEBUG_RESOURCES=build/Debug/$(APP_NAME).app/Contents/Resources release: $(SERVER_PATH)/$(SERVER_BINARY) xcodebuild -configuration Release cp $(SERVER_PATH)/$(SERVER_BINARY) $(RELEASE_RESOURCES)/. + sh ./fixup_shlibs.sh $(RELEASE_RESOURCES) $(SERVER_BINARY) cp -rp $(SERVER_PATH)/$(SERVER_WEB) $(RELEASE_RESOURCES)/. debug: $(SERVER_PATH)/$(SERVER_BINARY) diff --git a/fixup_shlibs.sh b/fixup_shlibs.sh new file mode 100755 index 0000000..7335e19 --- /dev/null +++ b/fixup_shlibs.sh @@ -0,0 +1,20 @@ +#!/bin/sh + +RELEASE_RESOURCES="$1" +SERVER_BINARY="$2" + +cd "$RELEASE_RESOURCES" + +LIBEV_PATH=$(otool -L "$SERVER_BINARY" | grep 'libev.*dylib' | awk '{print $1}') + +if [ ! -f "$LIBEV_PATH" ]; +then + echo "Not rewriting LIBEV_PATH $LIBEV_PATH" + exit 0 +fi + +LIBEV_LOCAL=$(basename "$LIBEV_PATH") +cp $LIBEV_PATH $LIBEV_LOCAL +install_name_tool -change "$LIBEV_PATH" @loader_path/"$LIBEV_LOCAL" "$SERVER_BINARY" + +otool -L "$SERVER_BINARY"