ShareKit/ShareKit — pull request #526 by VilemKurz (2012-09-24 15:33:52+00:00)
Title: NEW FEATURE: separate targets for core files, submodules and sharers

This is a solution for all of you, who:

- import ShareKit to your project and have conflicts with already implemented ShareKit's submodules or other 3rd party code used in ShareKit.
- do not want to compile all the sharers, just a few which do you wish to use

How it works:

There is "Static Library" target in ShareKit's project file, which you add to your project. It contains all the ShareKit's code together, so you have to build it all, even if you do not want to use all sharers.

Now I added new, granular targets, which you might, or might not use. You just pick which you want, and you do not have to change any original ShareKit's file.

For general and straightforward use I still recommend to use global "Static Library".

For granular use there are **mandatory "Static Library Core" + "SSKeyChain", "JSONKit", "Reachability"** targets. Of course if you already implemented e.g. "JSONKit", you do not have to do it again, you just do not add "JSONKit" into target dependencies and you can use what you already have in project.

Now the framework is set, and you only need to add which sharers you need. For an example, if you want say Facebook and Delicious only, you add **optional targets: "Delicious", "Facebook" and "Facebook SDK"**

I believe this way we combine the flexibility of former approach and benefits of subproject (the biggest one is flawless update, even if many things change in ShareKit's codebase).