Line
Link Here
|
0 |
-- tdesktop-4.8.4-full.orig/cmake/external/glib/CMakeLists.txt |
0 |
++ tdesktop-4.8.4-full/cmake/external/glib/CMakeLists.txt |
Lines 7-20
Link Here
|
7 |
add_library(external_glib INTERFACE IMPORTED GLOBAL) |
7 |
add_library(external_glib INTERFACE IMPORTED GLOBAL) |
8 |
add_library(desktop-app::external_glib ALIAS external_glib) |
8 |
add_library(desktop-app::external_glib ALIAS external_glib) |
9 |
|
9 |
|
10 |
function(add_cppgir) # isolate scope |
|
|
11 |
set(BUILD_TESTING OFF) |
12 |
set(BUILD_DOC OFF) |
13 |
set(BUILD_EXAMPLES OFF) |
14 |
add_subdirectory(cppgir EXCLUDE_FROM_ALL) |
15 |
endfunction() |
16 |
add_cppgir() |
17 |
|
18 |
include(generate_cppgir.cmake) |
10 |
include(generate_cppgir.cmake) |
19 |
generate_cppgir(external_glib Gio-2.0) |
11 |
generate_cppgir(external_glib Gio-2.0) |
20 |
|
12 |
|
21 |
-- tdesktop-4.8.4-full.orig/cmake/external/glib/generate_cppgir.cmake |
13 |
++ tdesktop-4.8.4-full/cmake/external/glib/generate_cppgir.cmake |
Lines 4-9
Link Here
|
4 |
# For license and copyright information please follow this link: |
4 |
# For license and copyright information please follow this link: |
5 |
# https://github.com/desktop-app/legal/blob/master/LEGAL |
5 |
# https://github.com/desktop-app/legal/blob/master/LEGAL |
6 |
|
6 |
|
|
|
7 |
find_package(CppGir REQUIRED) |
8 |
|
7 |
function(generate_cppgir target_name gir) |
9 |
function(generate_cppgir target_name gir) |
8 |
# cppgir generates all the dependent headers everytime, better to have a global folder |
10 |
# cppgir generates all the dependent headers everytime, better to have a global folder |
9 |
set(gen_dst ${CMAKE_BINARY_DIR}/gen) |
11 |
set(gen_dst ${CMAKE_BINARY_DIR}/gen) |
Lines 32-48
Link Here
|
32 |
echo 1> ${gen_timestamp} |
34 |
echo 1> ${gen_timestamp} |
33 |
COMMENT "Generating C++ wrapper for ${gir} (${target_name})" |
35 |
COMMENT "Generating C++ wrapper for ${gir} (${target_name})" |
34 |
DEPENDS |
36 |
DEPENDS |
35 |
cppgir |
|
|
36 |
${gir_path} |
37 |
${gir_path} |
37 |
) |
38 |
) |
38 |
generate_target(${target_name} cppgir ${gen_timestamp} "" ${gen_dst}) |
39 |
generate_target(${target_name} cppgir ${gen_timestamp} "" ${gen_dst}) |
39 |
|
40 |
|
40 |
get_target_property(target_type ${target_name} TYPE) |
41 |
get_target_property(target_type ${target_name} TYPE) |
41 |
if (${target_type} STREQUAL "INTERFACE_LIBRARY") |
42 |
if (${target_type} STREQUAL "INTERFACE_LIBRARY") |
42 |
target_link_libraries(${target_name} INTERFACE gi) |
43 |
target_link_libraries(${target_name} INTERFACE CppGir::gi) |
43 |
target_compile_definitions(${target_name} INTERFACE GI_INLINE GI_OBJECT_NEWV) |
44 |
target_compile_definitions(${target_name} INTERFACE GI_INLINE GI_OBJECT_NEWV) |
44 |
else() |
45 |
else() |
45 |
target_link_libraries(${target_name} PUBLIC gi) |
46 |
target_link_libraries(${target_name} PUBLIC CppGir::gi) |
46 |
target_compile_definitions(${target_name} PUBLIC GI_INLINE GI_OBJECT_NEWV) |
47 |
target_compile_definitions(${target_name} PUBLIC GI_INLINE GI_OBJECT_NEWV) |
47 |
endif() |
48 |
endif() |
48 |
endfunction() |
49 |
endfunction() |