sofia-sip/su_config.h

Go to the documentation of this file.
00001 /*
00002  * This file is part of the Sofia-SIP package
00003  *
00004  * Copyright (C) 2005 Nokia Corporation.
00005  *
00006  * Contact: Pekka Pessi <pekka.pessi@nokia-email.address.hidden>
00007  *
00008  * This library is free software; you can redistribute it and/or
00009  * modify it under the terms of the GNU Lesser General Public License
00010  * as published by the Free Software Foundation; either version 2.1 of
00011  * the License, or (at your option) any later version.
00012  *
00013  * This library is distributed in the hope that it will be useful, but
00014  * WITHOUT ANY WARRANTY; without even the implied warranty of
00015  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00016  * Lesser General Public License for more details.
00017  *
00018  * You should have received a copy of the GNU Lesser General Public
00019  * License along with this library; if not, write to the Free Software
00020  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
00021  * 02110-1301 USA
00022  *
00023  */
00024 
00025 #ifndef SU_CONFIG_H
00026 
00027 #define SU_CONFIG_H
00028 
00039 #include <sofia-sip/su_configure.h>
00040 
00041 #if defined(__GNUC__)
00042 /* Special attributes for GNU C */
00043 #if __GNUC__ < 3 && (!defined(__GNUC_MINOR__) || __GNUC_MINOR__ < 96)
00044 #define __malloc__              /* avoid spurious warnigns */
00045 #endif
00046 #elif !defined(__attribute__)
00047 #  define __attribute__(x) 
00048 #endif
00049 
00050 /* C++ linkage needs to know that types and declarations are C, not C++.  */
00051 #if defined(__cplusplus)
00052 
00053 # define SOFIA_BEGIN_DECLS      extern "C" {
00054 
00055 # define SOFIA_END_DECLS        }
00056 #else
00057 # define SOFIA_BEGIN_DECLS
00058 # define SOFIA_END_DECLS
00059 #endif
00060 
00061 /* ---------------------------------------------------------------------- */
00062 /* Macros required by Win32 linkage */
00063 
00065 #define SOFIAPUBFUN
00066 
00067 #define SOFIAPUBVAR extern
00068 
00069 #define SOFIACALL
00070 
00071 /* Win32 linkage */
00072 
00073 /* Windows platform with MS/Borland/Cygwin/MinGW32 compiler */
00074 #if defined(_WIN32) && \
00075   (defined(_MSC_VER) || defined(__BORLANDC__) ||  \
00076    defined(__CYGWIN__) || defined(__MINGW32__))
00077   #undef SOFIACALL
00078   #define SOFIACALL __cdecl
00079 
00080   #if defined(LIBSOFIA_SIP_UA_STATIC)
00081   #else
00082     #undef SOFIAPUBFUN
00083     #undef SOFIAPUBVAR
00084     #if defined(IN_LIBSOFIA_SIP_UA)
00085       #define SOFIAPUBFUN __declspec(dllexport)
00086       #define SOFIAPUBVAR __declspec(dllexport)
00087     #else
00088       #define SOFIAPUBFUN __declspec(dllimport)
00089       #define SOFIAPUBVAR __declspec(dllimport) extern
00090     #endif
00091   #endif
00092 
00093   #if !defined _REENTRANT
00094     #define _REENTRANT
00095   #endif
00096 #endif
00097 
00098 #define BNF_DLL   SOFIAPUBFUN
00099 #define HTTP_DLL  SOFIAPUBFUN
00100 #define IPT_DLL   SOFIAPUBFUN
00101 #define AUTH_DLL  SOFIAPUBFUN
00102 #define MSG_DLL   SOFIAPUBFUN
00103 #define NEA_DLL   SOFIAPUBFUN
00104 #define NTA_DLL   SOFIAPUBFUN
00105 #define NTH_DLL   SOFIAPUBFUN
00106 #define SDP_DLL   SOFIAPUBFUN
00107 #define SIP_DLL   SOFIAPUBFUN
00108 #define SU_DLL    SOFIAPUBFUN
00109 #define TPORT_DLL SOFIAPUBFUN
00110 #define URL_DLL   SOFIAPUBFUN
00111 #define MSG_TEST_DLL SOFIAPUBFUN
00112 
00113 #endif /* SU_CONFIG_H */

Sofia-SIP 1.12.1 - Copyright (C) 2006 Nokia Corporation. All rights reserved. Licensed under the terms of the GNU Lesser General Public License.