Russian Qt Forum
Ноябрь 24, 2024, 22:48 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 2 [3]   Вниз
  Печать  
Автор Тема: CMake 2.6-patch4  (Прочитано 18191 раз)
asvil
Гость
« Ответ #30 : Июнь 28, 2011, 11:21 »

Посмотрев интернеты пришел к выводу о том, что git проекта версию не так то просто сформировать. Некоторые делают версию "Имя последенго тега"."Кол-во коммитов от него".

Пока вопрос остается открытым.

Однако есть еще один не менее интересный понт использовать в качестве версии Год.Месяц.День, однако кроссплатформенно получить timestamp не просто, надо писать способ под каждую платформу.

Вообще пользователю не интересна версия как таковая, версия по большей части используется для обратной связи с тестировщиками. И здесь, чем быстрее по версии можно включить коммит тем удобнее.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #31 : Октябрь 11, 2011, 20:10 »

Так как получить хэш гита?
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #32 : Октябрь 11, 2011, 21:41 »

Сам с собой веду беседу
Код:
macro( get_git_revision VAR)
exec_program(
    "git"
    ${PROJECT_SOURCE_DIR}
    ARGS "rev-parse -q HEAD"
    OUTPUT_VARIABLE ${VAR} )
endmacro( get_git_revision )

get_git_revision(GIT_REVISION)
Записан
asvil
Гость
« Ответ #33 : Ноябрь 02, 2011, 16:31 »

Как получить текущую дату?

Взято отсюда
http://projects.blender.org/scm/viewvc.php/*checkout*/trunk/blender/build_files/cmake/buildinfo.cmake?root=bf-blender

Код:
# Кроссплатформенно получаем дату и время и сохраняем их в переменных BUILD_DATE, BUILD_TIME соответственно
if(UNIX)
execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND date "+%H:%M:%S" OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
endif()
if(WIN32)
execute_process(COMMAND cmd /c date /t OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND cmd /c time /t OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
endif()

# Записывает полученные данный в заголовочный файл
file(WRITE buildinfo.h.txt
"#define BUILD_DATE \"${BUILD_DATE}\"\n"
"#define BUILD_TIME \"${BUILD_TIME}\"\n"
)
« Последнее редактирование: Ноябрь 20, 2011, 19:45 от Филоненко Михаил » Записан
Страниц: 1 2 [3]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.055 секунд. Запросов: 23.