Update with current status
[gnash.git] / libbase / dsodefs.h
blob7bc418227aba702205f40e1b3768b9d34d5f5069
1 //
2 // Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012
3 // Free Software Foundation, Inc
4 //
5 // This program is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation; either version 3 of the License, or
8 // (at your option) any later version.
9 //
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
14 //
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software
17 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20 #ifndef DSODEFS_H
21 #define DSODEFS_H
23 #ifdef HAVE_CONFIG_H
24 #include "gnashconfig.h"
25 #endif
27 #if defined(_MSC_VER) || defined(WIN32) || defined(_WIN32)
28 // #ifdef BUILDING_DLL
29 #ifdef DLL_EXPORT
30 #define DSOEXPORT __declspec(dllexport)
31 #else
32 // Temporarily commented because of VC++ compiler problems
33 #define DSOEXPORT // __declspec(dllimport)
34 #endif
36 #define DSOLOCAL
37 #elif defined(__OS2__)
38 #ifdef BUILDING_DLL
39 #define DSOEXPORT __declspec(dllexport)
40 #else
41 // Temporarily commented because of VC++ compiler problems
42 #define DSOEXPORT // __declspec(dllimport)
43 #endif
45 #define DSOLOCAL
47 #else
48 #ifdef HAVE_GNUC_VISIBILITY
49 #define DSOEXPORT __attribute__ ((visibility("default")))
50 #define DSOLOCAL __attribute__ ((visibility("hidden")))
51 #elif defined(__SUNPRO_C) && (__SUNPRO_C >= 0x550) /* Sun Studio >= 8 */
52 #define DSOEXPORT __global
53 #define DSOLOCAL __hidden
54 #else
55 #define DSOEXPORT
56 #define DSOLOCAL
57 #endif
58 #endif
60 #ifdef USE_TESTSUITE
61 # define DSOTEXPORT DSOEXPORT
62 #else
63 # define DSOTEXPORT
64 #endif
66 #endif // DSODEFS_H