Adjustments for macOS
This commit is contained in:
parent
4e8acd1fbf
commit
a1bf12effe
5 changed files with 40 additions and 1 deletions
|
@ -52,7 +52,10 @@ Description
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
#include <netdb.h>
|
#include <netdb.h>
|
||||||
#include <dlfcn.h>
|
#include <dlfcn.h>
|
||||||
|
|
||||||
|
#ifndef darwin
|
||||||
#include <link.h>
|
#include <link.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <netinet/in.h>
|
#include <netinet/in.h>
|
||||||
|
|
||||||
|
|
|
@ -262,7 +262,7 @@ void Foam::sigFpe::set(const bool verbose)
|
||||||
# elif defined(__APPLE__)
|
# elif defined(__APPLE__)
|
||||||
|
|
||||||
struct sigaction newAction;
|
struct sigaction newAction;
|
||||||
newAction.sa_handler = sigFpeHandler;
|
newAction.sa_handler = sigHandler;
|
||||||
newAction.sa_flags = SA_NODEFER;
|
newAction.sa_flags = SA_NODEFER;
|
||||||
sigemptyset(&newAction.sa_mask);
|
sigemptyset(&newAction.sa_mask);
|
||||||
if (sigaction(SIGFPE, &newAction, &oldAction_) < 0)
|
if (sigaction(SIGFPE, &newAction, &oldAction_) < 0)
|
||||||
|
|
|
@ -31,6 +31,25 @@ License
|
||||||
|
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
|
|
||||||
|
#if defined(darwin) && defined(__clang__)
|
||||||
|
#ifndef DUMMY_SCALAR_FUNCTIONS
|
||||||
|
#define DUMMY_SCALAR_FUNCTIONS
|
||||||
|
inline float j0f(float x) { return float(j0(double(x)));}
|
||||||
|
inline float j1f(float x) { return float(j1(double(x)));}
|
||||||
|
inline float y0f(float x) { return float(y0(double(x)));}
|
||||||
|
inline float y1f(float x) { return float(y1(double(x)));}
|
||||||
|
inline float jnf(const int n, const float s) { return float(jn(n, double(s))); }
|
||||||
|
inline float ynf(const int n, const float s) { return float(yn(n, double(s))); }
|
||||||
|
|
||||||
|
inline long double j0l(float x) { return double(j0(double(x)));}
|
||||||
|
inline long double j1l(float x) { return double(j1(double(x)));}
|
||||||
|
inline long double y0l(float x) { return double(y0(double(x)));}
|
||||||
|
inline long double y1l(float x) { return double(y1(double(x)));}
|
||||||
|
inline long double jnl(const int n, const float s) { return double(jn(n, double(s))); }
|
||||||
|
inline long double ynl(const int n, const float s) { return double(yn(n, double(s))); }
|
||||||
|
#endif
|
||||||
|
#endif // darwin
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
|
|
|
@ -69,6 +69,11 @@ bool read(const char*, int64_t&);
|
||||||
Istream& operator>>(Istream&, int64_t&);
|
Istream& operator>>(Istream&, int64_t&);
|
||||||
Ostream& operator<<(Ostream&, const int64_t);
|
Ostream& operator<<(Ostream&, const int64_t);
|
||||||
|
|
||||||
|
#if WM_ARCH_OPTION == 64 && darwin && __clang__
|
||||||
|
Istream& operator>>(Istream&, long&);
|
||||||
|
Ostream& operator<<(Ostream&, const long);
|
||||||
|
#endif
|
||||||
|
|
||||||
//- Template specialization for pTraits<int64_t>
|
//- Template specialization for pTraits<int64_t>
|
||||||
template<>
|
template<>
|
||||||
class pTraits<int64_t>
|
class pTraits<int64_t>
|
||||||
|
|
|
@ -101,5 +101,17 @@ Foam::Ostream& Foam::operator<<(Ostream& os, const int64_t i)
|
||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if WM_ARCH_OPTION == 64 && darwin && __clang__
|
||||||
|
Foam::Istream& Foam::operator>>(Istream& is, long& i)
|
||||||
|
{
|
||||||
|
return operator>>(is, reinterpret_cast<int64_t&>(i));
|
||||||
|
}
|
||||||
|
|
||||||
|
Foam::Ostream& Foam::operator<<(Ostream& os, const long i)
|
||||||
|
{
|
||||||
|
os << int64_t(i);
|
||||||
|
return os;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|
Reference in a new issue