]> granicus.if.org Git - postgis/commitdiff
Report SVN revision in PostGIS_Full_Version (#1518)
authorPaul Ramsey <pramsey@cleverelephant.ca>
Fri, 10 Feb 2012 19:49:53 +0000 (19:49 +0000)
committerPaul Ramsey <pramsey@cleverelephant.ca>
Fri, 10 Feb 2012 19:49:53 +0000 (19:49 +0000)
git-svn-id: http://svn.osgeo.org/postgis/trunk@9149 b70326c6-7e19-0410-871a-916f4a2858ee

postgis/lwgeom_functions_basic.c
postgis/postgis.sql.in.c
postgis_config.h.in

index 4883cb7d63d1cb16c29669ca4da9eb687304dd7f..31ed0793cf50439faf0a74ef3003e6843e56a09a 100644 (file)
@@ -36,6 +36,7 @@ Datum postgis_autocache_bbox(PG_FUNCTION_ARGS);
 Datum postgis_scripts_released(PG_FUNCTION_ARGS);
 Datum postgis_version(PG_FUNCTION_ARGS);
 Datum postgis_lib_version(PG_FUNCTION_ARGS);
+Datum postgis_svn_version(PG_FUNCTION_ARGS);
 Datum postgis_libxml_version(PG_FUNCTION_ARGS);
 Datum postgis_lib_build_date(PG_FUNCTION_ARGS);
 Datum LWGEOM_length2d_linestring(PG_FUNCTION_ARGS);
@@ -145,6 +146,16 @@ Datum postgis_lib_version(PG_FUNCTION_ARGS)
        PG_RETURN_TEXT_P(result);
 }
 
+PG_FUNCTION_INFO_V1(postgis_svn_version);
+Datum postgis_svn_version(PG_FUNCTION_ARGS)
+{
+       text *result;
+       char ver[256];
+       snprintf(ver, 256, "%d", SVNREV);
+       result = cstring2text(ver);
+       PG_RETURN_TEXT_P(result);
+}
+
 PG_FUNCTION_INFO_V1(postgis_lib_build_date);
 Datum postgis_lib_build_date(PG_FUNCTION_ARGS)
 {
@@ -156,8 +167,10 @@ Datum postgis_lib_build_date(PG_FUNCTION_ARGS)
 PG_FUNCTION_INFO_V1(postgis_scripts_released);
 Datum postgis_scripts_released(PG_FUNCTION_ARGS)
 {
-       char *ver = POSTGIS_SCRIPTS_VERSION;
-       text *result = cstring2text(ver);
+       char ver[256];
+       text *result;
+       snprintf(ver, 256, "%s.%s r%d", POSTGIS_MAJOR_VERSION, POSTGIS_MINOR_VERSION, SVNREV);
+       result = cstring2text(ver);
        PG_RETURN_TEXT_P(result);
 }
 
index 92e8d6c767c3f8b0f7b99415cf992dce4a1bcbb2..a4bcaab9008ff88f408b23265c1a2216a0504f16 100644 (file)
@@ -2302,6 +2302,10 @@ CREATE OR REPLACE FUNCTION postgis_lib_version() RETURNS text
        AS 'MODULE_PATHNAME'\r
        LANGUAGE 'C' IMMUTABLE; -- a new lib will require a new session\r
 \r
+CREATE OR REPLACE FUNCTION postgis_svn_version() RETURNS text\r
+       AS 'MODULE_PATHNAME'\r
+       LANGUAGE 'C' IMMUTABLE;\r
+\r
 -- NOTE: starting at 1.1.0 this is the same of postgis_lib_version()\r
 CREATE OR REPLACE FUNCTION postgis_scripts_released() RETURNS text\r
        AS 'MODULE_PATHNAME'\r
@@ -2331,6 +2335,7 @@ CREATE OR REPLACE FUNCTION postgis_full_version() RETURNS text
 AS $$\r
 DECLARE\r
        libver text;\r
+       svnver text;\r
        projver text;\r
        geosver text;\r
        gdalver text;\r
@@ -2354,6 +2359,7 @@ BEGIN
        SELECT postgis_uses_stats() INTO usestats;\r
        SELECT postgis_scripts_installed() INTO dbproc;\r
        SELECT postgis_scripts_released() INTO relproc;\r
+       SELECT postgis_svn_version() INTO svnver;\r
 \r
        fullver = 'POSTGIS="' || libver || '"';\r
 \r
@@ -2372,6 +2378,10 @@ BEGIN
        IF  libxmlver IS NOT NULL THEN\r
                fullver = fullver || ' LIBXML="' || libxmlver || '"';\r
        END IF;\r
+       \r
+       IF  svnver IS NOT NULL THEN\r
+               fullver = fullver || ' SVN_REVISION=' || svnver;\r
+       END IF;\r
 \r
        IF usestats THEN\r
                fullver = fullver || ' USE_STATS';\r
index 0012b735ed293fecd0644496e27ecaa655a3d790..cff57a6934dd4f7618e82018dc5f48b1e246b1d2 100644 (file)
@@ -1,5 +1,7 @@
 /* postgis_config.h.in.  Generated from configure.ac by autoheader.  */
 
+#include "svnrevision.h"
+
 /* Define to 1 if translation of program messages to the user's native
    language is requested. */
 #undef ENABLE_NLS
 /* PostGIS major version */
 #undef POSTGIS_MAJOR_VERSION
 
-/* PostGIS micro version */
-#undef POSTGIS_MICRO_VERSION
-
 /* PostGIS minor version */
 #undef POSTGIS_MINOR_VERSION
 
+/* PostGIS micro version */
+#undef POSTGIS_MICRO_VERSION
+
 /* PostgreSQL server version */
 #undef POSTGIS_PGSQL_VERSION