diff options
-rw-r--r-- | classes/wrt-image.bbclass | 7 | ||||
-rw-r--r-- | conf/machine/wrt54.conf | 2 | ||||
-rw-r--r-- | packages/linux/linux-wrt_2.4.30.bb | 2 | ||||
-rw-r--r-- | packages/wrt/wrt-utils.bb | 50 |
4 files changed, 56 insertions, 5 deletions
diff --git a/classes/wrt-image.bbclass b/classes/wrt-image.bbclass index f8ecce320b..ba1163a719 100644 --- a/classes/wrt-image.bbclass +++ b/classes/wrt-image.bbclass @@ -3,15 +3,14 @@ ROOTFS_POSTPROCESS_COMMAND += "rm -f ${IMAGE_ROOTFS}/boot/zImage*" def wrt_get_kernel_version(d): import bb - if not bb.data.inherits_class('native', d): + if bb.data.inherits_class('image_ipk', d): skd = bb.data.getVar('STAGING_KERNEL_DIR', d, 1) return base_read_file(skd+'/kernel-abiversion') - return "-no kernel version for native-" - -KERNEL_VERSION = "${@wrt_get_kernel_version(d)}" + return "-no kernel version for available-" wrt_create_images() { I=${DEPLOY_DIR}/images + KERNEL_VERSION="${@wrt_get_kernel_version(d)}" for type in ${IMAGE_FSTYPES}; do # generic diff --git a/conf/machine/wrt54.conf b/conf/machine/wrt54.conf index 6883782799..2f5978002a 100644 --- a/conf/machine/wrt54.conf +++ b/conf/machine/wrt54.conf @@ -8,7 +8,7 @@ IPKG_ARCHS = "all mipsel ${MACHINE}" SERIAL_CONSOLE = "tts/0" -BOOTSTRAP_EXTRA_DEPENDS += "virtual/kernel" +BOOTSTRAP_EXTRA_DEPENDS += "virtual/kernel wrt-utils wrt-init loader" BOOTSTRAP_EXTRA_RDEPENDS += "kernel-module-wl kernel-module-et kernel-module-wlcompat" BOOTSTRAP_EXTRA_RDEPENDS += "wrt-init wrt-utils" BOOTSTRAP_EXTRA_RRECOMMENDS += "" diff --git a/packages/linux/linux-wrt_2.4.30.bb b/packages/linux/linux-wrt_2.4.30.bb index 730c9c3cd7..a207f2d4cd 100644 --- a/packages/linux/linux-wrt_2.4.30.bb +++ b/packages/linux/linux-wrt_2.4.30.bb @@ -4,6 +4,8 @@ HOMEPAGE = "http://openwrt.org" LICENSE = "GPL" PR = "r1" +DEPENDS = "lzma-native" + SRC_URI = "http://www.fi.kernel.org/pub/linux/kernel/v2.4/linux-2.4.30.tar.bz2 \ cvs://anonymous@openwrt.org/openwrt;module=openwrt/package/linux/kernel-source;tag=TESTED \ http://downloads.openwrt.org/kernel-binary-wl-0.2.tar.gz \ diff --git a/packages/wrt/wrt-utils.bb b/packages/wrt/wrt-utils.bb index e69de29bb2..d1cd4c9cc5 100644 --- a/packages/wrt/wrt-utils.bb +++ b/packages/wrt/wrt-utils.bb @@ -0,0 +1,50 @@ +DESCRIPTION = "wrt tools" +SECTION = "base" +LICENSE = "broadcom" +SRC_URI = "cvs://anonymous@openwrt.org/openwrt;module=openwrt/package/openwrt;tag=TESTED \ + http://openwrt.inf.fh-brs.de/mirror/linksys-wlconf.tar.gz \ + file://nvram-makefile.diff;patch=1;pnum=0 \ + file://libshared-makefile.diff;patch=1;pnum=0" + +S = "${WORKDIR}/openwrt" + +inherit module-base + +TARGET_CFLAGS =+ "-I${STAGING_KERNEL_DIR}/include" + +do_compile() { + make -C libshared TARGET_CC="${CC}" + make -C libnvram TARGET_CC="${CC}" + + ${CC} ${CFLAGS} -Iinclude -o wlc wlc.c -L./libshared -lshared + ${CC} ${CFLAGS} -o jffs2root jffs2root.c + ${CC} ${CFLAGS} -o mtd mtd.c + + make -C ../linksys-wlconf TOP=${S} SRCBASE=${S} LDFLAGS="-L${S}/libnvram -lnvram -L${S}/libshared -lshared" + + ${KERNEL_CC} -D__KERNEL__ -fno-strict-aliasing -fno-common -fomit-frame-pointer -G 0 \ + -mno-abicalls -fno-pic -finline-limit=100000 -mabi=32 -march=mips32 -Wa,-32 \ + -Wa,-march=mips32 -Wa,-mips32 -Wa,--trap -DMODULE -mlong-calls -fno-common \ + -funsigned-char -nostdinc -iwithprefix include -I. -I${STAGING_KERNEL_DIR}/include \ + -I${STAGING_KERNEL_DIR}/include/asm/gcc -I./include -c -o wlcompat.o wlcompat.c +} + +do_install() { + install -d ${D}/usr/sbin/ ${D}/sbin/ ${D}/${libdir} ${D}/lib/modules/${KERNEL_VERSION} + install -m 644 libshared/libshared.so ${D}/${libdir} + install -m 755 libnvram/nvram ${D}/usr/sbin/ + install -m 644 libnvram/libnvram.so ${D}/${libdir} + + install -m 755 wlc ${D}/usr/sbin/ + install -m 755 jffs2root ${D}/sbin/ + install -m 755 mtd ${D}/sbin/ + + install -m 755 ../linksys-wlconf/wlconf ${D}/usr/sbin/ + install -m 644 wlcompat.o ${D}/lib/modules/${KERNEL_VERSION}/ +} + +PACKAGES = "wrt-libs wrt-utils kernel-module-wlcompat" +FILES_wrt-libs = "/usr/lib" +FILES_wrt-utils = "/usr/sbin /sbin" +FILES_kernel-module-wlcompat = "/lib/modules/" +RDEPENDS_wrt-utils = "wrt-libs" |