TIVI-1924: Initial commit of IVI settings daemon.
[profile/ivi/settings-daemon.git] / plugins / connman / connman_api.hpp
1 /**
2  * @file connman_api.hpp
3  *
4  * @brief @c Connman-based settings plugin export macros.
5  *
6  * The IVI connman settings plugin uses these macros to
7  * export the settings plugin API from the plugin as needed.
8  *
9  * @author Ossama Othman @<ossama.othman@@intel.com@>
10  *
11  * @copyright @par
12  * Copyright 2013 Intel Corporation All Rights Reserved.
13  * @par
14  * This library is free software; you can redistribute it and/or
15  * modify it under the terms of the GNU Lesser General Public
16  * License as published by the Free Software Foundation;
17  * version 2.1 of the License.
18  * @par
19  * This library is distributed in the hope that it will be useful,
20  * but WITHOUT ANY WARRANTY; without even the implied warranty of
21  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
22  * Lesser General Public License for more details.
23  * @par
24  * You should have received a copy of the GNU Lesser General Public
25  * License along with this library; if not, write to the Free Software
26  * Foundation, Inc., 51 Franklin Street, Fifth Floor,
27  * Boston, MA  02110-1301  USA
28  */
29
30
31 #ifndef IVI_SETTINGS_CONNMAN_API_HPP
32 #define IVI_SETTINGS_CONNMAN_API_HPP
33
34 #  if defined _WIN32 || defined __CYGWIN__
35 #    ifdef IVI_SETTINGS_CONNMAN_BUILDING_DLL
36 #      ifdef __GNUC__
37 #        define IVI_SETTINGS_CONNMAN_API __attribute__ ((dllexport))
38 #      else
39 #        define IVI_SETTINGS_CONNMAN_API __declspec(dllexport)
40 #      endif
41 #    else
42 #      ifdef __GNUC__
43 #        define IVI_SETTINGS_CONNMAN_API __attribute__ ((dllimport))
44 #      else
45 #        define IVI_SETTINGS_CONNMAN_API __declspec(dllimport)
46 #      endif
47 #    endif
48 #    define IVI_SETTINGS_CONNMAN_LOCAL
49 #  else
50 #    if __GNUC__ >= 4
51 #      define IVI_SETTINGS_CONNMAN_API __attribute__ ((visibility ("default")))
52 #      define IVI_SETTINGS_CONNMAN_LOCAL  __attribute__ ((visibility ("hidden")))
53 #    else
54 #      define IVI_SETTINGS_CONNMAN_API
55 #      define IVI_SETTINGS_CONNMAN_LOCAL
56 #    endif
57 #  endif
58
59 #endif  /* IVI_SETTINGS_CONNMAN_API_HPP */
60
61
62 // Local Variables:
63 // mode:c++
64 // c-basic-offset:2
65 // indent-tabs-mode: nil
66 // End: