From 3ae829cba98c71a4b4143f443ea65fcf370006e4 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Mon, 10 Mar 2014 17:26:29 +0100 Subject: add fs startup script for net mounts and data mount points --- package/base-files/Makefile | 2 +- package/base-files/src/etc/fstab | 1 - package/base-files/src/etc/group | 9 +++-- package/base-files/src/etc/init.d/fs | 69 ++++++++++++++++++++++++++++++++++++ package/base-files/src/etc/inittab | 4 ++- 5 files changed, 80 insertions(+), 5 deletions(-) create mode 100644 package/base-files/src/etc/init.d/fs (limited to 'package') diff --git a/package/base-files/Makefile b/package/base-files/Makefile index a298d108b..f320d6b82 100644 --- a/package/base-files/Makefile +++ b/package/base-files/Makefile @@ -6,7 +6,7 @@ include $(TOPDIR)/mk/rootfs.mk PKG_NAME:= base-files PKG_VERSION:= 1.0 -PKG_RELEASE:= 67 +PKG_RELEASE:= 68 PKG_SECTION:= base PKG_DESCR:= basic files and scripts PKG_BUILDDEP:= pkgconf-host file-host diff --git a/package/base-files/src/etc/fstab b/package/base-files/src/etc/fstab index fafa1d56e..5c09c2510 100644 --- a/package/base-files/src/etc/fstab +++ b/package/base-files/src/etc/fstab @@ -1,7 +1,6 @@ # /etc/fstab: static file system information. # # -#/dev/root / ext2 rw,noauto 0 1 proc /proc proc defaults 0 0 devpts /dev/pts devpts defaults,gid=5,mode=620 0 0 tmpfs /dev/shm tmpfs mode=0777 0 0 diff --git a/package/base-files/src/etc/group b/package/base-files/src/etc/group index bbf6c0603..51d78238c 100644 --- a/package/base-files/src/etc/group +++ b/package/base-files/src/etc/group @@ -1,4 +1,9 @@ root:x:0: -video:x:1: -audio:x:2: +daemon:x:1: +bin:x:2: +sys:x:3: +adm:x:4: +tty:x:5: +video:x:6: +audio:x:7: nogroup:x:65534: diff --git a/package/base-files/src/etc/init.d/fs b/package/base-files/src/etc/init.d/fs new file mode 100644 index 000000000..f79d9348d --- /dev/null +++ b/package/base-files/src/etc/init.d/fs @@ -0,0 +1,69 @@ +#!/bin/sh +#INIT 60 +[[ $1 = autostart ]] || exit 0 + +# activate swap +[ -x /sbin/swapon ] && { swapon -a; } + +# activate any logical volumes +[ -x /usr/sbin/lvm ] && { lvm vgscan; lvm vgchange -ay; } + +# filesystem checks +[ -x /sbin/fsck.ext2 ] && { + for i in $(grep ext2 /etc/fstab|awk '{ print $1}');do fsck.ext2 $i;done; +} +[ -x /sbin/fsck.ext3 ] && { + for i in $(grep ext3 /etc/fstab|awk '{ print $1}');do fsck.ext3 $i;done; +} +[ -x /sbin/fsck.ext4 ] && { + for i in $(grep ext4 /etc/fstab|awk '{ print $1}');do fsck.ext4 $i;done; +} +[ -x /sbin/fsck.xfs ] && { + for i in $(grep xfs /etc/fstab|awk '{ print $1}');do xfs_repair $i;done; +} +# local filesystems +grep ext2 /proc/filesystems >/dev/null 2>&1 +if [ $? -eq 0 ];then + grep ext2 /etc/fstab >/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 ext3 /etc/fstab >/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 ext4 /etc/fstab >/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 xfs /etc/fstab >/dev/null 2>&1 + if [ $? -eq 0 ];then + mount -a -t xfs + fi +fi + +# mount net filesystems (nfs/cifs) +grep nfs /proc/filesystems >/dev/null 2>&1 +if [ $? -eq 0 ];then + grep nfs /etc/fstab >/dev/null 2>&1 + if [ $? -eq 0 ];then + mount -a -t nfs + fi +fi +grep cifs /proc/filesystems >/dev/null 2>&1 +if [ $? -eq 0 ];then + grep cifs /etc/fstab >/dev/null 2>&1 + if [ $? -eq 0 ];then + mount -a -t cifs + fi +fi +exit 0 diff --git a/package/base-files/src/etc/inittab b/package/base-files/src/etc/inittab index eb00b00ef..f6183798e 100644 --- a/package/base-files/src/etc/inittab +++ b/package/base-files/src/etc/inittab @@ -1,7 +1,9 @@ null::sysinit:/bin/mount -t proc proc /proc +null::sysinit:/bin/mount -t sysfs sys /sys null::sysinit:/bin/mkdir -p /dev/pts null::sysinit:/bin/mkdir -p /dev/shm -null::sysinit:/bin/mount -a +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 -- cgit v1.2.3 From 8f148a08f29ccb6c21f108549e20aa8e0bb04b79 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Tue, 11 Mar 2014 10:55:56 +0100 Subject: finetune rebuild stuff need to rebuild kmod-packages, when removed. f.e. by hudson. fix kmod-soft-watchdog while there. Use bin directory for ldd to avoid a cpio failure. --- mk/kernel-build.mk | 16 +++++++++------- mk/modules.mk | 4 ++-- mk/pkg-bottom.mk | 5 ----- package/musl/Makefile | 6 +++--- target/linux/config/Config.in.watchdog | 2 +- 5 files changed, 15 insertions(+), 18 deletions(-) (limited to 'package') diff --git a/mk/kernel-build.mk b/mk/kernel-build.mk index 8fe0799a0..b2dc77d82 100644 --- a/mk/kernel-build.mk +++ b/mk/kernel-build.mk @@ -42,28 +42,30 @@ else $(CP) $(BUILD_DIR)/.kernelconfig $(LINUX_DIR)/.config echo N | ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} oldconfig $(MAKE_TRACE) endif - ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} prepare scripts $(MAKE_TRACE) touch -c $(LINUX_DIR)/.config $(LINUX_DIR)/$(KERNEL_FILE): $(LINUX_DIR)/.config - -rm $(LINUX_DIR)/$(KERNEL_TARGET) 2>/dev/null $(TRACE) target/$(ADK_TARGET_ARCH)-kernel-compile - ${KERNEL_MAKE_ENV} $(MAKE) V=1 ${KERNEL_MAKE_OPTS} -j${ADK_MAKE_JOBS} LOCALVERSION="" $(KERNEL_TARGET) $(MAKE_TRACE) + ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} -j${ADK_MAKE_JOBS} LOCALVERSION="" $(KERNEL_TARGET) modules $(MAKE_TRACE) + touch -c $(LINUX_DIR)/$(KERNEL_FILE) + +$(LINUX_BUILD_DIR)/modules: $(LINUX_DIR)/$(KERNEL_FILE) $(TRACE) target/$(ADK_TARGET_ARCH)-kernel-modules-install rm -rf $(LINUX_BUILD_DIR)/modules ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} DEPMOD=true \ INSTALL_MOD_PATH=$(LINUX_BUILD_DIR)/modules \ LOCALVERSION="" \ - modules modules_install $(MAKE_TRACE) + modules_install $(MAKE_TRACE) $(TRACE) target/$(ADK_TARGET_ARCH)-create-packages ifneq ($(strip $(TARGETS)),) $(MAKE) $(TARGETS) endif - touch -c $(LINUX_DIR)/$(KERNEL_FILE) + +$(INSTALL_TARGETS): $(LINUX_BUILD_DIR)/modules prepare: -compile: $(LINUX_DIR)/$(KERNEL_FILE) -install: compile +compile: $(LINUX_BUILD_DIR)/modules +install: compile $(INSTALL_TARGETS) ifneq ($(strip $(INSTALL_TARGETS)),) $(TRACE) target/${ADK_TARGET_ARCH}-modules-install ifeq ($(ADK_TARGET_PACKAGE_IPKG),y) diff --git a/mk/modules.mk b/mk/modules.mk index 6015aadf0..428fe2700 100644 --- a/mk/modules.mk +++ b/mk/modules.mk @@ -1417,8 +1417,8 @@ $(eval $(call KMOD_template,BT_RFCOMM,bt-rfcomm,\ # Misc devices # -$(eval $(call KMOD_template,SOFTDOG,softdog,\ - $(MODULES_DIR)/kernel/drivers/char/watchdog/softdog \ +$(eval $(call KMOD_template,SOFT_WATCHDOG,soft-watchdog,\ + $(MODULES_DIR)/kernel/drivers/watchdog/softdog \ ,95)) $(eval $(call KMOD_template,FW_LOADER,fw-loader,\ diff --git a/mk/pkg-bottom.mk b/mk/pkg-bottom.mk index 941970cbc..3e454ee5a 100644 --- a/mk/pkg-bottom.mk +++ b/mk/pkg-bottom.mk @@ -213,11 +213,6 @@ endif touch $@ ${_IPKGS_COOKIE}: - @clean=0; \ - for f in ${ALL_IPKGS}; do \ - [[ -e $$f ]] && clean=1; \ - done; \ - [[ $$clean = 0 ]] || ${MAKE} clean exec ${MAKE} package package: ${ALL_IPKGS} diff --git a/package/musl/Makefile b/package/musl/Makefile index 3341c83a8..efb5404cb 100644 --- a/package/musl/Makefile +++ b/package/musl/Makefile @@ -55,13 +55,13 @@ endif # do nothing, musl is already build in toolchain directory do-install: - ${INSTALL_DIR} $(IDIR_MUSL)/usr/bin + ${INSTALL_DIR} $(IDIR_MUSL)/bin ${INSTALL_DIR} $(IDIR_MUSL)/$(ADK_TARGET_LIBC_PATH) $(CP) $(STAGING_TARGET_DIR)/usr/lib/libc.so $(IDIR_MUSL)/$(ADK_TARGET_LIBC_PATH) (cd $(IDIR_MUSL)/$(ADK_TARGET_LIBC_PATH) && \ ln -sf libc.so ld-musl-$(MARCH).so.1) - (cd $(IDIR_MUSL)/usr/bin && \ - ln -sf ../../lib/ld-musl-$(MARCH).so.1 ldd) + (cd $(IDIR_MUSL)/bin && \ + ln -sf ../lib/ld-musl-$(MARCH).so.1 ldd) musl-dev-install: diff --git a/target/linux/config/Config.in.watchdog b/target/linux/config/Config.in.watchdog index 08e884a01..4a727e7d6 100644 --- a/target/linux/config/Config.in.watchdog +++ b/target/linux/config/Config.in.watchdog @@ -73,7 +73,7 @@ config ADK_KERNEL_RC32434_WDT Routerboard 532's SoC, the IDT RC32434. config ADK_KPACKAGE_KMOD_SOFT_WATCHDOG - prompt "kmod-softdog...................... Software watchdog" + prompt "kmod-soft-watchdog...................... Software watchdog" tristate default n select ADK_KERNEL_WATCHDOG -- cgit v1.2.3