1*a171d248SMichael Spencerframework module DependsOnModule { 2*a171d248SMichael Spencer umbrella header "DependsOnModule.h" 3*a171d248SMichael Spencer header "other.h" 4*a171d248SMichael Spencer module * { 5*a171d248SMichael Spencer export * 6*a171d248SMichael Spencer } 7*a171d248SMichael Spencer explicit module CXX { 8*a171d248SMichael Spencer requires cplusplus 9*a171d248SMichael Spencer header "cxx_other.h" 10*a171d248SMichael Spencer } 11*a171d248SMichael Spencer explicit module NotCXX { 12*a171d248SMichael Spencer requires !cplusplus 13*a171d248SMichael Spencer header "not_cxx.h" 14*a171d248SMichael Spencer } 15*a171d248SMichael Spencer explicit module NotObjC { 16*a171d248SMichael Spencer requires !objc 17*a171d248SMichael Spencer header "not_objc.h" 18*a171d248SMichael Spencer } 19*a171d248SMichael Spencer explicit module CustomReq1 { 20*a171d248SMichael Spencer requires custom_req1 21*a171d248SMichael Spencer } 22*a171d248SMichael Spencer explicit module CustomReq2 { 23*a171d248SMichael Spencer requires custom_req2 24*a171d248SMichael Spencer } 25*a171d248SMichael Spencer explicit module Coroutines { 26*a171d248SMichael Spencer requires coroutines 27*a171d248SMichael Spencer header "coroutines.h" 28*a171d248SMichael Spencer } 29*a171d248SMichael Spencer explicit module NotCoroutines { 30*a171d248SMichael Spencer requires !coroutines 31*a171d248SMichael Spencer header "not_coroutines.h" 32*a171d248SMichael Spencer } 33*a171d248SMichael Spencer explicit framework module SubFramework { 34*a171d248SMichael Spencer umbrella header "SubFramework.h" 35*a171d248SMichael Spencer 36*a171d248SMichael Spencer module * { 37*a171d248SMichael Spencer export * 38*a171d248SMichael Spencer } 39*a171d248SMichael Spencer } 40*a171d248SMichael Spencer explicit module CXX11 { 41*a171d248SMichael Spencer requires cplusplus11 42*a171d248SMichael Spencer } 43*a171d248SMichael Spencer explicit module CXX14 { 44*a171d248SMichael Spencer requires cplusplus14 45*a171d248SMichael Spencer } 46*a171d248SMichael Spencer explicit module CXX17 { 47*a171d248SMichael Spencer requires cplusplus17 48*a171d248SMichael Spencer } 49*a171d248SMichael Spencer explicit module CXX20 { 50*a171d248SMichael Spencer requires cplusplus20 51*a171d248SMichael Spencer } 52*a171d248SMichael Spencer explicit module CXX23 { 53*a171d248SMichael Spencer requires cplusplus23 54*a171d248SMichael Spencer } 55*a171d248SMichael Spencer explicit module CXX26 { 56*a171d248SMichael Spencer requires cplusplus26 57*a171d248SMichael Spencer } 58*a171d248SMichael Spencer explicit module C99 { 59*a171d248SMichael Spencer requires c99 60*a171d248SMichael Spencer } 61*a171d248SMichael Spencer explicit module C11 { 62*a171d248SMichael Spencer requires c11 63*a171d248SMichael Spencer } 64*a171d248SMichael Spencer explicit module C17 { 65*a171d248SMichael Spencer requires c17 66*a171d248SMichael Spencer } 67*a171d248SMichael Spencer explicit module C23 { 68*a171d248SMichael Spencer requires c23 69*a171d248SMichael Spencer } 70*a171d248SMichael Spencer} 71