This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
metaconfig: more paranoid _r protochecking.
[metaconfig.git] / U / threads / d_srand48_r.U
CommitLineData
0ed44c70
JH
1?RCS: $Id: d_srand48_r.U,v 0RCS:
2?RCS: Copyright (c) 2002 Jarkko Hietaniemi
3?RCS:
4?RCS: You may distribute under the terms of either the GNU General Public
5?RCS: License or the Artistic License, as specified in the README file.
6?RCS:
7?RCS: Generated by the reentr.pl from the Perl 5.8 distribution.
8?RCS:
f42a43f5 9?MAKE:d_srand48_r srand48_r_proto: Inlibc Protochk Hasproto i_systypes i_stdlib
eed88ce0 10?MAKE: -pick add $@ %<
959f3c4c 11?S:d_srand48_r:
eed88ce0
JH
12?S: This variable conditionally defines the HAS_SRAND48_R symbol,
13?S: which indicates to the C program that the srand48_r()
14?S: routine is available.
46953654
JH
15?S:.
16?S:srand48_r_proto:
eed88ce0 17?S: This variable encodes the prototype of srand48_r.
959f3c4c
JH
18?S:.
19?C:HAS_SRAND48_R:
eed88ce0
JH
20?C: This symbol, if defined, indicates that the srand48_r routine
21?C: is available to srand48 re-entrantly.
46953654
JH
22?C:.
23?C:SRAND48_R_PROTO:
eed88ce0 24?C: This symbol encodes the prototype of srand48_r.
959f3c4c 25?C:.
eed88ce0
JH
26?H:#$d_srand48_r HAS_SRAND48_R /**/
27?H:#define SRAND48_R_PROTO $srand48_r_proto /**/
959f3c4c 28?H:.
f42a43f5 29?T:try hdrs d_srand48_r_proto
959f3c4c 30?LINT:set d_srand48_r
46953654 31?LINT:set srand48_r_proto
959f3c4c
JH
32: see if srand48_r exists
33set srand48_r d_srand48_r
34eval $inlibc
46953654
JH
35case "$d_srand48_r" in
36"$define")
f2dee704 37 hdrs="$i_systypes sys/types.h define stdio.h $i_stdlib stdlib.h"
f42a43f5
JH
38 case "$d_srand48_r_proto" in
39 '') d_srand48_r_proto=define
40 set d_srand48_r_proto srand48_r $hdrs
41 eval $hasproto ;;
42 *) ;;
43 esac
44 case "$d_srand48_r_proto" in
45 define)
46953654 46 case "$srand48_r_proto" in
5002a627 47 ''|0) try='int srand48_r(long, struct drand48_data*);'
f2dee704 48 ./protochk "extern $try" $hdrs && srand48_r_proto=I_LS ;;
46953654
JH
49 esac
50 case "$srand48_r_proto" in
f2dee704 51 '') d_srand48_r=undef
5002a627 52 srand48_r_proto=0
f42a43f5 53 echo "Disabling srand48_r, cannot determine prototype." >&4 ;;
f2dee704
JH
54 * ) case "$srand48_r_proto" in
55 REENTRANT_PROTO*) ;;
56 *) srand48_r_proto="REENTRANT_PROTO_$srand48_r_proto" ;;
57 esac
58 echo "Prototype: $try" ;;
46953654
JH
59 esac
60 ;;
f42a43f5
JH
61 *) echo "You have srand48_r but no prototype, not using it." >&4 ;;
62 esac
63 ;;
5002a627
JH
64*) srand48_r_proto=0
65 ;;
46953654 66esac
959f3c4c 67