mirror of
https://anongit.gentoo.org/git/repo/gentoo.git
synced 2025-07-21 22:53:31 +02:00
Package has two problems: It's doesn't compile with c23 and it's build system is badly handwritten, and fails to configure due to changes to bash and build environment. It also makes Eli Schwartz scream (# 900398#c5 ). Fix build by limiting C version to gnu17. Fix configure by rewriting build in Meson. New build artifacts are running, can't test if they are working correctly - original build fails to configure on my system at all. Bug: https://bugs.gentoo.org/879631 Bug: https://bugs.gentoo.org/926090 Bug: https://bugs.gentoo.org/900398 Signed-off-by: NHOrus <jy6x2b32pie9@yahoo.com> Closes: https://github.com/gentoo/gentoo/pull/40404 Signed-off-by: Sam James <sam@gentoo.org>
72 lines
1.5 KiB
Meson
72 lines
1.5 KiB
Meson
project('xvnkb', 'c', version: '0.2.11', meson_version: '>=1.4.0')
|
|
|
|
add_project_arguments('-DVK_NEED_UCHAR', language: 'c')
|
|
|
|
conf_data = configuration_data()
|
|
conf_data.set('version', meson.project_version())
|
|
conf_data.set('VK_USE_ABCSTROKE', get_option('abcstroke'))
|
|
conf_data.set('VK_USE_EXTSTROKE', get_option('extstroke'))
|
|
conf_data.set('VK_USE_PROSTROKE', get_option('prostroke'))
|
|
conf_data.set('VK_CHECK_SPELLING', get_option('spellcheck'))
|
|
|
|
configure_file(
|
|
output: 'config.h',
|
|
input: 'config.h.in',
|
|
configuration: conf_data,
|
|
)
|
|
|
|
dl_dep = dependency('dl')
|
|
xlib_dep = dependency('X11')
|
|
|
|
xft_dep = dependency('xft', required: get_option('xft'))
|
|
if get_option('xft').enabled()
|
|
add_project_arguments('-DUSE_XFT', language: 'c')
|
|
endif
|
|
|
|
deps = [dl_dep, xlib_dep, xft_dep]
|
|
|
|
core_src = ['xvnkb.c', 'visckey.c']
|
|
core = library(
|
|
'xvnkb',
|
|
core_src,
|
|
name_prefix: '',
|
|
soversion: meson.project_version(),
|
|
dependencies: deps,
|
|
install: true,
|
|
)
|
|
|
|
src = [
|
|
'data.c',
|
|
'flash.c',
|
|
'main.c',
|
|
'event.c',
|
|
'mainwin.c',
|
|
'menu.c',
|
|
'hotkey.c',
|
|
'systray.c',
|
|
'mode.c',
|
|
'property.c',
|
|
'session.c',
|
|
'xconfig.c',
|
|
'xresource.c',
|
|
'label.c',
|
|
'button.c',
|
|
'msgbox.c',
|
|
]
|
|
executable('xvnkb', src, dependencies: deps, link_with: core, install: true)
|
|
|
|
ctrl_src = [
|
|
'tools/xvnkb_ctrl.c',
|
|
'tools/data.c',
|
|
'tools/mode.c',
|
|
'tools/property.c',
|
|
'tools/xconfig.c',
|
|
]
|
|
executable(
|
|
'xvnkb_ctlr',
|
|
ctrl_src,
|
|
dependencies: deps,
|
|
link_with: core,
|
|
install: true,
|
|
)
|
|
|