From 137b91388d9b9db24c8136dd4e2c6e690a5712c5 Mon Sep 17 00:00:00 2001 From: Iceyer Date: Mon, 12 Feb 2018 21:20:47 +0800 Subject: [PATCH] feat: config pkg config with dtk_module Change-Id: Idc22c271c54e7185ba48ea4756e8a33f431d9642 --- .gitignore | 1 + src/base/base.pri | 2 ++ src/dtk_build.prf | 1 + src/dtk_module.prf | 20 ++++++++++++++++++-- src/src.pro | 26 +++----------------------- 5 files changed, 25 insertions(+), 25 deletions(-) diff --git a/.gitignore b/.gitignore index a3bca22..25e4a6c 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,4 @@ build*/ src/DtkCore src/dtkcore_config.h cmake/DtkCore/DtkCoreConfig.cmake +src/qt_lib_d*.pri diff --git a/src/base/base.pri b/src/base/base.pri index fd52fce..773c9ea 100644 --- a/src/base/base.pri +++ b/src/base/base.pri @@ -1,5 +1,7 @@ include($$PWD/private/private.pri) +INCLUDEPATH += $$PWD/base + HEADERS += \ $$PWD/dobject.h \ $$PWD/dsingleton.h diff --git a/src/dtk_build.prf b/src/dtk_build.prf index 44b6bcb..f71a50e 100644 --- a/src/dtk_build.prf +++ b/src/dtk_build.prf @@ -43,6 +43,7 @@ CONFIG += c++11 create_pc create_prl no_install_prl CONFIG += no_keywords DEFINES += QT_MESSAGELOGCONTEXT +DEFINES += LIB$$upper($$TARGET)_LIBRARY isEmpty(PREFIX){ PREFIX = /usr diff --git a/src/dtk_module.prf b/src/dtk_module.prf index 236d846..fc218f0 100644 --- a/src/dtk_module.prf +++ b/src/dtk_module.prf @@ -1,6 +1,22 @@ -isEmpty(QT_MODULE): error("QT_MODULE must not empty") +isEmpty(DTK_MODULE): DTK_MODULE=$$TARGET +isEmpty(DTK_MODULE): error("DTK_MODULE must not empty") +isEmpty(includes.path): error("includes.path must not empty, please load(dtk_build) first!") +isEmpty(target.path): error("target.path must not empty, , please load(dtk_build) first!") -MODULE_ID=$$QT_MODULE + +# ----------------------- +# Config pkg-config +QMAKE_PKGCONFIG_VERSION = $$VERSION +QMAKE_PKGCONFIG_DESTDIR = pkgconfig +QMAKE_PKGCONFIG_NAME = DTK_$$upper($$replace(TARGET, "dtk", "")) +QMAKE_PKGCONFIG_DESCRIPTION = Deepin Tool Kit $$TARGET header files +QMAKE_PKGCONFIG_INCDIR = $$includes.path +QMAKE_PKGCONFIG_LIBDIR = $$target.path + + +# ----------------------- +# Config Qt module +MODULE_ID=$$DTK_MODULE mod_inst_pfx=$$_PRO_FILE_PWD_ MODULE_PRI = $$mod_inst_pfx/qt_lib_$${MODULE_ID}.pri module_libs = $$target.path diff --git a/src/src.pro b/src/src.pro index 5c8fc04..c009e92 100644 --- a/src/src.pro +++ b/src/src.pro @@ -1,19 +1,13 @@ QT -= gui QT += dbus CONFIG += link_pkgconfig - TARGET = dtkcore -DEFINES += LIBDTKCORE_LIBRARY - -INCLUDEPATH += $$PWD $$PWD/base - -HEADERS += \ - $$PWD/dtkcore_global.h - - include(dtk_build.prf) +INCLUDEPATH += $$PWD +HEADERS += $$PWD/dtkcore_global.h + include($$PWD/base/base.pri) include($$PWD/util/util.pri) include($$PWD/log/log.pri) @@ -80,7 +74,6 @@ defineTest(updateDtkCoreConfigFile) { !updateDtkCoreConfigFile():warning(Cannot create "dtkcore_config.h" header file) - # ---------------------------------------------- # install config includes.files += $$PWD/*.h $$PWD/dtkcore_config.h $$PWD/DtkCore @@ -88,26 +81,13 @@ includes.path = $${DTK_INCLUDEPATH}/DCore INSTALLS += includes target -#pkg-config -QMAKE_PKGCONFIG_LIBDIR = $$target.path -QMAKE_PKGCONFIG_VERSION = $$VERSION -QMAKE_PKGCONFIG_DESTDIR = pkgconfig - -QMAKE_PKGCONFIG_NAME = DTK_CORE -QMAKE_PKGCONFIG_DESCRIPTION = Deepin Tool Kit Core Header Files -QMAKE_PKGCONFIG_INCDIR = $$includes.path - #cmake CMAKE_MODULE=DtkCore include(dtk_cmake.prf) - -#qt module -QT_MODULE=dcore include(dtk_module.prf) prf.files+= $$PWD/*.prf prf.path = $${QT_HOST_DATA}/mkspecs/features - INSTALLS += prf # ----------------------------------------------- -- 2.30.2