1 /*---------------------------------------------------------------------------* 2 File: middleware.h 3 4 Copyright (C) Nintendo. All rights reserved. 5 6 These coded instructions, statements, and computer programs contain 7 proprietary information of Nintendo of America Inc. and/or Nintendo 8 Company Ltd., and are protected by Federal copyright law. They may 9 not be disclosed to third parties or copied or duplicated in any form, 10 in whole or in part, without the prior written consent of Nintendo. 11 12 $Rev: 47706 $ 13 *---------------------------------------------------------------------------*/ 14 15 #ifndef NN_MIDDLEWARE_H_ 16 #define NN_MIDDLEWARE_H_ 17 18 #if 0 19 #include <nn/config.h> 20 #endif 21 #include <nn/util/detail/util_Symbol.h> 22 23 #ifndef NN_DEFINE_MODULE_ID_STRING 24 #define NN_DEFINE_MODULE_ID_STRING(name, value) \ 25 static const char name[] __attribute__((section(".module_id"))) = value 26 #endif 27 28 #define NN_MAKE_MIDDLEWARE_STRING(vender, module) \ 29 "[SDK+" vender ":" module "]" 30 31 #define NN_DEFINE_MIDDLEWARE(name, vender, module) \ 32 NN_DEFINE_MODULE_ID_STRING(name, NN_MAKE_MIDDLEWARE_STRING(vender, module)) 33 34 #define NN_USING_MIDDLEWARE(name) \ 35 NN_UTIL_REFER_SYMBOL(name) 36 37 38 #endif /* NN_MIDDLEWARE_H_ */ 39