summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2021-01-06 17:24:38 +0100
committerCarl Hetherington <cth@carlh.net>2021-01-08 01:04:15 +0100
commite0de92e92a962660a53771a5cab59a0cd4898c63 (patch)
treec24eddb297c27be013d93218260ea57d6db52a73
parentf28ef0d098ea85c5393af019633614973107f681 (diff)
It turns out, after all these years, that apparently you can use
any SDK you want and just change the deployment target to the minimum you want to support - who knew?
-rwxr-xr-xcdist17
1 files changed, 9 insertions, 8 deletions
diff --git a/cdist b/cdist
index c0ff509..5a5aabb 100755
--- a/cdist
+++ b/cdist
@@ -111,8 +111,9 @@ class Config:
Option('git_reference'),
Option('osx_environment_prefix'),
Option('osx_sdk_prefix'),
- Option('osx_intel_sdk'),
- Option('osx_arm_sdk'),
+ Option('osx_sdk'),
+ Option('osx_intel_deployment'),
+ Option('osx_arm_deployment'),
Option('osx_keychain_file'),
Option('osx_keychain_password'),
Option('apple_id'),
@@ -798,10 +799,11 @@ class OSXTarget(Target):
class OSXSingleTarget(OSXTarget):
- def __init__(self, arch, sdk, directory=None):
+ def __init__(self, arch, sdk, deployment, directory=None):
super(OSXSingleTarget, self).__init__(directory)
self.arch = arch
self.sdk = sdk
+ self.deployment = deployment
flags = '-isysroot %s/MacOSX%s.sdk -arch %s' % (self.sdk_prefix, sdk, arch)
host_enviro = '%s/x86_64' % config.get('osx_environment_prefix')
@@ -817,7 +819,7 @@ class OSXSingleTarget(OSXTarget):
self.set('LINKFLAGS', '"-L%s/lib -L%s/lib %s"' % (self.directory, target_enviro, flags))
self.set('PKG_CONFIG_PATH', '%s/lib/pkgconfig:%s/lib/pkgconfig:/usr/lib/pkgconfig' % (self.directory, target_enviro))
self.set('PATH', '$PATH:/usr/bin:/sbin:/usr/local/bin:%s/bin' % host_enviro)
- self.set('MACOSX_DEPLOYMENT_TARGET', sdk)
+ self.set('MACOSX_DEPLOYMENT_TARGET', self.deployment)
self.set('CCACHE_BASEDIR', self.directory)
@Target.ccache.setter
@@ -838,12 +840,11 @@ class OSXSingleTarget(OSXTarget):
class OSXUniversalTarget(OSXTarget):
def __init__(self, directory=None):
super(OSXUniversalTarget, self).__init__(directory)
- self.intel_sdk = config.get('osx_intel_sdk')
- self.arm_sdk = config.get('osx_arm_sdk')
+ self.sdk = config.get('osx_sdk')
def package(self, project, checkout, output_dir, options, notarize):
- for arch, sdk in (('x86_64', self.intel_sdk), ('arm64', self.arm_sdk)):
- target = OSXSingleTarget(arch, sdk, os.path.join(self.directory, arch))
+ for arch, deployment in (('x86_64', config.get('osx_intel_deployment')), ('arm64', config.get('osx_arm_deployment'))):
+ target = OSXSingleTarget(arch, self.sdk, deployment, os.path.join(self.directory, arch))
target.ccache = self.ccache
tree = globals.trees.get(project, checkout, target)
tree.build_dependencies(options)