summaryrefslogtreecommitdiff
path: root/reentr.pl
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2002-03-16 17:52:29 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2002-03-16 17:52:29 +0000
commita48ec845cbd27881b821dcb9bb80e52ba093c5f2 (patch)
tree9db559767d80004cf807399bb10413179b5105fd /reentr.pl
parentc04a4dfec532b91f76755cfa4d008128d04c69cb (diff)
downloadperl-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.pl17
1 files changed, 14 insertions, 3 deletions
diff --git a/reentr.pl b/reentr.pl
index 3c529b6266..971fc58094 100644
--- a/reentr.pl
+++ b/reentr.pl
@@ -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