Skip to contentSkip to conversation

library version defines?

PATCH Arvin Schnell 2 participants 2 messages Jun 3, 2013 – Aug 9, 2013

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

Hi,

commit 46de1a6ec3dbb0db203baa6c46cb64ba9b000ea2 changed the parameters of btrfs_read_and_process_send_stream(). This breaks snapper compilation so I wonder whether we can include version defines usable for the C preprocessor. Surely it won't help in this case anymore but might in the future.

Please find my proposal attached.

Regards,
Arvin

Signature · 6 lines
Arvin Schnell, <[email protected]>
Senior Software Engineer, Research & Development
SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 16746 (AG Nürnberg)
Maxfeldstraße 5
90409 Nürnberg
Germany
Makefile +1 -1
index da7438e..8ee372f 100644
@@ -14,7 +14,7 @@ cmds_objects = cmds-subvolume.o cmds-filesystem.o cmds-device.o cmds-scrub.o \
 libbtrfs_objects = send-stream.o send-utils.o rbtree.o btrfs-list.o crc32c.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
+	       extent_io.h ioctl.h ctree.h version.h
 
 CHECKFLAGS= -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ -Wbitwise \
 	    -Wuninitialized -Wshadow -Wundef
version.sh +14 -0
index b81040e..1d9fe9f 100644
@@ -8,6 +8,10 @@
 
 v="v0.20-rc1"
 
+lib_major=0
+lib_minor=1
+lib_patchlevel=0
+
 which git &> /dev/null
 if [ $? == 0 -a -d .git ]; then
     if head=`git rev-parse --verify HEAD 2>/dev/null`; then
@@ -46,7 +50,17 @@ fi
 
 echo "#ifndef __BUILD_VERSION" > .build-version.h
 echo "#define __BUILD_VERSION" >> .build-version.h
+echo >> .build-version.h
 echo "#define BTRFS_BUILD_VERSION \"Btrfs $v\"" >> .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 "#endif" >> .build-version.h
 
 diff -q version.h .build-version.h >& /dev/null
#1 lore raw
Quoted 7 lines · Arvin Schnell

commit 46de1a6ec3dbb0db203baa6c46cb64ba9b000ea2 changed the parameters of btrfs_read_and_process_send_stream(). This breaks snapper compilation so I wonder whether we can include version defines usable for the C preprocessor. Surely it won't help in this case anymore but might in the future.

Please find my proposal attached.

The C define part looks ok, the version numbers should be used in Makefile to build libbtrfs.so.* files.

version.sh line 13

Quoted 3 lines
version.sh +3 -0
+lib_major=0
+lib_minor=1
+lib_patchlevel=0

If the above snippet is placed into a separate file, it can be included/sourced into Makefile and version.sh, keeping the version information at a single location.

david