* [PATCH 0/3] trace-cmd: Some fixes, and add make-trace-cmd.sh package building helper script
@ 2020-12-16 22:00 Steven Rostedt
2020-12-16 22:00 ` [PATCH 1/3] trace-cmd: Move add_event_pid() out of #ifndef NO_PTRACE Steven Rostedt
2020-12-16 22:00 ` [PATCH 3/3] trace-cmd: Add a make-trace-cmd.sh script to simplify creating a trace-cmd package Steven Rostedt
0 siblings, 2 replies; 3+ messages in thread
From: Steven Rostedt @ 2020-12-16 22:00 UTC (permalink / raw)
To: linux-trace-devel
Steven Rostedt (VMware) (3):
trace-cmd: Move add_event_pid() out of #ifndef NO_PTRACE
trace-cmd: Add #include <fcntl.h> to trace-cmd-private.h
trace-cmd: Add a make-trace-cmd.sh script to simplify creating a trace-cmd package
----
PACKAGING | 30 ++++++++++++++++++++++
lib/trace-cmd/include/private/trace-cmd-private.h | 1 +
make-trace-cmd.sh | 31 +++++++++++++++++++++++
tracecmd/trace-record.c | 12 ++++-----
4 files changed, 68 insertions(+), 6 deletions(-)
create mode 100644 PACKAGING
create mode 100755 make-trace-cmd.sh
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 1/3] trace-cmd: Move add_event_pid() out of #ifndef NO_PTRACE
2020-12-16 22:00 [PATCH 0/3] trace-cmd: Some fixes, and add make-trace-cmd.sh package building helper script Steven Rostedt
@ 2020-12-16 22:00 ` Steven Rostedt
2020-12-16 22:00 ` [PATCH 3/3] trace-cmd: Add a make-trace-cmd.sh script to simplify creating a trace-cmd package Steven Rostedt
1 sibling, 0 replies; 3+ messages in thread
From: Steven Rostedt @ 2020-12-16 22:00 UTC (permalink / raw)
To: linux-trace-devel
From: "Steven Rostedt (VMware)" <rostedt@goodmis.org>
When NO_PTRACE is defined, add_event_pid() is also not defined, but it is
used outside of NO_PTRACE pre processor block. And this causes a
"add_event_pid" not defined build failure.
Fixes: 0844cff1c ("trace-cmd: Fix "trace-cmd reset" command to restore the default value of set_event_pid")
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
tracecmd/trace-record.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/tracecmd/trace-record.c b/tracecmd/trace-record.c
index f8baed7dcd47..e2d1cedf05fb 100644
--- a/tracecmd/trace-record.c
+++ b/tracecmd/trace-record.c
@@ -1312,8 +1312,13 @@ out:
free(pidfds);
return ret;
}
-#ifndef NO_PTRACE
+static void add_event_pid(struct buffer_instance *instance, const char *buf)
+{
+ tracefs_instance_file_write(instance->tracefs, "set_event_pid", buf);
+}
+
+#ifndef NO_PTRACE
/**
* append_pid_filter - add a new pid to an existing filter
* @curr_filter: the filter to append to. If NULL, then allocate one
@@ -1369,11 +1374,6 @@ static void update_sched_events(struct buffer_instance *instance, int pid)
static int open_instance_fd(struct buffer_instance *instance,
const char *file, int flags);
-static void add_event_pid(struct buffer_instance *instance, const char *buf)
-{
- tracefs_instance_file_write(instance->tracefs, "set_event_pid", buf);
-}
-
static void add_new_filter_child_pid(int pid, int child)
{
struct buffer_instance *instance;
--
2.29.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH 3/3] trace-cmd: Add a make-trace-cmd.sh script to simplify creating a trace-cmd package
2020-12-16 22:00 [PATCH 0/3] trace-cmd: Some fixes, and add make-trace-cmd.sh package building helper script Steven Rostedt
2020-12-16 22:00 ` [PATCH 1/3] trace-cmd: Move add_event_pid() out of #ifndef NO_PTRACE Steven Rostedt
@ 2020-12-16 22:00 ` Steven Rostedt
1 sibling, 0 replies; 3+ messages in thread
From: Steven Rostedt @ 2020-12-16 22:00 UTC (permalink / raw)
To: linux-trace-devel
From: "Steven Rostedt (VMware)" <rostedt@goodmis.org>
Add a script "make-trace-cmd.sh" and a help file "PACKAGKING" to describe
what it does. The make-trace-cmd.sh will help create a full directory that
has libtraceevent, libtracefs, libtracecmd and trace-cmd binary without
needing to install them on the host machine.
As described in PACKAGING, the steps to do so are:
git clone git://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git
git clone git://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git
git clone git://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git
cd libtraceevent
INSTALL_PATH=/tmp/install ../trace-cmd/make-trace-cmd.sh install
cd ../libtracefs
INSTALL_PATH=/tmp/install ../trace-cmd/make-trace-cmd.sh install
cd ../trace-cmd
INSTALL_PATH=/tmp/install ./make-trace-cmd.sh install install_libs
cd /tmp/install
tar cvjf /tmp/trace-cmd-files.tar.bz2 .
And then the tarball of /tmp/trace-cmd-files.tar.bz2 will can be extracted
on another machine at the root directory, and trace-cmd will be installed there.
Note, the above process uses the /usr prefix. To have the package be
installed in /usr/local, add:
PREFIX=/usr/local
in front of each of the make-trace-cmd.sh commands.
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
PACKAGING | 30 ++++++++++++++++++++++++++++++
make-trace-cmd.sh | 31 +++++++++++++++++++++++++++++++
2 files changed, 61 insertions(+)
create mode 100644 PACKAGING
create mode 100755 make-trace-cmd.sh
diff --git a/PACKAGING b/PACKAGING
new file mode 100644
index 000000000000..7e7d20653017
--- /dev/null
+++ b/PACKAGING
@@ -0,0 +1,30 @@
+The libtracefs and libtraceevent packages are required for trace-cmd
+and libtracecmd.so
+
+In order to create a package directory with libtraceevent, libtracefs
+and libtracecmd and trace-cmd, you can follow these steps:
+
+ git clone git://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git
+ git clone git://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git
+ git clone git://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git
+
+ cd libtraceevent
+ INSTALL_PATH=/tmp/install ../trace-cmd/make-trace-cmd.sh install
+
+ cd ../libtracefs
+ INSTALL_PATH=/tmp/install ../trace-cmd/make-trace-cmd.sh install
+
+ cd ../trace-cmd
+ INSTALL_PATH=/tmp/install ./make-trace-cmd.sh install install_libs
+
+ cd /tmp/install
+ tar cvjf /tmp/trace-cmd-files.tar.bz2 .
+
+And then the tarball of /tmp/trace-cmd-files.tar.bz2 will can be extracted
+on another machine at the root directory, and trace-cmd will be installed there.
+
+Note, to define a prefix, add a PREFIX variable before calling make-trace-cmd.sh
+
+ For example:
+
+ PREFIX=/usr/local INSTALL_PATH=/tmp/install ./make-trace-cmd.sh install
diff --git a/make-trace-cmd.sh b/make-trace-cmd.sh
new file mode 100755
index 000000000000..ddff18146c84
--- /dev/null
+++ b/make-trace-cmd.sh
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+if [ -z "$INSTALL_PATH" ]; then
+ echo
+ echo 'Error: No $INSTALL_PATH defined'
+ echo
+ echo " usage: [PREFIX=prefix][BUILD_PATH=/path/to/build] INSTALL_PATH=/path/to/install make-trace-cmd.sh install|install_libs|clean|uninstall"
+ echo
+ echo " Used to create a self contained directory to copy to other machines."
+ echo
+ echo " Please read PACKAGING for more information."
+ echo
+ exit
+fi
+
+if [ ! -d $INSTALL_PATH ]; then
+ mkdir $INSTALL_PATH
+fi
+
+if [ ! -z "$BUILD_PATH" ]; then
+ if [ ! -d $BUILD_PATH ]; then
+ mkdir $BUILD_PATH
+ fi
+ O_PATH="O=$BUILD_PATH"
+fi
+
+if [ -z "$PREFIX" ]; then
+ PREFIX="/usr"
+fi
+
+PKG_CONFIG="pkg-config --with-path $INSTALL_PATH/usr/lib64/pkgconfig --define-variable=prefix=$INSTALL_PATH/$PREFIX" CFLAGS="-g -Wall -I$INSTALL_PATH/$PREFIX/include" make DESTDIR=$INSTALL_PATH $O_PATH prefix=$PREFIX $@
--
2.29.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-12-16 22:02 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-12-16 22:00 [PATCH 0/3] trace-cmd: Some fixes, and add make-trace-cmd.sh package building helper script Steven Rostedt
2020-12-16 22:00 ` [PATCH 1/3] trace-cmd: Move add_event_pid() out of #ifndef NO_PTRACE Steven Rostedt
2020-12-16 22:00 ` [PATCH 3/3] trace-cmd: Add a make-trace-cmd.sh script to simplify creating a trace-cmd package Steven Rostedt
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.