Removed obsolete code and used Qt to codesign #4397

This commit is contained in:
Nick Bolton 2015-03-02 17:31:43 +00:00
parent 6e7b9491d4
commit 24aa95a1d5

View File

@ -774,8 +774,6 @@ class InternalCommands:
for target in targets: for target in targets:
self.macPostMake(target) self.macPostMake(target)
self.fixQtFrameworksLayout()
def symlink(self, source, target): def symlink(self, source, target):
if not os.path.exists(target): if not os.path.exists(target):
os.symlink(source, target) os.symlink(source, target)
@ -784,39 +782,6 @@ class InternalCommands:
if os.path.exists(source): if os.path.exists(source):
shutil.move(source, target) shutil.move(source, target)
def fixQtFrameworksLayout(self):
# reorganize Qt frameworks layout on Mac 10.9.5 or later
# http://goo.gl/BFnQ8l
# QtCore example:
# QtCore.framework/
# QtCore -> Versions/Current/QtCore
# Resources -> Versions/Current/Resources
# Versions/
# Current -> 5
# 5/
# QtCore
# Resources/
# Info.plist
dir = self.getGenerator().binDir
target = dir + "/Synergy.app/Contents/Frameworks"
(major, minor) = self.getMacVersion()
if major == 10:
if minor >= 9:
for root, dirs, files in os.walk(target):
for dir in dirs:
if dir.startswith("Qt"):
self.try_chdir(target + "/" + dir +"/Versions")
self.symlink("5", "Current")
self.move("../Resources", "5")
self.restore_chdir()
self.try_chdir(target + "/" + dir)
dot = dir.find('.')
frameworkName = dir[:dot]
self.symlink("Versions/Current/" + frameworkName, frameworkName)
self.symlink("Versions/Current/Resources", "Resources")
self.restore_chdir()
def macPostMake(self, target): def macPostMake(self, target):
dir = self.getGenerator().binDir dir = self.getGenerator().binDir
@ -838,10 +803,15 @@ class InternalCommands:
shutil.copy(targetDir + "/synmacph", launchServicesDir) shutil.copy(targetDir + "/synmacph", launchServicesDir)
if self.enableMakeGui: if self.enableMakeGui:
self.loadConfig()
if not self.macIdentity:
raise Exception("run config with --mac-identity")
# use qt to copy libs to bundle so no dependencies are needed. do not create a # use qt to copy libs to bundle so no dependencies are needed. do not create a
# dmg at this point, since we need to sign it first, and then create our own # dmg at this point, since we need to sign it first, and then create our own
# after signing (so that qt does not affect the signed app bundle). # after signing (so that qt does not affect the signed app bundle).
bin = "macdeployqt Synergy.app -verbose=2" bin = "macdeployqt Synergy.app -verbose=2 -codesign='" + self.macIdentity + "'"
self.try_chdir(dir) self.try_chdir(dir)
err = os.system(bin) err = os.system(bin)
self.restore_chdir() self.restore_chdir()
@ -849,35 +819,8 @@ class InternalCommands:
if err != 0: if err != 0:
raise Exception(bin + " failed with error: " + str(err)) raise Exception(bin + " failed with error: " + str(err))
(qMajor, qMinor, qRev) = self.getQmakeVersion()
if qMajor <= 4:
frameworkRootDir = "/Library/Frameworks"
else:
# TODO: auto-detect, qt can now be installed anywhere.
frameworkRootDir = "/Developer/Qt5.2.1/5.2.1/clang_64/lib"
target = dir + "/Synergy.app/Contents/Frameworks"
# copy the missing Info.plist files for the frameworks.
for root, dirs, files in os.walk(target):
for dir in dirs:
if dir.startswith("Qt"):
shutil.copy(
frameworkRootDir + "/" + dir + "/Contents/Info.plist",
target + "/" + dir + "/Resources/")
def signmac(self): def signmac(self):
self.loadConfig() print "signmac is now obsolete"
if not self.macIdentity:
raise Exception("run config with --mac-identity")
self.try_chdir("bin")
err = os.system(
'codesign --deep -fs "' + self.macIdentity + '" Synergy.app')
self.restore_chdir()
if err != 0:
raise Exception("codesign failed with error: " + str(err))
def signwin(self, pfx, pwdFile, dist): def signwin(self, pfx, pwdFile, dist):
generator = self.getGeneratorFromConfig().cmakeName generator = self.getGeneratorFromConfig().cmakeName