aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt71
-rw-r--r--cmakeconfig.h.in3
-rw-r--r--configure.ac12
3 files changed, 55 insertions, 31 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 379286843d..78fecd3340 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -33,42 +33,53 @@ if(COMMAND cmake_policy)
# cmake_policy(SET CMP0015 NEW)
endif(COMMAND cmake_policy)
-# set(PROJECT_VERSION "1.3.4-rc5")
-# set(PROJECT_VERSION "1.3.4rc5")
-# set(PROJECT_VERSION "1.3.4")
-# If not set, copy over Wireshark version from configure.ac AC_INIT
-if(NOT PROJECT_VERSION)
+# set(PROJECT_MAJOR_VERSION 1)
+# set(PROJECT_MINOR_VERSION 9)
+# set(PROJECT_PATCH_VERSION 0)
+# set(PROJECT_VERSION_EXTENSION "-rc5")
+# If not set, copy over Wireshark version from configure.ac
+if(NOT PROJECT_MAJOR_VERSION)
file(STRINGS
${CMAKE_SOURCE_DIR}/configure.ac
- VERSIONLINE
- REGEX "\\(wireshark, .*\\)"
+ PROJECT_MAJOR_VERSION_TMP
+ REGEX "^m4_define\\(version_major, [0-9]+\\)"
)
- string(REGEX REPLACE ".*\\(wireshark, ([^,)]*).*"
+ file(STRINGS
+ ${CMAKE_SOURCE_DIR}/configure.ac
+ PROJECT_MINOR_VERSION_TMP
+ REGEX "^m4_define\\(version_minor, [0-9]+\\)"
+ )
+ file(STRINGS
+ ${CMAKE_SOURCE_DIR}/configure.ac
+ PROJECT_PATCH_VERSION_TMP
+ REGEX "^m4_define\\(version_micro, [0-9]+\\)"
+ )
+ # XXX pull VERSION_EXTENSION out of configure.ac ?
+
+ string(REGEX REPLACE "m4_define\\(version_major, ([0-9]+)\\)"
+ "\\1"
+ PROJECT_MAJOR_VERSION
+ ${PROJECT_MAJOR_VERSION_TMP}
+ )
+ string(REGEX REPLACE "m4_define\\(version_minor, ([0-9]+)\\)"
+ "\\1"
+ PROJECT_MINOR_VERSION
+ ${PROJECT_MINOR_VERSION_TMP}
+ )
+ string(REGEX REPLACE "m4_define\\(version_micro, ([0-9]+)\\)"
"\\1"
- PROJECT_VERSION
- ${VERSIONLINE}
+ PROJECT_PATCH_VERSION
+ ${PROJECT_PATCH_VERSION_TMP}
)
endif()
-string(REGEX REPLACE "([0-9]+)\\..*"
- "\\1"
- PROJECT_MAJOR_VERSION
- ${PROJECT_VERSION}
-)
-string(REGEX REPLACE ".*\\.([0-9]+)\\..*"
- "\\1"
- PROJECT_MINOR_VERSION
- ${PROJECT_VERSION}
-)
-string(REGEX REPLACE ".*\\..*\\.([0-9]+).*"
- "\\1"
- PROJECT_PATCH_VERSION
- ${PROJECT_VERSION}
-)
-string(REGEX REPLACE ".*\\..*\\.[0-9]+(.*)"
- "\\1"
- PROJECT_VERSION_EXTENSION
- ${PROJECT_VERSION}
-)
+
+
+if(PROJECT_VERSION_EXTENSION)
+ set(PROJECT_VERSION ${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT_PATCH_VERSION}${PROJECT_VERSION_EXTENSION})
+else()
+ set(PROJECT_VERSION ${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT_PATCH_VERSION})
+endif()
+
message(STATUS "V: ${PROJECT_VERSION}, MaV: ${PROJECT_MAJOR_VERSION}, MiV: ${PROJECT_MINOR_VERSION}, PL: ${PROJECT_PATCH_VERSION}, EV: ${PROJECT_VERSION_EXTENSION}.")
#Where to find local cmake scripts
diff --git a/cmakeconfig.h.in b/cmakeconfig.h.in
index 52777aef49..f8cd1cd0c5 100644
--- a/cmakeconfig.h.in
+++ b/cmakeconfig.h.in
@@ -7,6 +7,9 @@
/* Version number of package */
#define VERSION "${CPACK_PACKAGE_VERSION}"
+#define VERSION_MAJOR "${PROJECT_MAJOR_VERSION}"
+#define VERSION_MINOR "${PROJECT_MINOR_VERSION}"
+#define VERSION_MICRO "${PROJECT_PATCH_VERSION}"
/* FIXME: Move the path stuff to the CMakeInstallDirs.cmake file */
/* Directory for data */
diff --git a/configure.ac b/configure.ac
index 978c376bf5..fe9ab80566 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,7 +2,12 @@
#
AC_PREREQ(2.60)
-AC_INIT(wireshark, 1.9.0, http://bugs.wireshark.org/, , http://www.wireshark.org/)
+m4_define(version_major, 1)
+m4_define(version_minor, 9)
+m4_define(version_micro, 0)
+# XXX version_extra ?
+
+AC_INIT(wireshark, [version_major.version_minor.version_micro], http://bugs.wireshark.org/, , http://www.wireshark.org/)
dnl Check for CPU / vendor / OS
dnl The user is encouraged to use either `AC_CANONICAL_BUILD', or
@@ -26,6 +31,11 @@ AC_CANONICAL_TARGET
AM_INIT_AUTOMAKE([1.9 tar-ustar dist-bzip2 no-dist-gzip])
+# Make Wireshark's version available in config.h
+AC_DEFINE(VERSION_MAJOR, version_major, [Wireshark's major version])
+AC_DEFINE(VERSION_MINOR, version_minor, [Wireshark's minor version])
+AC_DEFINE(VERSION_MICRO, version_micro, [Wireshark's micro version])
+
AM_DISABLE_STATIC
dnl Checks for programs.