2 # Copyright (C) 2009-2010 OpenWrt.org
3 # Copyright (C) 2010 Vertical Communications
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
9 include $(TOPDIR)/rules.mk
11 PKG_NAME:=block-extroot
15 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
17 include $(INCLUDE_DIR)/package.mk
19 define Package/block-extroot/Default
22 TITLE:=root filesystem on secondary storage
25 define Package/block-extroot
26 $(call Package/block-extroot/Default)
28 DEPENDS:=+block-mount @PACKAGE_kmod-ide-core||PACKAGE_kmod-ata-core||PACKAGE_kmod-usb-storage||PACKAGE_kmod-mmc||PACKAGE_kmod-broadcom-sdhc
31 define Package/block-extroot/config
32 source "$(SOURCE)/Config.in"
35 define Package/block-extroot/description
36 Based on the moduluarized preinit and firstboot, adds the option to have
37 the root filesystem on storage other than the jffs or the boot root device.
38 For a squashfs image this package must be installed into the image, not as
39 a package to add later.
45 define Build/Configure
51 define Package/block-extroot/install
52 $(INSTALL_DIR) $(1)/lib/functions
53 $(INSTALL_DATA) ./files/extmount.sh $(1)/lib/functions/
54 $(INSTALL_DIR) $(1)/lib/preinit
55 $(INSTALL_DATA) ./files/50_determine_usb_root $(1)/lib/preinit/
56 $(INSTALL_DATA) ./files/55_determine_extroot_sysupgrade $(1)/lib/preinit/
57 $(INSTALL_DATA) ./files/60_pivot_usb_root $(1)/lib/preinit/
58 $(INSTALL_DIR) $(1)/lib/preinit
59 echo "extroot_settle_time=\"$(CONFIG_EXTROOT_SETTLETIME)\"" >$(1)/lib/preinit/00_extroot.conf
60 $(INSTALL_DIR) $(1)/overlay
63 $(eval $(call BuildPackage,block-extroot))