3 * Copyright (c) 1991-2002, Larry Wall
5 * You may distribute under the terms of either the GNU General Public
6 * License or the Artistic License, as specified in the README file.
11 * EXT designates a global var which is defined in perl.h
12 * dEXT designates a global var which is defined in another
13 * file, so we can't count on finding it in perl.h
14 * (this practice should be avoided).
20 #if defined(VMS) && !defined(__GNUC__)
21 /* Suppress portability warnings from DECC for VMS-specific extensions */
23 # pragma message disable (GLOBALEXT,NOSHAREEXT,READONLYEXT)
25 # define EXT globalref
26 # define dEXT globaldef {"$GLOBAL_RW_VARS"} noshare
27 # define EXTCONST globalref
28 # define dEXTCONST globaldef {"$GLOBAL_RO_VARS"} readonly
30 # if defined(WIN32) && !defined(PERL_STATIC_SYMS)
32 # define EXT extern __declspec(dllexport)
34 # define EXTCONST extern __declspec(dllexport) const
35 # define dEXTCONST const
37 # define EXT extern __declspec(dllimport)
39 # define EXTCONST extern __declspec(dllimport) const
40 # define dEXTCONST const
43 # if defined(__CYGWIN__) && defined(USEIMPORTLIB)
44 # define EXT extern __declspec(dllimport)
46 # define EXTCONST extern __declspec(dllimport) const
47 # define dEXTCONST const
51 # define EXTCONST extern const
52 # define dEXTCONST const