From 253de859a067b115f17a87e72c76279c4d0680a8 Mon Sep 17 00:00:00 2001
From: Michael Tuexen <tuexen@fh-muenster.de>
Date: Sat, 23 Jun 2018 12:36:44 +0200
Subject: [PATCH] Add Endian defines for PPC and PPC64 for FreeBSD.

---
 gtests/net/packetdrill/platforms.h | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gtests/net/packetdrill/platforms.h b/gtests/net/packetdrill/platforms.h
index 48deb0c8..a2c19388 100644
--- a/gtests/net/packetdrill/platforms.h
+++ b/gtests/net/packetdrill/platforms.h
@@ -68,6 +68,26 @@
 #include "open_memstream.h"
 #endif
 
+/*
+ * Very old compilers like gcc 4.2.1 do not define the endian
+ * macros. gcc 4.2.1 is used as the default compiler on
+ * PowerPC and PowerPC64 for FreeBSD. So define the macros
+ * for these platform.
+ */
+
+#if !defined(__ORDER_LITTLE_ENDIAN__)
+#define __ORDER_LITTLE_ENDIAN__ 1234
+#endif
+#if !defined(__ORDER_BIG_ENDIAN__)
+#define __ORDER_BIG_ENDIAN__ 4321
+#endif
+#if !defined(__BYTE_ORDER__)
+#if defined(__PPC__) || defined(__PPC64__)
+#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
+#else
+#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
+#endif
+
 #endif  /* __FreeBSD__ */
 
 /* ------------------------- OpenBSD --------------------- */
-- 
GitLab