gri3-wm/meson.build

176 lines
3.8 KiB
Meson

project('i3-guile', 'c', version: '4.18')
cc = meson.get_compiler('c')
sources = [
'src/assignments.c',
'src/bindings.c',
'src/click.c',
'src/commands.c',
'src/commands_parser.c',
'src/con.c',
'src/config.c',
'src/config_directives.c',
'src/config_parser.c',
'src/display_version.c',
'src/drag.c',
'src/ewmh.c',
'src/fake_outputs.c',
'src/floating.c',
'src/handlers.c',
'src/ipc.c',
'src/key_press.c',
'src/load_layout.c',
'src/log.c',
'src/main.c',
'src/manage.c',
'src/match.c',
'src/move.c',
'src/output.c',
'src/randr.c',
'src/regex.c',
'src/render.c',
'src/resize.c',
'src/restore_layout.c',
'src/scratchpad.c',
'src/sd-daemon.c',
'src/sighandler.c',
'src/startup.c',
'src/sync.c',
'src/tree.c',
'src/util.c',
'src/version.c',
'src/window.c',
'src/workspace.c',
'src/x.c',
'src/xcb.c',
'src/xcursor.c',
'src/xinerama.c'
]
libm_dep = cc.find_library('m', required : true)
guile_dep = dependency('guile-3.0')
yajl_dep = dependency('yajl')
pango_dep = dependency('pango')
cairo_dep = dependency('cairo')
pangocairo_dep = dependency('pangocairo')
pcre_dep = dependency('libpcre')
sn_dep = dependency('libstartup-notification-1.0')
thread_dep = dependency('threads')
x11xcb_dep = dependency('x11-xcb')
glib_dep = dependency('glib-2.0')
glibobject_dep = dependency('gobject-2.0')
xcb_dep = dependency('xcb')
xkbcommon_dep = dependency('xkbcommon')
xkbx11_dep = dependency('xkbcommon-x11')
xcbutil_dep = dependency('xcb-util')
xcbcursor_dep = dependency('xcb-cursor')
xcbshape_dep = dependency('xcb-shape')
xcbkeysyms_dep = dependency('xcb-keysyms')
xcbrandr_dep = dependency('xcb-randr')
xcbxkb_dep = dependency('xcb-xkb')
# xcbstate_dep = dependency('xcb-state')
xcb_xinerama_dep = dependency('xcb-xinerama')
xcb_xrm_dep = dependency('xcb-xrm')
xcb_icccm_dep = dependency('xcb-icccm')
libi3_sources = [
'libi3/dpi.c',
'libi3/draw_util.c',
'libi3/fake_configure_notify.c',
'libi3/font.c',
'libi3/format_placeholders.c',
'libi3/get_colorpixel.c',
'libi3/get_config_path.c',
'libi3/get_exe_path.c',
'libi3/get_mod_mask.c',
'libi3/get_process_filename.c',
'libi3/get_visualtype.c',
'libi3/g_utf8_make_valid.c',
'libi3/ipc_connect.c',
'libi3/ipc_recv_message.c',
'libi3/ipc_send_message.c',
'libi3/is_debug_build.c',
'libi3/mkdirp.c',
'libi3/resolve_tilde.c',
'libi3/root_atom_contents.c',
'libi3/safewrappers.c',
'libi3/string.c',
'libi3/strndup.c',
'libi3/ucs2_conversion.c',
]
i3lib = static_library('i3', libi3_sources,
include_directories: include_directories('include'),
dependencies: [
libm_dep,
guile_dep,
yajl_dep,
pango_dep,
cairo_dep,
pangocairo_dep,
pcre_dep,
sn_dep,
thread_dep,
glib_dep,
glibobject_dep,
xkbcommon_dep,
xcb_dep,
xcbcursor_dep,
x11xcb_dep,
xcbutil_dep,
xcbkeysyms_dep,
xcbrandr_dep,
xcbxkb_dep,
xcb_xinerama_dep,
xcb_xrm_dep,
xcb_icccm_dep,
])
executable('i3-wm-guile', sources,
include_directories :
[
include_directories('include'),
include_directories('generated'),
],
dependencies: [
libm_dep,
guile_dep,
yajl_dep,
pango_dep,
cairo_dep,
pangocairo_dep,
pcre_dep,
sn_dep,
thread_dep,
glib_dep,
glibobject_dep,
xkbcommon_dep,
xkbx11_dep,
xcb_dep,
xcbcursor_dep,
xcbshape_dep,
x11xcb_dep,
xcbutil_dep,
xcbkeysyms_dep,
xcbrandr_dep,
xcbxkb_dep,
xcb_xinerama_dep,
xcb_xrm_dep,
xcb_icccm_dep,
],
link_with: i3lib,
link_args: ['-lrt', '-lev'])
executable('i3-nagbar', './i3-nagbar/main.c',
include_directories: include_directories('include'),
dependencies: [ pango_dep, sn_dep ],
link_with: i3lib)