Project

swiftproj

0.0
No commit activity in last 3 years
No release in over 3 years
A command-line tool for managing Xcode project with Swift Package Manager
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

>= 3.0
>= 1.5
 Project Readme

Swiftproj

Gem Build Status Codecov

A command-line tool for managing Xcode project with Swift Package Manager. I wrote this to make it easy to deploy to Carthage in a Swift Package Manager only project.

Basic Usage

$ swiftproj help
    version               Displays the current version of swiftproj
    help                  Displays this help message
    configure-scheme      Configures a scheme to have buildable targets only
    add-systemframework   Adds a system framework to an existing target
    remove-framework      Removes a framework from a target
    generate-xcconfig     Generates a Xcode project file
    generate-xcodeproj    Generates a xcconfig file from podspec file

Example

This is an example of generating Xcodeproj file and archiving for Carthage release.

$ swiftproj generate-xcconfig --podspec URLNavigator.podspec
$ swiftproj generate-xcodeproj --xcconfig-overrides Config.xcconfig
$ swiftproj add-system-framework \
    --project URLNavigator.xcodeproj \
    --target QuickSpecBase \
    --framework Platforms/iPhoneOS.platform/Developer/Library/Frameworks/XCTest.framework
$ swiftproj configure-scheme \
    --project URLNavigator.xcodeproj \
    --scheme URLNavigator-Package \
    --targets URLNavigator,URLMatcher
$ carthage build --no-skip-current
$ carthage archive URLNavigator URLMatcher

Installation

$ gem install swiftproj

License

Swiftproj is under MIT license. See the LICENSE for more info.