move libc related stuff out of platform.h
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/util-linux/fdisk.c b/util-linux/fdisk.c
index 514b5d7..4416408 100644
--- a/util-linux/fdisk.c
+++ b/util-linux/fdisk.c
@@ -12,6 +12,10 @@
#define _LARGEFILE64_SOURCE
#endif
#include <assert.h> /* assert */
+#include <sys/mount.h>
+#if !defined(BLKSSZGET)
+# define BLKSSZGET _IO(0x12, 104)
+#endif
#include "libbb.h"
/* Looks like someone forgot to add this to config system */
diff --git a/util-linux/freeramdisk.c b/util-linux/freeramdisk.c
index bde6afc..6b9d95e 100644
--- a/util-linux/freeramdisk.c
+++ b/util-linux/freeramdisk.c
@@ -8,7 +8,7 @@
*
* Licensed under GPLv2, see file LICENSE in this tarball for details.
*/
-
+#include <sys/mount.h>
#include "libbb.h"
/* From <linux/fd.h> */
diff --git a/util-linux/mkfs_vfat.c b/util-linux/mkfs_vfat.c
index 8c6078d..8d12bab 100644
--- a/util-linux/mkfs_vfat.c
+++ b/util-linux/mkfs_vfat.c
@@ -7,12 +7,15 @@
*
* Licensed under GPLv2, see file LICENSE in this tarball for details.
*/
-#include "libbb.h"
-#include "volume_id/volume_id_internal.h"
-
#include <linux/hdreg.h> /* HDIO_GETGEO */
#include <linux/fd.h> /* FDGETPRM */
+#include <sys/mount.h> /* BLKSSZGET */
+#if !defined(BLKSSZGET)
+# define BLKSSZGET _IO(0x12, 104)
+#endif
//#include <linux/msdos_fs.h>
+#include "libbb.h"
+#include "volume_id/volume_id_internal.h"
#define SECTOR_SIZE 512
diff --git a/util-linux/mount.c b/util-linux/mount.c
index 72dabd8..56c32e1 100644
--- a/util-linux/mount.c
+++ b/util-linux/mount.c
@@ -8,7 +8,6 @@
*
* Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
*/
-
// Design notes: There is no spec for mount. Remind me to write one.
//
// mount_main() calls singlemount() which calls mount_it_now().
@@ -17,9 +16,37 @@
// singlemount() can loop through /etc/filesystems for fstype detection.
// mount_it_now() does the actual mount.
//
-
#include <mntent.h>
#include <syslog.h>
+#include <sys/mount.h>
+#ifndef MS_BIND
+# define MS_BIND (1 << 12)
+#endif
+#ifndef MS_MOVE
+# define MS_MOVE (1 << 13)
+#endif
+#ifndef MS_RECURSIVE
+# define MS_RECURSIVE (1 << 14)
+#endif
+#ifndef MS_SILENT
+# define MS_SILENT (1 << 15)
+#endif
+/* The shared subtree stuff, which went in around 2.6.15. */
+#ifndef MS_UNBINDABLE
+# define MS_UNBINDABLE (1 << 17)
+#endif
+#ifndef MS_PRIVATE
+# define MS_PRIVATE (1 << 18)
+#endif
+#ifndef MS_SLAVE
+# define MS_SLAVE (1 << 19)
+#endif
+#ifndef MS_SHARED
+# define MS_SHARED (1 << 20)
+#endif
+#ifndef MS_RELATIME
+# define MS_RELATIME (1 << 21)
+#endif
#include "libbb.h"
#if ENABLE_FEATURE_MOUNT_LABEL
diff --git a/util-linux/switch_root.c b/util-linux/switch_root.c
index 0f00b60..ff05518 100644
--- a/util-linux/switch_root.c
+++ b/util-linux/switch_root.c
@@ -5,18 +5,16 @@
*
* Licensed under GPL version 2, see file LICENSE in this tarball for details.
*/
-#include "libbb.h"
#include <sys/vfs.h>
-
+#include <sys/mount.h>
+#include "libbb.h"
// Make up for header deficiencies
#ifndef RAMFS_MAGIC
# define RAMFS_MAGIC ((unsigned)0x858458f6)
#endif
-
#ifndef TMPFS_MAGIC
# define TMPFS_MAGIC ((unsigned)0x01021994)
#endif
-
#ifndef MS_MOVE
# define MS_MOVE 8192
#endif
diff --git a/util-linux/umount.c b/util-linux/umount.c
index 5b22bfa..a4b2bd0 100644
--- a/util-linux/umount.c
+++ b/util-linux/umount.c
@@ -7,8 +7,37 @@
*
* Licensed under GPL version 2, see file LICENSE in this tarball for details.
*/
-
#include <mntent.h>
+#include <sys/mount.h>
+/* Make sure we have all the new mount flags we actually try to use. */
+#ifndef MS_BIND
+# define MS_BIND (1 << 12)
+#endif
+#ifndef MS_MOVE
+# define MS_MOVE (1 << 13)
+#endif
+#ifndef MS_RECURSIVE
+# define MS_RECURSIVE (1 << 14)
+#endif
+#ifndef MS_SILENT
+# define MS_SILENT (1 << 15)
+#endif
+/* The shared subtree stuff, which went in around 2.6.15. */
+#ifndef MS_UNBINDABLE
+# define MS_UNBINDABLE (1 << 17)
+#endif
+#ifndef MS_PRIVATE
+# define MS_PRIVATE (1 << 18)
+#endif
+#ifndef MS_SLAVE
+# define MS_SLAVE (1 << 19)
+#endif
+#ifndef MS_SHARED
+# define MS_SHARED (1 << 20)
+#endif
+#ifndef MS_RELATIME
+# define MS_RELATIME (1 << 21)
+#endif
#include "libbb.h"
#if defined(__dietlibc__)
diff --git a/util-linux/volume_id/get_devname.c b/util-linux/volume_id/get_devname.c
index a1786df..0686a07 100644
--- a/util-linux/volume_id/get_devname.c
+++ b/util-linux/volume_id/get_devname.c
@@ -7,11 +7,12 @@
*
* Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
*/
-
+#include <sys/mount.h> /* BLKGETSIZE64 */
+#if !defined(BLKGETSIZE64)
+# define BLKGETSIZE64 _IOR(0x12,114,size_t)
+#endif
#include "volume_id_internal.h"
-//#define BLKGETSIZE64 _IOR(0x12,114,size_t)
-
static struct uuidCache_s {
struct uuidCache_s *next;
// int major, minor;