*NIX (autofoo and cmake) part of the fix for
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6134 : Make VERSION_MAJOR, VERSION_MINOR, and VERSION_MICRO available in config.h so (e.g.) dissector writers can #if around them as necessary to make a piece of code compile with different versions of Wireshark. (Hopefully VERSION_MICRO is not important in this respect!) Windows also defines VERSION_EXTRA which can be used to help identify custom builds; this is not done for these build methods (yet?). svn path=/trunk/; revision=44986
This commit is contained in:
parent
b6e0cc28a5
commit
5ee932193f
|
@ -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_VERSION
|
||||
${VERSIONLINE}
|
||||
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_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
|
||||
|
|
|
@ -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 */
|
||||
|
|
12
configure.ac
12
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.
|
||||
|
|
Loading…
Reference in New Issue