CocoaPods / Rome

Makes it easy to build a list of frameworks.
MIT License
694 stars 64 forks source link

Use multiple platforms in one Podfile #37

Closed jcampbell05 closed 8 years ago

jcampbell05 commented 8 years ago

I am currently experiencing an issue with rome failing to rename a framework whilst building.

I 've attached my build logs:

use_frameworks!

#Doesn't make sense but is a workaround for https://github.com/CocoaPods/CocoaPods/issues/5033
platform :ios, '8.0'
platform :watchos, '2.0'

plugin 'cocoapods-rome'

target 'SupTests' do
  platform :ios, '8.0'

  #Testing
  pod 'Quick'
  pod 'Nimble'

  #Analytics
  pod 'Google/Analytics', '~> 1.0.0'
  pod 'GoogleTagManager'

  #Functional
  pod 'RxBlocking', '~> 2.1.0'
  pod 'RxCocoa', '~> 2.1.0'
  pod 'RxSwift', '~> 2.1.0'
  pod 'RxOptional', '~> 1.0.0'
end

target 'Sup-Watch Extension' do
  platform :watchos, '2.0'

  #Mapping
  pod 'ObjectMapper'

  #Functional
  pod 'RxBlocking', '~> 2.1.0'
  pod 'RxCocoa', '~> 2.1.0'
  pod 'RxSwift', '~> 2.1.0'
  pod 'RxOptional', '~> 1.0.0'
end

target 'Sup' do
  platform :ios, '8.0'

  #UI
  pod 'KVNProgress'
  pod 'SWTableViewCell', '~> 0.3.7'
  pod 'TTTAttributedLabel'
  pod 'SwipeView'
  pod 'UICountingLabel'

  #DI
  pod 'Swinject'

  #Core
  pod 'Crashlytics', '3.3.4'
  pod 'Branch'
  pod 'Fabric'
  pod 'Firebase'
  pod 'FBSDKCoreKit'
  pod 'FBSDKLoginKit'
  pod 'FBSDKShareKit'
  pod 'GeoFire', :git => 'https://github.com/jcampbell05/geofire-objc.git', :branch => 'master'
  pod 'JLRoutes'
  pod 'JTSImageViewController'
  pod 'JSQMessagesViewController'
  pod 'SDWebImage', :git => 'https://github.com/roger-tan/SDWebImage.git', :branch => 'master'
  pod 'Appirater'
  pod 'StatefulViewController', '~> 1.0'
  pod 'Parse'
  pod 'DateTools'
  pod 'Dwifft'
  pod 'NSOperationStack', :git => 'https://github.com/jcampbell05/NSOperationStack.git', :branch => 'master'

  #Analytics
  pod 'UXCam'
  pod 'Instabug'
  pod 'le'
  pod 'Heap'
  pod "Appsee"
  pod 'ARAnalytics', :subspecs => ["Mixpanel"]
  pod 'Google/Analytics', '~> 1.0.0'
  pod 'GoogleTagManager'
  pod 'Tweaks'

  #Functional
  pod 'RxBlocking', '~> 2.1.0'
  pod 'RxCocoa', '~> 2.1.0'
  pod 'RxSwift', '~> 2.1.0'
  pod 'RxOptional', '~> 1.0.0'

  #Misc
  pod 'Polly', '~> 0.2'
end

Error

Errno::ENOENT - No such file or directory @ sys_fail2 - (/Users/jamescampbell/Documents/Workspace/sup-front-end/build/ObjectMapper, /Users/jamescampbell/Documents/Workspace/sup-front-end/build/Release-watchos/Pods-Sup-Watch Extension/ObjectMapper.framework/ObjectMapper)
/Users/jamescampbell/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/fileutils.rb:525:in `rename'
/Users/jamescampbell/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/fileutils.rb:525:in `block in mv'
/Users/jamescampbell/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/fileutils.rb:1579:in `block in fu_each_src_dest'
/Users/jamescampbell/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/fileutils.rb:1595:in `fu_each_src_dest0'
/Users/jamescampbell/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/fileutils.rb:1577:in `fu_each_src_dest'
/Users/jamescampbell/.rvm/rubies/ruby-2.1.5/lib/ruby/2.1.0/fileutils.rb:514:in `mv'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-rome-0.4.2/lib/cocoapods-rome/post_install.rb:27:in `block in build_for_iosish_platform'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-rome-0.4.2/lib/cocoapods-rome/post_install.rb:16:in `each'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-rome-0.4.2/lib/cocoapods-rome/post_install.rb:16:in `build_for_iosish_platform'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-rome-0.4.2/lib/cocoapods-rome/post_install.rb:58:in `block (3 levels) in <top (required)>'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-rome-0.4.2/lib/cocoapods-rome/post_install.rb:53:in `each'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-rome-0.4.2/lib/cocoapods-rome/post_install.rb:53:in `block (2 levels) in <top (required)>'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-rome-0.4.2/lib/cocoapods-rome/post_install.rb:51:in `chdir'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-rome-0.4.2/lib/cocoapods-rome/post_install.rb:51:in `block in <top (required)>'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/hooks_manager.rb:119:in `call'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/hooks_manager.rb:119:in `block (3 levels) in run'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/user_interface.rb:140:in `message'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/hooks_manager.rb:111:in `block (2 levels) in run'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/hooks_manager.rb:109:in `each'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/hooks_manager.rb:109:in `block in run'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/user_interface.rb:140:in `message'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/hooks_manager.rb:108:in `run'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/installer.rb:481:in `run_plugins_post_install_hooks'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/installer.rb:462:in `perform_post_install_actions'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/installer.rb:113:in `install!'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/command/project.rb:71:in `run_install_with_update'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/command/project.rb:101:in `run'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/claide-0.9.1/lib/claide/command.rb:312:in `run'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/lib/cocoapods/command.rb:47:in `run'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/gems/cocoapods-0.39.0/bin/pod:44:in `<top (required)>'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/bin/pod:23:in `load'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/bin/pod:23:in `<main>'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/bin/ruby_executable_hooks:15:in `eval'
/Users/jamescampbell/.rvm/gems/ruby-2.1.5@sup-front-end/bin/ruby_executable_hooks:15:in `<main>'
neonichu commented 8 years ago

Using multiple platforms in one Podfile currently doesn't work with Rome in general, IIRC.

jcampbell05 commented 8 years ago

Do you have any pointers as to why this is ? Is this just a limitation of the current CocoaPods, is there anything I could do to help ?

neonichu commented 8 years ago

IIRC, there's two issues, on the one hand deduplication issues with multiple platforms in 0.39, but also lack of support for scoping the build output. There might also be issues with discovering all the targets to build, I haven't dug into it too much.

jcampbell05 commented 8 years ago

@neonichu Do you think this would be resolved for CocoaPods 1.0 ?