endif
ifeq ($(KERNEL),Darwin)
- CXXFLAGS += -arch $(arch) -mmacosx-version-min=10.15
- LDFLAGS += -arch $(arch) -mmacosx-version-min=10.15
+ CXXFLAGS += -arch $(arch) -mmacosx-version-min=10.13
+ LDFLAGS += -arch $(arch) -mmacosx-version-min=10.13
endif
### Travis CI script uses COMPILER to overwrite CXX
///
void* std_aligned_alloc(size_t alignment, size_t size) {
-#if defined(__APPLE__)
+#if (defined(__APPLE__) && defined(_LIBCPP_HAS_C11_FEATURES)) || defined(__ANDROID__) || defined(__OpenBSD__) || (defined(__GLIBCXX__) && !defined(_GLIBCXX_HAVE_ALIGNED_ALLOC) )
return aligned_alloc(alignment, size);
-#elif defined(_WIN32)
+#elif (defined(_WIN32) || (defined(__APPLE__) && !defined(_LIBCPP_HAS_C11_FEATURES)))
return _mm_malloc(size, alignment);
#else
return std::aligned_alloc(alignment, size);
}
void std_aligned_free(void* ptr) {
-#if defined(__APPLE__)
+#if (defined(__APPLE__) && defined(_LIBCPP_HAS_C11_FEATURES)) || defined(__ANDROID__) || defined(__OpenBSD__) || (defined(__GLIBCXX__) && !defined(_GLIBCXX_HAVE_ALIGNED_ALLOC) )
free(ptr);
-#elif defined(_WIN32)
+#elif (defined(_WIN32) || (defined(__APPLE__) && !defined(_LIBCPP_HAS_C11_FEATURES)))
_mm_free(ptr);
#else
free(ptr);