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-14 03:31:03 +0100
commit11bd15e0a8d08552e56596094d77c455fa658a73 (patch)
treec24eddb297c27be013d93218260ea57d6db52a73
parent451350d26e443a3d6a488e49029f848d4ba92ce4 (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)