// Copyright 2020 Siemens Digital Industries Software // ================================================== // Copyright 2011. // Siemens Product Lifecycle Management Software Inc. // All Rights Reserved. // ================================================== // Copyright 2020 Siemens Digital Industries Software /** @file Preprocessor macros for specifying export symbols in mld library. */ #include #ifdef EXPORTLIBRARY #define EXPORTLIBRARY something else #error ExportLibrary was already defined #endif #define EXPORTLIBRARY libmld #if !defined(IPLIB) # error IPLIB is not defined #endif /* Handwritten code should use MLD_API, not MLDEXPORT */ #define MLD_API MLDEXPORT /* Support MLDEXPORT for autogenerated schema/pif code only */ #if IPLIB==libmld # if defined(__lint) # define MLDEXPORT __export(mld) # define MLDGLOBAL extern __global(mld) # define MLDPRIVATE extern __private(mld) # elif defined(_WIN32) # define MLDEXPORT __declspec(dllexport) # define MLDGLOBAL extern __declspec(dllexport) # define MLDPRIVATE extern # else # define MLDEXPORT # define MLDGLOBAL extern # define MLDPRIVATE extern # endif #else # if defined(__lint) # define MLDEXPORT __export(mld) # define MLDGLOBAL extern __global(mld) # elif defined(_WIN32) && !defined(WNT_STATIC_LINK) # define MLDEXPORT __declspec(dllimport) # define MLDGLOBAL extern __declspec(dllimport) # else # define MLDEXPORT # define MLDGLOBAL extern # endif #endif