From: Marcus Eggenberger Date: Sun, 12 Jul 2009 13:13:42 +0000 (+0200) Subject: Small update to my bundling script for Mac OS X. X-Git-Tag: 0.5-rc1~170 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=48f1843a91a923784b4a58b5bbe8a25aa7d395c8 Small update to my bundling script for Mac OS X. --- diff --git a/scripts/build/macosx_DeployApp.py b/scripts/build/macosx_DeployApp.py index 4be32f7f..b0ad7608 100755 --- a/scripts/build/macosx_DeployApp.py +++ b/scripts/build/macosx_DeployApp.py @@ -16,6 +16,8 @@ import sys import os +from subprocess import Popen, PIPE + class InstallQt(object): def __init__(self, appdir, bundle = True): self.appDir = appdir @@ -59,9 +61,14 @@ class InstallQt(object): # Install new Lib ID and Change Path to Frameworks for the Dynamic linker for lib in os.listdir(localframework + "/Versions/Current"): lib = "%s/Versions/Current/%s" % (localframework, lib) - otoolpipe = os.popen('otool -D "%s"' % lib) - libname = [line for line in otoolpipe][1].strip() - otoolpipe.close() + otoolProcess = Popen('otool -D "%s"' % lib, shell=True, stdout=PIPE, stderr=PIPE) + try: + libname = [line for line in otoolProcess.stdout][1].strip() + except: + libname = '' + otoolProcess.stdout.close() + if otoolProcess.wait() == 1: # we found some Resource dir or similar -> skip + continue frameworkpath, libpath = libname.split(frameworkname) if self.bundle: newlibname = "@executable_path/../%s%s" % (frameworkname, libpath) @@ -72,7 +79,7 @@ class InstallQt(object): self.changeDylPath(lib) def determineDependancies(self, app): - otoolPipe = os.popen('otool -L "%s"' % app) + otoolPipe = Popen('otool -L "%s"' % app, shell=True, stdout=PIPE).stdout otoolOutput = [line for line in otoolPipe] otoolPipe.close() libs = [line.split()[0] for line in otoolOutput[1:] if "Qt" in line and not "@executable_path" in line]