2
set(HUD_CLIENT_INCLUDE_DIRS
3
${CMAKE_CURRENT_SOURCE_DIR}
4
${CMAKE_CURRENT_BINARY_DIR}
7
set(HUD_CLIENT_INCLUDE_DIRS
8
${HUD_CLIENT_INCLUDE_DIRS}
12
include_directories(${HUD_CLIENT_INCLUDE_DIRS})
14
# FIXME would rather not include this dir
15
include_directories(${HUD_SRC_DIR})
17
add_definitions( -DHUD_CLIENT_COMPILATION=1 )
19
###########################
21
###########################
26
###########################
27
# Generated Hud Client
28
###########################
30
set(HUD_CLIENT_GENERATED_HEADERS
35
set(HUD_CLIENT_GENERATED_SOURCES
39
OUTFILES HUD_CLIENT_GENERATED_SOURCES
41
PREFIX com.canonical.hud.
43
SERVICE_XML ${HUD_SERVICE_XML}
47
OUTFILES HUD_CLIENT_GENERATED_SOURCES
49
PREFIX com.canonical.hud.query.
51
SERVICE_XML ${HUD_QUERY_XML}
54
add_library(hud-client-generated STATIC ${HUD_CLIENT_GENERATED_SOURCES})
56
target_link_libraries(hud-client-generated
63
###########################
65
###########################
67
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden")
69
set(HUD_CLIENT_MAIN_HEADERS
73
set(HUD_CLIENT_HEADERS
77
${CMAKE_SOURCE_DIR}/src/query-columns.h
80
set(HUD_CLIENT_SOURCES
86
add_glib_enumtypes_t(HUD_CLIENT_SOURCES
92
list(APPEND HUD_CLIENT_HEADERS ${CMAKE_CURRENT_BINARY_DIR}/enum-types.h)
94
add_library(hud-client SHARED ${HUD_CLIENT_SOURCES})
96
set_target_properties(hud-client PROPERTIES
97
VERSION ${API_VERSION}.0.0
98
SOVERSION ${ABI_VERSION}
99
OUTPUT_NAME "hud-client"
102
target_link_libraries(hud-client
105
${GOBJECT2_LIBRARIES}
109
###########################
111
###########################
113
set(HUD_CLIENT_PC "hud-client-${API_VERSION}.pc")
114
set(apiversion "${API_VERSION}")
115
set(libdir "${CMAKE_INSTALL_FULL_LIBDIR}")
116
set(includedir "${CMAKE_INSTALL_FULL_INCLUDEDIR}")
117
set(VERSION "${ABI_VERSION}")
118
configure_file("hud-client.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/${HUD_CLIENT_PC}" @ONLY)
120
###########################
121
# GObject Introspection
122
###########################
124
if(${INTROSPECTION_FOUND})
125
include(UseGObjectIntrospection)
126
set(INTROSPECTION_GIRS)
128
set(_introspection_files ${HUD_CLIENT_SOURCES} ${HUD_CLIENT_HEADERS})
129
set(HudClient_2_gir "hud-client")
130
set(HudClient_2_gir_INCLUDES GObject-2.0 Dee-1.0)
132
gir_get_cflags(_cflags)
133
set(HudClient_2_gir_CFLAGS ${_cflags})
135
set(HudClient_2_gir_LIBS hud-client)
137
list_make_absolute(_abs_introspection_files _introspection_files "${CMAKE_CURRENT_SOURCE_DIR}/")
138
set(HudClient_2_gir_FILES ${_abs_introspection_files})
139
set(HudClient_2_gir_SCANNERFLAGS --c-include "hud-client.h")
140
set(HudClient_2_gir_EXPORT_PACKAGES "hud-client-${API_VERSION}")
142
list(APPEND INTROSPECTION_GIRS HudClient-2.gir)
143
gir_add_introspections(INTROSPECTION_GIRS)
145
message("Not performing GIR as required tools not found")
148
###########################
150
###########################
153
if(${INTROSPECTION_FOUND})
155
vapi_gen(hud-client-vapi
166
${hud-client-vapi_OUTPUT}
168
"${CMAKE_INSTALL_DATADIR}/vala/vapi"
175
###########################
177
###########################
180
FILES ${HUD_CLIENT_MAIN_HEADERS}
181
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/libhud-client-${API_VERSION}"
185
FILES ${HUD_CLIENT_HEADERS}
186
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/libhud-client-${API_VERSION}/libhud-client"
190
FILES "${CMAKE_CURRENT_BINARY_DIR}/${HUD_CLIENT_PC}"
191
DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig"
196
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}