forked from enlightenment/efl
cmake: improve versioning
The version defines are now done all the time. and the version pattern does mach the one from autotools. And supports release mode now.
This commit is contained in:
parent
9f2a2f7968
commit
2a5c2a0c3c
|
@ -1,7 +1,11 @@
|
|||
cmake_minimum_required(VERSION 3.7)
|
||||
project(efl VERSION 1.19.99.1)
|
||||
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/helpers")
|
||||
|
||||
include(GNUInstallDirs)
|
||||
include(EflMacros)
|
||||
|
||||
EFL_PROJECT(1.19.99)
|
||||
|
||||
if (NOT EFL_BUILD_ID)
|
||||
set(EFL_BUILD_ID 120)
|
||||
|
@ -21,6 +25,7 @@ add_definitions(
|
|||
"-DPACKAGE_BIN_DIR=\"${CMAKE_INSTALL_FULL_BINDIR}\""
|
||||
"-DPACKAGE_LIB_DIR=\"${CMAKE_INSTALL_FULL_LIBDIR}\""
|
||||
"-DPACKAGE_BUILD_DIR=\"${CMAKE_SOURCE_DIR}\""
|
||||
"-DPACKAGE_VERSION=\"${PROJECT_VERSION}\""
|
||||
)
|
||||
|
||||
include_directories(
|
||||
|
@ -28,9 +33,6 @@ include_directories(
|
|||
${PROJECT_BINARY_DIR}/src/lib/efl
|
||||
)
|
||||
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/helpers")
|
||||
include(EflMacros)
|
||||
|
||||
include(${CMAKE_SOURCE_DIR}/cmake/config/common.cmake)
|
||||
|
||||
EFL_LIB(eina)
|
||||
|
|
|
@ -854,3 +854,18 @@ function(EFL_MODULE _modname)
|
|||
endif()
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
macro(EFL_PROJECT version)
|
||||
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Release")
|
||||
project(efl VERSION ${version})
|
||||
else ("${CMAKE_BUILD_TYPE}" STREQUAL "Release")
|
||||
execute_process(
|
||||
COMMAND git rev-list --count HEAD
|
||||
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
||||
OUTPUT_VARIABLE GIT_VERSION
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
project(efl VERSION ${version}.${GIT_VERSION})
|
||||
endif ("${CMAKE_BUILD_TYPE}" STREQUAL "Release")
|
||||
message("VERSION ${PROJECT_VERSION}")
|
||||
endmacro()
|
|
@ -15,7 +15,7 @@
|
|||
and require an explicit request to get it. */
|
||||
#endif
|
||||
|
||||
#cmakedefine EFL_VERSION_MAJOR @EFL_VERSION_MAJOR@
|
||||
#cmakedefine EFL_VERSION_MINOR @EFL_VERSION_MINOR@
|
||||
#cmakedefine EFL_BUILD_ID "@EFL_BUILD_ID@"
|
||||
#define EFL_VERSION_MAJOR @EFL_VERSION_MAJOR@
|
||||
#define EFL_VERSION_MINOR @EFL_VERSION_MINOR@
|
||||
#define EFL_BUILD_ID "@EFL_BUILD_ID@"
|
||||
#endif
|
||||
|
|
|
@ -4,10 +4,10 @@
|
|||
#define _GNU_SOURCE
|
||||
#cmakedefine HAVE_SYS_MMAN_H 1
|
||||
|
||||
#cmakedefine VMAJ @VMAJ@
|
||||
#cmakedefine VMIN @VMIN@
|
||||
#cmakedefine VMIC @VMIC@
|
||||
#cmakedefine VREV @VREV@
|
||||
#define VMAJ @VMAJ@
|
||||
#define VMIN @VMIN@
|
||||
#define VMIC @VMIC@
|
||||
#define VREV @VREV@
|
||||
|
||||
#cmakedefine NVALGRIND 1
|
||||
#cmakedefine HAVE_CLOCK_GETTIME 1
|
||||
|
|
Loading…
Reference in New Issue