Nп/п : 63 из 100
От : Nil A 2:5015/46 27 фев 26 07:19:20
К : Max Vasilyev 27 фев 26 07:27:01
Тема : change srcdate and spec
----------------------------------------------------------------------------------
@MSGID: 2:5015/46 69a11cf4
@REPLY: 2:5057/77 699c0160
@CHRS: CP866 2
@TZUTC: 0300
@TID: hpt/lnx 1.9
Hello, Max!
Monday February 23 2026 11:25, from Max Vasilyev -> Vitaliy Aksyonov:
VA>> Залил патч в гит.
MV> а reldate и __SRCDATE__ поправить в golded.spec и srcdate.h?
Ну это же не задача разработчика патчика, а Release Engineer`а. С
релизами, кстати, вообще всё плохо, потому что мы застряли на 1.1.5 просто.
Я не знаю чем в Windows, DOS и OS/2 собирают, но для CMake и
Makefile можно придумать что-то типа.
=== Для корневого CMakeLists.txt ===
execute_process(
COMMAND git log -1 --format=%cd --date=format:%Y%m%d
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_DATE
OUTPUT_STRIP_TRAILING_WHITESPACE
)
file(WRITE ${CMAKE_BINARY_DIR}/srcdate.h "#ifndef __SRCDATE__
#define __SRCDATE__ "${GIT_DATE}"
#endif
")
include_directories(${CMAKE_BINARY_DIR})
=== Для Makefile ===
srcdate.h:
echo "#ifndef __SRCDATE__" > srcdate.h
echo "#define __SRCDATE__ "`git log -1 --format=%cd
--date=format:%Y%m%d`"" >> srcdate.h
echo "#endif" >> srcdate.h
=== Для rpmbuild запускать ===
rpmbuild -D "reldate $(git log -1 --format=%cd --date=format:%Y%m%d)"
Или сделать эти два файла шаблонами srcdate.h.in и golded.spec.in
====srcdate.h.in===
#ifndef __SRCDATE__
#define __SRCDATE__ "@SRCDATE@"
#endif
===golded.spec.in===
%define reldate @SRCDATE@
И генерировать их тоже
===Cmake===
configure_file(${CMAKE_SOURCE_DIR}/srcdate.h.in ${CMAKE_BINARY_DIR}/srcdate.h
@ONLY)
configure_file(${CMAKE_SOURCE_DIR}/golded.spec.in
${CMAKE_BINARY_DIR}/golded.spec @ONLY)
===Makefile====
srcdate.h: srcdate.h.in SRCDATE
sed `s/@SRCDATE@/$(SRCDATE)/g` $< > $@
golded.spec: golded.spec.in SRCDATE
sed `s/@SRCDATE@/$(SRCDATE)/g` $< > $@
Best Regards, Nil
--- GoldED+/LNX 1.1.5-b20250409
* Origin: Gemini can make mistakes, so double-check it (2:5015/46)
SEEN-BY: 46/49 50/109 104/117 221/6 240/1120 301/1
341/66 451/31 452/28 166
SEEN-BY: 455/19 460/58 463/68 4500/1 5000/111
5015/42 46 255 5019/40 400
SEEN-BY: 5020/101 113 545 620 715 830 846 848
1042 2992 4441 12000 5022/128
SEEN-BY: 5029/32 5030/49 115 1081 1474 5049/1 3
5050/151 5053/51 58 5054/89
SEEN-BY: 5058/104 5060/900 5061/133 5068/45 5083/1
444 6078/80 6090/1
@PATH: 5015/46 5020/1042 4441