summaryrefslogtreecommitdiff
path: root/package/base-files
diff options
context:
space:
mode:
Diffstat (limited to 'package/base-files')
-rw-r--r--package/base-files/Makefile36
-rw-r--r--package/base-files/files/inittab.shell2
-rw-r--r--package/base-files/src/etc/init.d/boot8
-rw-r--r--package/base-files/src/etc/init.d/fs58
-rw-r--r--package/base-files/src/etc/inittab2
-rw-r--r--package/base-files/src/etc/ipkg.conf2
-rw-r--r--package/base-files/src/etc/mdev.conf1
-rw-r--r--package/base-files/src/lib/mdev/init27
-rwxr-xr-xpackage/base-files/src/usr/share/udhcpc/default.script4
9 files changed, 43 insertions, 97 deletions
diff --git a/package/base-files/Makefile b/package/base-files/Makefile
index 0dee1aa94..c9a343d59 100644
--- a/package/base-files/Makefile
+++ b/package/base-files/Makefile
@@ -6,10 +6,9 @@ include $(TOPDIR)/mk/rootfs.mk
PKG_NAME:= base-files
PKG_VERSION:= 1.0
-PKG_RELEASE:= 74
+PKG_RELEASE:= 82
PKG_SECTION:= base
PKG_DESCR:= basic files and scripts
-PKG_BUILDDEP:= pkgconf-host file-host
WRKDIST= ${WRKDIR}/base-files
NO_DISTFILES:= 1
@@ -27,11 +26,19 @@ do-install:
ifeq (${ADK_TARGET_ROOTFS_NFSROOT},y)
@echo "#" > $(IDIR_BASE_FILES)/etc/network/interfaces
endif
+ifeq (${ADK_TARGET_PACKAGE_IPKG},y)
$(SED) 's,@ARCH@,$(ADK_TARGET_CPU_ARCH),g' $(IDIR_BASE_FILES)/etc/ipkg.conf
$(SED) 's,@SYSTEM@,$(ADK_TARGET_SYSTEM),g' $(IDIR_BASE_FILES)/etc/ipkg.conf
$(SED) 's,@LIBC@,$(ADK_TARGET_LIBC),g' $(IDIR_BASE_FILES)/etc/ipkg.conf
+ifneq ($(ADK_TARGET_ABI),)
+ $(SED) 's,@ABI@,_$(ADK_TARGET_ABI),g' $(IDIR_BASE_FILES)/etc/ipkg.conf
+else
+ $(SED) 's,@ABI@,,g' $(IDIR_BASE_FILES)/etc/ipkg.conf
+endif
$(SED) 's,@HOST@,$(ADK_HOST),g' $(IDIR_BASE_FILES)/etc/ipkg.conf
$(SED) 's,@VENDOR@,$(ADK_VENDOR),g' $(IDIR_BASE_FILES)/etc/ipkg.conf
+ mkdir -p $(IDIR_BASE_FILES)/usr/lib/ipkg/lists
+endif
echo /bin/sh >${IDIR_BASE_FILES}/etc/shells
echo /bin/mksh >>${IDIR_BASE_FILES}/etc/shells
ifneq (${ADK_PACKAGE_ASH},)
@@ -43,14 +50,13 @@ endif
ifneq (${ADK_PACKAGE_ZSH},)
echo /bin/zsh >>${IDIR_BASE_FILES}/etc/shells
endif
- mkdir -p $(IDIR_BASE_FILES)/usr/lib/ipkg/lists
mkdir -p $(IDIR_BASE_FILES)/etc/crontabs
mkdir -p $(IDIR_BASE_FILES)/{dev,boot,root,sys,proc,tmp,mnt}
mkdir -p $(IDIR_BASE_FILES)/etc/network/{if-pre-up.d,if-up.d,if-down.d,if-post-down.d}
mkdir -p $(IDIR_BASE_FILES)/usr/{lib,bin}
- chmod 755 $(IDIR_BASE_FILES)/lib/mdev/init
chmod 600 $(IDIR_BASE_FILES)/etc/shadow
chmod 600 $(IDIR_BASE_FILES)/etc/network/interfaces
+ (cd $(IDIR_BASE_FILES)/etc; ln -sf ../tmp/resolv.conf .)
chmod 1777 ${IDIR_BASE_FILES}/tmp
ln -sf ../proc/mounts $(IDIR_BASE_FILES)/etc/mtab
rm -rf $(IDIR_BASE_FILES)/var
@@ -61,7 +67,7 @@ endif
cat ./files/inittab.vga >> $(IDIR_BASE_FILES)/etc/inittab
test -z $(ADK_RUNTIME_GETTY_SERIAL) || \
cat ./files/inittab.serial >> $(IDIR_BASE_FILES)/etc/inittab
- $(SED) 's#@DEVICE@#$(ADK_RUNTIME_CONSOLE_SERIAL_DEVICE)#' $(IDIR_BASE_FILES)/etc/inittab
+ $(SED) 's#@DEVICE@#$(ADK_RUNTIME_CONSOLE_SERIAL_DEVICE)#g' $(IDIR_BASE_FILES)/etc/inittab
$(SED) 's#@SPEED@#$(ADK_RUNTIME_CONSOLE_SERIAL_SPEED)#' $(IDIR_BASE_FILES)/etc/inittab
test -z $(ADK_RUNTIME_HOSTNAME) || \
echo $(ADK_RUNTIME_HOSTNAME) > $(IDIR_BASE_FILES)/etc/hostname; \
@@ -71,7 +77,8 @@ endif
test -z $(ADK_RUNTIME_PASSWORD) || \
$(SED) 's,\*NP\*,'"$$($(STAGING_HOST_DIR)/usr/bin/mkcrypt \
${ADK_RUNTIME_PASSWORD}),g" $(IDIR_BASE_FILES)/etc/shadow
- git log -1|head -1|sed -e 's#commit ##' \
+ test -z $(GIT) || \
+ $(GIT) log -1|head -1|sed -e 's#commit ##' \
> $(IDIR_BASE_FILES)/etc/adkversion
test -z $(ADK_TARGET_SYSTEM) || \
echo $(ADK_TARGET_SYSTEM) > $(IDIR_BASE_FILES)/etc/adktarget
@@ -80,23 +87,20 @@ ifneq (${ADK_PACKAGE_CONFIG_IN_ETC},)
gzip -9c ${TOPDIR}/.config >$(IDIR_BASE_FILES)/etc/adkconfig.gz
chmod 600 $(IDIR_BASE_FILES)/etc/adkconfig.gz
endif
-ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y)
- echo 'export LD_LIBRARY_PATH=/opt/vc/lib' >> $(IDIR_BASE_FILES)/etc/profile
-ifneq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI)$(ADK_TARGET_SYSTEM_IBM_X40)$(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),)
+ifeq ($(ADK_TARGET_WITH_ROOT_RW),y)
echo 'export IPKGTMPDIR=/root/.ipkg' >> $(IDIR_BASE_FILES)/etc/profile
else
- echo 'export IPKGTMPDIR=/tmp >> $(IDIR_BASE_FILES)/etc/profile
+ echo 'export IPKGTMPDIR=/tmp' >> $(IDIR_BASE_FILES)/etc/profile
endif
-
+ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y)
+ echo 'export LD_LIBRARY_PATH=/opt/vc/lib' >> $(IDIR_BASE_FILES)/etc/profile
endif
# simple network configuration
ifneq (${ADK_SIMPLE_NETWORK_CONFIG},)
${INSTALL_DIR} ${IDIR_BASE_FILES}/etc/network
-
# network config local
echo -e "auto lo\niface lo inet loopback" > ${IDIR_BASE_FILES}/etc/network/interfaces
-
# network config eth0
# configure nic with dhcp
ifeq (${SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC},y)
@@ -123,12 +127,10 @@ ifeq (${SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP},y)
echo -e " broadcast ${SIMPLE_NETWORK_CONFIG_ETH0_BC}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
echo -e " bridge-ports ${SIMPLE_NETWORK_CONFIG_ETH0_BRIDGE}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
endif
-
# network config wlan0
ifeq (${SIMPLE_NETWORK_CONFIG_WLAN0_TYPE_NIC},y)
echo -e "\nauto wlan0\niface wlan0 inet dhcp" >> ${IDIR_BASE_FILES}/etc/network/interfaces
endif
-
# network config eth1
# configure nic with dhcp
ifeq (${SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NIC},y)
@@ -155,13 +157,11 @@ ifeq (${SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE_IP},y)
echo -e " broadcast ${SIMPLE_NETWORK_CONFIG_ETH1_BC}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
echo -e " bridge-ports ${SIMPLE_NETWORK_CONFIG_ETH1_BRIDGE}" >> ${IDIR_BASE_FILES}/etc/network/interfaces
endif
-
# newline at the end of interfaces file
echo -en "\n" >> ${IDIR_BASE_FILES}/etc/network/interfaces
-
# resolver config
+ rm ${IDIR_BASE_FILES}/etc/resolv.conf
echo -e "nameserver ${SIMPLE_NETWORK_CONFIG_RESOLV}" > ${IDIR_BASE_FILES}/etc/resolv.conf
endif
-
include ${TOPDIR}/mk/pkg-bottom.mk
diff --git a/package/base-files/files/inittab.shell b/package/base-files/files/inittab.shell
index 55e5e429f..d12593ca1 100644
--- a/package/base-files/files/inittab.shell
+++ b/package/base-files/files/inittab.shell
@@ -1 +1 @@
-::askfirst:/bin/sh
+::askfirst:-/bin/sh
diff --git a/package/base-files/src/etc/init.d/boot b/package/base-files/src/etc/init.d/boot
index f52e8dc78..291bf6ab4 100644
--- a/package/base-files/src/etc/init.d/boot
+++ b/package/base-files/src/etc/init.d/boot
@@ -4,10 +4,6 @@
. /etc/functions.sh
-if [ -f /proc/sys/kernel/printk ];then
- echo 0 > /proc/sys/kernel/printk
-fi
-
# remount /dev with smaller size
mount -o remount,nosuid,size=128k,mode=0755 -t tmpfs mdev /dev
@@ -19,6 +15,8 @@ mount -o remount,nosuid,nodev,mode=1777,size=${size}k -t tmpfs tmpfs /tmp
# start mdev dynamic device node management
echo >/dev/mdev.seq
echo "/sbin/mdev" >/proc/sys/kernel/hotplug
+# creates f.e. /dev/root
+mdev -s
# seed some random
cat /etc/.rnd >/dev/urandom 2>&1
@@ -29,9 +27,9 @@ cat /etc/.rnd >/dev/urandom 2>&1
# create some useful directories in tmpfs
mkdir -p /var/log
mkdir -p /var/run
+mkdir -p /var/tmp
touch /var/log/lastlog
touch /var/log/wtmp
-ln -s /tmp /var/tmp
HOSTNAME=
[[ -s /etc/hostname ]] && HOSTNAME=$(cat /etc/hostname)
diff --git a/package/base-files/src/etc/init.d/fs b/package/base-files/src/etc/init.d/fs
index 8f4397897..e995422ee 100644
--- a/package/base-files/src/etc/init.d/fs
+++ b/package/base-files/src/etc/init.d/fs
@@ -8,46 +8,26 @@
# activate any logical volumes
[ -x /usr/sbin/lvm ] && { lvm vgscan; lvm vgchange -ay; }
+fstypes="ext2 ext3 ext4 xfs"
+
# filesystem checks
-[ -x /sbin/fsck.ext2 ] && {
- for i in $(grep -v "^#" /etc/fstab|grep ext2|awk '{ print $1}');do fsck.ext2 $i;done;
-}
-[ -x /sbin/fsck.ext3 ] && {
- for i in $(grep -v "^#" /etc/fstab|grep ext3|awk '{ print $1}');do fsck.ext3 $i;done;
-}
-[ -x /sbin/fsck.ext4 ] && {
- for i in $(grep -v "^#" /etc/fstab|grep ext4|awk '{ print $1}');do fsck.ext4 $i;done;
-}
-[ -x /sbin/fsck.xfs ] && {
- for i in $(grep -v "^#" /etc/fstab|grep xfs|awk '{ print $1}');do xfs_repair $i;done;
-}
-# local filesystems
-grep ext2 /proc/filesystems >/dev/null 2>&1
-if [ $? -eq 0 ];then
- grep -v "^#" /etc/fstab |grep ext2 >/dev/null 2>&1
- if [ $? -eq 0 ];then
- mount -a -t ext2
- fi
-fi
-grep ext3 /proc/filesystems >/dev/null 2>&1
-if [ $? -eq 0 ];then
- grep -v "^#" /etc/fstab |grep ext3 >/dev/null 2>&1
- if [ $? -eq 0 ];then
- mount -a -t ext3
- fi
-fi
-grep ext4 /proc/filesystems >/dev/null 2>&1
-if [ $? -eq 0 ];then
- grep -v "^#" /etc/fstab |grep ext4 >/dev/null 2>&1
- if [ $? -eq 0 ];then
- mount -a -t ext4
- fi
-fi
-grep xfs /proc/filesystems >/dev/null 2>&1
-if [ $? -eq 0 ];then
- grep -v "^#" /etc/fstab |grep xfs >/dev/null 2>&1
+for fs in $fstypes; do
+ [ -x /usr/sbin/fsck.$fs ] && {
+ for i in $(grep -v "^#" /etc/fstab|grep $fs|awk '{ print $1}');do
+ echo "Checking filesystem on $i with $fs"
+ fsck -p -t $fs $i
+ done
+ }
+done
+
+# mount local filesystems
+for fs in $fstypes; do
+ grep $fs /proc/filesystems >/dev/null 2>&1
if [ $? -eq 0 ];then
- mount -a -t xfs
+ grep -v "^#" /etc/fstab |grep $fs >/dev/null 2>&1
+ if [ $? -eq 0 ];then
+ mount -a -t $fs
+ fi
fi
-fi
+done
exit 0
diff --git a/package/base-files/src/etc/inittab b/package/base-files/src/etc/inittab
index f6183798e..e2ad18156 100644
--- a/package/base-files/src/etc/inittab
+++ b/package/base-files/src/etc/inittab
@@ -6,5 +6,5 @@ null::sysinit:/bin/mount -a -t devpts
null::sysinit:/bin/mount -a -t tmpfs
::sysinit:/etc/init.d/rcS
::shutdown:/etc/init.d/rcK
-null::shutdown:/bin/umount -a -r
+null::shutdown:/bin/umount -a -t ext4
null::shutdown:/sbin/swapoff -a
diff --git a/package/base-files/src/etc/ipkg.conf b/package/base-files/src/etc/ipkg.conf
index cef6d2845..9c5ae17d3 100644
--- a/package/base-files/src/etc/ipkg.conf
+++ b/package/base-files/src/etc/ipkg.conf
@@ -1,3 +1,3 @@
-src @VENDOR@ http://@HOST@/@SYSTEM@_@ARCH@_@LIBC@/packages
+src @VENDOR@ http://@HOST@/pkg/@SYSTEM@_@ARCH@_@LIBC@@ABI@/packages
dest root /
dest ram /tmp
diff --git a/package/base-files/src/etc/mdev.conf b/package/base-files/src/etc/mdev.conf
index fc63d80d9..0a24ef04b 100644
--- a/package/base-files/src/etc/mdev.conf
+++ b/package/base-files/src/etc/mdev.conf
@@ -15,4 +15,3 @@ snd/controlC0 root:audio 660
snd/pcmC0D0c root:audio 660
snd/pcmC0D0p root:audio 660
msr0 root:root 660 @(mkdir -p /dev/cpu/0 && ln -sf /dev/msr0 /dev/cpu/0/msr)
-.* 0:0 644 @/lib/mdev/init
diff --git a/package/base-files/src/lib/mdev/init b/package/base-files/src/lib/mdev/init
deleted file mode 100644
index a478abecd..000000000
--- a/package/base-files/src/lib/mdev/init
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/sh
-if [ "$SUBSYSTEM" == "pcmcia_socket" ];then
- logger "Setting up PCMCIA socket resource database"
- if [ "$ACTION" == "add" ];then
- /usr/sbin/pcmcia-socket-startup
- fi
-fi
-if [ "$SUBSYSTEM" == "usb" ];then
- if [ "$ACTION" == "add" ];then
- if [ "$DEVTYPE" == "usb_device" ];then
- if [ "$PRODUCT" == "12d1/1003/0" ];then
- if [ ! -f /tmp/.huawei ];then
- logger "USB device added with: $PRODUCT"
- usbmods=$(lsmod|grep ^usbserial|awk '{ print $4 }'|sed -e 's/,/ /g')
- for i in $usbmods;do rmmod $i;done
- rmmod usbserial
- lsmod >> /tmp/debug
- test -x /sbin/huawei && /sbin/huawei >> /tmp/debug
- insmod /lib/modules/$(uname -r)/usbserial.ko product=0x1003 vendor=0x12d1
- for i in $usbmods;do insmod /lib/modules/$(uname -r)/$i.ko; done
-
- touch /tmp/.huawei
- fi
- fi
- fi
- fi
-fi
diff --git a/package/base-files/src/usr/share/udhcpc/default.script b/package/base-files/src/usr/share/udhcpc/default.script
index 3744dfb09..55a6655ab 100755
--- a/package/base-files/src/usr/share/udhcpc/default.script
+++ b/package/base-files/src/usr/share/udhcpc/default.script
@@ -23,16 +23,12 @@ case $1 in
ip route add to default via $i
done
fi
-
- touch /tmp/resolv.conf
- ln -sf /tmp/resolv.conf $RESOLV_CONF
echo -n >$RESOLV_CONF
${domain:+echo search $domain} >>$RESOLV_CONF
for i in $dns; do
echo "adding dns $i"
echo "nameserver $i" >>$RESOLV_CONF
done
-
# user rules
[ -f /etc/udhcpc.user ] && . /etc/udhcpc.user
;;