2022-08-12 15:45:56 +02:00
|
|
|
From b17354142563b45e0ebf427485591426481368fd Mon Sep 17 00:00:00 2001
|
|
|
|
From: Bernd Kuhls <bernd.kuhls@t-online.de>
|
|
|
|
Date: Fri, 29 Jul 2022 19:51:39 +0200
|
|
|
|
Subject: [PATCH] Fix uClibc build
|
2022-07-24 17:39:13 +02:00
|
|
|
|
2022-08-12 15:45:56 +02:00
|
|
|
uClibc does not provide execinfo.h
|
|
|
|
---
|
|
|
|
CMakeLists.txt | 6 ++++++
|
|
|
|
.../linux/common/os/osservice/mos_utilities_specific.cpp | 4 ++++
|
|
|
|
2 files changed, 10 insertions(+)
|
|
|
|
|
|
|
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
|
|
index 053904748..4a3f0869e 100755
|
|
|
|
--- a/CMakeLists.txt
|
|
|
|
+++ b/CMakeLists.txt
|
|
|
|
@@ -53,6 +53,12 @@ option (BUILD_CMRTLIB "Build and Install cmrtlib together with media driver" ON)
|
|
|
|
|
|
|
|
option (ENABLE_PRODUCTION_KMD "Enable Production KMD header files" OFF)
|
|
|
|
|
|
|
|
+include(CheckIncludeFileCXX)
|
|
|
|
+check_include_file_cxx("execinfo.h" HAVE_EXECINFO)
|
|
|
|
+if (HAVE_EXECINFO)
|
|
|
|
+ add_definitions(-DHAVE_EXECINFO)
|
|
|
|
+endif()
|
|
|
|
+
|
|
|
|
include(GNUInstallDirs)
|
|
|
|
|
|
|
|
if (BUILD_CMRTLIB AND NOT CMAKE_WDDM_LINUX)
|
|
|
|
diff --git a/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp b/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp
|
|
|
|
index bde216b83..120b02d55 100644
|
2022-07-24 17:39:13 +02:00
|
|
|
--- a/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp
|
|
|
|
+++ b/media_softlet/linux/common/os/osservice/mos_utilities_specific.cpp
|
2022-08-12 15:45:56 +02:00
|
|
|
@@ -34,7 +34,9 @@
|
2022-07-24 17:39:13 +02:00
|
|
|
#include <signal.h>
|
|
|
|
#include <unistd.h> // fork
|
|
|
|
#include <algorithm>
|
2022-08-12 15:45:56 +02:00
|
|
|
+#ifdef HAVE_EXECINFO
|
2022-07-24 17:39:13 +02:00
|
|
|
#include <execinfo.h> // backtrace
|
|
|
|
+#endif
|
2022-08-12 15:45:56 +02:00
|
|
|
#include <sys/types.h>
|
|
|
|
#include <sys/stat.h> // fstat
|
|
|
|
#include <sys/ipc.h> // System V IPC
|
|
|
|
@@ -2473,6 +2475,7 @@ void MosUtilities::MosTraceEvent(
|
2022-07-24 17:39:13 +02:00
|
|
|
MOS_FreeMemory(pTraceBuf);
|
|
|
|
}
|
|
|
|
}
|
2022-08-12 15:45:56 +02:00
|
|
|
+#ifdef HAVE_EXECINFO
|
2022-07-24 17:39:13 +02:00
|
|
|
if (m_mosTraceFilter & (1ULL << TR_KEY_CALL_STACK))
|
|
|
|
{
|
|
|
|
// reserve space for header and stack size field.
|
2022-08-12 15:45:56 +02:00
|
|
|
@@ -2492,6 +2495,7 @@ void MosUtilities::MosTraceEvent(
|
2022-07-24 17:39:13 +02:00
|
|
|
size_t ret = write(MosUtilitiesSpecificNext::m_mosTraceFd, traceBuf, nLen);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
+#endif
|
|
|
|
}
|
|
|
|
return;
|
|
|
|
}
|