summaryrefslogtreecommitdiff
path: root/libs/zita-resampler/zita-resampler/zresampler_visibility.h
blob: 6ebfee9a9e5230375fba23bdfa1f8c9a96c8d08f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#ifndef __libzreampler_visibility_h__
#define __libzreampler_visibility_h__

#if defined(COMPILER_MSVC)
  #define LIBZRESAMPLER_DLL_IMPORT __declspec(dllimport)
  #define LIBZRESAMPLER_DLL_EXPORT __declspec(dllexport)
  #define LIBZRESAMPLER_DLL_LOCAL
#else
  #define LIBZRESAMPLER_DLL_IMPORT __attribute__ ((visibility ("default")))
  #define LIBZRESAMPLER_DLL_EXPORT __attribute__ ((visibility ("default")))
  #define LIBZRESAMPLER_DLL_LOCAL  __attribute__ ((visibility ("hidden")))
#endif

#ifdef LIBZRESAMPLER_STATIC // libzita-reampler is a DLL
  #define LIBZRESAMPLER_API
  #define LIBZRESAMPLER_LOCAL
  #define LIBZRESAMPLER_TEMPLATE_API
  #define LIBZRESAMPLER_TEMPLATE_MEMBER_API
#else
  #ifdef LIBZRESAMPLER_DLL_EXPORTS // defined if we are building the libzita-resampler DLL (instead of using it)
    #define LIBZRESAMPLER_API LIBZRESAMPLER_DLL_EXPORT
    #define LIBZRESAMPLER_TEMPLATE_API LIBZRESAMPLER_TEMPLATE_DLL_EXPORT
    #define LIBZRESAMPLER_TEMPLATE_MEMBER_API LIBZRESAMPLER_TEMPLATE_MEMBER_DLL_EXPORT
  #else
    #define LIBZRESAMPLER_API LIBZRESAMPLER_DLL_IMPORT
    #define LIBZRESAMPLER_TEMPLATE_API LIBZRESAMPLER_TEMPLATE_DLL_IMPORT
    #define LIBZRESAMPLER_TEMPLATE_MEMBER_API LIBZRESAMPLER_TEMPLATE_MEMBER_DLL_IMPORT
  #endif
  #define LIBZRESAMPLER_LOCAL LIBZRESAMPLER_DLL_LOCAL
#endif

#endif