Commit 99394b25 authored by Samuel E. Giddins's avatar Samuel E. Giddins

Merge pull request #3898 from CocoaPods/revert-module-support-for-static-libraries

Revert creation of module maps for static libraries
parents d19dd87b c17f8438
......@@ -13,6 +13,16 @@ To install release candidates run `[sudo] gem install cocoapods --pre`
[Russ Bishop](https://github.com/russbishop)
[#3893](https://github.com/CocoaPods/CocoaPods/issues/3893)
* Pods integrated as static libraries can no longer be imported as
modules, as that change had unexpected side-effects.
[Boris Bügling](https://github.com/neonichu)
[#3898](https://github.com/CocoaPods/CocoaPods/pull/3898)
[#3879](https://github.com/CocoaPods/CocoaPods/issues/3879)
[#3888](https://github.com/CocoaPods/CocoaPods/issues/3888)
[#3886](https://github.com/CocoaPods/CocoaPods/issues/3886)
[#3889](https://github.com/CocoaPods/CocoaPods/issues/3889)
[#3884](https://github.com/CocoaPods/CocoaPods/issues/3884)
## 0.38.1
......
......@@ -42,9 +42,8 @@ module Pod
# @return [String]
#
def generate
module_declaration_qualifier = target.requires_frameworks? ? 'framework ' : ''
result = <<-eos.strip_heredoc
#{module_declaration_qualifier}module #{target.product_module_name} {
framework module #{target.product_module_name} {
umbrella header "#{target.umbrella_header_path.basename}"
export *
......
......@@ -22,15 +22,13 @@ module Pod
create_xcconfig_file
if target.requires_frameworks?
create_info_plist_file
create_module_map do |generator|
generator.private_headers += target.file_accessors.flat_map(&:private_headers).map(&:basename)
end
create_umbrella_header do |generator|
generator.imports += target.file_accessors.flat_map(&:public_headers).map(&:basename)
end
end
create_module_map do |generator|
generator.private_headers += target.file_accessors.flat_map(&:private_headers).map(&:basename)
end
create_umbrella_header do |generator|
generator.imports += target.file_accessors.flat_map(&:public_headers).map(&:basename)
end
link_module_map
link_umbrella_header
create_prefix_header
create_dummy_source
end
......@@ -185,27 +183,6 @@ module Pod
end
end
# Links a module map to Public headers.
#
# @return [void]
#
def link_module_map
return if target.requires_frameworks? && target.should_build?
sandbox.public_headers.add_file(target.name, target.module_map_path, 'module.modulemap', target.platform)
end
# Links a an umbrella header to Public headers.
#
# @return [void]
#
def link_umbrella_header
return if custom_module_map
return if target.requires_frameworks? && target.should_build?
sandbox.public_headers.add_files(target.name, [target.umbrella_header_path], target.platform)
end
# Creates a prefix header file which imports `UIKit` or `Cocoa` according
# to the platform of the target. This file also include any prefix header
# content reported by the specification of the pods.
......@@ -303,12 +280,6 @@ module Pod
FileUtils.cp(custom_module_map, path)
add_file_to_support_group(path)
unless target.requires_frameworks?
contents = path.read
contents.gsub!(/^\s*framework\s+module/, 'module')
path.open('w') { |f| f.write(contents) }
end
native_target.build_configurations.each do |c|
relative_path = path.relative_path_from(sandbox.root)
c.build_settings['MODULEMAP_FILE'] = relative_path.to_s
......
Subproject commit dc259ab02f3c492504f164b82c29e846243e4b52
Subproject commit 26bb687a87734a7b431074d2aca8b1a8c2f62c8c
......@@ -9,9 +9,8 @@ module Pod
@gen = Generator::ModuleMap.new(@pod_target)
end
it 'writes the framework module map to the disk' do
it 'writes the module map to the disk' do
path = temporary_directory + 'BananaLib.modulemap'
@pod_target.stubs(:requires_frameworks? => true)
@gen.save_as(path)
path.read.should == <<-EOS.strip_heredoc
framework module BananaLib {
......@@ -23,23 +22,8 @@ module Pod
EOS
end
it 'writes the library module map to the disk' do
path = temporary_directory + 'BananaLib.modulemap'
@pod_target.stubs(:requires_frameworks? => false)
@gen.save_as(path)
path.read.should == <<-EOS.strip_heredoc
module BananaLib {
umbrella header "BananaLib-umbrella.h"
export *
module * { export * }
}
EOS
end
it 'correctly adds private headers' do
@gen.stubs(:private_headers).returns(['Private.h'])
@pod_target.stubs(:requires_frameworks? => true)
@gen.generate.should == <<-EOS.strip_heredoc
framework module BananaLib {
umbrella header "BananaLib-umbrella.h"
......
......@@ -103,7 +103,6 @@ module Pod
'Pods-BananaLib-Private.xcconfig',
'Pods-BananaLib-dummy.m',
'Pods-BananaLib-prefix.pch',
'Pods-BananaLib.modulemap',
'Pods-BananaLib.xcconfig',
]
end
......@@ -146,7 +145,6 @@ module Pod
'BananaLib-Private.xcconfig',
'BananaLib-dummy.m',
'BananaLib-prefix.pch',
'BananaLib.modulemap',
'BananaLib.xcconfig',
]
end
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment