Resolves: #1889545
This commit is contained in:
parent
7d252a19a5
commit
8e37d2e5f2
@ -92,18 +92,9 @@ https://sourceware.org/elfutils/Debuginfod.html
|
|||||||
elseif(NOT (LibElf_FOUND AND LibDwarf_FOUND) AND STERILE_BUILD)
|
elseif(NOT (LibElf_FOUND AND LibDwarf_FOUND) AND STERILE_BUILD)
|
||||||
message(FATAL_ERROR "Elfutils not found and cannot be downloaded because build is sterile.")
|
message(FATAL_ERROR "Elfutils not found and cannot be downloaded because build is sterile.")
|
||||||
else()
|
else()
|
||||||
@@ -104,7 +121,7 @@ else()
|
|
||||||
if(NOT (${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU") OR NOT (${CMAKE_C_COMPILER_ID} STREQUAL "GNU"))
|
|
||||||
message(FATAL_ERROR "ElfUtils will only build with the GNU compiler")
|
|
||||||
endif()
|
|
||||||
-
|
|
||||||
+
|
|
||||||
include(ExternalProject)
|
|
||||||
externalproject_add(
|
|
||||||
ElfUtils
|
|
||||||
|
|
||||||
--- /dedyninst-10.2.1/dyninst-10.2.1/null
|
--- /dev/null
|
||||||
+++ b/cmake/Modules/FindLibDebuginfod.cmake
|
+++ dyninst-10.2.1/dyninst-10.2.1/cmake/Modules/FindLibDebuginfod.cmake
|
||||||
@@ -0,0 +1,76 @@
|
@@ -0,0 +1,76 @@
|
||||||
+#========================================================================================
|
+#========================================================================================
|
||||||
+# FindDebuginfod
|
+# FindDebuginfod
|
||||||
|
@ -1,8 +0,0 @@
|
|||||||
--- dyninst-10.2.1/dyninst-10.2.1/dyninstAPI_RT/CMakeLists.txt 2020-02-24 09:41:30.207108160 -0500
|
|
||||||
+++ dyninst-10.2.1/dyninst-10.2.1/dyninstAPI_RT/CMakeLists.txt 2020-08-25 15:57:28.437496257 -0400
|
|
||||||
@@ -5,4 +5,4 @@
|
|
||||||
set (DYNINST_ROOT ${PROJECT_SOURCE_DIR}/..)
|
|
||||||
-set(CMAKE_C_FLAGS "${DYNINST_RT_CMAKE_C_FLAGS}")
|
|
||||||
-set(CMAKE_CXX_FLAGS "${DYNINST_RT_CMAKE_CXX_FLAGS}")
|
|
||||||
+# set(CMAKE_C_FLAGS "${DYNINST_RT_CMAKE_C_FLAGS}")
|
|
||||||
+# set(CMAKE_CXX_FLAGS "${DYNINST_RT_CMAKE_CXX_FLAGS}")
|
|
14
dyninst.spec
14
dyninst.spec
@ -1,7 +1,7 @@
|
|||||||
Summary: An API for Run-time Code Generation
|
Summary: An API for Run-time Code Generation
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
Name: dyninst
|
Name: dyninst
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
URL: http://www.dyninst.org
|
URL: http://www.dyninst.org
|
||||||
Version: 10.2.1
|
Version: 10.2.1
|
||||||
ExclusiveArch: %{ix86} x86_64 ppc64le aarch64
|
ExclusiveArch: %{ix86} x86_64 ppc64le aarch64
|
||||||
@ -22,6 +22,7 @@ Patch5: testsuite-10.1.0-throw.patch
|
|||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
BuildRequires: elfutils-devel
|
BuildRequires: elfutils-devel
|
||||||
BuildRequires: elfutils-libelf-devel
|
BuildRequires: elfutils-libelf-devel
|
||||||
|
BuildRequires: elfutils-debuginfod-client-devel
|
||||||
BuildRequires: boost-devel
|
BuildRequires: boost-devel
|
||||||
BuildRequires: binutils-devel
|
BuildRequires: binutils-devel
|
||||||
BuildRequires: cmake
|
BuildRequires: cmake
|
||||||
@ -102,6 +103,7 @@ CXXFLAGS="$CFLAGS"
|
|||||||
export CFLAGS CXXFLAGS LDFLAGS
|
export CFLAGS CXXFLAGS LDFLAGS
|
||||||
|
|
||||||
%cmake \
|
%cmake \
|
||||||
|
-DENABLE_DEBUGINFOD=1 \
|
||||||
-DINSTALL_LIB_DIR:PATH=%{_libdir}/dyninst \
|
-DINSTALL_LIB_DIR:PATH=%{_libdir}/dyninst \
|
||||||
-DINSTALL_INCLUDE_DIR:PATH=%{_includedir}/dyninst \
|
-DINSTALL_INCLUDE_DIR:PATH=%{_includedir}/dyninst \
|
||||||
-DINSTALL_CMAKE_DIR:PATH=%{_libdir}/cmake/Dyninst \
|
-DINSTALL_CMAKE_DIR:PATH=%{_libdir}/cmake/Dyninst \
|
||||||
@ -139,6 +141,13 @@ cd ../%{testsuite_base}
|
|||||||
mkdir -p %{buildroot}/etc/ld.so.conf.d
|
mkdir -p %{buildroot}/etc/ld.so.conf.d
|
||||||
echo "%{_libdir}/dyninst" > %{buildroot}/etc/ld.so.conf.d/%{name}-%{_arch}.conf
|
echo "%{_libdir}/dyninst" > %{buildroot}/etc/ld.so.conf.d/%{name}-%{_arch}.conf
|
||||||
|
|
||||||
|
# Ugly hack to mask testsuite files from debuginfo extraction. Running the
|
||||||
|
# testsuite requires debuginfo, so extraction is useless. However, debuginfo
|
||||||
|
# extraction is still nice for the main libraries, so we don't want to disable
|
||||||
|
# it package-wide. The permissions are restored by attr(755,-,-) in files.
|
||||||
|
find %{buildroot}%{_libdir}/dyninst/testsuite/ \
|
||||||
|
-type f '!' -name '*.a' -execdir chmod 644 '{}' '+'
|
||||||
|
|
||||||
%post -p /sbin/ldconfig
|
%post -p /sbin/ldconfig
|
||||||
%postun -p /sbin/ldconfig
|
%postun -p /sbin/ldconfig
|
||||||
|
|
||||||
@ -177,6 +186,9 @@ echo "%{_libdir}/dyninst" > %{buildroot}/etc/ld.so.conf.d/%{name}-%{_arch}.conf
|
|||||||
%attr(644,root,root) %{_libdir}/dyninst/testsuite/*.a
|
%attr(644,root,root) %{_libdir}/dyninst/testsuite/*.a
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Nov 10 2020 Stan Cox <scox@redhat.com> - 10.2.1-2
|
||||||
|
- Enable debuginfod
|
||||||
|
|
||||||
* Wed Oct 28 2020 Stan Cox <scox@redhat.com> - 10.2.1-1
|
* Wed Oct 28 2020 Stan Cox <scox@redhat.com> - 10.2.1-1
|
||||||
- Update to 10.2.1
|
- Update to 10.2.1
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user