libtranscript
|
00001 /* Copyright (C) 2011 G.P. Halkes 00002 This program is free software: you can redistribute it and/or modify 00003 it under the terms of the GNU General Public License version 3, as 00004 published by the Free Software Foundation. 00005 00006 This program is distributed in the hope that it will be useful, 00007 but WITHOUT ANY WARRANTY; without even the implied warranty of 00008 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00009 GNU General Public License for more details. 00010 00011 You should have received a copy of the GNU General Public License 00012 along with this program. If not, see <http://www.gnu.org/licenses/>. 00013 */ 00014 #ifndef TRANSCRIPT_API_H 00015 #define TRANSCRIPT_API_H 00016 00017 #if defined(_WIN32) || defined(__CYGWIN__) 00018 #define TRANSCRIPT_EXPORT __declspec(dllexport) 00019 #define TRANSCRIPT_IMPORT __declspec(dllimport) 00020 #define TRANSCRIPT_LOCAL 00021 #else 00022 #if __GNUC__ >= 4 || defined(__clang__) 00023 #define TRANSCRIPT_EXPORT __attribute__((visibility("default"))) 00024 #define TRANSCRIPT_IMPORT __attribute__((visibility("default"))) 00025 #define TRANSCRIPT_LOCAL __attribute__((visibility("hidden"))) 00026 #else 00027 #define TRANSCRIPT_EXPORT 00028 #define TRANSCRIPT_IMPORT 00029 #define TRANSCRIPT_LOCAL 00030 #endif 00031 #endif 00032 00033 #ifdef TRANSCRIPT_BUILD_DSO 00034 #define TRANSCRIPT_API TRANSCRIPT_EXPORT 00035 #else 00036 #define TRANSCRIPT_API TRANSCRIPT_IMPORT 00037 #endif 00038 00039 #endif