From cb65fe1439de4be32b41d02f19f0a619a592d444 Mon Sep 17 00:00:00 2001
From: Tony Theodore <tonyt@logyst.com>
Date: Wed, 6 Dec 2017 12:50:24 +1100
Subject: hyperscan: fix build where native SSSE3 detection fails

closes #1997
---
 src/hyperscan.mk | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/src/hyperscan.mk b/src/hyperscan.mk
index cbea2f0..5179b54 100644
--- a/src/hyperscan.mk
+++ b/src/hyperscan.mk
@@ -10,12 +10,22 @@ $(PKG)_GH_CONF  := 01org/hyperscan/tags, v
 $(PKG)_DEPS     := gcc boost
 # $(PKG)_NATIVE_DEPS := ragel
 
+# Add the following options to run on (virtual) machine without AVX2 or
+# build on machine where native detection of SSSE3 may fail
+# -DCMAKE_C_FLAGS="-march=core2" -DCMAKE_CXX_FLAGS="-march=core2"
+
+$(PKG)_ARCH_FLAGS = \
+    $(TARGET)-gcc -xc /dev/null -o- -S -fverbose-asm \
+        -march=native | \
+        grep mssse3 >/dev/null 2>&1 || \
+        echo -march=core2
+
 define $(PKG)_BUILD
-    # Add the following options to run on (virtual) machine without AVX2
-    # -DCMAKE_C_FLAGS="-march=core2" -DCMAKE_CXX_FLAGS="-march=core2"
     cd '$(BUILD_DIR)' && $(TARGET)-cmake \
         -DRAGEL='$(PREFIX)/$(BUILD)/bin/ragel' \
         -DMXE_DISABLE_INCLUDE_SYSTEM_FLAG=TRUE \
+        -DCMAKE_C_FLAGS="`$($(PKG)_ARCH_FLAGS)`" \
+        -DCMAKE_CXX_FLAGS="`$($(PKG)_ARCH_FLAGS)`" \
         '$(SOURCE_DIR)'
     $(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)'
     $(MAKE) -C '$(BUILD_DIR)' -j 1 install
-- 
cgit v0.12