Update to 12.3.0
Add patch for cmake 3.27 support
This commit is contained in:
commit
5613a7798b
2
.gitignore
vendored
2
.gitignore
vendored
@ -33,3 +33,5 @@
|
||||
/testsuite-12.1.0.tar.gz
|
||||
/dyninst-12.2.0.tar.gz
|
||||
/testsuite-12.2.0.tar.gz
|
||||
/dyninst-12.3.0.tar.gz
|
||||
/testsuite-12.3.0.tar.gz
|
||||
|
@ -1,12 +0,0 @@
|
||||
# c++/12/bits/basic_string.h in libstdc++-devel-12.1.1-3 no longer includes <ext/atomicity.h>
|
||||
# atomicity.h includes gthr -> gthr-default -> pthread .h -> time.h -> struct-tm.h
|
||||
# so explicitly include time.h
|
||||
|
||||
--- testsuite-12.1.0/src/CmdLine.C
|
||||
+++ testsuite-12.1.0/src/CmdLine.C
|
||||
@@ -38,5 +38,3 @@
|
||||
|
||||
-#if defined(os_windows_test)
|
||||
#include <time.h>
|
||||
-#endif
|
||||
|
11
dyninst-cmake3.27.patch
Normal file
11
dyninst-cmake3.27.patch
Normal file
@ -0,0 +1,11 @@
|
||||
diff -up dyninst-12.3.0/cmake/warnings.cmake.cmake3.27 dyninst-12.3.0/cmake/warnings.cmake
|
||||
--- dyninst-12.3.0/cmake/warnings.cmake.cmake3.27 2023-02-22 14:39:56.000000000 -0700
|
||||
+++ dyninst-12.3.0/cmake/warnings.cmake 2023-06-09 19:59:32.831350952 -0600
|
||||
@@ -127,6 +127,7 @@ endif()
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ID MATCHES "^(GNU|Clang)$")
|
||||
include(CheckCXXCompilerFlag)
|
||||
+ include(CheckCXXSourceCompiles)
|
||||
foreach(f IN LISTS REQUESTED_WARNING_FLAGS)
|
||||
string(REGEX REPLACE "[^a-zA-Z0-9]" "_" v "HAS_CPP_FLAG_${f}")
|
||||
set(CMAKE_REQUIRED_FLAGS "-${f}")
|
32
dyninst.spec
32
dyninst.spec
@ -2,19 +2,19 @@ Summary: An API for Run-time Code Generation
|
||||
License: LGPLv2+
|
||||
Name: dyninst
|
||||
Group: Development/Libraries
|
||||
Release: 5%{?dist}
|
||||
Release: 1%{?dist}
|
||||
URL: http://www.dyninst.org
|
||||
Version: 12.2.0
|
||||
Version: 12.3.0
|
||||
ExclusiveArch: %{ix86} x86_64 ppc64le aarch64
|
||||
|
||||
%define __testsuite_version 12.2.0
|
||||
%define __testsuite_version 12.3.0
|
||||
Source0: https://github.com/dyninst/dyninst/archive/v%{version}/dyninst-%{version}.tar.gz
|
||||
Source1: https://github.com/dyninst/testsuite/archive/%{__testsuite_version}/testsuite-%{__testsuite_version}.tar.gz
|
||||
Source1: https://github.com/dyninst/testsuite/archive/v%{__testsuite_version}/testsuite-%{__testsuite_version}.tar.gz
|
||||
|
||||
Patch1: dwarf-error.patch
|
||||
Patch2: cmdline.patch
|
||||
Patch3: rhbz2173030.patch
|
||||
Patch4: onetbb.patch
|
||||
Patch2: onetbb.patch
|
||||
# Support cmake 3.27 - https://github.com/dyninst/dyninst/pull/1438
|
||||
Patch3: dyninst-cmake3.27.patch
|
||||
|
||||
%global dyninst_base dyninst-%{version}
|
||||
%global testsuite_base testsuite-%{__testsuite_version}
|
||||
@ -83,16 +83,9 @@ making sure that dyninst works properly.
|
||||
%setup -q -T -D -a 1
|
||||
|
||||
pushd %{dyninst_base}
|
||||
%patch1 -p1 -b .dwerr
|
||||
popd
|
||||
|
||||
pushd %{testsuite_base}
|
||||
%patch2 -p1 -b .cmdline
|
||||
popd
|
||||
|
||||
pushd %{dyninst_base}
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch -P1 -p1 -b .dwerr
|
||||
%patch -P2 -p1 -b .onetbb
|
||||
%patch -P3 -p1 -b .cmake3.27
|
||||
popd
|
||||
|
||||
# cotire seems to cause non-deterministic gcc errors
|
||||
@ -195,6 +188,11 @@ find %{buildroot}%{_libdir}/dyninst/testsuite/ \
|
||||
%attr(644,root,root) %{_libdir}/dyninst/testsuite/*.a
|
||||
|
||||
%changelog
|
||||
|
||||
* Tue Jul 04 2023 Orion Poplawski <orion@nwra.com> - 12.3.0-1
|
||||
- Update to 12.3.0
|
||||
- Add patch for cmake 3.27 support
|
||||
|
||||
* Tue Jun 27 2023 Jonathan Wakely <jwakely@fedoraproject.org> - 12.2.0-5
|
||||
- Patch for oneTBB (#2036372)
|
||||
|
||||
|
77
onetbb.patch
77
onetbb.patch
@ -10,80 +10,3 @@
|
||||
foreach(f IN ITEMS ${_version_files})
|
||||
if(EXISTS ${f})
|
||||
set(_version_file ${f})
|
||||
--- dyninst-12.2.0/common/h/concurrent.h~ 2023-06-27 23:31:35.971166585 +0100
|
||||
+++ dyninst-12.2.0/common/h/concurrent.h 2023-06-27 23:32:31.889253848 +0100
|
||||
@@ -41,6 +41,22 @@
|
||||
#include <tbb/concurrent_vector.h>
|
||||
#include <tbb/concurrent_queue.h>
|
||||
|
||||
+#if __has_include(<tbb/version.h>)
|
||||
+#include <tbb/version.h>
|
||||
+#if TBB_INTERFACE_VERSION_MAJOR >= 12
|
||||
+// oneTBB version of tbb_hash_compare doesn't work for std::pair.
|
||||
+template<typename T, typename U>
|
||||
+struct tbb::tbb_hash_compare<std::pair<T, U>> {
|
||||
+ static size_t hash(const std::pair<T, U>& p) {
|
||||
+ return tbb_hash_compare<T>().hash(p.first) ^ tbb_hash_compare<U>().hash(p.second);
|
||||
+ }
|
||||
+ static bool equal(const std::pair<T, U>& p1, const std::pair<T, U>& p2) {
|
||||
+ return p1 == p2;
|
||||
+ }
|
||||
+};
|
||||
+#endif
|
||||
+#endif
|
||||
+
|
||||
namespace Dyninst {
|
||||
|
||||
namespace dyn_c_annotations {
|
||||
@@ -54,10 +70,10 @@
|
||||
|
||||
template<typename K, typename V>
|
||||
class dyn_c_hash_map : protected tbb::concurrent_hash_map<K, V,
|
||||
- tbb::tbb_hash_compare<K>, std::allocator<std::pair<K,V>>> {
|
||||
+ tbb::tbb_hash_compare<K>, std::allocator<std::pair<const K,V>>> {
|
||||
|
||||
typedef tbb::concurrent_hash_map<K, V,
|
||||
- tbb::tbb_hash_compare<K>, std::allocator<std::pair<K,V>>> base;
|
||||
+ tbb::tbb_hash_compare<K>, std::allocator<std::pair<const K,V>>> base;
|
||||
public:
|
||||
using typename base::value_type;
|
||||
using typename base::mapped_type;
|
||||
--- dyninst-12.2.0/symtabAPI/src/dwarfWalker.h~ 2023-06-27 23:49:03.290956830 +0100
|
||||
+++ dyninst-12.2.0/symtabAPI/src/dwarfWalker.h 2023-06-28 09:12:36.672398326 +0100
|
||||
@@ -35,22 +35,20 @@
|
||||
}
|
||||
}
|
||||
|
||||
-namespace tbb {
|
||||
- using namespace Dyninst::SymtabAPI;
|
||||
- template<>
|
||||
- struct tbb_hash_compare<type_key> {
|
||||
- static size_t hash(const type_key& k) {
|
||||
- size_t seed = 0;
|
||||
- boost::hash_combine(seed, k.off);
|
||||
- boost::hash_combine(seed, k.file);
|
||||
- boost::hash_combine(seed, static_cast<void *>(k.m));
|
||||
- return seed;
|
||||
- }
|
||||
- static bool equal(const type_key& k1, const type_key& k2) {
|
||||
- return (k1.off==k2.off && k1.file==k2.file && k1.m==k2.m);
|
||||
- }
|
||||
- };
|
||||
-}
|
||||
+template<>
|
||||
+struct tbb::tbb_hash_compare<Dyninst::SymtabAPI::type_key> {
|
||||
+ using type_key = Dyninst::SymtabAPI::type_key;
|
||||
+ static size_t hash(const type_key& k) {
|
||||
+ size_t seed = 0;
|
||||
+ boost::hash_combine(seed, k.off);
|
||||
+ boost::hash_combine(seed, k.file);
|
||||
+ boost::hash_combine(seed, static_cast<void *>(k.m));
|
||||
+ return seed;
|
||||
+ }
|
||||
+ static bool equal(const type_key& k1, const type_key& k2) {
|
||||
+ return (k1.off==k2.off && k1.file==k2.file && k1.m==k2.m);
|
||||
+ }
|
||||
+};
|
||||
|
||||
namespace Dyninst {
|
||||
namespace SymtabAPI {
|
||||
|
@ -1,88 +0,0 @@
|
||||
commit 358db4610e4919690d928797713bef3cf67ef61d
|
||||
gpg: Signature made Wed 22 Feb 2023 10:51:01 AM EST
|
||||
gpg: using RSA key 4AEE18F83AFDEB23
|
||||
gpg: Good signature from "GitHub (web-flow commit signing) <noreply@github.com>" [full]
|
||||
Author: kupsch <kupsch@cs.wisc.edu>
|
||||
Date: Wed Feb 22 09:51:01 2023 -0600
|
||||
|
||||
explicitly include <array> (#1384)
|
||||
|
||||
- std::array is used in this file, but not included explicitly as
|
||||
on many systems this header is implicitly included recursively
|
||||
via another included file. On new versions of headers this may
|
||||
no longer be the case, so explicitly include it.
|
||||
|
||||
diff --git a/instructionAPI/src/InstructionDecoder-aarch64.h b/instructionAPI/src/InstructionDecoder-aarch64.h
|
||||
index 7994d0b1cc81..ae516232a68b 100644
|
||||
--- a/instructionAPI/src/InstructionDecoder-aarch64.h
|
||||
+++ b/instructionAPI/src/InstructionDecoder-aarch64.h
|
||||
@@ -28,6 +28,7 @@
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
+#include <array>
|
||||
#include "InstructionDecoderImpl.h"
|
||||
#include <iostream>
|
||||
#include "Immediate.h"
|
||||
|
||||
commit 0cd2b8b7858f48cd60e070010bb6600a1f44180e
|
||||
gpg: Signature made Wed 22 Feb 2023 04:03:20 PM EST
|
||||
gpg: using RSA key 4AEE18F83AFDEB23
|
||||
gpg: Good signature from "GitHub (web-flow commit signing) <noreply@github.com>" [full]
|
||||
Author: Tim Haines <thaines.astro@gmail.com>
|
||||
Date: Wed Feb 22 15:03:20 2023 -0600
|
||||
|
||||
Add missing <array> includes (#1385)
|
||||
|
||||
These were showing up on ufront@rice.
|
||||
|
||||
diff --git a/instructionAPI/src/AMDGPU/cdna2/InstructionDecoder-amdgpu-cdna2.C b/instructionAPI/src/AMDGPU/cdna2/InstructionDecoder-amdgpu-cdna2.C
|
||||
index e852f47437a1..f62b1f5463e8 100644
|
||||
--- a/instructionAPI/src/AMDGPU/cdna2/InstructionDecoder-amdgpu-cdna2.C
|
||||
+++ b/instructionAPI/src/AMDGPU/cdna2/InstructionDecoder-amdgpu-cdna2.C
|
||||
@@ -30,6 +30,7 @@
|
||||
|
||||
#include "Ternary.h"
|
||||
#include "InstructionDecoder-amdgpu-cdna2.h"
|
||||
+#include <array>
|
||||
|
||||
namespace Dyninst {
|
||||
namespace InstructionAPI {
|
||||
diff --git a/instructionAPI/src/AMDGPU/vega/InstructionDecoder-amdgpu-vega.C b/instructionAPI/src/AMDGPU/vega/InstructionDecoder-amdgpu-vega.C
|
||||
index 449255ae00b4..3093ece41002 100644
|
||||
--- a/instructionAPI/src/AMDGPU/vega/InstructionDecoder-amdgpu-vega.C
|
||||
+++ b/instructionAPI/src/AMDGPU/vega/InstructionDecoder-amdgpu-vega.C
|
||||
@@ -30,6 +30,7 @@
|
||||
|
||||
#include "Ternary.h"
|
||||
#include "InstructionDecoder-amdgpu-vega.h"
|
||||
+#include <array>
|
||||
|
||||
namespace Dyninst {
|
||||
namespace InstructionAPI {
|
||||
commit 2e3bf92eedf575c780e4381ae810a050ee404f03
|
||||
gpg: Signature made Thu 05 Jan 2023 02:13:14 PM EST
|
||||
gpg: using RSA key 4AEE18F83AFDEB23
|
||||
gpg: Good signature from "GitHub (web-flow commit signing) <noreply@github.com>" [full]
|
||||
Author: kupsch <kupsch@cs.wisc.edu>
|
||||
Date: Thu Jan 5 13:13:14 2023 -0600
|
||||
|
||||
add missing include file (#1344)
|
||||
|
||||
- add missing #include <deque>
|
||||
|
||||
On more platforms and library combinations <deque> is included via
|
||||
some other header, but there is combination where this is not true
|
||||
|
||||
diff --git a/dataflowAPI/src/AbslocInterface.C b/dataflowAPI/src/AbslocInterface.C
|
||||
index 9d7ad000c2b6..582e64004967 100644
|
||||
--- a/dataflowAPI/src/AbslocInterface.C
|
||||
+++ b/dataflowAPI/src/AbslocInterface.C
|
||||
@@ -29,6 +29,7 @@
|
||||
*/
|
||||
|
||||
|
||||
+#include <deque>
|
||||
#include "Absloc.h"
|
||||
#include "AbslocInterface.h"
|
||||
|
4
sources
4
sources
@ -1,2 +1,2 @@
|
||||
SHA512 (dyninst-12.2.0.tar.gz) = 3c29b77bd2213c58ec0ccb04a8cc70314b66924a151f29b30de14d171cf5d61b53a323d97456e51687d02e6c6095bb8b0e6eab103a75f150507c4eb8657f258c
|
||||
SHA512 (testsuite-12.2.0.tar.gz) = 4510de4413989a558697c3cf7dbd742d2ccc2c31603f04ed87dc4d7d90908ba99a6993e1a84f820caadbbf46f190ce85c99bbb1030a1fac7022a662f8439bed5
|
||||
SHA512 (dyninst-12.3.0.tar.gz) = 894980c2ce0701c0544877e841e2933a59963eb49ff9b8cde17f67e300d618b77e9fc95f60301a4b8ecaee729010fbab3ec78ef6e2c2fcea118c56d26cb1c3ce
|
||||
SHA512 (testsuite-12.3.0.tar.gz) = c8d09395cc37ac1ebbd73049e365b703d1fc904d84b73c7749809d8f9dc36ce0b3b842a2fa9e28ba6ffda4e6d2aeb4ca70c2265d3cacc199db3d10c26a12df33
|
||||
|
Loading…
Reference in New Issue
Block a user