rebase to 8.2.0, using upstream tag "v8.2.0.1"
This commit is contained in:
parent
b893220fa5
commit
56ea310fe1
3
.gitignore
vendored
3
.gitignore
vendored
@ -3,3 +3,6 @@
|
||||
/dyninst-8.1.1.tar.gz
|
||||
/dyninst-docs-8.1.1.tar.gz
|
||||
/dyninst-8.1.2.tar.gz
|
||||
/dyninst-8.2.0.1.tar.gz
|
||||
/dyninst-docs-8.2.0.1.tar.gz
|
||||
/dyninst-testsuite-8.2.0.1.tar.gz
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff -up dyninst/testsuite/make.module.tmpl.testsuite-opt dyninst/testsuite/make.module.tmpl
|
||||
--- dyninst/testsuite/make.module.tmpl.testsuite-opt 2013-12-11 17:01:03.278606211 -0800
|
||||
+++ dyninst/testsuite/make.module.tmpl 2013-12-11 17:02:24.593743942 -0800
|
||||
@@ -23,7 +23,7 @@ LFLAGS = -L../../common/$(PLATFORM) -L..
|
||||
# Turn off NO_INITIALIZER_LIST_SUPPORT if we compile test suite with C++11
|
||||
CFLAGS = $(UNIFIED_TEST_DEF:%=%_test) $(ARCH_FLAGS) $(AC_DEF) $(FIRST_INCLUDE) $(IFLAGS) -I../src -g $(BOOST_INCDIR) $(CPPFLAGS)
|
||||
CXXFLAGS = $(CFLAGS)
|
||||
-CXXFLAGS += $(PLATFORM_CXXFLAGS) $(CXX_REQ_FLAGS)
|
||||
+CXXFLAGS += $(PLATFORM_CXXFLAGS) -std=c++11
|
||||
|
||||
CFLAGS_NATIVE = $(CFLAGS)
|
||||
CXXFLAGS_NATIVE = $(CXXFLAGS)
|
@ -1,24 +0,0 @@
|
||||
commit 67ce417eab034187f0ea952e78c547051da4b276
|
||||
Author: Josh Stone <jistone@redhat.com>
|
||||
Date: Tue Dec 3 14:03:21 2013 -0800
|
||||
|
||||
DatabaseOutputDriver: Print raw buffer via %s
|
||||
|
||||
This is needed to pass -Werror=format-security, which flagged this
|
||||
having passed the buffer as the format argument.
|
||||
|
||||
Ref: https://bugzilla.redhat.com/show_bug.cgi?id=1037048
|
||||
|
||||
diff --git a/src/DatabaseOutputDriver.C b/src/DatabaseOutputDriver.C
|
||||
index 0a866dbea458..2769d584e9be 100644
|
||||
--- a/src/DatabaseOutputDriver.C
|
||||
+++ b/src/DatabaseOutputDriver.C
|
||||
@@ -311,7 +311,7 @@ void DatabaseOutputDriver::writeSQLLog() {
|
||||
else
|
||||
buf.clear();
|
||||
|
||||
- fprintf(out, buf.c_str());
|
||||
+ fprintf(out, "%s", buf.c_str());
|
||||
delete [] buffer;
|
||||
}
|
||||
if (buf.rfind("RESULT:") == std::string::npos) {
|
@ -1,238 +0,0 @@
|
||||
commit 701eb936767886bfd7b8858e8e2151173f9dc6bd
|
||||
Author: Josh Stone <jistone@redhat.com>
|
||||
Date: Tue Feb 26 09:34:52 2013 -0800
|
||||
|
||||
Hack the testsuite into shape for installation
|
||||
|
||||
* testsuite/make.module.tmpl: Forgo rpath, and install all targets.
|
||||
* testsuite/src/runTests-utils.C (setupVars): Don't complain about the
|
||||
scripts dir, as it's not actually needed anyway.
|
||||
* testsuite/src/test_driver.C (getRTLibDir): Hack out the builddir path,
|
||||
and just use ../ (aka %{libdir}/dyninst/testsuite/../)
|
||||
|
||||
diff --git a/testsuite/make.module.tmpl b/testsuite/make.module.tmpl
|
||||
index 1d3ce2c..1c76d8f 100644
|
||||
--- a/testsuite/make.module.tmpl
|
||||
+++ b/testsuite/make.module.tmpl
|
||||
@@ -227,7 +227,7 @@ proccontrol_COMPONENT_LIB = $(LIBPROCCONTROLCOMP)
|
||||
SPACE :=
|
||||
SPACE +=
|
||||
#COMPONENT_LDFLAGS += $(subst $(SPACE),,-Wl,--enable-new-dtags$(ALL_COMP_DIRS:%=,-rpath,%))
|
||||
-COMPONENT_LDFLAGS += $(subst $(SPACE),,-Wl$(ALL_COMP_DIRS:%=,-rpath,%))
|
||||
+#COMPONENT_LDFLAGS += $(subst $(SPACE),,-Wl$(ALL_COMP_DIRS:%=,-rpath,%))
|
||||
|
||||
all: default
|
||||
|
||||
@@ -246,8 +246,19 @@ full: test-full
|
||||
### A list of all the targets we're building, for install purposes
|
||||
#######################################################################
|
||||
|
||||
-ALL_TARGETS_DEST = $(addprefix $(TEST_DEST)/,$(ALL_TARGETS))
|
||||
-LIBTESTSUITE_DEST = $(addprefix $(TEST_DEST)/,$(LIBTESTSUITE))
|
||||
+TEST_DEST ?= $(LIBRARY_DEST)/testsuite
|
||||
+
|
||||
+ALL_TARGETS = $(LIBTESTLAUNCH) $(LIBTESTSUITE) $(TESTLIBS)
|
||||
+ALL_TARGETS += $(MUTATORS) $(MUTATEES_MINIMUM)
|
||||
+ALL_TARGETS += $(DRIVERS) $(OUTPUT_DRIVERS) $(COMPONENTS)
|
||||
+
|
||||
+FULL_TARGETS = $(LIBTESTLAUNCH) $(LIBTESTSUITE) $(TESTLIBS)
|
||||
+FULL_TARGETS += $(MUTATORS) $(MUTATEES)
|
||||
+FULL_TARGETS += $(DRIVERS) $(OUTPUT_DRIVERS) $(COMPONENTS)
|
||||
+
|
||||
+ALL_TARGETS_DEST = $(addprefix $(TEST_DEST)/,$(ALL_TARGETS))
|
||||
+FULL_TARGETS_DEST = $(addprefix $(TEST_DEST)/,$(FULL_TARGETS))
|
||||
+LIBTESTSUITE_DEST = $(addprefix $(TEST_DEST)/,$(LIBTESTSUITE))
|
||||
|
||||
#######################################################################
|
||||
### Some pattern rules
|
||||
@@ -274,13 +285,11 @@ include make.mutators.gen
|
||||
|
||||
include make.solo_mutatee.gen
|
||||
|
||||
-mutatees:
|
||||
-
|
||||
-mutators:
|
||||
-
|
||||
-components:
|
||||
-
|
||||
-testlibs:
|
||||
+MUTATEES =
|
||||
+MUTATEES_MINIMUM =
|
||||
+MUTATORS =
|
||||
+COMPONENTS =
|
||||
+TESTLIBS =
|
||||
|
||||
#######################################################################
|
||||
### Filter results, if needed
|
||||
@@ -296,13 +305,13 @@ include $(TO_CORE)/make.components
|
||||
|
||||
ifneq ($(wildcard ../src/dyninst), )
|
||||
ifneq ($(findstring dyninstAPI,$(fullSystem)),)
|
||||
-mutatees: $(filter-out $(BUILD_FILTER), $(dyninst_SOLO_MUTATEES))
|
||||
-mutatees_minimum: $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(dyninst_SOLO_MUTATEES)))
|
||||
-mutators: $(dyninst_MUTATORS_SO)
|
||||
-components: $(LIBDYNINSTCOMP)
|
||||
-testlibs: $(DYNINST_TESTLIBS) $(DYNINST_STATIC_TESTLIBS)
|
||||
+MUTATEES += $(filter-out $(BUILD_FILTER), $(dyninst_SOLO_MUTATEES))
|
||||
+MUTATEES_MINIMUM += $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(dyninst_SOLO_MUTATEES)))
|
||||
+MUTATORS += $(dyninst_MUTATORS_SO)
|
||||
+COMPONENTS += $(LIBDYNINSTCOMP)
|
||||
+TESTLIBS += $(DYNINST_TESTLIBS) $(DYNINST_STATIC_TESTLIBS)
|
||||
ifndef SKIP_BUILD_RTLIB_32
|
||||
-testlibs: $(DYNINST_TESTLIBS_ABI) $(DYNINST_STATIC_TESTLIBS_ABI)
|
||||
+TESTLIBS += $(DYNINST_TESTLIBS_ABI) $(DYNINST_STATIC_TESTLIBS_ABI)
|
||||
dyninst_targs = $(DYNINST_TESTLIBS_ABI) $(DYNINST_STATIC_TESTLIBS_ABI)
|
||||
endif
|
||||
dyninst_targs += $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(dyninst_SOLO_MUTATEES)))
|
||||
@@ -312,11 +321,11 @@ endif
|
||||
|
||||
ifneq ($(wildcard ../src/symtab), )
|
||||
ifneq ($(findstring symtabAPI,$(fullSystem)),)
|
||||
-mutatees: $(filter-out $(BUILD_FILTER), $(symtab_SOLO_MUTATEES))
|
||||
-mutatees_minimum: $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(symtab_SOLO_MUTATEES)))
|
||||
-mutators: $(symtab_MUTATORS_SO)
|
||||
-components: $(LIBSYMTABCOMP)
|
||||
-testlibs: $(DYNINST_TESTLIBS) $(DYNINST_STATIC_TESTLIBS)
|
||||
+MUTATEES += $(filter-out $(BUILD_FILTER), $(symtab_SOLO_MUTATEES))
|
||||
+MUTATEES_MINIMUM += $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(symtab_SOLO_MUTATEES)))
|
||||
+MUTATORS += $(symtab_MUTATORS_SO)
|
||||
+COMPONENTS += $(LIBSYMTABCOMP)
|
||||
+TESTLIBS += $(DYNINST_TESTLIBS) $(DYNINST_STATIC_TESTLIBS)
|
||||
symtab_targs = $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(symtab_SOLO_MUTATEES)))
|
||||
symtab_targs = $(symtab_MUTATORS_SO) $(LIBSYMTABCOMP)
|
||||
endif
|
||||
@@ -324,12 +333,12 @@ endif
|
||||
|
||||
ifneq ($(wildcard ../src/instruction), )
|
||||
ifneq ($(findstring instructionAPI,$(fullSystem)),)
|
||||
-mutatees: $(filter-out $(BUILD_FILTER), $(instruction_SOLO_MUTATEES))
|
||||
-mutatees_minimum: $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(instruction_SOLO_MUTATEES)))
|
||||
-mutators: $(instruction_MUTATORS_SO)
|
||||
+MUTATEES += $(filter-out $(BUILD_FILTER), $(instruction_SOLO_MUTATEES))
|
||||
+MUTATEES_MINIMUM += $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(instruction_SOLO_MUTATEES)))
|
||||
+MUTATORS += $(instruction_MUTATORS_SO)
|
||||
ifneq ($(instruction_MUTATORS_SO), )
|
||||
-components: $(LIBINSTRUCTIONCOMP)
|
||||
-testlibs:
|
||||
+COMPONENTS += $(LIBINSTRUCTIONCOMP)
|
||||
+TESTLIBS +=
|
||||
instruction_targs = $(LIBINSTRUCTIONCOMP)
|
||||
endif
|
||||
instruction_targs += $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(instruction_SOLO_MUTATEES)))
|
||||
@@ -339,12 +348,12 @@ endif
|
||||
|
||||
ifneq ($(wildcard ../src/proccontrol), )
|
||||
ifneq ($(findstring proccontrol,$(fullSystem)),)
|
||||
-mutatees: $(filter-out $(BUILD_FILTER), $(proccontrol_SOLO_MUTATEES))
|
||||
-mutatees_minimum: $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(proccontrol_SOLO_MUTATEES)))
|
||||
-mutators: $(proccontrol_MUTATORS_SO)
|
||||
+MUTATEES += $(filter-out $(BUILD_FILTER), $(proccontrol_SOLO_MUTATEES))
|
||||
+MUTATEES_MINIMUM += $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(proccontrol_SOLO_MUTATEES)))
|
||||
+MUTATORS += $(proccontrol_MUTATORS_SO)
|
||||
ifneq ($(proccontrol_MUTATORS_SO), )
|
||||
-components: $(LIBPROCCONTROLCOMP)
|
||||
-testlibs: $(PROCCONTROL_TESTLIBS) $(PROCCONTROL_TESTLIBS_ABI) $(DYNINST_TESTLIBS) $(DYNINST_TESTLIBS_ABI)
|
||||
+COMPONENTS += $(LIBPROCCONTROLCOMP)
|
||||
+TESTLIBS += $(PROCCONTROL_TESTLIBS) $(PROCCONTROL_TESTLIBS_ABI) $(DYNINST_TESTLIBS) $(DYNINST_TESTLIBS_ABI)
|
||||
proccontrol_targs = $(LIBPROCCONTROLCOMP) $(PROCCONTROL_TESTLIBS) $(PROCCONTROL_TESTLIBS_ABI) $(DYNINST_TESTLIBS) $(DYNINST_TESTLIBS_ABI)
|
||||
endif
|
||||
proccontrol_targs += $(filter-out $(BUILD_FILTER), $(filter-out $(MINIMUM_BUILD_FILTER), $(proccontrol_SOLO_MUTATEES)))
|
||||
@@ -352,6 +361,16 @@ proccontrol_targs += $(proccontrol_MUTATORS_SO)
|
||||
endif
|
||||
endif
|
||||
|
||||
+mutatees: $(MUTATEES)
|
||||
+
|
||||
+mutatees_minimum: $(MUTATEES_MINIMUM)
|
||||
+
|
||||
+mutators: $(MUTATORS)
|
||||
+
|
||||
+components: $(COMPONENTS)
|
||||
+
|
||||
+testlibs: $(TESTLIBS)
|
||||
+
|
||||
common_infra: drivers output_drivers
|
||||
|
||||
dyninstAPI: common_infra $(dyninst_targs) $(symtab_targs) $(instruction_targs) $(proccontrol_targs)
|
||||
@@ -362,7 +381,13 @@ instructionAPI: common_infra $(instruction_targs)
|
||||
|
||||
proccontrol: common_infra $(proccontrol_targs)
|
||||
|
||||
-install: default
|
||||
+install: $(TEST_DEST)
|
||||
+
|
||||
+install-full: $(TEST_DEST)
|
||||
+
|
||||
+$(TEST_DEST)/%: %
|
||||
+ @echo Installing $@
|
||||
+ $(HIDE_COMP)$(INSTALL) -t $(TEST_DEST) $<
|
||||
|
||||
symlink: all
|
||||
|
||||
@@ -412,7 +437,8 @@ endif
|
||||
|
||||
testlibs: $(LIBTESTSUITE)
|
||||
|
||||
-drivers: test_driver runTests testdriver_wrapper
|
||||
+DRIVERS = test_driver runTests testdriver_wrapper
|
||||
+drivers: $(DRIVERS)
|
||||
|
||||
.PHONY: clean install distclean mutators mutatees testlibs gnu_mutatees native_mutatees echo all
|
||||
|
||||
@@ -566,7 +592,8 @@ endif
|
||||
|
||||
# Install directory
|
||||
$(TEST_DEST):
|
||||
- mkdir $(TEST_DEST)
|
||||
+ @echo Installing $@
|
||||
+ $(HIDE_COMP)$(INSTALL) -d $(TEST_DEST)
|
||||
|
||||
#######################################################################
|
||||
### Generic Mutator build rule:
|
||||
@@ -857,3 +884,6 @@ endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
+
|
||||
+install: $(ALL_TARGETS_DEST)
|
||||
+install-full: $(FULL_TARGETS_DEST)
|
||||
diff --git a/testsuite/src/runTests-utils.C b/testsuite/src/runTests-utils.C
|
||||
index 0f54874..02bd505 100644
|
||||
--- a/testsuite/src/runTests-utils.C
|
||||
+++ b/testsuite/src/runTests-utils.C
|
||||
@@ -403,12 +403,14 @@ void setupVars(bool useLog, string &logfile)
|
||||
}
|
||||
|
||||
pdscrdir = base_dir + "/dyninst/scripts";
|
||||
+#if 0
|
||||
if ( ! isDir(pdscrdir) )
|
||||
{
|
||||
cerr << pdscrdir << " does not exist. Paradyn scripts dir required."
|
||||
<< endl;
|
||||
exit(1);
|
||||
}
|
||||
+#endif
|
||||
|
||||
// Determine Test log dir
|
||||
char *pdtst = getenv("PDTST");
|
||||
diff --git a/testsuite/src/test_driver.C b/testsuite/src/test_driver.C
|
||||
index 0fc3117..31def33 100644
|
||||
--- a/testsuite/src/test_driver.C
|
||||
+++ b/testsuite/src/test_driver.C
|
||||
@@ -805,6 +805,8 @@ void updateSearchPaths(const char *filename) {
|
||||
}
|
||||
|
||||
std::string getRTLibDir() {
|
||||
+ return "../";
|
||||
+#if 0
|
||||
char *platform = getenv("PLATFORM");
|
||||
char cwd[1024];
|
||||
if (!platform) {
|
||||
@@ -822,6 +824,7 @@ std::string getRTLibDir() {
|
||||
std::string rtlib = "../../dyninstAPI_RT/";
|
||||
rtlib += platform;
|
||||
return rtlib;
|
||||
+#endif
|
||||
}
|
||||
|
||||
#if !defined(os_windows_test)
|
@ -1,48 +0,0 @@
|
||||
diff -up dyninst/proccontrol/src/linux.C.orig dyninst/proccontrol/src/linux.C
|
||||
--- dyninst/proccontrol/src/linux.C.orig 2013-06-18 11:34:02.000000000 -0400
|
||||
+++ dyninst/proccontrol/src/linux.C 2013-08-05 12:16:35.172000000 -0400
|
||||
@@ -1970,7 +1970,7 @@ bool linux_thread::plat_getRegister(Dyni
|
||||
const unsigned size = i->second.second;
|
||||
assert(sizeof(val) >= size);
|
||||
val = 0;
|
||||
- unsigned long result = do_ptrace((pt_req) PTRACE_PEEKUSR, lwp, (void *) offset, NULL);
|
||||
+ unsigned long result = do_ptrace((pt_req) PTRACE_PEEKUSER, lwp, (void *) offset, NULL);
|
||||
if (errno != 0) {
|
||||
perr_printf("Error reading registers from %d: %s\n", lwp, strerror(errno));
|
||||
setLastError(err_internal, "Could not read register from thread");
|
||||
@@ -2184,11 +2184,11 @@ bool linux_thread::plat_setRegister(Dyni
|
||||
int result;
|
||||
if (size == 4) {
|
||||
uint32_t value = (uint32_t) val;
|
||||
- result = do_ptrace((pt_req) PTRACE_POKEUSR, lwp, (void *) offset, (void *) value);
|
||||
+ result = do_ptrace((pt_req) PTRACE_POKEUSER, lwp, (void *) offset, (void *) value);
|
||||
}
|
||||
else if (size == 8) {
|
||||
uint64_t value = (uint64_t) val;
|
||||
- result = do_ptrace((pt_req) PTRACE_POKEUSR, lwp, (void *) offset, (void *) value);
|
||||
+ result = do_ptrace((pt_req) PTRACE_POKEUSER, lwp, (void *) offset, (void *) value);
|
||||
}
|
||||
else {
|
||||
assert(0);
|
||||
diff -up dyninst/proccontrol/src/linux.h.orig dyninst/proccontrol/src/linux.h
|
||||
--- dyninst/proccontrol/src/linux.h.orig 2013-06-18 11:34:02.000000000 -0400
|
||||
+++ dyninst/proccontrol/src/linux.h 2013-08-05 12:16:35.173000000 -0400
|
||||
@@ -47,7 +47,6 @@
|
||||
#include "common/h/dthread.h"
|
||||
#include <sys/types.h>
|
||||
#include <sys/ptrace.h>
|
||||
-#include <linux/ptrace.h>
|
||||
|
||||
typedef enum __ptrace_request pt_req;
|
||||
|
||||
diff -up dyninst/stackwalk/src/linux-swk.C.orig dyninst/stackwalk/src/linux-swk.C
|
||||
--- dyninst/stackwalk/src/linux-swk.C.orig 2013-06-18 11:34:02.000000000 -0400
|
||||
+++ dyninst/stackwalk/src/linux-swk.C 2013-08-05 12:16:35.175000000 -0400
|
||||
@@ -73,7 +73,6 @@ using namespace Dyninst::Stackwalker;
|
||||
// if porting to some linux-like platform that doesn't support
|
||||
// them.
|
||||
#include <sys/ptrace.h>
|
||||
-#include <linux/ptrace.h>
|
||||
typedef enum __ptrace_request pt_req;
|
||||
#define cap_ptrace_traceclone
|
||||
#define cap_ptrace_setoptions
|
@ -1,14 +0,0 @@
|
||||
--- dyninst/make.config.buildflags 2013-02-14 11:23:18.717002871 -0800
|
||||
+++ dyninst/make.config 2013-02-14 11:23:46.588871846 -0800
|
||||
@@ -570,9 +570,9 @@ ifeq (ppc64_linux, $(findstring ppc64_li
|
||||
endif
|
||||
|
||||
# flags for normal (non-kludge) files, with common warnings
|
||||
-CFLAGS = $(IFLAGS) $(UNIFIED_DEF) $(OPT_FLAG) $(COMMON_WARNINGS) $(ARCH_FLAGS)
|
||||
+CFLAGS += $(IFLAGS) $(UNIFIED_DEF) $(OPT_FLAG) $(COMMON_WARNINGS) $(ARCH_FLAGS)
|
||||
CXXFLAGS += $(IFLAGS) $(UNIFIED_DEF) $(OPT_FLAG) $(COMMON_WARNINGS) $(STDINT_MACROS) $(ARCH_FLAGS)
|
||||
-LDFLAGS = $(ARCH_FLAGS)
|
||||
+LDFLAGS += $(ARCH_FLAGS)
|
||||
|
||||
# flags for kludge files, won't have warnings generated
|
||||
KFLAGS = $(IFLAGS) $(UNIFIED_DEF) $(BASICWARNINGS)
|
89
dyninst.spec
89
dyninst.spec
@ -2,9 +2,9 @@ Summary: An API for Run-time Code Generation
|
||||
License: LGPLv2+
|
||||
Name: dyninst
|
||||
Group: Development/Libraries
|
||||
Release: 11%{?dist}
|
||||
Release: 1%{?dist}
|
||||
URL: http://www.dyninst.org
|
||||
Version: 8.1.2
|
||||
Version: 8.2.0
|
||||
Exclusiveos: linux
|
||||
#dyninst only knows the following architectures
|
||||
ExclusiveArch: %{ix86} x86_64 ppc ppc64
|
||||
@ -12,22 +12,23 @@ ExclusiveArch: %{ix86} x86_64 ppc ppc64
|
||||
# The source for this package was pulled from upstream's vcs. Use the
|
||||
# following commands to generate the tarball:
|
||||
# git clone http://git.dyninst.org/dyninst.git; cd dyninst
|
||||
# git archive --format=tar.gz --prefix=dyninst/ v8.1.2 > dyninst-8.1.2.tar.gz
|
||||
# git archive --format=tar.gz --prefix=dyninst/ v8.2.0.1 > dyninst-8.2.0.1.tar.gz
|
||||
# git clone http://git.dyninst.org/docs.git; cd docs
|
||||
# git archive --format=tar.gz v8.1.1 > dyninst-docs-8.1.1.tar.gz
|
||||
# git archive --format=tar.gz --prefix=docs/ v8.2.0.1 > dyninst-docs-8.2.0.1.tar.gz
|
||||
# git clone http://git.dyninst.org/testsuite.git; cd testsuite
|
||||
# git archive --format=tar.gz --prefix=testsuite/ v8.2.0.1 > dyninst-testsuite-8.2.0.1.tar.gz
|
||||
# Verify the commit ids with:
|
||||
# gunzip -c dyninst-8.1.2.tar.gz | git get-tar-commit-id
|
||||
# gunzip -c dyninst-docs-8.1.1.tar.gz | git get-tar-commit-id
|
||||
Source0: %{name}-%{version}.tar.gz
|
||||
Source1: %{name}-docs-8.1.1.tar.gz
|
||||
Patch1: dyninst-rpm-build-flags.patch
|
||||
Patch2: dyninst-install-testsuite.patch
|
||||
Patch3: dyninst-pokeuser.patch
|
||||
Patch4: dyninst-Werror-format-security.patch
|
||||
Patch5: dyninst-8.1.2-testsuite-opt.patch
|
||||
# gunzip -c dyninst-8.2.0.1.tar.gz | git get-tar-commit-id
|
||||
# gunzip -c dyninst-docs-8.2.0.1.tar.gz | git get-tar-commit-id
|
||||
# gunzip -c dyninst-testsuite-8.2.0.1.tar.gz | git get-tar-commit-id
|
||||
Source0: dyninst-%{version}.1.tar.gz
|
||||
Source1: dyninst-docs-%{version}.1.tar.gz
|
||||
Source2: dyninst-testsuite-%{version}.1.tar.gz
|
||||
BuildRequires: libdwarf-devel >= 20111030
|
||||
BuildRequires: elfutils-libelf-devel
|
||||
BuildRequires: boost-devel
|
||||
BuildRequires: binutils-devel
|
||||
BuildRequires: cmake
|
||||
|
||||
# Extra requires just for the testsuite
|
||||
BuildRequires: gcc-gfortran glibc-static libstdc++-static nasm
|
||||
@ -60,6 +61,7 @@ Summary: Header files for the compiling programs with Dyninst
|
||||
Group: Development/System
|
||||
Requires: dyninst = %{version}-%{release}
|
||||
Requires: boost-devel
|
||||
|
||||
%description devel
|
||||
dyninst-devel includes the C header files that specify the Dyninst user-space
|
||||
libraries and interfaces. This is required for rebuilding any program
|
||||
@ -76,7 +78,10 @@ the dyninst user-space libraries and interfaces.
|
||||
%package testsuite
|
||||
Summary: Programs for testing Dyninst
|
||||
Group: Development/System
|
||||
Requires: dyninst = %{version}-%{release}
|
||||
Requires: dyninst-devel = %{version}-%{release}
|
||||
Requires: dyninst-static = %{version}-%{release}
|
||||
Requires: glibc-static
|
||||
%description testsuite
|
||||
dyninst-testsuite includes the test harness and target programs for
|
||||
making sure that dyninst works properly.
|
||||
@ -84,28 +89,40 @@ making sure that dyninst works properly.
|
||||
%prep
|
||||
%setup -q -n %{name}-%{version} -c
|
||||
%setup -q -T -D -a 1
|
||||
|
||||
pushd dyninst
|
||||
%patch1 -p1 -b .buildflags
|
||||
%patch2 -p1 -b .testsuite
|
||||
%patch3 -p1 -b .pokeuser
|
||||
%patch4 -p1 -d testsuite -b .format-security
|
||||
%patch5 -p1 -b .testsuite-opt
|
||||
popd
|
||||
|
||||
%setup -q -T -D -a 2
|
||||
|
||||
%build
|
||||
|
||||
cd dyninst
|
||||
|
||||
%configure --includedir=%{_includedir}/dyninst --libdir=%{_libdir}/dyninst
|
||||
make %{?_smp_mflags} VERBOSE_COMPILATION=1
|
||||
%cmake \
|
||||
-DINSTALL_LIB_DIR:PATH=%{_libdir}/dyninst \
|
||||
-DINSTALL_INCLUDE_DIR:PATH=%{_includedir}/dyninst \
|
||||
-DINSTALL_CMAKE_DIR:PATH=%{_libdir}/cmake/Dyninst \
|
||||
-DCMAKE_SKIP_RPATH:BOOL=YES
|
||||
make %{?_smp_mflags}
|
||||
|
||||
# Hack to install dyninst nearby, so the testsuite can use it
|
||||
make DESTDIR=../install install
|
||||
sed -i -e 's!%{_libdir}/dyninst!../install%{_libdir}/dyninst!' \
|
||||
../install%{_libdir}/cmake/Dyninst/*.cmake
|
||||
|
||||
cd ../testsuite
|
||||
%cmake \
|
||||
-DDyninst_DIR:PATH=../install%{_libdir}/cmake/Dyninst \
|
||||
-DINSTALL_DIR:PATH=%{_libdir}/dyninst/testsuite \
|
||||
-DCMAKE_BUILD_TYPE:STRING=Debug \
|
||||
-DCMAKE_SKIP_RPATH:BOOL=YES
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
|
||||
cd dyninst
|
||||
make DESTDIR=%{buildroot} install
|
||||
|
||||
cd ../testsuite
|
||||
make DESTDIR=%{buildroot} install
|
||||
|
||||
mkdir -p %{buildroot}/etc/ld.so.conf.d
|
||||
echo "%{_libdir}/dyninst" > %{buildroot}/etc/ld.so.conf.d/%{name}-%{_arch}.conf
|
||||
|
||||
@ -135,19 +152,22 @@ chmod 644 %{buildroot}%{_libdir}/dyninst/testsuite/*
|
||||
|
||||
%files doc
|
||||
%defattr(-,root,root,-)
|
||||
%doc dynC_API.pdf
|
||||
%doc DyninstAPI.pdf
|
||||
%doc InstructionAPI.pdf
|
||||
%doc ParseAPI.pdf
|
||||
%doc PatchAPI.pdf
|
||||
%doc ProcControlAPI.pdf
|
||||
%doc StackwalkerAPI.pdf
|
||||
%doc SymtabAPI.pdf
|
||||
%doc docs/dynC_API.pdf
|
||||
%doc docs/DyninstAPI.pdf
|
||||
%doc docs/dyninstAPI/examples/
|
||||
%doc docs/InstructionAPI.pdf
|
||||
%doc docs/ParseAPI.pdf
|
||||
%doc docs/PatchAPI.pdf
|
||||
%doc docs/ProcControlAPI.pdf
|
||||
%doc docs/StackwalkerAPI.pdf
|
||||
%doc docs/SymtabAPI.pdf
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
%{_includedir}/dyninst
|
||||
%{_libdir}/dyninst/*.so
|
||||
%dir %{_libdir}/cmake
|
||||
%{_libdir}/cmake/Dyninst
|
||||
|
||||
%files static
|
||||
%defattr(-,root,root,-)
|
||||
@ -155,12 +175,15 @@ chmod 644 %{buildroot}%{_libdir}/dyninst/testsuite/*
|
||||
|
||||
%files testsuite
|
||||
%defattr(-,root,root,-)
|
||||
%{_bindir}/parseThat
|
||||
#%{_bindir}/parseThat
|
||||
%dir %{_libdir}/dyninst/testsuite/
|
||||
# Restore the permissions that were hacked out above, during install.
|
||||
%attr(755,root,root) %{_libdir}/dyninst/testsuite/*
|
||||
|
||||
%changelog
|
||||
* Wed Aug 20 2014 Josh Stone <jistone@redhat.com> - 8.2.0-1
|
||||
- rebase to 8.2.0, using upstream tag "v8.2.0.1"
|
||||
|
||||
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 8.1.2-11
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
||||
|
||||
|
5
sources
5
sources
@ -1,2 +1,3 @@
|
||||
73d258f60bf773ceb7d7f8d272446e95 dyninst-docs-8.1.1.tar.gz
|
||||
e8c2ac1629dc9165ddc8ca35ba727637 dyninst-8.1.2.tar.gz
|
||||
a135ef4fe73c39f06c8215b0f6dc844c dyninst-8.2.0.1.tar.gz
|
||||
309897bf21a58007b61c3da7a7e9e4da dyninst-docs-8.2.0.1.tar.gz
|
||||
3a675debbf201c86a616b1c3262972f4 dyninst-testsuite-8.2.0.1.tar.gz
|
||||
|
Loading…
Reference in New Issue
Block a user