###############################################################################
###############################################################################
TALKATU_LIBRARY_VERSION = '0.1.0'
'talkatuattachmentdialog.h',
'talkatuattachmentpreview.h',
'talkatuhtmlpangorenderer.h',
'talkatumarkdownbuffer.h',
'talkatumenutoolbutton.h',
'talkatumessageactions.h',
'talkatuscrolledwindow.h',
'talkatusimpleattachment.h',
'talkatuattachmentdialog.c',
'talkatuattachmentpreview.c',
'talkatuhtmlpangorenderer.c',
'talkatumarkdownbuffer.c',
'talkatumenutoolbutton.c',
'talkatumessageactions.c',
'talkatuscrolledwindow.c',
'talkatusimpleattachment.c',
TALKATU_PUBLIC_BUILT_HEADERS = [
TALKATU_PUBLIC_BUILT_SOURCES = [
TALKATU_PRIVATE_HEADERS = [
TALKATU_PRIVATE_SOURCES = [
TALKATU_PRIVATE_BUILT_HEADERS = [
TALKATU_PRIVATE_BUILT_SOURCES = [
TALKATU_GENERATED_TARGETS = [
###############################################################################
###############################################################################
talkatu_resources = gnome.compile_resources(
'data/talkatu.gresource.xml',
###############################################################################
###############################################################################
talkatuversion_h = configure_file(
input : 'talkatuversion.h.in',
output : 'talkatuversion.h',
configuration : version_conf,
install_dir : get_option('includedir') / 'talkatu-1.0/talkatu')
TALKATU_PUBLIC_BUILT_HEADERS += [talkatuversion_h]
###############################################################################
###############################################################################
talkatuenums = gnome.mkenums_simple(
sources : TALKATU_ENUM_HEADERS,
install_dir : get_option('includedir') / 'talkatu-1.0/talkatu')
talkatuenums_c = talkatuenums[0]
talkatuenums_h = talkatuenums[1]
TALKATU_PUBLIC_BUILT_SOURCES += [talkatuenums_c]
TALKATU_PUBLIC_BUILT_HEADERS += [talkatuenums_h]
###############################################################################
###############################################################################
foreach header : TALKATU_HEADERS
TALKATU_H_INCLUDES = '@0@\n#include <talkatu/@1@>'.format(
foreach header : ['talkatuenums.h', 'talkatuversion.h']
TALKATU_H_INCLUDES = '@0@\n#include <talkatu/@1@>'.format(
conf = configuration_data()
conf.set('TALKATU_H_INCLUDES', TALKATU_H_INCLUDES)
talkatu_h = configure_file(
install_dir : get_option('includedir') / 'talkatu-1.0')
###############################################################################
###############################################################################
talkatu_xml = configure_file(
input : 'talkatu.xml.in',
configuration : version_conf,
install_dir : get_option('datadir') / 'glade' / 'catalogs')
###############################################################################
###############################################################################
talkatu = shared_library('talkatu',
TALKATU_PUBLIC_BUILT_SOURCES,
TALKATU_PRIVATE_BUILT_SOURCES,
TALKATU_PUBLIC_BUILT_HEADERS,
c_args : ['-DTALKATU_COMPILATION', '-DG_LOG_DOMAIN="Talkatu"'],
include_directories : toplevel_inc,
dependencies : [CMARK, GLIB, GOBJECT, GUMBO, GTK3, GSPELL],
version : TALKATU_LIBRARY_VERSION,
talkatu_inc = include_directories('.')
description : 'A set of instant message related widgets',
version : meson.project_version(),
requires : ['glib-2.0', 'gobject-2.0', 'gtk+-3.0'],
###############################################################################
###############################################################################
if get_option('introspection')
talkatu_gir = gnome.generate_gir(talkatu,
sources : TALKATU_SOURCES + TALKATU_HEADERS +
TALKATU_PUBLIC_BUILT_SOURCES +
TALKATU_PUBLIC_BUILT_HEADERS,
includes : ['GModule-2.0', 'GObject-2.0', 'Gtk-3.0'],
symbol_prefix : 'talkatu',
nsversion : '@0@.0'.format(TALKATU_MAJOR_VERSION),
extra_args : ['--quiet', '--warn-all', '-DTALKATU_COMPILATION'],
TALKATU_GENERATED_TARGETS += talkatu_gir
###############################################################################
# Library Dependency Object
###############################################################################
talkatu_dep = declare_dependency(
include_directories : [toplevel_inc, talkatu_inc],
sources : TALKATU_PUBLIC_BUILT_HEADERS + TALKATU_GENERATED_TARGETS,
dependencies : [GLIB, GOBJECT, GTK3]
if meson.version().version_compare('>=0.54.0')
meson.override_dependency('talkatu', talkatu_dep)
###############################################################################
###############################################################################
# install the normal includes into the talkatuhtml subdirectory
subdir : 'talkatu-1.0/talkatu'
###############################################################################
###############################################################################