mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-09-16 06:48:11 +00:00
smem: update to v1.5 (python3 compatibility)
smem generally works using the upstream code, but the --source argument still throws exceptions - add a patch to resolve those as well. There is no release on the downloads URL, but a tag in mercurial - so this now downloads the snapshot that tag is pointing to. Signed-off-by: André Draszik <git@andred.net> Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
parent
8cda709fb9
commit
fd2765bb16
@ -0,0 +1,53 @@
|
|||||||
|
From 3ff78f1f00973393d1a7ee4e467a2bacf1c807f3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <git@andred.net>
|
||||||
|
Date: Wed, 5 Feb 2020 16:14:21 +0000
|
||||||
|
Subject: [PATCH] smem: fix support for --source option (python3)
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
Using --source doesn't work without this patch:
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "./smem", line 727, in <module>
|
||||||
|
showpids()
|
||||||
|
File "./smem", line 299, in showpids
|
||||||
|
showtable(pt.keys(), fields, columns.split(), options.sort or 'pss')
|
||||||
|
File "./smem", line 519, in showtable
|
||||||
|
mt = totalmem()
|
||||||
|
File "./smem", line 118, in totalmem
|
||||||
|
_totalmem = memory()['memtotal']
|
||||||
|
File "./smem", line 193, in memory
|
||||||
|
m = f.match(l)
|
||||||
|
TypeError: cannot use a string pattern on a bytes-like object
|
||||||
|
|
||||||
|
python3's tarfile returns bytes, whereas all of the rest of
|
||||||
|
the code assumes str.
|
||||||
|
|
||||||
|
Fix the tarfile usage to convert to str before returning the
|
||||||
|
results.
|
||||||
|
|
||||||
|
Signed-off-by: André Draszik <git@andred.net>
|
||||||
|
Upstream-Status: Inappropriate [upstream wants to support python2 & python3]
|
||||||
|
---
|
||||||
|
smem | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/smem b/smem
|
||||||
|
index 46a3189..54d40dd 100755
|
||||||
|
--- a/smem
|
||||||
|
+++ b/smem
|
||||||
|
@@ -90,9 +90,9 @@ class tardata(procdata):
|
||||||
|
d,f = ti.name.split('/')
|
||||||
|
yield d
|
||||||
|
def _read(self, f):
|
||||||
|
- return self.tar.extractfile(f).read()
|
||||||
|
+ return self.tar.extractfile(f).read().decode()
|
||||||
|
def _readlines(self, f):
|
||||||
|
- return self.tar.extractfile(f).readlines()
|
||||||
|
+ return [l.decode() for l in self.tar.extractfile(f).readlines()]
|
||||||
|
def piduser(self, p):
|
||||||
|
t = self.tar.getmember("%d" % p)
|
||||||
|
if t.uname:
|
||||||
|
--
|
||||||
|
2.23.0.rc1
|
||||||
|
|
||||||
@ -9,9 +9,16 @@ SECTION = "Applications/System"
|
|||||||
LICENSE = "GPLv2+"
|
LICENSE = "GPLv2+"
|
||||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||||
|
|
||||||
SRC_URI = "http://www.selenic.com/${BPN}/download/${BP}.tar.gz"
|
HG_CHANGESET = "98273ce331bb"
|
||||||
SRC_URI[md5sum] = "fe79435c3930389bfdb560255c802162"
|
SRC_URI = "https://selenic.com/repo/${BPN}/archive/${HG_CHANGESET}.tar.bz2;downloadfilename=${BP}.tar.bz2 \
|
||||||
SRC_URI[sha256sum] = "2ea9f878f4cf3c276774c3f7e2a41977a1f2d64f98d2dcb6a15f1f3d84df61ec"
|
file://0001-smem-fix-support-for-source-option-python3.patch"
|
||||||
|
SRC_URI[md5sum] = "51c3989779360f42b42ef46b2831be3a"
|
||||||
|
SRC_URI[sha256sum] = "161131c686a6d9962a0e96912526dd46308e022d62e3f8acaed5a56fda8e08ce"
|
||||||
|
|
||||||
|
UPSTREAM_CHECK_URI = "https://selenic.com/repo/smem/tags"
|
||||||
|
UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)"
|
||||||
|
|
||||||
|
S = "${WORKDIR}/${BPN}-${HG_CHANGESET}"
|
||||||
|
|
||||||
do_compile() {
|
do_compile() {
|
||||||
${CC} ${CFLAGS} ${LDFLAGS} smemcap.c -o smemcap
|
${CC} ${CFLAGS} ${LDFLAGS} smemcap.c -o smemcap
|
||||||
@ -21,12 +28,15 @@ do_install() {
|
|||||||
install -d ${D}/${bindir}/
|
install -d ${D}/${bindir}/
|
||||||
install -d ${D}/${mandir}/man8
|
install -d ${D}/${mandir}/man8
|
||||||
install -m 0755 ${S}/smem ${D}${bindir}/
|
install -m 0755 ${S}/smem ${D}${bindir}/
|
||||||
|
sed -i -e '1s,#!.*python.*,#!${USRBINPATH}/env python3,' ${D}${bindir}/smem
|
||||||
install -m 0755 ${S}/smemcap ${D}${bindir}/
|
install -m 0755 ${S}/smemcap ${D}${bindir}/
|
||||||
install -m 0644 ${S}/smem.8 ${D}/${mandir}/man8/
|
install -m 0644 ${S}/smem.8 ${D}/${mandir}/man8/
|
||||||
}
|
}
|
||||||
RDEPENDS_${PN} += "python-textutils python-compression python-shell python-codecs"
|
|
||||||
|
|
||||||
PACKAGES =+ "smemcap"
|
RDEPENDS_${PN} = "python3-core python3-compression"
|
||||||
|
RRECOMMENDS_${PN} = "python3-matplotlib python3-numpy"
|
||||||
|
|
||||||
|
PACKAGE_BEFORE_PN = "smemcap"
|
||||||
|
|
||||||
FILES_smemcap = "${bindir}/smemcap"
|
FILES_smemcap = "${bindir}/smemcap"
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user