diff --git a/Makefile b/Makefile index e721e99c..73ef3868 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,7 @@ libbtrfs_objects = send-stream.o send-utils.o rbtree.o btrfs-list.o crc32c.o \ 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 diff --git a/send-stream.h b/send-stream.h index 293bf6af..bedff4d0 100644 --- a/send-stream.h +++ b/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 diff --git a/version.sh b/version.sh index 90000019..2e4a8d9e 100644 --- a/version.sh +++ b/version.sh @@ -8,6 +8,10 @@ v="v3.16" +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