diff options
author | Nicholas Clark <nick@ccl4.org> | 2011-08-21 17:37:41 +0200 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2011-08-25 11:34:37 +0200 |
commit | d500e60df9f652d9d80c9a5f4324d49e51e7f990 (patch) | |
tree | 07bc201e042e7f0373bfad81ae7df2dfba874921 /Porting/pumpkin.pod | |
parent | cdde42af3c16a29c0c7fcb1b2b71c5a4b0093ac4 (diff) | |
download | perl-d500e60df9f652d9d80c9a5f4324d49e51e7f990.tar.gz |
Eliminate global.sym, as makedef.pl can generate it internally.
global.sym was a file listing the exported symbols, generated by regen/embed.pl
from embed.fnc and regen/opcodes, which was only used by makedef.pl
Move the code that generates global.sym from regen/embed.pl to makedef.pl,
and thereby eliminate the need to ship a 907 line generated file.
Diffstat (limited to 'Porting/pumpkin.pod')
-rw-r--r-- | Porting/pumpkin.pod | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/Porting/pumpkin.pod b/Porting/pumpkin.pod index 69fce6b88b..269311a29c 100644 --- a/Porting/pumpkin.pod +++ b/Porting/pumpkin.pod @@ -450,14 +450,14 @@ and effort by manually running C<make regen_headers> myself rather than answering all the questions and complaints about the failing command. -=head2 global.sym, and perlio.sym +=head2 globvar.sym, and perlio.sym Make sure these files are up-to-date. Read the comments in these files and in F<perl_exp.SH> to see what to do. =head2 Binary compatibility -If you do change F<global.sym> think carefully about +If you do change F<embed.fnc> think carefully about what you are doing. To the extent reasonable, we'd like to maintain source and binary compatibility with older releases of perl. That way, extensions built under one version of perl will continue to work with @@ -814,8 +814,8 @@ conflicting needs of dynamic loading and namespace protection. For dynamic loading to work on AIX (and VMS) we need to provide a list of symbols to be exported. This is done by the script F<perl_exp.SH>, -which reads F<global.sym>. Thus, the C<pause> -symbol would have to be added to F<global.sym> So far, so good. +which reads F<embed.fnc>. Thus, the C<pause> +symbol would have to be added to F<embed.fnc> So far, so good. On the other hand, one of the goals of Perl5 is to make it easy to either extend or embed perl and link it with other libraries. This @@ -823,9 +823,9 @@ means we have to be careful to keep the visible namespace "clean". That is, we don't want perl's global variables to conflict with those in the other application library. Although this work is still in progress, the way it is currently done is via the F<embed.h> file. -This file is built from the F<global.sym> file, +This file is built from the F<embed.fnc> file, since those files already list the globally visible symbols. If we -had added C<pause> to global.sym, then F<embed.h> would contain the +had added C<pause> to F<embed.fnc>, then F<embed.h> would contain the line #define pause Perl_pause @@ -872,7 +872,7 @@ My explanatory comment in patch 5.003_05 said: applies to SCO. This shows the perils of having internal functions with the same name as external library functions :-). -Now, we can safely put C<my_chsize> in F<global.sym>, export it, and +Now, we can safely put C<my_chsize> in C<embed.fnc>, export it, and hide it with F<embed.h>. To be consistent with what I did for C<pause>, I probably should have @@ -942,7 +942,7 @@ then in some file (e.g. F<util.c> or F<doio.c>) do #endif Alternatively, we could just always use C<chsize> everywhere and move -C<chsize> from F<global.sym> to the end of F<perl_exp.SH>. That would +C<chsize> from F<embed.fnc> to the end of F<perl_exp.SH>. That would probably be fine as long as our C<chsize> function agreed with all the C<chsize> function prototypes in the various systems we'll be using. As long as the prototypes in actual use don't vary that much, this is |