diff options
Diffstat (limited to 'recipes/modutils')
29 files changed, 519 insertions, 0 deletions
diff --git a/recipes/modutils/files/armeb.patch b/recipes/modutils/files/armeb.patch new file mode 100644 index 0000000000..a26a3a24eb --- /dev/null +++ b/recipes/modutils/files/armeb.patch @@ -0,0 +1,14 @@ +--- modutils-2.4.27/include/elf_arm.h.orig 2004-09-21 18:37:00.000000000 -0400 ++++ modutils-2.4.27/include/elf_arm.h 2004-09-21 18:38:18.000000000 -0400 +@@ -1,7 +1,11 @@ + /* Machine-specific elf macros for ARM. */ + + #define ELFCLASSM ELFCLASS32 ++#ifdef __ARMEB__ ++#define ELFDATAM ELFDATA2MSB ++#else + #define ELFDATAM ELFDATA2LSB ++#endif + + #define MATCH_MACHINE(x) (x == EM_ARM) + diff --git a/recipes/modutils/files/configure.patch b/recipes/modutils/files/configure.patch new file mode 100644 index 0000000000..cdf501593f --- /dev/null +++ b/recipes/modutils/files/configure.patch @@ -0,0 +1,33 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +--- modutils-2.4.25/./configure.in~configure ++++ modutils-2.4.25/./configure.in +@@ -1,4 +1,5 @@ +-AC_INIT(insmod/insmod.c) ++AC_INIT ++AC_CONFIG_SRCDIR([insmod/insmod.c]) + AC_PREFIX_DEFAULT(/usr) + + # Canonical system uses CC_FOR_BUILD while Linux may use BUILDCC +@@ -15,7 +16,7 @@ + BUILDCC="$CC_FOR_BUILD" + export CC_FOR_BUILD + +-AC_CANONICAL_SYSTEM ++AC_CANONICAL_TARGET([]) + + # Handle target_cpu for compatibility. + if test "$host_cpu" != "$target_cpu"; then +@@ -350,6 +351,7 @@ + fi + fi + +-AC_OUTPUT(Makefile Makefile.common depmod/Makefile genksyms/Makefile ++AC_CONFIG_FILES([Makefile Makefile.common depmod/Makefile genksyms/Makefile + insmod/Makefile $kerneld_Makefiles obj/Makefile util/Makefile +- man/Makefile) ++ man/Makefile]) ++AC_OUTPUT diff --git a/recipes/modutils/files/gcc4.patch b/recipes/modutils/files/gcc4.patch new file mode 100644 index 0000000000..e204898f05 --- /dev/null +++ b/recipes/modutils/files/gcc4.patch @@ -0,0 +1,66 @@ +--- modutils-2.4.27/depmod/depmod.c.old 2005-06-05 23:25:28.000000000 +0100 ++++ modutils-2.4.27/depmod/depmod.c 2005-06-05 23:25:38.000000000 +0100 +@@ -1133,7 +1133,7 @@ + + for (ksym = ksyms; so_far < nksyms; ++so_far, ksym++) { + if (strncmp((char *)ksym->name, "GPLONLY_", 8) == 0) +- ((char *)ksym->name) += 8; ++ ksym->name += 8; + assert(n_syms < MAX_MAP_SYM); + symtab[n_syms++] = addsym((char *)ksym->name, mod, SYM_DEFINED, 0); + } +--- modutils-2.4.27/genksyms/genksyms.c.old 2005-06-05 23:24:16.000000000 +0100 ++++ modutils-2.4.27/genksyms/genksyms.c 2005-06-05 23:24:35.000000000 +0100 +@@ -45,7 +45,7 @@ + int flag_debug, flag_dump_defs, flag_warnings; + int checksum_version = 1, kernel_version = version(2,0,0); + +-static int errors; ++int errors; + static int nsyms; + + static struct symbol *expansion_trail; +--- modutils-2.4.27/insmod/insmod.c.old 2005-06-05 23:21:47.000000000 +0100 ++++ modutils-2.4.27/insmod/insmod.c 2005-06-05 23:22:34.000000000 +0100 +@@ -275,7 +275,7 @@ + if (strncmp((char *)s->name, "GPLONLY_", 8) == 0) { + gplonly_seen = 1; + if (gpl) +- ((char *)s->name) += 8; ++ s->name += 8; + else + continue; + } +--- modutils-2.4.27/obj/obj_kallsyms.c.old 2005-06-05 23:20:08.000000000 +0100 ++++ modutils-2.4.27/obj/obj_kallsyms.c 2005-06-05 23:20:24.000000000 +0100 +@@ -200,7 +200,7 @@ + + /* Initial contents, header + one entry per input section. No strings. */ + osec->header.sh_size = sizeof(*a_hdr) + loaded*sizeof(*a_sec); +- a_hdr = (struct kallsyms_header *) osec->contents = ++ a_hdr = osec->contents = + xmalloc(osec->header.sh_size); + memset(osec->contents, 0, osec->header.sh_size); + a_hdr->size = sizeof(*a_hdr); +@@ -275,7 +275,7 @@ + a_hdr->symbol_off + + a_hdr->symbols*a_hdr->symbol_size + + strings_size - strings_left; +- a_hdr = (struct kallsyms_header *) osec->contents = ++ a_hdr = osec->contents = + xrealloc(a_hdr, a_hdr->total_size); + p = (char *)a_hdr + a_hdr->symbol_off; + memcpy(p, symbols, a_hdr->symbols*a_hdr->symbol_size); +--- modutils-2.4.27/obj/obj_mips.c.orig 2003-04-05 00:47:17.000000000 +0200 ++++ modutils-2.4.27/obj/obj_mips.c 2005-07-21 12:51:48.000000000 +0200 +@@ -244,7 +244,9 @@ + archdata_sec->header.sh_size = 0; + sec = obj_find_section(f, "__dbe_table"); + if (sec) { +- ad = (struct archdata *) (archdata_sec->contents) = xmalloc(sizeof(*ad)); ++/* ad = (struct archdata *) (archdata_sec->contents) = xmalloc(sizeof(*ad));*/ ++ archdata_sec->contents = xmalloc(sizeof(*ad)); ++ ad = (struct archdata *) (archdata_sec->contents); + memset(ad, 0, sizeof(*ad)); + archdata_sec->header.sh_size = sizeof(*ad); + ad->__start___dbe_table = sec->header.sh_addr; diff --git a/recipes/modutils/files/ipaq-pxa-2.6/modules b/recipes/modutils/files/ipaq-pxa-2.6/modules new file mode 100644 index 0000000000..ca99e71df0 --- /dev/null +++ b/recipes/modutils/files/ipaq-pxa-2.6/modules @@ -0,0 +1,18 @@ +mq11xx_base +soc-device +h2200_lcd +h4000_lcd +cfbcopyarea +cfbfillrect +cfbimgblt +mq1100fb +pxafb +lcd +backlight +font +fbcon +pxa2xx_udc +g_ether +sunrpc +lockd +nfs diff --git a/recipes/modutils/files/ipaq-pxa-2.6/modules.conf b/recipes/modutils/files/ipaq-pxa-2.6/modules.conf new file mode 100644 index 0000000000..ef2e561e89 --- /dev/null +++ b/recipes/modutils/files/ipaq-pxa-2.6/modules.conf @@ -0,0 +1 @@ +# Add ipaq-pxa-2.6 modules parameters and aliases here diff --git a/recipes/modutils/files/lex.l.diff b/recipes/modutils/files/lex.l.diff new file mode 100644 index 0000000000..65904b6b02 --- /dev/null +++ b/recipes/modutils/files/lex.l.diff @@ -0,0 +1,33 @@ +--- modutils-2.4.26.orig/genksyms/lex.l ++++ modutils-2.4.26/genksyms/lex.l +@@ -130,6 +130,7 @@ + + static int suppress_type_lookup, dont_want_brace_phrase; + static struct string_list *next_node; ++ static int next_token = 0; + + int token, count = 0; + struct string_list *cur_node; +@@ -144,7 +145,12 @@ + } + + repeat: +- token = yylex1(); ++ if (next_token != 0) { ++ token = next_token; ++ next_token = 0; ++ } ++ else ++ token = yylex1(); + + if (token == 0) + return 0; +@@ -425,7 +431,7 @@ + { + /* Put back the token we just read so's we can find it again + after registering the expression. */ +- unput(token); ++ next_token = token; + + lexstate = ST_NORMAL; + token = EXPRESSION_PHRASE; diff --git a/recipes/modutils/files/mnci/modules b/recipes/modutils/files/mnci/modules new file mode 100644 index 0000000000..e228d2e8a8 --- /dev/null +++ b/recipes/modutils/files/mnci/modules @@ -0,0 +1 @@ +sysctl diff --git a/recipes/modutils/files/mnci/modules-ramses b/recipes/modutils/files/mnci/modules-ramses new file mode 100644 index 0000000000..e228d2e8a8 --- /dev/null +++ b/recipes/modutils/files/mnci/modules-ramses @@ -0,0 +1 @@ +sysctl diff --git a/recipes/modutils/files/mnci/modules.conf b/recipes/modutils/files/mnci/modules.conf new file mode 100644 index 0000000000..310e5bb6c8 --- /dev/null +++ b/recipes/modutils/files/mnci/modules.conf @@ -0,0 +1,20 @@ +alias irda0 pxa_ir +alias usbd0 usbdmonitor +alias usbf usb-eth +alias sound-slot-0 pxa-ac97 +alias sound-slot-1 pxa-ac97 + +# Affix modules +alias net-pf-27 affix +alias char-major-60 affix_rfcomm + +# BlueZ modules +alias net-pf-31 bluez +alias bt-proto-0 l2cap +alias bt-proto-2 sco +alias bt-proto-3 rfcomm +alias bt-proto-4 bnep +alias bt-proto-5 cmtp +alias bt-proto-6 hidp +alias tty-ldisc-15 hci_uart +alias char-major-10-250 hci_vhci diff --git a/recipes/modutils/files/mnci/modutils.sh b/recipes/modutils/files/mnci/modutils.sh new file mode 100755 index 0000000000..378915c270 --- /dev/null +++ b/recipes/modutils/files/mnci/modutils.sh @@ -0,0 +1,10 @@ +depmod -Ae + +(cat /etc/modules; echo; ) | +while read module args +do + case "$module" in + \#*|"") continue ;; + esac + modprobe $module $args +done diff --git a/recipes/modutils/files/modules b/recipes/modutils/files/modules new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/recipes/modutils/files/modules diff --git a/recipes/modutils/files/modules.conf b/recipes/modutils/files/modules.conf new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/recipes/modutils/files/modules.conf diff --git a/recipes/modutils/files/modutils-notest.patch b/recipes/modutils/files/modutils-notest.patch new file mode 100644 index 0000000000..0e15a1014c --- /dev/null +++ b/recipes/modutils/files/modutils-notest.patch @@ -0,0 +1,14 @@ +This test disables the annoying + Note: /etc/modules.conf is more recent than /lib/modules/2.4.19-rmk6-pxa1/modules.dep +message. + +--- modutils-2.4.6/insmod/modprobe.c~notest Mon Feb 26 02:07:17 2001 ++++ modutils-2.4.6/insmod/modprobe.c Wed Feb 19 14:31:52 2003 +@@ -785,7 +785,6 @@ + return -1; + } + +-#define EXTREMELY_CAUTIOUS + #ifdef EXTREMELY_CAUTIOUS + if (fstat(fileno(fin), &statbuf) != 0) + error("Could not stat %s", depfile); diff --git a/recipes/modutils/files/modutils.sh b/recipes/modutils/files/modutils.sh new file mode 100755 index 0000000000..9514b1dd4f --- /dev/null +++ b/recipes/modutils/files/modutils.sh @@ -0,0 +1,26 @@ +#!/bin/sh + +LOAD_MODULE=modprobe +[ -e /sbin/modprobe ] || LOAD_MODULE=insmod + +if [ -e /sbin/depmod -a ! -f /lib/modules/`uname -r`/modules.dep ]; then + [ "$VERBOSE" != no ] && echo "Calculating module dependencies ..." + depmod -Ae +fi + +if [ -f /proc/modules ]; then + if [ -f /etc/modules ]; then + [ "$VERBOSE" != no ] && echo -n "Loading modules: " + while read module args + do + case "$module" in + \#*|"") continue ;; + esac + [ "$VERBOSE" != no ] && echo -n "$module " + eval "$LOAD_MODULE $module $args >/dev/null 2>&1" + done < /etc/modules + [ "$VERBOSE" != no ] && echo + fi +fi + +: exit 0 diff --git a/recipes/modutils/files/mtx-1/modules b/recipes/modutils/files/mtx-1/modules new file mode 100644 index 0000000000..3eb719acf9 --- /dev/null +++ b/recipes/modutils/files/mtx-1/modules @@ -0,0 +1,3 @@ +tun +ppp_async +hostap_pci
\ No newline at end of file diff --git a/recipes/modutils/files/mtx-2/modules b/recipes/modutils/files/mtx-2/modules new file mode 100644 index 0000000000..3eb719acf9 --- /dev/null +++ b/recipes/modutils/files/mtx-2/modules @@ -0,0 +1,3 @@ +tun +ppp_async +hostap_pci
\ No newline at end of file diff --git a/recipes/modutils/files/omap1610h2/modules b/recipes/modutils/files/omap1610h2/modules new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/recipes/modutils/files/omap1610h2/modules diff --git a/recipes/modutils/files/omap1610h2/modules.conf b/recipes/modutils/files/omap1610h2/modules.conf new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/recipes/modutils/files/omap1610h2/modules.conf diff --git a/recipes/modutils/files/poodle/modules b/recipes/modutils/files/poodle/modules new file mode 100644 index 0000000000..28d14f6584 --- /dev/null +++ b/recipes/modutils/files/poodle/modules @@ -0,0 +1,3 @@ +usbdcore +net_fd +pxa_bi diff --git a/recipes/modutils/files/poodle/modules.conf b/recipes/modutils/files/poodle/modules.conf new file mode 100644 index 0000000000..8ff87872f3 --- /dev/null +++ b/recipes/modutils/files/poodle/modules.conf @@ -0,0 +1,4 @@ +alias irda0 pxa_ir +alias usbd0 usbdmonitor +alias usbf usb-eth + diff --git a/recipes/modutils/files/program_prefix.patch b/recipes/modutils/files/program_prefix.patch new file mode 100644 index 0000000000..2927a23a22 --- /dev/null +++ b/recipes/modutils/files/program_prefix.patch @@ -0,0 +1,69 @@ +--- modutils-2.4.25/Makefile.common.in Sun Nov 24 21:23:35 2002 ++++ modutils-2.4.25/Makefile.common.in Thu Jan 29 17:16:30 2004 +@@ -7,6 +7,7 @@ + mandir = @mandir@ + prefix = @prefix@ + sbindir = @sbindir@ ++transform = @program_transform_name@ + + AR = @AR@ + ARCH = @ARCH@ +--- modutils-2.4.25/configure.in Thu Jan 29 17:24:10 2004 ++++ modutils-2.4.25/configure.in Thu Jan 29 17:13:59 2004 +@@ -17,6 +17,7 @@ + export CC_FOR_BUILD + + AC_CANONICAL_TARGET([]) ++AC_ARG_PROGRAM + + # Handle target_cpu for compatibility. + if test "$host_cpu" != "$target_cpu"; then +--- modutils-2.4.25/depmod/Makefile.in Fri Mar 28 17:54:20 2003 ++++ modutils-2.4.25/depmod/Makefile.in Thu Jan 29 17:16:41 2004 +@@ -60,7 +60,7 @@ + + install install-bin: all + $(MKDIR) $(DESTDIR)$(sbindir) +- $(INSTALL) $(STRIP) depmod $(DESTDIR)$(sbindir) ++ $(INSTALL) $(STRIP) depmod $(DESTDIR)$(sbindir)/`echo depmod | sed -e'$(transform)'` + + dep depend .depend: depmod.c + $(CC) -M $(CFLAGS) $(DEFSNOARCH) $(DEFS) $^ > .depend +--- modutils-2.4.25/genksyms/Makefile.in Sun Nov 24 21:23:35 2002 ++++ modutils-2.4.25/genksyms/Makefile.in Thu Jan 29 17:17:07 2004 +@@ -62,7 +62,7 @@ + + install install-bin: all + $(MKDIR) $(DESTDIR)$(sbindir) +- $(INSTALL) $(STRIP) genksyms $(DESTDIR)$(sbindir) ++ $(INSTALL) $(STRIP) genksyms $(DESTDIR)$(sbindir)/`echo genksyms | sed -e'$(transform)'` + + # auto-generated dependancies are almost redundant once we add all the + # rules to get the generated files built first. +--- modutils-2.4.25/insmod/Makefile.in Fri Mar 28 17:54:20 2003 ++++ modutils-2.4.25/insmod/Makefile.in Thu Jan 29 17:21:10 2004 +@@ -120,16 +120,19 @@ + @set -ex;\ + for i in $(TARGETS_REAL); do \ + $(MKDIR) $(DESTDIR)$(sbindir); \ +- $(INSTALL) $(STRIP) $$i $(DESTDIR)$(sbindir); done; ++ f=`echo $$i|sed -e'$(transform)'`; \ ++ $(INSTALL) $(STRIP) $$i $(DESTDIR)$(sbindir)/$$f; done; + set -e; \ +- for i in $(srcdir)/insmod_ksymoops_clean $(srcdir)/kernelversion; do \ ++ for i in insmod_ksymoops_clean kernelversion; do \ + $(MKDIR) $(DESTDIR)$(sbindir); \ +- $(INSTALL) $$i $(DESTDIR)$(sbindir); done; ++ f=`echo $$i|sed -e'$(transform)'`; \ ++ $(INSTALL) $$i $(DESTDIR)$(sbindir)/$$f; done; + set -e; \ + for i in $(COMB); do \ +- ln -sf insmod $(DESTDIR)$(sbindir)/$$i; \ ++ f=`echo $$i|sed -e'$(transform)'`; \ ++ ln -sf `echo insmod|sed -e'$(transform)'` $(DESTDIR)$(sbindir)/$$f; \ + (test "$(insmod_static)" = yes && \ +- ln -sf insmod.static $(DESTDIR)$(sbindir)/$$i.static) || true; \ ++ ln -sf `echo insmod.static|sed -e'$(transform)'` $(DESTDIR)$(sbindir)/$$f.static) || true; \ + done + + clean: diff --git a/recipes/modutils/files/tosa/modules b/recipes/modutils/files/tosa/modules new file mode 100644 index 0000000000..754cc7f606 --- /dev/null +++ b/recipes/modutils/files/tosa/modules @@ -0,0 +1,4 @@ +usbdcore +net_fd +pxa_bi +usb_ohci_tc6393
\ No newline at end of file diff --git a/recipes/modutils/files/tosa/modules.conf b/recipes/modutils/files/tosa/modules.conf new file mode 100644 index 0000000000..8ff87872f3 --- /dev/null +++ b/recipes/modutils/files/tosa/modules.conf @@ -0,0 +1,4 @@ +alias irda0 pxa_ir +alias usbd0 usbdmonitor +alias usbf usb-eth + diff --git a/recipes/modutils/files/wrt54/modules b/recipes/modutils/files/wrt54/modules new file mode 100644 index 0000000000..78f651a83d --- /dev/null +++ b/recipes/modutils/files/wrt54/modules @@ -0,0 +1,4 @@ +et +wl +wlcompat +diag diff --git a/recipes/modutils/modutils-collateral.bb b/recipes/modutils/modutils-collateral.bb new file mode 100644 index 0000000000..6d010a5754 --- /dev/null +++ b/recipes/modutils/modutils-collateral.bb @@ -0,0 +1,21 @@ +SECTION = "base" +DESCRIPTION = "modutils configuration files" +PR = "r3" +LICENSE = "MIT" + +SRC_URI = "file://modules \ + file://modules.conf" + +do_compile () { +} + +do_install () { + install -d ${D}${sysconfdir} + install -m 0644 ${WORKDIR}/modules ${D}${sysconfdir}/modules + if [ ${MAJOR_KERNEL_VERSION}=2.6 ]; then + install -d ${D}${sysconfdir}/modprobe.d + else + install -m 0644 ${WORKDIR}/modules.conf ${D}${sysconfdir}/modules.conf + fi + +} diff --git a/recipes/modutils/modutils-cross/module.h.diff b/recipes/modutils/modutils-cross/module.h.diff new file mode 100644 index 0000000000..077baaf3eb --- /dev/null +++ b/recipes/modutils/modutils-cross/module.h.diff @@ -0,0 +1,33 @@ +diff -urN modutils-2.4.27.orig/include/module.h modutils-2.4.27/include/module.h +--- modutils-2.4.27.orig/include/module.h 2003-01-27 11:22:02.000000000 -0500 ++++ modutils-2.4.27/include/module.h 2004-08-23 19:52:34.756772712 -0400 +@@ -88,6 +88,20 @@ + /* For sizeof() which are related to the module platform and not to the + environment isnmod is running in, use sizeof_xx instead of sizeof(xx). */ + ++/* Additional test for OE, set tgt_blah correct for the target arch, *not* the ++ native arch. If int isn't 32bit on the native machine we're in trouble. */ ++ ++#ifdef ARCH_arm ++#define tgt_sizeof_char sizeof(char) ++#define tgt_sizeof_short sizeof(short) ++#define tgt_sizeof_int sizeof(int) ++#define tgt_sizeof_long 4 ++#define tgt_sizeof_char_p 4 ++#define tgt_sizeof_void_p 4 ++#define tgt_long int ++#define tgt_long_fmt "l" ++#define tgt_strtoul strtoul ++#else + #define tgt_sizeof_char sizeof(char) + #define tgt_sizeof_short sizeof(short) + #define tgt_sizeof_int sizeof(int) +@@ -97,7 +111,7 @@ + #define tgt_long long + #define tgt_long_fmt "l" + #define tgt_strtoul strtoul +- ++#endif + /* This assumes that long long on a 32 bit system is equivalent to long on the + * equivalent 64 bit system. Also that void and char pointers are 8 bytes on + * all 64 bit systems. Add per system tweaks if it ever becomes necessary. diff --git a/recipes/modutils/modutils-cross_2.4.27.bb b/recipes/modutils/modutils-cross_2.4.27.bb new file mode 100644 index 0000000000..3bd1ae2b84 --- /dev/null +++ b/recipes/modutils/modutils-cross_2.4.27.bb @@ -0,0 +1,27 @@ +SECTION = "base" +require modutils_${PV}.bb +PR = "r9" +inherit cross +S = "${WORKDIR}/modutils-${PV}" +DEPENDS = "" +PACKAGES = "" +PROVIDES += "virtual/${TARGET_PREFIX}depmod virtual/${TARGET_PREFIX}depmod-2.4" +DEFAULT_PREFERENCE = "1" + +SRC_URI += "file://modutils-cross/module.h.diff;patch=1" + +sbindir = "${prefix}/bin" + +EXTRA_OECONF_append = " --program-prefix=${TARGET_PREFIX}" + +CFLAGS_prepend_mipsel = "-D__MIPSEL__" +CFLAGS_prepend_mipseb = "-D__MIPSEB__" + +do_stage () { + oe_runmake install + mv ${bindir}/${TARGET_PREFIX}depmod ${bindir}/${TARGET_PREFIX}depmod-2.4 +} + +do_install () { + : +} diff --git a/recipes/modutils/modutils-initscripts.bb b/recipes/modutils/modutils-initscripts.bb new file mode 100644 index 0000000000..07f4810fc6 --- /dev/null +++ b/recipes/modutils/modutils-initscripts.bb @@ -0,0 +1,18 @@ +SECTION = "base" +DESCRIPTION = "modutils configuration files" +LICENSE = "PD" +SRC_URI = "file://modutils.sh" +PR = "r3" + +INITSCRIPT_NAME = "modutils.sh" +INITSCRIPT_PARAMS = "start 20 S ." + +inherit update-rc.d + +do_compile () { +} + +do_install () { + install -d ${D}${sysconfdir}/init.d/ + install -m 0755 ${WORKDIR}/modutils.sh ${D}${sysconfdir}/init.d/ +} diff --git a/recipes/modutils/modutils_2.4.27.bb b/recipes/modutils/modutils_2.4.27.bb new file mode 100644 index 0000000000..9cedecaa9a --- /dev/null +++ b/recipes/modutils/modutils_2.4.27.bb @@ -0,0 +1,89 @@ +SECTION = "base" +DESCRIPTION = "These utilities are intended to make a Linux modular kernel \ +manageable for all users, administrators and distribution maintainers." +LICENSE = "GPLv2" +DEPENDS = "bison-native" +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/files" +PR = "r8" + +SRC_URI = "${KERNELORG_MIRROR}/pub/linux/utils/kernel/modutils/v2.4/modutils-${PV}.tar.bz2 \ + file://lex.l.diff;patch=1 \ + file://modutils-notest.patch;patch=1 \ + file://configure.patch;patch=1 \ + file://program_prefix.patch;patch=1 \ + file://armeb.patch;patch=1 \ + file://gcc4.patch;patch=1" + +inherit autotools + +# modutils go in /sbin +sbindir = "/sbin" +EXTRA_OECONF = "--disable-strip" +export BUILDCC = "${BUILD_CC}" +export BUILDCFLAGS = "${BUILD_CFLAGS}" + +do_install () { + oe_runmake 'DESTDIR=${D}' install + install -d ${D}${sysconfdir} + rm ${D}${base_sbindir}/lsmod + install -d ${D}${base_bindir}/ + ln -s ../sbin/insmod ${D}${base_bindir}/lsmod + for f in bin/lsmod sbin/insmod sbin/rmmod sbin/modprobe sbin/modinfo sbin/depmod; do mv ${D}/$f ${D}/$f.24 + done +} + +pkg_postinst_modutils () { +#!/bin/sh +for f in sbin/insmod sbin/modprobe sbin/rmmod bin/lsmod; do + bn=`basename $f` + update-alternatives --install /$f $bn /$f.24 10 +done +if test -n "$D"; then + D="-r $D" + if test -n "`which ${TARGET_PREFIX}depmod-2.4`"; then + for kerneldir in `ls -p ${IMAGE_ROOTFS}/lib/modules|grep /`; do + kernelver=`basename $kerneldir` + ${TARGET_PREFIX}depmod-2.4 -a -b ${IMAGE_ROOTFS} -C ${IMAGE_ROOTFS}/${sysconfdir}/modules.conf -r $kernelver + done + fi +fi +update-rc.d $D modutils.sh start 20 S . +} + +pkg_prerm_modutils () { +#!/bin/sh +for f in sbin/insmod sbin/modprobe sbin/rmmod sbin/depmod sbin/modinfo bin/lsmod; do +bn=`basename $f` + update-alternatives --remove $bn /$f.24 +done +if test -n "$D"; then + D="-r $D" +fi +update-rc.d $D modutils.sh remove +} + +pkg_postinst_modutils-depmod() { +#!/bin/sh +update-alternatives --install /sbin/depmod depmod /sbin/depmod.24 10 +} + +pkg_postinst_modutils-modinfo() { +#!/bin/sh +update-alternatives --install /sbin/modinfo modinfo /sbin/modinfo.24 10 +} + +pkg_prerm_modutils-depmod() { +#!/bin/sh +update-alternatives --remove depmod /sbin/depmod.24 +} + +pkg_prerm_modutils-modinfo() { +#!/bin/sh +update-alternatives --remove modinfo /sbin/modinfo.24 +} + +PACKAGES = "${PN}-dbg modutils-depmod modutils-modinfo modutils-doc modutils" + +FILES_modutils-depmod = "sbin/depmod.24" +FILES_modutils-modinfo = "sbin/modinfo.24" +RDEPENDS_modutils = "modutils-depmod" |