echo "RDYNAMIC=-rdynamic"
echo "LDFLAGS+=-Wl,--no-undefined -Wl,--as-needed"
;;
+ NetBSD)
+ [ "$(uname -m)" = "amd64" ] && echo "ARCH_X86_64=1" && echo "CFLAGS+=-DARCH_X86_64"
+ echo "OPTIMISATIONS+=-ffast-math"
+ echo "CFLAGS+=-pthread"
+ echo "SHFLAGS=-shared"
+ echo "RDYNAMIC=-rdynamic"
+ echo "LDFLAGS+=-Wl,--no-undefined -Wl,--as-needed"
+ ;;
*)
;;
esac
Darwin)
LIBSUF=".dylib"
;;
- Linux|FreeBSD)
+ Linux|FreeBSD|NetBSD)
LIBSUF=".so"
;;
*)
echo "CXXFLAGS+=-D__DARWIN__ -Wall -fPIC"
echo "LIBFLAGS=-dynamiclib -single_module"
;;
- Linux|FreeBSD)
+ Linux|FreeBSD|NetBSD)
echo LIBSUF=.so
echo "CXXFLAGS+=-Wall $WARNINGS -fPIC -DPIC"
echo "LIBFLAGS=-shared"
#define _ENDIAN_TYPES_H
/* Needed for BYTE_ORDER and BIG/LITTLE_ENDIAN macros. */
+#if !defined(__FreeBSD__) && !defined(__NetBSD__)
#ifndef _BSD_SOURCE
# define _BSD_SOURCE
-#ifndef __FreeBSD__
# include <endian.h>
-#else
-# include <sys/endian.h>
-#endif /* __FreeBSD__ */
# undef _BSD_SOURCE
#else
-#ifndef __FreeBSD__
# include <endian.h>
+#endif
#else
# include <sys/endian.h>
-#endif /* __FreeBSD__ */
-#endif
+#endif /* !defined(__FreeBSD__) && !defined(__NetBSD__) */
#include <sys/types.h>
-#ifndef __FreeBSD__
+#if !defined(__FreeBSD__) && !defined(__NetBSD__)
#include <byteswap.h>
#else
#define bswap_16(x) bswap16(x)
#define bswap_32(x) bswap32(x)
#define bswap_64(x) bswap64(x)
-#endif /* __FreeBSD__ */
+#endif /* !defined(__FreeBSD__) && !defined(__NetBSD__) */
static inline int8_t bswap(const int8_t& x)
{