diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2002-03-16 17:52:29 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2002-03-16 17:52:29 +0000 |
commit | a48ec845cbd27881b821dcb9bb80e52ba093c5f2 (patch) | |
tree | 9db559767d80004cf807399bb10413179b5105fd /reentr.pl | |
parent | c04a4dfec532b91f76755cfa4d008128d04c69cb (diff) | |
download | perl-a48ec845cbd27881b821dcb9bb80e52ba093c5f2.tar.gz |
More paranoid _r protochecking. At least Tru64 and
Linux need additional hinting help to believe that
the time_r protos exist; turn on FreeBSD _THREAD_SAFE
to see what goes bang.
p4raw-id: //depot/perl@15257
Diffstat (limited to 'reentr.pl')
-rw-r--r-- | reentr.pl | 17 |
1 files changed, 14 insertions, 3 deletions
@@ -172,7 +172,7 @@ while (<DATA>) { ?RCS: ?RCS: Generated by the reentr.pl from the Perl 5.8 distribution. ?RCS: -?MAKE:d_${f}_r ${f}_r_proto: Inlibc Protochk i_systypes $prereqh +?MAKE:d_${f}_r ${f}_r_proto: Inlibc Protochk Hasproto i_systypes $prereqh ?MAKE: -pick add \$@ %< ?S:d_${f}_r: ?S: This variable conditionally defines the HAS_${F}_R symbol, @@ -192,7 +192,7 @@ while (<DATA>) { ?H:#\$d_${f}_r HAS_${F}_R /**/ ?H:#define ${F}_R_PROTO \$${f}_r_proto /**/ ?H:. -?T:try hdrs +?T:try hdrs d_${f}_r_proto ?LINT:set d_${f}_r ?LINT:set ${f}_r_proto : see if ${f}_r exists @@ -201,6 +201,14 @@ eval \$inlibc case "\$d_${f}_r" in "\$define") hdrs="\$i_systypes sys/types.h define stdio.h \$i_${h} $h.h" + case "\$d_${f}_r_proto" in + '') d_${f}_r_proto=define + set d_${f}_r_proto ${f}_r \$hdrs + eval \$hasproto ;; + *) ;; + esac + case "\$d_${f}_r_proto" in + define) EOF for my $p (@p) { my ($r, $a) = ($p =~ /^(.)_(.+)/); @@ -225,7 +233,7 @@ EOF case "\$${f}_r_proto" in '') d_${f}_r=undef ${f}_r_proto=0 - echo "Disabling ${f}_r, cannot determine prototype." ;; + echo "Disabling ${f}_r, cannot determine prototype." >&4 ;; * ) case "\$${f}_r_proto" in REENTRANT_PROTO*) ;; *) ${f}_r_proto="REENTRANT_PROTO_\$${f}_r_proto" ;; @@ -233,6 +241,9 @@ EOF echo "Prototype: \$try" ;; esac ;; + *) echo "You have ${f}_r but no prototype, not using it." >&4 ;; + esac + ;; *) ${f}_r_proto=0 ;; esac |