diff options
author | Jay Krell <jay.krell@cornell.edu> | 2018-09-26 12:45:59 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-09-26 12:45:59 +0300 |
commit | 4259352d3a7d4b8d6b9980c4e2da844957710609 (patch) | |
tree | 3009299263f946a5b16a4d258cae3adf10249adb /sdks/builds/ios.mk | |
parent | 352639f75a389150a1562ebf72a7d46f4acc475e (diff) |
[cxx] Rework C++ linkage to C99 trunc, isnan, isinf, etc. and some cleanup. (#10764)
This PR cleanups C++SDKs support and gets them all passing for the first time, esp. Android (WebAssembly already was, iOS uncertain before, green here).
* Current Visual C++ has signbit.
* Rework C++ linkage to C99 math-- trunc, isnan, isinf, etc.
Go through mono wrappers that are compiled as C.
Remove support for Visual C++ pre-2015 and non-C99 Solaris.
(Solaris has plenty of other problems compiling.)
Cleanup Windows ssize_t support.
* Remove trunc and aintl autoconfigury.
Use trunc unconditionally. (aintl is a Solaris near equivalent to trunc).
* Replace dis_isnan with mono_isnan.
* Interpreter already assumes presence of isinf and isfinite, so everywhere else might as well too.
A fair amount of cleanup therefore -- autoconf, ifdef, etc.
If this changes back, the mono_isinf, etc. wrappers are likely, but not necessarily, where to handle it for everyone, not sprinkling ifdefs and alternate implementations around -- assuming all users want the same fallback.
As well, we might want to import some good BSD libc versions of all these if there is any remaining question of portability. *Everyone* except old VAX and Cray have always used the same 32bit float and 64bit double representations since circa 1985 so these are all probably about one line of portable C89/C++98 each, maybe with endian sensitivity.
Diffstat (limited to 'sdks/builds/ios.mk')
-rw-r--r-- | sdks/builds/ios.mk | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/sdks/builds/ios.mk b/sdks/builds/ios.mk index 0056b2631ad..e6308cb55ab 100644 --- a/sdks/builds/ios.mk +++ b/sdks/builds/ios.mk @@ -49,7 +49,6 @@ _ios-$(1)_CXX=$$(CCACHE) $$(PLATFORM_BIN)/clang++ _ios-$(1)_AC_VARS= \ ac_cv_c_bigendian=no \ - ac_cv_func_finite=no \ ac_cv_func_getpwuid_r=no \ ac_cv_func_posix_getpwuid_r=yes \ ac_cv_header_curses_h=no \ |