Есть ли способ указать зависимость от хост-проекта с помощью Swift Package Manager? - PullRequest
0 голосов
/ 09 июня 2019

У меня есть библиотека разрешений, которая в настоящее время работает нормально с Cocoapods и Carthage , но я хочу добавить поддержку Swift Package Manager .Эта библиотека требует указывать определенные пользователем параметры сборки, такие как:

CAMERA_PERMISSION

, потому что в моем коде я добавил несколько макросов, таких как:

#if CAMERA_PERMISSION
...
#endif

Это позволяет избежать доставки кодаон вызывает API разрешений, который на самом деле не используется конечным пользователем, и поэтому ему не нужно объяснять команде разработчиков приложений, почему приложение заметок, использующее только уведомления, требует разрешения камеры.

Этого легко достичь в Cocoapods благодаря некоторым subspec, которые я добавил в .podspec

В Carthage была другая история, мне пришлось добавить файл .xcconfig в мой код, который в основном имеетссылка на тот же файл .xcconfig, который я прошу своего пользователя добавить в свой проект.Это просто, так как мне нужно только указать:

?include '../../../../config.xcconfig'

Чтобы перейти из папки Carthage до самого корня моего пользовательского проекта.

Но я немного растерялся, как этого добиться в Swift Package Manager.

Есть идеи?Спасибо!

...