Commit Graph

188 Commits

Author SHA1 Message Date
Jakub Bednar d35d22f08b Added support for dependency destination specification. (Resolves #1038) (#1039)
* Added support for dependency destination specification. (Resolves #1038)

* More generic way covering more different dependency types. (#1038)

* Added unit-test for each possible dependency combination. First test current embeding then the new one with custom copy spec. (#1038)

* Review fixes. (#1038)

* Minimized unit-test boiler-plate (#1038)

* Update CHANGELOG.md

Co-authored-by: Jakub Bednář <jakub.bednar@avast.com>
Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-07-15 12:10:34 +10:00
Elliott Williams 8bfa2f33e4 Revert "Change FRAMEWORK_SEARCH_PATH for xcframeworks (#1015)" (#1081)
* Revert "Change FRAMEWORK_SEARCH_PATH for xcframeworks (#1015)"

This reverts commit 7b8f5a117f.

* Don't actually revert the changelog entry

* ProjectSpec.md: document how to link an xcframework

* Update CHANGELOG.md
2021-05-22 10:32:09 +10:00
Franz Busch 7b8f5a117f Change FRAMEWORK_SEARCH_PATH for xcframeworks (#1015)
* Change FRAMEWORK_SEARCH_PATH for xcframeworks

* Apply suggestions from code review

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-04-08 22:20:01 +10:00
Liam Nichols 1b57ba5c75 Improve INFOPLIST_FILE handling to only omit used Info.plist's from Copy Bundle Resources Build Phase (#1027)
* Update TestProject Fixture to include GoogleService-Info.plist resource bsaed on 2.18.0 generator

* Update TestProject fixture to include an Info.plist file named 'App-Info.plist' to simulate scenario in #945

* Resolve INFOPLIST_FILE values upfront ahead of resolving all source files for a target

* fixup! Resolve INFOPLIST_FILE values upfront ahead of resolving all source files for a target

* fixup! Resolve INFOPLIST_FILE values upfront ahead of resolving all source files for a target

* Refactor SourceGenerator to remove some redundant arguments on internal methods when generating source files in a target

* Update SourceGenerator to accept '[Path: BuildPhaseSpec]' of preferred build phases in order to prioritise over 'default' value. Remove explicit Info.plist check from SourceGenerator. Update PBXProjGenerator to inject hash of build phases for resolved INFOPLIST_FILE values. Update SourceGeneratorTests to comply with change where only the FIRST Info.plist is excluded from copy bundle resources build phase, additionally resolve absolute path

* Ensure project.basePath is always absolute when resolving Info.plist path relative to project

* Add test coverage in SourceGeneratorTests.swift

* Update CHANGELOG.md

* Reword CHANGELOG.md
2021-04-08 15:38:21 +10:00
Bartosz Polaczyk 2c600a7c64 Add Discovered Dependency File (#1012)
* Upgrade XCodeProj to 7.14.0

* Bump to XcodeProj to fork

* Add script discoveredDependencyFile

* Align cfbundle test

* Add changelog mock

* Update Documentation

* Update SPM manifest

* Change property name

* Verify defult dependency file to nil

* Add JSON encodable test

* Add PR number

Co-authored-by: Fernanda Geraissate <fernandag@spotify.com>
2021-02-15 12:43:41 +11:00
Max Rabiciuc 6b7ab91440 Fix issue where frameworks with MACH_O_TYPE:staticlib were being embedded (#1003) 2021-01-15 09:51:38 +11:00
Roman Podymov 742fe69c5b "Copy only when installing" for "Embed App Extensions" (#948)
* Added onlyCopyExtensionsOnInstall

* Fix for Xcode 12

* Fixed PBXCopyFilesBuildPhase for "Embed App Extensions"

* Test for onlyCopyExtensionsOnInstall

* Update CHANGELOG.md

* Update ProjectSpec.md

* Refactoring

* More tests for onlyCopyExtensionsOnInstall

* Reverted

* Refactoring with getPBXCopyFilesBuildPhase

* Deleted similar tests

* onlyCopyExtensionsOnInstall -> onlyCopyFilesOnInstall

* Update ProjectSpec.md

* Update CHANGELOG.md

* Update ProjectGeneratorTests.swift
2020-10-02 17:48:32 +10:00
Kiran Thorat 691ca93677 Fixes for embedding SDK dependencies. (#922) 2020-08-06 09:13:13 +10:00
Jared Sorge 331c3da0ef Add Target option for copying frameworks when installing (#912)
* Add copy files on install option

* Add documentation

* Add tests

* Add to the target’s JSON if true

* Add changelog entry

* Add test for outputted pbxproj file
2020-07-26 22:15:42 +10:00
Yonas Kolb 7da953a488 swift format 2020-06-17 18:12:34 +10:00
Yonas Kolb 0964a7ed30 Revert "Add staticBinary linkType for Carthage dependency (#847)"
This reverts commit d88d385757.

# Conflicts:
#	CHANGELOG.md
#	Sources/XcodeGenKit/PBXProjGenerator.swift
#	Tests/XcodeGenKitTests/ProjectGeneratorTests.swift
2020-06-17 17:56:02 +10:00
Nikita Kukushkin 86c9812582 Allow skipping compile source build phase for bundles (#878)
* Add `.bundle` to `canSkipCompileSourcesBuildPhase`

* Fix tests

* Update fixtures

* Update CHANGELOG.md
2020-06-05 18:54:48 +10:00
Akio Yasui f25a8955ba Don't link transitive static carthage libraries (#853) 2020-05-02 12:18:12 -05:00
Toshihiro Suzuki 25f56acc4c Fix linking of multiple products from the same Swift Package (#830)
* link dependency.package.products transitively

* update test

* changelog

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-05-02 16:11:50 +10:00
Daiki Matsudate d88d385757 Add staticBinary linkType for Carthage dependency (#847) 2020-05-01 12:54:12 -05:00
Ian Leitch 4ae08453c3 Fix handling of SWIFT_INSTALL_OBJC_HEADER when its value is YES/NO. (#827)
* Fix handling of SWIFT_INSTALL_OBJC_HEADER when its value is YES/NO.

* Update CHANGELOG.md

* Address PR feedback.
2020-04-15 10:55:56 +10:00
Fumito Nakazawa 18fae50c86 Fix to prevent duplicate addition of carthage static frameworks (#829)
* Check carthageLinkType is static

* Update changelog
2020-04-13 21:44:14 +10:00
Andrés Cecilia Luque 7afcf1f5f7 Fixed issue when linking and embeding static frameworks: they should be linked and NOT embed (#820) 2020-04-07 10:14:42 -05:00
Yonas Kolb 15559eb651 Merge pull request #805 from kateinoigakukun/katei/support-SWIFT_INSTALL_OBJC_HEADER
Avoid copying ObjC interface header when SWIFT_INSTALL_OBJC_HEADER=false
2020-03-25 11:30:05 +11:00
Yuta Saito b7d658157e Merge branch 'master' into katei/support-SWIFT_INSTALL_OBJC_HEADER 2020-03-20 11:50:05 +09:00
freddi 550df76722 Make SwiftPackage itself as enum 2020-03-19 23:29:46 +09:00
freddi ca8136b62d Removed localPackages variable 2020-03-18 21:32:24 +09:00
freddi 5eb4c33197 Merge branch 'support-local-sp' into support-local-sp-with-packages 2020-03-18 20:50:23 +09:00
freddi(Yuki Aki) 8dcfd07bd5 Update Tests/XcodeGenKitTests/ProjectGeneratorTests.swift
Co-Authored-By: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-03-18 17:13:50 +09:00
Yuta Saito 78c11f94a3 Avoid to copy ObjC interface header when SWIFT_INSTALL_OBJC_HEADER=false 2020-03-14 02:37:00 +09:00
freddi 80fdc18b25 Updated Test 2020-03-05 20:55:34 +09:00
freddi 81c2f4ec67 Added support local package on packages: 2020-03-05 20:40:01 +09:00
freddi 7ca1ba2400 Fixed added test code 2020-03-04 19:43:46 +09:00
freddi 3cab6b989c Added Test for generates local swift packages 2020-03-04 01:03:39 +09:00
freddi ae4092d0dd Removed unnecessary try in test 2020-03-03 22:34:01 +09:00
freddi 0b5585f122 Support Swift Package in local by localPackages 2020-03-03 21:33:18 +09:00
Ken Tominaga e3f8ae9e85 Set defaultConfigurationName for every target in a project 2020-02-24 16:57:36 -08:00
yonaskolb d966e9d610 fix legacy targets dependencies 2020-02-07 10:09:09 +11:00
Evan Coleman 6bfd620549 Support external target dependencies via subprojects (#701)
* Allow external target dependencies via subprojects

* Update CHANGELOG

* Update ProjectSpec

* Fix test

* Use existing fixture for test

* Sort subprojects by name

* Throw subproject generation error instead of crashing

* Cleanup target dependency generation

* Update test fixture project

* Combine extentions in Linkage

* Update XcodeProj to 7.7.0

* Update CHANGELOG.md

* Update ProjectSpec.md

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-02-02 09:44:56 +11:00
Yuta Saito 49f29e9156 Merge branch 'master' into katei/add-bundle-dependency 2019-11-20 19:35:38 -08:00
Yuta Saito f2452a86d1 Remove debug code 2019-11-20 20:39:30 +09:00
yonaskolb 9563af8bf9 fix test 2019-11-20 22:19:43 +11:00
Yuta Saito db1f711ac8 Add test case 2019-11-20 16:53:45 +09:00
yonaskolb 865ad156b2 use custom unwrap function 2019-11-10 12:18:04 +11:00
yonaskolb 66569d3670 use XCTUnwrap 2019-11-10 12:09:37 +11:00
yonaskolb 0e4e08bfc4 run swift format for Swift 5.1 2019-11-10 11:56:23 +11:00
Kohki Miki 03076f40eb Support Static Frameworks for Carthage dependencies (#688) 2019-11-07 11:03:26 -06:00
wag-miles c5905581d5 Fix header phase for static frameworks (#705) 2019-11-06 14:09:20 -06:00
yonaskolb 518d8e578b restructure test targets 2019-10-27 23:15:12 +11:00
yonaskolb d0d509c1a5 swiftformat 2019-10-27 22:37:41 +11:00
Yuta Saito e45b0d0f43 Fix build errors 2019-10-27 13:02:53 +09:00
giginet d4c5b29ca3 Add tests for Info.plist 2019-10-23 18:58:40 +09:00
Kohki Miki 5b5d0e917e Merge pull request #681 from giginet/project-path
Resolving relative paths with custom project destination
2019-10-23 04:15:51 +09:00
giginet 80808d69c8 Rename 2019-10-22 23:37:01 +09:00
Franz Busch cb2ee6cbaa Code review comments 2019-10-22 10:39:42 +02:00