[oe] [meta-oe][PATCH] leveldb: fix checking for SSE flag
Yi Zhao
yi.zhao at windriver.com
Thu Dec 28 05:53:00 UTC 2017
The build_detect_platform-Check-for-__SSE4_2__.patch tries to use fgrep
with pipe to get the SSE flag. But actually it would fail with error:
fgrep: /tmp/leveldb_build_detect_platform-cxx.25886: No such file or
directory
That means it can not get the correct SSE flag.
We should make sure the fgrep command runs after g++ command has
finished and redirect the stdout and stderr to /dev/null to avoid make
error:
Makefile:18: *** missing separator. Stop.
Signed-off-by: Yi Zhao <yi.zhao at windriver.com>
---
.../leveldb/0001-build_detect_platform-Check-for-__SSE4_2__.patch | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/meta-oe/recipes-extended/leveldb/leveldb/0001-build_detect_platform-Check-for-__SSE4_2__.patch b/meta-oe/recipes-extended/leveldb/leveldb/0001-build_detect_platform-Check-for-__SSE4_2__.patch
index bbabf68..8f93cb3 100644
--- a/meta-oe/recipes-extended/leveldb/leveldb/0001-build_detect_platform-Check-for-__SSE4_2__.patch
+++ b/meta-oe/recipes-extended/leveldb/leveldb/0001-build_detect_platform-Check-for-__SSE4_2__.patch
@@ -19,14 +19,15 @@ Index: git/build_detect_platform
===================================================================
--- git.orig/build_detect_platform
+++ git/build_detect_platform
-@@ -230,13 +230,12 @@ EOF
+@@ -224,13 +224,13 @@ EOF
rm -f $CXXOUTPUT 2>/dev/null
# Test if gcc SSE 4.2 is supported
- $CXX $CXXFLAGS -x c++ - -o $CXXOUTPUT -msse4.2 2>/dev/null <<EOF
-+ $CXX $CXXFLAGS -Werror -x c++ - -o $CXXOUTPUT -msse4.2 -dD -E 2>/dev/null | fgrep __SSE4_2__ $CXXOUTPUT 2>/dev/null <<EOF
++ $CXX $CXXFLAGS -Werror -x c++ - -o $CXXOUTPUT -msse4.2 -dD -E 2>/dev/null <<EOF
int main() {}
EOF
++ eval fgrep __SSE4_2__ $CXXOUTPUT >/dev/null 2>&1
if [ "$?" = 0 ]; then
PLATFORM_SSEFLAGS="-msse4.2"
fi
--
2.7.4
More information about the Openembedded-devel
mailing list