1
0
Fork 0

Add desktop-app::external_glib

This commit is contained in:
Ilya Fedin 2020-10-04 07:26:53 +04:00 • committed by John Preston
parent 5d6f8ebee3
commit 68438bb43d
4 changed files with 45 additions and 13 deletions

View file

@ -22,6 +22,9 @@ if (LINUX AND NOT DESKTOP_APP_DISABLE_DBUS_INTEGRATION)
add_checked_subdirectory(fcitx5_qt5) add_checked_subdirectory(fcitx5_qt5)
endif() endif()
add_checked_subdirectory(ffmpeg) add_checked_subdirectory(ffmpeg)
if (LINUX)
add_checked_subdirectory(glib)
endif()
add_checked_subdirectory(gsl) add_checked_subdirectory(gsl)
if (LINUX AND NOT DESKTOP_APP_DISABLE_DBUS_INTEGRATION) if (LINUX AND NOT DESKTOP_APP_DISABLE_DBUS_INTEGRATION)
add_checked_subdirectory(hime_qt) add_checked_subdirectory(hime_qt)

36
external/glib/CMakeLists.txt vendored Normal file
View file

@ -0,0 +1,36 @@
# This file is part of Desktop App Toolkit,
# a set of libraries for developing nice desktop applications.
#
# For license and copyright information please follow this link:
# https://github.com/desktop-app/legal/blob/master/LEGAL
add_library(external_glib INTERFACE IMPORTED GLOBAL)
add_library(desktop-app::external_glib ALIAS external_glib)
find_package(PkgConfig REQUIRED)
pkg_check_modules(GLIB2 REQUIRED IMPORTED_TARGET glib-2.0)
pkg_check_modules(GOBJECT REQUIRED IMPORTED_TARGET gobject-2.0)
pkg_check_modules(GIO REQUIRED IMPORTED_TARGET gio-2.0)
if (DESKTOP_APP_USE_PACKAGED)
target_link_libraries(external_glib
INTERFACE
PkgConfig::GIO
PkgConfig::GOBJECT
PkgConfig::GLIB2
)
else()
target_include_directories(external_glib
INTERFACE
${GIO_INCLUDE_DIRS}
${GOBJECT_INCLUDE_DIRS}
${GLIB2_INCLUDE_DIRS}
)
target_link_libraries(external_glib
INTERFACE
gio-2.0
gobject-2.0
glib-2.0
)
endif()

View file

@ -54,29 +54,29 @@ else()
CLIENT_LIB=1 CLIENT_LIB=1
) )
target_link_libraries(external_hime_im_client
PRIVATE
desktop-app::external_glib
)
if (DESKTOP_APP_USE_PACKAGED) if (DESKTOP_APP_USE_PACKAGED)
pkg_check_modules(X11 REQUIRED IMPORTED_TARGET x11) pkg_check_modules(X11 REQUIRED IMPORTED_TARGET x11)
pkg_check_modules(GLIB2 REQUIRED IMPORTED_TARGET glib-2.0)
target_link_libraries(external_hime_im_client target_link_libraries(external_hime_im_client
PRIVATE PRIVATE
PkgConfig::X11 PkgConfig::X11
PkgConfig::GLIB2
) )
else() else()
pkg_check_modules(X11 REQUIRED x11) pkg_check_modules(X11 REQUIRED x11)
pkg_check_modules(GLIB2 REQUIRED glib-2.0)
target_include_directories(external_hime_im_client target_include_directories(external_hime_im_client
PRIVATE PRIVATE
${X11_INCLUDE_DIRS} ${X11_INCLUDE_DIRS}
${GLIB2_INCLUDE_DIRS}
) )
target_link_libraries(external_hime_im_client target_link_libraries(external_hime_im_client
PRIVATE PRIVATE
X11 X11
glib-2.0
) )
endif() endif()
endif() endif()

View file

@ -23,18 +23,10 @@ else()
im-nimf-qt5.cpp im-nimf-qt5.cpp
) )
find_package(PkgConfig REQUIRED)
pkg_check_modules(GLIB2 REQUIRED glib-2.0)
pkg_check_modules(GOBJECT REQUIRED gobject-2.0)
pkg_check_modules(GIO REQUIRED gio-2.0)
target_include_directories(external_nimf_qt5 target_include_directories(external_nimf_qt5
PRIVATE PRIVATE
${nimf_qt5_src} ${nimf_qt5_src}
${libnimf_src} ${libnimf_src}
${GLIB2_INCLUDE_DIRS}
${GOBJECT_INCLUDE_DIRS}
${GIO_INCLUDE_DIRS}
) )
target_compile_definitions(external_nimf_qt5 target_compile_definitions(external_nimf_qt5
@ -49,6 +41,7 @@ else()
target_link_libraries(external_nimf_qt5 target_link_libraries(external_nimf_qt5
PRIVATE PRIVATE
desktop-app::external_qt desktop-app::external_qt
desktop-app::external_glib
${CMAKE_DL_LIBS} ${CMAKE_DL_LIBS}
) )
endif() endif()