blob: 5868ba1c4388e05a5103698ffafce375463e3c70 [file] [log] [blame] [edit]
module-name = 'wtf'
attributes = ['system']
default-module = 'Cpp'
# This header depends on surrounding preprocessor context.
textual-headers = ['spi/mac/MetadataSPI.h']
# Nearly all of WTF depends upon C++ and thus goes in this submodule.
[module.Cpp]
requirements = ['cplusplus20']
# The following WTF headers can be used in C contexts as well as C++
# so we put them in separate submodules.
[module.Assertions]
headers = ['Assertions.h']
[module.Compiler]
headers = ['Compiler.h']
[module.ExportMacros]
headers = ['ExportMacros.h']
[module.IOSurfaceSPI]
headers = ['spi/cocoa/IOSurfaceSPI.h']
[module.SwiftBridging]
headers = ['SwiftBridging.h']
# Users of these headers do not reliably Include What They Use,
# so for now make them into one big module
[module.Platform]
headers = [
'Platform.h', 'PlatformCallingConventions.h', 'PlatformCPU.h',
'PlatformEnable.h', 'PlatformEnableCocoa.h', 'PlatformHave.h',
'PlatformLegacy.h', 'PlatformOS.h', 'PlatformUse.h']
# AutodrainedPool must never be parsed in an objective-C
# context.
[module.AutodrainedPool]
requirements = ['cplusplus20', '!objc']
headers = ['AutodrainedPool.h']
# Works only on some platforms.
[module.MetadataSPI]
requirements = ['cplusplus20']
headers = ['spi/mac/MetadataSPI.h']
# Require objc.
[module.NSLocaleSPI]
requirements = ['objc']
headers = ['spi/cocoa/NSLocaleSPI.h']
[module.NSObjCRuntimeSPI]
requirements = ['objc']
headers = ['spi/cocoa/NSObjCRuntimeSPI.h']
# Swiftc cannot currently parse various bits of WTF so we have to
# exile them outside the main WTF module.
# Swift cannot understand a std::optional in here, rdar://152718041.
[module.TextBreakIterator]
headers = ['text/TextBreakIterator.h']
requirements = ['cplusplus20']
# Due to conflict between wtf::Task and Swift.Task.
# FIXME: resolve this using a typealias in Foundation+Extras.swift,
# as we have done for other similarly conflicting types, but
# which for some reason doesn't seem to work for Task.
[module.CoroutineUtilities]
headers = ['CoroutineUtilities.h']
requirements = ['cplusplus20']