summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick McLean <patrick.mclean@sony.com>2019-07-15 11:11:58 -0700
committerPatrick McLean <chutzpah@gentoo.org>2019-07-15 11:11:58 -0700
commit13a95ec5a587ca4db5f699e873b36efcb5d60979 (patch)
tree4a687f1e3e93fccf06b2f2018c6095b6e340ea47 /dev-util
parentsys-libs/kpmcore: Restrict tests, need polkit etc. (diff)
downloadgentoo-13a95ec5a587ca4db5f699e873b36efcb5d60979.tar.gz
gentoo-13a95ec5a587ca4db5f699e873b36efcb5d60979.tar.bz2
gentoo-13a95ec5a587ca4db5f699e873b36efcb5d60979.zip
dev-util/trace-cmd: Version bump to 2.8, update 9999
Copyright: Sony Interactive Entertainment Inc. Package-Manager: Portage-2.3.69, Repoman-2.3.16 Signed-off-by: Patrick McLean <chutzpah@gentoo.org>
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/trace-cmd/Manifest1
-rw-r--r--dev-util/trace-cmd/files/trace-cmd-2.8-python-pkgconfig-name.patch27
-rw-r--r--dev-util/trace-cmd/files/trace-cmd-2.8-python3-warnings.patch111
-rw-r--r--dev-util/trace-cmd/files/trace-cmd-2.8-soname.patch13
-rw-r--r--dev-util/trace-cmd/trace-cmd-2.8.ebuild110
-rw-r--r--dev-util/trace-cmd/trace-cmd-9999.ebuild59
6 files changed, 305 insertions, 16 deletions
diff --git a/dev-util/trace-cmd/Manifest b/dev-util/trace-cmd/Manifest
index 5c3fead0ec38..8aabb8d3f872 100644
--- a/dev-util/trace-cmd/Manifest
+++ b/dev-util/trace-cmd/Manifest
@@ -1 +1,2 @@
DIST trace-cmd-v2.7.tar.gz 1865571 BLAKE2B e0df57c78c6505c856381f17cfdecdaa7a4441eee4cfc57af4fff79a0157ca7aa7c76a81428ddf8d9d00d6bb0a5391b99d4bb5f92fadc7e4062a0181facb2cc9 SHA512 e507eb6609f1fd3dddec541e9f69c466f4f3f66c28f0a7f4292615e3984cebaaf42725f3d82b8c625e5c60977d1f9b5e96cce7664b951eb5f99b955cc440efe4
+DIST trace-cmd-v2.8.tar.gz 1996407 BLAKE2B 6a9a0b221418d448f5af5508bf8acf0baca08e0cdd8c1a835a06d26f5f729608d6988f7ed83ccdc9e117ade19893fa32c2400a61c2d396804cd042bc25cd498a SHA512 0675c057e78878a0f56ee69edfe7ab4b771fd5346920fcd3ad4af777180fae311cc369dc3faa6cd49d30664401497d20e45a0cf1914805139116e3be8587e0a7
diff --git a/dev-util/trace-cmd/files/trace-cmd-2.8-python-pkgconfig-name.patch b/dev-util/trace-cmd/files/trace-cmd-2.8-python-pkgconfig-name.patch
new file mode 100644
index 000000000000..17c2e693f1c0
--- /dev/null
+++ b/dev-util/trace-cmd/files/trace-cmd-2.8-python-pkgconfig-name.patch
@@ -0,0 +1,27 @@
+diff --git a/Makefile b/Makefile
+index d34c615..7931c88 100644
+--- a/Makefile
++++ b/Makefile
+@@ -115,9 +115,10 @@ PYTHON := ctracecmd.so
+ PYTHON_GUI := ctracecmd.so ctracecmdgui.so
+
+ PYTHON_VERS ?= python
++PYTHON_PKGCONFIG_VERS ?= $(PYTHON_VERS)
+
+ # Can build python?
+-ifeq ($(shell sh -c "pkg-config --cflags $(PYTHON_VERS) > /dev/null 2>&1 && echo y"), y)
++ifeq ($(shell sh -c "pkg-config --cflags $(PYTHON_PKGCONFIG_VERS) > /dev/null 2>&1 && echo y"), y)
+ PYTHON_PLUGINS := plugin_python.so
+ BUILD_PYTHON := $(PYTHON) $(PYTHON_PLUGINS)
+ BUILD_PYTHON_WORKS := 1
+@@ -372,8 +373,8 @@ report_nopythondev: force
+ $(Q)echo
+
+ ifndef NO_PYTHON
+-PYTHON_INCLUDES = `pkg-config --cflags $(PYTHON_VERS)`
+-PYTHON_LDFLAGS = `pkg-config --libs $(PYTHON_VERS)` \
++PYTHON_INCLUDES = `pkg-config --cflags $(PYTHON_PKGCONFIG_VERS)`
++PYTHON_LDFLAGS = `pkg-config --libs $(PYTHON_PKGCONFIG_VERS)` \
+ $(shell $(PYTHON_VERS)-config --ldflags)
+ PYGTK_CFLAGS = `pkg-config --cflags pygtk-2.0`
+ else
diff --git a/dev-util/trace-cmd/files/trace-cmd-2.8-python3-warnings.patch b/dev-util/trace-cmd/files/trace-cmd-2.8-python3-warnings.patch
new file mode 100644
index 000000000000..d66ee35accf9
--- /dev/null
+++ b/dev-util/trace-cmd/files/trace-cmd-2.8-python3-warnings.patch
@@ -0,0 +1,111 @@
+diff --git a/plugins/plugin_python.c b/plugins/plugin_python.c
+index e725ad8..196b825 100644
+--- a/plugins/plugin_python.c
++++ b/plugins/plugin_python.c
+@@ -81,7 +81,7 @@ int TEP_PLUGIN_LOADER(struct tep_handle *pevent)
+ } else
+ Py_DECREF(res);
+
+- str = PyString_FromString("pevent");
++ str = PyUnicode_FromString("pevent");
+ if (!str)
+ return -ENOMEM;
+
+diff --git a/python/ctracecmd.i b/python/ctracecmd.i
+index 65a3d51..031e462 100644
+--- a/python/ctracecmd.i
++++ b/python/ctracecmd.i
+@@ -16,6 +16,7 @@
+ %{
+ #include "trace-cmd.h"
+ #include "event-utils.h"
++#include <Python.h>
+ %}
+
+
+@@ -108,7 +109,7 @@ static PyObject *py_field_get_stack(struct tep_handle *pevent,
+ ((int)addr == -1))
+ break;
+ func = tep_find_function(event->tep, addr);
+- if (PyList_Append(list, PyString_FromString(func))) {
++ if (PyList_Append(list, PyUnicode_FromString(func))) {
+ Py_DECREF(list);
+ return NULL;
+ }
+@@ -137,10 +138,10 @@ static PyObject *py_field_get_data(struct tep_format_field *f, struct tep_record
+ offset = val & 0xffff;
+ len = val >> 16;
+
+- return PyBuffer_FromMemory((char *)r->data + offset, len);
++ return PyMemoryView_FromMemory((char *)r->data + offset, len, PyBUF_READ);
+ }
+
+- return PyBuffer_FromMemory((char *)r->data + f->offset, f->size);
++ return PyMemoryView_FromMemory((char *)r->data + f->offset, f->size, PyBUF_READ);
+ }
+
+ static PyObject *py_field_get_str(struct tep_format_field *f, struct tep_record *r)
+@@ -162,10 +163,10 @@ static PyObject *py_field_get_str(struct tep_format_field *f, struct tep_record
+ */
+ offset = val & 0xffff;
+
+- return PyString_FromString((char *)r->data + offset);
++ return PyUnicode_FromString((char *)r->data + offset);
+ }
+
+- return PyString_FromStringAndSize((char *)r->data + f->offset,
++ return PyUnicode_FromStringAndSize((char *)r->data + f->offset,
+ strnlen((char *)r->data + f->offset, f->size));
+ }
+
+@@ -177,7 +178,7 @@ static PyObject *py_format_get_keys(struct tep_event *ef)
+ list = PyList_New(0);
+
+ for (f = ef->format.fields; f; f = f->next) {
+- if (PyList_Append(list, PyString_FromString(f->name))) {
++ if (PyList_Append(list, PyUnicode_FromString(f->name))) {
+ Py_DECREF(list);
+ return NULL;
+ }
+@@ -210,14 +211,14 @@ static int python_callback(struct trace_seq *s,
+ result = PyEval_CallObject(context, arglist);
+ Py_XDECREF(arglist);
+ if (result && result != Py_None) {
+- if (!PyInt_Check(result)) {
++ if (!PyLong_Check(result)) {
+ PyErr_SetString(PyExc_TypeError,
+ "callback must return int");
+ PyErr_Print();
+ Py_XDECREF(result);
+ return 0;
+ }
+- r = PyInt_AS_LONG(result);
++ r = PyLong_AsLong(result);
+ } else if (result == Py_None)
+ r = 0;
+ else
+diff --git a/python/ctracecmdgui.i b/python/ctracecmdgui.i
+index 1dcdab0..8ca38f7 100644
+--- a/python/ctracecmdgui.i
++++ b/python/ctracecmdgui.i
+@@ -7,6 +7,7 @@
+ #include <pygobject.h>
+ #include <pyglib.h>
+ #include <Python.h>
++#include <memoryobject.h>
+
+ extern GtkTreeModel *trace_view_store_as_gtk_tree_model(struct trace_view_store *store);
+
+@@ -37,10 +38,10 @@ pytype_from_gtype(GType gtype)
+
+ /* help swig cope with g* types */
+ %typemap(in) gint {
+- $1 = PyInt_AsLong($input);
++ $1 = PyLong_AsLong($input);
+ }
+ %typemap(out) gint {
+- $result = PyInt_FromLong($1);
++ $result = PyLong_FromLong($1);
+ }
+ %typemap(in) guint {
+ $1 = PyLong_AsUnsignedLong($input);
diff --git a/dev-util/trace-cmd/files/trace-cmd-2.8-soname.patch b/dev-util/trace-cmd/files/trace-cmd-2.8-soname.patch
new file mode 100644
index 000000000000..523f2d44467e
--- /dev/null
+++ b/dev-util/trace-cmd/files/trace-cmd-2.8-soname.patch
@@ -0,0 +1,13 @@
+diff --git a/scripts/utils.mk b/scripts/utils.mk
+index 260023a..9eb127d 100644
+--- a/scripts/utils.mk
++++ b/scripts/utils.mk
+@@ -54,7 +54,7 @@ do_build_static_lib = \
+
+ do_compile_shared_library = \
+ ($(print_shared_lib_compile) \
+- $(CC) --shared $^ -o $@)
++ $(CC) --shared $^ -Wl,-soname,$@ -o $@)
+
+ do_compile_plugin_obj = \
+ ($(print_plugin_obj_compile) \
diff --git a/dev-util/trace-cmd/trace-cmd-2.8.ebuild b/dev-util/trace-cmd/trace-cmd-2.8.ebuild
new file mode 100644
index 000000000000..33ae834f1ac4
--- /dev/null
+++ b/dev-util/trace-cmd/trace-cmd-2.8.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python2_7 python3_{6,7} )
+DISTUTILS_OPTIONAL=1
+
+inherit linux-info python-r1 toolchain-funcs
+
+DESCRIPTION="User-space front-end for Ftrace"
+HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/rostedt/trace-cmd.git"
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/rostedt/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git/snapshot/${PN}-v${PV}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+ S="${WORKDIR}/${PN}-v${PV}"
+fi
+
+LICENSE="GPL-2+ LGPL-2.1+"
+SLOT="0"
+IUSE="+audit doc python udis86"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="audit? ( sys-process/audit )
+ python? ( ${PYTHON_DEPS} )
+ udis86? ( dev-libs/udis86 )"
+DEPEND="${RDEPEND}
+ sys-kernel/linux-headers
+ python? (
+ virtual/pkgconfig
+ dev-lang/swig
+ )
+
+ doc? ( app-text/asciidoc )"
+
+CONFIG_CHECK="
+ ~TRACING
+ ~FTRACE
+ ~BLK_DEV_IO_TRACE"
+
+PATCHES=(
+ "${FILESDIR}/trace-cmd-2.7-makefile.patch"
+ "${FILESDIR}/trace-cmd-2.8-python-pkgconfig-name.patch"
+ "${FILESDIR}/trace-cmd-2.8-soname.patch"
+)
+
+pkg_setup() {
+ linux-info_pkg_setup
+}
+
+src_configure() {
+ EMAKE_FLAGS=(
+ "prefix=/usr"
+ "libdir=/usr/$(get_libdir)"
+ "CC=$(tc-getCC)"
+ "AR=$(tc-getAR)"
+ $(usex audit '' '' '' 'NO_AUDIT=1')
+ $(usex udis86 '' '' '' 'NO_UDIS86=1')
+ VERBOSE=1
+ )
+}
+
+src_compile() {
+ emake "${EMAKE_FLAGS[@]}" NO_PYTHON=1 \
+ trace-cmd libs
+
+ if use python; then
+ python_copy_sources
+ python_foreach_impl python_compile
+ fi
+
+ use doc && emake doc
+}
+
+python_compile() {
+ pushd "${BUILD_DIR}" > /dev/null || die
+ python_is_python3 && eapply "${FILESDIR}/trace-cmd-2.8-python3-warnings.patch"
+
+ emake "${EMAKE_FLAGS[@]}" \
+ PYTHON_VERS="${EPYTHON}" \
+ PYTHON_PKGCONFIG_VERS="${EPYTHON//python/python-}" \
+ python_dir=$(python_get_sitedir)/${PN} \
+ python python-plugin
+
+ popd > /dev/null || die
+}
+
+src_install() {
+ emake "${EMAKE_FLAGS[@]}" NO_PYTHON=1 \
+ DESTDIR="${D}" \
+ install install_libs
+
+ use doc && emake DESTDIR="${D}" install_doc
+ use python && python_foreach_impl python_install
+}
+
+python_install() {
+ pushd "${BUILD_DIR}" > /dev/null || die
+
+ emake "${EMAKE_FLAGS[@]}" DESTDIR="${D}" \
+ PYTHON_VERS="${EPYTHON}" \
+ PYTHON_PKGCONFIG_VERS="${EPYTHON//python/python-}" \
+ python_dir=$(python_get_sitedir)/${PN} \
+ install_python
+
+ popd > /dev/null || die
+}
diff --git a/dev-util/trace-cmd/trace-cmd-9999.ebuild b/dev-util/trace-cmd/trace-cmd-9999.ebuild
index 27b25b7f1212..33ae834f1ac4 100644
--- a/dev-util/trace-cmd/trace-cmd-9999.ebuild
+++ b/dev-util/trace-cmd/trace-cmd-9999.ebuild
@@ -2,9 +2,10 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=(python2_7)
+PYTHON_COMPAT=( python2_7 python3_{6,7} )
+DISTUTILS_OPTIONAL=1
-inherit linux-info python-single-r1 toolchain-funcs
+inherit linux-info python-r1 toolchain-funcs
DESCRIPTION="User-space front-end for Ftrace"
HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/rostedt/trace-cmd.git"
@@ -13,7 +14,7 @@ if [[ ${PV} == *9999 ]] ; then
EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/rostedt/${PN}.git"
inherit git-r3
else
- SRC_URI="https://git.kernel.org/pub/scm/linux/kernel/git/rostedt/${PN}.git/snapshot/${PN}-v${PV}.tar.gz"
+ SRC_URI="https://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git/snapshot/${PN}-v${PV}.tar.gz"
KEYWORDS="~amd64 ~x86"
S="${WORKDIR}/${PN}-v${PV}"
fi
@@ -41,13 +42,13 @@ CONFIG_CHECK="
~BLK_DEV_IO_TRACE"
PATCHES=(
- "${FILESDIR}"/trace-cmd-2.7-makefile.patch
- "${FILESDIR}"/trace-cmd-2.7-soname.patch
+ "${FILESDIR}/trace-cmd-2.7-makefile.patch"
+ "${FILESDIR}/trace-cmd-2.8-python-pkgconfig-name.patch"
+ "${FILESDIR}/trace-cmd-2.8-soname.patch"
)
pkg_setup() {
linux-info_pkg_setup
- use python && python-single-r1_pkg_setup
}
src_configure() {
@@ -58,26 +59,52 @@ src_configure() {
"AR=$(tc-getAR)"
$(usex audit '' '' '' 'NO_AUDIT=1')
$(usex udis86 '' '' '' 'NO_UDIS86=1')
+ VERBOSE=1
)
+}
+
+src_compile() {
+ emake "${EMAKE_FLAGS[@]}" NO_PYTHON=1 \
+ trace-cmd libs
if use python; then
- EMAKE_FLAGS+=(
- "PYTHON_VERS=${EPYTHON//python/python-}"
- "python_dir=$(python_get_sitedir)/${PN}"
- )
- else
- EMAKE_FLAGS+=("NO_PYTHON=1")
+ python_copy_sources
+ python_foreach_impl python_compile
fi
-}
-src_compile() {
- emake "${EMAKE_FLAGS[@]}" all_cmd libs
use doc && emake doc
+}
+python_compile() {
+ pushd "${BUILD_DIR}" > /dev/null || die
+ python_is_python3 && eapply "${FILESDIR}/trace-cmd-2.8-python3-warnings.patch"
+
+ emake "${EMAKE_FLAGS[@]}" \
+ PYTHON_VERS="${EPYTHON}" \
+ PYTHON_PKGCONFIG_VERS="${EPYTHON//python/python-}" \
+ python_dir=$(python_get_sitedir)/${PN} \
+ python python-plugin
+
+ popd > /dev/null || die
}
src_install() {
- emake "${EMAKE_FLAGS[@]}" DESTDIR="${D}" V=1 install install_libs
+ emake "${EMAKE_FLAGS[@]}" NO_PYTHON=1 \
+ DESTDIR="${D}" \
+ install install_libs
+
use doc && emake DESTDIR="${D}" install_doc
+ use python && python_foreach_impl python_install
+}
+
+python_install() {
+ pushd "${BUILD_DIR}" > /dev/null || die
+
+ emake "${EMAKE_FLAGS[@]}" DESTDIR="${D}" \
+ PYTHON_VERS="${EPYTHON}" \
+ PYTHON_PKGCONFIG_VERS="${EPYTHON//python/python-}" \
+ python_dir=$(python_get_sitedir)/${PN} \
+ install_python
+ popd > /dev/null || die
}