--- /dev/null
+include $(TOPDIR)/rules.mk
+
+KDIR:=$(BUILD_DIR)/linux-$(KERNEL)-$(BOARD)
+
+ifneq ($(CONFIG_BIG_ENDIAN),y)
+JFFS2OPTS := --pad --little-endian --squash
+SQUASHFS_OPTS := -le
+else
+JFFS2OPTS := --pad --big-endian --squash
+SQUASHFS_OPTS := -be
+endif
+
+ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
+ ifeq ($(CONFIG_TARGET_ROOTFS_JFFS2),y)
+ define Image/mkfs/jffs2
+ rm -rf $(BUILD_DIR)/root/jffs
+
+ $(STAGING_DIR)/bin/mkfs.jffs2 $(JFFS2OPTS) -e 0x10000 -o $(KDIR)/root.jffs2-64k -d $(BUILD_DIR)/root
+ $(STAGING_DIR)/bin/mkfs.jffs2 $(JFFS2OPTS) -e 0x20000 -o $(KDIR)/root.jffs2-128k -d $(BUILD_DIR)/root
+
+ $(call Image/Build,jffs2-64k)
+ $(call Image/Build,jffs2-128k)
+ endef
+ endif
+
+ ifeq ($(CONFIG_TARGET_ROOTFS_SQUASHFS),y)
+ define Image/mkfs/squashfs
+ @mkdir -p $(BUILD_DIR)/root/jffs
+ $(STAGING_DIR)/bin/mksquashfs-lzma $(BUILD_DIR)/root $(KDIR)/root.squashfs -nopad -noappend -root-owned $(SQUASHFS_OPTS)
+ $(call Image/Build,squashfs)
+ endef
+ endif
+
+ ifeq ($(CONFIG_TARGET_ROOTFS_TGZ),y)
+ define Image/mkfs/tgz
+ tar -zcf $(BIN_DIR)/openwrt-rootfs.tgz --owner=root --group=root -C $(BUILD_DIR)/root/ .
+ endef
+ endif
+endif
+
+define Image/mkfs/prepare/default
+ find $(BUILD_DIR)/root -type f -not -perm +0100 | xargs chmod 0644
+ find $(BUILD_DIR)/root -type f -perm +0100 | xargs chmod 0755
+ find $(BUILD_DIR)/root -type d | xargs chmod 0755
+ mkdir -p $(BUILD_DIR)/root/tmp
+ chmod 0777 $(BUILD_DIR)/root/tmp
+endef
+
+define Image/mkfs/prepare
+ $(call Image/mkfs/prepare/default)
+endef
+
+define BuildImage
+compile:
+ $(call Build/Compile)
+
+install:
+ $(call Image/Prepare)
+ $(call Image/mkfs/prepare)
+ $(call Image/BuildKernel)
+ $(call Image/mkfs/jffs2)
+ $(call Image/mkfs/squashfs)
+ $(call Image/mkfs/tgz)
+
+clean:
+ $(call Build/Clean)
+endef
+
+compile-targets:
+install-targets:
+clean-targets:
+
+source:
+prepare:
+compile: compile-targets
+install: compile install-targets
+clean: clean-targets
--- /dev/null
+include $(TOPDIR)/include/modules-$(KERNEL).mk
+
+LINUX_SOURCE:=linux-$(LINUX_VERSION).tar.bz2
+LINUX_SITE=http://www.us.kernel.org/pub/linux/kernel/v$(KERNEL) \
+ http://www.us.kernel.org/pub/linux/kernel/v$(KERNEL) \
+ http://www.kernel.org/pub/linux/kernel/v$(KERNEL) \
+ http://www.de.kernel.org/pub/linux/kernel/v$(KERNEL)
+
+KERNEL_IDIR:=$(KERNEL_BUILD_DIR)/kernel-ipkg
+KERNEL_IPKG:=$(KERNEL_BUILD_DIR)/kernel_$(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE)_$(ARCH).ipk
+INSTALL_TARGETS += $(KERNEL_IPKG)
+
+$(TARGETS): $(PACKAGE_DIR)
+
+$(LINUX_DIR):
+ mkdir -p $@
+
+$(PACKAGE_DIR):
+ mkdir -p $@
+
+$(DL_DIR)/$(LINUX_SOURCE):
+ -mkdir -p $(DL_DIR)
+ $(SCRIPT_DIR)/download.pl $(DL_DIR) $(LINUX_SOURCE) $(LINUX_KERNEL_MD5SUM) $(LINUX_SITE)
+
+$(LINUX_DIR)/.unpacked: $(DL_DIR)/$(LINUX_SOURCE)
+ -mkdir -p $(KERNEL_BUILD_DIR)
+ bzcat $(DL_DIR)/$(LINUX_SOURCE) | tar -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS) -
+ touch $@
+
+ifeq ($(KERNEL),2.4)
+$(LINUX_DIR)/.configured: $(LINUX_DIR)/.patched
+ $(SED) "s,^CROSS_COMPILE.*,CROSS_COMPILE=$(KERNEL_CROSS),g;" \
+ $(LINUX_DIR)/Makefile \
+ $(LINUX_DIR)/arch/*/Makefile
+ $(SED) "s,\-mcpu=,\-mtune=,g;" $(LINUX_DIR)/arch/mips/Makefile
+ $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_KARCH) oldconfig include/linux/compile.h include/linux/version.h
+ touch $@
+
+$(LINUX_DIR)/.depend_done: $(LINUX_DIR)/.configured
+ $(MAKE) -C $(LINUX_DIR) CROSS_COMPILE="$(KERNEL_CROSS)" ARCH=$(LINUX_KARCH) dep
+ touch $@
+
+$(LINUX_DIR)/vmlinux: $(LINUX_DIR)/.depend_done
+else
+$(LINUX_DIR)/.configured: $(LINUX_DIR)/.patched
+ $(MAKE) -C $(LINUX_DIR) CROSS_COMPILE="$(KERNEL_CROSS)" ARCH=$(LINUX_KARCH) oldconfig prepare scripts
+ touch $@
+endif
+
+ramdisk-config: $(LINUX_DIR)/.configured FORCE
+ mv $(LINUX_DIR)/.config $(LINUX_DIR)/.config.old
+ grep -v INITRAMFS $(LINUX_DIR)/.config.old > $(LINUX_DIR)/.config
+ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
+ echo 'CONFIG_INITRAMFS_SOURCE="../../root"' >> $(LINUX_DIR)/.config
+ echo 'CONFIG_INITRAMFS_ROOT_UID=0' >> $(LINUX_DIR)/.config
+ echo 'CONFIG_INITRAMFS_ROOT_GID=0' >> $(LINUX_DIR)/.config
+ mkdir -p $(BUILD_DIR)/root/etc/init.d
+ $(CP) ../generic-2.6/files/init $(BUILD_DIR)/root/
+else
+ rm -f $(BUILD_DIR)/root/init $(BUILD_DIR)/root/etc/init.d/S00initramfs
+ echo 'CONFIG_INITRAMFS_SOURCE=""' >> $(LINUX_DIR)/.config
+endif
+
+$(LINUX_DIR)/vmlinux: $(STAMP_DIR)/.linux-compile pkg-install ramdisk-config
+ $(MAKE) -C $(LINUX_DIR) CROSS_COMPILE="$(KERNEL_CROSS)" ARCH=$(LINUX_KARCH) PATH=$(TARGET_PATH)
+
+$(LINUX_KERNEL): $(LINUX_DIR)/vmlinux
+ $(TARGET_CROSS)objcopy -O binary -R .reginfo -R .note -R .comment -R .mdebug -S $< $@
+ touch -c $(LINUX_KERNEL)
+
+$(LINUX_DIR)/.modules_done:
+ rm -rf $(KERNEL_BUILD_DIR)/modules
+ $(MAKE) -C "$(LINUX_DIR)" CROSS_COMPILE="$(KERNEL_CROSS)" ARCH=$(LINUX_KARCH) PATH="$(TARGET_PATH)" modules
+ $(MAKE) -C "$(LINUX_DIR)" CROSS_COMPILE="$(KERNEL_CROSS)" DEPMOD=true INSTALL_MOD_PATH=$(KERNEL_BUILD_DIR)/modules modules_install
+ touch $(LINUX_DIR)/.modules_done
+
+$(STAMP_DIR)/.linux-compile:
+ @$(MAKE) $(LINUX_DIR)/.modules_done $(TARGETS) $(KERNEL_IPKG)
+ ln -sf $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION) $(BUILD_DIR)/linux
+ touch $@
+
+$(KERNEL_IPKG):
+ rm -rf $(KERNEL_IDIR)
+ mkdir -p $(KERNEL_IDIR)/etc
+ $(SCRIPT_DIR)/make-ipkg-dir.sh $(KERNEL_IDIR) ../control/kernel.control $(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE) $(ARCH)
+ if [ -f ./config/$(BOARD).modules ]; then \
+ cp ./config/$(BOARD).modules $(KERNEL_IDIR)/etc/modules; \
+ fi
+ $(IPKG_BUILD) $(KERNEL_IDIR) $(KERNEL_BUILD_DIR)
+
+$(TOPDIR)/.kernel.mk:
+ echo "BOARD:=$(BOARD)" > $@
+ echo "LINUX_VERSION:=$(LINUX_VERSION)" >> $@
+ echo "LINUX_RELEASE:=$(LINUX_RELEASE)" >> $@
+
+pkg-install: FORCE
+ @{ [ "$(INSTALL_TARGETS)" != "" ] && $(IPKG) install $(INSTALL_TARGETS) || true; }
+
+source: $(DL_DIR)/$(LINUX_SOURCE)
+prepare:
+ @mkdir -p $(STAMP_DIR) $(PACKAGE_DIR)
+ @$(MAKE) $(LINUX_DIR)/.configured
+
+compile: prepare $(STAMP_DIR)/.linux-compile
+
+install: compile $(LINUX_KERNEL)
+
+mostlyclean: FORCE
+ rm -f $(STAMP_DIR)/.linux-compile
+ rm -f $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION)/.modules_done
+ rm -f $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION)/.drivers-unpacked
+ $(MAKE) -C $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION) clean
+ rm -f $(LINUX_KERNEL)
+
+rebuild: FORCE
+ -$(MAKE) mostlyclean
+ if [ -f $(LINUX_KERNEL) ]; then \
+ $(MAKE) clean; \
+ fi
+ $(MAKE) compile $(MAKE_TRACE)
+
+clean: FORCE
+ rm -f $(STAMP_DIR)/.linux-compile
+ rm -rf $(KERNEL_BUILD_DIR)
+ rm -f $(TARGETS)
--- /dev/null
+ifneq ($(DUMP),1)
+include $(TOPDIR)/.kernel.mk
+
+KERNEL:=unknown
+ifneq (,$(findstring 2.4.,$(LINUX_VERSION)))
+KERNEL:=2.4
+LINUX_KMOD_SUFFIX=o
+endif
+ifneq (,$(findstring 2.6.,$(LINUX_VERSION)))
+KERNEL:=2.6
+LINUX_KMOD_SUFFIX=ko
+endif
+
+LINUX_KARCH:=$(shell echo $(ARCH) | sed -e 's/i[3-9]86/i386/' \
+ -e 's/mipsel/mips/' \
+ -e 's/mipseb/mips/' \
+ -e 's/powerpc/ppc/' \
+ -e 's/sh[234]/sh/' \
+ -e 's/armeb/arm/' \
+)
+
+KERNEL_BUILD_DIR:=$(BUILD_DIR)/linux-$(KERNEL)-$(BOARD)
+LINUX_DIR := $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION)
+
+MODULES_SUBDIR:=lib/modules/$(LINUX_VERSION)
+MODULES_DIR := $(KERNEL_BUILD_DIR)/modules/$(MODULES_SUBDIR)
+TARGET_MODULES_DIR := $(LINUX_TARGET_DIR)/$(MODULES_SUBDIR)
+KMOD_BUILD_DIR := $(KERNEL_BUILD_DIR)/linux-modules
+
+LINUX_KERNEL:=$(KERNEL_BUILD_DIR)/vmlinux
+endif
+
+# FIXME: remove this crap
+define KMOD_template
+ifeq ($$(strip $(4)),)
+KDEPEND_$(1):=m
+else
+KDEPEND_$(1):=$($(4))
+endif
+
+IDEPEND_$(1):=kernel ($(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE)) $(foreach pkg,$(5),", $(pkg)")
+
+PKG_$(1) := $(PACKAGE_DIR)/kmod-$(2)_$(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE)_$(ARCH).ipk
+I_$(1) := $(KMOD_BUILD_DIR)/ipkg/$(2)
+
+ifeq ($$(KDEPEND_$(1)),m)
+ifneq ($(CONFIG_PACKAGE_KMOD_$(1)),)
+TARGETS += $$(PKG_$(1))
+endif
+ifeq ($(CONFIG_PACKAGE_KMOD_$(1)),y)
+INSTALL_TARGETS += $$(PKG_$(1))
+endif
+endif
+
+$$(PKG_$(1)): $(LINUX_DIR)/.modules_done
+ rm -rf $$(I_$(1))
+ $(SCRIPT_DIR)/make-ipkg-dir.sh $$(I_$(1)) ../control/kmod-$(2).control $(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE) $(ARCH)
+ echo "Depends: $$(IDEPEND_$(1))" >> $$(I_$(1))/CONTROL/control
+ifneq ($(strip $(3)),)
+ mkdir -p $$(I_$(1))/lib/modules/$(LINUX_VERSION)
+ $(CP) $(3) $$(I_$(1))/lib/modules/$(LINUX_VERSION)
+endif
+ifneq ($(6),)
+ mkdir -p $$(I_$(1))/etc/modules.d
+ for module in $(7); do \
+ echo $$$$module >> $$(I_$(1))/etc/modules.d/$(6)-$(2); \
+ done
+ echo "#!/bin/sh" >> $$(I_$(1))/CONTROL/postinst
+ echo "[ -z \"\$$$$IPKG_INSTROOT\" ] || exit" >> $$(I_$(1))/CONTROL/postinst
+ echo ". /etc/functions.sh" >> $$(I_$(1))/CONTROL/postinst
+ echo "load_modules /etc/modules.d/$(6)-$(2)" >> $$(I_$(1))/CONTROL/postinst
+ chmod 0755 $$(I_$(1))/CONTROL/postinst
+endif
+ $(8)
+ $(IPKG_BUILD) $$(I_$(1)) $(PACKAGE_DIR)
+endef
+
--- /dev/null
+include $(TOPDIR)/include/netfilter.mk
+
+# Networking
+
+$(eval $(call KMOD_template,ATM,atm,\
+ $(MODULES_DIR)/kernel/net/atm/atm.o \
+ $(MODULES_DIR)/kernel/net/atm/br2684.o \
+,CONFIG_ATM,,50,atm))
+
+$(eval $(call KMOD_template,GRE,gre,\
+ $(MODULES_DIR)/kernel/net/ipv4/ip_gre.o \
+,CONFIG_NET_IPGRE))
+
+$(eval $(call KMOD_template,IMQ,imq,\
+ $(MODULES_DIR)/kernel/net/ipv4/netfilter/*IMQ*.o \
+ $(MODULES_DIR)/kernel/drivers/net/imq.o \
+))
+$(eval $(call KMOD_template,IPIP,ipip,\
+ $(MODULES_DIR)/kernel/net/ipv4/ipip.o \
+,CONFIG_NET_IPIP,,60,ipip))
+
+$(eval $(call KMOD_template,IPV6,ipv6,\
+ $(MODULES_DIR)/kernel/net/ipv6/ipv6.o \
+,CONFIG_IPV6,,20,ipv6))
+
+$(eval $(call KMOD_template,PPP,ppp,\
+ $(MODULES_DIR)/kernel/drivers/net/ppp_async.o \
+ $(MODULES_DIR)/kernel/drivers/net/ppp_generic.o \
+ $(MODULES_DIR)/kernel/drivers/net/slhc.o \
+ $(MODULES_DIR)/kernel/drivers/net/pppox.o \
+,CONFIG_PPP))
+
+$(eval $(call KMOD_template,MPPE,mppe,\
+ $(MODULES_DIR)/kernel/drivers/net/ppp_mppe_mppc.o \
+,CONFIG_PPP_MPPE_MPPC))
+
+$(eval $(call KMOD_template,PPPOATM,pppoatm,\
+ $(MODULES_DIR)/kernel/net/atm/pppoatm.o \
+,CONFIG_PPPOATM))
+
+$(eval $(call KMOD_template,PPPOE,pppoe,\
+ $(MODULES_DIR)/kernel/drivers/net/pppoe.o \
+,CONFIG_PPPOE))
+
+$(eval $(call KMOD_template,SCHED,sched,\
+ $(MODULES_DIR)/kernel/net/sched/*.o \
+))
+
+$(eval $(call KMOD_template,TUN,tun,\
+ $(MODULES_DIR)/kernel/drivers/net/tun.o \
+,CONFIG_TUN,,20,tun))
+
+# Filtering / Firewalling
+
+$(eval $(call KMOD_template,ARPTABLES,arptables,\
+ $(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.o \
+,CONFIG_IP_NF_ARPTABLES))
+
+$(eval $(call KMOD_template,EBTABLES,ebtables,\
+ $(MODULES_DIR)/kernel/net/bridge/netfilter/*.o \
+,CONFIG_BRIDGE_NF_EBTABLES))
+
+# metapackage for compatibility ...
+$(eval $(call KMOD_template,IPTABLES_EXTRA,iptables-extra,\
+,,kmod-ipt-conntrack kmod-ipt-extra kmod-ipt-filter kmod-ipt-ipopt kmod-ipt-ipsec kmod-ipt-nat kmod-ipt-nat-extra kmod-ipt-queue kmod-ipt-ulogd))
+
+$(eval $(call KMOD_template,IPT_CONNTRACK,ipt-conntrack,\
+ $(foreach mod,$(IPT_CONNTRACK-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
+))
+
+$(eval $(call KMOD_template,IPT_EXTRA,ipt-extra,\
+ $(foreach mod,$(IPT_EXTRA-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
+))
+
+$(eval $(call KMOD_template,IPT_FILTER,ipt-filter,\
+ $(foreach mod,$(IPT_FILTER-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
+))
+
+$(eval $(call KMOD_template,IPT_IPOPT,ipt-ipopt,\
+ $(foreach mod,$(IPT_IPOPT-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
+))
+
+$(eval $(call KMOD_template,IPT_IPSEC,ipt-ipsec,\
+ $(foreach mod,$(IPT_IPSEC-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
+))
+
+$(eval $(call KMOD_template,IPT_NAT,ipt-nat,\
+ $(foreach mod,$(IPT_NAT-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
+))
+
+$(eval $(call KMOD_template,IPT_NAT_EXTRA,ipt-nat-extra,\
+ $(foreach mod,$(IPT_NAT_EXTRA-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
+,,,40,$(IPT_NAT_EXTRA-m)))
+
+$(eval $(call KMOD_template,IPT_QUEUE,ipt-queue,\
+ $(foreach mod,$(IPT_QUEUE-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
+))
+
+$(eval $(call KMOD_template,IPT_ULOG,ipt-ulog,\
+ $(foreach mod,$(IPT_ULOG-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
+))
+
+$(eval $(call KMOD_template,IP6TABLES,ip6tables,\
+ $(MODULES_DIR)/kernel/net/ipv6/netfilter/ip*.o \
+,CONFIG_IP6_NF_IPTABLES,kmod-ipv6))
+
+
+# Block devices
+
+$(eval $(call KMOD_template,IDE,ide,\
+ $(MODULES_DIR)/kernel/drivers/ide/*.o \
+ $(MODULES_DIR)/kernel/drivers/ide/*/*.o \
+,CONFIG_IDE,,20,pdc202xx_old ide-core ide-detect ide-disk))
+
+$(eval $(call KMOD_template,LOOP,loop,\
+ $(MODULES_DIR)/kernel/drivers/block/loop.o \
+,CONFIG_BLK_DEV_LOOP,,20,loop))
+
+$(eval $(call KMOD_template,NBD,nbd,\
+ $(MODULES_DIR)/kernel/drivers/block/nbd.o \
+,CONFIG_BLK_DEV_NBD,,20,nbd))
+
+
+# Crypto
+
+ifneq ($(wildcard $(MODULES_DIR)/kernel/crypto/*.o),)
+CONFIG_CRYPTO:=m
+endif
+$(eval $(call KMOD_template,CRYPTO,crypto,\
+ $(MODULES_DIR)/kernel/crypto/*.o \
+,CONFIG_CRYPTO))
+
+
+# Filesystems
+
+$(eval $(call KMOD_template,FS_CIFS,fs-cifs,\
+ $(MODULES_DIR)/kernel/fs/cifs/cifs.o \
+,CONFIG_CIFS,,30,cifs))
+
+$(eval $(call KMOD_template,FS_MINIX,fs-minix,\
+ $(MODULES_DIR)/kernel/fs/minix/*.o \
+,CONFIG_MINIX_FS,,30,minix))
+
+$(eval $(call KMOD_template,FS_EXT2,fs-ext2,\
+ $(MODULES_DIR)/kernel/fs/ext2/*.o \
+,CONFIG_EXT2_FS,,30,ext2))
+
+$(eval $(call KMOD_template,FS_EXT3,fs-ext3,\
+ $(MODULES_DIR)/kernel/fs/ext3/*.o \
+ $(MODULES_DIR)/kernel/fs/jbd/*.o \
+,CONFIG_EXT3_FS,,30,jbd ext3))
+
+$(eval $(call KMOD_template,FS_HFSPLUS,fs-hfsplus,\
+ $(MODULES_DIR)/kernel/fs/hfsplus/*.o \
+,CONFIG_HFSPLUS_FS,,30,hfsplus))
+
+$(eval $(call KMOD_template,FS_NFS,fs-nfs,\
+ $(MODULES_DIR)/kernel/fs/lockd/*.o \
+ $(MODULES_DIR)/kernel/fs/nfs/*.o \
+ $(MODULES_DIR)/kernel/net/sunrpc/*.o \
+,CONFIG_NFS_FS,,30,sunrpc lockd nfs))
+
+$(eval $(call KMOD_template,FS_VFAT,fs-vfat,\
+ $(MODULES_DIR)/kernel/fs/vfat/vfat.o \
+ $(MODULES_DIR)/kernel/fs/fat/fat.o \
+,CONFIG_VFAT_FS,,30,fat vfat))
+
+$(eval $(call KMOD_template,FS_XFS,fs-xfs,\
+ $(MODULES_DIR)/kernel/fs/xfs/*.o \
+,CONFIG_XFS_FS,,30,xfs))
+
+
+# Multimedia
+
+$(eval $(call KMOD_template,PWC,pwc,\
+ $(MODULES_DIR)/kernel/drivers/usb/pwc.o \
+,CONFIG_USB_PWC,kmod-videodev,63,pwc))
+
+$(eval $(call KMOD_template,SOUNDCORE,soundcore,\
+ $(MODULES_DIR)/kernel/drivers/sound/soundcore.o \
+,CONFIG_SOUND,,30,soundcore))
+
+$(eval $(call KMOD_template,VIDEODEV,videodev,\
+ $(MODULES_DIR)/kernel/drivers/media/video/videodev.o \
+,CONFIG_VIDEO_DEV,,62,videodev))
+
+
+# Network devices
+
+$(eval $(call KMOD_template,NET_3C59X,net-3c59x,\
+ $(MODULES_DIR)/kernel/drivers/net/3c59x.o \
+,CONFIG_VORTEX,,10,3c59x))
+
+$(eval $(call KMOD_template,NET_8139TOO,net-8139too,\
+ $(MODULES_DIR)/kernel/drivers/net/8139too.o \
+ $(MODULES_DIR)/kernel/drivers/net/mii.o \
+,CONFIG_8139TOO,,10,mii 8139too))
+
+$(eval $(call KMOD_template,NET_AIRO,net-airo,\
+ $(MODULES_DIR)/kernel/drivers/net/wireless/airo.o \
+,CONFIG_AIRO,,10,airo))
+
+$(eval $(call KMOD_template,NET_E100,net-e100,\
+ $(MODULES_DIR)/kernel/drivers/net/e100.o \
+,CONFIG_E100,,10,e100))
+
+$(eval $(call KMOD_template,NET_HERMES,net-hermes,\
+ $(MODULES_DIR)/kernel/drivers/net/wireless/hermes.o \
+ $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco.o \
+,CONFIG_HERMES,,10,hermes orinoco))
+
+$(eval $(call KMOD_template,NET_HERMES_PCI,net-hermes-pci,\
+ $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco_pci.o \
+,CONFIG_PCI_HERMES,kmod-net-hermes,11,orinoco_pci))
+
+$(eval $(call KMOD_template,NET_HERMES_PCI,net-hermes-plx,\
+ $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco_plx.o \
+,CONFIG_PLX_HERMES,kmod-net-hermes,11,orinoco_plx))
+
+$(eval $(call KMOD_template,NET_NATSEMI,net-natsemi,\
+ $(MODULES_DIR)/kernel/drivers/net/natsemi.o \
+,CONFIG_NATSEMI,,10,natsemi))
+
+$(eval $(call KMOD_template,NET_PRISM54,net-prism54,\
+ $(MODULES_DIR)/kernel/drivers/net/wireless/prism54/prism54.o \
+,CONFIG_PRISM54,,10,prism54))
+
+
+# PCMCIA/CardBus
+
+$(eval $(call KMOD_template,PCMCIA_CORE,pcmcia-core,\
+ $(MODULES_DIR)/kernel/drivers/pcmcia/pcmcia_core.o \
+ $(MODULES_DIR)/kernel/drivers/pcmcia/yenta_socket.o \
+ $(MODULES_DIR)/kernel/drivers/pcmcia/ds.o \
+,CONFIG_PCMCIA,,50,pcmcia_core yenta_socket ds))
+
+$(eval $(call KMOD_template,PCMCIA_SERIAL,pcmcia-serial,\
+ $(MODULES_DIR)/kernel/drivers/char/pcmcia/serial_cs.o \
+,CONFIG_PCMCIA_SERIAL_CS,kmod-pcmcia-core,51,serial_cs))
+
+
+# USB
+
+$(eval $(call KMOD_template,USB,usb-core,\
+ $(MODULES_DIR)/kernel/drivers/usb/usbcore.o \
+,CONFIG_USB,,50,usbcore))
+
+$(eval $(call KMOD_template,USB_OHCI,usb-ohci,\
+ $(MODULES_DIR)/kernel/drivers/usb/host/usb-ohci.o \
+,CONFIG_USB_OHCI,kmod-usb-core,60,usb-ohci))
+
+$(eval $(call KMOD_template,USB_UHCI,usb-uhci,\
+ $(MODULES_DIR)/kernel/drivers/usb/host/uhci.o \
+,CONFIG_USB_UHCI_ALT,kmod-usb-core,60,uhci))
+
+$(eval $(call KMOD_template,USB2,usb2,\
+ $(MODULES_DIR)/kernel/drivers/usb/host/ehci-hcd.o \
+,CONFIG_USB_EHCI_HCD,kmod-usb-core,60,ehci-hcd))
+
+$(eval $(call KMOD_template,USB_ACM,usb-acm,\
+ $(MODULES_DIR)/kernel/drivers/usb/acm.o \
+,CONFIG_USB_ACM))
+
+$(eval $(call KMOD_template,USB_AUDIO,usb-audio,\
+ $(MODULES_DIR)/kernel/drivers/usb/audio.o \
+,CONFIG_USB_AUDIO,kmod-soundcore kmod-usb-core,61,audio))
+
+$(eval $(call KMOD_template,USB_PRINTER,usb-printer,\
+ $(MODULES_DIR)/kernel/drivers/usb/printer.o \
+,CONFIG_USB_PRINTER,kmod-usb-core,60,printer))
+
+$(eval $(call KMOD_template,USB_SERIAL,usb-serial,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/usbserial.o \
+,CONFIG_USB_SERIAL,kmod-usb-core,60,usbserial))
+
+$(eval $(call KMOD_template,USB_SERIAL_BELKIN,usb-serial-belkin,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/belkin_sa.o \
+,CONFIG_USB_SERIAL_BELKIN,kmod-usb-serial,61,belkin_sa))
+
+$(eval $(call KMOD_template,USB_SERIAL_FTDI,usb-serial-ftdi,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/ftdi_sio.o \
+,CONFIG_USB_SERIAL_FTDI_SIO,kmod-usb-serial,61,ftdi_sio))
+
+$(eval $(call KMOD_template,USB_SERIAL_MCT_U232,usb-serial-mct-u232,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/mct_u232.o \
+,CONFIG_USB_SERIAL_MCT_U232,kmod-usb-serial,61,mct_u232))
+
+$(eval $(call KMOD_template,USB_SERIAL_PL2303,usb-serial-pl2303,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/pl2303.o \
+,CONFIG_USB_SERIAL_PL2303,kmod-usb-serial,61,pl2303))
+
+$(eval $(call KMOD_template,USB_SERIAL_VISOR,usb-serial-visor,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/visor.o \
+,CONFIG_USB_SERIAL_VISOR,kmod-usb-serial,61,visor))
+
+$(eval $(call KMOD_template,USB_STORAGE,usb-storage,\
+ $(MODULES_DIR)/kernel/drivers/scsi/*.o \
+ $(MODULES_DIR)/kernel/drivers/usb/storage/*.o \
+,CONFIG_USB_STORAGE,kmod-usb-core,60,scsi_mod sd_mod usb-storage))
+
+
+# Misc. devices
+
+$(eval $(call KMOD_template,AX25,ax25,\
+ $(MODULES_DIR)/kernel/net/ax25/ax25.o \
+ $(MODULES_DIR)/kernel/drivers/net/hamradio/mkiss.o \
+,CONFIG_AX25,,90,ax25 mkiss))
+
+$(eval $(call KMOD_template,BLUETOOTH,bluetooth,\
+ $(MODULES_DIR)/kernel/net/bluetooth/*.o \
+ $(MODULES_DIR)/kernel/net/bluetooth/rfcomm/*.o \
+ $(MODULES_DIR)/kernel/drivers/bluetooth/*.o \
+,CONFIG_BLUEZ))
+
+$(eval $(call KMOD_template,SOFTDOG,softdog,\
+ $(MODULES_DIR)/kernel/drivers/char/softdog.o \
+,CONFIG_SOFT_WATCHDOG,,95,softdog))
+
+
+
--- /dev/null
+NF_2_6:=1
+include $(TOPDIR)/include/netfilter.mk
+
+# Networking
+
+$(eval $(call KMOD_template,ATM,atm,\
+ $(MODULES_DIR)/kernel/net/atm/atm.ko \
+ $(MODULES_DIR)/kernel/net/atm/br2684.ko \
+ $(MODULES_DIR)/kernel/drivers/atm/atmtcp.ko \
+,CONFIG_ATM,,50,atm))
+
+$(eval $(call KMOD_template,GRE,gre,\
+ $(MODULES_DIR)/kernel/net/ipv4/ip_gre.ko \
+,CONFIG_NET_IPGRE))
+
+$(eval $(call KMOD_template,IMQ,imq,\
+ $(MODULES_DIR)/kernel/net/ipv4/netfilter/*IMQ*.ko \
+ $(MODULES_DIR)/kernel/drivers/net/imq.ko \
+))
+
+$(eval $(call KMOD_template,IPIP,ipip,\
+ $(MODULES_DIR)/kernel/net/ipv4/ipip.ko \
+,CONFIG_NET_IPIP,,60,ipip))
+
+$(eval $(call KMOD_template,IPV6,ipv6,\
+ $(MODULES_DIR)/kernel/net/ipv6/ipv6.ko \
+,CONFIG_IPV6,,20,ipv6))
+
+$(eval $(call KMOD_template,PPP,ppp,\
+ $(MODULES_DIR)/kernel/drivers/net/ppp_async.ko \
+ $(MODULES_DIR)/kernel/drivers/net/ppp_generic.ko \
+ $(MODULES_DIR)/kernel/drivers/net/slhc.ko \
+ $(MODULES_DIR)/kernel/lib/crc-ccitt.ko \
+,CONFIG_PPP))
+
+#$(eval $(call KMOD_template,MPPE,mppe,\
+# $(MODULES_DIR)/kernel/drivers/net/ppp_mppe_mppc.ko \
+#,CONFIG_PPP_MPPE_MPPC))
+
+$(eval $(call KMOD_template,PPPOATM,pppoatm,\
+ $(MODULES_DIR)/kernel/net/atm/pppoatm.ko \
+,CONFIG_PPPOATM))
+
+$(eval $(call KMOD_template,PPPOE,pppoe,\
+ $(MODULES_DIR)/kernel/drivers/net/pppoe.ko \
+ $(MODULES_DIR)/kernel/drivers/net/pppox.ko \
+,CONFIG_PPPOE))
+
+$(eval $(call KMOD_template,SCHED,sched,\
+ $(MODULES_DIR)/kernel/net/sched/*.ko \
+))
+
+$(eval $(call KMOD_template,TUN,tun,\
+ $(MODULES_DIR)/kernel/drivers/net/tun.ko \
+,CONFIG_TUN,,20,tun))
+
+
+# Filtering / Firewalling
+
+$(eval $(call KMOD_template,ARPTABLES,arptables,\
+ $(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.ko \
+,CONFIG_IP_NF_ARPTABLES))
+
+$(eval $(call KMOD_template,EBTABLES,ebtables,\
+ $(MODULES_DIR)/kernel/net/bridge/netfilter/*.ko \
+,CONFIG_BRIDGE_NF_EBTABLES))
+
+# metapackage for compatibility ...
+$(eval $(call KMOD_template,IPTABLES_EXTRA,iptables-extra,\
+,,kmod-ipt-conntrack kmod-ipt-extra kmod-ipt-filter kmod-ipt-ipopt kmod-ipt-ipsec kmod-ipt-nat kmod-ipt-nat-extra kmod-ipt-queue kmod-ipt-ulogd))
+
+$(eval $(call KMOD_template,IPT_CONNTRACK,ipt-conntrack,\
+ $(foreach mod,$(IPT_CONNTRACK-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
+))
+
+$(eval $(call KMOD_template,IPT_EXTRA,ipt-extra,\
+ $(foreach mod,$(IPT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
+))
+
+$(eval $(call KMOD_template,IPT_FILTER,ipt-filter,\
+ $(foreach mod,$(IPT_FILTER-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
+))
+
+$(eval $(call KMOD_template,IPT_IPOPT,ipt-ipopt,\
+ $(foreach mod,$(IPT_IPOPT-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
+))
+
+$(eval $(call KMOD_template,IPT_IPSEC,ipt-ipsec,\
+ $(foreach mod,$(IPT_IPSEC-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
+))
+
+$(eval $(call KMOD_template,IPT_NAT,ipt-nat,\
+ $(foreach mod,$(IPT_NAT-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
+))
+
+$(eval $(call KMOD_template,IPT_NAT_EXTRA,ipt-nat-extra,\
+ $(foreach mod,$(IPT_NAT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
+,,,40,$(IPT_NAT_EXTRA-m)))
+
+$(eval $(call KMOD_template,IPT_QUEUE,ipt-queue,\
+ $(foreach mod,$(IPT_QUEUE-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
+))
+
+$(eval $(call KMOD_template,IPT_ULOG,ipt-ulog,\
+ $(foreach mod,$(IPT_ULOG-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
+))
+
+$(eval $(call KMOD_template,IP6TABLES,ip6tables,\
+ $(MODULES_DIR)/kernel/net/ipv6/netfilter/ip*.ko \
+,CONFIG_IP6_NF_IPTABLES,kmod-ipv6))
+
+
+# Block devices
+
+$(eval $(call KMOD_template,IDE,ide,\
+ $(MODULES_DIR)/kernel/drivers/ide/*.ko \
+ $(MODULES_DIR)/kernel/drivers/ide/*/*.ko \
+,CONFIG_IDE))
+
+$(eval $(call KMOD_template,LOOP,loop,\
+ $(MODULES_DIR)/kernel/drivers/block/loop.ko \
+,CONFIG_BLK_DEV_LOOP,,20,loop))
+
+$(eval $(call KMOD_template,NBD,nbd,\
+ $(MODULES_DIR)/kernel/drivers/block/nbd.ko \
+,CONFIG_BLK_DEV_NBD,,20,nbd))
+
+
+# Crypto
+
+$(eval $(call KMOD_template,CRYPTO,crypto,\
+ $(MODULES_DIR)/kernel/crypto/*.ko \
+))
+
+
+# Filesystems
+
+$(eval $(call KMOD_template,FS_CIFS,fs-cifs,\
+ $(MODULES_DIR)/kernel/fs/cifs/cifs.ko \
+,CONFIG_CIFS,kmod-nls-base,30,cifs))
+
+$(eval $(call KMOD_template,FS_MINIX,fs-minix,\
+ $(MODULES_DIR)/kernel/fs/minix/minix.ko \
+,CONFIG_MINIX_FS,,30,minix))
+
+$(eval $(call KMOD_template,FS_EXT2,fs-ext2,\
+ $(MODULES_DIR)/kernel/fs/ext2/ext2.ko \
+,CONFIG_EXT2_FS,,30,ext2))
+
+$(eval $(call KMOD_template,FS_EXT3,fs-ext3,\
+ $(MODULES_DIR)/kernel/fs/ext3/ext3.ko \
+ $(MODULES_DIR)/kernel/fs/jbd/jbd.ko \
+,CONFIG_EXT3_FS,,30,jbd ext3))
+
+$(eval $(call KMOD_template,FS_HFSPLUS,fs-hfsplus,\
+ $(MODULES_DIR)/kernel/fs/hfsplus/hfsplus.ko \
+,CONFIG_HFSPLUS_FS,kmod-nls-base,30,hfsplus))
+
+$(eval $(call KMOD_template,FS_NFS,fs-nfs,\
+ $(MODULES_DIR)/kernel/fs/lockd/lockd.ko \
+ $(MODULES_DIR)/kernel/fs/nfs/nfs.ko \
+ $(MODULES_DIR)/kernel/net/sunrpc/sunrpc.ko \
+,CONFIG_NFS_FS,,30,sunrpc lockd nfs))
+
+$(eval $(call KMOD_template,FS_VFAT,fs-vfat,\
+ $(MODULES_DIR)/kernel/fs/fat/fat.ko \
+ $(MODULES_DIR)/kernel/fs/vfat/vfat.ko \
+,CONFIG_VFAT_FS,kmod-nls-base,30,fat vfat))
+
+$(eval $(call KMOD_template,FS_XFS,fs-xfs,\
+ $(MODULES_DIR)/kernel/fs/xfs/xfs.ko \
+,CONFIG_XFS_FS,,30,xfs))
+
+
+# Multimedia
+
+$(eval $(call KMOD_template,PWC,pwc,\
+ $(MODULES_DIR)/kernel/drivers/usb/media/pwc/pwc.ko \
+,CONFIG_USB_PWC,kmod-videodev,63,pwc))
+
+$(eval $(call KMOD_template,SOUNDCORE,soundcore,\
+ $(MODULES_DIR)/kernel/sound/soundcore.ko \
+,CONFIG_SOUND,,30,soundcore))
+
+$(eval $(call KMOD_template,VIDEODEV,videodev,\
+ $(MODULES_DIR)/kernel/drivers/media/video/v4l1-compat.ko \
+ $(MODULES_DIR)/kernel/drivers/media/video/v4l2-common.ko \
+ $(MODULES_DIR)/kernel/drivers/media/video/videodev.ko \
+,CONFIG_VIDEO_DEV,,62,videodev))
+
+
+# NLS
+
+$(eval $(call KMOD_template,NLS_BASE,nls-base,\
+ $(MODULES_DIR)/kernel/fs/nls/nls_base.ko \
+,CONFIG_NLS,,20,nls_base))
+
+$(eval $(call KMOD_template,NLS_CP437,nls-cp437,\
+ $(MODULES_DIR)/kernel/fs/nls/nls_cp437.ko \
+,CONFIG_NLS_CODEPAGE_437,,20,nls_cp437))
+
+$(eval $(call KMOD_template,NLS_CP850,nls-cp850,\
+ $(MODULES_DIR)/kernel/fs/nls/nls_cp850.ko \
+,CONFIG_NLS_CODEPAGE_850,,20,nls_cp850))
+
+$(eval $(call KMOD_template,NLS_ISO8859_1,nls-iso8859-1,\
+ $(MODULES_DIR)/kernel/fs/nls/nls_iso8859-1.ko \
+,CONFIG_NLS_ISO8859_1,,20,nls_iso8859-1))
+
+$(eval $(call KMOD_template,NLS_ISO8859_15,nls-iso8859-15,\
+ $(MODULES_DIR)/kernel/fs/nls/nls_iso8859-15.ko \
+,CONFIG_NLS_ISO8859_15,,20,nls_iso8859-15))
+
+$(eval $(call KMOD_template,NLS_UTF8,nls-utf8,\
+ $(MODULES_DIR)/kernel/fs/nls/nls_utf8.ko \
+,CONFIG_NLS_UTF8,,20,nls_utf8))
+
+
+# Network devices
+
+$(eval $(call KMOD_template,NET_3C59X,net-3c59x,\
+ $(MODULES_DIR)/kernel/drivers/net/3c59x.ko \
+,CONFIG_VORTEX,,10,3c59x))
+
+$(eval $(call KMOD_template,NET_8139TOO,net-8139too,\
+ $(MODULES_DIR)/kernel/drivers/net/8139too.ko \
+,CONFIG_8139TOO,,10,8139too))
+
+$(eval $(call KMOD_template,NET_AIRO,net-airo,\
+ $(MODULES_DIR)/kernel/drivers/net/wireless/airo.ko \
+,CONFIG_AIRO,,10,airo))
+
+$(eval $(call KMOD_template,NET_E100,net-e100,\
+ $(MODULES_DIR)/kernel/drivers/net/e100.ko \
+,CONFIG_E100,,10,e100))
+
+$(eval $(call KMOD_template,NET_HERMES,net-hermes,\
+ $(MODULES_DIR)/kernel/drivers/net/wireless/hermes.ko \
+ $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco.ko \
+,CONFIG_HERMES,,10,hermes orinoco))
+
+$(eval $(call KMOD_template,NET_HERMES_PCI,net-hermes-pci,\
+ $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco_pci.ko \
+,CONFIG_PCI_HERMES,kmod-net-hermes,11,orinoco_pci))
+
+$(eval $(call KMOD_template,NET_HERMES_PCI,net-hermes-plx,\
+ $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco_plx.ko \
+,CONFIG_PLX_HERMES,kmod-net-hermes,11,orinoco_plx))
+
+$(eval $(call KMOD_template,NET_NATSEMI,net-natsemi,\
+ $(MODULES_DIR)/kernel/drivers/net/natsemi.ko \
+,CONFIG_NATSEMI,,10,natsemi))
+
+$(eval $(call KMOD_template,NET_PRISM54,net-prism54,\
+ $(MODULES_DIR)/kernel/drivers/net/wireless/prism54/prism54.ko \
+,CONFIG_PRISM54,,10,prism54))
+
+
+# PCMCIA/CardBus
+
+$(eval $(call KMOD_template,PCMCIA_CORE,pcmcia-core,\
+ $(MODULES_DIR)/kernel/drivers/pcmcia/pcmcia.ko \
+ $(MODULES_DIR)/kernel/drivers/pcmcia/pcmcia_core.ko \
+ $(MODULES_DIR)/kernel/drivers/pcmcia/yenta_socket.ko \
+ $(MODULES_DIR)/kernel/drivers/pcmcia/rsrc_nonstatic.ko \
+,CONFIG_PCMCIA,,50,pcmcia_core pcmcia yenta_socket rsrc_nonstatic))
+
+$(eval $(call KMOD_template,PCMCIA_SERIAL,pcmcia-serial,\
+ $(MODULES_DIR)/kernel/drivers/serial/serial_cs.ko \
+,CONFIG_SERIAL_8250_CS))
+
+
+# USB
+
+$(eval $(call KMOD_template,USB,usb-core,\
+ $(MODULES_DIR)/kernel/drivers/usb/core/usbcore.ko \
+,CONFIG_USB,,50,usbcore))
+
+$(eval $(call KMOD_template,USB_OHCI,usb-ohci,\
+ $(MODULES_DIR)/kernel/drivers/usb/host/ohci-hcd.ko \
+,CONFIG_USB_OHCI_HCD,kmod-usb-core,60,ohci-hcd))
+
+$(eval $(call KMOD_template,USB_UHCI,usb-uhci,\
+ $(MODULES_DIR)/kernel/drivers/usb/host/uhci-hcd.ko \
+,CONFIG_USB_UHCI_HCD,kmod-usb-core,60,uhci-hcd))
+
+$(eval $(call KMOD_template,USB2,usb2,\
+ $(MODULES_DIR)/kernel/drivers/usb/host/ehci-hcd.ko \
+,CONFIG_USB_EHCI_HCD,kmod-usb-core,60,ehci-hcd))
+
+$(eval $(call KMOD_template,USB_ACM,usb-acm,\
+ $(MODULES_DIR)/kernel/drivers/usb/class/cdc-acm.ko \
+,CONFIG_USB_ACM))
+
+$(eval $(call KMOD_template,USB_AUDIO,usb-audio,\
+ $(MODULES_DIR)/kernel/drivers/usb/class/audio.ko \
+,CONFIG_USB_AUDIO,kmod-soundcore kmod-usb-core,61,audio))
+
+$(eval $(call KMOD_template,USB_PRINTER,usb-printer,\
+ $(MODULES_DIR)/kernel/drivers/usb/class/usblp.ko \
+,CONFIG_USB_PRINTER,kmod-usb-core,60,usblp))
+
+$(eval $(call KMOD_template,USB_SERIAL,usb-serial,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/usbserial.ko \
+,CONFIG_USB_SERIAL,kmod-usb-core,60,usbserial))
+
+$(eval $(call KMOD_template,USB_SERIAL_BELKIN,usb-serial-belkin,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/belkin_sa.ko \
+,CONFIG_USB_SERIAL_BELKIN,kmod-usb-serial,61,belkin_sa))
+
+$(eval $(call KMOD_template,USB_SERIAL_FTDI,usb-serial-ftdi,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/ftdi_sio.ko \
+,CONFIG_USB_SERIAL_FTDI_SIO,kmod-usb-serial,61,ftdi_sio))
+
+$(eval $(call KMOD_template,USB_SERIAL_MCT_U232,usb-serial-mct-u232,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/mct_u232.ko \
+,CONFIG_USB_SERIAL_MCT_U232,kmod-usb-serial,61,mct_u232))
+
+$(eval $(call KMOD_template,USB_SERIAL_PL2303,usb-serial-pl2303,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/pl2303.ko \
+,CONFIG_USB_SERIAL_PL2303,kmod-usb-serial,61,pl2303))
+
+$(eval $(call KMOD_template,USB_SERIAL_VISOR,usb-serial-visor,\
+ $(MODULES_DIR)/kernel/drivers/usb/serial/visor.ko \
+,CONFIG_USB_SERIAL_VISOR,kmod-usb-serial,61,visor))
+
+$(eval $(call KMOD_template,USB_STORAGE,usb-storage,\
+ $(MODULES_DIR)/kernel/drivers/scsi/scsi_mod.ko \
+ $(MODULES_DIR)/kernel/drivers/scsi/sd_mod.ko \
+ $(MODULES_DIR)/kernel/drivers/usb/storage/usb-storage.ko \
+,CONFIG_USB_STORAGE,kmod-usb-core,60,scsi_mod sd_mod usb-storage))
+
+$(eval $(call KMOD_template,USB_ATM,usb-atm,\
+ $(MODULES_DIR)/kernel/drivers/usb/atm/usbatm.ko \
+ ,CONFIG_USB_ATM,kmod-usb-atm,50,usbatm))
+
+$(eval $(call KMOD_template,USB_ATM_SPEEDTOUCH,usb-atm-speedtouch,\
+ $(MODULES_DIR)/kernel/drivers/usb/atm/speedtch.ko \
+ ,CONFIG_USB_SPEEDTOUCH,kmod-usb-atm-speedtouch,50,speedtch))
+
+# Misc. devices
+
+$(eval $(call KMOD_template,AX25,ax25,\
+ $(MODULES_DIR)/kernel/net/ax25/ax25.ko \
+ $(MODULES_DIR)/kernel/drivers/net/hamradio/mkiss.ko \
+,CONFIG_AX25,,90,ax25 mkiss))
+
+$(eval $(call KMOD_template,BLUETOOTH,bluetooth,\
+ $(MODULES_DIR)/kernel/net/bluetooth/bluetooth.ko \
+ $(MODULES_DIR)/kernel/net/bluetooth/l2cap.ko \
+ $(MODULES_DIR)/kernel/net/bluetooth/sco.ko \
+ $(MODULES_DIR)/kernel/net/bluetooth/rfcomm/rfcomm.ko \
+ $(MODULES_DIR)/kernel/drivers/bluetooth/hci_uart.ko \
+ $(MODULES_DIR)/kernel/drivers/bluetooth/hci_usb.ko \
+,CONFIG_BT))
+
+
--- /dev/null
+# $Id: netfilter.mk 2411 2005-11-11 03:41:43Z nico $
+
+ifeq ($(NF_2_6),1)
+P_V4:=ipv4/netfilter/
+P_XT:=netfilter/
+else
+P_V4:=
+P_XT:=
+endif
+
+IPT_CONNTRACK-m :=
+IPT_CONNTRACK-$(CONFIG_IP_NF_MATCH_CONNMARK) += $(P_V4)ipt_connmark
+IPT_CONNTRACK-$(CONFIG_IP_NF_TARGET_CONNMARK) += $(P_V4)ipt_CONNMARK
+IPT_CONNTRACK-$(CONFIG_IP_NF_MATCH_CONNTRACK) += $(P_V4)ipt_conntrack
+IPT_CONNTRACK-$(CONFIG_IP_NF_MATCH_HELPER) += $(P_V4)ipt_helper
+IPT_CONNTRACK-$(CONFIG_IP_NF_MATCH_STATE) += $(P_V4)ipt_state
+IPT_CONNTRACK-$(CONFIG_NETFILTER_XT_MATCH_CONNTRACK) += $(P_XT)xt_conntrack
+IPT_CONNTRACK-$(CONFIG_NETFILTER_XT_MATCH_HELPER) += $(P_XT)xt_helper
+IPT_CONNTRACK-$(CONFIG_NETFILTER_XT_MATCH_STATE) += $(P_XT)xt_state
+
+
+IPT_EXTRA-m :=
+IPT_EXTRA-$(CONFIG_IP_NF_MATCH_CONDITION) += $(P_V4)ipt_condition
+IPT_EXTRA-$(CONFIG_IP_NF_MATCH_CONNBYTES) += $(P_V4)ipt_connbytes
+IPT_EXTRA-$(CONFIG_NETFILTER_XT_MATCH_CONNBYTES) += $(P_XT)xt_connbytes
+IPT_EXTRA-$(CONFIG_IP_NF_MATCH_LIMIT) += $(P_V4)ipt_limit
+IPT_EXTRA-$(CONFIG_NETFILTER_XT_MATCH_LIMIT) += $(P_XT)xt_limit
+IPT_EXTRA-$(CONFIG_IP_NF_TARGET_LOG) += $(P_V4)ipt_LOG
+IPT_EXTRA-$(CONFIG_IP_NF_MATCH_MULTIPORT) += $(P_XT)xt_multiport
+IPT_EXTRA-$(CONFIG_NETFILTER_XT_MATCH_MULTIPORT) += $(P_XT)xt_multiport
+IPT_EXTRA-$(CONFIG_IP_NF_MATCH_OWNER) += $(P_V4)ipt_owner
+IPT_EXTRA-$(CONFIG_IP_NF_MATCH_PHYSDEV) += $(P_V4)ipt_physdev
+IPT_EXTRA-$(CONFIG_IP_NF_MATCH_PKTTYPE) += $(P_V4)ipt_pkttype
+IPT_EXTRA-$(CONFIG_NETFILTER_XT_MATCH_PKTTYPE) += $(P_XT)xt_pkttype
+IPT_EXTRA-$(CONFIG_IP_NF_MATCH_QUOTA) += $(P_V4)ipt_quota
+IPT_EXTRA-$(CONFIG_IP_NF_MATCH_RECENT) += $(P_V4)ipt_recent
+IPT_EXTRA-$(CONFIG_IP_NF_TARGET_REJECT) += $(P_V4)ipt_REJECT
+IPT_EXTRA-$(CONFIG_IP_NF_MATCH_STRING) += $(P_V4)ipt_string
+IPT_EXTRA-$(CONFIG_NETFILTER_XT_MATCH_STRING) += $(P_XT)xt_string
+
+IPT_FILTER-m :=
+IPT_FILTER-$(CONFIG_IP_NF_MATCH_IPP2P) += $(P_V4)ipt_ipp2p
+IPT_FILTER-$(CONFIG_IP_NF_MATCH_LAYER7) += $(P_V4)ipt_layer7
+
+IPT_IMQ-m :=
+IPT_IMQ-$(CONFIG_IP_NF_TARGET_IMQ) += $(P_V4)ipt_IMQ
+
+IPT_IPOPT-m :=
+IPT_IPOPT-$(CONFIG_IP_NF_MATCH_DSCP) += $(P_V4)ipt_dscp
+IPT_IPOPT-$(CONFIG_IP_NF_TARGET_DSCP) += $(P_V4)ipt_DSCP
+IPT_IPOPT-$(CONFIG_IP_NF_MATCH_ECN) += $(P_V4)ipt_ecn
+IPT_IPOPT-$(CONFIG_IP_NF_TARGET_ECN) += $(P_V4)ipt_ECN
+IPT_IPOPT-$(CONFIG_IP_NF_MATCH_LENGTH) += $(P_V4)ipt_length
+IPT_IPOPT-$(CONFIG_NETFILTER_XT_MATCH_LENGTH) += $(P_XT)xt_length
+IPT_IPOPT-$(CONFIG_IP_NF_MATCH_MAC) += $(P_V4)ipt_mac
+IPT_IPOPT-$(CONFIG_NETFILTER_XT_MATCH_MAC) += $(P_XT)xt_mac
+IPT_IPOPT-$(CONFIG_IP_NF_MATCH_MARK) += $(P_V4)ipt_mark
+IPT_IPOPT-$(CONFIG_NETFILTER_XT_MATCH_MARK) += $(P_XT)xt_mark
+IPT_IPOPT-$(CONFIG_IP_NF_TARGET_MARK) += $(P_V4)ipt_MARK
+IPT_IPOPT-$(CONFIG_NETFILTER_XT_TARGET_MARK) += $(P_XT)xt_MARK
+IPT_IPOPT-$(CONFIG_IP_NF_MATCH_TCPMSS) += $(P_V4)ipt_tcpmss
+IPT_IPOPT-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += $(P_XT)xt_tcpmss
+IPT_IPOPT-$(CONFIG_IP_NF_TARGET_TCPMSS) += $(P_V4)ipt_TCPMSS
+IPT_IPOPT-$(CONFIG_IP_NF_MATCH_TOS) += $(P_V4)ipt_tos
+IPT_IPOPT-$(CONFIG_IP_NF_MATCH_TIME) += $(P_V4)ipt_time
+IPT_IPOPT-$(CONFIG_IP_NF_TARGET_TOS) += $(P_V4)ipt_TOS
+IPT_IPOPT-$(CONFIG_IP_NF_MATCH_TTL) += $(P_V4)ipt_ttl
+IPT_IPOPT-$(CONFIG_IP_NF_TARGET_TTL) += $(P_V4)ipt_TTL
+IPT_IPOPT-$(CONFIG_IP_NF_MATCH_UNCLEAN) += $(P_V4)ipt_unclean
+
+IPT_IPSEC-m :=
+IPT_IPSEC-$(CONFIG_IP_NF_MATCH_AH_ESP) += $(P_V4)ipt_ah $(P_V4)ipt_esp
+IPT_IPSEC-$(CONFIG_IP_NF_MATCH_AH) += $(P_V4)ipt_ah
+IPT_IPSEC-$(CONFIG_NETFILTER_XT_MATCH_ESP) += $(P_XT)xt_esp
+
+IPT_NAT-m :=
+IPT_NAT-$(CONFIG_IP_NF_NAT) += $(P_V4)ipt_SNAT $(P_V4)ipt_DNAT
+IPT_NAT-$(CONFIG_IP_NF_TARGET_MASQUERADE) += $(P_V4)ipt_MASQUERADE
+IPT_NAT-$(CONFIG_IP_NF_TARGET_MIRROR) += $(P_V4)ipt_MIRROR
+IPT_NAT-$(CONFIG_IP_NF_TARGET_REDIRECT) += $(P_V4)ipt_REDIRECT
+
+IPT_NAT_EXTRA-m :=
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_AMANDA) += $(P_V4)ip_conntrack_amanda
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_CT_PROTO_GRE) += $(P_V4)ip_conntrack_proto_gre
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_PROTO_GRE) += $(P_V4)ip_nat_proto_gre
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_H323) += $(P_V4)ip_conntrack_h323
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_H323) += $(P_V4)ip_nat_h323
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_MMS) += $(P_V4)ip_conntrack_mms
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_MMS) += $(P_V4)ip_nat_mms
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_RTSP) += $(P_V4)ip_conntrack_rtsp
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_RTSP) += $(P_V4)ip_nat_rtsp
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_PPTP) += $(P_V4)ip_conntrack_pptp
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_SIP) += $(P_V4)ip_conntrack_sip
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_PPTP) += $(P_V4)ip_nat_pptp
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_SIP) += $(P_V4)ip_nat_sip
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_SNMP_BASIC) += $(P_V4)ip_nat_snmp_basic
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_SIP) += $(P_V4)ip_conntrack_sip
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_SIP) += $(P_V4)ip_nat_sip
+IPT_NAT_EXTRA-$(CONFIG_IP_NF_TFTP) += $(P_V4)ip_conntrack_tftp
+
+IPT_QUEUE-m :=
+IPT_QUEUE-$(CONFIG_IP_NF_QUEUE) += $(P_V4)ip_queue
+
+IPT_ULOG-m :=
+IPT_ULOG-$(CONFIG_IP_NF_TARGET_ULOG) += $(P_V4)ipt_ULOG
+
+IPT_BUILTIN := $(P_V4)ipt_standard
+IPT_BUILTIN += $(P_V4)ipt_icmp $(P_V4)ipt_tcp $(P_V4)ipt_udp
+IPT_BUILTIN += $(IPT_CONNTRACK-y)
+IPT_BUILTIN += $(IPT_EXTRA-y)
+IPT_BUILTIN += $(IPT_FILTER-y)
+IPT_BUILTIN += $(IPT_IMQ-y)
+IPT_BUILTIN += $(IPT_IPOPT-y)
+IPT_BUILTIN += $(IPT_IPSEC-y)
+IPT_BUILTIN += $(IPT_NAT-y)
+IPT_BUILTIN += $(IPT_ULOG-y)
--- /dev/null
+ifneq ($(DUMP),)
+ all: dumpinfo
+else
+ all: compile
+endif
+
+define Build/DefaultTargets
+ ifeq ($(DUMP),)
+ ifneq ($$(shell $(SCRIPT_DIR)/timestamp.pl -p $(PKG_BUILD_DIR) . $(TOPDIR)/package/rules.mk),$(PKG_BUILD_DIR))
+ ifeq ($(CONFIG_AUTOREBUILD),y)
+ $(PKG_BUILD_DIR)/.prepared: package-clean
+ endif
+ endif
+
+ ifneq ($$(shell $(SCRIPT_DIR)/timestamp.pl -p -x ipkg $(IPKG_$(1)) $(PKG_BUILD_DIR)),$(IPKG_$(1)))
+ ifeq ($(CONFIG_AUTOREBUILD),y)
+ $(PKG_BUILD_DIR)/.built: package-rebuild
+ endif
+ endif
+ endif
+
+
+ $(PKG_BUILD_DIR)/.prepared:
+ @-rm -rf $(PKG_BUILD_DIR)
+ @mkdir -p $(PKG_BUILD_DIR)
+ $(call Build/Prepare)
+ touch $$@
+
+ $(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.prepared
+ $(call Build/Configure)
+ touch $$@
+
+ $(PKG_BUILD_DIR)/.built: $(PKG_BUILD_DIR)/.configured
+ $(call Build/Compile)
+ touch $$@
+
+ $(STAGING_DIR)/stampfiles/.$(PKG_NAME)-installed: $(PKG_BUILD_DIR)/.built
+ $(call Build/InstallDev)
+ touch $$@
+
+ ifdef Build/InstallDev
+ compile-targets: $(STAGING_DIR)/stampfiles/.$(PKG_NAME)-installed
+ endif
+
+ package-clean: FORCE
+ $(call Build/Clean)
+ $(call Build/UninstallDev)
+ rm -f $(STAGING_DIR)/stampfiles/.$(PKG_NAME)-installed
+
+ package-rebuild: FORCE
+ @-rm -f $(PKG_BUILD_DIR)/.built
+
+ define Build/DefaultTargets
+ endef
+endef
+
+define Package/Default
+ CONFIGFILE:=
+ SECTION:=opt
+ CATEGORY:=Extra packages
+ DEPENDS:=
+ MAINTAINER:=OpenWrt Developers Team <openwrt-devel@openwrt.org>
+ SOURCE:=$(patsubst $(TOPDIR)/%,%,${shell pwd})
+ ifneq ($(PKG_VERSION),)
+ ifneq ($(PKG_RELEASE),)
+ VERSION:=$(PKG_VERSION)-$(PKG_RELEASE)
+ else
+ VERSION:=$(PKG_VERSION)
+ endif
+ else
+ VERSION:=$(PKG_RELEASE)
+ endif
+ PKGARCH:=$(ARCH)
+ PRIORITY:=optional
+ DEFAULT:=
+ MENU:=
+ TITLE:=
+ DESCRIPTION:=
+endef
+
+define BuildIPKGVariable
+pkg_$(subst .,_,$(subst -,_,$(1)))_$(2) = $$(Package/$(1)/$(2))
+export pkg_$(subst .,_,$(subst -,_,$(1))_$(2))
+$(1)_COMMANDS += if [ -n "$$$$$$$$pkg_$(subst .,_,$(subst -,_,$(1)))_$(2)" ]; then echo "$$$$$$$$pkg_$(subst .,_,$(subst -,_,$(1)))_$(2)" > $(2); fi;
+endef
+
+define BuildPackage
+ $(eval $(call Package/Default))
+ $(eval $(call Package/$(1)))
+
+ $(foreach FIELD, TITLE CATEGORY PRIORITY VERSION,
+ ifeq ($($(FIELD)),)
+ $$(error Package/$(1) is missing the $(FIELD) field)
+ endif
+ )
+
+ ifeq ($(PKGARCH),)
+ PKGARCH:=$(ARCH)
+ endif
+
+ ifeq ($(DESCRIPTION),)
+ $(eval DESCRIPTION:=$(TITLE))
+ endif
+
+ IPKG_$(1):=$(PACKAGE_DIR)/$(1)_$(VERSION)_$(PKGARCH).ipk
+ IDIR_$(1):=$(PKG_BUILD_DIR)/ipkg/$(1)
+ INFO_$(1):=$(IPKG_STATE_DIR)/info/$(1).list
+
+ ifeq ($(CONFIG_PACKAGE_$(1)),y)
+ install-targets: $$(INFO_$(1))
+ endif
+
+ ifneq ($(CONFIG_PACKAGE_$(1))$(DEVELOPER),)
+ compile-targets: $$(IPKG_$(1))
+ endif
+
+ IDEPEND_$(1):=$$(strip $$(DEPENDS))
+
+ DUMPINFO += \
+ echo "Package: $(1)";
+
+ ifneq ($(MENU),)
+ DUMPINFO += \
+ echo "Menu: $(MENU)";
+ endif
+
+ ifneq ($(DEFAULT),)
+ DUMPINFO += \
+ echo "Default: $(DEFAULT)";
+ endif
+
+ DUMPINFO += \
+ echo "Version: $(VERSION)"; \
+ echo "Depends: $$(IDEPEND_$(1))"; \
+ echo "Build-Depends: $(PKG_BUILDDEP)"; \
+ echo "Category: $(CATEGORY)"; \
+ echo "Title: $(TITLE)"; \
+ echo "Description: $(DESCRIPTION)" | sed -e 's,\\,\n,g';
+
+ ifneq ($(URL),)
+ DUMPINFO += \
+ echo; \
+ echo "$(URL)";
+ endif
+
+ DUMPINFO += \
+ echo "@@";
+
+ ifneq ($(CONFIG),)
+ DUMPINFO += \
+ echo "Config: $(CONFIG)" | sed -e 's,\\,\n,g'; \
+ echo "@@";
+ endif
+
+ $(eval $(call BuildIPKGVariable,$(1),conffiles))
+ $(eval $(call BuildIPKGVariable,$(1),preinst))
+ $(eval $(call BuildIPKGVariable,$(1),postinst))
+ $(eval $(call BuildIPKGVariable,$(1),prerm))
+ $(eval $(call BuildIPKGVariable,$(1),postrm))
+ $$(IDIR_$(1))/CONTROL/control: $(PKG_BUILD_DIR)/.prepared
+ mkdir -p $$(IDIR_$(1))/CONTROL
+ echo "Package: $(1)" > $$(IDIR_$(1))/CONTROL/control
+ echo "Version: $(VERSION)" >> $$(IDIR_$(1))/CONTROL/control
+ ( \
+ DEPENDS=; \
+ for depend in $$(filter-out @%,$$(IDEPEND_$(1))); do \
+ DEPENDS=$$$${DEPENDS:+$$$$DEPENDS, }$$$${depend##+}; \
+ done; \
+ echo "Depends: $$$$DEPENDS" >> $$(IDIR_$(1))/CONTROL/control; \
+ )
+ echo "Source: $(SOURCE)" >> $$(IDIR_$(1))/CONTROL/control
+ echo "Section: $(SECTION)" >> $$(IDIR_$(1))/CONTROL/control
+ echo "Priority: $(PRIORITY)" >> $$(IDIR_$(1))/CONTROL/control
+ echo "Maintainer: $(MAINTAINER)" >> $$(IDIR_$(1))/CONTROL/control
+ echo "Architecture: $(PKGARCH)" >> $$(IDIR_$(1))/CONTROL/control
+ echo "Description: $(DESCRIPTION)" | sed -e 's,\\,\n ,g' >> $$(IDIR_$(1))/CONTROL/control
+ chmod 644 $$(IDIR_$(1))/CONTROL/control
+ (cd $$(IDIR_$(1))/CONTROL; \
+ $($(1)_COMMANDS) \
+ )
+
+ $$(IPKG_$(1)): $$(IDIR_$(1))/CONTROL/control $(PKG_BUILD_DIR)/.built
+ $(call Package/$(1)/install,$$(IDIR_$(1)))
+ mkdir -p $(PACKAGE_DIR)
+ -find $$(IDIR_$(1)) -name CVS | xargs rm -rf
+ -find $$(IDIR_$(1)) -name .svn | xargs rm -rf
+ -find $$(IDIR_$(1)) -name '.#*' | xargs rm -f
+ $(RSTRIP) $$(IDIR_$(1))
+ $(IPKG_BUILD) $$(IDIR_$(1)) $(PACKAGE_DIR)
+
+ $$(INFO_$(1)): $$(IPKG_$(1))
+ $(IPKG) install $$(IPKG_$(1))
+
+ $(1)-clean:
+ rm -f $(PACKAGE_DIR)/$(1)_*
+
+ clean: $(1)-clean
+
+ $$(eval $$(call Build/DefaultTargets,$(1)))
+
+endef
+
+ifneq ($(strip $(PKG_CAT)),)
+ define Build/Prepare/Default
+ @if [ "$(PKG_CAT)" = "unzip" ]; then \
+ unzip -d $(PKG_BUILD_DIR) $(DL_DIR)/$(PKG_SOURCE) ; \
+ else \
+ $(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) - ; \
+ fi
+ @if [ -d ./patches ]; then \
+ $(PATCH) $(PKG_BUILD_DIR) ./patches ; \
+ fi
+ endef
+endif
+
+define Build/Prepare
+ $(call Build/Prepare/Default)
+endef
+
+define Build/Configure/Default
+ @(cd $(PKG_BUILD_DIR)/$(3); \
+ [ -x configure ] && \
+ $(2) \
+ $(TARGET_CONFIGURE_OPTS) \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \
+ LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \
+ ./configure \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --program-prefix="" \
+ --program-suffix="" \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --libexecdir=/usr/lib \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ $(DISABLE_NLS) \
+ $(1); \
+ true; \
+ )
+endef
+
+define Build/Configure
+ $(call Build/Configure/Default,)
+endef
+
+define Build/Compile/Default
+ $(MAKE) -C $(PKG_BUILD_DIR) \
+ $(TARGET_CONFIGURE_OPTS) \
+ CC=$(TARGET_CC) \
+ CROSS="$(TARGET_CROSS)" \
+ EXTRA_CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/include -I$(STAGING_DIR)/usr/include" \
+ ARCH="$(ARCH)" \
+ $(1);
+endef
+
+define Build/Compile
+ $(call Build/Compile/Default,)
+endef
+
+ifneq ($(DUMP),)
+ dumpinfo: FORCE
+ @$(DUMPINFO)
+else
+ $(PACKAGE_DIR):
+ mkdir -p $@
+
+ ifneq ($(strip $(PKG_SOURCE)),)
+ source: $(DL_DIR)/$(PKG_SOURCE)
+
+ $(DL_DIR)/$(PKG_SOURCE):
+ mkdir -p $(DL_DIR)
+ $(SCRIPT_DIR)/download.pl "$(DL_DIR)" "$(PKG_SOURCE)" "$(PKG_MD5SUM)" $(PKG_SOURCE_URL)
+
+ $(PKG_BUILD_DIR)/.prepared: $(DL_DIR)/$(PKG_SOURCE)
+ endif
+
+ source:
+ prepare: $(PKG_BUILD_DIR)/.prepared
+ configure: $(PKG_BUILD_DIR)/.configured
+
+ compile-targets:
+ compile: compile-targets
+
+ install-targets:
+ install: install-targets
+
+ clean-targets:
+ clean: FORCE
+ @$(MAKE) clean-targets
+ $(call Build/Clean)
+ rm -rf $(PKG_BUILD_DIR)
+endif
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=alsa-driver
PKG_VERSION:=1.0.11
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_CAT:=bzcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
ifeq ($(LINUX_KARCH),i386)
KERNEL_C_INCS:= -I$(LINUX_DIR)/include/asm-i386/mach-generic -I$(LINUX_DIR)/include/asm-i386/mach-default
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=base-files
PKG_RELEASE:=8
REV:=0
endif
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
ifneq ($(DUMP),1)
TARGET:=-$(BOARD)-$(KERNEL)
PKG_MD5SUM:=9b7dc52656f5cbec846a7ba3299f73bd
PKG_CAT:=zcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/bridge
SECTION:=base
# $Id: Makefile 2480 2005-11-14 02:07:33Z nbd $
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=broadcom-wl
PKG_VERSION:=4.80.9.2
PKG_MD5SUM:=7d9fab2c611369bbe075c3924ea77450
PKG_CAT:=bzcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/kmod-brcm-wl
SECTION:=drivers
PKG_MD5SUM:=19a0b475169335f17e421cf644616fe7
PKG_CAT:=bzcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/busybox
SECTION:=base
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=kmod-diag
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/kmod-diag
SECTION:=drivers
PKG_MD5SUM:=489198ec87101087043adc98bbe062dc
PKG_CAT:=zcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/dnsmasq
SECTION:=base
PKG_MD5SUM:=ca8e53a766faec831882831364568421
PKG_CAT:=zcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/dropbear
SECTION:=base
PKG_MD5SUM:=f07111fcc1966be669278433c35dcc28
PKG_CAT:=zcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/ebtables
SECTION:=base
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=fuse
PKG_VERSION:=2.5.3
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/kmod-fuse
SECTION:=drivers
PKG_MD5SUM:=bd9195d086566f56634c0bcbbbcbebea
PKG_CAT:=zcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/haserl
SECTION:=base
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=hostap-driver
PKG_VERSION:=0.4.9
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/kmod-hostap
SECTION:=drivers
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/hostapd
SECTION:=net
PKG_MD5SUM:=04f57a6d366d36426d276178b600f5c5
PKG_CAT:=zcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/ip
SECTION:=base
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/ipsec-tools
SECTION:=base
PKG_MD5SUM:=1709424cc2cdb925d4fb6fd5fcaefc26
PKG_CAT:=bzcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/ipset
SECTION:=base
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=iptables
PKG_VERSION:=1.3.5
PKG_MENU:=IPv4 / IPv6 firewall administration
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
ifeq ($(DUMP),)
include $(LINUX_DIR)/.config
-include $(TOPDIR)/target/linux/netfilter.mk
+include $(TOPDIR)/include/netfilter.mk
endif
define Package/iptables
+++ /dev/null
-ifneq ($(DUMP),1)
-include $(BUILD_DIR)/kernel.mk
-
-KERNEL:=unknown
-ifneq (,$(findstring 2.4.,$(LINUX_VERSION)))
-KERNEL:=2.4
-LINUX_KMOD_SUFFIX=o
-endif
-ifneq (,$(findstring 2.6.,$(LINUX_VERSION)))
-KERNEL:=2.6
-LINUX_KMOD_SUFFIX=ko
-endif
-
-LINUX_KARCH:=$(shell echo $(ARCH) | sed -e 's/i[3-9]86/i386/' \
- -e 's/mipsel/mips/' \
- -e 's/mipseb/mips/' \
- -e 's/powerpc/ppc/' \
- -e 's/sh[234]/sh/' \
- -e 's/armeb/arm/' \
-)
-
-KERNEL_BUILD_DIR:=$(BUILD_DIR)/linux-$(KERNEL)-$(BOARD)
-ifeq ($(LINUX_NAME),)
-LINUX_NAME:=linux-$(LINUX_VERSION)
-endif
-LINUX_DIR := $(KERNEL_BUILD_DIR)/$(LINUX_NAME)
-
-KMOD_BUILD_DIR := $(KERNEL_BUILD_DIR)/linux-modules
-MODULES_DIR := $(KERNEL_BUILD_DIR)/modules/$(MODULES_SUBDIR)
-TARGET_MODULES_DIR := $(LINUX_TARGET_DIR)/$(MODULES_SUBDIR)
-endif
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/libpcap
SECTION:=base
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/linux-atm
SECTION:=libs
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=madwifi
PKG_VERSION:=0.9.0
LDOPTS="" \
DOMULTI=1
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
ifeq ($(findstring AHB,$(BUS)),AHB)
define Build/Compile/ahb
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=mini_fo
PKG_VERSION:=0.6.2pre1
PKG_SOURCE:=mini_fo-0-6-2-pre1.tar.bz2
PKG_CAT:=bzcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/kmod-mini-fo
SECTION:=drivers
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/mtd
SECTION:=base
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/nvram
SECTION:=base
OPENSSL_NO_CIPHERS:= no-idea no-md2 no-mdc2 no-rc5 no-sha0 no-rmd160 no-aes192
OPENSSL_OPTIONS:= shared no-ec no-err no-fips no-hw no-krb5 no-threads zlib-dynamic no-engines
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/libopenssl
SECTION:=base
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=openswan
PKG_VERSION:=2.4.5
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_CAT:=zcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/kmod-openswan
SECTION:=drivers
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/pcmcia-cs
SECTION:=base
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/ppp
SECTION:=net
PKG_MD5SUM:=9a706327fb9827541d7c86d48ceb9631
PKG_CAT:=zcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/pptp
SECTION:=base
PKG_BUILD_DIR:=$(BUILD_DIR)/robocfg
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/robocfg
SECTION:=base
+++ /dev/null
-ifneq ($(DUMP),)
- all: dumpinfo
-else
- all: compile
-endif
-
-define Build/DefaultTargets
- ifeq ($(DUMP),)
- ifneq ($$(shell $(SCRIPT_DIR)/timestamp.pl -p $(PKG_BUILD_DIR) . $(TOPDIR)/package/rules.mk),$(PKG_BUILD_DIR))
- ifeq ($(CONFIG_AUTOREBUILD),y)
- $(PKG_BUILD_DIR)/.prepared: package-clean
- endif
- endif
-
- ifneq ($$(shell $(SCRIPT_DIR)/timestamp.pl -p -x ipkg $(IPKG_$(1)) $(PKG_BUILD_DIR)),$(IPKG_$(1)))
- ifeq ($(CONFIG_AUTOREBUILD),y)
- $(PKG_BUILD_DIR)/.built: package-rebuild
- endif
- endif
- endif
-
-
- $(PKG_BUILD_DIR)/.prepared:
- @-rm -rf $(PKG_BUILD_DIR)
- @mkdir -p $(PKG_BUILD_DIR)
- $(call Build/Prepare)
- touch $$@
-
- $(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.prepared
- $(call Build/Configure)
- touch $$@
-
- $(PKG_BUILD_DIR)/.built: $(PKG_BUILD_DIR)/.configured
- $(call Build/Compile)
- touch $$@
-
- $(STAGING_DIR)/stampfiles/.$(PKG_NAME)-installed: $(PKG_BUILD_DIR)/.built
- $(call Build/InstallDev)
- touch $$@
-
- ifdef Build/InstallDev
- compile-targets: $(STAGING_DIR)/stampfiles/.$(PKG_NAME)-installed
- endif
-
- package-clean: FORCE
- $(call Build/Clean)
- $(call Build/UninstallDev)
- rm -f $(STAGING_DIR)/stampfiles/.$(PKG_NAME)-installed
-
- package-rebuild: FORCE
- @-rm -f $(PKG_BUILD_DIR)/.built
-
- define Build/DefaultTargets
- endef
-endef
-
-define Package/Default
- CONFIGFILE:=
- SECTION:=opt
- CATEGORY:=Extra packages
- DEPENDS:=
- MAINTAINER:=OpenWrt Developers Team <openwrt-devel@openwrt.org>
- SOURCE:=$(patsubst $(TOPDIR)/%,%,${shell pwd})
- ifneq ($(PKG_VERSION),)
- ifneq ($(PKG_RELEASE),)
- VERSION:=$(PKG_VERSION)-$(PKG_RELEASE)
- else
- VERSION:=$(PKG_VERSION)
- endif
- else
- VERSION:=$(PKG_RELEASE)
- endif
- PKGARCH:=$(ARCH)
- PRIORITY:=optional
- DEFAULT:=
- MENU:=
- TITLE:=
- DESCRIPTION:=
-endef
-
-define BuildIPKGVariable
-pkg_$(subst .,_,$(subst -,_,$(1)))_$(2) = $$(Package/$(1)/$(2))
-export pkg_$(subst .,_,$(subst -,_,$(1))_$(2))
-$(1)_COMMANDS += if [ -n "$$$$$$$$pkg_$(subst .,_,$(subst -,_,$(1)))_$(2)" ]; then echo "$$$$$$$$pkg_$(subst .,_,$(subst -,_,$(1)))_$(2)" > $(2); fi;
-endef
-
-define BuildPackage
- $(eval $(call Package/Default))
- $(eval $(call Package/$(1)))
-
- $(foreach FIELD, TITLE CATEGORY PRIORITY VERSION,
- ifeq ($($(FIELD)),)
- $$(error Package/$(1) is missing the $(FIELD) field)
- endif
- )
-
- ifeq ($(PKGARCH),)
- PKGARCH:=$(ARCH)
- endif
-
- ifeq ($(DESCRIPTION),)
- $(eval DESCRIPTION:=$(TITLE))
- endif
-
- IPKG_$(1):=$(PACKAGE_DIR)/$(1)_$(VERSION)_$(PKGARCH).ipk
- IDIR_$(1):=$(PKG_BUILD_DIR)/ipkg/$(1)
- INFO_$(1):=$(IPKG_STATE_DIR)/info/$(1).list
-
- ifeq ($(CONFIG_PACKAGE_$(1)),y)
- install-targets: $$(INFO_$(1))
- endif
-
- ifneq ($(CONFIG_PACKAGE_$(1))$(DEVELOPER),)
- compile-targets: $$(IPKG_$(1))
- endif
-
- IDEPEND_$(1):=$$(strip $$(DEPENDS))
-
- DUMPINFO += \
- echo "Package: $(1)";
-
- ifneq ($(MENU),)
- DUMPINFO += \
- echo "Menu: $(MENU)";
- endif
-
- ifneq ($(DEFAULT),)
- DUMPINFO += \
- echo "Default: $(DEFAULT)";
- endif
-
- DUMPINFO += \
- echo "Version: $(VERSION)"; \
- echo "Depends: $$(IDEPEND_$(1))"; \
- echo "Build-Depends: $(PKG_BUILDDEP)"; \
- echo "Category: $(CATEGORY)"; \
- echo "Title: $(TITLE)"; \
- echo "Description: $(DESCRIPTION)" | sed -e 's,\\,\n,g';
-
- ifneq ($(URL),)
- DUMPINFO += \
- echo; \
- echo "$(URL)";
- endif
-
- DUMPINFO += \
- echo "@@";
-
- ifneq ($(CONFIG),)
- DUMPINFO += \
- echo "Config: $(CONFIG)" | sed -e 's,\\,\n,g'; \
- echo "@@";
- endif
-
- $(eval $(call BuildIPKGVariable,$(1),conffiles))
- $(eval $(call BuildIPKGVariable,$(1),preinst))
- $(eval $(call BuildIPKGVariable,$(1),postinst))
- $(eval $(call BuildIPKGVariable,$(1),prerm))
- $(eval $(call BuildIPKGVariable,$(1),postrm))
- $$(IDIR_$(1))/CONTROL/control: $(PKG_BUILD_DIR)/.prepared
- mkdir -p $$(IDIR_$(1))/CONTROL
- echo "Package: $(1)" > $$(IDIR_$(1))/CONTROL/control
- echo "Version: $(VERSION)" >> $$(IDIR_$(1))/CONTROL/control
- ( \
- DEPENDS=; \
- for depend in $$(filter-out @%,$$(IDEPEND_$(1))); do \
- DEPENDS=$$$${DEPENDS:+$$$$DEPENDS, }$$$${depend##+}; \
- done; \
- echo "Depends: $$$$DEPENDS" >> $$(IDIR_$(1))/CONTROL/control; \
- )
- echo "Source: $(SOURCE)" >> $$(IDIR_$(1))/CONTROL/control
- echo "Section: $(SECTION)" >> $$(IDIR_$(1))/CONTROL/control
- echo "Priority: $(PRIORITY)" >> $$(IDIR_$(1))/CONTROL/control
- echo "Maintainer: $(MAINTAINER)" >> $$(IDIR_$(1))/CONTROL/control
- echo "Architecture: $(PKGARCH)" >> $$(IDIR_$(1))/CONTROL/control
- echo "Description: $(DESCRIPTION)" | sed -e 's,\\,\n ,g' >> $$(IDIR_$(1))/CONTROL/control
- chmod 644 $$(IDIR_$(1))/CONTROL/control
- (cd $$(IDIR_$(1))/CONTROL; \
- $($(1)_COMMANDS) \
- )
-
- $$(IPKG_$(1)): $$(IDIR_$(1))/CONTROL/control $(PKG_BUILD_DIR)/.built
- $(call Package/$(1)/install,$$(IDIR_$(1)))
- mkdir -p $(PACKAGE_DIR)
- -find $$(IDIR_$(1)) -name CVS | xargs rm -rf
- -find $$(IDIR_$(1)) -name .svn | xargs rm -rf
- -find $$(IDIR_$(1)) -name '.#*' | xargs rm -f
- $(RSTRIP) $$(IDIR_$(1))
- $(IPKG_BUILD) $$(IDIR_$(1)) $(PACKAGE_DIR)
-
- $$(INFO_$(1)): $$(IPKG_$(1))
- $(IPKG) install $$(IPKG_$(1))
-
- $(1)-clean:
- rm -f $(PACKAGE_DIR)/$(1)_*
-
- clean: $(1)-clean
-
- $$(eval $$(call Build/DefaultTargets,$(1)))
-
-endef
-
-ifneq ($(strip $(PKG_CAT)),)
- define Build/Prepare/Default
- @if [ "$(PKG_CAT)" = "unzip" ]; then \
- unzip -d $(PKG_BUILD_DIR) $(DL_DIR)/$(PKG_SOURCE) ; \
- else \
- $(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) - ; \
- fi
- @if [ -d ./patches ]; then \
- $(PATCH) $(PKG_BUILD_DIR) ./patches ; \
- fi
- endef
-endif
-
-define Build/Prepare
- $(call Build/Prepare/Default)
-endef
-
-define Build/Configure/Default
- @(cd $(PKG_BUILD_DIR)/$(3); \
- [ -x configure ] && \
- $(2) \
- $(TARGET_CONFIGURE_OPTS) \
- CFLAGS="$(TARGET_CFLAGS)" \
- CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \
- LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \
- ./configure \
- --target=$(GNU_TARGET_NAME) \
- --host=$(GNU_TARGET_NAME) \
- --build=$(GNU_HOST_NAME) \
- --program-prefix="" \
- --program-suffix="" \
- --prefix=/usr \
- --exec-prefix=/usr \
- --bindir=/usr/bin \
- --sbindir=/usr/sbin \
- --libexecdir=/usr/lib \
- --sysconfdir=/etc \
- --datadir=/usr/share \
- --localstatedir=/var \
- --mandir=/usr/man \
- --infodir=/usr/info \
- $(DISABLE_NLS) \
- $(1); \
- true; \
- )
-endef
-
-define Build/Configure
- $(call Build/Configure/Default,)
-endef
-
-define Build/Compile/Default
- $(MAKE) -C $(PKG_BUILD_DIR) \
- $(TARGET_CONFIGURE_OPTS) \
- CC=$(TARGET_CC) \
- CROSS="$(TARGET_CROSS)" \
- EXTRA_CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/include -I$(STAGING_DIR)/usr/include" \
- ARCH="$(ARCH)" \
- $(1);
-endef
-
-define Build/Compile
- $(call Build/Compile/Default,)
-endef
-
-ifneq ($(DUMP),)
- dumpinfo: FORCE
- @$(DUMPINFO)
-else
- $(PACKAGE_DIR):
- mkdir -p $@
-
- ifneq ($(strip $(PKG_SOURCE)),)
- source: $(DL_DIR)/$(PKG_SOURCE)
-
- $(DL_DIR)/$(PKG_SOURCE):
- mkdir -p $(DL_DIR)
- $(SCRIPT_DIR)/download.pl "$(DL_DIR)" "$(PKG_SOURCE)" "$(PKG_MD5SUM)" $(PKG_SOURCE_URL)
-
- $(PKG_BUILD_DIR)/.prepared: $(DL_DIR)/$(PKG_SOURCE)
- endif
-
- source:
- prepare: $(PKG_BUILD_DIR)/.prepared
- configure: $(PKG_BUILD_DIR)/.configured
-
- compile-targets:
- compile: compile-targets
-
- install-targets:
- install: install-targets
-
- clean-targets:
- clean: FORCE
- @$(MAKE) clean-targets
- $(call Build/Clean)
- rm -rf $(PKG_BUILD_DIR)
-endif
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=shfs
PKG_VERSION:=0.35
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/kmod-shfs
SECTION:=drivers
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=spca5xx
PKG_VERSION:=20060301
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_CAT:=zcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
#FIXME: add proper dependency handling on kmod-usb-core & kmod-videodev packages
define Package/kmod-spca5xx
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=kmod-switch
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/kmod-switch
SECTION:=drivers
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/udev
SECTION:=base
# $Id: Makefile 2767 2005-12-25 02:10:14Z wbx $
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=ueagle-atm
PKG_VERSION:=1.0d1
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
#FIXME: add dependency on kmod-usb-core
define Package/kmod-ueagle-atm
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/fdisk
SECTION:=base
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/wireless-tools
SECTION:=base
# $Id$
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=kmod-wlcompat
PKG_RELEASE:=3
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/kmod-wlcompat
SECTION:=drivers
# $Id: Makefile 3297 2006-03-02 23:42:52Z florian $
include $(TOPDIR)/rules.mk
-include $(TOPDIR)/package/kernel.mk
+include $(TOPDIR)/include/kernel.mk
PKG_NAME:=zd1211
PKG_VERSION:=r69
PKG_SOURCE:=$(PKG_NAME)-driver-$(PKG_VERSION).tgz
PKG_CAT:=zcat
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
#FIXME: add proper dependency handling on kmod-usb-core packages
define Package/kmod-zd1211
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-include $(TOPDIR)/package/rules.mk
+include $(TOPDIR)/include/package.mk
define Package/zlib
SECTION:=base
$(BIN_DIR):
mkdir -p $(BIN_DIR)
-TARGETS:=linux utils lzma
+TARGETS:=linux utils
-linux-compile: utils-install lzma-install
+linux-compile: utils-install
linux-install: $(BIN_DIR)
download: $(patsubst %,%-source,$(TARGETS))
$(MAKE) -C $(patsubst %-prepare,%,$@) prepare
%-compile: %-prepare
$(MAKE) -C $(patsubst %-compile,%,$@) compile
-%-rebuild: FORCE
- $(MAKE) -C $(patsubst %-rebuild,%,$@) rebuild
%-install: %-compile
$(MAKE) -C $(patsubst %-install,%,$@) install
-linux-imagebuilder: FORCE
- $(MAKE) -C linux imagebuilder
-
help
Build a jffs2 root filesystem
- config TARGET_ROOTFS_SQUASHFS_LZMA
- bool "squashfs-lzma"
+ config TARGET_ROOTFS_SQUASHFS
+ bool "squashfs"
default y
depends !LINUX_2_6_ARUBA
depends !LINUX_2_6_XSCALE
$(MAKE) -C image/$(BOARD) source
prepare:
+ rm -f $(TOPDIR)/.kernel.mk
$(MAKE) -C $(BOARD)-$(KERNEL) prepare
compile:
LINUX_RELEASE:=1
LINUX_KERNEL_MD5SUM:=38f4d0830e95a20f4bfed17622d5557c
-include ../rules.mk
include ./config
-include ../generic-$(KERNEL)/modules.mk
-include ../kernel.mk
+include $(TOPDIR)/include/kernel.mk
+include $(TOPDIR)/include/kernel-build.mk
$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
[ -d ../generic-$(KERNEL)/patches ] && $(PATCH) $(LINUX_DIR) ../generic-$(KERNEL)/patches
LINUX_RELEASE:=1
LINUX_KERNEL_MD5SUM:=38f4d0830e95a20f4bfed17622d5557c
-include ../rules.mk
include ./config
+include $(TOPDIR)/include/kernel.mk
ATM_FIRMWARE_VERSION:=0.4
ATM_FIRMWARE_DIR=sangam-atm-firmware-$(ATM_FIRMWARE_VERSION)
$(MODULES_DIR)/kernel/drivers/net/avalanche_cpmac/avalanche_cpmac.o \
,CONFIG_MIPS_AVALANCHE_CPMAC,,10,avalanche_cpmac))
-include ../generic-$(KERNEL)/modules.mk
-include ../kernel.mk
+include $(TOPDIR)/include/kernel-build.mk
$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
LINUX_RELEASE:=1
LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
-include ../rules.mk
include ./config
-
-include ../generic-$(KERNEL)/modules.mk
-include ../kernel.mk
-
+include $(TOPDIR)/include/kernel.mk
+include $(TOPDIR)/include/kernel-build.mk
$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
[ -d ../generic-$(KERNEL)/patches ] && $(PATCH) $(LINUX_DIR) ../generic-$(KERNEL)/patches $(MAKE_TRACE)
LINUX_RELEASE:=1
LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
-include ../rules.mk
include ./config
-
-include ../generic-$(KERNEL)/modules.mk
-include ../kernel.mk
-
+include $(TOPDIR)/include/kernel.mk
+include $(TOPDIR)/include/kernel-build.mk
$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
[ -d ../generic-$(KERNEL)/patches ] && $(PATCH) $(LINUX_DIR) ../generic-$(KERNEL)/patches
LINUX_RELEASE:=1
LINUX_KERNEL_MD5SUM:=38f4d0830e95a20f4bfed17622d5557c
-include ../rules.mk
include ./config
+include $(TOPDIR)/include/kernel.mk
# broadcom specific kmod packages
$(eval $(call KMOD_template,LP,lp,\
$(MODULES_DIR)/kernel/drivers/char/ppdev.o \
,CONFIG_PARPORT,,50,parport parport_splink lp))
-include ../generic-$(KERNEL)/modules.mk
-include ../kernel.mk
+include $(TOPDIR)/include/kernel-build.mk
$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
LINUX_RELEASE:=1
LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
-include ../rules.mk
include ./config
-
-include ../generic-$(KERNEL)/modules.mk
-include ../kernel.mk
+include $(TOPDIR)/include/kernel.mk
+include $(TOPDIR)/include/kernel-build.mk
$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
+++ /dev/null
-include ../netfilter.mk
-
-# Networking
-
-$(eval $(call KMOD_template,ATM,atm,\
- $(MODULES_DIR)/kernel/net/atm/atm.o \
- $(MODULES_DIR)/kernel/net/atm/br2684.o \
-,CONFIG_ATM,,50,atm))
-
-$(eval $(call KMOD_template,GRE,gre,\
- $(MODULES_DIR)/kernel/net/ipv4/ip_gre.o \
-,CONFIG_NET_IPGRE))
-
-$(eval $(call KMOD_template,IMQ,imq,\
- $(MODULES_DIR)/kernel/net/ipv4/netfilter/*IMQ*.o \
- $(MODULES_DIR)/kernel/drivers/net/imq.o \
-))
-$(eval $(call KMOD_template,IPIP,ipip,\
- $(MODULES_DIR)/kernel/net/ipv4/ipip.o \
-,CONFIG_NET_IPIP,,60,ipip))
-
-$(eval $(call KMOD_template,IPV6,ipv6,\
- $(MODULES_DIR)/kernel/net/ipv6/ipv6.o \
-,CONFIG_IPV6,,20,ipv6))
-
-$(eval $(call KMOD_template,PPP,ppp,\
- $(MODULES_DIR)/kernel/drivers/net/ppp_async.o \
- $(MODULES_DIR)/kernel/drivers/net/ppp_generic.o \
- $(MODULES_DIR)/kernel/drivers/net/slhc.o \
- $(MODULES_DIR)/kernel/drivers/net/pppox.o \
-,CONFIG_PPP))
-
-$(eval $(call KMOD_template,MPPE,mppe,\
- $(MODULES_DIR)/kernel/drivers/net/ppp_mppe_mppc.o \
-,CONFIG_PPP_MPPE_MPPC))
-
-$(eval $(call KMOD_template,PPPOATM,pppoatm,\
- $(MODULES_DIR)/kernel/net/atm/pppoatm.o \
-,CONFIG_PPPOATM))
-
-$(eval $(call KMOD_template,PPPOE,pppoe,\
- $(MODULES_DIR)/kernel/drivers/net/pppoe.o \
-,CONFIG_PPPOE))
-
-$(eval $(call KMOD_template,SCHED,sched,\
- $(MODULES_DIR)/kernel/net/sched/*.o \
-))
-
-$(eval $(call KMOD_template,TUN,tun,\
- $(MODULES_DIR)/kernel/drivers/net/tun.o \
-,CONFIG_TUN,,20,tun))
-
-# Filtering / Firewalling
-
-$(eval $(call KMOD_template,ARPTABLES,arptables,\
- $(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.o \
-,CONFIG_IP_NF_ARPTABLES))
-
-$(eval $(call KMOD_template,EBTABLES,ebtables,\
- $(MODULES_DIR)/kernel/net/bridge/netfilter/*.o \
-,CONFIG_BRIDGE_NF_EBTABLES))
-
-# metapackage for compatibility ...
-$(eval $(call KMOD_template,IPTABLES_EXTRA,iptables-extra,\
-,,kmod-ipt-conntrack kmod-ipt-extra kmod-ipt-filter kmod-ipt-ipopt kmod-ipt-ipsec kmod-ipt-nat kmod-ipt-nat-extra kmod-ipt-queue kmod-ipt-ulogd))
-
-$(eval $(call KMOD_template,IPT_CONNTRACK,ipt-conntrack,\
- $(foreach mod,$(IPT_CONNTRACK-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
-))
-
-$(eval $(call KMOD_template,IPT_EXTRA,ipt-extra,\
- $(foreach mod,$(IPT_EXTRA-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
-))
-
-$(eval $(call KMOD_template,IPT_FILTER,ipt-filter,\
- $(foreach mod,$(IPT_FILTER-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
-))
-
-$(eval $(call KMOD_template,IPT_IPOPT,ipt-ipopt,\
- $(foreach mod,$(IPT_IPOPT-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
-))
-
-$(eval $(call KMOD_template,IPT_IPSEC,ipt-ipsec,\
- $(foreach mod,$(IPT_IPSEC-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
-))
-
-$(eval $(call KMOD_template,IPT_NAT,ipt-nat,\
- $(foreach mod,$(IPT_NAT-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
-))
-
-$(eval $(call KMOD_template,IPT_NAT_EXTRA,ipt-nat-extra,\
- $(foreach mod,$(IPT_NAT_EXTRA-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
-,,,40,$(IPT_NAT_EXTRA-m)))
-
-$(eval $(call KMOD_template,IPT_QUEUE,ipt-queue,\
- $(foreach mod,$(IPT_QUEUE-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
-))
-
-$(eval $(call KMOD_template,IPT_ULOG,ipt-ulog,\
- $(foreach mod,$(IPT_ULOG-m),$(MODULES_DIR)/kernel/net/ipv4/netfilter/$(mod).o) \
-))
-
-$(eval $(call KMOD_template,IP6TABLES,ip6tables,\
- $(MODULES_DIR)/kernel/net/ipv6/netfilter/ip*.o \
-,CONFIG_IP6_NF_IPTABLES,kmod-ipv6))
-
-
-# Block devices
-
-$(eval $(call KMOD_template,IDE,ide,\
- $(MODULES_DIR)/kernel/drivers/ide/*.o \
- $(MODULES_DIR)/kernel/drivers/ide/*/*.o \
-,CONFIG_IDE,,20,pdc202xx_old ide-core ide-detect ide-disk))
-
-$(eval $(call KMOD_template,LOOP,loop,\
- $(MODULES_DIR)/kernel/drivers/block/loop.o \
-,CONFIG_BLK_DEV_LOOP,,20,loop))
-
-$(eval $(call KMOD_template,NBD,nbd,\
- $(MODULES_DIR)/kernel/drivers/block/nbd.o \
-,CONFIG_BLK_DEV_NBD,,20,nbd))
-
-
-# Crypto
-
-ifneq ($(wildcard $(MODULES_DIR)/kernel/crypto/*.o),)
-CONFIG_CRYPTO:=m
-endif
-$(eval $(call KMOD_template,CRYPTO,crypto,\
- $(MODULES_DIR)/kernel/crypto/*.o \
-,CONFIG_CRYPTO))
-
-
-# Filesystems
-
-$(eval $(call KMOD_template,FS_CIFS,fs-cifs,\
- $(MODULES_DIR)/kernel/fs/cifs/cifs.o \
-,CONFIG_CIFS,,30,cifs))
-
-$(eval $(call KMOD_template,FS_MINIX,fs-minix,\
- $(MODULES_DIR)/kernel/fs/minix/*.o \
-,CONFIG_MINIX_FS,,30,minix))
-
-$(eval $(call KMOD_template,FS_EXT2,fs-ext2,\
- $(MODULES_DIR)/kernel/fs/ext2/*.o \
-,CONFIG_EXT2_FS,,30,ext2))
-
-$(eval $(call KMOD_template,FS_EXT3,fs-ext3,\
- $(MODULES_DIR)/kernel/fs/ext3/*.o \
- $(MODULES_DIR)/kernel/fs/jbd/*.o \
-,CONFIG_EXT3_FS,,30,jbd ext3))
-
-$(eval $(call KMOD_template,FS_HFSPLUS,fs-hfsplus,\
- $(MODULES_DIR)/kernel/fs/hfsplus/*.o \
-,CONFIG_HFSPLUS_FS,,30,hfsplus))
-
-$(eval $(call KMOD_template,FS_NFS,fs-nfs,\
- $(MODULES_DIR)/kernel/fs/lockd/*.o \
- $(MODULES_DIR)/kernel/fs/nfs/*.o \
- $(MODULES_DIR)/kernel/net/sunrpc/*.o \
-,CONFIG_NFS_FS,,30,sunrpc lockd nfs))
-
-$(eval $(call KMOD_template,FS_VFAT,fs-vfat,\
- $(MODULES_DIR)/kernel/fs/vfat/vfat.o \
- $(MODULES_DIR)/kernel/fs/fat/fat.o \
-,CONFIG_VFAT_FS,,30,fat vfat))
-
-$(eval $(call KMOD_template,FS_XFS,fs-xfs,\
- $(MODULES_DIR)/kernel/fs/xfs/*.o \
-,CONFIG_XFS_FS,,30,xfs))
-
-
-# Multimedia
-
-$(eval $(call KMOD_template,PWC,pwc,\
- $(MODULES_DIR)/kernel/drivers/usb/pwc.o \
-,CONFIG_USB_PWC,kmod-videodev,63,pwc))
-
-$(eval $(call KMOD_template,SOUNDCORE,soundcore,\
- $(MODULES_DIR)/kernel/drivers/sound/soundcore.o \
-,CONFIG_SOUND,,30,soundcore))
-
-$(eval $(call KMOD_template,VIDEODEV,videodev,\
- $(MODULES_DIR)/kernel/drivers/media/video/videodev.o \
-,CONFIG_VIDEO_DEV,,62,videodev))
-
-
-# Network devices
-
-$(eval $(call KMOD_template,NET_3C59X,net-3c59x,\
- $(MODULES_DIR)/kernel/drivers/net/3c59x.o \
-,CONFIG_VORTEX,,10,3c59x))
-
-$(eval $(call KMOD_template,NET_8139TOO,net-8139too,\
- $(MODULES_DIR)/kernel/drivers/net/8139too.o \
- $(MODULES_DIR)/kernel/drivers/net/mii.o \
-,CONFIG_8139TOO,,10,mii 8139too))
-
-$(eval $(call KMOD_template,NET_AIRO,net-airo,\
- $(MODULES_DIR)/kernel/drivers/net/wireless/airo.o \
-,CONFIG_AIRO,,10,airo))
-
-$(eval $(call KMOD_template,NET_E100,net-e100,\
- $(MODULES_DIR)/kernel/drivers/net/e100.o \
-,CONFIG_E100,,10,e100))
-
-$(eval $(call KMOD_template,NET_HERMES,net-hermes,\
- $(MODULES_DIR)/kernel/drivers/net/wireless/hermes.o \
- $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco.o \
-,CONFIG_HERMES,,10,hermes orinoco))
-
-$(eval $(call KMOD_template,NET_HERMES_PCI,net-hermes-pci,\
- $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco_pci.o \
-,CONFIG_PCI_HERMES,kmod-net-hermes,11,orinoco_pci))
-
-$(eval $(call KMOD_template,NET_HERMES_PCI,net-hermes-plx,\
- $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco_plx.o \
-,CONFIG_PLX_HERMES,kmod-net-hermes,11,orinoco_plx))
-
-$(eval $(call KMOD_template,NET_NATSEMI,net-natsemi,\
- $(MODULES_DIR)/kernel/drivers/net/natsemi.o \
-,CONFIG_NATSEMI,,10,natsemi))
-
-$(eval $(call KMOD_template,NET_PRISM54,net-prism54,\
- $(MODULES_DIR)/kernel/drivers/net/wireless/prism54/prism54.o \
-,CONFIG_PRISM54,,10,prism54))
-
-
-# PCMCIA/CardBus
-
-$(eval $(call KMOD_template,PCMCIA_CORE,pcmcia-core,\
- $(MODULES_DIR)/kernel/drivers/pcmcia/pcmcia_core.o \
- $(MODULES_DIR)/kernel/drivers/pcmcia/yenta_socket.o \
- $(MODULES_DIR)/kernel/drivers/pcmcia/ds.o \
-,CONFIG_PCMCIA,,50,pcmcia_core yenta_socket ds))
-
-$(eval $(call KMOD_template,PCMCIA_SERIAL,pcmcia-serial,\
- $(MODULES_DIR)/kernel/drivers/char/pcmcia/serial_cs.o \
-,CONFIG_PCMCIA_SERIAL_CS,kmod-pcmcia-core,51,serial_cs))
-
-
-# USB
-
-$(eval $(call KMOD_template,USB,usb-core,\
- $(MODULES_DIR)/kernel/drivers/usb/usbcore.o \
-,CONFIG_USB,,50,usbcore))
-
-$(eval $(call KMOD_template,USB_OHCI,usb-ohci,\
- $(MODULES_DIR)/kernel/drivers/usb/host/usb-ohci.o \
-,CONFIG_USB_OHCI,kmod-usb-core,60,usb-ohci))
-
-$(eval $(call KMOD_template,USB_UHCI,usb-uhci,\
- $(MODULES_DIR)/kernel/drivers/usb/host/uhci.o \
-,CONFIG_USB_UHCI_ALT,kmod-usb-core,60,uhci))
-
-$(eval $(call KMOD_template,USB2,usb2,\
- $(MODULES_DIR)/kernel/drivers/usb/host/ehci-hcd.o \
-,CONFIG_USB_EHCI_HCD,kmod-usb-core,60,ehci-hcd))
-
-$(eval $(call KMOD_template,USB_ACM,usb-acm,\
- $(MODULES_DIR)/kernel/drivers/usb/acm.o \
-,CONFIG_USB_ACM))
-
-$(eval $(call KMOD_template,USB_AUDIO,usb-audio,\
- $(MODULES_DIR)/kernel/drivers/usb/audio.o \
-,CONFIG_USB_AUDIO,kmod-soundcore kmod-usb-core,61,audio))
-
-$(eval $(call KMOD_template,USB_PRINTER,usb-printer,\
- $(MODULES_DIR)/kernel/drivers/usb/printer.o \
-,CONFIG_USB_PRINTER,kmod-usb-core,60,printer))
-
-$(eval $(call KMOD_template,USB_SERIAL,usb-serial,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/usbserial.o \
-,CONFIG_USB_SERIAL,kmod-usb-core,60,usbserial))
-
-$(eval $(call KMOD_template,USB_SERIAL_BELKIN,usb-serial-belkin,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/belkin_sa.o \
-,CONFIG_USB_SERIAL_BELKIN,kmod-usb-serial,61,belkin_sa))
-
-$(eval $(call KMOD_template,USB_SERIAL_FTDI,usb-serial-ftdi,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/ftdi_sio.o \
-,CONFIG_USB_SERIAL_FTDI_SIO,kmod-usb-serial,61,ftdi_sio))
-
-$(eval $(call KMOD_template,USB_SERIAL_MCT_U232,usb-serial-mct-u232,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/mct_u232.o \
-,CONFIG_USB_SERIAL_MCT_U232,kmod-usb-serial,61,mct_u232))
-
-$(eval $(call KMOD_template,USB_SERIAL_PL2303,usb-serial-pl2303,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/pl2303.o \
-,CONFIG_USB_SERIAL_PL2303,kmod-usb-serial,61,pl2303))
-
-$(eval $(call KMOD_template,USB_SERIAL_VISOR,usb-serial-visor,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/visor.o \
-,CONFIG_USB_SERIAL_VISOR,kmod-usb-serial,61,visor))
-
-$(eval $(call KMOD_template,USB_STORAGE,usb-storage,\
- $(MODULES_DIR)/kernel/drivers/scsi/*.o \
- $(MODULES_DIR)/kernel/drivers/usb/storage/*.o \
-,CONFIG_USB_STORAGE,kmod-usb-core,60,scsi_mod sd_mod usb-storage))
-
-
-# Misc. devices
-
-$(eval $(call KMOD_template,AX25,ax25,\
- $(MODULES_DIR)/kernel/net/ax25/ax25.o \
- $(MODULES_DIR)/kernel/drivers/net/hamradio/mkiss.o \
-,CONFIG_AX25,,90,ax25 mkiss))
-
-$(eval $(call KMOD_template,BLUETOOTH,bluetooth,\
- $(MODULES_DIR)/kernel/net/bluetooth/*.o \
- $(MODULES_DIR)/kernel/net/bluetooth/rfcomm/*.o \
- $(MODULES_DIR)/kernel/drivers/bluetooth/*.o \
-,CONFIG_BLUEZ))
-
-$(eval $(call KMOD_template,SOFTDOG,softdog,\
- $(MODULES_DIR)/kernel/drivers/char/softdog.o \
-,CONFIG_SOFT_WATCHDOG,,95,softdog))
-
-
-
+++ /dev/null
-NF_2_6:=1
-include ../netfilter.mk
-
-# Networking
-
-$(eval $(call KMOD_template,ATM,atm,\
- $(MODULES_DIR)/kernel/net/atm/atm.ko \
- $(MODULES_DIR)/kernel/net/atm/br2684.ko \
- $(MODULES_DIR)/kernel/drivers/atm/atmtcp.ko \
-,CONFIG_ATM,,50,atm))
-
-$(eval $(call KMOD_template,GRE,gre,\
- $(MODULES_DIR)/kernel/net/ipv4/ip_gre.ko \
-,CONFIG_NET_IPGRE))
-
-$(eval $(call KMOD_template,IMQ,imq,\
- $(MODULES_DIR)/kernel/net/ipv4/netfilter/*IMQ*.ko \
- $(MODULES_DIR)/kernel/drivers/net/imq.ko \
-))
-
-$(eval $(call KMOD_template,IPIP,ipip,\
- $(MODULES_DIR)/kernel/net/ipv4/ipip.ko \
-,CONFIG_NET_IPIP,,60,ipip))
-
-$(eval $(call KMOD_template,IPV6,ipv6,\
- $(MODULES_DIR)/kernel/net/ipv6/ipv6.ko \
-,CONFIG_IPV6,,20,ipv6))
-
-$(eval $(call KMOD_template,PPP,ppp,\
- $(MODULES_DIR)/kernel/drivers/net/ppp_async.ko \
- $(MODULES_DIR)/kernel/drivers/net/ppp_generic.ko \
- $(MODULES_DIR)/kernel/drivers/net/slhc.ko \
- $(MODULES_DIR)/kernel/lib/crc-ccitt.ko \
-,CONFIG_PPP))
-
-#$(eval $(call KMOD_template,MPPE,mppe,\
-# $(MODULES_DIR)/kernel/drivers/net/ppp_mppe_mppc.ko \
-#,CONFIG_PPP_MPPE_MPPC))
-
-$(eval $(call KMOD_template,PPPOATM,pppoatm,\
- $(MODULES_DIR)/kernel/net/atm/pppoatm.ko \
-,CONFIG_PPPOATM))
-
-$(eval $(call KMOD_template,PPPOE,pppoe,\
- $(MODULES_DIR)/kernel/drivers/net/pppoe.ko \
- $(MODULES_DIR)/kernel/drivers/net/pppox.ko \
-,CONFIG_PPPOE))
-
-$(eval $(call KMOD_template,SCHED,sched,\
- $(MODULES_DIR)/kernel/net/sched/*.ko \
-))
-
-$(eval $(call KMOD_template,TUN,tun,\
- $(MODULES_DIR)/kernel/drivers/net/tun.ko \
-,CONFIG_TUN,,20,tun))
-
-
-# Filtering / Firewalling
-
-$(eval $(call KMOD_template,ARPTABLES,arptables,\
- $(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.ko \
-,CONFIG_IP_NF_ARPTABLES))
-
-$(eval $(call KMOD_template,EBTABLES,ebtables,\
- $(MODULES_DIR)/kernel/net/bridge/netfilter/*.ko \
-,CONFIG_BRIDGE_NF_EBTABLES))
-
-# metapackage for compatibility ...
-$(eval $(call KMOD_template,IPTABLES_EXTRA,iptables-extra,\
-,,kmod-ipt-conntrack kmod-ipt-extra kmod-ipt-filter kmod-ipt-ipopt kmod-ipt-ipsec kmod-ipt-nat kmod-ipt-nat-extra kmod-ipt-queue kmod-ipt-ulogd))
-
-$(eval $(call KMOD_template,IPT_CONNTRACK,ipt-conntrack,\
- $(foreach mod,$(IPT_CONNTRACK-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
-))
-
-$(eval $(call KMOD_template,IPT_EXTRA,ipt-extra,\
- $(foreach mod,$(IPT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
-))
-
-$(eval $(call KMOD_template,IPT_FILTER,ipt-filter,\
- $(foreach mod,$(IPT_FILTER-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
-))
-
-$(eval $(call KMOD_template,IPT_IPOPT,ipt-ipopt,\
- $(foreach mod,$(IPT_IPOPT-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
-))
-
-$(eval $(call KMOD_template,IPT_IPSEC,ipt-ipsec,\
- $(foreach mod,$(IPT_IPSEC-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
-))
-
-$(eval $(call KMOD_template,IPT_NAT,ipt-nat,\
- $(foreach mod,$(IPT_NAT-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
-))
-
-$(eval $(call KMOD_template,IPT_NAT_EXTRA,ipt-nat-extra,\
- $(foreach mod,$(IPT_NAT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
-,,,40,$(IPT_NAT_EXTRA-m)))
-
-$(eval $(call KMOD_template,IPT_QUEUE,ipt-queue,\
- $(foreach mod,$(IPT_QUEUE-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
-))
-
-$(eval $(call KMOD_template,IPT_ULOG,ipt-ulog,\
- $(foreach mod,$(IPT_ULOG-m),$(MODULES_DIR)/kernel/net/$(mod).ko) \
-))
-
-$(eval $(call KMOD_template,IP6TABLES,ip6tables,\
- $(MODULES_DIR)/kernel/net/ipv6/netfilter/ip*.ko \
-,CONFIG_IP6_NF_IPTABLES,kmod-ipv6))
-
-
-# Block devices
-
-$(eval $(call KMOD_template,IDE,ide,\
- $(MODULES_DIR)/kernel/drivers/ide/*.ko \
- $(MODULES_DIR)/kernel/drivers/ide/*/*.ko \
-,CONFIG_IDE))
-
-$(eval $(call KMOD_template,LOOP,loop,\
- $(MODULES_DIR)/kernel/drivers/block/loop.ko \
-,CONFIG_BLK_DEV_LOOP,,20,loop))
-
-$(eval $(call KMOD_template,NBD,nbd,\
- $(MODULES_DIR)/kernel/drivers/block/nbd.ko \
-,CONFIG_BLK_DEV_NBD,,20,nbd))
-
-
-# Crypto
-
-$(eval $(call KMOD_template,CRYPTO,crypto,\
- $(MODULES_DIR)/kernel/crypto/*.ko \
-))
-
-
-# Filesystems
-
-$(eval $(call KMOD_template,FS_CIFS,fs-cifs,\
- $(MODULES_DIR)/kernel/fs/cifs/cifs.ko \
-,CONFIG_CIFS,kmod-nls-base,30,cifs))
-
-$(eval $(call KMOD_template,FS_MINIX,fs-minix,\
- $(MODULES_DIR)/kernel/fs/minix/minix.ko \
-,CONFIG_MINIX_FS,,30,minix))
-
-$(eval $(call KMOD_template,FS_EXT2,fs-ext2,\
- $(MODULES_DIR)/kernel/fs/ext2/ext2.ko \
-,CONFIG_EXT2_FS,,30,ext2))
-
-$(eval $(call KMOD_template,FS_EXT3,fs-ext3,\
- $(MODULES_DIR)/kernel/fs/ext3/ext3.ko \
- $(MODULES_DIR)/kernel/fs/jbd/jbd.ko \
-,CONFIG_EXT3_FS,,30,jbd ext3))
-
-$(eval $(call KMOD_template,FS_HFSPLUS,fs-hfsplus,\
- $(MODULES_DIR)/kernel/fs/hfsplus/hfsplus.ko \
-,CONFIG_HFSPLUS_FS,kmod-nls-base,30,hfsplus))
-
-$(eval $(call KMOD_template,FS_NFS,fs-nfs,\
- $(MODULES_DIR)/kernel/fs/lockd/lockd.ko \
- $(MODULES_DIR)/kernel/fs/nfs/nfs.ko \
- $(MODULES_DIR)/kernel/net/sunrpc/sunrpc.ko \
-,CONFIG_NFS_FS,,30,sunrpc lockd nfs))
-
-$(eval $(call KMOD_template,FS_VFAT,fs-vfat,\
- $(MODULES_DIR)/kernel/fs/fat/fat.ko \
- $(MODULES_DIR)/kernel/fs/vfat/vfat.ko \
-,CONFIG_VFAT_FS,kmod-nls-base,30,fat vfat))
-
-$(eval $(call KMOD_template,FS_XFS,fs-xfs,\
- $(MODULES_DIR)/kernel/fs/xfs/xfs.ko \
-,CONFIG_XFS_FS,,30,xfs))
-
-
-# Multimedia
-
-$(eval $(call KMOD_template,PWC,pwc,\
- $(MODULES_DIR)/kernel/drivers/usb/media/pwc/pwc.ko \
-,CONFIG_USB_PWC,kmod-videodev,63,pwc))
-
-$(eval $(call KMOD_template,SOUNDCORE,soundcore,\
- $(MODULES_DIR)/kernel/sound/soundcore.ko \
-,CONFIG_SOUND,,30,soundcore))
-
-$(eval $(call KMOD_template,VIDEODEV,videodev,\
- $(MODULES_DIR)/kernel/drivers/media/video/v4l1-compat.ko \
- $(MODULES_DIR)/kernel/drivers/media/video/v4l2-common.ko \
- $(MODULES_DIR)/kernel/drivers/media/video/videodev.ko \
-,CONFIG_VIDEO_DEV,,62,videodev))
-
-
-# NLS
-
-$(eval $(call KMOD_template,NLS_BASE,nls-base,\
- $(MODULES_DIR)/kernel/fs/nls/nls_base.ko \
-,CONFIG_NLS,,20,nls_base))
-
-$(eval $(call KMOD_template,NLS_CP437,nls-cp437,\
- $(MODULES_DIR)/kernel/fs/nls/nls_cp437.ko \
-,CONFIG_NLS_CODEPAGE_437,,20,nls_cp437))
-
-$(eval $(call KMOD_template,NLS_CP850,nls-cp850,\
- $(MODULES_DIR)/kernel/fs/nls/nls_cp850.ko \
-,CONFIG_NLS_CODEPAGE_850,,20,nls_cp850))
-
-$(eval $(call KMOD_template,NLS_ISO8859_1,nls-iso8859-1,\
- $(MODULES_DIR)/kernel/fs/nls/nls_iso8859-1.ko \
-,CONFIG_NLS_ISO8859_1,,20,nls_iso8859-1))
-
-$(eval $(call KMOD_template,NLS_ISO8859_15,nls-iso8859-15,\
- $(MODULES_DIR)/kernel/fs/nls/nls_iso8859-15.ko \
-,CONFIG_NLS_ISO8859_15,,20,nls_iso8859-15))
-
-$(eval $(call KMOD_template,NLS_UTF8,nls-utf8,\
- $(MODULES_DIR)/kernel/fs/nls/nls_utf8.ko \
-,CONFIG_NLS_UTF8,,20,nls_utf8))
-
-
-# Network devices
-
-$(eval $(call KMOD_template,NET_3C59X,net-3c59x,\
- $(MODULES_DIR)/kernel/drivers/net/3c59x.ko \
-,CONFIG_VORTEX,,10,3c59x))
-
-$(eval $(call KMOD_template,NET_8139TOO,net-8139too,\
- $(MODULES_DIR)/kernel/drivers/net/8139too.ko \
-,CONFIG_8139TOO,,10,8139too))
-
-$(eval $(call KMOD_template,NET_AIRO,net-airo,\
- $(MODULES_DIR)/kernel/drivers/net/wireless/airo.ko \
-,CONFIG_AIRO,,10,airo))
-
-$(eval $(call KMOD_template,NET_E100,net-e100,\
- $(MODULES_DIR)/kernel/drivers/net/e100.ko \
-,CONFIG_E100,,10,e100))
-
-$(eval $(call KMOD_template,NET_HERMES,net-hermes,\
- $(MODULES_DIR)/kernel/drivers/net/wireless/hermes.ko \
- $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco.ko \
-,CONFIG_HERMES,,10,hermes orinoco))
-
-$(eval $(call KMOD_template,NET_HERMES_PCI,net-hermes-pci,\
- $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco_pci.ko \
-,CONFIG_PCI_HERMES,kmod-net-hermes,11,orinoco_pci))
-
-$(eval $(call KMOD_template,NET_HERMES_PCI,net-hermes-plx,\
- $(MODULES_DIR)/kernel/drivers/net/wireless/orinoco_plx.ko \
-,CONFIG_PLX_HERMES,kmod-net-hermes,11,orinoco_plx))
-
-$(eval $(call KMOD_template,NET_NATSEMI,net-natsemi,\
- $(MODULES_DIR)/kernel/drivers/net/natsemi.ko \
-,CONFIG_NATSEMI,,10,natsemi))
-
-$(eval $(call KMOD_template,NET_PRISM54,net-prism54,\
- $(MODULES_DIR)/kernel/drivers/net/wireless/prism54/prism54.ko \
-,CONFIG_PRISM54,,10,prism54))
-
-
-# PCMCIA/CardBus
-
-$(eval $(call KMOD_template,PCMCIA_CORE,pcmcia-core,\
- $(MODULES_DIR)/kernel/drivers/pcmcia/pcmcia.ko \
- $(MODULES_DIR)/kernel/drivers/pcmcia/pcmcia_core.ko \
- $(MODULES_DIR)/kernel/drivers/pcmcia/yenta_socket.ko \
- $(MODULES_DIR)/kernel/drivers/pcmcia/rsrc_nonstatic.ko \
-,CONFIG_PCMCIA,,50,pcmcia_core pcmcia yenta_socket rsrc_nonstatic))
-
-$(eval $(call KMOD_template,PCMCIA_SERIAL,pcmcia-serial,\
- $(MODULES_DIR)/kernel/drivers/serial/serial_cs.ko \
-,CONFIG_SERIAL_8250_CS))
-
-
-# USB
-
-$(eval $(call KMOD_template,USB,usb-core,\
- $(MODULES_DIR)/kernel/drivers/usb/core/usbcore.ko \
-,CONFIG_USB,,50,usbcore))
-
-$(eval $(call KMOD_template,USB_OHCI,usb-ohci,\
- $(MODULES_DIR)/kernel/drivers/usb/host/ohci-hcd.ko \
-,CONFIG_USB_OHCI_HCD,kmod-usb-core,60,ohci-hcd))
-
-$(eval $(call KMOD_template,USB_UHCI,usb-uhci,\
- $(MODULES_DIR)/kernel/drivers/usb/host/uhci-hcd.ko \
-,CONFIG_USB_UHCI_HCD,kmod-usb-core,60,uhci-hcd))
-
-$(eval $(call KMOD_template,USB2,usb2,\
- $(MODULES_DIR)/kernel/drivers/usb/host/ehci-hcd.ko \
-,CONFIG_USB_EHCI_HCD,kmod-usb-core,60,ehci-hcd))
-
-$(eval $(call KMOD_template,USB_ACM,usb-acm,\
- $(MODULES_DIR)/kernel/drivers/usb/class/cdc-acm.ko \
-,CONFIG_USB_ACM))
-
-$(eval $(call KMOD_template,USB_AUDIO,usb-audio,\
- $(MODULES_DIR)/kernel/drivers/usb/class/audio.ko \
-,CONFIG_USB_AUDIO,kmod-soundcore kmod-usb-core,61,audio))
-
-$(eval $(call KMOD_template,USB_PRINTER,usb-printer,\
- $(MODULES_DIR)/kernel/drivers/usb/class/usblp.ko \
-,CONFIG_USB_PRINTER,kmod-usb-core,60,usblp))
-
-$(eval $(call KMOD_template,USB_SERIAL,usb-serial,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/usbserial.ko \
-,CONFIG_USB_SERIAL,kmod-usb-core,60,usbserial))
-
-$(eval $(call KMOD_template,USB_SERIAL_BELKIN,usb-serial-belkin,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/belkin_sa.ko \
-,CONFIG_USB_SERIAL_BELKIN,kmod-usb-serial,61,belkin_sa))
-
-$(eval $(call KMOD_template,USB_SERIAL_FTDI,usb-serial-ftdi,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/ftdi_sio.ko \
-,CONFIG_USB_SERIAL_FTDI_SIO,kmod-usb-serial,61,ftdi_sio))
-
-$(eval $(call KMOD_template,USB_SERIAL_MCT_U232,usb-serial-mct-u232,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/mct_u232.ko \
-,CONFIG_USB_SERIAL_MCT_U232,kmod-usb-serial,61,mct_u232))
-
-$(eval $(call KMOD_template,USB_SERIAL_PL2303,usb-serial-pl2303,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/pl2303.ko \
-,CONFIG_USB_SERIAL_PL2303,kmod-usb-serial,61,pl2303))
-
-$(eval $(call KMOD_template,USB_SERIAL_VISOR,usb-serial-visor,\
- $(MODULES_DIR)/kernel/drivers/usb/serial/visor.ko \
-,CONFIG_USB_SERIAL_VISOR,kmod-usb-serial,61,visor))
-
-$(eval $(call KMOD_template,USB_STORAGE,usb-storage,\
- $(MODULES_DIR)/kernel/drivers/scsi/scsi_mod.ko \
- $(MODULES_DIR)/kernel/drivers/scsi/sd_mod.ko \
- $(MODULES_DIR)/kernel/drivers/usb/storage/usb-storage.ko \
-,CONFIG_USB_STORAGE,kmod-usb-core,60,scsi_mod sd_mod usb-storage))
-
-$(eval $(call KMOD_template,USB_ATM,usb-atm,\
- $(MODULES_DIR)/kernel/drivers/usb/atm/usbatm.ko \
- ,CONFIG_USB_ATM,kmod-usb-atm,50,usbatm))
-
-$(eval $(call KMOD_template,USB_ATM_SPEEDTOUCH,usb-atm-speedtouch,\
- $(MODULES_DIR)/kernel/drivers/usb/atm/speedtch.ko \
- ,CONFIG_USB_SPEEDTOUCH,kmod-usb-atm-speedtouch,50,speedtch))
-
-# Misc. devices
-
-$(eval $(call KMOD_template,AX25,ax25,\
- $(MODULES_DIR)/kernel/net/ax25/ax25.ko \
- $(MODULES_DIR)/kernel/drivers/net/hamradio/mkiss.ko \
-,CONFIG_AX25,,90,ax25 mkiss))
-
-$(eval $(call KMOD_template,BLUETOOTH,bluetooth,\
- $(MODULES_DIR)/kernel/net/bluetooth/bluetooth.ko \
- $(MODULES_DIR)/kernel/net/bluetooth/l2cap.ko \
- $(MODULES_DIR)/kernel/net/bluetooth/sco.ko \
- $(MODULES_DIR)/kernel/net/bluetooth/rfcomm/rfcomm.ko \
- $(MODULES_DIR)/kernel/drivers/bluetooth/hci_uart.ko \
- $(MODULES_DIR)/kernel/drivers/bluetooth/hci_usb.ko \
-,CONFIG_BT))
-
-
-include ../image.mk
+include $(TOPDIR)/include/image.mk
PKG_BUILD_DIR:=$(BUILD_DIR)/ar7loader
-include ../image.mk
+include $(TOPDIR)/include/image.mk
LOADADDR = 0x81000000 # RAM start + 16M
KERNEL_ENTRY = 0x80100000
-include ../image.mk
+include $(TOPDIR)/include/image.mk
LOADADDR = 0x8108c8f4 # RAM start + 16M
KERNEL_ENTRY = 0x80100000 # Default kernel entry in arch/mips/Makefile
-include ../image.mk
+include $(TOPDIR)/include/image.mk
define Build/Compile
rm -f $(KDIR)/loader.gz
-include ../image.mk
+include $(TOPDIR)/include/image.mk
# use default targets for everything
+++ /dev/null
-include $(TOPDIR)/rules.mk
-
-KDIR:=$(BUILD_DIR)/linux-$(KERNEL)-$(BOARD)
-
-ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
-ifeq ($(CONFIG_TARGET_ROOTFS_JFFS2),y)
-include $(TOPDIR)/target/linux/image/jffs2.mk
-endif
-
-ifeq ($(CONFIG_TARGET_ROOTFS_SQUASHFS_LZMA),y)
-include $(TOPDIR)/target/linux/image/squashfs.mk
-endif
-
-ifeq ($(CONFIG_TARGET_ROOTFS_TGZ),y)
-include $(TOPDIR)/target/linux/image/tgz.mk
-endif
-endif
-
-define Image/mkfs/prepare/default
- find $(BUILD_DIR)/root -type f -not -perm +0100 | xargs chmod 0644
- find $(BUILD_DIR)/root -type f -perm +0100 | xargs chmod 0755
- find $(BUILD_DIR)/root -type d | xargs chmod 0755
- mkdir -p $(BUILD_DIR)/root/tmp
- chmod 0777 $(BUILD_DIR)/root/tmp
-endef
-
-define Image/mkfs/prepare
- $(call Image/mkfs/prepare/default)
-endef
-
-define BuildImage
-compile:
- $(call Build/Compile)
-
-install:
- $(call Image/Prepare)
- $(call Image/mkfs/prepare)
- $(call Image/BuildKernel)
- $(call Image/mkfs/jffs2)
- $(call Image/mkfs/squashfs)
- $(call Image/mkfs/tgz)
-
-clean:
- $(call Build/Clean)
-endef
-
-compile-targets:
-install-targets:
-clean-targets:
-
-source:
-prepare:
-compile: compile-targets
-install: compile install-targets
-clean: clean-targets
+++ /dev/null
-ifneq ($(CONFIG_BIG_ENDIAN),y)
-JFFS2OPTS := --pad --little-endian --squash
-else
-JFFS2OPTS := --pad --big-endian --squash
-endif
-
-define Image/mkfs/jffs2
- rm -rf $(BUILD_DIR)/root/jffs
-
- $(STAGING_DIR)/bin/mkfs.jffs2 $(JFFS2OPTS) -e 0x10000 -o $(KDIR)/root.jffs2-64k -d $(BUILD_DIR)/root
- $(STAGING_DIR)/bin/mkfs.jffs2 $(JFFS2OPTS) -e 0x20000 -o $(KDIR)/root.jffs2-128k -d $(BUILD_DIR)/root
-
- $(call Image/Build,jffs2-64k)
- $(call Image/Build,jffs2-128k)
-endef
-
-jffs2-source: FORCE
- $(MAKE) -C $(TOPDIR)/target/linux/image/jffs2 source
-
-$(STAGING_DIR)/bin/mkfs.jffs2:
- $(MAKE) -C $(TOPDIR)/target/linux/image/jffs2 compile
-
-jffs2-clean: FORCE
- $(MAKE) -C $(TOPDIR)/target/linux/image/jffs2 clean
- rm -f $(KDIR)/root.jffs2*
-
-source: jffs2-source
-compile-targets: $(STAGING_DIR)/bin/mkfs.jffs2
-clean-targets: jffs2-clean
-
+++ /dev/null
-include $(TOPDIR)/rules.mk
-
-MTD_DIR:=$(BUILD_DIR)/mtd-20050122.orig
-MTD_SOURCE=mtd_20050122.orig.tar.gz
-MTD_SITE=http://ftp.debian.org/debian/pool/main/m/mtd
-MTD_MD5SUM:=1f42c2cae08eb9e7b52d0c188f8d6338
-MKFS_JFFS2=$(MTD_DIR)/util/mkfs.jffs2
-
-$(DL_DIR)/$(MTD_SOURCE):
- $(SCRIPT_DIR)/download.pl $(DL_DIR) $(MTD_SOURCE) $(MTD_MD5SUM) $(MTD_SITE)
-
-$(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
- zcat $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) -xvf -
- $(PATCH) $(MTD_DIR) ./patches
- touch $(MTD_DIR)/.unpacked
-
-$(MTD_DIR)/util/mkfs.jffs2: $(MTD_DIR)/.unpacked
- $(MAKE) LINUXDIR=$(LINUX_DIR) -C $(MTD_DIR)/util
-
-$(STAGING_DIR)/bin/mkfs.jffs2: $(MTD_DIR)/util/mkfs.jffs2
- $(CP) $< $@
-
-source: $(DL_DIR)/$(MTD_SOURCE)
-prepare: $(MTD_DIR)/.unpacked
-compile: $(MTD_DIR)/util/mkfs.jffs2 $(STAGING_DIR)/bin/mkfs.jffs2
-install:
-clean: FORCE
- rm -rf $(MTD_DIR) $(STAGING_DIR)/bin/mkfs.jffs2
-
+++ /dev/null
-diff -urN mtd-20050122.orig.old/include/mtd/jffs2-user.h mtd-20050122.orig.dev/include/mtd/jffs2-user.h
---- mtd-20050122.orig.old/include/mtd/jffs2-user.h 2004-05-05 13:57:54.000000000 +0200
-+++ mtd-20050122.orig.dev/include/mtd/jffs2-user.h 2005-07-02 10:03:09.000000000 +0200
-@@ -19,8 +19,6 @@
- #undef je32_to_cpu
- #undef jemode_to_cpu
-
--extern int target_endian;
--
- #define t16(x) ({ uint16_t __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_16(__b); })
- #define t32(x) ({ uint32_t __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_32(__b); })
-
-diff -urN mtd.old/util/jffs3.h mtd.dev/util/jffs3.h
---- mtd.old/util/jffs3.h 2005-01-22 00:00:13.000000000 +0100
-+++ mtd.dev/util/jffs3.h 2005-07-17 17:48:24.000000000 +0200
-@@ -177,8 +177,6 @@
- #undef je32_to_cpu
- #undef jemode_to_cpu
-
--extern int target_endian;
--
- #define t16(x) ({ uint16_t __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_16(__b); })
- #define t32(x) ({ uint32_t __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_32(__b); })
-
-include ../image.mk
+include $(TOPDIR)/include/image.mk
LOADADDR = 0x81000000 # RAM start + 16M
KERNEL_ENTRY = 0x80101000
+++ /dev/null
-ifneq ($(CONFIG_BIG_ENDIAN),y)
-ENDIAN := le
-else
-ENDIAN := be
-endif
-
-squashfs-source: FORCE
- $(MAKE) -C $(TOPDIR)/target/linux/image/squashfs source
-
-$(STAGING_DIR)/bin/mksquashfs-lzma:
- $(MAKE) -C $(TOPDIR)/target/linux/image/squashfs compile
-
-squashfs-clean: FORCE
- $(MAKE) -C $(TOPDIR)/target/linux/image/squashfs clean
- rm -f $(KDIR)/root.squashfs
-
-define Image/mkfs/squashfs
- @mkdir -p $(BUILD_DIR)/root/jffs
- $(STAGING_DIR)/bin/mksquashfs-lzma $(BUILD_DIR)/root $(KDIR)/root.squashfs -nopad -noappend -root-owned -$(ENDIAN)
- $(call Image/Build,squashfs)
-endef
-
-FILESYSTEMS += squashfs
-compile-targets: $(STAGING_DIR)/bin/mksquashfs-lzma
-clean-targets: squashfs-clean
+++ /dev/null
-include $(TOPDIR)/rules.mk
-
-SQUASHFSLZMA_DIR=$(BUILD_DIR)/squashfs3.0
-SQUASHFSLZMA_SOURCE=squashfs3.0.tar.gz
-SQUASHFSLZMA_SITE=@SF/squashfs
-SQUASHFSLZMA_MD5SUM=9fd05d0bfbb712f5fb95edafea5bc733
-
-$(DL_DIR)/$(SQUASHFSLZMA_SOURCE):
- $(SCRIPT_DIR)/download.pl $(DL_DIR) $(SQUASHFSLZMA_SOURCE) $(SQUASHFSLZMA_MD5SUM) $(SQUASHFSLZMA_SITE)
-
-$(SQUASHFSLZMA_DIR)/.unpacked: $(DL_DIR)/$(SQUASHFSLZMA_SOURCE)
- zcat $(DL_DIR)/$(SQUASHFSLZMA_SOURCE) | tar -C $(BUILD_DIR) -xvf -
- $(PATCH) $(SQUASHFSLZMA_DIR) ./patches
- touch $(SQUASHFSLZMA_DIR)/.unpacked
-
-$(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs-lzma: $(SQUASHFSLZMA_DIR)/.unpacked
- $(MAKE) -C $(SQUASHFSLZMA_DIR)/squashfs-tools mksquashfs-lzma LZMAPATH=$(BUILD_DIR)/lzma
-
-$(STAGING_DIR)/bin/mksquashfs-lzma: $(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs-lzma
- $(CP) $< $@
-
-source: $(DL_DIR)/$(SQUASHFSLZMA_SOURCE)
-prepare: $(SQUASHFSLZMA_DIR)/.unpacked
-compile: $(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs-lzma $(STAGING_DIR)/bin/mksquashfs-lzma
-install:
-clean: FORCE
- rm -rf $(SQUASHFSLZMA_DIR)
+++ /dev/null
-diff -Nur squashfs3.0/squashfs-tools/Makefile squashfs3.0-owrt/squashfs-tools/Makefile
---- squashfs3.0/squashfs-tools/Makefile 2006-03-15 22:36:20.000000000 +0100
-+++ squashfs3.0-owrt/squashfs-tools/Makefile 2006-03-21 11:14:08.000000000 +0100
-@@ -1,4 +1,5 @@
- INCLUDEDIR = .
-+#LZMAPATH = ../lzma/SRC/7zip/Compress/LZMA_Lib
-
- CFLAGS := -I$(INCLUDEDIR) -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -O2
-
-@@ -7,6 +8,9 @@
- mksquashfs: mksquashfs.o read_fs.o sort.o
- $(CC) mksquashfs.o read_fs.o sort.o -lz -o $@
-
-+mksquashfs-lzma: mksquashfs.o read_fs.o sort.o
-+ $(CXX) mksquashfs.o read_fs.o sort.o -L$(LZMAPATH) -llzma -o $@
-+
- mksquashfs.o: mksquashfs.c squashfs_fs.h mksquashfs.h global.h sort.h
-
- read_fs.o: read_fs.c squashfs_fs.h read_fs.h global.h
-@@ -17,3 +21,5 @@
- $(CC) unsquashfs.o -lz -o $@
-
- unsquashfs.o: unsquashfs.c squashfs_fs.h read_fs.h global.h
-+
-+clean:
+++ /dev/null
-define Image/mkfs/tgz
- tar -zcf $(BIN_DIR)/openwrt-rootfs.tgz --owner=root --group=root -C $(BUILD_DIR)/root/ .
-endef
-include ../image.mk
+include $(TOPDIR)/include/image.mk
define Image/Build
cp $(KDIR)/root.$(1) $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(1).img
-include ../image.mk
+include $(TOPDIR)/include/image.mk
define Image/Build
ifneq ($(FS),jffs2-64k)
+++ /dev/null
-LINUX_SOURCE:=$(LINUX_NAME).tar.bz2
-LINUX_SITE=http://www.us.kernel.org/pub/linux/kernel/v$(KERNEL) \
- http://www.us.kernel.org/pub/linux/kernel/v$(KERNEL) \
- http://www.kernel.org/pub/linux/kernel/v$(KERNEL) \
- http://www.de.kernel.org/pub/linux/kernel/v$(KERNEL)
-
-KERNEL_IDIR:=$(LINUX_BUILD_DIR)/kernel-ipkg
-
-$(TARGETS): $(PACKAGE_DIR)
-
-$(LINUX_DIR):
- mkdir -p $@
-
-$(PACKAGE_DIR):
- mkdir -p $@
-
-$(DL_DIR)/$(LINUX_SOURCE):
- -mkdir -p $(DL_DIR)
- $(SCRIPT_DIR)/download.pl $(DL_DIR) $(LINUX_SOURCE) $(LINUX_KERNEL_MD5SUM) $(LINUX_SITE)
-
-$(LINUX_DIR)/.unpacked: $(DL_DIR)/$(LINUX_SOURCE)
- -mkdir -p $(LINUX_BUILD_DIR)
- bzcat $(DL_DIR)/$(LINUX_SOURCE) | tar -C $(LINUX_BUILD_DIR) $(TAR_OPTIONS) -
- touch $@
-
-ifeq ($(KERNEL),2.4)
-$(LINUX_DIR)/.configured: $(LINUX_DIR)/.patched
- $(SED) "s,^CROSS_COMPILE.*,CROSS_COMPILE=$(KERNEL_CROSS),g;" \
- $(LINUX_DIR)/Makefile \
- $(LINUX_DIR)/arch/*/Makefile
- $(SED) "s,\-mcpu=,\-mtune=,g;" $(LINUX_DIR)/arch/mips/Makefile
- $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_KARCH) oldconfig include/linux/compile.h include/linux/version.h
- touch $@
-
-$(LINUX_DIR)/.depend_done: $(LINUX_DIR)/.configured
- $(MAKE) -C $(LINUX_DIR) CROSS_COMPILE="$(KERNEL_CROSS)" ARCH=$(LINUX_KARCH) dep
- touch $@
-
-$(LINUX_DIR)/vmlinux: $(LINUX_DIR)/.depend_done
-else
-$(LINUX_DIR)/.configured: $(LINUX_DIR)/.patched
- $(MAKE) -C $(LINUX_DIR) CROSS_COMPILE="$(KERNEL_CROSS)" ARCH=$(LINUX_KARCH) oldconfig prepare scripts
- touch $@
-endif
-
-ramdisk-config: $(LINUX_DIR)/.configured FORCE
- mv $(LINUX_DIR)/.config $(LINUX_DIR)/.config.old
- grep -v INITRAMFS $(LINUX_DIR)/.config.old > $(LINUX_DIR)/.config
-ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
- echo 'CONFIG_INITRAMFS_SOURCE="../../root"' >> $(LINUX_DIR)/.config
- echo 'CONFIG_INITRAMFS_ROOT_UID=0' >> $(LINUX_DIR)/.config
- echo 'CONFIG_INITRAMFS_ROOT_GID=0' >> $(LINUX_DIR)/.config
- mkdir -p $(BUILD_DIR)/root/etc/init.d
- $(CP) ../generic-2.6/files/init $(BUILD_DIR)/root/
-else
- rm -f $(BUILD_DIR)/root/init $(BUILD_DIR)/root/etc/init.d/S00initramfs
- echo 'CONFIG_INITRAMFS_SOURCE=""' >> $(LINUX_DIR)/.config
-endif
-
-$(LINUX_DIR)/vmlinux: $(STAMP_DIR)/.linux-compile pkg-install ramdisk-config
- $(MAKE) -C $(LINUX_DIR) CROSS_COMPILE="$(KERNEL_CROSS)" ARCH=$(LINUX_KARCH) PATH=$(TARGET_PATH)
-
-$(LINUX_KERNEL): $(LINUX_DIR)/vmlinux
- $(TARGET_CROSS)objcopy -O binary -R .reginfo -R .note -R .comment -R .mdebug -S $< $@
- touch -c $(LINUX_KERNEL)
-
-$(LINUX_DIR)/.modules_done:
- rm -rf $(LINUX_BUILD_DIR)/modules
- $(MAKE) -C "$(LINUX_DIR)" CROSS_COMPILE="$(KERNEL_CROSS)" ARCH=$(LINUX_KARCH) PATH="$(TARGET_PATH)" modules
- $(MAKE) -C "$(LINUX_DIR)" CROSS_COMPILE="$(KERNEL_CROSS)" DEPMOD=true INSTALL_MOD_PATH=$(LINUX_BUILD_DIR)/modules modules_install
- touch $(LINUX_DIR)/.modules_done
-
-$(STAMP_DIR)/.linux-compile:
- @$(MAKE) $(LINUX_DIR)/.modules_done $(TARGETS) $(KERNEL_IPKG)
- ln -sf $(LINUX_BUILD_DIR)/linux-$(LINUX_VERSION) $(BUILD_DIR)/linux
- touch $@
-
-$(KERNEL_IPKG):
- rm -rf $(KERNEL_IDIR)
- mkdir -p $(KERNEL_IDIR)/etc
- $(SCRIPT_DIR)/make-ipkg-dir.sh $(KERNEL_IDIR) ../control/kernel.control $(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE) $(ARCH)
- if [ -f ./config/$(BOARD).modules ]; then \
- cp ./config/$(BOARD).modules $(KERNEL_IDIR)/etc/modules; \
- fi
- $(IPKG_BUILD) $(KERNEL_IDIR) $(LINUX_BUILD_DIR)
-
-$(BUILD_DIR)/kernel.mk: $(LINUX_DIR) FORCE
- echo "BOARD:=$(BOARD)" > $@
- echo "LINUX_NAME:=$(LINUX_NAME)" >> $@
- echo "LINUX_VERSION:=$(LINUX_VERSION)" >> $@
- echo "LINUX_RELEASE:=$(LINUX_RELEASE)" >> $@
-
-pkg-install: FORCE
- @{ [ "$(INSTALL_TARGETS)" != "" ] && $(IPKG) install $(INSTALL_TARGETS) || true; }
-
-source: $(DL_DIR)/$(LINUX_SOURCE)
-prepare: $(BUILD_DIR)/kernel.mk
- @mkdir -p $(STAMP_DIR) $(PACKAGE_DIR)
- @$(MAKE) $(LINUX_DIR)/.configured
-
-compile: prepare $(STAMP_DIR)/.linux-compile
-
-install: compile $(LINUX_KERNEL)
-
-mostlyclean: FORCE
- rm -f $(STAMP_DIR)/.linux-compile
- rm -f $(LINUX_BUILD_DIR)/linux-$(LINUX_VERSION)/.modules_done
- rm -f $(LINUX_BUILD_DIR)/linux-$(LINUX_VERSION)/.drivers-unpacked
- $(MAKE) -C $(LINUX_BUILD_DIR)/linux-$(LINUX_VERSION) clean
- rm -f $(LINUX_KERNEL)
-
-rebuild: FORCE
- -$(MAKE) mostlyclean
- if [ -f $(LINUX_KERNEL) ]; then \
- $(MAKE) clean; \
- fi
- $(MAKE) compile $(MAKE_TRACE)
-
-clean: FORCE
- rm -f $(STAMP_DIR)/.linux-compile
- rm -rf $(LINUX_BUILD_DIR)
- rm -f $(TARGETS)
+++ /dev/null
-# $Id: netfilter.mk 2411 2005-11-11 03:41:43Z nico $
-
-ifeq ($(NF_2_6),1)
-P_V4:=ipv4/netfilter/
-P_XT:=netfilter/
-else
-P_V4:=
-P_XT:=
-endif
-
-IPT_CONNTRACK-m :=
-IPT_CONNTRACK-$(CONFIG_IP_NF_MATCH_CONNMARK) += $(P_V4)ipt_connmark
-IPT_CONNTRACK-$(CONFIG_IP_NF_TARGET_CONNMARK) += $(P_V4)ipt_CONNMARK
-IPT_CONNTRACK-$(CONFIG_IP_NF_MATCH_CONNTRACK) += $(P_V4)ipt_conntrack
-IPT_CONNTRACK-$(CONFIG_IP_NF_MATCH_HELPER) += $(P_V4)ipt_helper
-IPT_CONNTRACK-$(CONFIG_IP_NF_MATCH_STATE) += $(P_V4)ipt_state
-IPT_CONNTRACK-$(CONFIG_NETFILTER_XT_MATCH_CONNTRACK) += $(P_XT)xt_conntrack
-IPT_CONNTRACK-$(CONFIG_NETFILTER_XT_MATCH_HELPER) += $(P_XT)xt_helper
-IPT_CONNTRACK-$(CONFIG_NETFILTER_XT_MATCH_STATE) += $(P_XT)xt_state
-
-
-IPT_EXTRA-m :=
-IPT_EXTRA-$(CONFIG_IP_NF_MATCH_CONDITION) += $(P_V4)ipt_condition
-IPT_EXTRA-$(CONFIG_IP_NF_MATCH_CONNBYTES) += $(P_V4)ipt_connbytes
-IPT_EXTRA-$(CONFIG_NETFILTER_XT_MATCH_CONNBYTES) += $(P_XT)xt_connbytes
-IPT_EXTRA-$(CONFIG_IP_NF_MATCH_LIMIT) += $(P_V4)ipt_limit
-IPT_EXTRA-$(CONFIG_NETFILTER_XT_MATCH_LIMIT) += $(P_XT)xt_limit
-IPT_EXTRA-$(CONFIG_IP_NF_TARGET_LOG) += $(P_V4)ipt_LOG
-IPT_EXTRA-$(CONFIG_IP_NF_MATCH_MULTIPORT) += $(P_XT)xt_multiport
-IPT_EXTRA-$(CONFIG_NETFILTER_XT_MATCH_MULTIPORT) += $(P_XT)xt_multiport
-IPT_EXTRA-$(CONFIG_IP_NF_MATCH_OWNER) += $(P_V4)ipt_owner
-IPT_EXTRA-$(CONFIG_IP_NF_MATCH_PHYSDEV) += $(P_V4)ipt_physdev
-IPT_EXTRA-$(CONFIG_IP_NF_MATCH_PKTTYPE) += $(P_V4)ipt_pkttype
-IPT_EXTRA-$(CONFIG_NETFILTER_XT_MATCH_PKTTYPE) += $(P_XT)xt_pkttype
-IPT_EXTRA-$(CONFIG_IP_NF_MATCH_QUOTA) += $(P_V4)ipt_quota
-IPT_EXTRA-$(CONFIG_IP_NF_MATCH_RECENT) += $(P_V4)ipt_recent
-IPT_EXTRA-$(CONFIG_IP_NF_TARGET_REJECT) += $(P_V4)ipt_REJECT
-IPT_EXTRA-$(CONFIG_IP_NF_MATCH_STRING) += $(P_V4)ipt_string
-IPT_EXTRA-$(CONFIG_NETFILTER_XT_MATCH_STRING) += $(P_XT)xt_string
-
-IPT_FILTER-m :=
-IPT_FILTER-$(CONFIG_IP_NF_MATCH_IPP2P) += $(P_V4)ipt_ipp2p
-IPT_FILTER-$(CONFIG_IP_NF_MATCH_LAYER7) += $(P_V4)ipt_layer7
-
-IPT_IMQ-m :=
-IPT_IMQ-$(CONFIG_IP_NF_TARGET_IMQ) += $(P_V4)ipt_IMQ
-
-IPT_IPOPT-m :=
-IPT_IPOPT-$(CONFIG_IP_NF_MATCH_DSCP) += $(P_V4)ipt_dscp
-IPT_IPOPT-$(CONFIG_IP_NF_TARGET_DSCP) += $(P_V4)ipt_DSCP
-IPT_IPOPT-$(CONFIG_IP_NF_MATCH_ECN) += $(P_V4)ipt_ecn
-IPT_IPOPT-$(CONFIG_IP_NF_TARGET_ECN) += $(P_V4)ipt_ECN
-IPT_IPOPT-$(CONFIG_IP_NF_MATCH_LENGTH) += $(P_V4)ipt_length
-IPT_IPOPT-$(CONFIG_NETFILTER_XT_MATCH_LENGTH) += $(P_XT)xt_length
-IPT_IPOPT-$(CONFIG_IP_NF_MATCH_MAC) += $(P_V4)ipt_mac
-IPT_IPOPT-$(CONFIG_NETFILTER_XT_MATCH_MAC) += $(P_XT)xt_mac
-IPT_IPOPT-$(CONFIG_IP_NF_MATCH_MARK) += $(P_V4)ipt_mark
-IPT_IPOPT-$(CONFIG_NETFILTER_XT_MATCH_MARK) += $(P_XT)xt_mark
-IPT_IPOPT-$(CONFIG_IP_NF_TARGET_MARK) += $(P_V4)ipt_MARK
-IPT_IPOPT-$(CONFIG_NETFILTER_XT_TARGET_MARK) += $(P_XT)xt_MARK
-IPT_IPOPT-$(CONFIG_IP_NF_MATCH_TCPMSS) += $(P_V4)ipt_tcpmss
-IPT_IPOPT-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += $(P_XT)xt_tcpmss
-IPT_IPOPT-$(CONFIG_IP_NF_TARGET_TCPMSS) += $(P_V4)ipt_TCPMSS
-IPT_IPOPT-$(CONFIG_IP_NF_MATCH_TOS) += $(P_V4)ipt_tos
-IPT_IPOPT-$(CONFIG_IP_NF_MATCH_TIME) += $(P_V4)ipt_time
-IPT_IPOPT-$(CONFIG_IP_NF_TARGET_TOS) += $(P_V4)ipt_TOS
-IPT_IPOPT-$(CONFIG_IP_NF_MATCH_TTL) += $(P_V4)ipt_ttl
-IPT_IPOPT-$(CONFIG_IP_NF_TARGET_TTL) += $(P_V4)ipt_TTL
-IPT_IPOPT-$(CONFIG_IP_NF_MATCH_UNCLEAN) += $(P_V4)ipt_unclean
-
-IPT_IPSEC-m :=
-IPT_IPSEC-$(CONFIG_IP_NF_MATCH_AH_ESP) += $(P_V4)ipt_ah $(P_V4)ipt_esp
-IPT_IPSEC-$(CONFIG_IP_NF_MATCH_AH) += $(P_V4)ipt_ah
-IPT_IPSEC-$(CONFIG_NETFILTER_XT_MATCH_ESP) += $(P_XT)xt_esp
-
-IPT_NAT-m :=
-IPT_NAT-$(CONFIG_IP_NF_NAT) += $(P_V4)ipt_SNAT $(P_V4)ipt_DNAT
-IPT_NAT-$(CONFIG_IP_NF_TARGET_MASQUERADE) += $(P_V4)ipt_MASQUERADE
-IPT_NAT-$(CONFIG_IP_NF_TARGET_MIRROR) += $(P_V4)ipt_MIRROR
-IPT_NAT-$(CONFIG_IP_NF_TARGET_REDIRECT) += $(P_V4)ipt_REDIRECT
-
-IPT_NAT_EXTRA-m :=
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_AMANDA) += $(P_V4)ip_conntrack_amanda
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_CT_PROTO_GRE) += $(P_V4)ip_conntrack_proto_gre
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_PROTO_GRE) += $(P_V4)ip_nat_proto_gre
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_H323) += $(P_V4)ip_conntrack_h323
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_H323) += $(P_V4)ip_nat_h323
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_MMS) += $(P_V4)ip_conntrack_mms
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_MMS) += $(P_V4)ip_nat_mms
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_RTSP) += $(P_V4)ip_conntrack_rtsp
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_RTSP) += $(P_V4)ip_nat_rtsp
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_PPTP) += $(P_V4)ip_conntrack_pptp
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_SIP) += $(P_V4)ip_conntrack_sip
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_PPTP) += $(P_V4)ip_nat_pptp
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_SIP) += $(P_V4)ip_nat_sip
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_SNMP_BASIC) += $(P_V4)ip_nat_snmp_basic
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_SIP) += $(P_V4)ip_conntrack_sip
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_NAT_SIP) += $(P_V4)ip_nat_sip
-IPT_NAT_EXTRA-$(CONFIG_IP_NF_TFTP) += $(P_V4)ip_conntrack_tftp
-
-IPT_QUEUE-m :=
-IPT_QUEUE-$(CONFIG_IP_NF_QUEUE) += $(P_V4)ip_queue
-
-IPT_ULOG-m :=
-IPT_ULOG-$(CONFIG_IP_NF_TARGET_ULOG) += $(P_V4)ipt_ULOG
-
-IPT_BUILTIN := $(P_V4)ipt_standard
-IPT_BUILTIN += $(P_V4)ipt_icmp $(P_V4)ipt_tcp $(P_V4)ipt_udp
-IPT_BUILTIN += $(IPT_CONNTRACK-y)
-IPT_BUILTIN += $(IPT_EXTRA-y)
-IPT_BUILTIN += $(IPT_FILTER-y)
-IPT_BUILTIN += $(IPT_IMQ-y)
-IPT_BUILTIN += $(IPT_IPOPT-y)
-IPT_BUILTIN += $(IPT_IPSEC-y)
-IPT_BUILTIN += $(IPT_NAT-y)
-IPT_BUILTIN += $(IPT_ULOG-y)
LINUX_RELEASE:=1
LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
-include ../rules.mk
include ./config
-
-include ../generic-$(KERNEL)/modules.mk
-include ../kernel.mk
+include $(TOPDIR)/include/kernel.mk
+include $(TOPDIR)/include/kernel-build.mk
$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
[ -d ../generic-$(KERNEL)/patches ] && $(PATCH) $(LINUX_DIR) ../generic-$(KERNEL)/patches
+++ /dev/null
-KERNEL:=unknown
-ifneq (,$(findstring 2.4.,$(LINUX_VERSION)))
-KERNEL:=2.4
-endif
-ifneq (,$(findstring 2.6.,$(LINUX_VERSION)))
-KERNEL:=2.6
-endif
-
-MODULES_SUBDIR:=lib/modules/$(LINUX_VERSION)
-
-LINUX_BUILD_DIR:=$(BUILD_DIR)/linux-$(KERNEL)-$(BOARD)
-ifeq ($(LINUX_NAME),)
-LINUX_NAME:=linux-$(LINUX_VERSION)
-endif
-LINUX_DIR := $(LINUX_BUILD_DIR)/$(LINUX_NAME)
-LINUX_KERNEL:=$(LINUX_BUILD_DIR)/vmlinux
-
-LINUX_TARGET_DIR:=$(LINUX_BUILD_DIR)/root
-
-LINUX_KARCH:=$(shell echo $(ARCH) | sed -e 's/i[3-9]86/i386/' \
- -e 's/mipsel/mips/' \
- -e 's/mipseb/mips/' \
- -e 's/powerpc/ppc/' \
- -e 's/sh[234]/sh/' \
- -e 's/armeb/arm/' \
-)
-
-KMOD_BUILD_DIR := $(LINUX_BUILD_DIR)/linux-modules
-MODULES_DIR := $(LINUX_BUILD_DIR)/modules/$(MODULES_SUBDIR)
-TARGET_MODULES_DIR := $(LINUX_TARGET_DIR)/$(MODULES_SUBDIR)
-
-ifeq ($(KERNEL),2.6)
-LINUX_KMOD_SUFFIX=ko
-else
-LINUX_KMOD_SUFFIX=o
-endif
-
-define KMOD_template
-ifeq ($$(strip $(4)),)
-KDEPEND_$(1):=m
-else
-KDEPEND_$(1):=$($(4))
-endif
-
-IDEPEND_$(1):=kernel ($(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE)) $(foreach pkg,$(5),", $(pkg)")
-
-PKG_$(1) := $(PACKAGE_DIR)/kmod-$(2)_$(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE)_$(ARCH).ipk
-I_$(1) := $(KMOD_BUILD_DIR)/ipkg/$(2)
-
-ifeq ($$(KDEPEND_$(1)),m)
-ifneq ($(CONFIG_PACKAGE_KMOD_$(1)),)
-TARGETS += $$(PKG_$(1))
-endif
-ifeq ($(CONFIG_PACKAGE_KMOD_$(1)),y)
-INSTALL_TARGETS += $$(PKG_$(1))
-endif
-endif
-
-$$(PKG_$(1)): $(LINUX_DIR)/.modules_done
- rm -rf $$(I_$(1))
- $(SCRIPT_DIR)/make-ipkg-dir.sh $$(I_$(1)) ../control/kmod-$(2).control $(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE) $(ARCH)
- echo "Depends: $$(IDEPEND_$(1))" >> $$(I_$(1))/CONTROL/control
-ifneq ($(strip $(3)),)
- mkdir -p $$(I_$(1))/lib/modules/$(LINUX_VERSION)
- $(CP) $(3) $$(I_$(1))/lib/modules/$(LINUX_VERSION)
-endif
-ifneq ($(6),)
- mkdir -p $$(I_$(1))/etc/modules.d
- for module in $(7); do \
- echo $$$$module >> $$(I_$(1))/etc/modules.d/$(6)-$(2); \
- done
- echo "#!/bin/sh" >> $$(I_$(1))/CONTROL/postinst
- echo "[ -z \"\$$$$IPKG_INSTROOT\" ] || exit" >> $$(I_$(1))/CONTROL/postinst
- echo ". /etc/functions.sh" >> $$(I_$(1))/CONTROL/postinst
- echo "load_modules /etc/modules.d/$(6)-$(2)" >> $$(I_$(1))/CONTROL/postinst
- chmod 0755 $$(I_$(1))/CONTROL/postinst
-endif
- $(8)
- $(IPKG_BUILD) $$(I_$(1)) $(PACKAGE_DIR)
-endef
-
-KERNEL_IPKG:=$(LINUX_BUILD_DIR)/kernel_$(LINUX_VERSION)-$(BOARD)-$(LINUX_RELEASE)_$(ARCH).ipk
-INSTALL_TARGETS := $(KERNEL_IPKG)
-TARGETS :=
-
LINUX_RELEASE:=1
LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
-include ../rules.mk
include ./config
-
-include ../generic-$(KERNEL)/modules.mk
-include ../kernel.mk
-
+include $(TOPDIR)/include/kernel.mk
+include $(TOPDIR)/include/kernel-build.mk
$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
[ -d ../generic-$(KERNEL)/patches ] && $(PATCH) $(LINUX_DIR) ../generic-$(KERNEL)/patches
LINUX_RELEASE:=1
LINUX_KERNEL_MD5SUM:=38f4d0830e95a20f4bfed17622d5557c
-include ../rules.mk
include ./config
+include $(TOPDIR)/include/kernel.mk
$(eval $(call KMOD_template,WD1100,wd1100,\
$(MODULES_DIR)/kernel/drivers/char/wd1100.o \
,CONFIG_WD1100))
-
-include ../generic-$(KERNEL)/modules.mk
-include ../kernel.mk
-
+include $(TOPDIR)/include/kernel-build.mk
$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
[ -d ../generic-$(KERNEL)/patches ] && $(PATCH) $(LINUX_DIR) ../generic-$(KERNEL)/patches
LINUX_RELEASE:=1
LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
-include ../rules.mk
include ./config
-
-include ../generic-$(KERNEL)/modules.mk
-include ../kernel.mk
-
+include $(TOPDIR)/include/kernel.mk
+include $(TOPDIR)/include/kernel-build.mk
$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
[ -d ../generic-$(KERNEL)/patches ] && $(PATCH) $(LINUX_DIR) ../generic-$(KERNEL)/patches
LINUX_RELEASE:=1
LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
-include ../rules.mk
include ./config
-
-include ../generic-$(KERNEL)/modules.mk
-include ../kernel.mk
-
+include $(TOPDIR)/include/kernel.mk
+include $(TOPDIR)/include/kernel-build.mk
$(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
[ -d ../generic-$(KERNEL)/patches ] && $(PATCH) $(LINUX_DIR) ../generic-$(KERNEL)/patches
+++ /dev/null
-#############################################################
-#
-# lzma target
-#
-#############################################################
-
-include $(TOPDIR)/rules.mk
-
-LZMA_DIR=$(BUILD_DIR)/lzma
-LZMA_SOURCE=lzma432.tar.bz2
-LZMA_SITE=@SF/sevenzip
-LZMA_MD5=155c1ebce5bc6710ae7ecc926226d9d7
-
-LZMA_LIB_DIR=$(LZMA_DIR)/C/7zip/Compress/LZMA_Lib
-LZMA_ALONE_DIR=$(LZMA_DIR)/C/7zip/Compress/LZMA_Alone
-
-TARGETS=$(LZMA_LIB_DIR)/liblzma.a $(LZMA_ALONE_DIR)/lzma
-
-$(DL_DIR)/$(LZMA_SOURCE):
- $(SCRIPT_DIR)/download.pl $(DL_DIR) $(LZMA_SOURCE) $(LZMA_MD5) $(LZMA_SITE)
-
-$(LZMA_DIR)/.unpacked: $(DL_DIR)/$(LZMA_SOURCE)
- @rm -rf $(LZMA_DIR) && mkdir -p $(LZMA_DIR)
- tar xjf $^ -C $(LZMA_DIR)
- patch -d $(LZMA_DIR) -p1 < lzma-zlib.patch
- touch $(LZMA_DIR)/.unpacked
-
-$(LZMA_ALONE_DIR)/lzma $(LZMA_LIB_DIR)/liblzma.a: $(LZMA_DIR)/.built
-$(LZMA_DIR)/.built: $(LZMA_DIR)/.unpacked
- $(MAKE) -C $(LZMA_LIB_DIR)
- $(MAKE) -f makefile.gcc -C $(LZMA_ALONE_DIR)
- touch $@
-
-lzma: $(TARGETS)
- $(CP) $^ $(LZMA_DIR)
-
-
-lzma-clean: FORCE
- -$(MAKE) -C $(LZMA_LIB_DIR) clean
- -$(MAKE) -C $(LZMA_ALONE_DIR) clean
- rm -f $(LZMA_DIR)/liblzma.a $(LZMA_DIR)/lzma
-
-lzma-dirclean: FORCE
- rm -rf $(LZMA_DIR)
-
-#############################################################
-
-source: $(DL_DIR)/$(LZMA_SOURCE)
-prepare: $(LZMA_DIR)/.unpacked
-compile: lzma
-install: lzma FORCE
- $(CP) $(LZMA_DIR)/lzma $(STAGING_DIR)/bin/
-clean: lzma-dirclean
+++ /dev/null
-diff -Nur lzma/C/7zip/Compress/LZMA/LZMADecoder.cpp lzma.patched/C/7zip/Compress/LZMA/LZMADecoder.cpp
---- lzma/C/7zip/Compress/LZMA/LZMADecoder.cpp 2005-09-22 10:55:34.000000000 +0200
-+++ lzma.patched/C/7zip/Compress/LZMA/LZMADecoder.cpp 2006-03-25 11:04:53.000000000 +0100
-@@ -274,12 +274,17 @@
- Byte remainder = (Byte)(properties[0] / 9);\r
- int lp = remainder % 5;\r
- int pb = remainder / 5;\r
-- if (pb > NLength::kNumPosStatesBitsMax)\r
-- return E_INVALIDARG;\r
-- _posStateMask = (1 << pb) - 1;\r
- UInt32 dictionarySize = 0;\r
- for (int i = 0; i < 4; i++)\r
- dictionarySize += ((UInt32)(properties[1 + i])) << (i * 8);\r
-+ return SetDecoderPropertiesRaw(lc, lp, pb, dictionarySize);\r
-+}\r
-+\r
-+STDMETHODIMP CDecoder::SetDecoderPropertiesRaw(int lc, int lp, int pb, UInt32 dictionarySize)\r
-+{\r
-+ if (pb > NLength::kNumPosStatesBitsMax)\r
-+ return E_INVALIDARG;\r
-+ _posStateMask = (1 << pb) - 1;\r
- if (!_outWindowStream.Create(dictionarySize))\r
- return E_OUTOFMEMORY;\r
- if (!_literalDecoder.Create(lp, lc))\r
-diff -Nur lzma/C/7zip/Compress/LZMA/LZMADecoder.h lzma.patched/C/7zip/Compress/LZMA/LZMADecoder.h
---- lzma/C/7zip/Compress/LZMA/LZMADecoder.h 2005-09-19 08:10:06.000000000 +0200
-+++ lzma.patched/C/7zip/Compress/LZMA/LZMADecoder.h 2006-03-25 11:04:53.000000000 +0100
-@@ -228,6 +228,7 @@
- ICompressProgressInfo *progress);\r
- \r
- STDMETHOD(SetDecoderProperties2)(const Byte *data, UInt32 size);\r
-+ STDMETHOD(SetDecoderPropertiesRaw)(int lc, int lp, int pb, UInt32 dictionarySize);\r
- \r
- STDMETHOD(GetInStreamProcessedSize)(UInt64 *value);\r
- \r
-diff -Nur lzma/C/7zip/Compress/LZMA_Lib/makefile lzma.patched/C/7zip/Compress/LZMA_Lib/makefile
---- lzma/C/7zip/Compress/LZMA_Lib/makefile 1970-01-01 01:00:00.000000000 +0100
-+++ lzma.patched/C/7zip/Compress/LZMA_Lib/makefile 2006-03-25 11:29:46.000000000 +0100
-@@ -0,0 +1,92 @@
-+PROG = liblzma.a
-+CXX = g++ -O3 -Wall
-+AR = ar
-+RM = rm -f
-+CFLAGS = -c -I ../../../
-+
-+OBJS = \
-+ ZLib.o \
-+ LZMADecoder.o \
-+ LZMAEncoder.o \
-+ LZInWindow.o \
-+ LZOutWindow.o \
-+ RangeCoderBit.o \
-+ InBuffer.o \
-+ OutBuffer.o \
-+ FileStreams.o \
-+ Alloc.o \
-+ C_FileIO.o \
-+ CommandLineParser.o \
-+ CRC.o \
-+ StreamUtils.o \
-+ String.o \
-+ StringConvert.o \
-+ StringToInt.o \
-+ Vector.o \
-+
-+
-+all: $(PROG)
-+
-+$(PROG): $(OBJS)
-+ $(AR) r $(PROG) $(OBJS)
-+
-+ZLib.o: ZLib.cpp
-+ $(CXX) $(CFLAGS) ZLib.cpp
-+
-+LZMADecoder.o: ../LZMA/LZMADecoder.cpp
-+ $(CXX) $(CFLAGS) ../LZMA/LZMADecoder.cpp
-+
-+LZMAEncoder.o: ../LZMA/LZMAEncoder.cpp
-+ $(CXX) $(CFLAGS) ../LZMA/LZMAEncoder.cpp
-+
-+LZInWindow.o: ../LZ/LZInWindow.cpp
-+ $(CXX) $(CFLAGS) ../LZ/LZInWindow.cpp
-+
-+LZOutWindow.o: ../LZ/LZOutWindow.cpp
-+ $(CXX) $(CFLAGS) ../LZ/LZOutWindow.cpp
-+
-+RangeCoderBit.o: ../RangeCoder/RangeCoderBit.cpp
-+ $(CXX) $(CFLAGS) ../RangeCoder/RangeCoderBit.cpp
-+
-+InBuffer.o: ../../Common/InBuffer.cpp
-+ $(CXX) $(CFLAGS) ../../Common/InBuffer.cpp
-+
-+OutBuffer.o: ../../Common/OutBuffer.cpp
-+ $(CXX) $(CFLAGS) ../../Common/OutBuffer.cpp
-+
-+StreamUtils.o: ../../Common/StreamUtils.cpp
-+ $(CXX) $(CFLAGS) ../../Common/StreamUtils.cpp
-+
-+FileStreams.o: ../../Common/FileStreams.cpp
-+ $(CXX) $(CFLAGS) ../../Common/FileStreams.cpp
-+
-+Alloc.o: ../../../Common/Alloc.cpp
-+ $(CXX) $(CFLAGS) ../../../Common/Alloc.cpp
-+
-+C_FileIO.o: ../../../Common/C_FileIO.cpp
-+ $(CXX) $(CFLAGS) ../../../Common/C_FileIO.cpp
-+
-+CommandLineParser.o: ../../../Common/CommandLineParser.cpp
-+ $(CXX) $(CFLAGS) ../../../Common/CommandLineParser.cpp
-+
-+CRC.o: ../../../Common/CRC.cpp
-+ $(CXX) $(CFLAGS) ../../../Common/CRC.cpp
-+
-+MyWindows.o: ../../../Common/MyWindows.cpp
-+ $(CXX) $(CFLAGS) ../../../Common/MyWindows.cpp
-+
-+String.o: ../../../Common/String.cpp
-+ $(CXX) $(CFLAGS) ../../../Common/String.cpp
-+
-+StringConvert.o: ../../../Common/StringConvert.cpp
-+ $(CXX) $(CFLAGS) ../../../Common/StringConvert.cpp
-+
-+StringToInt.o: ../../../Common/StringToInt.cpp
-+ $(CXX) $(CFLAGS) ../../../Common/StringToInt.cpp
-+
-+Vector.o: ../../../Common/Vector.cpp
-+ $(CXX) $(CFLAGS) ../../../Common/Vector.cpp
-+
-+clean:
-+ -$(RM) $(PROG) $(OBJS)
-+
-diff -Nur lzma/C/7zip/Compress/LZMA_Lib/ZLib.cpp lzma.patched/C/7zip/Compress/LZMA_Lib/ZLib.cpp
---- lzma/C/7zip/Compress/LZMA_Lib/ZLib.cpp 1970-01-01 01:00:00.000000000 +0100
-+++ lzma.patched/C/7zip/Compress/LZMA_Lib/ZLib.cpp 2006-03-25 11:04:53.000000000 +0100
-@@ -0,0 +1,273 @@
-+/*\r
-+ * lzma zlib simplified wrapper\r
-+ *\r
-+ * Copyright (c) 2005-2006 Oleg I. Vdovikin <oleg@cs.msu.su>\r
-+ *\r
-+ * This library is free software; you can redistribute \r
-+ * it and/or modify it under the terms of the GNU Lesser \r
-+ * General Public License as published by the Free Software \r
-+ * Foundation; either version 2.1 of the License, or \r
-+ * (at your option) any later version.\r
-+ *\r
-+ * This library is distributed in the hope that it will be \r
-+ * useful, but WITHOUT ANY WARRANTY; without even the implied \r
-+ * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR \r
-+ * PURPOSE. See the GNU Lesser General Public License \r
-+ * for more details.\r
-+ *\r
-+ * You should have received a copy of the GNU Lesser General \r
-+ * Public License along with this library; if not, write to \r
-+ * the Free Software Foundation, Inc., 59 Temple Place, \r
-+ * Suite 330, Boston, MA 02111-1307 USA \r
-+ */\r
-+\r
-+/*\r
-+ * default values for encoder/decoder used by wrapper\r
-+ */\r
-+\r
-+#include <zlib.h>\r
-+\r
-+#define ZLIB_LC 3\r
-+#define ZLIB_LP 0\r
-+#define ZLIB_PB 2\r
-+\r
-+#ifdef WIN32\r
-+#include <initguid.h>\r
-+#else\r
-+#define INITGUID\r
-+#endif\r
-+\r
-+#include "../../../Common/MyWindows.h"\r
-+#include "../LZMA/LZMADecoder.h"\r
-+#include "../LZMA/LZMAEncoder.h"\r
-+\r
-+#define STG_E_SEEKERROR ((HRESULT)0x80030019L)\r
-+#define STG_E_MEDIUMFULL ((HRESULT)0x80030070L)\r
-+\r
-+class CInMemoryStream: \r
-+ public IInStream,\r
-+ public IStreamGetSize,\r
-+ public CMyUnknownImp\r
-+{\r
-+public:\r
-+ CInMemoryStream(const Bytef *data, UInt64 size) : \r
-+ m_data(data), m_size(size), m_offset(0) {}\r
-+\r
-+ virtual ~CInMemoryStream() {}\r
-+\r
-+ MY_UNKNOWN_IMP2(IInStream, IStreamGetSize)\r
-+\r
-+ STDMETHOD(Read)(void *data, UInt32 size, UInt32 *processedSize)\r
-+ {\r
-+ if (size > m_size - m_offset) \r
-+ size = m_size - m_offset;\r
-+\r
-+ if (size) {\r
-+ memcpy(data, m_data + m_offset, size);\r
-+ }\r
-+\r
-+ m_offset += size;\r
-+\r
-+ if (processedSize) \r
-+ *processedSize = size;\r
-+\r
-+ return S_OK;\r
-+ }\r
-+\r
-+ STDMETHOD(ReadPart)(void *data, UInt32 size, UInt32 *processedSize)\r
-+ {\r
-+ return Read(data, size, processedSize);\r
-+ }\r
-+\r
-+ STDMETHOD(Seek)(Int64 offset, UInt32 seekOrigin, UInt64 *newPosition)\r
-+ {\r
-+ UInt64 _offset;\r
-+\r
-+ if (seekOrigin == STREAM_SEEK_SET) _offset = offset;\r
-+ else if (seekOrigin == STREAM_SEEK_CUR) _offset = m_offset + offset; \r
-+ else if (seekOrigin == STREAM_SEEK_END) _offset = m_size;\r
-+ else return STG_E_INVALIDFUNCTION;\r
-+\r
-+ if (_offset < 0 || _offset > m_size)\r
-+ return STG_E_SEEKERROR;\r
-+\r
-+ m_offset = _offset;\r
-+\r
-+ if (newPosition)\r
-+ *newPosition = m_offset;\r
-+\r
-+ return S_OK;\r
-+ }\r
-+\r
-+ STDMETHOD(GetSize)(UInt64 *size)\r
-+ {\r
-+ *size = m_size;\r
-+ return S_OK;\r
-+ }\r
-+protected:\r
-+ const Bytef *m_data;\r
-+ UInt64 m_size;\r
-+ UInt64 m_offset;\r
-+};\r
-+\r
-+class COutMemoryStream: \r
-+ public IOutStream,\r
-+ public CMyUnknownImp\r
-+{\r
-+public:\r
-+ COutMemoryStream(Bytef *data, UInt64 maxsize) : \r
-+ m_data(data), m_size(0), m_maxsize(maxsize), m_offset(0) {}\r
-+ virtual ~COutMemoryStream() {}\r
-+ \r
-+ MY_UNKNOWN_IMP1(IOutStream)\r
-+\r
-+ STDMETHOD(Write)(const void *data, UInt32 size, UInt32 *processedSize)\r
-+ {\r
-+ if (size > m_maxsize - m_offset) \r
-+ size = m_maxsize - m_offset;\r
-+\r
-+ if (size) {\r
-+ memcpy(m_data + m_offset, data, size);\r
-+ }\r
-+\r
-+ m_offset += size;\r
-+\r
-+ if (m_offset > m_size)\r
-+ m_size = m_offset;\r
-+\r
-+ if (processedSize) \r
-+ *processedSize = size;\r
-+\r
-+ return S_OK;\r
-+ }\r
-+ \r
-+ STDMETHOD(WritePart)(const void *data, UInt32 size, UInt32 *processedSize)\r
-+ {\r
-+ return Write(data, size, processedSize);\r
-+ }\r
-+\r
-+ STDMETHOD(Seek)(Int64 offset, UInt32 seekOrigin, UInt64 *newPosition)\r
-+ {\r
-+ UInt64 _offset;\r
-+\r
-+ if (seekOrigin == STREAM_SEEK_SET) _offset = offset;\r
-+ else if (seekOrigin == STREAM_SEEK_CUR) _offset = m_offset + offset; \r
-+ else if (seekOrigin == STREAM_SEEK_END) _offset = m_size;\r
-+ else return STG_E_INVALIDFUNCTION;\r
-+\r
-+ if (_offset < 0 || _offset > m_maxsize)\r
-+ return STG_E_SEEKERROR;\r
-+\r
-+ m_offset = _offset;\r
-+\r
-+ if (newPosition)\r
-+ *newPosition = m_offset;\r
-+\r
-+ return S_OK;\r
-+ }\r
-+ \r
-+ STDMETHOD(SetSize)(Int64 newSize)\r
-+ {\r
-+ if ((UInt64)newSize > m_maxsize) \r
-+ return STG_E_MEDIUMFULL;\r
-+\r
-+ return S_OK;\r
-+ }\r
-+protected:\r
-+ Bytef *m_data;\r
-+ UInt64 m_size;\r
-+ UInt64 m_maxsize;\r
-+ UInt64 m_offset;\r
-+};\r
-+\r
-+ZEXTERN int ZEXPORT compress2 OF((Bytef *dest, uLongf *destLen,\r
-+ const Bytef *source, uLong sourceLen,\r
-+ int level))\r
-+{\r
-+ CInMemoryStream *inStreamSpec = new CInMemoryStream(source, sourceLen);\r
-+ CMyComPtr<ISequentialInStream> inStream = inStreamSpec;\r
-+ \r
-+ COutMemoryStream *outStreamSpec = new COutMemoryStream(dest, *destLen);\r
-+ CMyComPtr<ISequentialOutStream> outStream = outStreamSpec;\r
-+ \r
-+ NCompress::NLZMA::CEncoder *encoderSpec = \r
-+ new NCompress::NLZMA::CEncoder;\r
-+ CMyComPtr<ICompressCoder> encoder = encoderSpec;\r
-+ \r
-+ PROPID propIDs[] = \r
-+ {\r
-+ NCoderPropID::kDictionarySize,\r
-+ NCoderPropID::kPosStateBits,\r
-+ NCoderPropID::kLitContextBits,\r
-+ NCoderPropID::kLitPosBits,\r
-+ NCoderPropID::kAlgorithm,\r
-+ NCoderPropID::kNumFastBytes,\r
-+ NCoderPropID::kMatchFinder,\r
-+ NCoderPropID::kEndMarker\r
-+ };\r
-+ const int kNumProps = sizeof(propIDs) / sizeof(propIDs[0]);\r
-+ \r
-+ PROPVARIANT properties[kNumProps];\r
-+ for (int p = 0; p < 6; p++)\r
-+ properties[p].vt = VT_UI4;\r
-+ properties[0].ulVal = UInt32(1 << (level + 14));\r
-+ properties[1].ulVal = UInt32(ZLIB_PB);\r
-+ properties[2].ulVal = UInt32(ZLIB_LC); // for normal files\r
-+ properties[3].ulVal = UInt32(ZLIB_LP); // for normal files\r
-+ properties[4].ulVal = UInt32(2);\r
-+ properties[5].ulVal = UInt32(128);\r
-+ \r
-+ properties[6].vt = VT_BSTR;\r
-+ properties[6].bstrVal = (BSTR)(const wchar_t *)L"BT4";\r
-+ \r
-+ properties[7].vt = VT_BOOL;\r
-+ properties[7].boolVal = VARIANT_TRUE;\r
-+ \r
-+ if (encoderSpec->SetCoderProperties(propIDs, properties, kNumProps) != S_OK)\r
-+ return Z_MEM_ERROR; // should not happen\r
-+ \r
-+ HRESULT result = encoder->Code(inStream, outStream, 0, 0, 0);\r
-+ if (result == E_OUTOFMEMORY)\r
-+ {\r
-+ return Z_MEM_ERROR;\r
-+ } \r
-+ else if (result != S_OK)\r
-+ {\r
-+ return Z_BUF_ERROR; // should not happen\r
-+ } \r
-+ \r
-+ UInt64 fileSize;\r
-+ outStreamSpec->Seek(0, STREAM_SEEK_END, &fileSize);\r
-+ *destLen = fileSize;\r
-+ \r
-+ return Z_OK;\r
-+}\r
-+\r
-+ZEXTERN int ZEXPORT uncompress OF((Bytef *dest, uLongf *destLen,\r
-+ const Bytef *source, uLong sourceLen))\r
-+{\r
-+ CInMemoryStream *inStreamSpec = new CInMemoryStream(source, sourceLen);\r
-+ CMyComPtr<ISequentialInStream> inStream = inStreamSpec;\r
-+ \r
-+ COutMemoryStream *outStreamSpec = new COutMemoryStream(dest, *destLen);\r
-+ CMyComPtr<ISequentialOutStream> outStream = outStreamSpec;\r
-+ \r
-+ NCompress::NLZMA::CDecoder *decoderSpec = \r
-+ new NCompress::NLZMA::CDecoder;\r
-+ CMyComPtr<ICompressCoder> decoder = decoderSpec;\r
-+ \r
-+ if (decoderSpec->SetDecoderPropertiesRaw(ZLIB_LC, \r
-+ ZLIB_LP, ZLIB_PB, (1 << 23)) != S_OK) return Z_DATA_ERROR;\r
-+ \r
-+ UInt64 fileSize = *destLen;\r
-+ \r
-+ if (decoder->Code(inStream, outStream, 0, &fileSize, 0) != S_OK)\r
-+ {\r
-+ return Z_DATA_ERROR;\r
-+ }\r
-+ \r
-+ outStreamSpec->Seek(0, STREAM_SEEK_END, &fileSize);\r
-+ *destLen = fileSize;\r
-+ \r
-+ return Z_OK;\r
-+}\r
# Main makefile for the toolchain
include $(TOPDIR)/rules.mk
-TARGETS-y:=sed kernel-headers utils binutils gcc uClibc ipkg-utils libnotimpl
+TARGETS-y:=sed kernel-headers utils binutils gcc uClibc ipkg-utils libnotimpl squashfs jffs2 lzma
TARGETS-$(CONFIG_GDB) += gdb
TARGETS_DOWNLOAD:=$(patsubst %,%-source,$(TARGETS-y))
gcc-prepare: binutils-install
uClibc-compile: gcc-prepare
gcc-compile: uClibc-install
+squashfs-compile: lzma-compile
TOOLCHAIN_STAMP_DIR:=$(STAGING_DIR)/stampfiles
--- /dev/null
+include $(TOPDIR)/rules.mk
+
+MTD_DIR:=$(BUILD_DIR)/mtd-20050122.orig
+MTD_SOURCE=mtd_20050122.orig.tar.gz
+MTD_SITE=http://ftp.debian.org/debian/pool/main/m/mtd
+MTD_MD5SUM:=1f42c2cae08eb9e7b52d0c188f8d6338
+MKFS_JFFS2=$(MTD_DIR)/util/mkfs.jffs2
+
+$(DL_DIR)/$(MTD_SOURCE):
+ $(SCRIPT_DIR)/download.pl $(DL_DIR) $(MTD_SOURCE) $(MTD_MD5SUM) $(MTD_SITE)
+
+$(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
+ zcat $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+ $(PATCH) $(MTD_DIR) ./patches
+ touch $(MTD_DIR)/.unpacked
+
+$(MTD_DIR)/util/mkfs.jffs2: $(MTD_DIR)/.unpacked
+ $(MAKE) LINUXDIR=$(LINUX_DIR) -C $(MTD_DIR)/util
+
+$(STAGING_DIR)/bin/mkfs.jffs2: $(MTD_DIR)/util/mkfs.jffs2
+ $(CP) $< $@
+
+source: $(DL_DIR)/$(MTD_SOURCE)
+prepare: $(MTD_DIR)/.unpacked
+compile: $(MTD_DIR)/util/mkfs.jffs2 $(STAGING_DIR)/bin/mkfs.jffs2
+install:
+clean: FORCE
+ rm -rf $(MTD_DIR) $(STAGING_DIR)/bin/mkfs.jffs2
+
--- /dev/null
+diff -urN mtd-20050122.orig.old/include/mtd/jffs2-user.h mtd-20050122.orig.dev/include/mtd/jffs2-user.h
+--- mtd-20050122.orig.old/include/mtd/jffs2-user.h 2004-05-05 13:57:54.000000000 +0200
++++ mtd-20050122.orig.dev/include/mtd/jffs2-user.h 2005-07-02 10:03:09.000000000 +0200
+@@ -19,8 +19,6 @@
+ #undef je32_to_cpu
+ #undef jemode_to_cpu
+
+-extern int target_endian;
+-
+ #define t16(x) ({ uint16_t __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_16(__b); })
+ #define t32(x) ({ uint32_t __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_32(__b); })
+
+diff -urN mtd.old/util/jffs3.h mtd.dev/util/jffs3.h
+--- mtd.old/util/jffs3.h 2005-01-22 00:00:13.000000000 +0100
++++ mtd.dev/util/jffs3.h 2005-07-17 17:48:24.000000000 +0200
+@@ -177,8 +177,6 @@
+ #undef je32_to_cpu
+ #undef jemode_to_cpu
+
+-extern int target_endian;
+-
+ #define t16(x) ({ uint16_t __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_16(__b); })
+ #define t32(x) ({ uint32_t __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_32(__b); })
+
--- /dev/null
+#############################################################
+#
+# lzma target
+#
+#############################################################
+
+include $(TOPDIR)/rules.mk
+
+LZMA_DIR=$(BUILD_DIR)/lzma
+LZMA_SOURCE=lzma432.tar.bz2
+LZMA_SITE=@SF/sevenzip
+LZMA_MD5=155c1ebce5bc6710ae7ecc926226d9d7
+
+LZMA_LIB_DIR=$(LZMA_DIR)/C/7zip/Compress/LZMA_Lib
+LZMA_ALONE_DIR=$(LZMA_DIR)/C/7zip/Compress/LZMA_Alone
+
+TARGETS=$(LZMA_LIB_DIR)/liblzma.a $(LZMA_ALONE_DIR)/lzma
+
+$(DL_DIR)/$(LZMA_SOURCE):
+ $(SCRIPT_DIR)/download.pl $(DL_DIR) $(LZMA_SOURCE) $(LZMA_MD5) $(LZMA_SITE)
+
+$(LZMA_DIR)/.unpacked: $(DL_DIR)/$(LZMA_SOURCE)
+ @rm -rf $(LZMA_DIR) && mkdir -p $(LZMA_DIR)
+ tar xjf $^ -C $(LZMA_DIR)
+ $(PATCH) $(LZMA_DIR) ./patches
+ touch $(LZMA_DIR)/.unpacked
+
+$(LZMA_ALONE_DIR)/lzma $(LZMA_LIB_DIR)/liblzma.a: $(LZMA_DIR)/.built
+$(LZMA_DIR)/.built: $(LZMA_DIR)/.unpacked
+ $(MAKE) -C $(LZMA_LIB_DIR)
+ $(MAKE) -f makefile.gcc -C $(LZMA_ALONE_DIR)
+ touch $@
+
+lzma: $(TARGETS)
+ $(CP) $^ $(LZMA_DIR)
+
+
+lzma-clean: FORCE
+ -$(MAKE) -C $(LZMA_LIB_DIR) clean
+ -$(MAKE) -C $(LZMA_ALONE_DIR) clean
+ rm -f $(LZMA_DIR)/liblzma.a $(LZMA_DIR)/lzma
+
+lzma-dirclean: FORCE
+ rm -rf $(LZMA_DIR)
+
+#############################################################
+
+source: $(DL_DIR)/$(LZMA_SOURCE)
+prepare: $(LZMA_DIR)/.unpacked
+compile: lzma
+install: lzma FORCE
+ $(CP) $(LZMA_DIR)/lzma $(STAGING_DIR)/bin/
+clean: lzma-dirclean
--- /dev/null
+diff -Nur lzma/C/7zip/Compress/LZMA/LZMADecoder.cpp lzma.patched/C/7zip/Compress/LZMA/LZMADecoder.cpp
+--- lzma/C/7zip/Compress/LZMA/LZMADecoder.cpp 2005-09-22 10:55:34.000000000 +0200
++++ lzma.patched/C/7zip/Compress/LZMA/LZMADecoder.cpp 2006-03-25 11:04:53.000000000 +0100
+@@ -274,12 +274,17 @@
+ Byte remainder = (Byte)(properties[0] / 9);\r
+ int lp = remainder % 5;\r
+ int pb = remainder / 5;\r
+- if (pb > NLength::kNumPosStatesBitsMax)\r
+- return E_INVALIDARG;\r
+- _posStateMask = (1 << pb) - 1;\r
+ UInt32 dictionarySize = 0;\r
+ for (int i = 0; i < 4; i++)\r
+ dictionarySize += ((UInt32)(properties[1 + i])) << (i * 8);\r
++ return SetDecoderPropertiesRaw(lc, lp, pb, dictionarySize);\r
++}\r
++\r
++STDMETHODIMP CDecoder::SetDecoderPropertiesRaw(int lc, int lp, int pb, UInt32 dictionarySize)\r
++{\r
++ if (pb > NLength::kNumPosStatesBitsMax)\r
++ return E_INVALIDARG;\r
++ _posStateMask = (1 << pb) - 1;\r
+ if (!_outWindowStream.Create(dictionarySize))\r
+ return E_OUTOFMEMORY;\r
+ if (!_literalDecoder.Create(lp, lc))\r
+diff -Nur lzma/C/7zip/Compress/LZMA/LZMADecoder.h lzma.patched/C/7zip/Compress/LZMA/LZMADecoder.h
+--- lzma/C/7zip/Compress/LZMA/LZMADecoder.h 2005-09-19 08:10:06.000000000 +0200
++++ lzma.patched/C/7zip/Compress/LZMA/LZMADecoder.h 2006-03-25 11:04:53.000000000 +0100
+@@ -228,6 +228,7 @@
+ ICompressProgressInfo *progress);\r
+ \r
+ STDMETHOD(SetDecoderProperties2)(const Byte *data, UInt32 size);\r
++ STDMETHOD(SetDecoderPropertiesRaw)(int lc, int lp, int pb, UInt32 dictionarySize);\r
+ \r
+ STDMETHOD(GetInStreamProcessedSize)(UInt64 *value);\r
+ \r
+diff -Nur lzma/C/7zip/Compress/LZMA_Lib/makefile lzma.patched/C/7zip/Compress/LZMA_Lib/makefile
+--- lzma/C/7zip/Compress/LZMA_Lib/makefile 1970-01-01 01:00:00.000000000 +0100
++++ lzma.patched/C/7zip/Compress/LZMA_Lib/makefile 2006-03-25 11:29:46.000000000 +0100
+@@ -0,0 +1,92 @@
++PROG = liblzma.a
++CXX = g++ -O3 -Wall
++AR = ar
++RM = rm -f
++CFLAGS = -c -I ../../../
++
++OBJS = \
++ ZLib.o \
++ LZMADecoder.o \
++ LZMAEncoder.o \
++ LZInWindow.o \
++ LZOutWindow.o \
++ RangeCoderBit.o \
++ InBuffer.o \
++ OutBuffer.o \
++ FileStreams.o \
++ Alloc.o \
++ C_FileIO.o \
++ CommandLineParser.o \
++ CRC.o \
++ StreamUtils.o \
++ String.o \
++ StringConvert.o \
++ StringToInt.o \
++ Vector.o \
++
++
++all: $(PROG)
++
++$(PROG): $(OBJS)
++ $(AR) r $(PROG) $(OBJS)
++
++ZLib.o: ZLib.cpp
++ $(CXX) $(CFLAGS) ZLib.cpp
++
++LZMADecoder.o: ../LZMA/LZMADecoder.cpp
++ $(CXX) $(CFLAGS) ../LZMA/LZMADecoder.cpp
++
++LZMAEncoder.o: ../LZMA/LZMAEncoder.cpp
++ $(CXX) $(CFLAGS) ../LZMA/LZMAEncoder.cpp
++
++LZInWindow.o: ../LZ/LZInWindow.cpp
++ $(CXX) $(CFLAGS) ../LZ/LZInWindow.cpp
++
++LZOutWindow.o: ../LZ/LZOutWindow.cpp
++ $(CXX) $(CFLAGS) ../LZ/LZOutWindow.cpp
++
++RangeCoderBit.o: ../RangeCoder/RangeCoderBit.cpp
++ $(CXX) $(CFLAGS) ../RangeCoder/RangeCoderBit.cpp
++
++InBuffer.o: ../../Common/InBuffer.cpp
++ $(CXX) $(CFLAGS) ../../Common/InBuffer.cpp
++
++OutBuffer.o: ../../Common/OutBuffer.cpp
++ $(CXX) $(CFLAGS) ../../Common/OutBuffer.cpp
++
++StreamUtils.o: ../../Common/StreamUtils.cpp
++ $(CXX) $(CFLAGS) ../../Common/StreamUtils.cpp
++
++FileStreams.o: ../../Common/FileStreams.cpp
++ $(CXX) $(CFLAGS) ../../Common/FileStreams.cpp
++
++Alloc.o: ../../../Common/Alloc.cpp
++ $(CXX) $(CFLAGS) ../../../Common/Alloc.cpp
++
++C_FileIO.o: ../../../Common/C_FileIO.cpp
++ $(CXX) $(CFLAGS) ../../../Common/C_FileIO.cpp
++
++CommandLineParser.o: ../../../Common/CommandLineParser.cpp
++ $(CXX) $(CFLAGS) ../../../Common/CommandLineParser.cpp
++
++CRC.o: ../../../Common/CRC.cpp
++ $(CXX) $(CFLAGS) ../../../Common/CRC.cpp
++
++MyWindows.o: ../../../Common/MyWindows.cpp
++ $(CXX) $(CFLAGS) ../../../Common/MyWindows.cpp
++
++String.o: ../../../Common/String.cpp
++ $(CXX) $(CFLAGS) ../../../Common/String.cpp
++
++StringConvert.o: ../../../Common/StringConvert.cpp
++ $(CXX) $(CFLAGS) ../../../Common/StringConvert.cpp
++
++StringToInt.o: ../../../Common/StringToInt.cpp
++ $(CXX) $(CFLAGS) ../../../Common/StringToInt.cpp
++
++Vector.o: ../../../Common/Vector.cpp
++ $(CXX) $(CFLAGS) ../../../Common/Vector.cpp
++
++clean:
++ -$(RM) $(PROG) $(OBJS)
++
+diff -Nur lzma/C/7zip/Compress/LZMA_Lib/ZLib.cpp lzma.patched/C/7zip/Compress/LZMA_Lib/ZLib.cpp
+--- lzma/C/7zip/Compress/LZMA_Lib/ZLib.cpp 1970-01-01 01:00:00.000000000 +0100
++++ lzma.patched/C/7zip/Compress/LZMA_Lib/ZLib.cpp 2006-03-25 11:04:53.000000000 +0100
+@@ -0,0 +1,273 @@
++/*\r
++ * lzma zlib simplified wrapper\r
++ *\r
++ * Copyright (c) 2005-2006 Oleg I. Vdovikin <oleg@cs.msu.su>\r
++ *\r
++ * This library is free software; you can redistribute \r
++ * it and/or modify it under the terms of the GNU Lesser \r
++ * General Public License as published by the Free Software \r
++ * Foundation; either version 2.1 of the License, or \r
++ * (at your option) any later version.\r
++ *\r
++ * This library is distributed in the hope that it will be \r
++ * useful, but WITHOUT ANY WARRANTY; without even the implied \r
++ * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR \r
++ * PURPOSE. See the GNU Lesser General Public License \r
++ * for more details.\r
++ *\r
++ * You should have received a copy of the GNU Lesser General \r
++ * Public License along with this library; if not, write to \r
++ * the Free Software Foundation, Inc., 59 Temple Place, \r
++ * Suite 330, Boston, MA 02111-1307 USA \r
++ */\r
++\r
++/*\r
++ * default values for encoder/decoder used by wrapper\r
++ */\r
++\r
++#include <zlib.h>\r
++\r
++#define ZLIB_LC 3\r
++#define ZLIB_LP 0\r
++#define ZLIB_PB 2\r
++\r
++#ifdef WIN32\r
++#include <initguid.h>\r
++#else\r
++#define INITGUID\r
++#endif\r
++\r
++#include "../../../Common/MyWindows.h"\r
++#include "../LZMA/LZMADecoder.h"\r
++#include "../LZMA/LZMAEncoder.h"\r
++\r
++#define STG_E_SEEKERROR ((HRESULT)0x80030019L)\r
++#define STG_E_MEDIUMFULL ((HRESULT)0x80030070L)\r
++\r
++class CInMemoryStream: \r
++ public IInStream,\r
++ public IStreamGetSize,\r
++ public CMyUnknownImp\r
++{\r
++public:\r
++ CInMemoryStream(const Bytef *data, UInt64 size) : \r
++ m_data(data), m_size(size), m_offset(0) {}\r
++\r
++ virtual ~CInMemoryStream() {}\r
++\r
++ MY_UNKNOWN_IMP2(IInStream, IStreamGetSize)\r
++\r
++ STDMETHOD(Read)(void *data, UInt32 size, UInt32 *processedSize)\r
++ {\r
++ if (size > m_size - m_offset) \r
++ size = m_size - m_offset;\r
++\r
++ if (size) {\r
++ memcpy(data, m_data + m_offset, size);\r
++ }\r
++\r
++ m_offset += size;\r
++\r
++ if (processedSize) \r
++ *processedSize = size;\r
++\r
++ return S_OK;\r
++ }\r
++\r
++ STDMETHOD(ReadPart)(void *data, UInt32 size, UInt32 *processedSize)\r
++ {\r
++ return Read(data, size, processedSize);\r
++ }\r
++\r
++ STDMETHOD(Seek)(Int64 offset, UInt32 seekOrigin, UInt64 *newPosition)\r
++ {\r
++ UInt64 _offset;\r
++\r
++ if (seekOrigin == STREAM_SEEK_SET) _offset = offset;\r
++ else if (seekOrigin == STREAM_SEEK_CUR) _offset = m_offset + offset; \r
++ else if (seekOrigin == STREAM_SEEK_END) _offset = m_size;\r
++ else return STG_E_INVALIDFUNCTION;\r
++\r
++ if (_offset < 0 || _offset > m_size)\r
++ return STG_E_SEEKERROR;\r
++\r
++ m_offset = _offset;\r
++\r
++ if (newPosition)\r
++ *newPosition = m_offset;\r
++\r
++ return S_OK;\r
++ }\r
++\r
++ STDMETHOD(GetSize)(UInt64 *size)\r
++ {\r
++ *size = m_size;\r
++ return S_OK;\r
++ }\r
++protected:\r
++ const Bytef *m_data;\r
++ UInt64 m_size;\r
++ UInt64 m_offset;\r
++};\r
++\r
++class COutMemoryStream: \r
++ public IOutStream,\r
++ public CMyUnknownImp\r
++{\r
++public:\r
++ COutMemoryStream(Bytef *data, UInt64 maxsize) : \r
++ m_data(data), m_size(0), m_maxsize(maxsize), m_offset(0) {}\r
++ virtual ~COutMemoryStream() {}\r
++ \r
++ MY_UNKNOWN_IMP1(IOutStream)\r
++\r
++ STDMETHOD(Write)(const void *data, UInt32 size, UInt32 *processedSize)\r
++ {\r
++ if (size > m_maxsize - m_offset) \r
++ size = m_maxsize - m_offset;\r
++\r
++ if (size) {\r
++ memcpy(m_data + m_offset, data, size);\r
++ }\r
++\r
++ m_offset += size;\r
++\r
++ if (m_offset > m_size)\r
++ m_size = m_offset;\r
++\r
++ if (processedSize) \r
++ *processedSize = size;\r
++\r
++ return S_OK;\r
++ }\r
++ \r
++ STDMETHOD(WritePart)(const void *data, UInt32 size, UInt32 *processedSize)\r
++ {\r
++ return Write(data, size, processedSize);\r
++ }\r
++\r
++ STDMETHOD(Seek)(Int64 offset, UInt32 seekOrigin, UInt64 *newPosition)\r
++ {\r
++ UInt64 _offset;\r
++\r
++ if (seekOrigin == STREAM_SEEK_SET) _offset = offset;\r
++ else if (seekOrigin == STREAM_SEEK_CUR) _offset = m_offset + offset; \r
++ else if (seekOrigin == STREAM_SEEK_END) _offset = m_size;\r
++ else return STG_E_INVALIDFUNCTION;\r
++\r
++ if (_offset < 0 || _offset > m_maxsize)\r
++ return STG_E_SEEKERROR;\r
++\r
++ m_offset = _offset;\r
++\r
++ if (newPosition)\r
++ *newPosition = m_offset;\r
++\r
++ return S_OK;\r
++ }\r
++ \r
++ STDMETHOD(SetSize)(Int64 newSize)\r
++ {\r
++ if ((UInt64)newSize > m_maxsize) \r
++ return STG_E_MEDIUMFULL;\r
++\r
++ return S_OK;\r
++ }\r
++protected:\r
++ Bytef *m_data;\r
++ UInt64 m_size;\r
++ UInt64 m_maxsize;\r
++ UInt64 m_offset;\r
++};\r
++\r
++ZEXTERN int ZEXPORT compress2 OF((Bytef *dest, uLongf *destLen,\r
++ const Bytef *source, uLong sourceLen,\r
++ int level))\r
++{\r
++ CInMemoryStream *inStreamSpec = new CInMemoryStream(source, sourceLen);\r
++ CMyComPtr<ISequentialInStream> inStream = inStreamSpec;\r
++ \r
++ COutMemoryStream *outStreamSpec = new COutMemoryStream(dest, *destLen);\r
++ CMyComPtr<ISequentialOutStream> outStream = outStreamSpec;\r
++ \r
++ NCompress::NLZMA::CEncoder *encoderSpec = \r
++ new NCompress::NLZMA::CEncoder;\r
++ CMyComPtr<ICompressCoder> encoder = encoderSpec;\r
++ \r
++ PROPID propIDs[] = \r
++ {\r
++ NCoderPropID::kDictionarySize,\r
++ NCoderPropID::kPosStateBits,\r
++ NCoderPropID::kLitContextBits,\r
++ NCoderPropID::kLitPosBits,\r
++ NCoderPropID::kAlgorithm,\r
++ NCoderPropID::kNumFastBytes,\r
++ NCoderPropID::kMatchFinder,\r
++ NCoderPropID::kEndMarker\r
++ };\r
++ const int kNumProps = sizeof(propIDs) / sizeof(propIDs[0]);\r
++ \r
++ PROPVARIANT properties[kNumProps];\r
++ for (int p = 0; p < 6; p++)\r
++ properties[p].vt = VT_UI4;\r
++ properties[0].ulVal = UInt32(1 << (level + 14));\r
++ properties[1].ulVal = UInt32(ZLIB_PB);\r
++ properties[2].ulVal = UInt32(ZLIB_LC); // for normal files\r
++ properties[3].ulVal = UInt32(ZLIB_LP); // for normal files\r
++ properties[4].ulVal = UInt32(2);\r
++ properties[5].ulVal = UInt32(128);\r
++ \r
++ properties[6].vt = VT_BSTR;\r
++ properties[6].bstrVal = (BSTR)(const wchar_t *)L"BT4";\r
++ \r
++ properties[7].vt = VT_BOOL;\r
++ properties[7].boolVal = VARIANT_TRUE;\r
++ \r
++ if (encoderSpec->SetCoderProperties(propIDs, properties, kNumProps) != S_OK)\r
++ return Z_MEM_ERROR; // should not happen\r
++ \r
++ HRESULT result = encoder->Code(inStream, outStream, 0, 0, 0);\r
++ if (result == E_OUTOFMEMORY)\r
++ {\r
++ return Z_MEM_ERROR;\r
++ } \r
++ else if (result != S_OK)\r
++ {\r
++ return Z_BUF_ERROR; // should not happen\r
++ } \r
++ \r
++ UInt64 fileSize;\r
++ outStreamSpec->Seek(0, STREAM_SEEK_END, &fileSize);\r
++ *destLen = fileSize;\r
++ \r
++ return Z_OK;\r
++}\r
++\r
++ZEXTERN int ZEXPORT uncompress OF((Bytef *dest, uLongf *destLen,\r
++ const Bytef *source, uLong sourceLen))\r
++{\r
++ CInMemoryStream *inStreamSpec = new CInMemoryStream(source, sourceLen);\r
++ CMyComPtr<ISequentialInStream> inStream = inStreamSpec;\r
++ \r
++ COutMemoryStream *outStreamSpec = new COutMemoryStream(dest, *destLen);\r
++ CMyComPtr<ISequentialOutStream> outStream = outStreamSpec;\r
++ \r
++ NCompress::NLZMA::CDecoder *decoderSpec = \r
++ new NCompress::NLZMA::CDecoder;\r
++ CMyComPtr<ICompressCoder> decoder = decoderSpec;\r
++ \r
++ if (decoderSpec->SetDecoderPropertiesRaw(ZLIB_LC, \r
++ ZLIB_LP, ZLIB_PB, (1 << 23)) != S_OK) return Z_DATA_ERROR;\r
++ \r
++ UInt64 fileSize = *destLen;\r
++ \r
++ if (decoder->Code(inStream, outStream, 0, &fileSize, 0) != S_OK)\r
++ {\r
++ return Z_DATA_ERROR;\r
++ }\r
++ \r
++ outStreamSpec->Seek(0, STREAM_SEEK_END, &fileSize);\r
++ *destLen = fileSize;\r
++ \r
++ return Z_OK;\r
++}\r
--- /dev/null
+include $(TOPDIR)/rules.mk
+
+SQUASHFSLZMA_DIR=$(BUILD_DIR)/squashfs3.0
+SQUASHFSLZMA_SOURCE=squashfs3.0.tar.gz
+SQUASHFSLZMA_SITE=@SF/squashfs
+SQUASHFSLZMA_MD5SUM=9fd05d0bfbb712f5fb95edafea5bc733
+
+$(DL_DIR)/$(SQUASHFSLZMA_SOURCE):
+ $(SCRIPT_DIR)/download.pl $(DL_DIR) $(SQUASHFSLZMA_SOURCE) $(SQUASHFSLZMA_MD5SUM) $(SQUASHFSLZMA_SITE)
+
+$(SQUASHFSLZMA_DIR)/.unpacked: $(DL_DIR)/$(SQUASHFSLZMA_SOURCE)
+ zcat $(DL_DIR)/$(SQUASHFSLZMA_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+ $(PATCH) $(SQUASHFSLZMA_DIR) ./patches
+ touch $(SQUASHFSLZMA_DIR)/.unpacked
+
+$(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs-lzma: $(SQUASHFSLZMA_DIR)/.unpacked
+ $(MAKE) -C $(SQUASHFSLZMA_DIR)/squashfs-tools mksquashfs-lzma LZMAPATH=$(BUILD_DIR)/lzma
+
+$(STAGING_DIR)/bin/mksquashfs-lzma: $(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs-lzma
+ $(CP) $< $@
+
+source: $(DL_DIR)/$(SQUASHFSLZMA_SOURCE)
+prepare: $(SQUASHFSLZMA_DIR)/.unpacked
+compile: $(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs-lzma $(STAGING_DIR)/bin/mksquashfs-lzma
+install:
+clean: FORCE
+ rm -rf $(SQUASHFSLZMA_DIR)
--- /dev/null
+diff -Nur squashfs3.0/squashfs-tools/Makefile squashfs3.0-owrt/squashfs-tools/Makefile
+--- squashfs3.0/squashfs-tools/Makefile 2006-03-15 22:36:20.000000000 +0100
++++ squashfs3.0-owrt/squashfs-tools/Makefile 2006-03-21 11:14:08.000000000 +0100
+@@ -1,4 +1,5 @@
+ INCLUDEDIR = .
++#LZMAPATH = ../lzma/SRC/7zip/Compress/LZMA_Lib
+
+ CFLAGS := -I$(INCLUDEDIR) -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -O2
+
+@@ -7,6 +8,9 @@
+ mksquashfs: mksquashfs.o read_fs.o sort.o
+ $(CC) mksquashfs.o read_fs.o sort.o -lz -o $@
+
++mksquashfs-lzma: mksquashfs.o read_fs.o sort.o
++ $(CXX) mksquashfs.o read_fs.o sort.o -L$(LZMAPATH) -llzma -o $@
++
+ mksquashfs.o: mksquashfs.c squashfs_fs.h mksquashfs.h global.h sort.h
+
+ read_fs.o: read_fs.c squashfs_fs.h read_fs.h global.h
+@@ -17,3 +21,5 @@
+ $(CC) unsquashfs.o -lz -o $@
+
+ unsquashfs.o: unsquashfs.c squashfs_fs.h read_fs.h global.h
++
++clean: