10#ifndef LIBOPENMPT_CONFIG_H
11#define LIBOPENMPT_CONFIG_H
24#define LIBOPENMPT_CXX_API
25#undef LIBOPENMPT_CXX_API
37#define LIBOPENMPT_STREAM_CALLBACKS_BUFFER
50#define LIBOPENMPT_STREAM_CALLBACKS_FD
63#define LIBOPENMPT_STREAM_CALLBACKS_FILE
78#define LIBOPENMPT_STREAM_CALLBACKS_FILE_MINGW
93#define LIBOPENMPT_STREAM_CALLBACKS_FILE_MSVCRT
108#define LIBOPENMPT_STREAM_CALLBACKS_FILE_POSIX
123#define LIBOPENMPT_STREAM_CALLBACKS_FILE_POSIX_LFS64
125#if defined(__DOXYGEN__)
127#define LIBOPENMPT_API_HELPER_EXPORT
128#define LIBOPENMPT_API_HELPER_IMPORT
129#define LIBOPENMPT_API_HELPER_PUBLIC
130#define LIBOPENMPT_API_HELPER_LOCAL
132#elif defined(_MSC_VER)
134#define LIBOPENMPT_API_HELPER_EXPORT __declspec(dllexport)
135#define LIBOPENMPT_API_HELPER_IMPORT __declspec(dllimport)
136#define LIBOPENMPT_API_HELPER_PUBLIC
137#define LIBOPENMPT_API_HELPER_LOCAL
139#elif defined(__EMSCRIPTEN__)
141#define LIBOPENMPT_API_HELPER_EXPORT __attribute__((visibility("default"))) __attribute__((used))
142#define LIBOPENMPT_API_HELPER_IMPORT __attribute__((visibility("default"))) __attribute__((used))
143#define LIBOPENMPT_API_HELPER_PUBLIC __attribute__((visibility("default"))) __attribute__((used))
144#define LIBOPENMPT_API_HELPER_LOCAL __attribute__((visibility("hidden")))
146#elif (defined(__GNUC__) || defined(__clang__)) && defined(_WIN32)
148#define LIBOPENMPT_API_HELPER_EXPORT __declspec(dllexport)
149#define LIBOPENMPT_API_HELPER_IMPORT __declspec(dllimport)
150#define LIBOPENMPT_API_HELPER_PUBLIC __attribute__((visibility("default")))
151#define LIBOPENMPT_API_HELPER_LOCAL __attribute__((visibility("hidden")))
153#elif defined(__GNUC__) || defined(__clang__)
155#define LIBOPENMPT_API_HELPER_EXPORT __attribute__((visibility("default")))
156#define LIBOPENMPT_API_HELPER_IMPORT __attribute__((visibility("default")))
157#define LIBOPENMPT_API_HELPER_PUBLIC __attribute__((visibility("default")))
158#define LIBOPENMPT_API_HELPER_LOCAL __attribute__((visibility("hidden")))
162#define LIBOPENMPT_API_HELPER_EXPORT __declspec(dllexport)
163#define LIBOPENMPT_API_HELPER_IMPORT __declspec(dllimport)
164#define LIBOPENMPT_API_HELPER_PUBLIC
165#define LIBOPENMPT_API_HELPER_LOCAL
169#define LIBOPENMPT_API_HELPER_EXPORT
170#define LIBOPENMPT_API_HELPER_IMPORT
171#define LIBOPENMPT_API_HELPER_PUBLIC
172#define LIBOPENMPT_API_HELPER_LOCAL
176#if defined(LIBOPENMPT_BUILD_DLL)
177#define LIBOPENMPT_API LIBOPENMPT_API_HELPER_EXPORT
178#elif defined(LIBOPENMPT_USE_DLL)
179#define LIBOPENMPT_API LIBOPENMPT_API_HELPER_IMPORT
181#define LIBOPENMPT_API LIBOPENMPT_API_HELPER_PUBLIC
186#define LIBOPENMPT_CXX_API LIBOPENMPT_API
188#if defined(LIBOPENMPT_USE_DLL)
189#if defined(_MSC_VER) && !defined(_DLL)
190#error "C++ interface is disabled if libopenmpt is built as a DLL and the runtime is statically linked. This is not supported by microsoft and cannot possibly work. Ever."
191#undef LIBOPENMPT_CXX_API
192#define LIBOPENMPT_CXX_API LIBOPENMPT_API_HELPER_LOCAL
196#if defined(__EMSCRIPTEN__)
199#undef LIBOPENMPT_CXX_API
200#define LIBOPENMPT_CXX_API LIBOPENMPT_API_HELPER_LOCAL
212#if !defined(LIBOPENMPT_NO_DEPRECATE)
213#if defined(__clang__)
214#define LIBOPENMPT_DEPRECATED __attribute__((deprecated))
215#elif defined(__GNUC__)
216#define LIBOPENMPT_DEPRECATED __attribute__((deprecated))
217#elif defined(_MSC_VER)
218#define LIBOPENMPT_DEPRECATED __declspec(deprecated)
220#define LIBOPENMPT_DEPRECATED
223#define LIBOPENMPT_DEPRECATED
227#if !defined(LIBOPENMPT_NO_DEPRECATE)
229#define LIBOPENMPT_DEPRECATED_STRING( str ) ( LIBOPENMPT_DEPRECATED_STRING_CONSTANT ? ( str ) : ( str ) )
231#define LIBOPENMPT_DEPRECATED_STRING( str ) str
234#define LIBOPENMPT_DEPRECATED_STRING( str ) str
237#if defined(__STDC__) && (__STDC__ == 1)
238#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
239#define LIBOPENMPT_C_INLINE inline
241#define LIBOPENMPT_C_INLINE
244#define LIBOPENMPT_C_INLINE
252#if defined(LIBOPENMPT_ASSUME_CPLUSPLUS)
255#if !defined(LIBOPENMPT_NO_DEPRECATE)
256#define LIBOPENMPT_ATTR_DEPRECATED [[deprecated]]
258#define LIBOPENMPT_ATTR_DEPRECATED
#define LIBOPENMPT_DEPRECATED
Definition: libopenmpt_config.h:220
static const int LIBOPENMPT_DEPRECATED_STRING_CONSTANT
Definition: libopenmpt_config.h:228