$ Dec_C_Version = ""
$ cxxversion = ""
$ use_threads = "F"
-$ use_5005_threads = "N"
$ use_ithreads = "N"
$!
$!: option parsing
$ then
$ if useithreads .eqs. "undef" then bool_dflt="n"
$ endif
-$ if f$type(use5005threads) .nes. ""
-$ then
-$ if use5005threads .or. use5005threads .eqs. "define"
-$ then
-$ echo "5.005 threads are no longer supported"
-$ exit 44
-$ endif
-$ endif
$ rp = "Use the newer interpreter-based ithreads? [''bool_dflt'] "
$ GOSUB myread
$ use_ithreads=ans
-$ use_5005_threads="N"
$ ! Are they on VMS 7.1 or greater?
$ IF "''f$extract(1,3, f$getsyi(""version""))'" .GES. "7.1"
$ THEN
$ d_hypot = "define"
$ d_ilogb = "define"
$ d_isnan = "define"
-$ d_isnanl = "define"
$ d_isnormal = "define"
$ d_j0 = "define"
$ d_lgamma = "define"
$ d_lrintl = "define"
$ d_lround = "define"
$ d_lroundl = "define"
-$ d_nearbyint = "define"
$ d_nextafter = "define"
$ d_nexttoward = "define"
$ d_remainder = "define"
$ d_hypot = "undef"
$ d_ilogb = "undef"
$ d_isnan = "undef"
-$ d_isnanl = "undef"
$ d_isnormal = "undef"
$ d_j0 = "undef"
$ d_lgamma = "undef"
$ d_lrintl = "undef"
$ d_lround = "undef"
$ d_lroundl = "undef"
-$ d_nearbyint = "undef"
$ d_nextafter = "undef"
$ d_nexttoward = "undef"
$ d_remainder = "undef"
$!
$! Now some that we build up
$!
-$ use5005threads = "undef"
$ d_old_pthread_create_joinable = "undef"
$ old_pthread_create_joinable = " "
$ IF use_threads
$ echo4 "Well, your system knows about the normal fd_set typedef..."
$ ENDIF
$!
+$! Check for stdint.h
+$!
+$ tmp = "stdint.h"
+$ GOSUB inhdr
+$ i_stdint = tmp
+$!
$! Check for inttypes.h
$!
$ tmp = "inttypes.h"
$ echo "You do not have off64_t."
$ ENDIF
$!
+$! Check to see if fpclassify exists
+$!
+$ OS
+$ WS "#if defined(__DECC) || defined(__DECCXX)"
+$ WS "#include <stdlib.h>"
+$ WS "#endif"
+$ WS "#include <math.h>"
+$ WS "int main()"
+$ WS "{"
+$ WS "if (fpclassify(0.0) == FP_ZERO) exit(0);"
+$ WS "exit(1);"
+$ WS "}"
+$ CS
+$ tmp = "fpclassify"
+$ GOSUB inlibc
+$ d_fpclassify = tmp
+$!
$! Check to see if fpos64_t exists
$!
$ echo4 "Checking to see if you have fpos64_t..."
$ ENDIF
$ d_fcntl_can_lock = tmp
$!
+$! Check to see if isblank exists
+$!
+$ OS
+$ WS "#include <stdlib.h>"
+$ WS "#include <ctype.h>"
+$ WS "int main()"
+$ WS "{"
+$ WS "int c = ' ';"
+$ WS "if(isblank(c))"
+$ WS " exit(EXIT_SUCCESS);"
+$ WS "else"
+$ WS " exit(EXIT_FAILURE);"
+$ WS "}"
+$ CS
+$ tmp = "isblank"
+$ GOSUB inlibc
+$ d_isblank = tmp
+$!
+$! Check to see if isless exists
+$!
+$ OS
+$ WS "#include <stdlib.h>"
+$ WS "#include <math.h>"
+$ WS "int main() { return isless(1.0, 2.0) ? EXIT_SUCCESS : EXIT_FAILURE; }"
+$ CS
+$ tmp = "isless"
+$ GOSUB inlibc
+$ d_isless = tmp
+$!
+$! Check to see if pre-C99 isnanl exists
+$!
+$ OS
+$ WS "#include <stdlib.h>"
+$ WS "#include <math.h>"
+$ WS "int main()"
+$ WS "{"
+$ WS " long double x = NaN;
+$ WS " return isnanl(x) ? EXIT_SUCCESS : EXIT_FAILURE;
+$ WS "}"
+$ CS
+$ tmp = "isnanl"
+$ GOSUB inlibc
+$ d_isnanl = tmp
+$!
+$! Check to see if llrint exists
+$!
+$ OS
+$ WS "#include <stdlib.h>"
+$ WS "#include <math.h>"
+$ WS "int main()"
+$ WS "{"
+$ WS " long long x = llrint(1.5);
+$ WS " return x == 2 ? EXIT_SUCCESS : EXIT_FAILURE;
+$ WS "}"
+$ CS
+$ tmp = "llrint"
+$ GOSUB inlibc
+$ d_llrint = tmp
+$!
+$! Check to see if llrintl exists
+$!
+$ OS
+$ WS "#include <stdlib.h>"
+$ WS "#include <math.h>"
+$ WS "int main()"
+$ WS "{"
+$ WS " long long x = llrintl(1.5);
+$ WS " return x == 2 ? EXIT_SUCCESS : EXIT_FAILURE;
+$ WS "}"
+$ CS
+$ tmp = "llrintl"
+$ GOSUB inlibc
+$ d_llrintl = tmp
+$!
+$! Check to see if llround exists
+$!
+$ OS
+$ WS "#include <stdlib.h>"
+$ WS "#include <math.h>"
+$ WS "int main()"
+$ WS "{"
+$ WS " long long x = llround(1.5);
+$ WS " return x == 2 ? EXIT_SUCCESS : EXIT_FAILURE;
+$ WS "}"
+$ CS
+$ tmp = "llround"
+$ GOSUB inlibc
+$ d_llround = tmp
+$!
+$! Check to see if llroundl exists
+$!
+$ OS
+$ WS "#include <stdlib.h>"
+$ WS "#include <math.h>"
+$ WS "int main()"
+$ WS "{"
+$ WS " long long x = llroundl(1.5);
+$ WS " return x == 2 ? EXIT_SUCCESS : EXIT_FAILURE;
+$ WS "}"
+$ CS
+$ tmp = "llroundl"
+$ GOSUB inlibc
+$ d_llroundl = tmp
+$!
+$! Check to see if nearbyint exists
+$!
+$ OS
+$ WS "#include <stdlib.h>"
+$ WS "#include <math.h>"
+$ WS "int main()"
+$ WS "{"
+$ WS " double x = llroundl(1.5);
+$ WS " return x == 2.0 ? EXIT_SUCCESS : EXIT_FAILURE;
+$ WS "}"
+$ CS
+$ tmp = "nearbyint"
+$ GOSUB inlibc
+$ d_nearbyint = tmp
+$!
+$! Check to see if round exists
+$!
+$ OS
+$ WS "#include <stdlib.h>"
+$ WS "#include <math.h>"
+$ WS "int main()"
+$ WS "{"
+$ WS " double x = round(1.5);
+$ WS " return x == 2.0 ? EXIT_SUCCESS : EXIT_FAILURE;
+$ WS "}"
+$ CS
+$ tmp = "round"
+$ GOSUB inlibc
+$ d_round = tmp
+$!
+$! Check to see if scalbn exists
+$!
+$ OS
+$ WS "#include <stdlib.h>"
+$ WS "#include <math.h>"
+$ WS "int main()"
+$ WS "{"
+$ WS " double x = scalbn(1.0, 3);
+$ WS " return x == 8.0 ? EXIT_SUCCESS : EXIT_FAILURE;
+$ WS "}"
+$ CS
+$ tmp = "scalbn"
+$ GOSUB inlibc
+$ d_scalbn = tmp
+$!
+$! Check to see if scalbnl exists
+$!
+$ OS
+$ WS "#include <stdlib.h>"
+$ WS "#include <math.h>"
+$ WS "int main()"
+$ WS "{"
+$ WS " long double x = scalbn(1.0, 3);
+$ WS " return x == 8.0 ? EXIT_SUCCESS : EXIT_FAILURE;
+$ WS "}"
+$ CS
+$ tmp = "scalbnl"
+$ GOSUB inlibc
+$ d_scalbnl = tmp
+$!
$! Check for memrchr
$!
$ OS
$ WS "int main()"
$ WS "{"
$ WS "long double result;"
-$ WS "result = strtold(""123123"", NULL, 10);"
+$ WS "result = strtold(""123123"", NULL);"
$ WS "exit(0);"
$ WS "}"
$ CS
$ WC "d_fp_classl='undef'"
$ WC "d_fpathconf='" + d_fpathconf + "'"
$ WC "d_fpclass='undef'"
-$ WC "d_fpclassify='undef'"
+$ WC "d_fpclassify='" + d_fpclassify + "'"
$ WC "d_fpclassl='undef'"
$ WC "d_fpgetround='undef'"
$ WC "d_fpos64_t='" + d_fpos64_t + "'"
$ WC "d_ipv6_mreq='define'"
$ WC "d_ipv6_mreq_source='undef'"
$ WC "d_isascii='define'"
-$ WC "d_isblank='undef'"
+$ WC "d_isblank='" + d_isblank + "'"
$ WC "d_isfinite='undef'"
$ WC "d_isfinitel='undef'"
$ WC "d_isinf='undef'"
$ WC "d_isinfl='undef'"
-$ WC "d_isless='undef'"
+$ WC "d_isless='" + d_isless + "'"
$ WC "d_isnan='" + d_isnan + "'"
$ WC "d_isnanl='" + d_isnanl + "'"
$ WC "d_isnormal='" + d_isnormal + "'"
$ WC "d_lgamma='" + d_lgamma + "'"
$ WC "d_libm_lib_version='undef'"
$ WC "d_link='" + d_link + "'"
-$ WC "d_llrint='undef'"
-$ WC "d_llrintl='undef'"
-$ WC "d_llround='undef'"
-$ WC "d_llroundl='undef'"
+$ WC "d_llrint='" + d_llrint + "'"
+$ WC "d_llrintl='" + d_llrintl + "'"
+$ WC "d_llround='" + d_llround + "'"
+$ WC "d_llroundl='" + d_llroundl + "'"
$ WC "d_llseek='undef'"
$ WC "d_localeconv_l='undef'"
$ WC "d_localtime64='undef'"
$ WC "d_nanosleep='" + d_nanosleep + "'"
$ WC "d_ndbm='undef'"
$ WC "d_ndbm_h_uses_prototypes='undef'"
-$ WC "d_nearbyint='undef'"
+$ WC "d_nearbyint='" + d_nearbyint + "'"
$ WC "d_nextafter='" + d_nextafter + "'"
$ WC "d_nexttoward='" + d_nexttoward + "'"
$ WC "d_nice='define'"
$ WC "d_rewinddir='define'"
$ WC "d_rint='" + d_rint + "'"
$ WC "d_rmdir='define'"
-$ WC "d_round='undef'"
+$ WC "d_round='" + d_round + "'"
$ WC "d_sbrkproto='define'"
-$ WC "d_scalbn='undef'"
-$ WC "d_scalbnl='undef'"
+$ WC "d_scalbn='" + d_scalbn + "'"
+$ WC "d_scalbnl='" + d_scalbnl + "'"
$ WC "d_sched_yield='" + d_sched_yield + "'"
$ WC "d_scm_rights='undef'"
$ WC "d_seekdir='define'"
$ WC "d_sitearch='define'"
$ WC "d_sockaddr_in6='define'"
$ WC "d_sockaddr_sa_len='" + d_sockaddr_sa_len + "'"
+$ WC "d_sockaddr_storage='undef'"
$ WC "d_sockatmark='undef'"
$ WC "d_sockatmarkproto='undef'"
$ WC "d_socket='" + d_socket + "'"
$ ELSE
$ WC "i_stdbool='undef'"
$ ENDIF
-$ WC "i_stdint='undef'"
+$ WC "i_stdint='" + i_stdint + "'"
$ WC "i_stdlib='define'"
$ WC "i_sunmath='undef'"
$ WC "i_sysaccess='" + i_sysaccess + "'"
$ WC "uidsize='4'"
$ WC "uidtype='" + uidtype + "'"
$ WC "uquadtype='" + uquadtype + "'"
-$ WC "use5005threads='" + use5005threads + "'"
$ WC "use64bitall='" + use64bitall + "'"
$ WC "use64bitint='" + use64bitint + "'"
$ WC "usecasesensitive='" + be_case_sensitive + "'" ! VMS-specific
$ WC "usedebugging_perl='"+use_debugging_perl+"'"
+$ WC "usedefaultstrict='undef'"
$ WC "usedefaulttypes='" + usedefaulttypes + "'" ! VMS-specific
$ WC "usecbacktrace='undef'"
$ WC "usecrosscompile='undef'"