Fix configure.
authorNIIBE Yutaka <gniibe@fsij.org>
Tue, 1 Aug 2017 07:59:53 +0000 (16:59 +0900)
committerNIIBE Yutaka <gniibe@fsij.org>
Tue, 1 Aug 2017 07:59:53 +0000 (16:59 +0900)
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
ChangeLog
src/configure

index 50b8653..06425ff 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2017-08-01  NIIBE Yutaka  <gniibe@fsij.org>
+
+       * src/configure: Support build without git.
+
 2016-10-17  NIIBE Yutaka  <gniibe@fsij.org>
 
        * VERSION: 1.0.5.
index a0e4c48..a3061ae 100755 (executable)
@@ -6,7 +6,7 @@ nl=$'\n'
 #
 # This file is *NOT* generated by GNU Autoconf, but written by NIIBE Yutaka
 #
-# Copyright (C) 2010, 2011, 2012, 2013, 2015, 2016
+# Copyright (C) 2010, 2011, 2012, 2013, 2015, 2016, 2017
 #               Free Software Initiative of Japan
 #
 # This file is a part of NeuG, a Random Number Generator implementation.
@@ -45,20 +45,28 @@ with_fraucheky=no
 with_index=none
 
 # Revision numbers
-if test -d ../.git; then
-  REVISION=`git describe --dirty="-modified"`
-  REVISION_CHOPSTX=`cd ../chopstx && git describe --dirty="-modified"`
-  REVISION_FRAUCHEKY=`cd ../fraucheky &&git describe --dirty="-modified"`
+if test -e ../.git; then
+  if type git >/dev/null 2>&1; then
+     REVISION=$(git describe --dirty="-modified")
+     REVISION_CHOPSTX=$(cd ../chopstx && git describe --dirty="-modified")
+     REVISION_FRAUCHEKY=$(cd ../fraucheky && git describe --dirty="-modified")
+  else
+     # echo 'No git available, please install git'
+     GIT_REVISION=$(sed -e 's/^\(.......\).*$/g\1/' "../.git/$(sed -e 's/^ref: //' ../.git/HEAD)")
+     REVISION=$(cat ../VERSION)-$GIT_REVISION
+     REVISION_CHOPSTX=$(cat ../chopstx/VERSION)-$(sed -e 's/^\(.......\).*$/g\1/' ../.git/modules/chopstx/HEAD)
+     REVISION_FRAUCHEKY=$(cat ../fraucheky/VERSION)-$(sed -e 's/^\(.......\).*$/g\1/' ../.git/modules/fraucheky/HEAD)
+  fi
 else
-  REVISION=`cat ../VERSION`
-  REVISION_CHOPSTX=`cat ../chopstx/VERSION`
-  REVISION_FRAUCHEKY=`cat ../fraucheky/VERSION`
+  REVISION=$(cat ../VERSION)
+  REVISION_CHOPSTX=$(cat ../chopstx/VERSION)
+  REVISION_FRAUCHEKY=$(cat ../fraucheky/VERSION)
 fi
 
 # Process each option
 for option; do
   case $option in
-  *=*) optarg=`expr "X$option" : '[^=]*=\(.*\)'` ;;
+  *=*) optarg=$(expr "X$option" : '[^=]*=\(.*\)') ;;
   *)   optarg=yes ;;
   esac
 
@@ -151,7 +159,7 @@ else
   fi
 fi
 
-BOARD_HEADER_FILE=board-`echo $target | tr '_[:upper:]' '-[:lower:]'`.h
+BOARD_HEADER_FILE=board-$(echo $target | tr '_[:upper:]' '-[:lower:]').h
 echo Header file is: $BOARD_HEADER_FILE
 ln -sf ../chopstx/board/$BOARD_HEADER_FILE board.h
 
@@ -195,7 +203,7 @@ if test "$with_dfu" = "yes"; then
   fi
   echo "Configured for DFU"
   ORIGIN=0x08003000
-  FLASH_SIZE=`expr $FLASH_SIZE - 12`
+  FLASH_SIZE=$(expr $FLASH_SIZE - 12)
   DFU_DEFINE="#define DFU_SUPPORT 1"
   HEXOUTPUT_MAKE_OPTION="ENABLE_OUTPUT_HEX=yes"
 else
@@ -207,7 +215,7 @@ else
 fi
 
 ### !!! Replace following string of "FSIJ" to yours !!! ####
-SERIALNO="FSIJ-`cat ../VERSION | sed -e 's%^[^/]*/%%'`-"
+SERIALNO="FSIJ-$(cat ../VERSION | sed -e 's%^[^/]*/%%')-"
 
 SERIALNO_STR_LEN_DEFINE="#define SERIALNO_STR_LEN ${#SERIALNO}"