btrfs-progs: autoconf: use ./configure to generate version.h
authorKarel Zak <kzak@redhat.com>
Tue, 9 Dec 2014 14:58:11 +0000 (15:58 +0100)
committerDavid Sterba <dsterba@suse.cz>
Wed, 28 Jan 2015 17:00:59 +0000 (18:00 +0100)
The original homemade solution is unnecessary, autotools provides better
infrastructure to generate files.

Signed-off-by: Karel Zak <kzak@redhat.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
Makefile.in
configure.ac
version.h.in [new file with mode: 0644]
version.sh

index c37db9d..18c1393 100644 (file)
@@ -155,10 +155,6 @@ test: btrfs btrfs-convert btrfs-image btrfs-corrupt-block
 #
 static: $(progs_static)
 
-version.h:
-       @echo "    [SH]     $@"
-       $(Q)bash version.sh
-
 $(libs_shared): $(libbtrfs_objects) $(lib_links) send.h
        @echo "    [LD]     $@"
        $(Q)$(CC) $(CFLAGS) $(libbtrfs_objects) $(LDFLAGS) $(lib_LIBS) \
index 7a6c264..937d50f 100644 (file)
@@ -3,6 +3,10 @@ AC_INIT([btrfs-progs],
        [linux-btrfs@vger.kernel.org],,
        [http://btrfs.wiki.kernel.org])
 
+dnl library version
+LIBBTRFS_MAJOR=0
+LIBBTRFS_MINOR=1
+LIBBTRFS_PATCHLEVEL=1
 
 AC_PREREQ([2.60])
 
@@ -74,11 +78,16 @@ AC_SUBST([LZO2_LIBS_STATIC])
 AC_SUBST([LZO2_CFLAGS])
 
 
+dnl library stuff
+AC_SUBST([LIBBTRFS_MAJOR])
+AC_SUBST([LIBBTRFS_MINOR])
+AC_SUBST([LIBBTRFS_PATCHLEVEL])
 
 AC_CONFIG_HEADERS([config.h])
 
 AC_CONFIG_FILES([
 Makefile
+version.h
 ])
 
 AC_OUTPUT
diff --git a/version.h.in b/version.h.in
new file mode 100644 (file)
index 0000000..012d265
--- /dev/null
@@ -0,0 +1,11 @@
+#ifndef __LIBBTRFS_VERSION_H__
+#define __LIBBTRFS_VERSION_H__
+
+#define BTRFS_LIB_MAJOR                @LIBBTRFS_MAJOR@
+#define BTRFS_LIB_MINOR                @LIBBTRFS_MINOR@
+#define BTRFS_LIB_PATCHLEVEL   @LIBBTRFS_PATCHLEVEL@
+
+#define BTRFS_LIB_VERSION ( BTRFS_LIB_MAJOR * 10000 + \
+                            BTRFS_LIB_MINOR * 100 + \
+                            BTRFS_LIB_PATCHLEVEL )
+#endif
index c012e6a..81de5a2 100755 (executable)
@@ -9,9 +9,6 @@
 v="v3.18.2"
 
 opt=$1
-lib_major=0
-lib_minor=1
-lib_patchlevel=1
 
 which git &> /dev/null
 if [ $? == 0 -a -d .git ]; then
@@ -32,30 +29,9 @@ fi
 if [ "$opt" = "--configure" ]; then
        # Omit the trailing newline, so that m4_esyscmd can use the result directly.
        echo "$v" | tr -d '\n'
-       exit 0
+else
+       echo "$v"
 fi
 
-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
+exit 0
 
-diff -q version.h .build-version.h >& /dev/null
-
-if [ $? == 0 ]; then
-    rm .build-version.h
-    exit 0
-fi
-
-mv .build-version.h version.h