This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Net::Ping: avoid stderr noise in tests
[perl5.git] / EXTERN.h
... / ...
CommitLineData
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
22# if (defined(WIN32) || defined(__SYMBIAN32__)) && !defined(PERL_STATIC_SYMS)
23 /* miniperl should not export anything */
24# if defined(PERL_IS_MINIPERL) && !defined(UNDER_CE) && defined(_MSC_VER)
25# define EXT extern
26# define dEXT
27# define EXTCONST extern const
28# define dEXTCONST const
29# else
30# if defined(PERLDLL) || defined(__SYMBIAN32__)
31# define EXT EXTERN_C __declspec(dllexport)
32# define dEXT
33# define EXTCONST EXTERN_C __declspec(dllexport) const
34# define dEXTCONST const
35# else
36# define EXT EXTERN_C __declspec(dllimport)
37# define dEXT
38# define EXTCONST EXTERN_C __declspec(dllimport) const
39# define dEXTCONST const
40# endif
41# endif
42# else
43# if defined(__CYGWIN__) && defined(USEIMPORTLIB)
44# define EXT extern __declspec(dllimport)
45# define dEXT
46# define EXTCONST extern __declspec(dllimport) const
47# define dEXTCONST const
48# else
49# define EXT extern
50# define dEXT
51# define EXTCONST extern const
52# define dEXTCONST const
53# endif
54# endif
55
56#undef INIT
57#define INIT(x)
58
59#undef DOINIT