Cocoapods mezcla vainas con diferentes objectives de deployment

Mi proyecto tiene iOS 4.3 como objective de implementación.

Todas las bibliotecas de mi pod admiten 4.3, pero una que también quiero include, teniendo cuidado de no utilizar sus classs en dispositivos iOS 4.3.

Intenté usar la opción de target en mi Podfile de la siguiente manera:

 platform :ios, '4.3' pod 'NBUCore' target :MyApp do platform :ios, '5.0' pod 'PEPhotoCropEditor' end 

Lo cual crea el libPods.a habitual con NBUCore y un nuevo libPods-MyApp.a con PEPhotoCropEditor , ambos correctamente vinculados a MyApp.

El problema es que hay dos files .xcconfig , Pods.xcconfig y Pods-MyApp.xcconfig pero solo uno de ellos se activa con Cocoapods y, por lo tanto, el enlace falla porque cada uno tiene un OTHER_LDFLAGS incompleto.

He intentado con target :test, :exclusive => true y false .

Por supuesto que podría modificarlos manualmente, usar ambos o agregar $(inherited) . Pero entonces Cocoapods debería encargarse de eso. O tal vez mi syntax de Podfile está mal?

Edit: Resulta que también los "Copy Pods Resources" para Pods y Pods también necesitarían fusionarse.

No es posible con los Cocoapod actuales (presentó un problema aquí ).

La solución por ahora es separar Pods por destino de implementación:

 platform :ios, '4.3' pod 'NBUCore' target :MyApp do platform :ios, '5.0' pod 'PEPhotoCropEditor' end 

Luego "fusionar" los files .xcconfig.

Finalmente agregue los guiones de todos los resources a los "Copias de resources de pods":

 "${SRCROOT}/Pods/Pods-resources.sh" "${SRCROOT}/Pods/Pods-MyApp-resources.sh" 

No creo que sea posible hacer lo que quieras. Sin embargo, podría copyr el file Pod de PEPhotoCropEditor en su proyecto y cambiar s.ios.deployment_target = '5.0' a s.ios.deployment_target = '4.3' .

Luego, en tu Podfile , en lugar de

 pod 'PEPhotoCropEditor' 

hacer

 pod 'PEPhotoCropEditor', :path => "CustomPodspec.podspec"