package: use @rpath based library loading for MacOSX and Linux
authorSeokYeon Hwang <syeon.hwang@samsung.com>
Wed, 1 Jun 2016 06:57:34 +0000 (15:57 +0900)
committerMunkyu Im <munkyu.im@samsung.com>
Thu, 30 Jun 2016 11:33:56 +0000 (20:33 +0900)
Change-Id: I9b46d17b2e976c10009e8274f1fb5ffc918420a0
Signed-off-by: Munkyu Im <munkyu.im@samsung.com>
(cherry picked from commit 87923d15fa83ec56e9d748f7289acf4fd1b9a369)

tizen/emulator_configure.sh
tizen/src/Makefile

index 8c6913d1675f354a8d845d1efc0e177fd400a63e..3cae689815105ddaf9e12c327ea9dba6d5f29e56 100755 (executable)
@@ -204,6 +204,7 @@ exec ./configure \
  --disable-pie \
  --enable-virtfs \
  --disable-xen \
+ --extra-ldflags=-Wl,-rpath,'\$\$ORIGIN' \
  $CONFIGURE_APPEND \
 ;;
 MINGW*)
@@ -237,6 +238,7 @@ echo "##### QEMU configure append:" $CONFIGURE_APPEND
  --disable-vnc \
  --disable-cocoa \
  --disable-sdl \
+ --extra-ldflags=-Wl,-rpath,'@executable_path' \
  $CONFIGURE_APPEND \
 ;;
 esac
index b15402eccbfb37d8fb38a32b0cbedb42eb90e44d..60f132e0ee9bea4e050b99f5795454a90245d2d9 100644 (file)
@@ -196,39 +196,6 @@ ifdef CONFIG_LINUX
        cp -pP skin/client/native_src/clipboard.py $(EMUL_DIR)/bin
 endif
 
-ifdef 0 # remove loading path changing for MacOS
-# change loading path of dynamic shared libraries on MAC OS X
-ifdef CONFIG_DARWIN
-       install_name_tool -change /opt/local/lib/libgthread-2.0.*.dylib @loader_path/libgthread-2.0.0.dylib $(EMUL_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(EMUL_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(EMUL_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(EMUL_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/libz.1.dylib @loader_path/libz.1.dylib $(EMUL_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/libcurl.4.dylib @loader_path/libcurl.4.dylib $(EMUL_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(EMUL_DIR)/bin/check-gl
-       install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(EMUL_DIR)/bin/check-gl
-       install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(EMUL_DIR)/bin/check-gl
-
-       @for target in $(TARGET_DIRS); do \
-       case "$$target" in \
-       i386-softmmu) \
-               install_name_tool -change /opt/local/lib/libgthread-2.0.*.dylib @loader_path/libgthread-2.0.0.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libz.1.dylib @loader_path/libz.1.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libncurses.5.dylib @loader_path/libncurses.5.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libcurl.4.dylib @loader_path/libcurl.4.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libpixman-1.0.dylib @loader_path/libpixman-1.0.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libpng16.16.dylib @loader_path/libpng16.16.dylib $(EMUL_DIR)/bin/emulator-x86; \
-               ;; \
-       arm-softmmu) \
-               ;; \
-       esac; \
-       done
-endif
-endif
-
 # for dibs system...
 all_dibs: qemu skin_client_dibs
 skin_client_dibs:
@@ -322,37 +289,6 @@ ifdef CONFIG_LINUX
        cp -pP skin/client/native_src/clipboard.py $(DIBS_COMMON_DIR)/bin
 endif
 
-# change loading path of dynamic shared libraries on MAC OS X
-ifdef CONFIG_DARWIN
-       install_name_tool -change /opt/local/lib/libgthread-2.0.*.dylib @loader_path/libgthread-2.0.0.dylib $(DIBS_COMMON_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(DIBS_COMMON_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(DIBS_COMMON_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(DIBS_COMMON_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/libz.1.dylib @loader_path/libz.1.dylib $(DIBS_COMMON_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/libcurl.4.dylib @loader_path/libcurl.4.dylib $(DIBS_COMMON_DIR)/bin/qemu-img
-       install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(DIBS_COMMON_DIR)/bin/check-gl
-       install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(DIBS_COMMON_DIR)/bin/check-gl
-       install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(DIBS_COMMON_DIR)/bin/check-gl
-
-       @for target in $(TARGET_DIRS); do \
-       case "$$target" in \
-       i386-softmmu) \
-               install_name_tool -change /opt/local/lib/libgthread-2.0.*.dylib @loader_path/libgthread-2.0.0.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libz.1.dylib @loader_path/libz.1.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libncurses.5.dylib @loader_path/libncurses.5.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libcurl.4.dylib @loader_path/libcurl.4.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libpixman-1.0.dylib @loader_path/libpixman-1.0.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
-               install_name_tool -change /opt/local/lib/libpng16.16.dylib @loader_path/libpng16.16.dylib $(DIBS_X86_DIR)/bin/emulator-x86; \
-               ;; \
-       arm-softmmu) \
-               ;; \
-       esac; \
-       done
-endif
-
 else
 all:
        @echo "Please call configure before running make!"