aboutsummaryrefslogtreecommitdiff
path: root/cmake/ProjVersion.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/ProjVersion.cmake')
-rw-r--r--cmake/ProjVersion.cmake46
1 files changed, 46 insertions, 0 deletions
diff --git a/cmake/ProjVersion.cmake b/cmake/ProjVersion.cmake
new file mode 100644
index 00000000..1121cd36
--- /dev/null
+++ b/cmake/ProjVersion.cmake
@@ -0,0 +1,46 @@
+################################################################################
+# ProjVersion.cmake - part of CMake configuration of PROJ library
+################################################################################
+# Copyright (C) 2010 Mateusz Loskot <mateusz@loskot.net>
+#
+# Distributed under the Boost Software License, Version 1.0
+################################################################################
+# Macros in this module:
+#
+# proj_version - defines version information for PROJ library
+################################################################################
+
+# Defines version information for PROJ library
+#
+# proj_version(MAJOR major_version MINOR minor_version PATCH patch_level)
+#
+# MAJOR.MINOR version is used to set SOVERSION
+#
+
+macro(proj_version)
+ parse_arguments(THIS_VERSION "MAJOR;MINOR;PATCH;"
+ ""
+ ${ARGN})
+
+ # Set version components
+ set(${PROJECT_INTERN_NAME}_VERSION_MAJOR ${THIS_VERSION_MAJOR})
+ set(${PROJECT_INTERN_NAME}_VERSION_MINOR ${THIS_VERSION_MINOR})
+ set(${PROJECT_INTERN_NAME}_VERSION_PATCH ${THIS_VERSION_PATCH})
+
+ # Set VERSION string
+ set(${PROJECT_INTERN_NAME}_VERSION
+ "${${PROJECT_INTERN_NAME}_VERSION_MAJOR}.${${PROJECT_INTERN_NAME}_VERSION_MINOR}.${${PROJECT_INTERN_NAME}_VERSION_PATCH}")
+
+ # Set ABI version string used to name binary output
+ # On Windows, ABI version is specified using binary file name suffix.
+ if(WIN32)
+ set(${PROJECT_INTERN_NAME}_ABI_VERSION
+ "${${PROJECT_INTERN_NAME}_VERSION_MAJOR}_${${PROJECT_INTERN_NAME}_VERSION_MINOR}")
+ endif()
+
+ message(STATUS "")
+ boost_report_value(${PROJECT_INTERN_NAME}_VERSION)
+ if(WIN32)
+ boost_report_value(${PROJECT_INTERN_NAME}_ABI_VERSION)
+ endif(WIN32)
+endmacro()