void-packages/srcpkgs/intel-media-driver/patches/execinfo.patch

59 lines
2.0 KiB
Diff
Raw Normal View History

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;
}