librevenge-api.h
Go to the documentation of this file.
00001 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
00002 /* librevenge
00003  * Version: MPL 2.0 / LGPLv2.1+
00004  *
00005  * This Source Code Form is subject to the terms of the Mozilla Public
00006  * License, v. 2.0. If a copy of the MPL was not distributed with this
00007  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
00008  *
00009  * Major Contributor(s):
00010  * Copyright (C) 2002 William Lachance (wrlach@gmail.com)
00011  * Copyright (C) 2002 Marc Maurer (uwog@uwog.net)
00012  *
00013  * For minor contributions see the git repository.
00014  *
00015  * Alternatively, the contents of this file may be used under the terms
00016  * of the GNU Lesser General Public License Version 2.1 or later
00017  * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
00018  * applicable instead of those above.
00019  */
00020 
00021 #ifndef INCLUDED_LIBREVENGE_LIBREVENGE_API_H
00022 #define INCLUDED_LIBREVENGE_LIBREVENGE_API_H
00023 
00024 #ifdef DLL_EXPORT
00025 #ifdef LIBREVENGE_BUILD
00026 #define REVENGE_API __declspec(dllexport)
00027 #else
00028 #define REVENGE_API __declspec(dllimport)
00029 #endif
00030 #else // !DLL_EXPORT
00031 #ifdef LIBREVENGE_VISIBILITY
00032 #define REVENGE_API __attribute__((visibility("default")))
00033 #else
00034 #define REVENGE_API
00035 #endif
00036 #endif
00037 
00038 #ifdef __GNUC__
00039 #define REVENGE_ATTRIBUTE_PRINTF(fmt, arg) __attribute__((format(printf, fmt, arg)))
00040 #else
00041 #define REVENGE_ATTRIBUTE_PRINTF(fmt, arg)
00042 #endif
00043 
00044 #endif /* INCLUDED_LIBREVENGE_LIBREVENGE_API_H */
00045 
00046 /* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */