xed-common-hdrs.h

Go to the documentation of this file.
00001 /*BEGIN_LEGAL 
00002 Intel Open Source License 
00003 
00004 Copyright (c) 2002-2015 Intel Corporation. All rights reserved.
00005  
00006 Redistribution and use in source and binary forms, with or without
00007 modification, are permitted provided that the following conditions are
00008 met:
00009 
00010 Redistributions of source code must retain the above copyright notice,
00011 this list of conditions and the following disclaimer.  Redistributions
00012 in binary form must reproduce the above copyright notice, this list of
00013 conditions and the following disclaimer in the documentation and/or
00014 other materials provided with the distribution.  Neither the name of
00015 the Intel Corporation nor the names of its contributors may be used to
00016 endorse or promote products derived from this software without
00017 specific prior written permission.
00018  
00019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
00020 ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
00021 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
00022 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INTEL OR
00023 ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
00024 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
00025 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
00026 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
00027 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
00028 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
00029 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00030 END_LEGAL */
00033 
00034 
00035 
00036 #ifndef _XED_COMMON_HDRS_H_
00037 # define _XED_COMMON_HDRS_H_
00038 
00039 
00040 
00041 #if defined(__FreeBSD__)
00042 # define XED_BSD
00043 #endif
00044 #if defined(__linux__)
00045 # define XED_LINUX
00046 #endif
00047 #if defined(_MSC_VER)
00048 # define XED_WINDOWS
00049 #endif
00050 #if defined(__APPLE__)
00051 # define XED_MAC
00052 #endif
00053 
00054 
00055 #if defined(XED_DLL)
00056 //  __declspec(dllexport) works with GNU GCC or MS compilers, but not ICC
00057 //  on linux
00058 
00059 #  if defined(XED_WINDOWS)
00060 #     define XED_DLL_EXPORT __declspec(dllexport)
00061 #     define XED_DLL_IMPORT __declspec(dllimport)
00062 #  elif defined(XED_LINUX)  || defined(XED_BSD) || defined(XED_MAC)
00063 #     define XED_DLL_EXPORT __attribute__((visibility("default")))
00064 #     define XED_DLL_IMPORT
00065 #  else
00066 #     define XED_DLL_EXPORT
00067 #     define XED_DLL_IMPORT
00068 #  endif
00069     
00070 #  if defined(XED_BUILD)
00071     /* when building XED, we export symbols */
00072 #    define XED_DLL_GLOBAL XED_DLL_EXPORT
00073 #  else
00074     /* when building XED clients, we import symbols */
00075 #    define XED_DLL_GLOBAL XED_DLL_IMPORT
00076 #  endif
00077 #else
00078 # define XED_DLL_EXPORT 
00079 # define XED_DLL_IMPORT
00080 # define XED_DLL_GLOBAL
00081 #endif
00082     
00083 
00084 #if defined(XED_OMIT_ENCODER)
00085      /* do not emit an encoder */
00086 #else
00087 # define XED_ENCODER
00088 #endif
00089 
00090 #if defined(XED_OMIT_DECODER)
00091      /* do not emit a decoder */
00092 #else
00093 # define XED_DECODER
00094 #endif
00095 
00096 #endif
00097 

Generated on Wed Jan 21 02:14:35 2015 for XED by  doxygen 1.4.6