1
0
Fork 0

Updated cmake sources to TDesktop version 2.4.7

This commit is contained in:
Eric Kotato 2020-11-07 00:04:45 +03:00
commit bf6a99a36e
16 changed files with 129 additions and 151 deletions

View file

@ -22,6 +22,9 @@ if (LINUX AND NOT DESKTOP_APP_DISABLE_DBUS_INTEGRATION)
add_checked_subdirectory(fcitx5_qt5)
endif()
add_checked_subdirectory(ffmpeg)
if (LINUX)
add_checked_subdirectory(glib)
endif()
add_checked_subdirectory(gsl)
if (LINUX AND NOT DESKTOP_APP_DISABLE_DBUS_INTEGRATION)
add_checked_subdirectory(hime_qt)
@ -30,9 +33,7 @@ if (add_hunspell_library)
add_checked_subdirectory(hunspell)
endif()
add_checked_subdirectory(iconv)
if (LINUX AND NOT DESKTOP_APP_DISABLE_DBUS_INTEGRATION)
add_checked_subdirectory(lxqt_qtplugin)
endif()
add_checked_subdirectory(jpeg)
add_checked_subdirectory(lz4)
if (LINUX)
add_checked_subdirectory(materialdecoration)
@ -62,5 +63,8 @@ add_checked_subdirectory(variant)
if (NOT DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION)
add_checked_subdirectory(webrtc)
endif()
if (LINUX)
add_checked_subdirectory(xcb)
endif()
add_checked_subdirectory(xxhash)
add_checked_subdirectory(zlib)

View file

@ -46,37 +46,29 @@ else()
PRIVATE
desktop-app::external_fcitx5_qt5_dbusaddons
desktop-app::external_qt
desktop-app::external_xcb
)
if (DESKTOP_APP_USE_PACKAGED)
find_package(PkgConfig REQUIRED)
pkg_check_modules(XKBCOMMON REQUIRED IMPORTED_TARGET xkbcommon)
pkg_check_modules(XCB REQUIRED IMPORTED_TARGET xcb)
target_link_libraries(external_fcitx5_qt5
PRIVATE
PkgConfig::XKBCOMMON
PkgConfig::XCB
)
else()
find_package(PkgConfig REQUIRED)
pkg_check_modules(XKBCOMMON REQUIRED xkbcommon)
pkg_check_modules(XCB REQUIRED xcb)
target_include_directories(external_fcitx5_qt5
PUBLIC
${XKBCOMMON_INCLUDE_DIRS}
${XCB_INCLUDE_DIRS}
)
target_link_static_libraries(external_fcitx5_qt5
PRIVATE
xkbcommon
)
target_link_libraries(external_fcitx5_qt5
PRIVATE
xcb
)
endif()
endif()

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
)
target_link_libraries(external_hime_im_client
PRIVATE
desktop-app::external_glib
)
if (DESKTOP_APP_USE_PACKAGED)
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
PRIVATE
PkgConfig::X11
PkgConfig::GLIB2
)
else()
pkg_check_modules(X11 REQUIRED x11)
pkg_check_modules(GLIB2 REQUIRED glib-2.0)
target_include_directories(external_hime_im_client
PRIVATE
${X11_INCLUDE_DIRS}
${GLIB2_INCLUDE_DIRS}
)
target_link_libraries(external_hime_im_client
PRIVATE
X11
glib-2.0
)
endif()
endif()

22
external/jpeg/CMakeLists.txt vendored Normal file
View file

@ -0,0 +1,22 @@
# 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_jpeg INTERFACE IMPORTED GLOBAL)
add_library(desktop-app::external_jpeg ALIAS external_jpeg)
if (DESKTOP_APP_USE_PACKAGED)
find_package(JPEG)
target_link_libraries(external_jpeg INTERFACE JPEG::JPEG)
elseif (WIN32)
target_include_directories(external_jpeg INTERFACE ${libs_loc}/mozjpeg)
target_link_libraries(external_jpeg INTERFACE ${libs_loc}/mozjpeg/$<IF:$<CONFIG:Debug>,Debug,Release>/jpeg-static.lib)
elseif (APPLE AND NOT build_osx)
target_link_libraries(external_jpeg INTERFACE /usr/local/macos/lib/libjpeg.a)
elseif (APPLE)
target_link_libraries(external_jpeg INTERFACE /usr/local/lib/libjpeg.a)
else()
target_link_static_libraries(external_jpeg INTERFACE jpeg)
endif()

View file

@ -1,48 +0,0 @@
# 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
if (DESKTOP_APP_USE_PACKAGED AND NOT DESKTOP_APP_USE_PACKAGED_LAZY_PLATFORMTHEMES)
add_library(external_lxqt_qtplugin INTERFACE IMPORTED GLOBAL)
add_library(desktop-app::external_lxqt_qtplugin ALIAS external_lxqt_qtplugin)
else()
add_library(external_lxqt_qtplugin STATIC)
add_library(desktop-app::external_lxqt_qtplugin ALIAS external_lxqt_qtplugin)
init_target(external_lxqt_qtplugin "(external)")
set(lxqt_qtplugin_loc ${third_party_loc}/lxqt-qtplugin)
set(lxqt_qtplugin_src ${lxqt_qtplugin_loc}/src)
set_target_properties(external_lxqt_qtplugin PROPERTIES AUTOMOC ON)
nice_target_sources(external_lxqt_qtplugin ${lxqt_qtplugin_src}
PRIVATE
main.cpp
lxqtplatformtheme.cpp
lxqtplatformtheme.h
lxqtsystemtrayicon.cpp
lxqtsystemtrayicon.h
)
target_include_directories(external_lxqt_qtplugin
PRIVATE
${lxqt_qtplugin_src}
)
target_compile_definitions(external_lxqt_qtplugin
PRIVATE
QT_STATICPLUGIN
QT_NO_FOREACH
LIB_FM_QT_SONAME="libfm-qt.so.7"
)
add_subdirectory(xdgiconloader)
target_link_libraries(external_lxqt_qtplugin
PRIVATE
desktop-app::external_statusnotifieritem
desktop-app::external_xdgiconloader
desktop-app::external_qt
)
endif()

View file

@ -1,59 +0,0 @@
# 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
if (DESKTOP_APP_USE_PACKAGED AND NOT DESKTOP_APP_USE_PACKAGED_LAZY_PLATFORMTHEMES)
add_library(external_xdgiconloader INTERFACE IMPORTED GLOBAL)
add_library(desktop-app::external_xdgiconloader ALIAS external_xdgiconloader)
else()
add_library(external_xdgiconloader STATIC)
add_library(desktop-app::external_xdgiconloader ALIAS external_xdgiconloader)
init_target(external_xdgiconloader "(external)")
set(libqtxdg_loc ${third_party_loc}/libqtxdg)
set(xdgiconloader_src ${libqtxdg_loc}/src/xdgiconloader)
set(xdgiconloader_includedir "${CMAKE_CURRENT_BINARY_DIR}/xdgiconloader")
set_target_properties(external_xdgiconloader PROPERTIES AUTOMOC ON)
nice_target_sources(external_xdgiconloader ${xdgiconloader_src}
PRIVATE
xdgiconloader.cpp
xdgiconloader_p.h
)
include(GenerateExportHeader)
generate_export_header(external_xdgiconloader BASE_NAME XdgIconLoader)
configure_file(
"${CMAKE_CURRENT_BINARY_DIR}/xdgiconloader_export.h"
"${xdgiconloader_includedir}/xdgiconloader_export.h"
COPYONLY
)
file(
COPY
${xdgiconloader_src}/xdgiconloader_p.h
DESTINATION
${xdgiconloader_includedir}/private/xdgiconloader
)
target_include_directories(external_xdgiconloader
PUBLIC
${xdgiconloader_includedir}
PRIVATE
${xdgiconloader_src}
)
target_compile_definitions(external_xdgiconloader
PRIVATE
QT_NO_KEYWORDS
)
target_link_libraries(external_xdgiconloader
PRIVATE
desktop-app::external_qt
)
endif()

View file

@ -23,18 +23,10 @@ else()
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
PRIVATE
${nimf_qt5_src}
${libnimf_src}
${GLIB2_INCLUDE_DIRS}
${GOBJECT_INCLUDE_DIRS}
${GIO_INCLUDE_DIRS}
)
target_compile_definitions(external_nimf_qt5
@ -49,6 +41,7 @@ else()
target_link_libraries(external_nimf_qt5
PRIVATE
desktop-app::external_qt
desktop-app::external_glib
${CMAKE_DL_LIBS}
)
endif()

View file

@ -25,7 +25,7 @@ elseif (WIN32)
)
target_link_libraries(external_openal
INTERFACE
${libs_loc}/openal-soft/build/$<IF:$<CONFIG:Debug>,Debug,Release>/OpenAL32.lib
${libs_loc}/openal-soft/build/$<IF:$<CONFIG:Debug>,Debug,RelWithDebInfo>/OpenAL32.lib
)
elseif(APPLE AND NOT build_osx)
target_include_directories(external_openal SYSTEM

View file

@ -16,14 +16,12 @@ else()
add_library(external_opus STATIC IMPORTED GLOBAL)
add_library(desktop-app::external_opus ALIAS external_opus)
target_include_directories(external_opus SYSTEM
INTERFACE
${libs_loc}/opus/include
)
if (WIN32)
target_include_directories(external_opus
INTERFACE
${libs_loc}/opus/include
)
set(opus_lib_loc ${libs_loc}/opus/win32/VS2015/Win32)
set_target_properties(external_opus PROPERTIES
IMPORTED_LOCATION "${opus_lib_loc}/Release/opus.lib"
IMPORTED_LOCATION_DEBUG "${opus_lib_loc}/Debug/opus.lib"
@ -31,7 +29,7 @@ else()
elseif (APPLE AND NOT build_osx)
target_include_directories(external_opus
INTERFACE
/usr/local/macos/include
/usr/local/macos/include/opus
)
set_target_properties(external_opus PROPERTIES
IMPORTED_LOCATION /usr/local/macos/lib/libopus.a
@ -39,12 +37,16 @@ else()
elseif (APPLE)
target_include_directories(external_opus
INTERFACE
/usr/local/include
/usr/local/include/opus
)
set_target_properties(external_opus PROPERTIES
IMPORTED_LOCATION /usr/local/lib/libopus.a
)
else()
target_include_directories(external_opus
INTERFACE
/usr/local/include/opus
)
find_library(OPUS_LIBRARY libopus.a)
set_target_properties(external_opus PROPERTIES
IMPORTED_LOCATION "${OPUS_LIBRARY}"

View file

@ -34,6 +34,7 @@ if (DESKTOP_APP_USE_PACKAGED)
find_library(Qt5ThemeSupport_LIBRARY
NAMES
Qt5ThemeSupport
REQUIRED
)
find_path(Qt5ThemeSupport_INCLUDE_DIR
@ -43,6 +44,7 @@ if (DESKTOP_APP_USE_PACKAGED)
${Qt5Gui_INCLUDE_DIRS}
PATH_SUFFIXES
QtThemeSupport/${Qt5Gui_VERSION}
REQUIRED
)
target_link_libraries(external_qt
@ -200,6 +202,11 @@ else()
foreach (lib ${qt_libs})
list(APPEND qt_libs_list "${qt_loc}/${lib}${qt_lib_suffix}")
endforeach()
target_link_libraries(external_qt
INTERFACE
desktop-app::external_jpeg
desktop-app::external_zlib
)
elseif (APPLE)
if (NOT build_osx)
set(qt_libs
@ -233,6 +240,7 @@ else()
endforeach()
target_link_libraries(external_qt
INTERFACE
desktop-app::external_jpeg
desktop-app::external_zlib
cups
)
@ -352,6 +360,7 @@ else()
endif()
target_link_libraries(external_qt
INTERFACE
desktop-app::external_jpeg
desktop-app::external_zlib
ICE
SM

View file

@ -98,5 +98,6 @@ else()
INTERFACE
${webrtc_libs_list}
desktop-app::external_openssl
desktop-app::external_jpeg
)
endif()

18
external/xcb/CMakeLists.txt vendored Normal file
View file

@ -0,0 +1,18 @@
# 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_xcb INTERFACE IMPORTED GLOBAL)
add_library(desktop-app::external_xcb ALIAS external_xcb)
add_subdirectory(xcb_screensaver)
if (DESKTOP_APP_USE_PACKAGED)
find_package(PkgConfig REQUIRED)
pkg_check_modules(XCB REQUIRED IMPORTED_TARGET xcb)
target_link_libraries(external_xcb INTERFACE PkgConfig::XCB)
else()
target_link_libraries(external_xcb INTERFACE xcb)
endif()

View file

@ -0,0 +1,16 @@
# 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_xcb_screensaver INTERFACE IMPORTED GLOBAL)
add_library(desktop-app::external_xcb_screensaver ALIAS external_xcb_screensaver)
if (DESKTOP_APP_USE_PACKAGED)
find_package(PkgConfig REQUIRED)
pkg_check_modules(XCB_SCREENSAVER REQUIRED IMPORTED_TARGET xcb-screensaver)
target_link_libraries(external_xcb_screensaver INTERFACE PkgConfig::XCB_SCREENSAVER)
else()
target_link_static_libraries(external_xcb_screensaver INTERFACE xcb-screensaver)
endif()

View file

@ -7,21 +7,13 @@
add_library(external_zlib INTERFACE IMPORTED GLOBAL)
add_library(desktop-app::external_zlib ALIAS external_zlib)
if (NOT DESKTOP_APP_USE_PACKAGED AND NOT LINUX)
target_include_directories(external_zlib SYSTEM
INTERFACE
${libs_loc}/zlib
)
endif()
if (DESKTOP_APP_USE_PACKAGED)
find_package(ZLIB REQUIRED)
target_link_libraries(external_zlib INTERFACE ZLIB::ZLIB)
elseif (WIN32)
target_compile_definitions(external_zlib INTERFACE ZLIB_WINAPI)
target_include_directories(external_zlib INTERFACE ${libs_loc}/zlib)
set(zlib_lib_loc ${libs_loc}/zlib/contrib/vstudio/vc14/x86/ZlibStat$<IF:$<CONFIG:Debug>,Debug,ReleaseWithoutAsm>)
target_link_libraries(external_zlib INTERFACE ${zlib_lib_loc}/zlibstat.lib)
elseif (APPLE AND NOT build_osx)
target_link_libraries(external_zlib INTERFACE /usr/local/macos/lib/libz.a)

View file

@ -5,7 +5,7 @@
# https://github.com/desktop-app/legal/blob/master/LEGAL
set(MAXIMUM_CXX_STANDARD cxx_std_20)
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
set(MAXIMUM_CXX_STANDARD cxx_std_17)
endif()