From 7b62f2c4658db72692886bb116bc2665d45f84ff Mon Sep 17 00:00:00 2001 From: swalker Date: Fri, 9 Mar 2012 01:11:17 +0000 Subject: [PATCH] [packages] dosfstools: update to 3.0.12, add fsck script (#10697) git-svn-id: svn://svn.openwrt.org/openwrt/packages@30858 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- utils/dosfstools/Makefile | 10 +++++--- utils/dosfstools/files/dosfsck.sh | 30 ++++++++++++++++++++++ .../dosfstools/patches/002-linux_26_headers.patch | 24 ++++++++--------- 3 files changed, 47 insertions(+), 17 deletions(-) create mode 100644 utils/dosfstools/files/dosfsck.sh diff --git a/utils/dosfstools/Makefile b/utils/dosfstools/Makefile index cf32d8484..031cb85d7 100644 --- a/utils/dosfstools/Makefile +++ b/utils/dosfstools/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2011 OpenWrt.org +# Copyright (C) 2006-2012 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=dosfstools -PKG_VERSION:=3.0.11 +PKG_VERSION:=3.0.12 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.daniel-baumann.ch/software/dosfstools -PKG_MD5SUM:=8d2211d5bd813164e20740e7c852aa06 +PKG_MD5SUM:=4c1f1e72b82371704f93ebdd3c7b6259 include $(INCLUDE_DIR)/package.mk @@ -73,6 +73,8 @@ define Build/Compile endef define Package/dosfsck/install + $(INSTALL_DIR) $(1)/lib/functions/fsck + $(INSTALL_DATA) ./files/dosfsck.sh $(1)/lib/functions/fsck/ $(INSTALL_DIR) $(1)/usr/sbin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/dosfsck $(1)/usr/sbin/ (cd $(1)/usr/sbin; ln -sf dosfsck fsck.msdos; ln -sf dosfsck fsck.vfat) diff --git a/utils/dosfstools/files/dosfsck.sh b/utils/dosfstools/files/dosfsck.sh new file mode 100644 index 000000000..bcc29b95a --- /dev/null +++ b/utils/dosfstools/files/dosfsck.sh @@ -0,0 +1,30 @@ +#!/bin/sh +# Copyright 2010 Vertical Communications +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +fsck_dosfsck() { + dosfsck -p "$device" 2>&1 | logger -t "fstab: dosfsck ($device)" + local status="$?" + case "$status" in + 0|1) ;; #success + 2) reboot;; + 4) echo "dosfsck ($device): Warning! Uncorrected errors."| logger -t fstab + return 1 + ;; + *) echo "dosfsck ($device): Error $status. Check not complete."| logger -t fstab;; + esac + return 0 +} + +fsck_dos() { + fsck_dosfsck "$@" +} + +fsck_vfat() { + fsck_dosfsck "$@" +} + +append libmount_known_fsck "dos" +append libmount_known_fsck "vfat" diff --git a/utils/dosfstools/patches/002-linux_26_headers.patch b/utils/dosfstools/patches/002-linux_26_headers.patch index c4d506f30..b55a7c83c 100644 --- a/utils/dosfstools/patches/002-linux_26_headers.patch +++ b/utils/dosfstools/patches/002-linux_26_headers.patch @@ -4,31 +4,29 @@ can be found in /usr/share/common-licenses/GPL-3 file. */ --# include +-#include +#include #ifndef _COMMON_H #define _COMMON_H --- a/src/dosfsck.h +++ b/src/dosfsck.h -@@ -32,8 +32,8 @@ - #define _LINUX_STRING_H_ /* hack to avoid inclusion of */ - #define _LINUX_FS_H /* hack to avoid inclusion of */ +@@ -31,7 +31,7 @@ + #define _LINUX_STRING_H_ /* hack to avoid inclusion of */ + #define _LINUX_FS_H /* hack to avoid inclusion of */ --# include --# include +-#include +#include -+#include + #include #include - --- a/src/file.c +++ b/src/file.c -@@ -34,7 +34,7 @@ - #define _LINUX_STRING_H_ /* hack to avoid inclusion of */ - #define _LINUX_FS_H /* hack to avoid inclusion of */ +@@ -33,7 +33,7 @@ + #define _LINUX_STRING_H_ /* hack to avoid inclusion of */ + #define _LINUX_FS_H /* hack to avoid inclusion of */ --# include +-#include +#include #include @@ -49,7 +47,7 @@ #include #include --# include +-#include +#include #if __BYTE_ORDER == __BIG_ENDIAN -- 2.11.0