Add new package.
This commit is contained in:
parent
304aaeb181
commit
ea18cf815c
6
package/usbmount/Config.in
Normal file
6
package/usbmount/Config.in
Normal file
@ -0,0 +1,6 @@
|
||||
config BR2_PACKAGE_USBMOUNT
|
||||
bool "usbmount"
|
||||
default n
|
||||
help
|
||||
The usbmount package automatically mounts USB mass storage devices
|
||||
when they are plugged in, and unmounts them when they are removed.
|
43
package/usbmount/usbmount.mk
Normal file
43
package/usbmount/usbmount.mk
Normal file
@ -0,0 +1,43 @@
|
||||
#############################################################
|
||||
#
|
||||
# usbmount
|
||||
#
|
||||
#############################################################
|
||||
USBMOUNT_SOURCE:=usbmount_0.0.14.tar.gz
|
||||
USBMOUNT_SITE:=http://usbmount.alioth.debian.org/package/
|
||||
USBMOUNT_CAT:=$(ZCAT)
|
||||
USBMOUNT_DIR:=$(BUILD_DIR)/usbmount-0.0.14
|
||||
USBMOUNT_BINARY:=usbmount
|
||||
USBMOUNT_TARGET_BINARY:=sbin/usbmount
|
||||
|
||||
$(DL_DIR)/$(USBMOUNT_SOURCE):
|
||||
$(WGET) -P $(DL_DIR) $(USBMOUNT_SITE)/$(USBMOUNT_SOURCE)
|
||||
|
||||
$(USBMOUNT_DIR)/.unpacked: $(DL_DIR)/$(USBMOUNT_SOURCE)
|
||||
$(USBMOUNT_CAT) $(DL_DIR)/$(USBMOUNT_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
|
||||
toolchain/patch-kernel.sh $(USBMOUNT_DIR) package/usbmount \*.patch
|
||||
touch $(USBMOUNT_DIR)/.unpacked
|
||||
|
||||
$(TARGET_DIR)/$(USBMOUNT_TARGET_BINARY): $(USBMOUNT_DIR)/.unpacked
|
||||
$(INSTALL) -m 0755 -D $(USBMOUNT_DIR)/usbmount $(TARGET_DIR)/$(USBMOUNT_TARGET_BINARY)
|
||||
@if [ ! -f $(TARGET_DIR)/etc/usbmount/usbmount.conf ] ; then \
|
||||
$(INSTALL) -m 0644 -D $(USBMOUNT_DIR)/usbmount.conf $(TARGET_DIR)/etc/usbmount/usbmount.conf; \
|
||||
fi;
|
||||
|
||||
usbmount: uclibc $(TARGET_DIR)/$(USBMOUNT_TARGET_BINARY)
|
||||
|
||||
usbmount-clean:
|
||||
rm -f $(TARGET_DIR)/$(USBMOUNT_TARGET_BINARY)
|
||||
rm -rf $(TARGET_DIR)/etc/usbmount
|
||||
|
||||
usbmount-dirclean:
|
||||
rm -rf $(USBMOUNT_DIR)
|
||||
|
||||
#############################################################
|
||||
#
|
||||
# Toplevel Makefile options
|
||||
#
|
||||
#############################################################
|
||||
ifeq ($(strip $(BR2_PACKAGE_USBMOUNT)),y)
|
||||
TARGETS+=usbmount
|
||||
endif
|
87
package/usbmount/usbmount.patch
Normal file
87
package/usbmount/usbmount.patch
Normal file
@ -0,0 +1,87 @@
|
||||
diff -ur usbmount-0.0.14/usbmount usbmount-0.0.14-patched/usbmount
|
||||
--- usbmount-0.0.14/usbmount 2005-07-08 11:51:02.000000000 -0500
|
||||
+++ usbmount-0.0.14-patched/usbmount 2006-11-28 09:13:42.000000000 -0600
|
||||
@@ -11,16 +11,20 @@
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
+
|
||||
+#
|
||||
+# Changed to support config of logfile and vol_id and creating locks
|
||||
+# without the use of lockfile-create all for embedded use.
|
||||
+# Joshua D Henderson <jdhende1@rockwellcollins.com>
|
||||
#
|
||||
set -e
|
||||
exec > /dev/null 2>&1
|
||||
|
||||
-
|
||||
# Log a string via the syslog facility.
|
||||
log()
|
||||
{
|
||||
if test $1 != debug || expr "$VERBOSE" : "[yY]" > /dev/null; then
|
||||
- logger -p user.$1 -t "usbmount[$$]" -- "$2"
|
||||
+ echo "usbmount[$$] -- $2" >> $LOGFILE
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -37,7 +41,7 @@
|
||||
|
||||
|
||||
# Test if /sbin/vol_id is executable.
|
||||
-test -x /sbin/vol_id || { log err "cannnot execute /sbin/vol_id"; exit 1; }
|
||||
+test -x $VOLID || { log err "cannnot execute $VOLID"; exit 1; }
|
||||
|
||||
# Default values for configuration variables.
|
||||
MOUNTPOINTS=""
|
||||
@@ -57,11 +61,11 @@
|
||||
if test "$1" = add; then
|
||||
|
||||
# Acquire lock.
|
||||
- log debug "trying to acquire lock /var/run/usbmount/.mount.lock"
|
||||
- lockfile-create --retry 3 /var/run/usbmount/.mount || \
|
||||
- { log err "cannot acquire lock /var/run/usbmount/.mount.lock"; exit 1; }
|
||||
- trap '( lockfile-remove /var/run/usbmount/.mount )' 0
|
||||
- log debug "acquired lock /var/run/usbmount/.mount.lock"
|
||||
+# log debug "trying to acquire lock /var/lock/usbmount/.mount.lock"
|
||||
+# lockfile-create --retry 3 /var/lock/usbmount/.mount || \
|
||||
+# { log err "cannot acquire lock /var/lock/usbmount/.mount.lock"; exit 1; }
|
||||
+# trap '( lockfile-remove /var/lock/usbmount/.mount )' 0
|
||||
+# log debug "acquired lock /var/lock/usbmount/.mount.lock"
|
||||
|
||||
# Try to read from the device. Some devices need a few seconds
|
||||
# initialization time before they can be accessed. Give up after
|
||||
@@ -85,10 +89,10 @@
|
||||
# Test if the device contains a filesystem. If it doesn't, no
|
||||
# further action is required, but calling vol_id has the side effect
|
||||
# that the partition table is read and partition devices are created.
|
||||
- if /sbin/vol_id "$DEVNAME" | egrep -q '^ID_FS_USAGE=(filesystem|disklabel)$'; then
|
||||
+ if $VOLID "$DEVNAME" | egrep -q '^ID_FS_USAGE=(filesystem|disklabel)$'; then
|
||||
log debug "$DEVNAME contains a filesystem or disklabel"
|
||||
|
||||
- fstype="`/sbin/vol_id -t \"$DEVNAME\"`"
|
||||
+ fstype="`$VOLID -t \"$DEVNAME\"`"
|
||||
log debug "$DEVNAME contains filesystem type $fstype"
|
||||
|
||||
# Test if the filesystem type is in the list of filesystem
|
||||
diff -ur usbmount-0.0.14/usbmount.conf usbmount-0.0.14-patched/usbmount.conf
|
||||
--- usbmount-0.0.14/usbmount.conf 2005-04-08 09:05:10.000000000 -0500
|
||||
+++ usbmount-0.0.14-patched/usbmount.conf 2006-11-28 09:14:52.000000000 -0600
|
||||
@@ -17,7 +17,7 @@
|
||||
# sure all data is written to the medium before you remove it (e.g. run the #
|
||||
# "sync" command in a terminal window). Otherwise, you *WILL* lose data! #
|
||||
#############################################################################
|
||||
-FILESYSTEMS="ext2 ext3"
|
||||
+FILESYSTEMS="ext2 ext3 vfat msdos"
|
||||
|
||||
# Mount options: Options passed to the mount command with the -o flag.
|
||||
# WARNING! Removing "sync" from the options is a very bad idea and
|
||||
@@ -35,3 +35,9 @@
|
||||
# If set to "yes", more information will be logged via the syslog
|
||||
# facility.
|
||||
VERBOSE="no"
|
||||
+
|
||||
+# Location of vol_id
|
||||
+VOLID="/lib/udev/vol_id"
|
||||
+
|
||||
+# Location of the log file when verbose is Yes
|
||||
+LOGFILE="/var/log/usbmount.log"
|
Loading…
Reference in New Issue
Block a user