summaryrefslogtreecommitdiff
path: root/perl.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2007-11-07 23:58:06 +0000
committerNicholas Clark <nick@ccl4.org>2007-11-07 23:58:06 +0000
commitffee3ff61d01bece17fbf5f9da633f1917fa5c0a (patch)
treee663a44033087b325e33038fc170994972d55bc8 /perl.h
parent663f364bd429de50c8f5478879b1285d1270c1b3 (diff)
downloadperl-ffee3ff61d01bece17fbf5f9da633f1917fa5c0a.tar.gz
"Bake" the values of PERL_REVISION, PERL_VERSION and PERL_SUBVERSION
into global variables (and hence a shared perl library). Additionally under MULTIPLICITY record the size of the interpreter structure (total, and for this version) and under PERL_GLOBAL_STRUCT the size of the global variables structure. Coupled with PL_bincompat_options this will allow 5.10.1 (and later), when compiled with a shared perl library, to perform sanity checks in main() to verify that the shared library is indeed binary compatible. p4raw-id: //depot/perl@32238
Diffstat (limited to 'perl.h')
-rw-r--r--perl.h10
1 files changed, 4 insertions, 6 deletions
diff --git a/perl.h b/perl.h
index d81bc10c1c..e26e475bfb 100644
--- a/perl.h
+++ b/perl.h
@@ -4619,6 +4619,10 @@ typedef struct exitlistentry {
# define FAKE_DEFAULT_SIGNAL_HANDLERS
#endif
+#define PERL_PATCHLEVEL_H_IMPLICIT
+#include "patchlevel.h"
+#undef PERL_PATCHLEVEL_H_IMPLICIT
+
#ifdef PERL_GLOBAL_STRUCT
struct perl_vars {
# include "perlvars.h"
@@ -5839,11 +5843,6 @@ extern void moncontrol(int);
#define NO_ENV_ARRAY_IN_MAIN
#endif
-/* and finally... */
-#define PERL_PATCHLEVEL_H_IMPLICIT
-#include "patchlevel.h"
-#undef PERL_PATCHLEVEL_H_IMPLICIT
-
/* These are used by Perl_pv_escape() and Perl_pv_pretty()
* are here so that they are available throughout the core
* NOTE that even though some are for _escape and some for _pretty
@@ -5924,4 +5923,3 @@ extern void moncontrol(int);
*/
#endif /* Include guard */
-