(root)/
gettext-0.22.4/
libtextstyle/
lib/
libxml/
xmlexports.in.h
       1  /* libxml2 - Library for parsing XML documents
       2   * Copyright (C) 2006-2019 Free Software Foundation, Inc.
       3   *
       4   * This file is not part of the GNU gettext program, but is used with
       5   * GNU gettext.
       6   *
       7   * The original copyright notice is as follows:
       8   */
       9  
      10  /*
      11   * Copyright (C) 1998-2012 Daniel Veillard.  All Rights Reserved.
      12   *
      13   * Permission is hereby granted, free of charge, to any person obtaining a copy
      14   * of this software and associated documentation files (the "Software"), to deal
      15   * in the Software without restriction, including without limitation the rights
      16   * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
      17   * copies of the Software, and to permit persons to whom the Software is fur-
      18   * nished to do so, subject to the following conditions:
      19   *
      20   * The above copyright notice and this permission notice shall be included in
      21   * all copies or substantial portions of the Software.
      22   *
      23   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
      24   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FIT-
      25   * NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
      26   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
      27   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
      28   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
      29   * THE SOFTWARE.
      30   *
      31   * Author: Igor Zlatovic <igor@zlatkovic.com>
      32   */
      33  
      34  /*
      35   * Summary: macros for marking symbols as exportable/importable.
      36   * Description: macros for marking symbols as exportable/importable.
      37   */
      38  
      39  #ifndef __XML_EXPORTS_H__
      40  #define __XML_EXPORTS_H__
      41  
      42  /**
      43   * XMLPUBFUN, XMLPUBVAR, XMLCALL
      44   *
      45   * Macros which declare an exportable function, an exportable variable and
      46   * the calling convention used for functions.
      47   *
      48   * Please use an extra block for every platform/compiler combination when
      49   * modifying this, rather than overlong #ifdef lines. This helps
      50   * readability as well as the fact that different compilers on the same
      51   * platform might need different definitions.
      52   */
      53  
      54  /**
      55   * XMLPUBFUN:
      56   *
      57   * Macros which declare an exportable function
      58   */
      59  #define XMLPUBFUN
      60  /**
      61   * XMLPUBVAR:
      62   *
      63   * Macros which declare an exportable variable
      64   */
      65  #define XMLPUBVAR extern
      66  /**
      67   * XMLCALL:
      68   *
      69   * Macros which declare the called convention for exported functions
      70   */
      71  #define XMLCALL
      72  /**
      73   * XMLCDECL:
      74   *
      75   * Macro which declares the calling convention for exported functions that
      76   * use '...'.
      77   */
      78  #define XMLCDECL
      79  
      80  /** DOC_DISABLE */
      81  
      82  /* Windows platform with MS compiler */
      83  #if defined(_WIN32) && defined(_MSC_VER)
      84    #undef XMLPUBFUN
      85    #undef XMLPUBVAR
      86    #undef XMLCALL
      87    #undef XMLCDECL
      88    #if defined(IN_LIBXML) && !defined(LIBXML_STATIC)
      89      #define XMLPUBFUN __declspec(dllexport)
      90      #define XMLPUBVAR __declspec(dllexport)
      91    #else
      92      #define XMLPUBFUN
      93      #if !defined(LIBXML_STATIC)
      94        #define XMLPUBVAR __declspec(dllimport) extern
      95      #else
      96        #define XMLPUBVAR extern
      97      #endif
      98    #endif
      99    #if defined(LIBXML_FASTCALL)
     100      #define XMLCALL __fastcall
     101    #else
     102      #define XMLCALL __cdecl
     103    #endif
     104    #define XMLCDECL __cdecl
     105    #if !defined _REENTRANT
     106      #define _REENTRANT
     107    #endif
     108  #endif
     109  
     110  /* Windows platform with Borland compiler */
     111  #if defined(_WIN32) && defined(__BORLANDC__)
     112    #undef XMLPUBFUN
     113    #undef XMLPUBVAR
     114    #undef XMLCALL
     115    #undef XMLCDECL
     116    #if defined(IN_LIBXML) && !defined(LIBXML_STATIC)
     117      #define XMLPUBFUN __declspec(dllexport)
     118      #define XMLPUBVAR __declspec(dllexport) extern
     119    #else
     120      #define XMLPUBFUN
     121      #if !defined(LIBXML_STATIC)
     122        #define XMLPUBVAR __declspec(dllimport) extern
     123      #else
     124        #define XMLPUBVAR extern
     125      #endif
     126    #endif
     127    #define XMLCALL __cdecl
     128    #define XMLCDECL __cdecl
     129    #if !defined _REENTRANT
     130      #define _REENTRANT
     131    #endif
     132  #endif
     133  
     134  /* Windows platform with GNU compiler (Mingw) */
     135  #if defined(_WIN32) && defined(__MINGW32__)
     136    #undef XMLPUBFUN
     137    #undef XMLPUBVAR
     138    #undef XMLCALL
     139    #undef XMLCDECL
     140    /*
     141     * if defined(IN_LIBXML) this raises problems on mingw with msys
     142     * _imp__xmlFree listed as missing. Try to workaround the problem
     143     * by also making that declaration when compiling client code.
     144     */
     145    #if defined(IN_LIBXML) && !defined(LIBXML_STATIC)
     146      #define XMLPUBFUN __declspec(dllexport)
     147      #define XMLPUBVAR __declspec(dllexport) extern
     148    #else
     149      #define XMLPUBFUN
     150      #if !defined(LIBXML_STATIC)
     151        #define XMLPUBVAR __declspec(dllimport) extern
     152      #else
     153        #define XMLPUBVAR extern
     154      #endif
     155    #endif
     156    #define XMLCALL __cdecl
     157    #define XMLCDECL __cdecl
     158    #if !defined _REENTRANT
     159      #define _REENTRANT
     160    #endif
     161  #endif
     162  
     163  /* Cygwin platform (does not define _WIN32), GNU compiler */
     164  #if defined(__CYGWIN__)
     165    #undef XMLPUBFUN
     166    #undef XMLPUBVAR
     167    #undef XMLCALL
     168    #undef XMLCDECL
     169    #if defined(IN_LIBXML) && !defined(LIBXML_STATIC)
     170      #define XMLPUBFUN __declspec(dllexport)
     171      #define XMLPUBVAR __declspec(dllexport)
     172    #else
     173      #define XMLPUBFUN
     174      #if !defined(LIBXML_STATIC)
     175        #define XMLPUBVAR __declspec(dllimport) extern
     176      #else
     177        #define XMLPUBVAR extern
     178      #endif
     179    #endif
     180    #define XMLCALL __cdecl
     181    #define XMLCDECL __cdecl
     182  #endif
     183  
     184  /* Compatibility */
     185  #if !defined(LIBXML_DLL_IMPORT)
     186  #define LIBXML_DLL_IMPORT XMLPUBVAR
     187  #endif
     188  
     189  #endif /* __XML_EXPORTS_H__ */
     190  
     191