X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=scripts%2Fbuild%2Fmacosx_DeployApp.py;h=83ca5a0fd371a304d26c773ad824835ed05dbae0;hp=b0ad76083ba7e6c39120d504bc9168f6c7bfc9ab;hb=bca738922192891624bc04aa71a06da1253044b4;hpb=48f1843a91a923784b4a58b5bbe8a25aa7d395c8 diff --git a/scripts/build/macosx_DeployApp.py b/scripts/build/macosx_DeployApp.py index b0ad7608..83ca5a0f 100755 --- a/scripts/build/macosx_DeployApp.py +++ b/scripts/build/macosx_DeployApp.py @@ -33,6 +33,8 @@ class InstallQt(object): self.needFrameworks = [] + self.findFrameworkPath() + executables = [self.executableDir + "/" + executable for executable in os.listdir(self.executableDir)] for executable in executables: @@ -42,12 +44,22 @@ class InstallQt(object): self.installFramework(framework) self.changeDylPath(executable) + def findFrameworkPath(self): + qmakeProcess = Popen('qmake -query QT_INSTALL_LIBS', shell=True, stdout=PIPE, stderr=PIPE) + self.sourceFrameworkPath = qmakeProcess.stdout.read().strip() + qmakeProcess.stdout.close() + qmakeProcess.wait() + + def installFramework(self, framework): try: os.mkdir(self.frameworkDir) except: pass + if not framework.startswith('/'): + framework = "%s/%s" % (self.sourceFrameworkPath, framework) + # Copy Framework os.system('cp -R "%s" "%s"' % (framework, self.frameworkDir)) @@ -82,7 +94,9 @@ class InstallQt(object): 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] + libs = [line.split()[0] for line in otoolOutput[1:] if ("Qt" in line + or "phonon" in line) + and not "@executable_path" in line] frameworks = [lib[:lib.find(".framework")+len(".framework")] for lib in libs] return zip(frameworks, libs)