This repository was archived by the owner on Jan 11, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 87
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
83 lines (64 loc) · 1.97 KB
/
CMakeLists.txt
File metadata and controls
83 lines (64 loc) · 1.97 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
set (PLUGNAME feedbin)
set (PLUGTARGET ${PLUGNAME}_target)
set (TEST_NAME ${PLUGNAME}_test)
set (TEST_TARGET ${TEST_NAME}_target)
# ----------------------------------------------------------
# Feedbin Plugin
# ----------------------------------------------------------
vala_precompile(VALA_C ${PLUGTARGET}
feedbinAPI.vala
feedbinInterface.vala
feedbinUtils.vala
GENERATE_VAPI FeedbinPlugin
PACKAGES
libpeas-1.0
gtk+-3.0
json-glib-1.0
libsoup-2.4
gee-0.8
libxml-2.0
sqlite3
libsecret-1
OPTIONS
--target-glib=2.32
--library ${PLUGNAME}
CUSTOM_VAPIS
${CMAKE_BINARY_DIR}/FeedReader.vapi
${CMAKE_SOURCE_DIR}/vapi/gd-1.0.vapi
${CMAKE_SOURCE_DIR}/vapi/webkit2gtk-4.0.vapi
)
GLIB_COMPILE_RESOURCES(GRESOURCES SOURCE ${PLUGNAME}.gresource.xml)
add_library(${PLUGNAME} SHARED ${VALA_C} ${GRESOURCES})
# ----------------------------------------------------------
add_dependencies(${PLUGNAME} ${FEEDREADER_NAME})
add_schema("org.gnome.feedreader.${PLUGNAME}.gschema.xml")
install(TARGETS ${PLUGNAME} DESTINATION ${PKGLIBDIR}/plugins)
install(FILES ${PLUGNAME}.plugin DESTINATION ${PKGLIBDIR}/plugins)
# ----------------------------------------------------------
# Tests
# ----------------------------------------------------------
vala_precompile(VALA_C ${TEST_TARGET}
TestFeedbin.vala
PACKAGES
libpeas-1.0
gtk+-3.0
json-glib-1.0
libsoup-2.4
gee-0.8
libxml-2.0
sqlite3
libsecret-1
OPTIONS
--includedir=${CMAKE_BINARY_DIR}/plugins/backend/test/
--target-glib=2.32
--disable-warnings # since we frequently want to not catch errors
CUSTOM_VAPIS
${CMAKE_BINARY_DIR}/FeedReader.vapi
${CMAKE_BINARY_DIR}/plugins/backend/feedbin/FeedbinPlugin.vapi
${CMAKE_BINARY_DIR}/plugins/backend/test/TestPlugin.vapi
${CMAKE_SOURCE_DIR}/vapi/gd-1.0.vapi
${CMAKE_SOURCE_DIR}/vapi/webkit2gtk-4.0.vapi
)
add_executable(${TEST_NAME} ${VALA_C})
target_link_libraries(${TEST_NAME} ${PLUGNAME} TestPlugin)
add_test(${PLUGNAME} gtester -k -o ${CMAKE_BINARY_DIR}/${PLUGNAME}.gtester.log ${TEST_NAME})