talkatu/talkatu
Clone
Summary
Browse
Changes
Graph
Replace xvfb with broadway in the test wrapper
2020-09-05, Gary Kramlich
c479d9b87420
Replace xvfb with broadway in the test wrapper
Use broadway as our test wrapper since xvfb isn't everywhere and is a pain.
Testing Done:
Ran the build images for fedora 32 and debian bullseye locally, still waiting for the images to be built and pushed to docker hub.
Reviewed at https://reviews.imfreedom.org/r/105/
###############################################################################
# Library
###############################################################################
TALKATU_LIBRARY_VERSION
=
'0.1.0'
TALKATU_HEADERS
=
[
'talkatuactiongroup.h'
,
'talkatuattachment.h'
,
'talkatuattachmentdialog.h'
,
'talkatuattachmentpreview.h'
,
'talkatubuffer.h'
,
'talkatucodeset.h'
,
'talkatucore.h'
,
'talkatueditor.h'
,
'talkatuhistory.h'
,
'talkatuhistoryrow.h'
,
'talkatuhtmlbuffer.h'
,
'talkatuhtmlparser.h'
,
'talkatuinput.h'
,
'talkatulinkdialog.h'
,
'talkatumarkdownbuffer.h'
,
'talkatumarkup.h'
,
'talkatumenutoolbutton.h'
,
'talkatumessage.h'
,
'talkatumessageactions.h'
,
'talkatuscrolledwindow.h'
,
'talkatusimpleattachment.h'
,
'talkatutag.h'
,
'talkatutagtable.h'
,
'talkatutoolbar.h'
,
'talkatutooldrawer.h'
,
'talkatutypinglabel.h'
,
'talkatuview.h'
,
'talkatuwholebuffer.h'
,
]
TALKATU_SOURCES
=
[
'talkatuactiongroup.c'
,
'talkatuattachment.c'
,
'talkatuattachmentdialog.c'
,
'talkatuattachmentpreview.c'
,
'talkatubuffer.c'
,
'talkatucodeset.c'
,
'talkatucore.c'
,
'talkatueditor.c'
,
'talkatuhistory.c'
,
'talkatuhistoryrow.c'
,
'talkatuhtmlbuffer.c'
,
'talkatuhtmlparser.c'
,
'talkatuinput.c'
,
'talkatulinkdialog.c'
,
'talkatumarkdownbuffer.c'
,
'talkatumarkup.c'
,
'talkatumenutoolbutton.c'
,
'talkatumessage.c'
,
'talkatumessageactions.c'
,
'talkatuscrolledwindow.c'
,
'talkatusimpleattachment.c'
,
'talkatutag.c'
,
'talkatutagtable.c'
,
'talkatutoolbar.c'
,
'talkatutooldrawer.c'
,
'talkatutypinglabel.c'
,
'talkatuview.c'
,
'talkatuwholebuffer.c'
,
]
TALKATU_PUBLIC_BUILT_HEADERS
=
[
# Modified below.
]
TALKATU_PUBLIC_BUILT_SOURCES
=
[
# Modified below.
]
TALKATU_PRIVATE_HEADERS
=
[
]
TALKATU_PRIVATE_SOURCES
=
[
]
TALKATU_PRIVATE_BUILT_HEADERS
=
[
# Modified below.
]
TALKATU_PRIVATE_BUILT_SOURCES
=
[
# Modified below.
]
TALKATU_ENUM_HEADERS
=
[
'talkatubuffer.h'
,
'talkatumessage.h'
,
'talkatutag.h'
,
'talkatuinput.h'
,
]
###############################################################################
# Resources
###############################################################################
talkatu_resources
=
gnome
.
compile_resources
(
'talkaturesources'
,
'data/talkatu.gresource.xml'
,
c_name
:
'talkatu'
,
source_dir
:
'data'
)
###############################################################################
# talkatuversion.h
###############################################################################
talkatuversion_h
=
configure_file
(
input
:
'talkatuversion.h.in'
,
output
:
'talkatuversion.h'
,
configuration
:
version_conf
,
install
:
true
,
install_dir
:
join_paths
(
get_option
(
'includedir'
),
'talkatu-1.0'
,
'talkatu'
))
TALKATU_PUBLIC_BUILT_HEADERS
+=
[
talkatuversion_h
]
###############################################################################
# talkatuenums.[ch]
###############################################################################
talkatuenums
=
gnome
.
mkenums_simple
(
'talkatuenums'
,
sources
:
TALKATU_ENUM_HEADERS
,
install_header
:
true
,
install_dir
:
join_paths
(
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
]
###############################################################################
# talkatu.h
###############################################################################
TALKATU_H_INCLUDES
=
''
foreach
header
:
TALKATU_HEADERS
TALKATU_H_INCLUDES
=
'@0@\n#include <talkatu/@1@>'
.
format
(
TALKATU_H_INCLUDES
,
header
)
endforeach
foreach
header
:
[
'talkatuenums.h'
,
'talkatuversion.h'
]
TALKATU_H_INCLUDES
=
'@0@\n#include <talkatu/@1@>'
.
format
(
TALKATU_H_INCLUDES
,
header
)
endforeach
conf
=
configuration_data
()
conf
.
set
(
'TALKATU_H_INCLUDES'
,
TALKATU_H_INCLUDES
)
talkatu_h
=
configure_file
(
input
:
'talkatu.h.in'
,
output
:
'talkatu.h'
,
configuration
:
conf
,
install
:
true
,
install_dir
:
join_paths
(
get_option
(
'includedir'
),
'talkatu-1.0'
))
###############################################################################
# Library target
###############################################################################
talkatu
=
shared_library
(
'talkatu'
,
TALKATU_SOURCES
,
TALKATU_PUBLIC_BUILT_SOURCES
,
TALKATU_PRIVATE_SOURCES
,
TALKATU_PRIVATE_BUILT_SOURCES
,
TALKATU_HEADERS
,
TALKATU_PUBLIC_BUILT_HEADERS
,
talkatuversion_h
,
talkatu_h
,
talkatu_resources
,
c_args
:
[
'-DTALKATU_COMPILATION'
,
'-DG_LOG_DOMAIN="Talkatu"'
],
include_directories
:
toplevel_inc
,
dependencies
:
[
CMARK
,
GLIB
,
GOBJECT
,
GUMBO
,
GTK3
,
GSPELL
],
version
:
TALKATU_LIBRARY_VERSION
,
install
:
true
)
talkatu_inc
=
include_directories
(
'.'
)
talkatu_dep
=
declare_dependency
(
include_directories
:
[
toplevel_inc
,
talkatu_inc
],
link_with
:
talkatu
,
sources
:
TALKATU_PUBLIC_BUILT_HEADERS
,
# Ensure they're built before use.
dependencies
:
[
GLIB
,
GOBJECT
,
GTK3
]
)
pkgconfig
.
generate
(
name
:
'libtalkatu'
,
description
:
'A set of instant message related widgets'
,
version
:
meson
.
project_version
(),
filebase
:
'talkatu'
,
subdirs
:
'talkatu-1.0'
,
libraries
:
talkatu
,
requires
:
[
'glib-2.0'
,
'gobject-2.0'
,
'gmodule-2.0'
,
'gtk+-3.0'
],
variables
:
[
'plugindir=${libdir}'
,
],
)
###############################################################################
# GObject Introspection
###############################################################################
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'
],
namespace
:
'Talkatu'
,
symbol_prefix
:
'talkatu'
,
nsversion
:
'@0@.0'
.
format
(
TALKATU_MAJOR_VERSION
),
extra_args
:
[
'--quiet'
,
'--warn-error'
,
'--warn-all'
,
'-DTALKATU_COMPILATION'
],
install
:
true
)
endif
subdir
(
'tests'
)
###############################################################################
# Glade Catalog
###############################################################################
install_data
(
'talkatu.xml'
,
install_dir
:
join_paths
(
get_option
(
'datadir'
),
'glade'
,
'catalogs'
))
###############################################################################
# Install Stuff
###############################################################################
# install the normal includes into the talkatuhtml subdirectory
install_headers
(
TALKATU_HEADERS
,
subdir
:
'talkatu-1.0/talkatu'
)
###############################################################################
# Docs
###############################################################################
if
get_option
(
'doc'
)
subdir
(
'reference'
)
endif