summaryrefslogtreecommitdiff
path: root/perl.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2011-05-01 14:39:31 +0100
committerNicholas Clark <nick@ccl4.org>2011-06-12 16:15:22 +0200
commit457c538539eca0f3c596861d7d14ab0c0e9ee438 (patch)
tree3c2d5297ad80a80b290499ef46ff60c6e3b70814 /perl.h
parent0447859b8a048144ae0ece76a2f7595840942fcb (diff)
downloadperl-457c538539eca0f3c596861d7d14ab0c0e9ee438.tar.gz
Move PL_{revision,version,subversion} to perl.h, making them const U8.
To get the initialisation to work, the location of #include patchlevel.h needs to be moved.
Diffstat (limited to 'perl.h')
-rw-r--r--perl.h35
1 files changed, 23 insertions, 12 deletions
diff --git a/perl.h b/perl.h
index 77824d1956..0383428a05 100644
--- a/perl.h
+++ b/perl.h
@@ -4200,6 +4200,18 @@ extern char ** environ; /* environment variables supplied via exec */
# endif
#endif
+#define PERL_PATCHLEVEL_H_IMPLICIT
+#include "patchlevel.h"
+#undef PERL_PATCHLEVEL_H_IMPLICIT
+
+#define PERL_VERSION_STRING STRINGIFY(PERL_REVISION) "." \
+ STRINGIFY(PERL_VERSION) "." \
+ STRINGIFY(PERL_SUBVERSION)
+
+#define PERL_API_VERSION_STRING STRINGIFY(PERL_API_REVISION) "." \
+ STRINGIFY(PERL_API_VERSION) "." \
+ STRINGIFY(PERL_API_SUBVERSION)
+
START_EXTERN_C
/* handy constants */
@@ -4263,6 +4275,17 @@ EXTCONST char PL_cshname[]
# define PL_cshlen (sizeof(CSH "") - 1)
#endif
+/* These are baked at compile time into any shared perl library.
+ In future releases this will allow us in main() to sanity test the
+ library we're linking against. */
+
+EXTCONST U8 PL_revision
+ INIT(PERL_REVISION);
+EXTCONST U8 PL_version
+ INIT(PERL_VERSION);
+EXTCONST U8 PL_subversion
+ INIT(PERL_SUBVERSION);
+
EXTCONST char PL_uuemap[65]
INIT("`!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_");
@@ -4869,18 +4892,6 @@ typedef struct exitlistentry {
# define FAKE_DEFAULT_SIGNAL_HANDLERS
#endif
-#define PERL_PATCHLEVEL_H_IMPLICIT
-#include "patchlevel.h"
-#undef PERL_PATCHLEVEL_H_IMPLICIT
-
-#define PERL_VERSION_STRING STRINGIFY(PERL_REVISION) "." \
- STRINGIFY(PERL_VERSION) "." \
- STRINGIFY(PERL_SUBVERSION)
-
-#define PERL_API_VERSION_STRING STRINGIFY(PERL_API_REVISION) "." \
- STRINGIFY(PERL_API_VERSION) "." \
- STRINGIFY(PERL_API_SUBVERSION)
-
#if !defined(MULTIPLICITY)
struct interpreter {