makewheel: Don't run codesign --remove-signature on files without signature

See #927
This commit is contained in:
rdb 2021-03-13 13:09:46 +01:00
parent 209e031964
commit 13a764c91e

View File

@ -404,6 +404,7 @@ class WheelFile(object):
# Now add dependencies. On macOS, fix @loader_path references.
if sys.platform == "darwin":
is_unsigned = subprocess.call(['codesign', '-d', temp.name], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
if source_path.endswith('deploy-stubw'):
deps_path = '@executable_path/../Frameworks'
else:
@ -444,10 +445,11 @@ class WheelFile(object):
remove_signature = True
# Replace the codesign signature if we modified the library.
if remove_signature:
if self.platform.endswith("_arm64"):
if self.platform.endswith("_arm64") and (is_unsigned or remove_signature):
subprocess.call(["codesign", "-f", "-s", "-", temp.name])
else:
elif remove_signature and not is_unsigned:
if GetVerbose():
print("Removing code signature from {0}".format(source_path))
subprocess.call(["codesign", "--remove-signature", temp.name])
if self.platform.endswith("_universal2"):
subprocess.call(["codesign", "-a", "arm64", "-s", "-", temp.name])