浏览代码

report svn revision (using svnversion) - works only for local
repository copies


git-svn-id: https://svn.osgeo.org/grass/grass/trunk@39622 15284696-431f-4ddb-bdfa-cd5b030d7da7

Martin Landa 15 年之前
父节点
当前提交
2bb5c4e1ab
共有 6 个文件被更改,包括 800 次插入738 次删除
  1. 772 731
      configure
  2. 7 0
      configure.in
  3. 3 1
      general/g.version/Makefile
  4. 12 5
      general/g.version/main.c
  5. 1 0
      include/Make/Platform.make.in
  6. 5 1
      lib/init/Makefile

文件差异内容过多而无法显示
+ 772 - 731
configure


+ 7 - 0
configure.in

@@ -124,12 +124,19 @@ changequote(,)
 LIB_VER=`echo ${GRASS_VERSION_NUMBER} | sed 's/^\([0-9.]*\).*$/\1/'`
 changequote([,])
 
+GRASS_VERSION_SVN=
+AC_PATH_PROG(SVN_VERSION, svnversion, no)
+if test "$SVN_VERSION" != "no" ; then
+   GRASS_VERSION_SVN=`$SVN_VERSION`
+fi
+
 AC_SUBST(GRASS_VERSION_FILE)
 AC_SUBST(GRASS_VERSION_MAJOR)
 AC_SUBST(GRASS_VERSION_MINOR)
 AC_SUBST(GRASS_VERSION_RELEASE)
 AC_SUBST(GRASS_VERSION_NUMBER)
 AC_SUBST(GRASS_VERSION_DATE)
+AC_SUBST(GRASS_VERSION_SVN)
 AC_SUBST(NAME_VER)
 AC_SUBST(LIB_VER)
 

+ 3 - 1
general/g.version/Makefile

@@ -7,7 +7,9 @@ PGM=g.version
 COPYING := $(shell cat $(MODULE_TOPDIR)/COPYING | sed -f sed.script | tr -d '\012')
 GRASS_CONFIGURE_PARAMS := $(shell head -n 7 $(MODULE_TOPDIR)/config.status | tail -n 1 | tr -d '\012')
 
-EXTRA_CFLAGS=-DGRASS_VERSION_NUMBER=\"'$(GRASS_VERSION_NUMBER)'\" -DGRASS_VERSION_DATE=\"'$(GRASS_VERSION_DATE)'\" -DGRASS_VERSION_UPDATE_PKG=\"'$(GRASS_VERSION_UPDATE_PKG)'\"  -DGRASS_CONFIGURE_PARAMS="\"$(GRASS_CONFIGURE_PARAMS)\"" -DCOPYING="\"$(COPYING)\""
+EXTRA_CFLAGS=-DGRASS_VERSION_NUMBER=\"'$(GRASS_VERSION_NUMBER)'\" -DGRASS_VERSION_DATE=\"'$(GRASS_VERSION_DATE)'\" \
+	-DGRASS_VERSION_SVN=\"'$(GRASS_VERSION_SVN)'\" -DGRASS_VERSION_UPDATE_PKG=\"'$(GRASS_VERSION_UPDATE_PKG)'\" \
+	-DGRASS_CONFIGURE_PARAMS="\"$(GRASS_CONFIGURE_PARAMS)\"" -DCOPYING="\"$(COPYING)\""
 
 LIBES = $(GISLIB)
 DEPENDENCIES = $(GISDEP)

+ 12 - 5
general/g.version/main.c

@@ -16,6 +16,7 @@
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
+
 #include <grass/gis.h>
 #include <grass/glocale.h>
 
@@ -50,11 +51,17 @@ int main(int argc, char *argv[])
     if (G_parser(argc, argv))
 	exit(EXIT_FAILURE);
 
-
-    fprintf(stdout, "GRASS %s (%s) %s\n",
-	    GRASS_VERSION_NUMBER, GRASS_VERSION_DATE,
-	    GRASS_VERSION_UPDATE_PKG);
-
+    if (strlen(GRASS_VERSION_SVN) > 0) {
+	fprintf(stdout, "GRASS %s (%s) - r%s\n",
+		GRASS_VERSION_NUMBER, GRASS_VERSION_DATE, 
+		GRASS_VERSION_SVN);
+    }
+    else {
+	fprintf(stdout, "GRASS %s (%s) %s\n",
+		GRASS_VERSION_NUMBER, GRASS_VERSION_DATE,
+		GRASS_VERSION_UPDATE_PKG);
+    }
+    
     if (copyright->answer) {
 	fprintf(stdout, "\n");
 	fputs(COPYING, stdout);

+ 1 - 0
include/Make/Platform.make.in

@@ -47,6 +47,7 @@ GRASS_VERSION_MAJOR = @GRASS_VERSION_MAJOR@
 GRASS_VERSION_MINOR = @GRASS_VERSION_MINOR@
 GRASS_VERSION_RELEASE = @GRASS_VERSION_RELEASE@
 GRASS_VERSION_DATE  = @GRASS_VERSION_DATE@
+GRASS_VERSION_SVN   = @GRASS_VERSION_SVN@
 
 PLAT_OBJS           = @PLAT_OBJS@
 STRIPFLAG           = @STRIPFLAG@

+ 5 - 1
lib/init/Makefile

@@ -123,7 +123,11 @@ $(ETC)/clean_temp$(EXE) $(ETC)/lock$(EXE): $(ETC)/%$(EXE): $(OBJDIR)/%.o
 
 $(ETC)/VERSIONNUMBER:
 	rm -f $@
-	echo "$(GRASS_VERSION_NUMBER)" > $@
+	@if [ -n "$(GRASS_VERSION_SVN)" ] ; then \
+		echo "$(GRASS_VERSION_NUMBER) r$(GRASS_VERSION_SVN)" > $@ ; \
+	else \
+		echo "$(GRASS_VERSION_NUMBER)" > $@ ; \
+	fi
 	chmod +r $@
 
 $(ETC)/grass_intro $(ETC)/license $(ETC)/welcome: $(ETC)/%: %.txt version.sed