mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-06 23:24:01 +02:00
Link to gtk3 without QLibrary if DESKTOP_APP_USE_PACKAGED is defined
This commit is contained in:
parent
4922768086
commit
bb8f9a1b7f
4 changed files with 104 additions and 75 deletions
|
@ -127,6 +127,35 @@ PRIVATE
|
||||||
desktop-app::external_openal
|
desktop-app::external_openal
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if (LINUX AND NOT TDESKTOP_DISABLE_GTK_INTEGRATION)
|
||||||
|
find_package(PkgConfig REQUIRED)
|
||||||
|
target_compile_options(Telegram PRIVATE -Wno-register)
|
||||||
|
|
||||||
|
if (DESKTOP_APP_USE_PACKAGED AND NOT DESKTOP_APP_USE_PACKAGED_LAZY)
|
||||||
|
pkg_check_modules(X11 REQUIRED IMPORTED_TARGET x11)
|
||||||
|
pkg_check_modules(GOBJECT2 REQUIRED IMPORTED_TARGET gobject-2.0)
|
||||||
|
pkg_check_modules(GLIB2 REQUIRED IMPORTED_TARGET glib-2.0)
|
||||||
|
pkg_check_modules(GTK3 REQUIRED IMPORTED_TARGET gtk+-3.0)
|
||||||
|
|
||||||
|
target_link_libraries(Telegram
|
||||||
|
PRIVATE
|
||||||
|
PkgConfig::X11
|
||||||
|
PkgConfig::GOBJECT2
|
||||||
|
PkgConfig::GLIB2
|
||||||
|
PkgConfig::GTK3
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
pkg_search_module(GTK REQUIRED gtk+-2.0 gtk+-3.0)
|
||||||
|
target_link_libraries(Telegram
|
||||||
|
PRIVATE
|
||||||
|
X11
|
||||||
|
gobject-2.0
|
||||||
|
glib-2.0
|
||||||
|
)
|
||||||
|
target_include_directories(Telegram PRIVATE ${GTK_INCLUDE_DIRS})
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
# Telegram uses long atomic types, so on some architectures libatomic is needed.
|
# Telegram uses long atomic types, so on some architectures libatomic is needed.
|
||||||
check_cxx_source_compiles("
|
check_cxx_source_compiles("
|
||||||
#include <atomic>
|
#include <atomic>
|
||||||
|
@ -1143,20 +1172,6 @@ elseif (APPLE)
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
elseif (LINUX)
|
|
||||||
if (NOT TDESKTOP_DISABLE_GTK_INTEGRATION)
|
|
||||||
find_package(PkgConfig REQUIRED)
|
|
||||||
pkg_search_module(GTK REQUIRED gtk+-2.0 gtk+-3.0)
|
|
||||||
|
|
||||||
target_include_directories(Telegram PRIVATE ${GTK_INCLUDE_DIRS})
|
|
||||||
target_link_libraries(Telegram
|
|
||||||
PRIVATE
|
|
||||||
X11
|
|
||||||
gobject-2.0
|
|
||||||
glib-2.0
|
|
||||||
)
|
|
||||||
target_compile_options(Telegram PRIVATE -Wno-register)
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (build_macstore)
|
if (build_macstore)
|
||||||
|
|
|
@ -57,16 +57,20 @@ using f_gdk_x11_window_get_xid = Window(*)(GdkWindow *window);
|
||||||
f_gdk_x11_window_get_xid gdk_x11_window_get_xid = nullptr;
|
f_gdk_x11_window_get_xid gdk_x11_window_get_xid = nullptr;
|
||||||
|
|
||||||
bool GdkHelperLoadGtk2(QLibrary &lib) {
|
bool GdkHelperLoadGtk2(QLibrary &lib) {
|
||||||
if (!Libs::load(lib, "gdk_x11_drawable_get_xdisplay", gdk_x11_drawable_get_xdisplay)) return false;
|
#if defined DESKTOP_APP_USE_PACKAGED && !defined DESKTOP_APP_USE_PACKAGED_LAZY
|
||||||
if (!Libs::load(lib, "gdk_x11_drawable_get_xid", gdk_x11_drawable_get_xid)) return false;
|
return false;
|
||||||
|
#else // DESKTOP_APP_USE_PACKAGED && !DESKTOP_APP_USE_PACKAGED_LAZY
|
||||||
|
if (!LOAD_SYMBOL(lib, "gdk_x11_drawable_get_xdisplay", gdk_x11_drawable_get_xdisplay)) return false;
|
||||||
|
if (!LOAD_SYMBOL(lib, "gdk_x11_drawable_get_xid", gdk_x11_drawable_get_xid)) return false;
|
||||||
return true;
|
return true;
|
||||||
|
#endif // !DESKTOP_APP_USE_PACKAGED || DESKTOP_APP_USE_PACKAGED_LAZY
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GdkHelperLoadGtk3(QLibrary &lib) {
|
bool GdkHelperLoadGtk3(QLibrary &lib) {
|
||||||
if (!Libs::load(lib, "gdk_x11_window_get_type", gdk_x11_window_get_type)) return false;
|
if (!LOAD_SYMBOL(lib, "gdk_x11_window_get_type", gdk_x11_window_get_type)) return false;
|
||||||
if (!Libs::load(lib, "gdk_window_get_display", gdk_window_get_display)) return false;
|
if (!LOAD_SYMBOL(lib, "gdk_window_get_display", gdk_window_get_display)) return false;
|
||||||
if (!Libs::load(lib, "gdk_x11_display_get_xdisplay", gdk_x11_display_get_xdisplay)) return false;
|
if (!LOAD_SYMBOL(lib, "gdk_x11_display_get_xdisplay", gdk_x11_display_get_xdisplay)) return false;
|
||||||
if (!Libs::load(lib, "gdk_x11_window_get_xid", gdk_x11_window_get_xid)) return false;
|
if (!LOAD_SYMBOL(lib, "gdk_x11_window_get_xid", gdk_x11_window_get_xid)) return false;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,6 +23,9 @@ namespace {
|
||||||
bool gtkTriedToInit = false;
|
bool gtkTriedToInit = false;
|
||||||
|
|
||||||
bool loadLibrary(QLibrary &lib, const char *name, int version) {
|
bool loadLibrary(QLibrary &lib, const char *name, int version) {
|
||||||
|
#if defined DESKTOP_APP_USE_PACKAGED && !defined DESKTOP_APP_USE_PACKAGED_LAZY
|
||||||
|
return true;
|
||||||
|
#else // DESKTOP_APP_USE_PACKAGED && !DESKTOP_APP_USE_PACKAGED_LAZY
|
||||||
DEBUG_LOG(("Loading '%1' with version %2...").arg(QLatin1String(name)).arg(version));
|
DEBUG_LOG(("Loading '%1' with version %2...").arg(QLatin1String(name)).arg(version));
|
||||||
lib.setFileNameAndVersion(QLatin1String(name), version);
|
lib.setFileNameAndVersion(QLatin1String(name), version);
|
||||||
if (lib.load()) {
|
if (lib.load()) {
|
||||||
|
@ -36,6 +39,7 @@ bool loadLibrary(QLibrary &lib, const char *name, int version) {
|
||||||
}
|
}
|
||||||
LOG(("Could not load '%1' with version %2 :(").arg(QLatin1String(name)).arg(version));
|
LOG(("Could not load '%1' with version %2 :(").arg(QLatin1String(name)).arg(version));
|
||||||
return false;
|
return false;
|
||||||
|
#endif // !DESKTOP_APP_USE_PACKAGED || DESKTOP_APP_USE_PACKAGED_LAZY
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef TDESKTOP_DISABLE_GTK_INTEGRATION
|
#ifndef TDESKTOP_DISABLE_GTK_INTEGRATION
|
||||||
|
@ -69,56 +73,56 @@ void gtkMessageHandler(
|
||||||
}
|
}
|
||||||
|
|
||||||
bool setupGtkBase(QLibrary &lib_gtk) {
|
bool setupGtkBase(QLibrary &lib_gtk) {
|
||||||
if (!load(lib_gtk, "gtk_init_check", gtk_init_check)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_init_check", gtk_init_check)) return false;
|
||||||
if (!load(lib_gtk, "gtk_settings_get_default", gtk_settings_get_default)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_settings_get_default", gtk_settings_get_default)) return false;
|
||||||
|
|
||||||
if (!load(lib_gtk, "gtk_widget_show", gtk_widget_show)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_widget_show", gtk_widget_show)) return false;
|
||||||
if (!load(lib_gtk, "gtk_widget_hide", gtk_widget_hide)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_widget_hide", gtk_widget_hide)) return false;
|
||||||
if (!load(lib_gtk, "gtk_widget_get_window", gtk_widget_get_window)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_widget_get_window", gtk_widget_get_window)) return false;
|
||||||
if (!load(lib_gtk, "gtk_widget_realize", gtk_widget_realize)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_widget_realize", gtk_widget_realize)) return false;
|
||||||
if (!load(lib_gtk, "gtk_widget_hide_on_delete", gtk_widget_hide_on_delete)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_widget_hide_on_delete", gtk_widget_hide_on_delete)) return false;
|
||||||
if (!load(lib_gtk, "gtk_widget_destroy", gtk_widget_destroy)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_widget_destroy", gtk_widget_destroy)) return false;
|
||||||
if (!load(lib_gtk, "gtk_clipboard_get", gtk_clipboard_get)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_clipboard_get", gtk_clipboard_get)) return false;
|
||||||
if (!load(lib_gtk, "gtk_clipboard_store", gtk_clipboard_store)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_clipboard_store", gtk_clipboard_store)) return false;
|
||||||
if (!load(lib_gtk, "gtk_clipboard_wait_for_contents", gtk_clipboard_wait_for_contents)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_clipboard_wait_for_contents", gtk_clipboard_wait_for_contents)) return false;
|
||||||
if (!load(lib_gtk, "gtk_clipboard_wait_for_image", gtk_clipboard_wait_for_image)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_clipboard_wait_for_image", gtk_clipboard_wait_for_image)) return false;
|
||||||
if (!load(lib_gtk, "gtk_selection_data_targets_include_image", gtk_selection_data_targets_include_image)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_selection_data_targets_include_image", gtk_selection_data_targets_include_image)) return false;
|
||||||
if (!load(lib_gtk, "gtk_selection_data_free", gtk_selection_data_free)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_selection_data_free", gtk_selection_data_free)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_dialog_new", gtk_file_chooser_dialog_new)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_dialog_new", gtk_file_chooser_dialog_new)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_get_type", gtk_file_chooser_get_type)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_get_type", gtk_file_chooser_get_type)) return false;
|
||||||
if (!load(lib_gtk, "gtk_image_get_type", gtk_image_get_type)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_image_get_type", gtk_image_get_type)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_set_current_folder", gtk_file_chooser_set_current_folder)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_set_current_folder", gtk_file_chooser_set_current_folder)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_get_current_folder", gtk_file_chooser_get_current_folder)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_get_current_folder", gtk_file_chooser_get_current_folder)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_set_current_name", gtk_file_chooser_set_current_name)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_set_current_name", gtk_file_chooser_set_current_name)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_select_filename", gtk_file_chooser_select_filename)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_select_filename", gtk_file_chooser_select_filename)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_get_filenames", gtk_file_chooser_get_filenames)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_get_filenames", gtk_file_chooser_get_filenames)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_set_filter", gtk_file_chooser_set_filter)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_set_filter", gtk_file_chooser_set_filter)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_get_filter", gtk_file_chooser_get_filter)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_get_filter", gtk_file_chooser_get_filter)) return false;
|
||||||
if (!load(lib_gtk, "gtk_window_get_type", gtk_window_get_type)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_window_get_type", gtk_window_get_type)) return false;
|
||||||
if (!load(lib_gtk, "gtk_window_set_title", gtk_window_set_title)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_window_set_title", gtk_window_set_title)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_set_local_only", gtk_file_chooser_set_local_only)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_set_local_only", gtk_file_chooser_set_local_only)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_set_action", gtk_file_chooser_set_action)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_set_action", gtk_file_chooser_set_action)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_set_select_multiple", gtk_file_chooser_set_select_multiple)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_set_select_multiple", gtk_file_chooser_set_select_multiple)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_set_do_overwrite_confirmation", gtk_file_chooser_set_do_overwrite_confirmation)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_set_do_overwrite_confirmation", gtk_file_chooser_set_do_overwrite_confirmation)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_remove_filter", gtk_file_chooser_remove_filter)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_remove_filter", gtk_file_chooser_remove_filter)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_filter_set_name", gtk_file_filter_set_name)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_filter_set_name", gtk_file_filter_set_name)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_filter_add_pattern", gtk_file_filter_add_pattern)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_filter_add_pattern", gtk_file_filter_add_pattern)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_add_filter", gtk_file_chooser_add_filter)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_add_filter", gtk_file_chooser_add_filter)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_set_preview_widget", gtk_file_chooser_set_preview_widget)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_set_preview_widget", gtk_file_chooser_set_preview_widget)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_get_preview_filename", gtk_file_chooser_get_preview_filename)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_get_preview_filename", gtk_file_chooser_get_preview_filename)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_chooser_set_preview_widget_active", gtk_file_chooser_set_preview_widget_active)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_chooser_set_preview_widget_active", gtk_file_chooser_set_preview_widget_active)) return false;
|
||||||
if (!load(lib_gtk, "gtk_file_filter_new", gtk_file_filter_new)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_file_filter_new", gtk_file_filter_new)) return false;
|
||||||
if (!load(lib_gtk, "gtk_image_new", gtk_image_new)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_image_new", gtk_image_new)) return false;
|
||||||
if (!load(lib_gtk, "gtk_image_set_from_pixbuf", gtk_image_set_from_pixbuf)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_image_set_from_pixbuf", gtk_image_set_from_pixbuf)) return false;
|
||||||
|
|
||||||
if (!load(lib_gtk, "gdk_window_set_modal_hint", gdk_window_set_modal_hint)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gdk_window_set_modal_hint", gdk_window_set_modal_hint)) return false;
|
||||||
if (!load(lib_gtk, "gdk_window_focus", gdk_window_focus)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gdk_window_focus", gdk_window_focus)) return false;
|
||||||
if (!load(lib_gtk, "gtk_dialog_get_type", gtk_dialog_get_type)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_dialog_get_type", gtk_dialog_get_type)) return false;
|
||||||
if (!load(lib_gtk, "gtk_dialog_run", gtk_dialog_run)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gtk_dialog_run", gtk_dialog_run)) return false;
|
||||||
|
|
||||||
if (!load(lib_gtk, "gdk_atom_intern", gdk_atom_intern)) return false;
|
if (!LOAD_SYMBOL(lib_gtk, "gdk_atom_intern", gdk_atom_intern)) return false;
|
||||||
|
|
||||||
if (load(lib_gtk, "gdk_set_allowed_backends", gdk_set_allowed_backends)) {
|
if (LOAD_SYMBOL(lib_gtk, "gdk_set_allowed_backends", gdk_set_allowed_backends)) {
|
||||||
// We work only with X11 GDK backend.
|
// We work only with X11 GDK backend.
|
||||||
// Otherwise we get segfault in Ubuntu 17.04 in gtk_init_check() call.
|
// Otherwise we get segfault in Ubuntu 17.04 in gtk_init_check() call.
|
||||||
// See https://github.com/telegramdesktop/tdesktop/issues/3176
|
// See https://github.com/telegramdesktop/tdesktop/issues/3176
|
||||||
|
@ -234,18 +238,18 @@ void start() {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gtkLoaded) {
|
if (gtkLoaded) {
|
||||||
load(lib_gtk, "gdk_pixbuf_new_from_file_at_size", gdk_pixbuf_new_from_file_at_size);
|
LOAD_SYMBOL(lib_gtk, "gdk_pixbuf_new_from_file_at_size", gdk_pixbuf_new_from_file_at_size);
|
||||||
load(lib_gtk, "gdk_pixbuf_get_has_alpha", gdk_pixbuf_get_has_alpha);
|
LOAD_SYMBOL(lib_gtk, "gdk_pixbuf_get_has_alpha", gdk_pixbuf_get_has_alpha);
|
||||||
load(lib_gtk, "gdk_pixbuf_get_pixels", gdk_pixbuf_get_pixels);
|
LOAD_SYMBOL(lib_gtk, "gdk_pixbuf_get_pixels", gdk_pixbuf_get_pixels);
|
||||||
load(lib_gtk, "gdk_pixbuf_get_width", gdk_pixbuf_get_width);
|
LOAD_SYMBOL(lib_gtk, "gdk_pixbuf_get_width", gdk_pixbuf_get_width);
|
||||||
load(lib_gtk, "gdk_pixbuf_get_height", gdk_pixbuf_get_height);
|
LOAD_SYMBOL(lib_gtk, "gdk_pixbuf_get_height", gdk_pixbuf_get_height);
|
||||||
load(lib_gtk, "gdk_pixbuf_get_rowstride", gdk_pixbuf_get_rowstride);
|
LOAD_SYMBOL(lib_gtk, "gdk_pixbuf_get_rowstride", gdk_pixbuf_get_rowstride);
|
||||||
|
|
||||||
internal::GdkHelperLoad(lib_gtk);
|
internal::GdkHelperLoad(lib_gtk);
|
||||||
|
|
||||||
load(lib_gtk, "gtk_dialog_get_widget_for_response", gtk_dialog_get_widget_for_response);
|
LOAD_SYMBOL(lib_gtk, "gtk_dialog_get_widget_for_response", gtk_dialog_get_widget_for_response);
|
||||||
load(lib_gtk, "gtk_button_set_label", gtk_button_set_label);
|
LOAD_SYMBOL(lib_gtk, "gtk_button_set_label", gtk_button_set_label);
|
||||||
load(lib_gtk, "gtk_button_get_type", gtk_button_get_type);
|
LOAD_SYMBOL(lib_gtk, "gtk_button_get_type", gtk_button_get_type);
|
||||||
|
|
||||||
// change the icon theme only if it isn't already set by a platformtheme plugin
|
// change the icon theme only if it isn't already set by a platformtheme plugin
|
||||||
// if QT_QPA_PLATFORMTHEME=(gtk2|gtk3), then force-apply the icon theme
|
// if QT_QPA_PLATFORMTHEME=(gtk2|gtk3), then force-apply the icon theme
|
||||||
|
|
|
@ -20,6 +20,12 @@ extern "C" {
|
||||||
|
|
||||||
#endif // !TDESKTOP_DISABLE_GTK_INTEGRATION
|
#endif // !TDESKTOP_DISABLE_GTK_INTEGRATION
|
||||||
|
|
||||||
|
#if defined DESKTOP_APP_USE_PACKAGED && !defined DESKTOP_APP_USE_PACKAGED_LAZY
|
||||||
|
#define LOAD_SYMBOL(lib, name, func) (func = ::func)
|
||||||
|
#else // DESKTOP_APP_USE_PACKAGED && !DESKTOP_APP_USE_PACKAGED_LAZY
|
||||||
|
#define LOAD_SYMBOL Platform::Libs::load
|
||||||
|
#endif // !DESKTOP_APP_USE_PACKAGED || DESKTOP_APP_USE_PACKAGED_LAZY
|
||||||
|
|
||||||
namespace Platform {
|
namespace Platform {
|
||||||
namespace Libs {
|
namespace Libs {
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue