snowplow / snowplow-ios-tracker

Snowplow event tracker for Swift and Objective-C. Add analytics to your iOS, macOS, tvOS and watchOS apps and games
http://snowplow.io
Apache License 2.0
81 stars 92 forks source link

Swift Package Manager unable to find headers on subfolders #503

Closed vicegax closed 4 years ago

vicegax commented 4 years ago

Apparently Swift Package Manager has a limitation when working with C headers, they need to be in a flat hierarchy otherwise SPM can't find them.

Transcript from Swift Evolution:

For C family library targets, we propose to add a publicHeadersPath property.

This property defines the path to the directory containing public headers of a C target. This path is relative to the target path and default value of this property is include. This mechanism should be further improved in the future, but there are several behaviors, such as modulemap generation, which currently depend of having only one public headers directory. We will address those issues separately in a future proposal.

All existing rules related to custom and automatic modulemap remain intact.

More on this context: [https://github.com/apple/swift-evolution/blob/master/proposals/0162-package-manager-custom-target-layouts.md]()

This problem didn't arise before as the proposal for enabling Swift Package Manager was originally using the source code of master, on branch release/1.3.0 there are headers not contained on the root directory.

Symptoms:

Screenshot 2020-04-18 at 10 22 36
AlexBenny commented 4 years ago

Thanks @vauxhall , you are right. The travis script brought me in fault. It is putting the green tick also when SPM demo build doesn't start correctly.

Unfortunately It seems there are many frictions between SPM and ObjC libraries, at the moment.

AlexBenny commented 4 years ago

For reference this issue is linked to: #474