Skip to content

Commit 5f29937

Browse files
sync: from linuxdeepin/dtklog
Synchronize source files from linuxdeepin/dtklog. Source-pull-request: linuxdeepin/dtklog#23
1 parent f562b2f commit 5f29937

File tree

4 files changed

+41
-30
lines changed

4 files changed

+41
-30
lines changed

CMakeLists.txt

Lines changed: 30 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -4,29 +4,39 @@ SET(CMAKE_CXX_STANDARD 11)
44
SET(CMAKE_CXX_STANDARD_REQUIRED ON)
55
SET(CMAKE_AUTOMOC ON)
66

7-
FILE (READ "${CMAKE_CURRENT_SOURCE_DIR}/VERSION" DTK_FILE_VERSION)
8-
STRING (STRIP "${DTK_FILE_VERSION}" DTK_FILE_VERSION)
9-
SET (DLOG_VERSION "${DTK_FILE_VERSION}" CACHE STRING "define project version")
10-
SET (BUILD_WITH_SYSTEMD OFF CACHE BOOL "Build with systemd")
11-
SET (BUILD_WITH_QT6 OFF CACHE BOOL "Build with Qt6")
12-
13-
IF(BUILD_WITH_QT6)
14-
SET(QT_VERSION_MAJOR "6")
15-
SET(DTK_VERSION_MAJOR "6")
16-
ELSE()
17-
SET(QT_VERSION_MAJOR "5")
18-
ENDIF()
7+
FILE (READ "${CMAKE_CURRENT_SOURCE_DIR}/VERSION" FILE_VERSION)
8+
STRING (STRIP "${FILE_VERSION}" FILE_VERSION)
199

20-
SET (DLog "Dtk${DTK_VERSION_MAJOR}Log")
21-
PROJECT(${DLog}
22-
VERSION ${DLOG_VERSION}
10+
PROJECT(DtkLog
11+
VERSION ${FILE_VERSION}
2312
DESCRIPTION "Simple, convinient and thread safe logger for Qt-based C++ apps"
13+
HOMEPAGE_URL "https://github.com/linuxdeepin/dtklog"
2414
LANGUAGES CXX
2515
)
2616

17+
SET (BUILD_WITH_SYSTEMD OFF CACHE BOOL "Build with systemd")
18+
19+
# 引入 DTK5/DTK6 构建选项
20+
option(DTK5 "Build DTK5." ON)
21+
if(DTK5)
22+
set(DTK_VERSION_MAJOR "5")
23+
set(DTK_NAME_SUFFIX "") # DTK5 产品名称后缀为空
24+
else()
25+
set(DTK_VERSION_MAJOR "6")
26+
set(DTK_NAME_SUFFIX "6") # DTK6 产品名称后缀为 "6"
27+
endif()
28+
29+
set(DTK_VERSION_MINOR ${PROJECT_VERSION_MINOR})
30+
set(DTK_VERSION_PATCH ${PROJECT_VERSION_PATCH})
31+
set(DTK_VERSION "${DTK_VERSION_MAJOR}.${DTK_VERSION_MINOR}.${DTK_VERSION_PATCH}")
32+
# 官方约定:DTK5 使用 Qt5,DTK6 使用 Qt6
33+
set(QT_VERSION_MAJOR ${DTK_VERSION_MAJOR})
34+
35+
SET (DLog "Dtk${DTK_NAME_SUFFIX}Log")
36+
2737
INCLUDE(GNUInstallDirs)
2838
INCLUDE(CMakePackageConfigHelpers) # configure_package_config_file
29-
SET (INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR}/dtk${QT_VERSION_MAJOR}/DLog")
39+
SET (INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR}/dtk${DTK_VERSION_MAJOR}/DLog")
3040
SET (LIBRARY_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}")
3141
SET (CONFIG_CMAKE_INSTALL_DIR "${LIBRARY_INSTALL_DIR}/cmake/${DLog}" CACHE STRING "Install dir for cmake config files")
3242
SET (MKSPECS_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/qt${QT_VERSION_MAJOR}/mkspecs/modules" CACHE STRING "Install dir for qt pri files")
@@ -77,7 +87,7 @@ IF(BUILD_WITH_SYSTEMD)
7787
SET(includes ${includes} include/JournalAppender.h)
7888
ENDIF(BUILD_WITH_SYSTEMD)
7989

80-
SET(library_target dtk${DTK_VERSION_MAJOR}log)
90+
SET(library_target dtk${DTK_NAME_SUFFIX}log)
8191

8292
ADD_LIBRARY(${library_target} SHARED ${sources} ${includes})
8393

@@ -92,8 +102,8 @@ TARGET_LINK_DIRECTORIES(${library_target} INTERFACE
92102
)
93103

94104
SET_TARGET_PROPERTIES(${library_target} PROPERTIES
95-
VERSION ${CMAKE_PROJECT_VERSION}
96-
SOVERSION ${CMAKE_PROJECT_VERSION_MAJOR}
105+
VERSION ${DTK_VERSION}
106+
SOVERSION ${DTK_VERSION_MAJOR}
97107
EXPORT_NAME Log
98108
)
99109

@@ -142,7 +152,7 @@ CONFIGURE_PACKAGE_CONFIG_FILE(misc/DLogConfig.cmake.in
142152
)
143153
WRITE_BASIC_PACKAGE_VERSION_FILE(
144154
"${CMAKE_CURRENT_BINARY_DIR}/${DLog}ConfigVersion.cmake"
145-
VERSION ${DLOG_VERSION}
155+
VERSION ${DTK_VERSION}
146156
COMPATIBILITY SameMajorVersion
147157
)
148158

misc/DLogConfig.cmake.in

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ include(CMakeFindDependencyMacro)
77

88
include(${CMAKE_CURRENT_LIST_DIR}/@DLog@Targets.cmake)
99

10-
get_target_property(Dtk@DTK_VERSION_MAJOR@Log_INCLUDE_DIRS Dtk@DTK_VERSION_MAJOR@::Log INTERFACE_INCLUDE_DIRECTORIES)
11-
get_target_property(Dtk@DTK_VERSION_MAJOR@Log_LIBRARY_DIRS Dtk@DTK_VERSION_MAJOR@::Log INTERFACE_LINK_DIRECTORIES)
10+
get_target_property(Dtk@DTK_NAME_SUFFIX@Log_INCLUDE_DIRS Dtk@DTK_NAME_SUFFIX@::Log INTERFACE_INCLUDE_DIRECTORIES)
11+
get_target_property(Dtk@DTK_NAME_SUFFIX@Log_LIBRARY_DIRS Dtk@DTK_NAME_SUFFIX@::Log INTERFACE_LINK_DIRECTORIES)
1212
check_required_components(@DLog@)
1313

misc/dtklog.pc.in

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ libdir=${prefix}/@LIBRARY_INSTALL_DIR@
44
includedir=${prefix}/@INCLUDE_INSTALL_DIR@
55

66
Name: @library_target@
7-
Description: @CMAKE_PROJECT_DESCRIPTION@
8-
Version: @CMAKE_PROJECT_VERSION@
7+
Description: @PROJECT_DESCRIPTION@
8+
Version: @DTK_VERSION@
99
Libs: -L${libdir} -l@library_target@
1010
Cflags: -I${includedir}
11+
Requires: Qt@QT_VERSION_MAJOR@Core

misc/qt_lib_dtklog.pri.in

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
QT.dtklog.VERSION = @CMAKE_PROJECT_VERSION@
2-
QT.dtklog.MAJOR_VERSION = @PROJECT_VERSION_MAJOR@
3-
QT.dtklog.MINOR_VERSION = @PROJECT_VERSION_MINOR@
4-
QT.dtklog.PATCH_VERSION = @PROJECT_VERSION_PATCH@
5-
QT.dtklog.name = dtklog
6-
QT.dtklog.module = dtk@DTK_VERSION_MAJOR@log
1+
QT.dtklog.VERSION = @DTK_VERSION@
2+
QT.dtklog.MAJOR_VERSION = @DTK_VERSION_MAJOR@
3+
QT.dtklog.MINOR_VERSION = @DTK_VERSION_MINOR@
4+
QT.dtklog.PATCH_VERSION = @DTK_VERSION_PATCH@
5+
QT.dtklog.name = dtk@DTK_NAME_SUFFIX@log
6+
QT.dtklog.module = dtk@DTK_NAME_SUFFIX@log
77
QT.dtklog.libs = @CMAKE_INSTALL_PREFIX@/@LIBRARY_INSTALL_DIR@
88
QT.dtklog.includes = @CMAKE_INSTALL_PREFIX@/@INCLUDE_INSTALL_DIR@
99
QT.dtklog.frameworks =

0 commit comments

Comments
 (0)