home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 April / PCWorld_2000-04_cd.bin / Software / Servis / Devc / _SETUP.4 / Group3 / _mingw.h next >
C/C++ Source or Header  |  1999-11-07  |  2KB  |  69 lines

  1. /*
  2.  * _mingw.h
  3.  *
  4.  * Mingw specific macros included by ALL include files. 
  5.  *
  6.  * This file is part of the Mingw32 package.
  7.  *
  8.  * Contributors:
  9.  *  Created by Mumit Khan  <khan@xraylith.wisc.edu>
  10.  *
  11.  *  THIS SOFTWARE IS NOT COPYRIGHTED
  12.  *
  13.  *  This source code is offered for use in the public domain. You may
  14.  *  use, modify or distribute it freely.
  15.  *
  16.  *  This code is distributed in the hope that it will be useful but
  17.  *  WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
  18.  *  DISCLAMED. This includes but is not limited to warranties of
  19.  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  20.  *
  21.  */
  22.  
  23. #ifndef __MINGW_H
  24. #define __MINGW_H
  25.  
  26. /* These are defined by the user (or the compiler)
  27.    to specify how identifiers are imported from a DLL.
  28.  
  29.    __DECLSPEC_SUPPORTED    Defined if dllimport attribute is supported.
  30.    __MINGW_IMPORT          The attribute definition to specify imported
  31.                            variables/functions. 
  32.    __MINGW32_VERSION       Runtime version.
  33.    __MINGW32_MAJOR_VERSION Runtime major version.
  34.    __MINGW32_MINOR_VERSION Runtime minor version.
  35.    __MINGW32_BUILD_DATE    Runtime build date.
  36.    
  37.    Other macros:
  38.  
  39.    __int64                 define to be long long. Using a typedef can
  40.                            tweak bugs in the C++ parser.
  41.   
  42.    All headers should include this first, and then use __DECLSPEC_SUPPORTED
  43.    to choose between the old ``__imp__name'' style or __MINGW_IMPORT
  44.    style declarations.  */
  45.  
  46. #ifndef __GNUC__
  47. # define __MINGW_IMPORT  __declspec(dllimport)
  48. # define __DECLSPEC_SUPPORTED
  49. #else /* __GNUC__ */
  50. # ifdef __declspec
  51.    /* note the extern at the end. This is needed to work around GCC's
  52.       limitations in handling dllimport attribute.  */
  53. #  define __MINGW_IMPORT __attribute__((dllimport)) extern
  54. #  define __DECLSPEC_SUPPORTED
  55. # else
  56. #  undef __DECLSPEC_SUPPORTED
  57. #  undef __MINGW_IMPORT
  58. # endif 
  59. # undef __int64
  60. # define __int64 long long
  61. #endif /* __GNUC__ */
  62.  
  63. #define __MINGW32_VERSION 0.3
  64. #define __MINGW32_MAJOR_VERSION 0
  65. #define __MINGW32_MINOR_VERSION 3
  66.  
  67. #endif /* __MINGW_H */
  68.  
  69.