1
0
forked from drath/libratbag
Files
libratbag-plus/meson.build
Peter Hutterer 97a37d21e1 Drop the python bindings, move them into ratbagctl
The python bindings were mostly boilerplate and a 1:1 mapping of the dbus
interface anyway. Packaging them for distributions is difficult, so given how
little benefit they provide, let's just stop shipping them.

Those who need those bindings (like piper) can either make their own or copy
them.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-06-08 09:15:21 +02:00

141 lines
3.5 KiB
Meson

project('ratbagd', 'c',
version : '0.4',
license : 'MIT/Expat',
meson_version : '>= 0.40.0',
default_options : [ 'c_std=gnu99', 'warning_level=2' ])
ratbagd_version = meson.project_version().split('.')
# Compiler setup
cc = meson.get_compiler('c')
cflags = [
'-Wno-inline',
'-Wundef',
'-Wformat=2',
'-Wformat-security',
'-Wformat-nonliteral',
'-Wlogical-op',
'-Wsign-compare',
'-Wmissing-include-dirs',
'-Wold-style-definition',
'-Wpointer-arith',
'-Winit-self',
'-Wdeclaration-after-statement',
'-Wfloat-equal',
'-Wsuggest-attribute=noreturn',
'-Wmissing-prototypes',
'-Wstrict-prototypes',
'-Wredundant-decls',
'-Wmissing-declarations',
'-Wmissing-noreturn',
'-Wendif-labels',
'-Wstrict-aliasing=2',
'-Wwrite-strings',
'-Wno-long-long',
'-Wno-overlength-strings',
'-Wno-unused-parameter',
'-Wno-missing-field-initializers',
'-Wno-unused-result',
'-Werror=overflow',
'-Wdate-time',
'-Wnested-externs',
]
add_project_arguments(cflags, language: 'c')
add_project_arguments('-D_GNU_SOURCE', language : 'c')
# Initialize config.h, to be added to in the various options below, config.h
# is generated at the end of this file
config_h = configuration_data()
# dependencies
pkgconfig = import('pkgconfig')
dep_udev = dependency('libudev')
dep_systemd = dependency('libsystemd', version : '>=227')
dep_libratbag = dependency('libratbag', version : '>= 0.6')
dep_lm = cc.find_library('m')
libratbag_data_dir = dep_libratbag.get_pkgconfig_variable('pkgdatadir')
config_h.set_quoted('LIBRATBAG_DATA_DIR', libratbag_data_dir)
#### libshared.a ####
src_libshared = [
'src/shared-macro.h',
'src/shared-rbtree.h',
'src/shared-rbtree.c',
]
deps_libshared = [
dep_lm,
]
lib_libshared = static_library('shared',
src_libshared,
dependencies : deps_libshared
)
dep_libshared = declare_dependency(link_with: lib_libshared)
#### ratbagd ####
src_ratbagd = [
'src/ratbagd.h',
'src/ratbagd.c',
'src/ratbagd-button.c',
'src/ratbagd-device.c',
'src/ratbagd-profile.c',
'src/ratbagd-resolution.c'
]
deps_ratbagd = [
dep_udev,
dep_systemd,
dep_libratbag,
dep_libshared,
]
executable('ratbagd',
src_ratbagd,
dependencies : deps_ratbagd,
include_directories : include_directories('src'),
install : true,
)
install_man('doc/ratbagd.8')
#### unit file ####
unitdir = get_option('systemd-unit-dir')
if unitdir == ''
unitdir = get_option('libdir') + '/systemd/system'
endif
config_bindir = configuration_data()
config_bindir.set('bindir', join_paths(get_option('prefix'), get_option('bindir')))
configure_file(input : 'ratbagd.service.in',
output : 'ratbagd.service',
configuration : config_bindir,
install_dir : unitdir)
dbusdir = get_option('dbus-root-dir')
if dbusdir == ''
dbusdir = join_paths(get_option('datadir'), 'dbus-1')
endif
configure_file(input : 'dbus/org.freedesktop.ratbag1.service.in',
output : 'org.freedesktop.ratbag1.service',
configuration : config_bindir,
install_dir : join_paths(dbusdir, 'system-services'))
install_data('dbus/org.freedesktop.ratbag1.conf',
configuration : config_bindir,
install_dir : join_paths(dbusdir, 'system.d'))
#### tools ####
config_ratbagctl = configuration_data()
config_ratbagctl.set('version', meson.project_version())
configure_file(input : 'tools/ratbagctl.in',
output : 'ratbagctl',
configuration : config_ratbagctl,
install_dir : get_option('bindir'))
install_man('doc/ratbagctl.1')
#### output files ####
configure_file(output: 'config.h', install: false, configuration: config_h)