On Aug 2, 2015, at 04:01 , sqwarqDev <[email protected]> wrote: > > Is it possible to build a single app target and link it to one version or > another of a (3rd party) framework at runtime, depending on the OS X version > the user is running? > > Specifically, my app runs on 10.6 or later, but adding Sparkle v1.11 requires > 10.7 minimum. I understand I need to use Sparkle 1.5b for SL users, but I > want to build both the old and new versions of Sparkle into a single binary > and have the appropriate one linked to at run time.
In theory it might be possible (though OTOH there might be linker requirements for Obj-C code that make it impossible for other reasons) by creating two dynamic libraries, but you’d have to load the correct one manually at run time. This seems like a world of pain. If you’re determined to fully support OS X back to 10.6, your best choice is probably to stick with Sparkle 1.5. Sparkle 1.11 might be compelling as a replacement, but I don’t think it’s as compelling as an alternative if you still have to support the old Sparkle alongside. Another alternative is to support only 10.7+, in new versions of your app. I’m aware of the benefits of supporting older OS X versions, but they’re likely not cost effective for you as a developer. Yet another alternative is create separate app targets for 10.6 and 10.7+, leading to separate app bundles. You make both publicly available for download, or you can supply the 10.6 version on request.
_______________________________________________ Do not post admin requests to the list. They will be ignored. Xcode-users mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/xcode-users/archive%40mail-archive.com This email sent to [email protected]
