libsignoncommon.h
1 /*
2  * This file is part of signon
3  *
4  * Copyright (C) 2009-2010 Nokia Corporation.
5  *
6  * Contact: Aurel Popirtac <ext-aurel.popirtac@nokia.com>
7  * Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
8  *
9  * This library is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU Lesser General Public License
11  * version 2.1 as published by the Free Software Foundation.
12  *
13  * This library is distributed in the hope that it will be useful, but
14  * WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with this library; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
21  * 02110-1301 USA
22  */
28 #ifndef LIBSIGNONCOMMON_H
29 #define LIBSIGNONCOMMON_H
30 
31 #ifdef LIBSIGNON_TRACE
32  #include <QDebug>
33 
34  #ifdef DEBUG_ENABLED
35  #ifdef TRACE
36  #undef TRACE
37  #endif
38 
39  #ifdef BLAME
40  #undef BLAME
41  #endif
42 
43  #define TRACE() qDebug() << __FILE__ << __LINE__ << __func__
44  #define BLAME() qCritical() << __FILE__ << __LINE__ << __func__
45  #else
46  #define TRACE() while (0) qDebug()
47  #define BLAME() while (0) qCritical()
48  #endif
49 #endif
50 
51 #ifdef SIGNON_EXPORT
52  #undef SIGNON_EXPORT
53 #endif
54 
55 #if __GNUC__ >= 4
56  #define SIGNON_EXPORT __attribute__ ((visibility("default")))
57 #endif
58 
59 #ifndef SIGNON_EXPORT
60  #define SIGNON_EXPORT
61 #endif
62 
63 /*
64  TODO - Add here a common data container for IdentityInfo,
65  dbus register it and use it as qt dbus type
66  for the signond <--> libsignon communication
67 */
68 
69 #endif // LIBSIGNONCOMMON_H