File btrfs-progs-workaround-linux-sizes.diff of Package btrfsprogs.11414
From: David Sterba <dsterba@suse.com>
Subject: Don't rely on system linux/sizes.h
References: bsc#1134458
Due to unknown problem in the build environment on the server, the build fails
for snapper due to missing linux/sizes.h, although the local builds succeed.
This patch can be removed once the remote build environment is updated, but
until then we don't have any other chance to fix it than to drop the header and
define the macros directly.
Signed-off-by: David Sterba <dsterba@suse.com>
diff --git a/ctree.h.orig b/ctree.h
index 339a7c913849..d2fb5de8399a 100644
--- a/ctree.h.orig
+++ b/ctree.h
@@ -34,7 +34,45 @@
#include <btrfs/extent-cache.h>
#include <btrfs/extent_io.h>
#include <btrfs/ioctl.h>
-#include <linux/sizes.h>
+/* Workaround when linux/sizes.h is not available */
+#ifndef SZ_1M
+#define SZ_1 0x00000001
+#define SZ_2 0x00000002
+#define SZ_4 0x00000004
+#define SZ_8 0x00000008
+#define SZ_16 0x00000010
+#define SZ_32 0x00000020
+#define SZ_64 0x00000040
+#define SZ_128 0x00000080
+#define SZ_256 0x00000100
+#define SZ_512 0x00000200
+
+#define SZ_1K 0x00000400
+#define SZ_2K 0x00000800
+#define SZ_4K 0x00001000
+#define SZ_8K 0x00002000
+#define SZ_16K 0x00004000
+#define SZ_32K 0x00008000
+#define SZ_64K 0x00010000
+#define SZ_128K 0x00020000
+#define SZ_256K 0x00040000
+#define SZ_512K 0x00080000
+
+#define SZ_1M 0x00100000
+#define SZ_2M 0x00200000
+#define SZ_4M 0x00400000
+#define SZ_8M 0x00800000
+#define SZ_16M 0x01000000
+#define SZ_32M 0x02000000
+#define SZ_64M 0x04000000
+#define SZ_128M 0x08000000
+#define SZ_256M 0x10000000
+#define SZ_512M 0x20000000
+
+#define SZ_1G 0x40000000
+#define SZ_2G 0x80000000
+#endif
+
#endif /* BTRFS_FLAT_INCLUDES */
struct btrfs_root;