Commit | Line | Data |
---|---|---|
0ed44c70 | 1 | ?RCS: $Id: d_strerror_r.U,v 0RCS: |
55e6b58d | 2 | ?RCS: Copyright (c) 2002,2003 Jarkko Hietaniemi |
0ed44c70 JH |
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: | |
cce04e58 MB |
9 | ?MAKE:d_strerror_r strerror_r_proto: Inlibc Protochk Hasproto i_systypes \ |
10 | usethreads i_string extern_C | |
eed88ce0 | 11 | ?MAKE: -pick add $@ %< |
959f3c4c | 12 | ?S:d_strerror_r: |
eed88ce0 JH |
13 | ?S: This variable conditionally defines the HAS_STRERROR_R symbol, |
14 | ?S: which indicates to the C program that the strerror_r() | |
15 | ?S: routine is available. | |
959f3c4c | 16 | ?S:. |
8e87a72a | 17 | ?S:strerror_r_proto: |
eed88ce0 | 18 | ?S: This variable encodes the prototype of strerror_r. |
05fdd8fd JH |
19 | ?S: It is zero if d_strerror_r is undef, and one of the |
20 | ?S: REENTRANT_PROTO_T_ABC macros of reentr.h if d_strerror_r | |
21 | ?S: is defined. | |
8e87a72a | 22 | ?S:. |
959f3c4c | 23 | ?C:HAS_STRERROR_R: |
eed88ce0 JH |
24 | ?C: This symbol, if defined, indicates that the strerror_r routine |
25 | ?C: is available to strerror re-entrantly. | |
959f3c4c | 26 | ?C:. |
8e87a72a | 27 | ?C:STRERROR_R_PROTO: |
eed88ce0 | 28 | ?C: This symbol encodes the prototype of strerror_r. |
05fdd8fd JH |
29 | ?C: It is zero if d_strerror_r is undef, and one of the |
30 | ?C: REENTRANT_PROTO_T_ABC macros of reentr.h if d_strerror_r | |
31 | ?C: is defined. | |
8e87a72a | 32 | ?C:. |
eed88ce0 JH |
33 | ?H:#$d_strerror_r HAS_STRERROR_R /**/ |
34 | ?H:#define STRERROR_R_PROTO $strerror_r_proto /**/ | |
959f3c4c | 35 | ?H:. |
f42a43f5 | 36 | ?T:try hdrs d_strerror_r_proto |
959f3c4c JH |
37 | : see if strerror_r exists |
38 | set strerror_r d_strerror_r | |
39 | eval $inlibc | |
8e87a72a JH |
40 | case "$d_strerror_r" in |
41 | "$define") | |
f2dee704 | 42 | hdrs="$i_systypes sys/types.h define stdio.h $i_string string.h" |
9bb0d1dd JH |
43 | case "$d_strerror_r_proto:$usethreads" in |
44 | ":define") d_strerror_r_proto=define | |
f42a43f5 JH |
45 | set d_strerror_r_proto strerror_r $hdrs |
46 | eval $hasproto ;; | |
47 | *) ;; | |
48 | esac | |
49 | case "$d_strerror_r_proto" in | |
50 | define) | |
46953654 | 51 | case "$strerror_r_proto" in |
5002a627 | 52 | ''|0) try='int strerror_r(int, char*, size_t);' |
cce04e58 | 53 | ./protochk "$extern_C $try" $hdrs && strerror_r_proto=I_IBW ;; |
46953654 JH |
54 | esac |
55 | case "$strerror_r_proto" in | |
5002a627 | 56 | ''|0) try='int strerror_r(int, char*, int);' |
cce04e58 | 57 | ./protochk "$extern_C $try" $hdrs && strerror_r_proto=I_IBI ;; |
f2dee704 JH |
58 | esac |
59 | case "$strerror_r_proto" in | |
5002a627 | 60 | ''|0) try='char* strerror_r(int, char*, size_t);' |
cce04e58 | 61 | ./protochk "$extern_C $try" $hdrs && strerror_r_proto=B_IBW ;; |
46953654 JH |
62 | esac |
63 | case "$strerror_r_proto" in | |
81d83c43 | 64 | ''|0) d_strerror_r=undef |
5002a627 | 65 | strerror_r_proto=0 |
f42a43f5 | 66 | echo "Disabling strerror_r, cannot determine prototype." >&4 ;; |
f2dee704 JH |
67 | * ) case "$strerror_r_proto" in |
68 | REENTRANT_PROTO*) ;; | |
69 | *) strerror_r_proto="REENTRANT_PROTO_$strerror_r_proto" ;; | |
70 | esac | |
71 | echo "Prototype: $try" ;; | |
46953654 | 72 | esac |
8e87a72a | 73 | ;; |
9bb0d1dd JH |
74 | *) case "$usethreads" in |
75 | define) echo "strerror_r has no prototype, not using it." >&4 ;; | |
76 | esac | |
81d83c43 JH |
77 | d_strerror_r=undef |
78 | strerror_r_proto=0 | |
9bb0d1dd | 79 | ;; |
f42a43f5 JH |
80 | esac |
81 | ;; | |
5002a627 JH |
82 | *) strerror_r_proto=0 |
83 | ;; | |
8e87a72a JH |
84 | esac |
85 |