source: trunk/third/perl/EXTERN.h @ 20075

Revision 20075, 1.7 KB checked in by zacheiss, 21 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r20074, which included commits to RCS files with non-trunk default branches.
Line 
1/*    EXTERN.h
2 *
3 *    Copyright (C) 1991, 1992, 1993, 1995, 1996, 1997, 1998, 1999,
4 *    2000, 2001, by Larry Wall and others
5 *
6 *    You may distribute under the terms of either the GNU General Public
7 *    License or the Artistic License, as specified in the README file.
8 *
9 */
10
11/*
12 * EXT  designates a global var which is defined in perl.h
13 * dEXT designates a global var which is defined in another
14 *      file, so we can't count on finding it in perl.h
15 *      (this practice should be avoided).
16 */
17#undef EXT
18#undef dEXT
19#undef EXTCONST
20#undef dEXTCONST
21#if defined(VMS) && !defined(__GNUC__)
22    /* Suppress portability warnings from DECC for VMS-specific extensions */
23#  ifdef __DECC
24#    pragma message disable (GLOBALEXT,NOSHAREEXT,READONLYEXT)
25#  endif
26#  define EXT globalref
27#  define dEXT globaldef {"$GLOBAL_RW_VARS"} noshare
28#  define EXTCONST globalref
29#  define dEXTCONST globaldef {"$GLOBAL_RO_VARS"} readonly
30#else
31#  if defined(WIN32) && !defined(PERL_STATIC_SYMS)
32#    ifdef PERLDLL
33#      define EXT extern __declspec(dllexport)
34#      define dEXT
35#      define EXTCONST extern __declspec(dllexport) const
36#      define dEXTCONST const
37#    else
38#      define EXT extern __declspec(dllimport)
39#      define dEXT
40#      define EXTCONST extern __declspec(dllimport) const
41#      define dEXTCONST const
42#    endif
43#  else
44#    if defined(__CYGWIN__) && defined(USEIMPORTLIB)
45#      define EXT extern __declspec(dllimport)
46#      define dEXT
47#      define EXTCONST extern __declspec(dllimport) const
48#      define dEXTCONST const
49#    else
50#      define EXT extern
51#      define dEXT
52#      define EXTCONST extern const
53#      define dEXTCONST const
54#    endif
55#  endif
56#endif
57
58#undef INIT
59#define INIT(x)
60
61#undef DOINIT
Note: See TracBrowser for help on using the repository browser.