source: trunk/third/perl/perl_exp.SH @ 10724

Revision 10724, 2.3 KB checked in by ghudson, 27 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r10723, which included commits to RCS files with non-trunk default branches.
  • Property svn:executable set to *
Line 
1#!/bin/sh
2#
3# Written: Nov 1994 Wayne Scott (wscott@ichips.intel.com)
4#
5# Create the export list for perl.
6# Needed by AIX to do dynamic linking.
7#
8# This simple program relys on 'global.sym' and other *.sym files
9# being up to date with all of the global symbols that a dynamic
10# link library might want to access.
11#
12# Most symbols have a Perl_ prefix because that's what embed.h sticks
13# in front of them.  Variations depend on binary compatibility with
14# Perl 5.003.
15#
16
17case $CONFIG in
18'')
19        if test -f config.sh; then TOP=.;
20        elif test -f ../config.sh; then TOP=..;
21        elif test -f ../../config.sh; then TOP=../..;
22        elif test -f ../../../config.sh; then TOP=../../..;
23        elif test -f ../../../../config.sh; then TOP=../../../..;
24        else
25                echo "Can't find config.sh."; exit 1
26        fi
27        . $TOP/config.sh
28        ;;
29esac
30: This forces SH files to create target in same directory as SH file.
31: This is so that make depend always knows where to find SH derivatives.
32case "$0" in
33*/*) cd `expr X$0 : 'X\(.*\)/'` ;;
34esac
35
36echo "Extracting perl.exp"
37
38rm -f perl.exp
39echo "#!" > perl.exp
40
41case "$bincompat3" in
42y*)
43        global=/tmp/exp$$g
44        interp=/tmp/exp$$i
45        compat3=/tmp/exp$$c
46        grep '^[A-Za-z]' global.sym | sort >$global
47        grep '^[A-Za-z]' interp.sym | sort >$interp
48        grep '^[A-Za-z]' compat3.sym | sort >$compat3
49        comm -23 $global $compat3 | sed 's/^/Perl_/' >> perl.exp
50        comm -12 $interp $compat3 | sed 's/^/Perl_/' >> perl.exp
51        comm -12 $global $compat3 >> perl.exp
52        comm -23 $interp $compat3 >> perl.exp
53        rm -f $global $interp $compat3
54        ;;
55*)
56        sed -n '/^[A-Za-z]/ s/^/Perl_/p' global.sym interp.sym >> perl.exp
57        ;;
58esac
59
60#
61# If we use the PerlIO abstraction layer, add its symbols
62#
63
64if [ $useperlio = "define" ]
65then
66        grep '^[A-Za-z]' perlio.sym >> perl.exp
67fi
68
69#
70# Extra globals not included above (including a few that might
71# not actually be defined, but there's no harm in that).
72#
73
74cat <<END >> perl.exp
75perl_init_i18nl10n
76perl_init_i18nl14n
77perl_new_collate
78perl_new_ctype
79perl_new_numeric
80perl_set_numeric_local
81perl_set_numeric_standard
82perl_alloc
83perl_construct
84perl_destruct
85perl_free
86perl_parse
87perl_run
88perl_get_sv
89perl_get_av
90perl_get_hv
91perl_get_cv
92perl_call_argv
93perl_call_pv
94perl_call_method
95perl_call_sv
96perl_eval_pv
97perl_eval_sv
98perl_require_pv
99Mymalloc
100Mycalloc
101Myremalloc
102Myfree
103Perl_malloc
104Perl_calloc
105Perl_realloc
106Perl_free
107END
Note: See TracBrowser for help on using the repository browser.