Skip to content

Commit cbf7b5c

Browse files
committedApr 13, 2016
fix 7454d87
1 parent 7454d87 commit cbf7b5c

File tree

3 files changed

+40
-40
lines changed

3 files changed

+40
-40
lines changed
 

‎CMakeLists.txt

Lines changed: 38 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -16,44 +16,7 @@ ENDIF (APPLE)
1616

1717
# Note the version no is Mmmpp for Major/minor/patch, 0-padded, thus '10100' for 1.1.0
1818
MATH(EXPR QGIS_VERSION_INT "${CPACK_PACKAGE_VERSION_MAJOR}*10000+${CPACK_PACKAGE_VERSION_MINOR}*100+${CPACK_PACKAGE_VERSION_PATCH}")
19-
20-
#############################################################
21-
# create qgsversion.h
22-
IF (EXISTS ${CMAKE_SOURCE_DIR}/.git/index)
23-
FIND_PROGRAM(GITCOMMAND git PATHS c:/cygwin/bin)
24-
IF(GITCOMMAND)
25-
IF(WIN32)
26-
ADD_CUSTOM_COMMAND(
27-
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h
28-
COMMAND for /f \"usebackq tokens=1\" %%a in "(`\"${GITCOMMAND}\" log -n1 --oneline`)" do echo \#define QGSVERSION \"%%a\" >${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h.temp
29-
COMMAND ${CMAKE_COMMAND} -DSRC=${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h.temp -DDST=${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h -P ${CMAKE_SOURCE_DIR}/cmake/CopyIfChanged.cmake
30-
MAIN_DEPENDENCY ${CMAKE_SOURCE_DIR}/.git/index
31-
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
32-
)
33-
ELSE(WIN32)
34-
ADD_CUSTOM_COMMAND(
35-
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h
36-
COMMAND ${GITCOMMAND} log -n1 --pretty=\#define\\ QGSVERSION\\ \\"%h\\" >${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h.temp
37-
COMMAND ${GITCOMMAND} config remote.$$\(${GITCOMMAND} config branch.$$\(${GITCOMMAND} name-rev --name-only HEAD\).remote\).url | sed -e 's/^/\#define QGS_GIT_REMOTE_URL \"/' -e 's/$$/\"/' >>${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h.temp
38-
COMMAND ${CMAKE_COMMAND} -DSRC=${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h.temp -DDST=${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h -P ${CMAKE_SOURCE_DIR}/cmake/CopyIfChanged.cmake
39-
MAIN_DEPENDENCY ${CMAKE_SOURCE_DIR}/.git/index
40-
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
41-
)
42-
ENDIF(WIN32)
43-
ELSE(GITCOMMAND)
44-
MESSAGE(STATUS "git marker, but no git found - version will be unknown")
45-
SET(REVISION "unknown")
46-
FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h "#define QGSVERSION \"unknown\"")
47-
ENDIF(GITCOMMAND)
48-
ELSE (EXISTS ${CMAKE_SOURCE_DIR}/.git/index)
49-
SET(REVISION "exported")
50-
FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h "#define QGSVERSION \"exported\"")
51-
ENDIF (EXISTS ${CMAKE_SOURCE_DIR}/.git/index)
52-
53-
FILE(READ ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h VERSIONFILE)
54-
STRING(REGEX REPLACE "^.*#define QGSVERSION \"([^\"]+)\".*$" "\\1" QGSVERSION "${VERSIONFILE}")
55-
56-
MESSAGE(STATUS "QGIS version: ${COMPLETE_VERSION} ${RELEASE_NAME} (${QGIS_VERSION_INT} / ${QGSVERSION})")
19+
MESSAGE(STATUS "QGIS version: ${COMPLETE_VERSION} ${RELEASE_NAME} (${QGIS_VERSION_INT})")
5720

5821
#############################################################
5922
# CMake settings
@@ -772,6 +735,43 @@ INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR})
772735
# that may be in the same install prefix
773736
LINK_DIRECTORIES(${CMAKE_BINARY_DIR}/src/core ${CMAKE_BINARY_DIR}/src/gui)
774737

738+
#############################################################
739+
# create qgsversion.h
740+
IF (EXISTS ${CMAKE_SOURCE_DIR}/.git/index)
741+
FIND_PROGRAM(GITCOMMAND git PATHS c:/cygwin/bin)
742+
IF(GITCOMMAND)
743+
IF(WIN32)
744+
ADD_CUSTOM_COMMAND(
745+
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.inc
746+
COMMAND for /f \"usebackq tokens=1\" %%a in "(`\"${GITCOMMAND}\" log -n1 --oneline`)" do echo \#define QGSVERSION \"%%a\" >${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h.temp
747+
COMMAND for /f \"usebackq tokens=1\" %%a in "(`\"${GITCOMMAND}\" log -n1 --oneline`)" do echo PROJECT_NUMBER = \"${COMPLETE_VERSION}-${RELEASE_NAME} \(%%a\)\" >${CMAKE_CURRENT_BINARY_DIR}/qgsversion.inc
748+
COMMAND ${CMAKE_COMMAND} -DSRC=${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h.temp -DDST=${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h -P ${CMAKE_SOURCE_DIR}/cmake/CopyIfChanged.cmake
749+
MAIN_DEPENDENCY ${CMAKE_SOURCE_DIR}/.git/index
750+
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
751+
)
752+
ELSE(WIN32)
753+
ADD_CUSTOM_COMMAND(
754+
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.inc
755+
COMMAND ${GITCOMMAND} log -n1 --pretty=\#define\\ QGSVERSION\\ \\"%h\\" >${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h.temp
756+
COMMAND ${GITCOMMAND} log -n1 --pretty='PROJECT_NUMBER = \"${COMPLETE_VERSION}-${RELEASE_NAME} \(%h\)\"' >${CMAKE_CURRENT_BINARY_DIR}/qgsversion.inc
757+
COMMAND ${GITCOMMAND} config remote.$$\(${GITCOMMAND} config branch.$$\(${GITCOMMAND} name-rev --name-only HEAD\).remote\).url | sed -e 's/^/\#define QGS_GIT_REMOTE_URL \"/' -e 's/$$/\"/' >>${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h.temp
758+
COMMAND ${CMAKE_COMMAND} -DSRC=${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h.temp -DDST=${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h -P ${CMAKE_SOURCE_DIR}/cmake/CopyIfChanged.cmake
759+
MAIN_DEPENDENCY ${CMAKE_SOURCE_DIR}/.git/index
760+
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
761+
)
762+
ENDIF(WIN32)
763+
ELSE(GITCOMMAND)
764+
MESSAGE(STATUS "git marker, but no git found - version will be unknown")
765+
SET(REVISION "unknown")
766+
FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h "#define QGSVERSION \"unknown\"")
767+
FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.inc "${COMPLETE_VERSION}-${RELEASE_NAME}")
768+
ENDIF(GITCOMMAND)
769+
ELSE (EXISTS ${CMAKE_SOURCE_DIR}/.git/index)
770+
SET(REVISION "exported")
771+
FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h "#define QGSVERSION \"exported\"")
772+
FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.inc "${COMPLETE_VERSION}-${RELEASE_NAME}")
773+
ENDIF (EXISTS ${CMAKE_SOURCE_DIR}/.git/index)
774+
775775
ADD_CUSTOM_TARGET(version ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h)
776776

777777
#############################################################

‎cmake_templates/Doxyfile.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ PROJECT_NAME = "QGIS API Documentation"
3131
# This could be handy for archiving the generated documentation or
3232
# if some version control system is used.
3333

34-
PROJECT_NUMBER = "@COMPLETE_VERSION@-@RELEASE_NAME@ (@QGSVERSION@)"
34+
@INCLUDE = "@CMAKE_BINARY_DIR@/qgsversion.inc"
3535

3636
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
3737
# base path where the generated documentation will be put.

‎doc/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ IF(WITH_APIDOC)
4444
ADD_CUSTOM_TARGET(apidoc ALL
4545
COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile
4646
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
47-
DEPENDS qgis_core qgis_gui qgis_analysis
47+
DEPENDS qgis_core qgis_gui qgis_analysis version
4848
COMMENT "Generating API documentation" VERBATIM)
4949
INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/api/html/ DESTINATION ${QGIS_DATA_DIR}/doc/api)
5050
INSTALL(FILES ../images/icons/qgis-icon-60x60.png DESTINATION ${QGIS_DATA_DIR}/doc/api)

0 commit comments

Comments
 (0)
Please sign in to comment.