[geos-commits] [SCM] GEOS branch vernums created. 4770296031f0296f728164044d66da32f677b270

git at osgeo.org git at osgeo.org
Thu Dec 20 12:23:47 PST 2018


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GEOS".

The branch, vernums has been created
        at  4770296031f0296f728164044d66da32f677b270 (commit)

- Log -----------------------------------------------------------------
commit 4770296031f0296f728164044d66da32f677b270
Author: Paul Ramsey <pramsey at cleverelephant.ca>
Date:   Thu Dec 20 12:23:36 2018 -0800

    Move version numbers to a single file

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 772d688..fb70640 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -23,9 +23,7 @@ endif()
 #################################################################################
 # Set GEOS project
 #################################################################################
-project(GEOS VERSION 3.8.0 LANGUAGES C CXX)
-# OPTIONS: "", "dev", "rc1" etc.
-SET(GEOS_PATCH_WORD "dev")
+project(GEOS LANGUAGES C CXX)
 
 # Add custom GEOS modules for CMake
 list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/modules")
@@ -43,6 +41,31 @@ message(STATUS "Setting C++ requirement to C++${CMAKE_CXX_STANDARD}")
 # Setup GEOS version
 #################################################################################
 
+# READ GEOS VERSIONS FROM FILE
+file(READ "Version.txt" VERSION_TXT)
+
+string(REGEX MATCH "GEOS_VERSION_MAJOR=([0-9]+)" _ ${VERSION_TXT})
+set(GEOS_VERSION_MAJOR ${CMAKE_MATCH_1})
+
+string(REGEX MATCH "GEOS_VERSION_MINOR=([0-9]+)" _ ${VERSION_TXT})
+set(GEOS_VERSION_MINOR ${CMAKE_MATCH_1})
+
+string(REGEX MATCH "GEOS_VERSION_PATCH=([0-9]+)" _ ${VERSION_TXT})
+set(GEOS_VERSION_PATCH ${CMAKE_MATCH_1})
+
+# OPTIONS: "", "dev", "rc1" etc.
+string(REGEX MATCH "GEOS_PATCH_WORD=([a-zA-Z0-9]+)" _ ${VERSION_TXT})
+set(GEOS_PATCH_WORD ${CMAKE_MATCH_1})
+
+string(REGEX MATCH "CAPI_INTERFACE_CURRENT=([0-9]+)" _ ${VERSION_TXT})
+set(CAPI_INTERFACE_CURRENT ${CMAKE_MATCH_1})
+
+string(REGEX MATCH "CAPI_INTERFACE_REVISION=([0-9]+)" _ ${VERSION_TXT})
+set(CAPI_INTERFACE_REVISION ${CMAKE_MATCH_1})
+
+string(REGEX MATCH "CAPI_INTERFACE_AGE=([0-9]+)" _ ${VERSION_TXT})
+set(CAPI_INTERFACE_AGE ${CMAKE_MATCH_1})
+
 # GEOS release version
 # GEOS C++ library SONAME will use these encoding ABI break at every release
 set(GEOS_VERSION "${GEOS_VERSION_MAJOR}.${GEOS_VERSION_MINOR}.${GEOS_VERSION_PATCH}${GEOS_PATCH_WORD}")
@@ -55,13 +78,10 @@ set(VERSION_MINOR "${GEOS_VERSION_MINOR}")
 set(VERSION_PATCH "${GEOS_VERSION_PATCH}${GEOS_PATCH_WORD}")
 
 # JTS_PORT is the version of JTS this release is bound to
-set(JTS_PORT 1.13.0)
+string(REGEX MATCH "JTS_PORT=([0-9a-zA-Z\.]+)" _ ${VERSION_TXT})
+set(JTS_PORT ${CMAKE_MATCH_1})
 message(STATUS "Setting GEOS version ${VERSION} as port of JTS ${JTS_PORT}")
 
-# GEOS C API version
-set(CAPI_INTERFACE_CURRENT 12)
-set(CAPI_INTERFACE_REVISION 0)
-set(CAPI_INTERFACE_AGE 11)
 
 math(EXPR CAPI_VERSION_MAJOR "${CAPI_INTERFACE_CURRENT} - ${CAPI_INTERFACE_AGE}")
 set(CAPI_VERSION_MINOR ${CAPI_INTERFACE_AGE})
diff --git a/Version.txt b/Version.txt
new file mode 100644
index 0000000..5523b5e
--- /dev/null
+++ b/Version.txt
@@ -0,0 +1,16 @@
+
+# GEOS Versions
+GEOS_VERSION_MAJOR=3
+GEOS_VERSION_MINOR=8
+GEOS_VERSION_PATCH=0
+
+# OPTIONS: "", "dev", "rc1" etc.
+GEOS_PATCH_WORD=dev
+
+# GEOS CAPI Versions
+CAPI_INTERFACE_CURRENT=12
+CAPI_INTERFACE_REVISION=0
+CAPI_INTERFACE_AGE=11
+
+# JTS Port
+JTS_PORT=1.13.0
diff --git a/capi/geos_c.h.in b/capi/geos_c.h.in
index 7715829..23b1a6d 100644
--- a/capi/geos_c.h.in
+++ b/capi/geos_c.h.in
@@ -51,18 +51,6 @@ extern "C" {
  *
  ***********************************************************************/
 
-/*
- * Following 'ifdef' hack fixes problem with generating geos_c.h on Windows,
- * when building with Visual C++ compiler.
- *
- */
-#if defined(_MSC_VER)
-#include <geos/version.h>
-#define GEOS_CAPI_VERSION_MAJOR 1
-#define GEOS_CAPI_VERSION_MINOR 12
-#define GEOS_CAPI_VERSION_PATCH 0
-#define GEOS_CAPI_VERSION "3.8.0-CAPI-1.12.0"
-#else
 #ifndef GEOS_VERSION_MAJOR
 #define GEOS_VERSION_MAJOR @VERSION_MAJOR@
 #endif
@@ -83,7 +71,6 @@ extern "C" {
 #define GEOS_CAPI_VERSION_MINOR @CAPI_VERSION_MINOR@
 #define GEOS_CAPI_VERSION_PATCH @CAPI_VERSION_PATCH@
 #define GEOS_CAPI_VERSION "@VERSION at -CAPI-@CAPI_VERSION@"
-#endif
 
 #define GEOS_CAPI_FIRST_INTERFACE GEOS_CAPI_VERSION_MAJOR
 #define GEOS_CAPI_LAST_INTERFACE (GEOS_CAPI_VERSION_MAJOR+GEOS_CAPI_VERSION_MINOR)
diff --git a/configure.ac b/configure.ac
index 3e2442d..d5fd337 100644
--- a/configure.ac
+++ b/configure.ac
@@ -11,23 +11,31 @@ AC_CANONICAL_SYSTEM
 AC_CONFIG_MACRO_DIR([macros])
 
 dnl -- JTS_PORT: the version of JTS this release is bound to
-JTS_PORT=1.13.0
+dnl JTS_PORT=1.13.0
+JTS_PORT=`cat Version.txt | grep ^JTS_PORT | sed 's/[[^=]]*=\([[0-9a-zA-Z\.]]\)/\1/g'`
 
 dnl -- Version info for the CAPI
-CAPI_INTERFACE_CURRENT=13
-CAPI_INTERFACE_REVISION=0
-CAPI_INTERFACE_AGE=12
+dnl CAPI_INTERFACE_CURRENT=13
+dnl CAPI_INTERFACE_REVISION=0
+dnl CAPI_INTERFACE_AGE=12
 
 dnl
 dnl -- Release versions / C++ library SONAME will use these
 dnl -- encoding ABI break at every release
 dnl
-VERSION_MAJOR=3
-VERSION_MINOR=8
-VERSION_PATCH=0dev
+VERSION_MAJOR=`cat Version.txt | awk -F= '/^GEOS_VERSION_MAJOR/ {print $2}'`
+VERSION_MINOR=`cat Version.txt | awk -F= '/^GEOS_VERSION_MINOR/ {print $2}'`
+VERSION_PATCH=`cat Version.txt | awk -F= '/^GEOS_VERSION_PATCH/ {print $2}'`
+PATCH_WORD=`cat Version.txt    | awk -F= '/^GEOS_PATCH_WORD/ {print $2}'`
+
+VERSION_PATCH=${VERSION_PATCH}${PATCH_WORD}
 VERSION="$VERSION_MAJOR.$VERSION_MINOR.$VERSION_PATCH"
 VERSION_RELEASE=`echo "$VERSION" | sed -E 's/^([[0-9]+\.[0-9]+\.[0-9]+]).*$/\1/'`
 
+CAPI_INTERFACE_CURRENT=`cat Version.txt  | awk -F= '/^CAPI_INTERFACE_CURRENT/ {print $2}'`
+CAPI_INTERFACE_REVISION=`cat Version.txt | awk -F= '/^CAPI_INTERFACE_REVISION/ {print $2}'`
+CAPI_INTERFACE_AGE=`cat Version.txt      | awk -F= '/^CAPI_INTERFACE_AGE/ {print $2}'`
+
 dnl CAPI_VERSION_MAJOR=$(($CAPI_INTERFACE_CURRENT-$CAPI_INTERFACE_AGE))
 dnl the following should be more portable
 CAPI_VERSION_MAJOR=`expr $CAPI_INTERFACE_CURRENT - $CAPI_INTERFACE_AGE`

-----------------------------------------------------------------------


hooks/post-receive
-- 
GEOS


More information about the geos-commits mailing list