From: Markham Date: Thu, 14 Apr 2016 11:16:39 +0000 (+0200) Subject: remove deprecated busybox patch X-Git-Url: https://git.webhop.me/?a=commitdiff_plain;h=5f445b75e39a402060ea6eb5491b81d00e772531;p=bs-cst-neutrino-hd.git remove deprecated busybox patch --- diff --git a/archive-patches/busybox-1.22.1-coolstream.diff b/archive-patches/busybox-1.22.1-coolstream.diff deleted file mode 100644 index 21d4b5f..0000000 --- a/archive-patches/busybox-1.22.1-coolstream.diff +++ /dev/null @@ -1,158 +0,0 @@ -diff -uNr busybox-1.24.1_orig/modutils/Config.src busybox-1.24.1_work/modutils/Config.src ---- busybox-1.24.1_orig/modutils/Config.src 2015-07-13 04:18:47.000000000 +0200 -+++ busybox-1.24.1_work/modutils/Config.src 2016-03-14 06:11:43.168782000 +0100 -@@ -247,7 +247,7 @@ - config DEFAULT_MODULES_DIR - string "Default directory containing modules" - default "/lib/modules" -- depends on DEPMOD || MODPROBE || MODPROBE_SMALL || MODINFO -+ depends on DEPMOD || MODPROBE || MODPROBE_SMALL || MODINFO || INSMOD - help - Directory that contains kernel modules. - Defaults to "/lib/modules" -diff -uNr busybox-1.24.1_orig/modutils/insmod.c busybox-1.24.1_work/modutils/insmod.c ---- busybox-1.24.1_orig/modutils/insmod.c 2015-07-13 04:18:47.000000000 +0200 -+++ busybox-1.24.1_work/modutils/insmod.c 2016-03-14 17:42:49.790210561 +0100 -@@ -35,11 +35,42 @@ - //usage: ) - //usage:#endif - -+#include -+static char *m_filename; -+static char *m_fullName; -+ -+static int FAST_FUNC check_module_name_match(const char *filename, -+ struct stat *statbuf UNUSED_PARAM, -+ void *userdata, int depth UNUSED_PARAM) -+{ -+ char *fullname = (char *) userdata; -+ char *tmp; -+ -+ if (fullname[0] == '\0') -+ return FALSE; -+ -+ tmp = bb_get_last_path_component_nostrip(filename); -+ if (strcmp(tmp, fullname) == 0) { -+ /* Stop searching if we find a match */ -+ m_filename = xstrdup(filename); -+ return FALSE; -+ } -+ return TRUE; -+} -+ - int insmod_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; - int insmod_main(int argc UNUSED_PARAM, char **argv) - { - char *filename; - int rc; -+int len; -+char *tmp; -+char *tmp2; -+int maj = 0, min = 0; -+struct stat st; -+struct utsname uts; -+char *m_name; -+FILE *fp; - - /* Compat note: - * 2.6 style insmod has no options and required filename -@@ -58,9 +89,97 @@ - if (!filename) - bb_show_usage(); - -- rc = bb_init_module(filename, parse_cmdline_module_options(argv, /*quote_spaces:*/ 0)); -+ /* Grab the module name */ -+ tmp = xstrdup(filename); -+ len = strlen(filename); -+ -+ if (uname(&uts) == 0) { -+ sscanf(uts.release, "%i.%i", &maj, &min); -+ } -+ -+ if ( (maj > 2 || (maj == 2 && min > 4)) && len > 3 && tmp[len - 3] == '.' -+ && tmp[len - 2] == 'k' && tmp[len - 1] == 'o') -+ { -+ len -= 3; -+ tmp[len] = '\0'; -+ } else -+ if (len > 2 && tmp[len - 2] == '.' && tmp[len - 1] == 'o') { -+ len -= 2; -+ tmp[len] = '\0'; -+ } -+ -+ if (maj > 2 || (maj == 2 && min > 4)) -+ m_fullName = xasprintf("%s.ko", tmp); -+ else -+ m_fullName = xasprintf("%s.o", tmp); -+ -+ if (!m_name) { -+ m_name = tmp; -+ } -+ free(tmp); -+ -+ /* first look in /var/lib/modules */ -+ tmp2 = alloca(strlen(m_fullName) + sizeof("/var/lib/modules/")); -+ strcpy(tmp2, "/var/lib/modules/"); -+ strcat(tmp2, m_fullName); -+ if (stat(tmp2, &st) >= 0 && S_ISREG(st.st_mode) && (fp = fopen(tmp2, "r")) != NULL) { -+ m_filename = xstrdup(tmp2); -+ printf("insmod: preferring module %s\n", m_filename); -+ } else -+ /* Get a filedesc for the module. Check that we have a complete path */ -+ if (stat(filename, &st) < 0 || !S_ISREG(st.st_mode) -+ || (fp = fopen_for_read(filename)) == NULL -+ ) { -+ /* Hmm. Could not open it. First search under /lib/modules/`uname -r`, -+ * but do not error out yet if we fail to find it... */ -+ if (maj) { /* uname succeedd */ -+ char *module_dir; -+ char *tmdn; -+ -+ tmdn = concat_path_file(CONFIG_DEFAULT_MODULES_DIR, uts.release); -+ /* Jump through hoops in case /lib/modules/`uname -r` -+ * is a symlink. We do not want recursive_action to -+ * follow symlinks, but we do want to follow the -+ * /lib/modules/`uname -r` dir, So resolve it ourselves -+ * if it is a link... */ -+ module_dir = xmalloc_readlink(tmdn); -+ if (!module_dir) -+ module_dir = xstrdup(tmdn); -+ recursive_action(module_dir, ACTION_RECURSE, -+ check_module_name_match, NULL, m_fullName, 0); -+ free(module_dir); -+ free(tmdn); -+ } -+ -+ /* Check if we have found anything yet */ -+ if (!m_filename || ((fp = fopen_for_read(m_filename)) == NULL)) { -+ int r; -+ char *module_dir; -+ -+ free(m_filename); -+ m_filename = NULL; -+ module_dir = xmalloc_readlink(CONFIG_DEFAULT_MODULES_DIR); -+ if (!module_dir) -+ module_dir = xstrdup(CONFIG_DEFAULT_MODULES_DIR); -+ /* No module found under /lib/modules/`uname -r`, this -+ * time cast the net a bit wider. Search /lib/modules/ */ -+ r = recursive_action(module_dir, ACTION_RECURSE, -+ check_module_name_match, NULL, m_fullName, 0); -+ if (r) -+ bb_error_msg_and_die("%s: module not found", m_fullName); -+ free(module_dir); -+ if (m_filename == NULL -+ || ((fp = fopen_for_read(m_filename)) == NULL) -+ ) { -+ bb_error_msg_and_die("%s: module not found", m_fullName); -+ } -+ } -+ } else -+ m_filename = xstrdup(filename); -+ -+ rc = bb_init_module(m_filename, parse_cmdline_module_options(argv, /*quote_spaces:*/ 0)); - if (rc) -- bb_error_msg("can't insert '%s': %s", filename, moderror(rc)); -+ bb_error_msg("can't insert '%s': %s", m_filename, moderror(rc)); - - return rc; - } diff --git a/make/applications.mk b/make/applications.mk index 3598cb4..dbfaefb 100755 --- a/make/applications.mk +++ b/make/applications.mk @@ -28,7 +28,6 @@ $(D)/busybox: $(ARCHIVE)/busybox-$(BUSYBOX_VER).tar.bz2 | $(TARGETPREFIX) $(PATCH)/busybox-1.20-ifupdown.c.diff; \ $(PATCH)/busybox-1.21.1-changing-the-order-sys-tree-is-scanned-with-mdev.diff; \ $(PATCH)/busybox-1.21.1-mdev.diff; \ - $(PATCH)/busybox-1.22.1-coolstream.diff; \ cp $(PATCHES)/busybox-1.22.1-hd1.config .config && \ sed -i -e 's#^CONFIG_PREFIX.*#CONFIG_PREFIX="$(TARGETPREFIX)"#' .config && \ $(MAKE) all CROSS_COMPILE=$(TARGET)- CFLAGS_EXTRA="$(TARGET_CFLAGS)" && \