echo -n "setting up symlinks... "
for file in $(cd /rom; find * -type f; find * -type l;)
do {
- [ "${file%/*}" = "usr/lib/ipkg/info" ] && {
+ [ "${file%/*}" = "usr/lib/ipkg/info" -o "${file%/*}" = "etc/config" ] && {
cp -f /rom/$file $file
} || {
ln -sf /rom/$file $file
--- /dev/null
+# Network configuration file
+
+# Uncomment the following statements to override the default or nvram config
+# lan_ifame="br0"
+# lan_proto="static"
+# lan_ipaddr="192.168.1.1"
+# lan_netmask="255.255.255.0"
+# lan_gateway=""
+# lan_dns=""
# allow env to override nvram
nvram () {
- case $1 in
- get) eval "echo \${NVRAM_$2:-\$(command nvram get $2)}";;
- *) command nvram $*;;
- esac
+ if [ -x /usr/sbin/nvram ]; then
+ case $1 in
+ get) eval "echo \${$2:-\$(command nvram get $2)}";;
+ *) command nvram $*;;
+ esac
+ else
+ case $1 in
+ get) eval "echo \${$2:-\${DEFAULT_$2}}";;
+ *);;
+ esac
+ fi
}
-. /etc/nvram.overrides
# valid interface?
if_valid () (
touch /var/log/wtmp
touch /var/log/lastlog
-[ "$(nvram get il0macaddr)" = "00:90:4c:5f:00:2a" ] && {
- # if default wifi mac, set two higher than the lan mac
- nvram set il0macaddr=$(nvram get et0macaddr|
- awk '{OFS=FS=":";for(x=7,y=2;--x;){$x=sprintf("%02x",(y+="0x"$x)%256);y/=256}print}')
-}
-
-# set up the vlan*ports variables for the asus wl-500g deluxe
-# if they don't already exist
-[ "$(nvram get boardtype)" = "bcm95365r" \
--a "$(nvram get boardnum)" = "45" \
--a -z "$(nvram get vlan0ports)"
--a -z "$(nvram get vlan1ports)" ] && {
- nvram set vlan0ports="1 2 3 4 5*"
- nvram set vlan1ports="0 5"
+[ -x /usr/sbin/nvram ] && {
+ [ "$(nvram get il0macaddr)" = "00:90:4c:5f:00:2a" ] && {
+ # if default wifi mac, set two higher than the lan mac
+ nvram set il0macaddr=$(nvram get et0macaddr|
+ awk '{OFS=FS=":";for(x=7,y=2;--x;){$x=sprintf("%02x",(y+="0x"$x)%256);y/=256}print}')
+ }
+
+ # set up the vlan*ports variables for the asus wl-500g deluxe
+ # if they don't already exist
+ [ "$(nvram get boardtype)" = "bcm95365r" \
+ -a "$(nvram get boardnum)" = "45" \
+ -a -z "$(nvram get vlan0ports)"
+ -a -z "$(nvram get vlan1ports)" ] && {
+ nvram set vlan0ports="1 2 3 4 5*"
+ nvram set vlan1ports="0 5"
+ }
}
sed 's/^[^#]/insmod &/' /etc/modules /etc/modules.d/* 2>&-|ash
#!/bin/sh
+[ -e /etc/config/network] && . /etc/config/network
case "$1" in
start|restart)
ifup lan
${FAILSAFE:+exit}
. /etc/functions.sh
+. /etc/network.overrides
+[ -e /etc/config/network] && . /etc/config/network
WAN=$(nvram get wan_ifname)
LAN=$(nvram get lan_ifname)
#!/bin/sh
. /etc/functions.sh
+. /etc/network.overrides
+[ -e /etc/config/network] && . /etc/config/network
# interface to use for DHCP
iface=lan
+++ /dev/null
-# NVRAM overrides
-#
-# This file handles the NVRAM quirks of various hardware.
-# THIS FILE IS NOT A REPLACEMENT FOR NVRAM
-
-# Load sysconf defaults
-[ -f /etc/sysconf ] && . /etc/sysconf
-
-# linksys bug; remove when not using static configuration for lan
-NVRAM_lan_proto="static"
-
-remap () {
- for type in lan wifi wan pppoe
- do
- for s in '' s
- do
- eval NVRAM_${type}_ifname$s=\"$(nvram get ${type}_ifname$s|sed s/$1/$2/g)\"
- done
- done
-}
-
-# hacks for wrt54g 1.x hardware
-[ "$(nvram get boardnum)" = "42" \
--a "$(nvram get boardtype)" = "bcm94710dev" ] && {
- debug "### wrt54g 1.x hack ###"
- NVRAM_vlan1hwname="et0"
- NVRAM_vlan2hwname="et0"
- FAILSAFE_ifnames="vlan1 vlan2 eth2"
- remap eth0 vlan2
- remap eth1 vlan1
-}
-
-# hacks for asus wl-500g deluxe
-[ "$(nvram get boardtype)" = "bcm95365r" \
--a "$(nvram get boardnum)" = "45" ] && {
- debug "### wl-500g deluxe hacks ###"
- NVRAM_vlan0hwname="et0"
- NVRAM_vlan1hwname="et0"
- FAILSAFE_ifnames="vlan0 eth1"
- remap eth0.1 vlan0
- remap eth0 vlan1
-}
-
-# hacks for asus wl-300g
-[ "$(nvram get productid)" = "WL300g" ] && {
- debug "### wl-300g hacks ###"
- NVRAM_lan_ifnames="eth0 eth2"
- NVRAM_wan_ifname="none"
-}
-
-# hacks for wap54g hardware
-[ "$(nvram get boardnum)" = "2" \
--o "$(nvram get boardnum)" = "1024" ] && {
- debug "### wap54g hack ###"
- NVRAM_wan_ifname="none"
- FAILSAFE_ifnames="eth0 eth1"
-}
-
-# hacks for buffalo wla2-g54l
-[ "$(nvram get boardnum)" = "00" \
--a "$(nvram get product_name)" = "Product_name" \
--o "$(nvram get product_name)" = "WLA2-G54L" ] && {
- debug "### wla2-g54l hacks ###"
- NVRAM_wan_ifname="none"
- NVRAM_lan_ifnames="vlan0"
-}
-
-# hack for asus wl-500g hardware
-[ "$(nvram get boardnum)" = "asusX" \
--a "$(nvram get boardtype)" = "bcm94710dev" ] && {
- FAILSAFE_ifnames="eth0 eth2"
-}
-
-# defaults if lan_ifname is missing
-[ -z "$(nvram get lan_ifname)" ] && {
- NVRAM_lan_ifname="br0"
- NVRAM_lan_ifnames=${FAILSAFE_ifnames:-"vlan0 vlan2 eth1 eth2 eth3"}
-}
-
-# defaults if wan_ifname is missing
-[ -z "$(nvram get wan_ifname)" ] && {
- NVRAM_wan_ifname="vlan1"
- NVRAM_wan_proto="dhcp"
-}
-
-# failsafe if reset is held
-[ "$FAILSAFE" = "true" ] && {
- echo "### YOU ARE IN FAILSAFE MODE ####"
- NVRAM_lan_ifname="br0"
- NVRAM_lan_ifnames=${FAILSAFE_ifnames:-"vlan0 vlan1 eth1 eth2 eth3"}
- NVRAM_lan_ipaddr=${BR2_SYSCONF_FAILSAFE_IP:-"192.168.1.1"}
- NVRAM_lan_netmask=${BR2_SYSCONF_FAILSAFE_NETMASK:-"255.255.255.0"}
- NVRAM_lan_hwaddr=${BR2_SYSCONF_FAILSAFE_MAC:-"00:0B:AD:0A:DD:00"}
- NVRAM_wan_ifname="none"
- NVRAM_wifi_ifname="none"
-}
#!/bin/ash
[ $# = 0 ] && { echo " $0 <group>"; exit; }
. /etc/functions.sh
+. /etc/network.overrides
+[ -e /etc/config/network ] && . /etc/config/network
type=$1
debug "### ifdown $type ###"
if=$(nvram get ${type}_ifname)
#!/bin/ash
[ $# = 0 ] && { echo " $0 <group>"; exit; }
. /etc/functions.sh
+. /etc/network.overrides
+[ -e /etc/config/network ] && . /etc/config/network
+
type=$1
debug "### ifup $type ###"
#!/bin/sh
[ $# = 0 ] && { echo " $0 <group>"; exit; }
. /etc/functions.sh
+. /etc/nvram.overrides
+[ -e /etc/config/network ] && . /etc/config/network
type=$1
[ "$(nvram get ${type}_proto)" = "pppoe" ] || {
#!/bin/sh
. /etc/functions.sh
+. /etc/nvram.overrides
+[ -e /etc/config/network ] && . /etc/config/network
type=$1
[ "$(nvram get ${type}_proto)" = "pptp" ] || exit
#!/usr/bin/perl
my %change = (
- 'BUSYBOX' => 'make -C package busybox-clean',
- 'OPENVPN_' => 'make -C package openvpn-clean',
+ 'BUSYBOX' => 'make package/busybox-clean',
+ 'OPENVPN_' => 'make package/openvpn-clean',
+ 'SYSCONF_' => 'make package/base-files-clean target_clean',
'' => 'make target_clean'
);
my @configfiles = (
- ['package/linux/linux.config', 'build_mipsel/linux/.config' =>
- 'make -C package linux-clean']
+# ['package/linux/linux.config', 'build_mipsel/linux/.config' =>
+# 'make -C package linux-clean']
);
package-$(BR2_PACKAGE_KMOD_MINI_FO) += mini_fo
package-$(BR2_PACKAGE_KMOD_SHFS) += shfs
package-$(BR2_PACKAGE_KMOD_OPENSWAN) += openswan
+package-y += openwrt
ifeq ($(BOARD),brcm)
-package-y += nvram openwrt
+package-y += nvram
ifeq ($(LINUX_VERSION),2.4.30)
package-$(BR2_PACKAGE_KMOD_WLCOMPAT) += wlcompat
include $(TOPDIR)/rules.mk
-PKG_NAME := openwrt-utils
-PKG_RELEASE := 2
+PKG_NAME := base-files-arch
+PKG_RELEASE := 1
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
include $(TOPDIR)/package/rules.mk
BR2_PACKAGE_OPENWRT:=y # ignore menuconfig
-$(eval $(call PKG_template,OPENWRT,openwrt-utils,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
-
+$(eval $(call PKG_template,OPENWRT,$(PKG_NAME),$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
$(PKG_BUILD_DIR)/.prepared:
mkdir -p $(PKG_BUILD_DIR)
touch $@
-
+
+ifeq ($(BOARD),brcm)
$(PKG_BUILD_DIR)/jffs2root: jffs2root.c
$(TARGET_CC) -o $@ $<
$(PKG_BUILD_DIR)/.built: $(PKG_BUILD_DIR)/jffs2root
- touch $@
-$(IPKG_OPENWRT):
+$(IDIR_OPENWRT)/sbin/jffs2root:
mkdir -p $(IDIR_OPENWRT)/sbin
cp $(PKG_BUILD_DIR)/jffs2root $(IDIR_OPENWRT)/sbin
+
+$(IPKG_OPENWRT): $(IDIR_OPENWRT)/sbin/jffs2root
+endif
+
+$(PKG_BUILD_DIR)/.built:
+ touch $@
+
+$(IPKG_OPENWRT):
+ mkdir -p $(IDIR_OPENWRT)/etc
+ cp files/network.overrides.$(BOARD) $(IDIR_OPENWRT)/etc/network.overrides
$(RSTRIP) $(IDIR_OPENWRT)
$(IPKG_BUILD) $(IDIR_OPENWRT) $(PACKAGE_DIR)
--- /dev/null
+# NVRAM overrides
+#
+# This file handles the NVRAM quirks of various hardware.
+# THIS FILE IS NOT A REPLACEMENT FOR NVRAM
+
+# Load sysconf defaults
+[ -f /etc/sysconf ] && . /etc/sysconf
+
+DEFAULT_lan_proto="static"
+DEFAULT_lan_ifname="eth0"
+DEFAULT_lan_ifnames="eth0"
+DEFAULT_lan_ipaddr=${BR2_SYSCONF_FAILSAFE_IP:-"192.168.1.1"}
+DEFAULT_lan_netmask=${BR2_SYSCONF_FAILSAFE_NETMASK:-"255.255.255.0"}
+DEFAULT_lan_hwaddr=${BR2_SYSCONF_FAILSAFE_MAC:-"00:0B:AD:0A:DD:00"}
+
+# failsafe if reset is held
+[ "$FAILSAFE" = "true" ] && {
+ echo "### YOU ARE IN FAILSAFE MODE ####"
+ lan_ifname=${DEFAULT_lan_proto}
+ lan_ifnames=${FAILSAFE_ifnames:-${DEFAULT_lan_ifnames}}
+ lan_ipaddr=$DEFAULT_lan_ipaddr
+ lan_netmask=$DEFAULT_lan_netmask
+ lan_hwaddr=$DEFAULT_lan_hwaddr
+ wan_ifname="none"
+ wifi_ifname="none"
+}
--- /dev/null
+# NVRAM overrides
+#
+# This file handles the NVRAM quirks of various hardware.
+# THIS FILE IS NOT A REPLACEMENT FOR NVRAM
+
+# Load sysconf defaults
+[ -f /etc/sysconf ] && . /etc/sysconf
+
+# linksys bug; remove when not using static configuration for lan
+lan_proto="static"
+
+remap () {
+ for type in lan wifi wan pppoe
+ do
+ for s in '' s
+ do
+ eval ${type}_ifname$s=\"$(nvram get ${type}_ifname$s|sed s/$1/$2/g)\"
+ done
+ done
+}
+
+# hacks for wrt54g 1.x hardware
+[ "$(nvram get boardnum)" = "42" \
+-a "$(nvram get boardtype)" = "bcm94710dev" ] && {
+ debug "### wrt54g 1.x hack ###"
+ vlan1hwname="et0"
+ vlan2hwname="et0"
+ FAILSAFE_ifnames="vlan1 vlan2 eth2"
+ remap eth0 vlan2
+ remap eth1 vlan1
+}
+
+# hacks for asus wl-500g deluxe
+[ "$(nvram get boardtype)" = "bcm95365r" \
+-a "$(nvram get boardnum)" = "45" ] && {
+ debug "### wl-500g deluxe hacks ###"
+ vlan0hwname="et0"
+ vlan1hwname="et0"
+ FAILSAFE_ifnames="vlan0 eth1"
+ remap eth0.1 vlan0
+ remap eth0 vlan1
+}
+
+# hacks for asus wl-300g
+[ "$(nvram get productid)" = "WL300g" ] && {
+ debug "### wl-300g hacks ###"
+ lan_ifnames="eth0 eth2"
+ wan_ifname="none"
+}
+
+# hacks for wap54g hardware
+[ "$(nvram get boardnum)" = "2" \
+-o "$(nvram get boardnum)" = "1024" ] && {
+ debug "### wap54g hack ###"
+ wan_ifname="none"
+ FAILSAFE_ifnames="eth0 eth1"
+}
+
+# hacks for buffalo wla2-g54l
+[ "$(nvram get boardnum)" = "00" \
+-a "$(nvram get product_name)" = "Product_name" \
+-o "$(nvram get product_name)" = "WLA2-G54L" ] && {
+ debug "### wla2-g54l hacks ###"
+ wan_ifname="none"
+ lan_ifnames="vlan0"
+}
+
+# hack for asus wl-500g hardware
+[ "$(nvram get boardnum)" = "asusX" \
+-a "$(nvram get boardtype)" = "bcm94710dev" ] && {
+ FAILSAFE_ifnames="eth0 eth2"
+}
+
+# defaults if lan_ifname is missing
+[ -z "$(nvram get lan_ifname)" ] && {
+ lan_ifname="br0"
+ lan_ifnames=${FAILSAFE_ifnames:-"vlan0 vlan2 eth1 eth2 eth3"}
+}
+
+# defaults if wan_ifname is missing
+[ -z "$(nvram get wan_ifname)" ] && {
+ wan_ifname="vlan1"
+ wan_proto="dhcp"
+}
+
+DEFAULT_lan_ipaddr=${BR2_SYSCONF_FAILSAFE_IP:-"192.168.1.1"}
+DEFAULT_lan_netmask=${BR2_SYSCONF_FAILSAFE_NETMASK:-"255.255.255.0"}
+DEFAULT_lan_hwaddr=${BR2_SYSCONF_FAILSAFE_MAC:-"00:0B:AD:0A:DD:00"}
+
+# failsafe if reset is held
+[ "$FAILSAFE" = "true" ] && {
+ echo "### YOU ARE IN FAILSAFE MODE ####"
+ lan_ifname="br0"
+ lan_ifnames=${FAILSAFE_ifnames:-"vlan0 vlan1 eth1 eth2 eth3"}
+ lan_ipaddr=$DEFAULT_lan_ipaddr
+ lan_netmask=$DEFAULT_lan_netmask
+ lan_hwaddr=$DEFAULT_lan_hwaddr
+ wan_ifname="none"
+ wifi_ifname="none"
+}
--- /dev/null
+Package: base-files-arch
+Priority: optional
+Section: sys
+Maintainer: Felix Fietkau <nbd@vd-s.ath.cx>
+Source: buildroot internal
+Description: Board/architecture specific files
+++ /dev/null
-Package: openwrt-utils
-Priority: optional
-Section: sys
-Maintainer: Felix Fietkau <nbd@vd-s.ath.cx>
-Source: buildroot internal
-Description: Basic OpenWrt utilities
- This package contains:
- mtd: Tool for modifying the flash chip
- jffs2root: Expands the jffs2 root partition