diff options
author | Jo-Philipp Wich <jo@mein.io> | 2017-02-16 17:36:47 +0100 |
---|---|---|
committer | Jo-Philipp Wich <jo@mein.io> | 2017-02-19 19:08:46 +0100 |
commit | b65dc04712dfb8cc7bb9036c7c73b0cead6dd7c9 (patch) | |
tree | 6ebef4cc7d786698b57488d1d3d929dd7c398560 /package/system/opkg/patches/060-add-find-command.patch | |
parent | 84ceca514841dd6d4705dc27d2104ee0aa18b9e1 (diff) | |
download | upstream-b65dc04712dfb8cc7bb9036c7c73b0cead6dd7c9.tar.gz upstream-b65dc04712dfb8cc7bb9036c7c73b0cead6dd7c9.tar.bz2 upstream-b65dc04712dfb8cc7bb9036c7c73b0cead6dd7c9.zip |
opkg: switch to own fork to improve memory usage
Switch to our own fork of opkg to significantly reduce the required amount
of memory when updating lists or installing packages.
Preliminary tests showed a usage drop of about 90% during these operations,
from ~3.7MB with unmodified opkg to ~360KB with our custom fork.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Diffstat (limited to 'package/system/opkg/patches/060-add-find-command.patch')
-rw-r--r-- | package/system/opkg/patches/060-add-find-command.patch | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/package/system/opkg/patches/060-add-find-command.patch b/package/system/opkg/patches/060-add-find-command.patch deleted file mode 100644 index 17625349f8..0000000000 --- a/package/system/opkg/patches/060-add-find-command.patch +++ /dev/null @@ -1,58 +0,0 @@ ---- a/libopkg/opkg_cmd.c -+++ b/libopkg/opkg_cmd.c -@@ -594,7 +594,7 @@ opkg_download_cmd(int argc, char **argv) - - - static int --opkg_list_cmd(int argc, char **argv) -+opkg_list_find_cmd(int argc, char **argv, int use_desc) - { - int i; - pkg_vec_t *available; -@@ -610,7 +610,8 @@ opkg_list_cmd(int argc, char **argv) - for (i=0; i < available->len; i++) { - pkg = available->pkgs[i]; - /* if we have package name or pattern and pkg does not match, then skip it */ -- if (pkg_name && fnmatch(pkg_name, pkg->name, conf->nocase)) -+ if (pkg_name && fnmatch(pkg_name, pkg->name, conf->nocase) && -+ (!use_desc || !pkg->description || fnmatch(pkg_name, pkg->description, conf->nocase))) - continue; - print_pkg(pkg); - } -@@ -619,6 +620,18 @@ opkg_list_cmd(int argc, char **argv) - return 0; - } - -+static int -+opkg_list_cmd(int argc, char **argv) -+{ -+ return opkg_list_find_cmd(argc, argv, 0); -+} -+ -+static int -+opkg_find_cmd(int argc, char **argv) -+{ -+ return opkg_list_find_cmd(argc, argv, 1); -+} -+ - - static int - opkg_list_installed_cmd(int argc, char **argv) -@@ -1262,6 +1275,7 @@ static opkg_cmd_t cmds[] = { - {"configure", 0, (opkg_cmd_fun_t)opkg_configure_cmd, PFM_DESCRIPTION|PFM_SOURCE}, - {"files", 1, (opkg_cmd_fun_t)opkg_files_cmd, PFM_DESCRIPTION|PFM_SOURCE}, - {"search", 1, (opkg_cmd_fun_t)opkg_search_cmd, PFM_DESCRIPTION|PFM_SOURCE}, -+ {"find", 1, (opkg_cmd_fun_t)opkg_find_cmd, PFM_SOURCE}, - {"download", 1, (opkg_cmd_fun_t)opkg_download_cmd, PFM_DESCRIPTION|PFM_SOURCE}, - {"compare_versions", 1, (opkg_cmd_fun_t)opkg_compare_versions_cmd, PFM_DESCRIPTION|PFM_SOURCE}, - {"compare-versions", 1, (opkg_cmd_fun_t)opkg_compare_versions_cmd, PFM_DESCRIPTION|PFM_SOURCE}, ---- a/src/opkg-cl.c -+++ b/src/opkg-cl.c -@@ -246,6 +246,7 @@ usage() - printf("\tlist-changed-conffiles List user modified configuration files\n"); - printf("\tfiles <pkg> List files belonging to <pkg>\n"); - printf("\tsearch <file|regexp> List package providing <file>\n"); -+ printf("\tfind <regexp> List packages whose name or description matches <regexp>\n"); - printf("\tinfo [pkg|regexp] Display all info for <pkg>\n"); - printf("\tstatus [pkg|regexp] Display all status for <pkg>\n"); - printf("\tdownload <pkg> Download <pkg> to current directory\n"); |