Basic Gradle/MPP question: The example Gradle/MPP setups I can find online seem to be split into two definite camps:
1. Define all platforms in one module with different source sets.
2. Define each platform in it's own module, referencing another Common module - each module containing only one source set.
Can anyone suggest the pro/con of each setup and why they are both presented?
It's quite confusing for a newcomer to be presented with both of these as 'the way to do multi-platform'.
Personally, separate modules with one source-set per module feels more natural to me:
- Follows established Gradle conventions
- Doesn't require learning new knowledge of Gradle's often opaque data-structures (how to configure target within module, rather than module directly)
- Keeps the platform modules more loosely coupled, not defined in the same file