You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

57 lines
1.6 KiB

// 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 <common/library_indicators.h>
#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