Skip to content

Duplicate Paths in FRAMEWORK_SEARCH_PATHS when a pod has multi vendored_frameworks #1882

Closed
kejinlu opened this Issue Mar 13, 2014 · 8 comments

6 participants

@kejinlu
kejinlu commented Mar 13, 2014

I believe that it should remove duplicate paths

@kejinlu kejinlu assigned CocoaPodsBot and unassigned CocoaPodsBot Mar 29, 2014
@schneiderandre

Confirmed.

  • Create a new Xcode Project
  • pod init
  • Add pod ShareKit to the Podfile (it has 2 vendored_frameworks)
  • pod install

The FRAMEWORK_SEARCH_PATHS in the generated xcconfig file contains the "$(PODS_ROOT)/ShareKit/Frameworks" path twice.

@CocoaPodsBot

Issue has been confirmed by @schneiderandre

@CocoaPodsBot CocoaPodsBot was unassigned by kejinlu Mar 29, 2014
@fabiopelosin
CocoaPods member

We should check wether a search is already in the config array before adding it.

@segiddins
CocoaPods member

or just uniq that array

@segiddins
CocoaPods member

@fabiopelosin it looks like the change might need to go in Xcodeproj::XCConfig#merge!

@fabiopelosin
CocoaPods member

I thought about adding it directly in Xcodeproj::Config however I'm not sure if there are cases where a duplicate might make sense. If not we should definitely do it there by default.

@lemonkey

Also confirmed if you're writing a podspec and have:

s.xcconfig = { 'FRAMEWORK_SEARCH_PATHS' => '"$(PLATFORM_DIR)/Developer/Library/Frameworks"' }

The resulting Pods-xxx-debug.xcconfig has:

FRAMEWORK_SEARCH_PATHS = "$(PLATFORM_DIR)/Developer/Library/Frameworks" "$(PLATFORM_DIR)/Developer/Library/Frameworks"

This is in a project whose Podfile has 2 targets (main app and test target) that each get the pod.

@segiddins
CocoaPods member

I don't think we can safely always remove duplicate paths, as ordering matters.

@segiddins segiddins closed this Aug 29, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.