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 <[email protected]> --- .../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 -- _______________________________________________ Openembedded-devel mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-devel
