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;
openSUSE Build Service is sponsored by