File library-version-defines.patch of Package btrfsprogs

From f412157fd429eab3d309602de214639a8c8c584e Mon Sep 17 00:00:00 2001
From: Arvin Schnell <aschnell@suse.de>
Date: Mon, 3 Jun 2013 14:31:41 +0200
Subject: [PATCH] btrfs-progs: library version defines

commit 46de1a6ec3dbb0db203baa6c46cb64ba9b000ea2 changed the
parameters of btrfs_read_and_process_send_stream().  This breaks
snapper compilation. We can include version defines usable for the C
preprocessor.

Version 0.1.0: API up to and including 46de1a6ec3dbb0db2 (3.14.x)

Version 0.1.1: 909131939f750faffb9fab (changed in 3.16)

Signed-off-by: Arvin Schnell <aschnell@suse.de>
Signed-off-by: David Sterba <dsterba@suse.cz>
---
 Makefile      |  2 +-
 send-stream.h |  5 +++++
 version.sh    | 17 ++++++++++++++++-
 3 files changed, 22 insertions(+), 2 deletions(-)

Index: btrfs-progs-v3.16/Makefile
===================================================================
--- btrfs-progs-v3.16.orig/Makefile
+++ btrfs-progs-v3.16/Makefile
@@ -20,7 +20,7 @@ libbtrfs_objects = send-stream.o send-ut
 		   uuid-tree.o utils-lib.o
 libbtrfs_headers = send-stream.h send-utils.h send.h rbtree.h btrfs-list.h \
 	       crc32c.h list.h kerncompat.h radix-tree.h extent-cache.h \
-	       extent_io.h ioctl.h ctree.h btrfsck.h
+	       extent_io.h ioctl.h ctree.h btrfsck.h version.h
 TESTS = fsck-tests.sh convert-tests.sh
 
 INSTALL = install
Index: btrfs-progs-v3.16/send-stream.h
===================================================================
--- btrfs-progs-v3.16.orig/send-stream.h
+++ btrfs-progs-v3.16/send-stream.h
@@ -18,6 +18,11 @@
 #ifndef SEND_STREAM_H_
 #define SEND_STREAM_H_
 
+/*
+ * NOTE: this file is public API, any incompatible change has to update
+ * library version
+ */
+
 #ifdef __cplusplus
 extern "C" {
 #endif
Index: btrfs-progs-v3.16/version.sh
===================================================================
--- btrfs-progs-v3.16.orig/version.sh
+++ btrfs-progs-v3.16/version.sh
@@ -8,6 +8,10 @@
  
 v="v3.16+20140829"
 
+lib_major=0
+lib_minor=1
+lib_patchlevel=1
+
 which git &> /dev/null
 if [ $? == 0 -a -d .git ]; then
     if head=`git rev-parse --verify HEAD 2>/dev/null`; then
@@ -24,8 +28,19 @@ if [ $? == 0 -a -d .git ]; then
     fi
 fi
 
-echo "#ifndef __BUILD_VERSION" > .build-version.h
+echo "/* NOTE: this file is autogenerated by version.sh, do not edit */" > .build-version.h
+echo "#ifndef __BUILD_VERSION" >> .build-version.h
+echo >> .build-version.h
 echo "#define __BUILD_VERSION" >> .build-version.h
+echo >> .build-version.h
+echo "#define BTRFS_LIB_MAJOR $lib_major" >> .build-version.h
+echo "#define BTRFS_LIB_MINOR $lib_minor" >> .build-version.h
+echo "#define BTRFS_LIB_PATCHLEVEL $lib_patchlevel" >> .build-version.h
+echo >> .build-version.h
+echo "#define BTRFS_LIB_VERSION ( BTRFS_LIB_MAJOR * 10000 + \\" >> .build-version.h
+echo "                            BTRFS_LIB_MINOR * 100 + \\" >> .build-version.h
+echo "                            BTRFS_LIB_PATCHLEVEL )" >> .build-version.h
+echo >> .build-version.h
 echo "#define BTRFS_BUILD_VERSION \"Btrfs $v\"" >> .build-version.h
 echo "#endif" >> .build-version.h
 
openSUSE Build Service is sponsored by