diff --git a/.SRCINFO b/.SRCINFO index ff0273a..28e4073 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,6 +1,6 @@ pkgbase = systemtap pkgdesc = Infrastructure to simplify the gathering of information about the running Linux system - pkgver = 4.5 + pkgver = 4.6 pkgrel = 1 url = http://sourceware.org/systemtap/ install = systemtap.install @@ -8,18 +8,23 @@ pkgbase = systemtap arch = i686 license = GPL makedepends = python-setuptools + makedepends = python2-setuptools makedepends = xmlto depends = elfutils depends = nss depends = python depends = cpio optdepends = sqlite3: for storing results in a database - source = systemtap-4.5.tar.gz::https://sourceware.org/systemtap/ftp/releases/systemtap-4.5.tar.gz - source = systemtap-4.5.tar.gz.asc::https://sourceware.org/systemtap/ftp/releases/systemtap-4.5.tar.gz.asc + source = systemtap-4.6.tar.gz::https://sourceware.org/systemtap/ftp/releases/systemtap-4.6.tar.gz + source = systemtap-4.6.tar.gz.asc::https://sourceware.org/systemtap/ftp/releases/systemtap-4.6.tar.gz.asc + source = 0001-Fix-Werror-for-wrong-type-of-printf-width.patch + source = 0002-configury-let-python3-be-python3.patch validpgpkeys = F75E6545B9F8AA15AA932A444DE16D68FDBFFFB8 validpgpkeys = 5D38116FA4D3A7CC77E378D37E83610126DCC2E8 validpgpkeys = 159B0DF71150B8A8539A8802D7C256443CC637CA - sha512sums = 8136779a9f5cb0fbaae565eab1ab6fa307f1024dfc2c6c3845acfadff0eecc684ba89aa5d442c7b90c2c73edaab41ca07bae2bad8361f80fe8e9928b40466cd3 + sha512sums = 835b45597e9de0ea17857b47d542c87d155cb5c772f8595f41845a25ff06b862cb9c4b635292c3a6c66cb5255a07eee3af7cb7861110a4a05f545a4b35f11402 sha512sums = SKIP + sha512sums = da1b3d2319bfd711ba7e2e436cd476cbc7a63d442d8ad26fc010c219b9ca2343054a061767f0acc624620dc1eb3ca5a70ab130895181ed8e00c05b51ac651568 + sha512sums = 26dc15751040ac444a74046cdb2f5cad456752f06d0916ef3f97e5faf98e1f382b638adb850ed98b287b72dea63c7a16c5ad98b9ad452da4042a1ae36260a54e pkgname = systemtap diff --git a/0001-Fix-Werror-for-wrong-type-of-printf-width.patch b/0001-Fix-Werror-for-wrong-type-of-printf-width.patch new file mode 100644 index 0000000..168dee0 --- /dev/null +++ b/0001-Fix-Werror-for-wrong-type-of-printf-width.patch @@ -0,0 +1,60 @@ +From bd29667acb81d237261b035ed5cab8173dddf9a8 Mon Sep 17 00:00:00 2001 +From: Christian Pellegrin +Date: Sun, 21 Nov 2021 14:46:29 +0000 +Subject: [PATCH 1/2] Fix -Werror for wrong type of printf width. + +Signed-off-by: Christian Pellegrin +--- + staprun/monitor.c | 24 ++++++++++++------------ + 1 file changed, 12 insertions(+), 12 deletions(-) + +diff --git a/staprun/monitor.c b/staprun/monitor.c +index 478634c09..848bd7ea9 100644 +--- a/staprun/monitor.c ++++ b/staprun/monitor.c +@@ -448,12 +448,12 @@ void monitor_render(void) + if (active_window == 0) + wattron(status, A_BOLD); + wprintw(status, "\n%*s\t%*s\t%*s\t%*s\t%*s\t%*s\t%s\n", +- width[p_index], HIGHLIGHT("index", p_index, comp_fn_index), +- width[p_state], HIGHLIGHT("state", p_state, comp_fn_index), +- width[p_hits], HIGHLIGHT("hits", p_hits, comp_fn_index), +- width[p_min], HIGHLIGHT("min", p_min, comp_fn_index), +- width[p_avg], HIGHLIGHT("avg", p_avg, comp_fn_index), +- width[p_max], HIGHLIGHT("max", p_max, comp_fn_index), ++ (int) width[p_index], HIGHLIGHT("index", p_index, comp_fn_index), ++ (int) width[p_state], HIGHLIGHT("state", p_state, comp_fn_index), ++ (int) width[p_hits], HIGHLIGHT("hits", p_hits, comp_fn_index), ++ (int) width[p_min], HIGHLIGHT("min", p_min, comp_fn_index), ++ (int) width[p_avg], HIGHLIGHT("avg", p_avg, comp_fn_index), ++ (int) width[p_max], HIGHLIGHT("max", p_max, comp_fn_index), + HIGHLIGHT("name", p_name, comp_fn_index)); + if (active_window == 0) + wattroff(status, A_BOLD); +@@ -466,17 +466,17 @@ void monitor_render(void) + json_object *probe, *field; + probe = json_object_array_get_idx(jso_probe_list, i); + json_object_object_get_ex(probe, "index", &field); +- wprintw(status, "%*s\t", width[p_index], json_object_get_string(field)); ++ wprintw(status, "%*s\t", (int) width[p_index], json_object_get_string(field)); + json_object_object_get_ex(probe, "state", &field); +- wprintw(status, "%*s\t", width[p_state], json_object_get_string(field)); ++ wprintw(status, "%*s\t", (int) width[p_state], json_object_get_string(field)); + json_object_object_get_ex(probe, "hits", &field); +- wprintw(status, "%*s\t", width[p_hits], json_object_get_string(field)); ++ wprintw(status, "%*s\t", (int) width[p_hits], json_object_get_string(field)); + json_object_object_get_ex(probe, "min", &field); +- wprintw(status, "%*s\t", width[p_min], json_object_get_string(field)); ++ wprintw(status, "%*s\t", (int) width[p_min], json_object_get_string(field)); + json_object_object_get_ex(probe, "avg", &field); +- wprintw(status, "%*s\t", width[p_avg], json_object_get_string(field)); ++ wprintw(status, "%*s\t", (int) width[p_avg], json_object_get_string(field)); + json_object_object_get_ex(probe, "max", &field); +- wprintw(status, "%*s\t", width[p_max], json_object_get_string(field)); ++ wprintw(status, "%*s\t", (int) width[p_max], json_object_get_string(field)); + getyx(status, discard, cur_x); + json_object_object_get_ex(probe, "name", &field); + wprintw(status, "%.*s", max_cols-cur_x-1, json_object_get_string(field)); +-- +2.34.0 + diff --git a/0002-configury-let-python3-be-python3.patch b/0002-configury-let-python3-be-python3.patch new file mode 100644 index 0000000..421ec4c --- /dev/null +++ b/0002-configury-let-python3-be-python3.patch @@ -0,0 +1,103 @@ +From 6803c3b91f423c0aa2b4fbc1e5081ac7fb216e2f Mon Sep 17 00:00:00 2001 +From: "Frank Ch. Eigler" +Date: Fri, 19 Nov 2021 22:22:45 -0500 +Subject: [PATCH 2/2] configury: let python3 be python3 + +Our baroque heuristics for identifying python2/3 under their various +historical aliases is showing its age. On some modern distros, +/usr/bin/python is to be positively NOT used. Fixing configure.ac +$PYTHON3 search to only look for python3, and not even consider +$PYTHON_UNKNOWN. At some point we'll want to simplify further, and +get rid of python2 remnants. + +Signed-off-by: Christian Pellegrin +--- + configure | 45 +-------------------------------------------- + configure.ac | 8 ++------ + 2 files changed, 3 insertions(+), 50 deletions(-) + +diff --git a/configure b/configure +index 6d0d53992..962323156 100755 +--- a/configure ++++ b/configure +@@ -9350,49 +9350,7 @@ fi + as_fn_append ac_configure_args " python='$PYTHON' pyexecdir='$pyexecdir'" + + # Now let's try to find python version 3. +-if test "x$PYTHON_UNKNOWN" != "xno" -a "x$ac_cv_python_unknown_version" = "x3"; then +- # Extract the first word of "python", so it can be a program name with args. +-set dummy python; ac_word=$2 +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +-$as_echo_n "checking for $ac_word... " >&6; } +-if ${ac_cv_path_PYTHON3+:} false; then : +- $as_echo_n "(cached) " >&6 +-else +- case $PYTHON3 in +- [\\/]* | ?:[\\/]*) +- ac_cv_path_PYTHON3="$PYTHON3" # Let the user override the test with a path. +- ;; +- *) +- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +-for as_dir in $PATH +-do +- IFS=$as_save_IFS +- test -z "$as_dir" && as_dir=. +- for ac_exec_ext in '' $ac_executable_extensions; do +- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then +- ac_cv_path_PYTHON3="$as_dir/$ac_word$ac_exec_ext" +- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 +- break 2 +- fi +-done +- done +-IFS=$as_save_IFS +- +- ;; +-esac +-fi +-PYTHON3=$ac_cv_path_PYTHON3 +-if test -n "$PYTHON3"; then +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON3" >&5 +-$as_echo "$PYTHON3" >&6; } +-else +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +-$as_echo "no" >&6; } +-fi +- +- +-else +- for ac_prog in python3 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 ++for ac_prog in python3 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 + do + # Extract the first word of "$ac_prog", so it can be a program name with args. + set dummy $ac_prog; ac_word=$2 +@@ -9438,7 +9396,6 @@ fi + done + test -n "$PYTHON3" || PYTHON3=":" + +-fi + python3_basename=$(basename "$PYTHON3") + + cat >>confdefs.h <<_ACEOF +diff --git a/configure.ac b/configure.ac +index b0a823604..d1b124763 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -88,12 +88,8 @@ fi + AS_VAR_APPEND([ac_configure_args], [" python='$PYTHON' pyexecdir='$pyexecdir'"]) + + # Now let's try to find python version 3. +-if test "x$PYTHON_UNKNOWN" != "xno" -a "x$ac_cv_python_unknown_version" = "x3"; then +- AC_PATH_PROG([PYTHON3], [python]) +-else +- AC_PATH_PROGS([PYTHON3], +- [python3 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0], [:]) +-fi ++AC_PATH_PROGS([PYTHON3], ++ [python3 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0], [:]) + python3_basename=$(basename "$PYTHON3") + AC_DEFINE_UNQUOTED([PYTHON3_BASENAME], "${python3_basename}", + [Base name of the python3 interpreter binary.]) +-- +2.34.0 + diff --git a/PKGBUILD b/PKGBUILD index 18acbe7..e85d853 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -4,20 +4,24 @@ # Original Maintainer: Christian Rebischke # Original Maintainer: dront78 pkgname=systemtap -pkgver=4.5 +pkgver=4.6 pkgrel=1 pkgdesc="Infrastructure to simplify the gathering of information about the running Linux system" url="http://sourceware.org/systemtap/" arch=('x86_64' 'i686') license=('GPL') depends=('elfutils' 'nss' 'python' 'cpio') -makedepends=('python-setuptools' 'xmlto') +makedepends=('python-setuptools' 'python2-setuptools' 'xmlto') optdepends=('sqlite3: for storing results in a database') source=("${pkgname}-${pkgver}.tar.gz::https://sourceware.org/systemtap/ftp/releases/${pkgname}-${pkgver}.tar.gz" "${pkgname}-${pkgver}.tar.gz.asc::https://sourceware.org/systemtap/ftp/releases/${pkgname}-${pkgver}.tar.gz.asc" + "0001-Fix-Werror-for-wrong-type-of-printf-width.patch" + "0002-configury-let-python3-be-python3.patch" ) -sha512sums=('8136779a9f5cb0fbaae565eab1ab6fa307f1024dfc2c6c3845acfadff0eecc684ba89aa5d442c7b90c2c73edaab41ca07bae2bad8361f80fe8e9928b40466cd3' - 'SKIP') +sha512sums=('835b45597e9de0ea17857b47d542c87d155cb5c772f8595f41845a25ff06b862cb9c4b635292c3a6c66cb5255a07eee3af7cb7861110a4a05f545a4b35f11402' + 'SKIP' + 'da1b3d2319bfd711ba7e2e436cd476cbc7a63d442d8ad26fc010c219b9ca2343054a061767f0acc624620dc1eb3ca5a70ab130895181ed8e00c05b51ac651568' + '26dc15751040ac444a74046cdb2f5cad456752f06d0916ef3f97e5faf98e1f382b638adb850ed98b287b72dea63c7a16c5ad98b9ad452da4042a1ae36260a54e') install='systemtap.install' # Note, you need to run: # gpg --recv-keys --keyserver hkps://keys.openpgp.org/ 0xD7C256443CC637CA @@ -25,8 +29,16 @@ install='systemtap.install' validpgpkeys=('F75E6545B9F8AA15AA932A444DE16D68FDBFFFB8' # "Serhei Makarov (for Red Hat 2018..onwards) " '5D38116FA4D3A7CC77E378D37E83610126DCC2E8' '159B0DF71150B8A8539A8802D7C256443CC637CA') -build() { + +prepare() { cd "${pkgname}-${pkgver}" + for i in "${srcdir}"/*.patch; do + patch -Np1 -i "$i" + done +} + +build() { + cd "${pkgname}-${pkgver}" ./configure \ --prefix=/usr \ --sysconfdir=/etc \ @@ -37,7 +49,8 @@ build() { --localstatedir=/var \ --enable-pie \ --disable-docs \ - --enable-htmldocs + --enable-htmldocs \ + --with-python3 make }