aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMirko Vogt <mirko@openwrt.org>2012-04-28 19:54:54 +0000
committerMirko Vogt <mirko@openwrt.org>2012-04-28 19:54:54 +0000
commit90f58064bec669ccc9ddfb2db17c87f1182442be (patch)
tree654ff5a33300bfc219aa01802d8dda4cedbc1e5d
parent1a0ef042317fd83f0fc8cc9ffd434a3419bc5301 (diff)
downloadupstream-90f58064bec669ccc9ddfb2db17c87f1182442be.tar.gz
upstream-90f58064bec669ccc9ddfb2db17c87f1182442be.tar.bz2
upstream-90f58064bec669ccc9ddfb2db17c87f1182442be.zip
update/rename those packages
This patch makes several changes to the util-linux(-ng) package: * rename to util-linux (official name now, util-linux-ng got merged) * bump to last stable version 2.21.1 (was 2.13.0.1 before) * add several new packages * sort packages within Makefile * remove patches which got merged upstream This patch makes some changes to the e2fsprogs package: * bump to last stable version 1.42.2 * libraries moved from e2fsprogs to util-linux - take care of that Signed-off-by: Luka Perkov <openwrt@lukaperkov.net> SVN-Revision: 31499
-rw-r--r--package/e2fsprogs/Makefile83
-rw-r--r--package/e2fsprogs/patches/000-uclibc_compile_fix.patch15
-rw-r--r--package/e2fsprogs/patches/100-upstream_fix.patch22
-rw-r--r--package/util-linux-ng/Makefile204
-rw-r--r--package/util-linux-ng/patches/001-cris_avr32_label.patch11
-rw-r--r--package/util-linux/Makefile563
-rw-r--r--package/util-linux/patches/000-compile.patch44
7 files changed, 616 insertions, 326 deletions
diff --git a/package/e2fsprogs/Makefile b/package/e2fsprogs/Makefile
index 79ab92c737..6b281c0f59 100644
--- a/package/e2fsprogs/Makefile
+++ b/package/e2fsprogs/Makefile
@@ -8,13 +8,14 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=e2fsprogs
-PKG_VERSION:=1.42
-PKG_MD5SUM:=a3c4ffd7352310ab5e9412965d575610
-PKG_RELEASE:=2
+PKG_VERSION:=1.42.2
+PKG_MD5SUM:=04f4561a54ad0419248316a00c016baa
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/e2fsprogs
+PKG_BUILD_DEPENDS:=util-linux
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
@@ -38,42 +39,6 @@ define Package/e2fsprogs/description
filesystem utilities.
endef
-define Package/libuuid
-$(call Package/e2fsprogs/Default)
- SECTION:=libs
- CATEGORY:=Libraries
- TITLE:=DCE compatible Universally Unique Identifier library
-endef
-
-define Package/libuuid/description
- Library for generating DCE compatible Universally Unique Identifiers.
-endef
-
-define Package/uuidgen
-$(call Package/e2fsprogs)
- DEPENDS:=+libuuid
- TITLE:=Command line utility to create a new UUID value
-endef
-
-define Package/uuidgen/description
- uuidgen program creates a new universally unique identifier (UUID)
- using the libuuid library. The new UUID can reasonably be considered
- unique among all UUIDs created on the local system, and among UUIDs
- created on other systems in the past and in the future.
-endef
-
-define Package/libblkid
-$(call Package/e2fsprogs/Default)
- SECTION:=libs
- CATEGORY:=Libraries
- TITLE:=Block device id library
-endef
-
-define Package/libblkid/description
- The blkid library which allows system programs like fsck and mount to
- quickly and easily find block devices by filesystem UUID and LABEL.
-endef
-
define Package/libext2fs
$(call Package/e2fsprogs/Default)
SECTION:=libs
@@ -82,7 +47,7 @@ $(call Package/e2fsprogs/Default)
endef
define Package/libext2fs/description
-libext2fs is a library which can access ext2, ext3 and ext4 filesystems.
+ libext2fs is a library which can access ext2, ext3 and ext4 filesystems.
endef
define Package/libcom_err
@@ -93,7 +58,7 @@ $(call Package/e2fsprogs/Default)
endef
define Package/libcom_err/description
-libcom_err is a library providing common error descriptions
+ libcom_err is a library providing common error descriptions
endef
define Package/tune2fs
@@ -114,18 +79,12 @@ $(call Package/e2fsprogs)
DEPENDS:= +e2fsprogs
endef
-define Package/blkid
-$(call Package/e2fsprogs)
- TITLE:=Command-line utility to locate/print block device attributes
- DEPENDS:=+libuuid +libblkid +libext2fs +libcom_err +libpthread
-endef
-
TARGET_CFLAGS += $(FPIC)
CONFIGURE_ARGS += \
- --enable-elf-shlibs \
- --disable-tls \
- --disable-nls \
+ --enable-elf-shlibs \
+ --disable-tls \
+ --disable-nls \
--disable-rpath
define Build/Prepare
@@ -177,21 +136,6 @@ define Package/libcom_err/install
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libcom_err.so.* $(1)/usr/lib/
endef
-define Package/libuuid/install
- $(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libuuid.so.* $(1)/usr/lib/
-endef
-
-define Package/uuidgen/install
- $(INSTALL_DIR) $(1)/usr/bin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/uuidgen $(1)/usr/bin/
-endef
-
-define Package/libblkid/install
- $(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libblkid.so.* $(1)/usr/lib/
-endef
-
define Package/libext2fs/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libext2fs.so.* $(1)/usr/lib/
@@ -212,18 +156,9 @@ define Package/badblocks/install
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/badblocks $(1)/usr/sbin/
endef
-define Package/blkid/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/blkid $(1)/usr/sbin/
-endef
-
$(eval $(call BuildPackage,e2fsprogs))
-$(eval $(call BuildPackage,libuuid))
-$(eval $(call BuildPackage,uuidgen))
-$(eval $(call BuildPackage,libblkid))
$(eval $(call BuildPackage,libext2fs))
$(eval $(call BuildPackage,libcom_err))
$(eval $(call BuildPackage,tune2fs))
$(eval $(call BuildPackage,resize2fs))
$(eval $(call BuildPackage,badblocks))
-$(eval $(call BuildPackage,blkid))
diff --git a/package/e2fsprogs/patches/000-uclibc_compile_fix.patch b/package/e2fsprogs/patches/000-uclibc_compile_fix.patch
deleted file mode 100644
index a2e8e428e1..0000000000
--- a/package/e2fsprogs/patches/000-uclibc_compile_fix.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Without this patch compiling e2fsprogs 1.42 fails in the case the linux
-kernel headers provide linux/falloc.h but the libc is not implementing
-fallocate() as it is still the case with latest versions of uClibc.
-
---- a/lib/ext2fs/unix_io.c
-+++ b/lib/ext2fs/unix_io.c
-@@ -895,7 +895,7 @@ static errcode_t unix_discard(io_channel
- goto unimplemented;
- #endif
- } else {
--#ifdef FALLOC_FL_PUNCH_HOLE
-+#if defined HAVE_FALLOCATE && defined FALLOC_FL_PUNCH_HOLE
- /*
- * If we are not on block device, try to use punch hole
- * to reclaim free space.
diff --git a/package/e2fsprogs/patches/100-upstream_fix.patch b/package/e2fsprogs/patches/100-upstream_fix.patch
deleted file mode 100644
index 48555a5e46..0000000000
--- a/package/e2fsprogs/patches/100-upstream_fix.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/e2fsck/pass1.c
-+++ b/e2fsck/pass1.c
-@@ -545,7 +545,7 @@ void e2fsck_pass1(e2fsck_t ctx)
- int i;
- __u64 max_sizes;
- ext2_filsys fs = ctx->fs;
-- ext2_ino_t ino;
-+ ext2_ino_t ino = 0;
- struct ext2_inode *inode;
- ext2_inode_scan scan;
- char *block_buf;
---- a/e2fsck/pass1b.c
-+++ b/e2fsck/pass1b.c
-@@ -267,7 +267,7 @@ struct process_block_struct {
- static void pass1b(e2fsck_t ctx, char *block_buf)
- {
- ext2_filsys fs = ctx->fs;
-- ext2_ino_t ino;
-+ ext2_ino_t ino = 0;
- struct ext2_inode inode;
- ext2_inode_scan scan;
- struct process_block_struct pb;
diff --git a/package/util-linux-ng/Makefile b/package/util-linux-ng/Makefile
deleted file mode 100644
index 0e1ac928be..0000000000
--- a/package/util-linux-ng/Makefile
+++ /dev/null
@@ -1,204 +0,0 @@
-#
-# Copyright (C) 2007-2010 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
-
-include $(TOPDIR)/rules.mk
-
-PKG_NAME:=util-linux-ng
-PKG_VERSION:=2.13.0.1
-PKG_RELEASE:=4
-
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=@KERNEL/linux/utils/$(PKG_NAME)/v2.13
-PKG_MD5SUM:=c841dc8743905c8f0db20c9db5094f57
-
-PKG_BUILD_DEPENDS=e2fsprogs libncurses
-
-include $(INCLUDE_DIR)/package.mk
-
-define Package/util-linux/Default
- SECTION:=utils
- CATEGORY:=Utilities
- URL:=http://www.kernel.org/pub/linux/utils/util-linux-ng/
-endef
-
-define Package/fdisk
-$(call Package/util-linux/Default)
- TITLE:=Partition table manipulation utility
- SUBMENU=disc
-endef
-
-define Package/fdisk/description
- This package contains a utility for managing disk partition tables.
-endef
-
-define Package/cfdisk
-$(call Package/util-linux/Default)
- SUBMENU:=disc
- TITLE:=Partition table manipulation utility
- DEPENDS:= +libncurses
-endef
-
-define Package/cfdisk/description
- This package contains a utility for managing disk partition tables.
-endef
-
-define Package/sfdisk
-$(call Package/util-linux/Default)
- TITLE:=Partition table manipulation utility (Command-line)
- SUBMENU=disc
-endef
-
-define Package/sfdisk/description
- This package contains a utility for managing disk partition tables using command-line only.
-endef
-
-define Package/losetup
-$(call Package/util-linux/Default)
- TITLE:=Loopback devices setup and control utility
-endef
-
-define Package/losetup/description
- This package contains a utility for managing loopback devices.
-endef
-
-define Package/mount-utils
-$(call Package/util-linux/Default)
- TITLE:=Devices mount/unmounting utilities
- DEPENDS+= +libblkid +libuuid
-endef
-
-define Package/mount-utils/description
- This package contains utilities to mount/unmount devices.
-endef
-
-define Package/swap-utils
-$(call Package/util-linux/Default)
- SUBMENU:=disc
- TITLE:=Swap space management utilities
- DEPENDS+= +libblkid +libuuid
-endef
-
-define Package/swap-utils/description
- This package contains a collection of tools for managing swap space:
- - mkswap
- - swapon
- - swapoff
-endef
-
-define Package/hwclock
-$(call Package/util-linux/Default)
- TITLE:=Utilities for managing the hardware clock
-endef
-
-define Package/hwclock/description
- This package contains a utility for managing the hardware clock.
-endef
-
-define Package/flock
-$(call Package/util-linux/Default)
- TITLE:=Manage file locks from shell scripts
-endef
-
-define Package/flock/description
- This package contains a utility for managing file locks from shell scripts.
-endef
-
-define Package/setterm
-$(call Package/util-linux/Default)
- TITLE:=Tool for setting terminal attributes
- SUBMENU:=Terminal
- DEPENDS:= +libncurses
-endef
-
-define Package/setterm/description
- This package contains a utility for setting terminal attributes
-endef
-
-define Package/script
-$(call Package/util-linux/Default)
- TITLE:=Make typescript of terminal session
- SUBMENU=Terminal
-endef
-
-define Package/script/description
- Script makes a typescript of everything printed on your terminal.
- http://linux.die.net/man/1/script
-endef
-
-
-define Build/Compile
- $(MAKE) -C $(PKG_BUILD_DIR)/disk-utils mkswap
- $(MAKE) -C $(PKG_BUILD_DIR)/mount swapon losetup umount mount
- $(MAKE) -C $(PKG_BUILD_DIR)/fdisk fdisk cfdisk sfdisk
- $(MAKE) -C $(PKG_BUILD_DIR)/hwclock hwclock
- $(MAKE) -C $(PKG_BUILD_DIR)/sys-utils flock
- $(MAKE) -C $(PKG_BUILD_DIR)/misc-utils setterm
- $(MAKE) -C $(PKG_BUILD_DIR)/misc-utils script
-endef
-
-define Package/fdisk/install
- $(INSTALL_DIR) $(1)/sbin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/fdisk/fdisk $(1)/sbin/
-endef
-
-define Package/cfdisk/install
- $(INSTALL_DIR) $(1)/sbin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/fdisk/cfdisk $(1)/sbin/
-endef
-
-define Package/sfdisk/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/fdisk/sfdisk $(1)/usr/sbin/
-endef
-
-define Package/losetup/install
- $(INSTALL_DIR) $(1)/sbin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/mount/losetup $(1)/sbin/
-endef
-
-define Package/mount-utils/install
- $(INSTALL_DIR) $(1)/bin/
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/mount/{u,}mount $(1)/bin
-endef
-
-define Package/swap-utils/install
- $(INSTALL_DIR) $(1)/sbin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/disk-utils/mkswap $(PKG_BUILD_DIR)/mount/swapon $(1)/sbin/
- ln -sf swapon $(1)/sbin/swapoff
-endef
-
-define Package/hwclock/install
- $(INSTALL_DIR) $(1)/sbin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/hwclock/hwclock $(1)/sbin/
-endef
-
-define Package/flock/install
- $(INSTALL_DIR) $(1)/usr/bin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/sys-utils/flock $(1)/usr/bin/
-endef
-
-define Package/setterm/install
- $(INSTALL_DIR) $(1)/usr/bin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/setterm $(1)/usr/bin/
-endef
-
-define Package/script/install
- $(INSTALL_DIR) $(1)/usr/bin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/script $(1)/usr/bin/
-endef
-
-
-$(eval $(call BuildPackage,fdisk))
-$(eval $(call BuildPackage,cfdisk))
-$(eval $(call BuildPackage,sfdisk))
-$(eval $(call BuildPackage,losetup))
-$(eval $(call BuildPackage,mount-utils))
-$(eval $(call BuildPackage,swap-utils))
-$(eval $(call BuildPackage,hwclock))
-$(eval $(call BuildPackage,flock))
-$(eval $(call BuildPackage,setterm))
-$(eval $(call BuildPackage,script))
diff --git a/package/util-linux-ng/patches/001-cris_avr32_label.patch b/package/util-linux-ng/patches/001-cris_avr32_label.patch
deleted file mode 100644
index 5b600623c4..0000000000
--- a/package/util-linux-ng/patches/001-cris_avr32_label.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/fdisk/fdiskbsdlabel.h
-+++ b/fdisk/fdiskbsdlabel.h
-@@ -46,7 +46,7 @@
-
- #define BSD_LINUX_BOOTDIR "/usr/ucb/mdec"
-
--#if defined (i386) || defined (__sparc__) || defined (__arm__) || defined (__mips__) || defined (__s390__) || defined (__sh__) || defined(__x86_64__)
-+#if defined (i386) || defined (__sparc__) || defined (__arm__) || defined (__mips__) || defined (__s390__) || defined (__sh__) || defined(__x86_64__) || defined (__cris__) || defined(__avr32__)
- #define BSD_LABELSECTOR 1
- #define BSD_LABELOFFSET 0
- #elif defined (__alpha__) || defined (__powerpc__) || defined (__ia64__) || defined (__hppa__)
diff --git a/package/util-linux/Makefile b/package/util-linux/Makefile
new file mode 100644
index 0000000000..aa45dd0622
--- /dev/null
+++ b/package/util-linux/Makefile
@@ -0,0 +1,563 @@
+#
+# Copyright (C) 2007-2012 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=util-linux
+PKG_VERSION:=2.21.1
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
+PKG_SOURCE_URL:=@KERNEL/linux/utils/$(PKG_NAME)/v2.21
+PKG_MD5SUM:=ad602dcd528f340b1329cfa6200d8f80
+
+PKG_BUILD_PARALLEL:=1
+PKG_BUILD_DEPENDS:=libncurses
+PKG_FIXUP:=autoreconf
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/util-linux/Default
+ SECTION:=utils
+ CATEGORY:=Utilities
+ URL:=http://www.kernel.org/pub/linux/utils/util-linux/
+endef
+
+CONFIGURE_VARS += \
+ scanf_cv_alloc_modifier="ms"
+
+CONFIGURE_ARGS += \
+ --enable-new-mount \
+ --with-ncurses \
+ --disable-nls \
+ --disable-tls
+
+define Package/libblkid
+$(call Package/util-linux/Default)
+ TITLE:=block device id library
+ SECTION:=libs
+ CATEGORY:=Libraries
+endef
+
+define Package/libblkid/description
+ The libblkid library is used to identify block devices (disks) as to their
+ content (e.g. filesystem type, partitions) as well as extracting additional
+ information such as filesystem labels/volume names, partitions, unique
+ identifiers/serial numbers...
+endef
+
+define Package/libmount
+$(call Package/util-linux/Default)
+ TITLE:=mount library
+ SECTION:=libs
+ CATEGORY:=Libraries
+endef
+
+define Package/libblkid/description
+ The libmount library is used to parse /etc/fstab, /etc/mtab and
+ /proc/self/mountinfo files, manage the mtab file, evaluate mount options...
+endef
+
+define Package/libuuid
+$(call Package/util-linux/Default)
+ TITLE:=DCE compatible Universally Unique Identifier library
+ SECTION:=libs
+ CATEGORY:=Libraries
+endef
+
+define Package/libuuid/description
+ The UUID library is used to generate unique identifiers for objects
+ that may be accessible beyond the local system. This library
+ generates UUIDs compatible with those created by the Open Software
+ Foundation (OSF) Distributed Computing Environment (DCE) utility.
+endef
+
+define Package/agetty
+$(call Package/util-linux/Default)
+ TITLE:=alternative Linux getty
+ SUBMENU=Terminal
+endef
+
+define Package/agetty/description
+ agetty opens a tty port, prompts for a login name and invokes the
+ /bin/login command
+endef
+
+define Package/blkid
+$(call Package/util-linux/Default)
+ TITLE:=locate/print block device attributes
+ DEPENDS:= +libblkid +libuuid
+ SUBMENU=disc
+endef
+
+define Package/blkid/description
+ The blkid program is the command-line interface to working with the libblkid
+ library.
+endef
+
+define Package/cal
+$(call Package/util-linux/Default)
+ TITLE:=display a calendar
+ DEPENDS:= +libncurses
+endef
+
+define Package/cal/description
+ cal displays a simple calendar
+endef
+
+define Package/cfdisk
+$(call Package/util-linux/Default)
+ TITLE:=display or manipulate disk partition table
+ DEPENDS:= +libblkid +libncurses +libuuid
+ SUBMENU:=disc
+endef
+
+define Package/cfdisk/description
+ cfdisk is a curses-based program for partitioning any hard disk drive
+endef
+
+define Package/dmesg
+$(call Package/util-linux/Default)
+ TITLE:=print or control the kernel ring buffer
+endef
+
+define Package/dmesg/description
+ dmesg is used to examine or control the kernel ring buffer
+endef
+
+define Package/fdisk
+$(call Package/util-linux/Default)
+ TITLE:=manipulate disk partition table
+ DEPENDS:= +libblkid +libuuid
+ SUBMENU=disc
+endef
+
+define Package/fdisk/description
+ a menu-driven program for creation and manipulation of partition tables
+endef
+
+define Package/findfs
+$(call Package/util-linux/Default)
+ TITLE:=find a filesystem by label or UUID
+ DEPENDS:= +libblkid +libuuid
+ SUBMENU=disc
+endef
+
+define Package/findfs/description
+ findfs will search the disks in the system looking for a filesystem which has
+ a label matching label or a UUID equal to uuid
+endef
+
+define Package/flock
+$(call Package/util-linux/Default)
+ TITLE:=manage locks from shell scripts
+endef
+
+define Package/flock/description
+ manages flock locks from within shell scripts or the command line
+endef
+
+define Package/getopt
+$(call Package/util-linux/Default)
+ TITLE:=parse command options (enhanced)
+endef
+
+define Package/getopt/description
+ getopt is used to break up (parse) options in command lines for easy parsing
+ by shell procedures, and to check for legal options
+endef
+
+define Package/hwclock
+$(call Package/util-linux/Default)
+ TITLE:=query or set the hardware clock
+endef
+
+define Package/hwclock/description
+ hwclock is a tool for accessing the Hardware Clock
+endef
+
+define Package/logger
+$(call Package/util-linux/Default)
+ TITLE:=a shell command interface to the syslog system log module
+endef
+
+define Package/logger/description
+ logger makes entries in the system log, it provides a shell command interface to the syslog system log module
+endef
+
+define Package/look
+$(call Package/util-linux/Default)
+ TITLE:=display lines beginning with a given string
+endef
+
+define Package/look/description
+ look utility displays any lines in file which contain string
+endef
+
+define Package/losetup
+$(call Package/util-linux/Default)
+ TITLE:=set up and control loop devices
+endef
+
+define Package/losetup/description
+ losetup is used to associate loop devices with regular files or block devices,
+ to detach loop devices and to query the status of a loop device
+endef
+
+define Package/lsblk
+$(call Package/util-linux/Default)
+ TITLE:=list block devices
+ DEPENDS:= +libblkid +libuuid
+ SUBMENU=disc
+endef
+
+define Package/lsblk/description
+ lsblk lists information about all or the specified block devices
+endef
+
+define Package/mcookie
+$(call Package/util-linux/Default)
+ TITLE:=generate magic cookies for xauth
+endef
+
+define Package/mcookie/description
+ mcookie generates a 128-bit random hexadecimal number for use with the X
+ authority system
+endef
+
+define Package/mount-utils
+$(call Package/util-linux/Default)
+ TITLE:=related (u)mount utilities
+ DEPENDS+= +libblkid +libmount +libuuid
+endef
+
+define Package/mount-utils/description
+ contains: mount, umount, findmnt
+endef
+
+define Package/namei
+$(call Package/util-linux/Default)
+ TITLE:=follow a pathname until a terminal point is found
+endef
+
+define Package/namei/description
+ namei uses its arguments as pathnames to any type of Unix file (symlinks,
+ files, directories, and so forth)
+endef
+
+define Package/rename
+$(call Package/util-linux/Default)
+ TITLE:=rename files
+endef
+
+define Package/rename/description
+ rename will rename the specified files by replacing the first occurrence of
+ expression in their name by replacement
+endef
+
+define Package/partx-utils
+$(call Package/util-linux/Default)
+ TITLE:=inform kernel about the presence and numbering of on-disk partitions
+ DEPENDS:= +libblkid +libuuid
+ SUBMENU=disc
+endef
+
+define Package/partx-utils/description
+ contains partx, addpart, delpart
+endef
+
+define Package/script-utils
+$(call Package/util-linux/Default)
+ TITLE:=make and replay typescript of terminal session
+ SUBMENU=Terminal
+endef
+
+define Package/script-utils/description
+ contains: script, scriptreplay
+endef
+
+define Package/setterm
+$(call Package/util-linux/Default)
+ TITLE:=set terminal attributes
+ SUBMENU:=Terminal
+endef
+
+define Package/setterm/description
+ setterm writes to standard output a character string that will invoke the
+ specified terminal capabilities
+endef
+
+define Package/sfdisk
+$(call Package/util-linux/Default)
+ TITLE:=partition table manipulator for Linux
+ SUBMENU=disc
+endef
+
+define Package/sfdisk/description
+ list the size of a partition, list the partitions on a device, check the
+ partitions on a device and repartition a device
+endef
+
+define Package/swap-utils
+$(call Package/util-linux/Default)
+ TITLE:=swap space management utilities
+ DEPENDS+= +libblkid +libuuid
+ SUBMENU:=disc
+endef
+
+define Package/swap-utils/description
+ contains: mkswap, swaplabel, swapon, swapoff
+endef
+
+define Package/uuidd
+$(call Package/util-linux/Default)
+ TITLE:=UUID generation daemon
+ DEPENDS:= +libuuid
+endef
+
+define Package/uuidd/description
+ The uuidd daemon is used by the UUID library to generate universally unique
+ identifiers (UUIDs), especially time-based UUIDs, in a secure and
+ guaranteed-unique fashion, even in the face of large numbers of threads
+ running on different CPUs trying to grab UUIDs.
+endef
+
+define Package/uuidgen
+$(call Package/util-linux/Default)
+ TITLE:=create a new UUID value
+ DEPENDS:= +libuuid
+endef
+
+define Package/uuidgen/description
+ The uuidgen program creates (and prints) a new universally unique identifier
+ (UUID) using the libuuid library. The new UUID can reasonably be considered
+ unique among all UUIDs created on the local system, and among UUIDs created on
+ other systems in the past and in the future.
+endef
+
+define Package/wall
+$(call Package/util-linux/Default)
+ TITLE:=send a message to everybody's terminal
+ SUBMENU=Terminal
+endef
+
+define Package/wall/description
+ Wall sends a message to everybody logged in with their mesg permission
+ set to yes
+endef
+
+define Package/whereis
+$(call Package/util-linux/Default)
+ TITLE:=locate the binary, source, and manual page files for a command
+endef
+
+define Package/wipefs/description
+ whereis locates source/binary and manuals sections for specified files
+endef
+
+define Package/wipefs
+$(call Package/util-linux/Default)
+ TITLE:=wipe a signature from a device
+ DEPENDS:= +libblkid +libuuid
+ SUBMENU:=disc
+endef
+
+define Package/wipefs/description
+ wipefs can erase filesystem, raid or partition table signatures (magic
+ strings) from the specified device to make the signature invisible for
+ libblkid.
+endef
+
+define Package/libblkid/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_BUILD_DIR)/libblkid/src/.libs/libblkid.so.* $(1)/usr/lib/
+endef
+
+define Package/libmount/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_BUILD_DIR)/libmount/src/.libs/libmount.so.* $(1)/usr/lib/
+endef
+
+define Package/libuuid/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_BUILD_DIR)/libuuid/src/.libs/libuuid.so.* $(1)/usr/lib/
+endef
+
+define Package/agetty/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/term-utils/agetty $(1)/sbin/
+endef
+
+define Package/blkid/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/.libs/blkid $(1)/sbin/
+endef
+
+define Package/cal/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/cal $(1)/usr/bin/
+endef
+
+define Package/cfdisk/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/fdisk/.libs/cfdisk $(1)/sbin/
+endef
+
+define Package/fdisk/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/fdisk/.libs/fdisk $(1)/sbin/
+endef
+
+define Package/findfs/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/.libs/findfs $(1)/sbin/
+endef
+
+define Package/flock/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/sys-utils/flock $(1)/usr/bin/
+endef
+
+define Package/getopt/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/getopt/getopt $(1)/usr/bin/
+endef
+
+define Package/hwclock/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/hwclock/hwclock $(1)/sbin/
+endef
+
+define Package/logger/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/logger $(1)/usr/bin/
+endef
+
+define Package/look/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/look $(1)/usr/bin/
+endef
+
+define Package/losetup/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/sys-utils/losetup $(1)/sbin/
+endef
+
+define Package/lsblk/install
+ $(INSTALL_DIR) $(1)/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/.libs/lsblk $(1)/bin/
+endef
+
+define Package/mcookie/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/mcookie $(1)/usr/bin/
+endef
+
+define Package/mount-utils/install
+ $(INSTALL_DIR) $(1)/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/sys-utils/.libs/{u,}mount $(1)/bin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/sys-utils/.libs/mountpoint $(1)/bin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/.libs/findmnt $(1)/bin/
+endef
+
+define Package/namei/install
+ $(INSTALL_DIR) $(1)/usr/bin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/namei $(1)/usr/bin/
+endef
+
+define Package/rename/install
+ $(INSTALL_DIR) $(1)/usr/bin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/rename $(1)/usr/bin/
+endef
+
+define Package/partx-utils/install
+ $(INSTALL_DIR) $(1)/usr/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/partx/.libs/partx $(1)/usr/sbin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/partx/addpart $(1)/usr/sbin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/partx/delpart $(1)/usr/sbin/
+endef
+
+define Package/script-utils/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/term-utils/script $(1)/usr/bin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/term-utils/scriptreplay $(1)/usr/bin/
+endef
+
+define Package/setterm/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/term-utils/setterm $(1)/usr/bin/
+endef
+
+define Package/sfdisk/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/fdisk/sfdisk $(1)/sbin/
+endef
+
+define Package/swap-utils/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/disk-utils/.libs/mkswap $(1)/sbin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/disk-utils/.libs/swaplabel $(1)/sbin/
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/sys-utils/.libs/swapon $(1)/sbin/
+ ln -sf swapon $(1)/sbin/swapoff
+endef
+
+define Package/uuidd/install
+ $(INSTALL_DIR) $(1)/usr/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/.libs/uuidd $(1)/usr/sbin/
+endef
+
+define Package/uuidgen/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/.libs/uuidgen $(1)/usr/bin/
+endef
+
+define Package/wall/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/term-utils/wall $(1)/usr/bin/
+endef
+
+define Package/whereis/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/whereis $(1)/usr/bin/
+endef
+
+define Package/wipefs/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/misc-utils/.libs/wipefs $(1)/sbin/
+endef
+
+$(eval $(call BuildPackage,libblkid))
+$(eval $(call BuildPackage,libmount))
+$(eval $(call BuildPackage,libuuid))
+$(eval $(call BuildPackage,agetty))
+$(eval $(call BuildPackage,blkid))
+$(eval $(call BuildPackage,cal))
+$(eval $(call BuildPackage,cfdisk))
+$(eval $(call BuildPackage,dmesg))
+$(eval $(call BuildPackage,fdisk))
+$(eval $(call BuildPackage,findfs))
+$(eval $(call BuildPackage,flock))
+$(eval $(call BuildPackage,getopt))
+$(eval $(call BuildPackage,hwclock))
+$(eval $(call BuildPackage,logger))
+$(eval $(call BuildPackage,look))
+$(eval $(call BuildPackage,losetup))
+$(eval $(call BuildPackage,lsblk))
+$(eval $(call BuildPackage,mcookie))
+$(eval $(call BuildPackage,mount-utils))
+$(eval $(call BuildPackage,namei))
+$(eval $(call BuildPackage,rename))
+$(eval $(call BuildPackage,partx-utils))
+$(eval $(call BuildPackage,script-utils))
+$(eval $(call BuildPackage,setterm))
+$(eval $(call BuildPackage,sfdisk))
+$(eval $(call BuildPackage,swap-utils))
+$(eval $(call BuildPackage,uuidd))
+$(eval $(call BuildPackage,uuidgen))
+$(eval $(call BuildPackage,wall))
+$(eval $(call BuildPackage,whereis))
+$(eval $(call BuildPackage,wipefs))
diff --git a/package/util-linux/patches/000-compile.patch b/package/util-linux/patches/000-compile.patch
new file mode 100644
index 0000000000..80343f2481
--- /dev/null
+++ b/package/util-linux/patches/000-compile.patch
@@ -0,0 +1,44 @@
+--- a/misc-utils/cal.c
++++ b/misc-utils/cal.c
+@@ -291,41 +291,6 @@ main(int argc, char **argv) {
+ }
+ #endif
+
+-/*
+- * The traditional Unix cal utility starts the week at Sunday,
+- * while ISO 8601 starts at Monday. We read the start day from
+- * the locale database, which can be overridden with the
+- * -s (Sunday) or -m (Monday) options.
+- */
+-#ifdef HAVE_DECL__NL_TIME_WEEK_1STDAY
+- /*
+- * You need to use 2 locale variables to get the first day of the week.
+- * This is needed to support first_weekday=2 and first_workday=1 for
+- * the rare case where working days span across 2 weeks.
+- * This shell script shows the combinations and calculations involved:
+- *
+- * for LANG in en_US ru_RU fr_FR csb_PL POSIX; do
+- * printf "%s:\t%s + %s -1 = " $LANG $(locale week-1stday first_weekday)
+- * date -d"$(locale week-1stday) +$(($(locale first_weekday)-1))day" +%w
+- * done
+- *
+- * en_US: 19971130 + 1 -1 = 0 #0 = sunday
+- * ru_RU: 19971130 + 2 -1 = 1
+- * fr_FR: 19971201 + 1 -1 = 1
+- * csb_PL: 19971201 + 2 -1 = 2
+- * POSIX: 19971201 + 7 -1 = 0
+- */
+- {
+- int wfd;
+- union { unsigned int word; char *string; } val;
+- val.string = nl_langinfo(_NL_TIME_WEEK_1STDAY);
+-
+- wfd = val.word;
+- wfd = day_in_week(wfd % 100, (wfd / 100) % 100, wfd / (100 * 100));
+- weekstart = (wfd + *nl_langinfo(_NL_TIME_FIRST_WEEKDAY) - 1) % 7;
+- }
+-#endif
+-
+ yflag = 0;
+ while ((ch = getopt_long(argc, argv, "13mjsyVh", longopts, NULL)) != -1)
+ switch(ch) {