From a3604e4b130465fb4c6bf4d1db81b117ce2ac7cf Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 28 Mar 2023 09:14:18 +0000 Subject: [PATCH] import libtraceevent-1.5.3-3.el9 --- .gitignore | 2 +- .libtraceevent.metadata | 2 +- ...raceevent-Handle-parsing-of-REC-case.patch | 86 ---------------- ...ve-plugin_dir-define-logic-to-top-le.patch | 98 ------------------- SPECS/libtraceevent.spec | 20 +++- 5 files changed, 17 insertions(+), 191 deletions(-) delete mode 100644 SOURCES/libtraceevent-Handle-parsing-of-REC-case.patch delete mode 100644 SOURCES/libtraceevent-Move-plugin_dir-define-logic-to-top-le.patch diff --git a/.gitignore b/.gitignore index f08a6ea..747ceca 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/libtraceevent-1.1.1.tar.gz +SOURCES/libtraceevent-1.5.3.tar.gz diff --git a/.libtraceevent.metadata b/.libtraceevent.metadata index 3a1abf7..3c3964c 100644 --- a/.libtraceevent.metadata +++ b/.libtraceevent.metadata @@ -1 +1 @@ -07d940c014adcc4c15bb7333845b8e2c21328dc7 SOURCES/libtraceevent-1.1.1.tar.gz +72d2ca781728169d9b17679b890f496d4c303040 SOURCES/libtraceevent-1.5.3.tar.gz diff --git a/SOURCES/libtraceevent-Handle-parsing-of-REC-case.patch b/SOURCES/libtraceevent-Handle-parsing-of-REC-case.patch deleted file mode 100644 index 746669d..0000000 --- a/SOURCES/libtraceevent-Handle-parsing-of-REC-case.patch +++ /dev/null @@ -1,86 +0,0 @@ -From 62823da1bd46f24e2b498513a809011dfe16cd9b Mon Sep 17 00:00:00 2001 -From: "Steven Rostedt (VMware)" -Date: Tue, 8 Jun 2021 17:27:44 -0400 -Subject: [PATCH] libtraceevent: Handle parsing of "(REC)->" case - -If a trace event wraps the special __entry variable to dereference it with -parenthesis, it shows up in the trace event format file wrapping the -"(REC)" as well. For example, the "func_repeats" event passed the __entry -into a helper macro in the TP_printk() portion, and the macro correctly -wrapped its parameter in parenthesis. This caused the output to show: - - "(((u64)(REC)->top_delta_ts << 32) | (REC)->bottom_delta_ts)" - -The parser then failed to parse the "(REC)->" portion, as it expected the -"->" to appear directly after the "REC". This is not a requirement, and -the parser should be able to handle such cases. - -When this occurred, trace-cmd would error with the following message: - -trace-cmd: No such file or directory - Error: expected type 4 but read 5 - -Link: https://lore.kernel.org/linux-trace-devel/20210608172744.796e93b7@gandalf.local.home - -Fixes: 6582b0a ("tools/events: Add files to create libtraceevent.a") -Reported-by: Julia Lawall -Signed-off-by: Steven Rostedt (VMware) ---- - src/event-parse.c | 27 ++++++++++++++++++++++++--- - 1 file changed, 24 insertions(+), 3 deletions(-) - -diff --git a/src/event-parse.c b/src/event-parse.c -index 97c1a97..1217491 100644 ---- a/src/event-parse.c -+++ b/src/event-parse.c -@@ -2311,8 +2311,19 @@ process_entry(struct tep_event *event __maybe_unused, struct tep_print_arg *arg, - char *field; - char *token; - -- if (read_expected(TEP_EVENT_OP, "->") < 0) -- goto out_err; -+ type = read_token_item(&token); -+ /* -+ * Check if REC happens to be surrounded by parenthesis, and -+ * return if that's the case, as "(REC)->" is valid. -+ * but return TEP_EVENT_ITEM. -+ */ -+ if (type == TEP_EVENT_DELIM && strcmp(token, ")") == 0) { -+ *tok = token; -+ return TEP_EVENT_ITEM; -+ } -+ -+ if (test_type_token(type, token, TEP_EVENT_OP, "->")) -+ goto out_free; - - if (read_expect_type(TEP_EVENT_ITEM, &token) < 0) - goto out_free; -@@ -2338,7 +2349,6 @@ process_entry(struct tep_event *event __maybe_unused, struct tep_print_arg *arg, - - out_free: - free_token(token); -- out_err: - *tok = NULL; - return TEP_EVENT_ERROR; - } -@@ -3033,6 +3043,17 @@ process_paren(struct tep_event *event, struct tep_print_arg *arg, char **tok) - if (type == TEP_EVENT_ERROR) - goto out_free; - -+ /* -+ * If REC is surrounded by parenthesis, the process_arg() -+ * will return TEP_EVENT_ITEM with token == ")". In -+ * this case, we need to continue processing the item -+ * and return. -+ */ -+ if (type == TEP_EVENT_ITEM && strcmp(token, ")") == 0) { -+ free_token(token); -+ return process_entry(event, arg, tok); -+ } -+ - if (test_type_token(type, token, TEP_EVENT_DELIM, ")")) - goto out_free; - --- -2.31.1 - diff --git a/SOURCES/libtraceevent-Move-plugin_dir-define-logic-to-top-le.patch b/SOURCES/libtraceevent-Move-plugin_dir-define-logic-to-top-le.patch deleted file mode 100644 index 9218d32..0000000 --- a/SOURCES/libtraceevent-Move-plugin_dir-define-logic-to-top-le.patch +++ /dev/null @@ -1,98 +0,0 @@ -From e9bd314141ee6b4556d9db854bccd34159661ffa Mon Sep 17 00:00:00 2001 -From: "Steven Rostedt (VMware)" -Date: Thu, 28 Jan 2021 16:31:35 -0500 -Subject: [PATCH] libtraceevent: Move plugin_dir define logic to top level - Makefile - -The installation location of the plugin directory needs to be passed into -the C files via the -DPLUGIN_DIR=".." compiler option. But the logic for -that was only in the plugin directory, such that the main library did not -know where to find the plugins (as the PLUGIN_DIR macro was not set). This -caused the library not to load the plugins for the application. - -By moving the logic to the top level Makefile and exporting the variables, -this fixes the issue. - -Link: https://lore.kernel.org/linux-trace-devel/20210128163135.27ae85d5@gandalf.local.home - -Signed-off-by: Steven Rostedt (VMware) ---- - Makefile | 26 ++++++++++++++++++++++++++ - plugins/Makefile | 24 ------------------------ - 2 files changed, 26 insertions(+), 24 deletions(-) - -diff --git a/Makefile b/Makefile -index e4eba74..11bfe54 100644 ---- a/Makefile -+++ b/Makefile -@@ -118,6 +118,32 @@ endif - - LIBS = -ldl - -+set_plugin_dir := 1 -+ -+# Set plugin_dir to preffered global plugin location -+# If we install under $HOME directory we go under -+# $(HOME)/.local/lib/traceevent/plugins -+# -+# We dont set PLUGIN_DIR in case we install under $HOME -+# directory, because by default the code looks under: -+# $(HOME)/.local/lib/traceevent/plugins by default. -+# -+ifeq ($(plugin_dir),) -+ifeq ($(prefix),$(HOME)) -+override plugin_dir = $(HOME)/.local/lib/traceevent/plugins -+set_plugin_dir := 0 -+else -+override plugin_dir = $(libdir)/traceevent/plugins -+endif -+export plugin_dir -+endif -+ -+ifeq ($(set_plugin_dir),1) -+PLUGIN_DIR = -DPLUGIN_DIR="$(plugin_dir)" -+PLUGIN_DIR_SQ = '$(subst ','\'',$(PLUGIN_DIR))' -+export PLUGIN_DIR PLUGIN_DIR_SQ -+endif -+ - # Append required CFLAGS - override CFLAGS += -fPIC - override CFLAGS += $(CONFIG_FLAGS) $(INCLUDES) $(PLUGIN_DIR_SQ) -diff --git a/plugins/Makefile b/plugins/Makefile -index e8b8850..b60352d 100644 ---- a/plugins/Makefile -+++ b/plugins/Makefile -@@ -41,30 +41,6 @@ libdir_relative ?= $(libdir_relative_tmp) - prefix ?= /usr/local - libdir = $(prefix)/$(libdir_relative) - --set_plugin_dir := 1 -- --# Set plugin_dir to preffered global plugin location --# If we install under $HOME directory we go under --# $(HOME)/.local/lib/traceevent/plugins --# --# We dont set PLUGIN_DIR in case we install under $HOME --# directory, because by default the code looks under: --# $(HOME)/.local/lib/traceevent/plugins by default. --# --ifeq ($(plugin_dir),) --ifeq ($(prefix),$(HOME)) --override plugin_dir = $(HOME)/.local/lib/traceevent/plugins --set_plugin_dir := 0 --else --override plugin_dir = $(libdir)/traceevent/plugins --endif --endif -- --ifeq ($(set_plugin_dir),1) --PLUGIN_DIR = -DPLUGIN_DIR="$(plugin_dir)" --PLUGIN_DIR_SQ = '$(subst ','\'',$(PLUGIN_DIR))' --endif -- - include ../scripts/Makefile.include - - # copy a bit from Linux kbuild --- -2.31.1 - diff --git a/SPECS/libtraceevent.spec b/SPECS/libtraceevent.spec index a28d01a..a46766f 100644 --- a/SPECS/libtraceevent.spec +++ b/SPECS/libtraceevent.spec @@ -4,8 +4,8 @@ #%%global shortcommit %%(c=%%{commit}; echo ${c:0:7}) Name: libtraceevent -Version: 1.1.1 -Release: 8%{?dist} +Version: 1.5.3 +Release: 3%{?dist} License: LGPLv2+ and GPLv2+ Summary: Library to parse raw trace event formats @@ -16,8 +16,6 @@ URL: https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/ # git archive --prefix=libtraceevent-%%{version}/ -o libtraceevent-%%{version}.tar.gz %%{git_commit} #Source0: libtraceevent-%%{version}.tar.gz Source0: https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/snapshot/libtraceevent-%{version}.tar.gz -Patch0: libtraceevent-Handle-parsing-of-REC-case.patch -Patch1: libtraceevent-Move-plugin_dir-define-logic-to-top-le.patch BuildRequires: gcc BuildRequires: xmlto @@ -45,7 +43,7 @@ MANPAGE_DOCBOOK_XSL=`rpm -ql docbook-style-xsl | grep manpages/docbook.xsl` #looks like CFLAGS is ignored when compiling plugins, but not EXTRA_CFLAGS export EXTRA_CFLAGS="%{optflags}" export LDFLAGS="-Wl,-z,now" -%make_build prefix=%{_prefix} libdir=%{_libdir} MANPAGE_XSL=%{MANPAGE_DOCBOOK_XSL} all doc +make -O -j1 V=1 VERBOSE=1 prefix=%{_prefix} libdir=%{_libdir} MANPAGE_XSL=%{MANPAGE_DOCBOOK_XSL} all doc %install %set_build_flags @@ -72,6 +70,18 @@ rm -rf %{buildroot}/%{_libdir}/libtraceevent.a %{_libdir}/pkgconfig/libtraceevent.pc %changelog +* Wed Oct 19 2022 Michael Petlan - 1.5.3-3 +- Rebuild due to broken brew build again, disable parallel build + Related: rhbz#2134397 + +* Fri Oct 14 2022 Michael Petlan - 1.5.3-2 +- Rebuild due to broken brew environment + Related: rhbz#2134397 + +* Tue Aug 30 2022 Michael Petlan - 1.5.3-1 +- Rebase to v1.5.3 + Related: rhbz#2075213 + * Fri Jan 14 2022 Michael Petlan - 1.1.1-8 - Harden linking to meet annocheck requirements Related: rhbz#2037125