home *** CD-ROM | disk | FTP | other *** search
/ OpenStep (Enterprise) / OpenStepENTCD.toast / OEDEV / EODEV.Z / EODefines.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-09-11  |  1.9 KB  |  95 lines

  1. // EODefines.h
  2. // Copyright (c) 1996, NeXT Software, Inc. All rights reserved. 
  3. //
  4. //
  5. //  Platform specific defs for externs
  6. //
  7.  
  8. #ifndef _EOCONTROLDEFINES_H
  9. #define _EOCONTROLDEFINES_H
  10.  
  11. //
  12. // For MACH
  13. //
  14.  
  15. #if defined(__MACH__)
  16.  
  17. #ifdef __cplusplus
  18.    // This isnt extern "C" because the compiler will not allow this if it has
  19.    // seen an extern "Objective-C"
  20. #  define EOCONTROL_EXTERN        extern
  21. #  define PRIVATE_EXTERN        __private_extern__
  22. #else
  23. #  define EOCONTROL_EXTERN        extern
  24. #  define PRIVATE_EXTERN        __private_extern__
  25. #endif
  26.  
  27. #define EOCONTROL_EXTERN_IMP    PUBLIC_EXTERN
  28. #define PRIVATE_EXTERN_IMP    PRIVATE_EXTERN
  29.  
  30.  
  31. //
  32. // For Windows
  33. //
  34.  
  35. #elif defined(WIN32)
  36.  
  37. #ifdef __cplusplus
  38. #  ifndef _NSBUILDING_EOCONTROL_DLL
  39. #    define EOCONTROL_EXTERN        __declspec(dllimport) extern "C"
  40. #  else
  41. #    define EOCONTROL_EXTERN        extern "C"
  42. #  endif
  43. #  define EOCONTROL_PRIVATE_EXTERN        extern "C"
  44. #else
  45. #  ifndef _NSBUILDING_EOCONTROL_DLL
  46. #    define EOCONTROL_EXTERN        __declspec(dllimport) extern
  47. #  else
  48. #    define EOCONTROL_EXTERN        extern
  49. #  endif
  50. #    define EOCONTROL_PRIVATE_EXTERN        extern
  51. #endif
  52.  
  53. #define EOCONTROL_EXTERN_IMP    PUBLIC_EXTERN
  54. #define EOCONTROL_PRIVATE_EXTERN_IMP    PRIVATE_EXTERN
  55.  
  56.  
  57. //
  58. //  For Solaris
  59. //
  60.  
  61. #elif defined(__svr4__)
  62.  
  63. #ifdef __cplusplus
  64. #  define EOCONTROL_EXTERN        extern "C"
  65. #  define EOCONTROL_PRIVATE_EXTERN        extern "C"
  66. #else
  67. #  define EOCONTROL_EXTERN        extern
  68. #  define EOCONTROL_PRIVATE_EXTERN        extern
  69. #endif
  70.  
  71. #define EOCONTROL_EXTERN_IMP    EOCONTROL_EXTERN
  72. #define EOCONTROL_PRIVATE_EXTERN_IMP    PRIVATE_EXTERN
  73.  
  74. #elif defined(hpux)
  75.  
  76. #ifdef __cplusplus
  77. #  define EOCONTROL_EXTERN        extern "C"
  78. #  define EOCONTROL_PRIVATE_EXTERN        extern "C"
  79. #else
  80. #  define EOCONTROL_EXTERN        extern
  81. #  define EOCONTROL_PRIVATE_EXTERN        extern
  82. #endif
  83.  
  84. #define EOCONTROL_EXTERN_IMP    EOCONTROL_EXTERN
  85. #define EOCONTROL_PRIVATE_EXTERN_IMP    PRIVATE_EXTERN
  86.  
  87. #else
  88.  
  89. #error Unknown platform.
  90.  
  91. #endif
  92.  
  93. #endif // _EOCONTROLDEFINES_H
  94.  
  95.