1755b2055SDouglas Gregorframework module DependsOnModule { 2322f633cSDouglas Gregor umbrella header "DependsOnModule.h" 3755b2055SDouglas Gregor header "other.h" 473441091SDouglas Gregor module * { 573441091SDouglas Gregor export * 673441091SDouglas Gregor } 71fb5c3a6SDouglas Gregor explicit module CXX { 81fb5c3a6SDouglas Gregor requires cplusplus 91fb5c3a6SDouglas Gregor header "cxx_other.h" 101fb5c3a6SDouglas Gregor } 11a3feee2aSRichard Smith explicit module NotCXX { 12a3feee2aSRichard Smith requires !cplusplus 13a3feee2aSRichard Smith header "not_cxx.h" 14a3feee2aSRichard Smith } 15a3feee2aSRichard Smith explicit module NotObjC { 16a3feee2aSRichard Smith requires !objc 17a3feee2aSRichard Smith header "not_objc.h" 18a3feee2aSRichard Smith } 19532d2104SBen Langmuir explicit module CustomReq1 { 20532d2104SBen Langmuir requires custom_req1 21532d2104SBen Langmuir } 22532d2104SBen Langmuir explicit module CustomReq2 { 23532d2104SBen Langmuir requires custom_req2 24532d2104SBen Langmuir } 25e38cea02SEric Fiselier explicit module Coroutines { 26e38cea02SEric Fiselier requires coroutines 27e38cea02SEric Fiselier header "coroutines.h" 28e38cea02SEric Fiselier } 29e38cea02SEric Fiselier explicit module NotCoroutines { 30e38cea02SEric Fiselier requires !coroutines 31e38cea02SEric Fiselier header "not_coroutines.h" 32e38cea02SEric Fiselier } 33f2161a70SDouglas Gregor explicit framework module SubFramework { 34322f633cSDouglas Gregor umbrella header "SubFramework.h" 35dd005f69SDouglas Gregor 36dd005f69SDouglas Gregor module * { 37dd005f69SDouglas Gregor export * 38dd005f69SDouglas Gregor } 39f2161a70SDouglas Gregor } 40*6d9cf8aaSBruno Cardoso Lopes explicit module CXX11 { 41*6d9cf8aaSBruno Cardoso Lopes requires cplusplus11 42*6d9cf8aaSBruno Cardoso Lopes } 43*6d9cf8aaSBruno Cardoso Lopes explicit module CXX14 { 44*6d9cf8aaSBruno Cardoso Lopes requires cplusplus14 45*6d9cf8aaSBruno Cardoso Lopes } 46*6d9cf8aaSBruno Cardoso Lopes explicit module CXX17 { 47*6d9cf8aaSBruno Cardoso Lopes requires cplusplus17 48*6d9cf8aaSBruno Cardoso Lopes } 49*6d9cf8aaSBruno Cardoso Lopes explicit module C99 { 50*6d9cf8aaSBruno Cardoso Lopes requires c99 51*6d9cf8aaSBruno Cardoso Lopes } 52*6d9cf8aaSBruno Cardoso Lopes explicit module C11 { 53*6d9cf8aaSBruno Cardoso Lopes requires c11 54*6d9cf8aaSBruno Cardoso Lopes } 55*6d9cf8aaSBruno Cardoso Lopes explicit module C17 { 56*6d9cf8aaSBruno Cardoso Lopes requires c17 57*6d9cf8aaSBruno Cardoso Lopes } 58755b2055SDouglas Gregor} 59