fix version.h generation for out-of-tree builds 40/4540/2
authorDamjan Marion <damarion@cisco.com>
Tue, 3 Jan 2017 18:56:43 +0000 (19:56 +0100)
committerJohn Lo <loj@cisco.com>
Tue, 3 Jan 2017 20:32:06 +0000 (20:32 +0000)
Change-Id: Ic882f5aec74858a36533ed8cd61a7726947dceef
Signed-off-by: Damjan Marion <damarion@cisco.com>
build-root/scripts/version [changed from file to symlink]
src/scripts/version [new file with mode: 0755]
src/vpp.am

deleted file mode 100755 (executable)
index af4472869123f0c488ce48a9fde8a7506126ca30..0000000000000000000000000000000000000000
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/bin/bash
-
-path=$( cd "$(dirname "${BASH_SOURCE}")" ; pwd -P )
-
-cd "$path"
-
-git rev-parse 2> /dev/null
-if [ $? == 0 ]; then
-    vstring=$(git describe)
-elif [ -f .version ]; then
-    vstring=$(cat .version)
-else
-    if [ -f ../rpm/*.gz ]; then
-        vstring=$(ls ../rpm/*.gz)
-    else
-        exit 1
-    fi
-fi
-
-TAG=$(echo ${vstring} | cut -d- -f1 | sed -e 's/^v//')
-ADD=$(echo ${vstring} | cut -s -d- -f2)
-
-git rev-parse 2> /dev/null
-if [ $? == 0 ]; then
-    CMT=$(git describe --dirty --match 'v*'| cut -s -d- -f3,4)
-else
-    CMT=$(echo ${vstring} | cut -s -d- -f3,4)
-fi
-CMTR=$(echo $CMT | sed 's/-/_/')
-
-if [ -n "${BUILD_NUMBER}" ]; then
-       BLD="~b${BUILD_NUMBER}"
-fi
-
-if [ "$1" = "rpm-version" ]; then
-  echo ${TAG}
-  exit
-fi
-
-if [ "$1" = "rpm-release" ]; then
-  [ -z "${ADD}" ] && echo release && exit
-  echo ${ADD}${CMTR:+~${CMTR}}${BLD}
-  exit
-fi
-
-  if [ -n "${ADD}" ]; then
-    if [ "$1" = "rpm-string" ]; then
-      echo ${TAG}-${ADD}${CMTR:+~${CMTR}}${BLD}
-    else
-      echo ${TAG}-${ADD}${CMT:+~${CMT}}${BLD}
-    fi
-  else
-    echo ${TAG}
-fi
new file mode 120000 (symlink)
index 0000000000000000000000000000000000000000..8392c68b96d27346da11279e67f2d0fbf3fbfe7b
--- /dev/null
@@ -0,0 +1 @@
+../../src/scripts/version
\ No newline at end of file
diff --git a/src/scripts/version b/src/scripts/version
new file mode 100755 (executable)
index 0000000..af44728
--- /dev/null
@@ -0,0 +1,54 @@
+#!/bin/bash
+
+path=$( cd "$(dirname "${BASH_SOURCE}")" ; pwd -P )
+
+cd "$path"
+
+git rev-parse 2> /dev/null
+if [ $? == 0 ]; then
+    vstring=$(git describe)
+elif [ -f .version ]; then
+    vstring=$(cat .version)
+else
+    if [ -f ../rpm/*.gz ]; then
+        vstring=$(ls ../rpm/*.gz)
+    else
+        exit 1
+    fi
+fi
+
+TAG=$(echo ${vstring} | cut -d- -f1 | sed -e 's/^v//')
+ADD=$(echo ${vstring} | cut -s -d- -f2)
+
+git rev-parse 2> /dev/null
+if [ $? == 0 ]; then
+    CMT=$(git describe --dirty --match 'v*'| cut -s -d- -f3,4)
+else
+    CMT=$(echo ${vstring} | cut -s -d- -f3,4)
+fi
+CMTR=$(echo $CMT | sed 's/-/_/')
+
+if [ -n "${BUILD_NUMBER}" ]; then
+       BLD="~b${BUILD_NUMBER}"
+fi
+
+if [ "$1" = "rpm-version" ]; then
+  echo ${TAG}
+  exit
+fi
+
+if [ "$1" = "rpm-release" ]; then
+  [ -z "${ADD}" ] && echo release && exit
+  echo ${ADD}${CMTR:+~${CMTR}}${BLD}
+  exit
+fi
+
+  if [ -n "${ADD}" ]; then
+    if [ "$1" = "rpm-string" ]; then
+      echo ${TAG}-${ADD}${CMTR:+~${CMTR}}${BLD}
+    else
+      echo ${TAG}-${ADD}${CMT:+~${CMT}}${BLD}
+    fi
+  else
+    echo ${TAG}
+fi
index 1d07b90..5128e8a 100644 (file)
@@ -55,8 +55,8 @@ vpp/app/version.h:
        @echo "#define VPP_BUILD_DATE \"$$(date)\"" > $@
        @echo "#define VPP_BUILD_USER \"$$(whoami)\"" >> $@
        @echo "#define VPP_BUILD_HOST \"$$(hostname)\"" >> $@
-       @echo "#define VPP_BUILD_TOPDIR \"$$(git rev-parse --show-toplevel)\""  >> $@
-       @echo "#define VPP_BUILD_VER \"$$(../../scripts/version)\"" >> $@
+       @echo "#define VPP_BUILD_TOPDIR \"$$(cd $(srcdir) && git rev-parse --show-toplevel)\""  >> $@
+       @echo "#define VPP_BUILD_VER \"$$($(srcdir)/scripts/version)\"" >> $@
 
 # Generate a plugin configuration script. Misconfiguring a
 # plugin can cause very subtle problems.