@@ -439,64 +439,43 @@ INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR})
439
439
LINK_DIRECTORIES (${CMAKE_BINARY_DIR} /src/core ${CMAKE_BINARY_DIR} /src/gui )
440
440
441
441
#############################################################
442
- # create qgssvnversion .h
442
+ # create qgsversion .h
443
443
444
- FIND_FILE (SVN_MARKER entries PATHS ${CMAKE_SOURCE_DIR} /.svn )
445
- FIND_FILE (GIT_MARKER index PATHS ${CMAKE_SOURCE_DIR} /.git )
446
444
447
- IF (SVN_MARKER )
448
- # See if we have svn installed
449
- FIND_PROGRAM (SVNVERSION svnversion PATHS c:/cygwin/bin )
445
+ FIND_FILE (GIT_MARKER index PATHS ${CMAKE_SOURCE_DIR} /.git )
450
446
451
- IF (SVNVERSION )
447
+ IF (GIT_MARKER )
448
+ FIND_PROGRAM (GIT git PATHS c:/cygwin/bin )
449
+ IF (GIT )
452
450
IF (MSVC )
453
451
ADD_CUSTOM_COMMAND (
454
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR} /qgssvnversion .h
455
- COMMAND for /f usebackq %%a in "(`\" ${SVNVERSION } \" `)" do echo \#define QGSSVNVERSION \"%%a\" >${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion .h
456
- MAIN_DEPENDENCY ${SVN_MARKER }
452
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR} /qgsversion .h
453
+ COMMAND for /f \ " usebackq tokens=1 \" %%a in " (`\" ${GIT } \" log -n1 --oneline ` )" do echo \# define QGSVERSION \" %%a\" >${CMAKE_CURRENT_BINARY_DIR} /qgsversion .h
454
+ MAIN_DEPENDENCY ${GIT_MARKER }
457
455
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
458
456
)
459
457
ELSE(MSVC)
458
+ MESSAGE(STATUS " writing ${CMAKE_CURRENT_BINARY_DIR} /qgsversion.h ")
459
+ EXECUTE_PROCESS(COMMAND ${GIT} log -n1 --pretty=%h OUTPUT_VARIABLE REVISION)
460
+ STRING(STRIP " ${REVISION} " REVISION)
460
461
ADD_CUSTOM_COMMAND(
461
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR} /qgssvnversion .h
462
- COMMAND echo \\\#define QGSSVNVERSION \\\"`${SVNVERSION}` \\\" >${CMAKE_CURRENT_BINARY_DIR}/qgssvnversion .h
463
- MAIN_DEPENDENCY ${SVN_MARKER }
462
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR} /qgsversion .h
463
+ COMMAND echo \\\# define QGSVERSION \\\" ${REVISION} \\\" >${CMAKE_CURRENT_BINARY_DIR} /qgsversion .h
464
+ MAIN_DEPENDENCY ${GIT_MARKER }
464
465
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
465
466
)
466
467
ENDIF(MSVC)
467
- ELSE (SVNVERSION )
468
- MESSAGE (STATUS "svnversion not found - version will be unknown" )
469
- FILE (WRITE ${CMAKE_CURRENT_BINARY_DIR} /qgssvnversion.h "#define QGSSVNVERSION \" unknown\" " )
470
- ENDIF (SVNVERSION )
471
- ELSE (SVN_MARKER )
472
- IF (GIT_MARKER )
473
- FIND_PROGRAM (GIT git PATHS c:/cygwin/bin )
474
- IF (GIT )
475
- IF (MSVC )
476
- ADD_CUSTOM_COMMAND (
477
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR} /qgssvnversion.h
478
- COMMAND for /f \"usebackq tokens=1\" %%a in " (`\" ${GIT} \" log -n1 --oneline` )" do echo \# define QGSSVNVERSION \" %%a\" >${CMAKE_CURRENT_BINARY_DIR} /qgssvnversion.h
479
- MAIN_DEPENDENCY ${GIT_MARKER}
480
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
481
- )
482
- ELSE(MSVC)
483
- ADD_CUSTOM_COMMAND(
484
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR} /qgssvnversion.h
485
- COMMAND echo \\ #define QGSSVNVERSION \\\" $$\( ${GIT} log -n1 --pretty=%h \)\\\" >${CMAKE_CURRENT_BINARY_DIR} /qgssvnversion.h
486
- MAIN_DEPENDENCY ${GIT_MARKER}
487
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
488
- )
489
- ENDIF(MSVC)
490
- ELSE(GIT)
491
- MESSAGE(STATUS " git marker, but no git found - version will be unknown ")
492
- FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR} /qgssvnversion.h " #define QGSSVNVERSION \"unknown\"")
493
- ENDIF (GIT )
494
- ELSE (GIT_MARKER )
495
- FILE (WRITE ${CMAKE_CURRENT_BINARY_DIR} /qgssvnversion.h "#define QGSSVNVERSION \" exported\" " )
496
- ENDIF (GIT_MARKER )
497
- ENDIF (SVN_MARKER )
498
-
499
- ADD_CUSTOM_TARGET (svnversion ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR} /qgssvnversion.h )
468
+ ELSE(GIT)
469
+ MESSAGE(STATUS " git marker, but no git found - version will be unknown ")
470
+ SET(REVISION " unknown ")
471
+ FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR} /qgsversion.h " #define QGSVERSION \"unknown\"")
472
+ ENDIF (GIT )
473
+ ELSE (GIT_MARKER )
474
+ SET (REVISION "exported" )
475
+ FILE (WRITE ${CMAKE_CURRENT_BINARY_DIR} /qgsversion.h "#define QGSVERSION \" exported\" " )
476
+ ENDIF (GIT_MARKER )
477
+
478
+ ADD_CUSTOM_TARGET (version ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR} /qgsversion.h )
500
479
501
480
#############################################################
502
481
# process subdirs
0 commit comments