Blame plugins/power/meson.build

Packit 9ca0cf
sources = files(
Packit 9ca0cf
  'gpm-common.c',
Packit 9ca0cf
  'gsd-backlight.c',
Packit 9ca0cf
  'gsd-power-manager.c',
Packit 9ca0cf
  'main.c'
Packit 9ca0cf
)
Packit 9ca0cf
Packit 9ca0cf
deps = plugins_deps + [
Packit 9ca0cf
  libcanberra_gtk_dep,
Packit 9ca0cf
  libcommon_dep,
Packit 9ca0cf
  libnotify_dep,
Packit 9ca0cf
  gio_unix_dep,
Packit 9ca0cf
  gnome_desktop_dep,
Packit 9ca0cf
  m_dep,
Packit 9ca0cf
  upower_glib_dep,
Packit 9ca0cf
  x11_dep,
Packit 9ca0cf
  dependency('xext')
Packit 9ca0cf
]
Packit 9ca0cf
Packit 9ca0cf
# required for gsd-power-enums-update, which we have
Packit 9ca0cf
# to compile natively
Packit 9ca0cf
native_deps = [
Packit 9ca0cf
  dependency('glib-2.0', native: true),
Packit 9ca0cf
  dependency('gio-2.0', native:true)
Packit 9ca0cf
]
Packit 9ca0cf
Packit 9ca0cf
if host_is_linux
Packit 9ca0cf
  deps += gudev_dep
Packit 9ca0cf
endif
Packit 9ca0cf
Packit 9ca0cf
cflags += ['-DLIBEXECDIR="@0@"'.format(gsd_libexecdir)]
Packit 9ca0cf
Packit 9ca0cf
gsd_power = executable(
Packit 9ca0cf
  'gsd-' + plugin_name,
Packit 9ca0cf
  sources,
Packit 9ca0cf
  include_directories: [top_inc, data_inc],
Packit 9ca0cf
  dependencies: deps,
Packit 9ca0cf
  c_args: cflags,
Packit 9ca0cf
  install: true,
Packit 9ca0cf
  install_rpath: gsd_pkglibdir,
Packit 9ca0cf
  install_dir: gsd_libexecdir
Packit 9ca0cf
)
Packit 9ca0cf
Packit 9ca0cf
sources = files('gsd-power-enums-update.c')
Packit 9ca0cf
Packit 9ca0cf
enums_headers = files(
Packit 9ca0cf
  'gsm-inhibitor-flag.h',
Packit 9ca0cf
  'gsm-presence-flag.h'
Packit 9ca0cf
)
Packit 9ca0cf
Packit 9ca0cf
enums = 'gsd-power-enums'
Packit 9ca0cf
Packit 9ca0cf
sources += gnome.mkenums(
Packit 9ca0cf
  enums,
Packit 9ca0cf
  sources: enums_headers,
Packit 9ca0cf
  c_template: enums + '.c.in',
Packit 9ca0cf
  h_template: enums + '.h.in'
Packit 9ca0cf
)
Packit 9ca0cf
Packit 9ca0cf
gsd_power_enums_update = executable(
Packit 9ca0cf
  'gsd-power-enums-update',
Packit 9ca0cf
  sources,
Packit 9ca0cf
  include_directories: top_inc,
Packit 9ca0cf
  dependencies: native_deps,
Packit 9ca0cf
  c_args: cflags,
Packit 9ca0cf
  native: true
Packit 9ca0cf
)
Packit 9ca0cf
Packit 9ca0cf
if host_is_linux
Packit 9ca0cf
  policy = 'org.gnome.settings-daemon.plugins.power.policy'
Packit 9ca0cf
Packit 9ca0cf
  policy_in = configure_file(
Packit 9ca0cf
    input: policy + '.in.in',
Packit 9ca0cf
    output: policy + '.in',
Packit 9ca0cf
    configuration: plugins_conf
Packit 9ca0cf
  )
Packit 9ca0cf
Packit 9ca0cf
  i18n.merge_file(
Packit 9ca0cf
    policy,
Packit 9ca0cf
    input: policy_in,
Packit 9ca0cf
    output: policy,
Packit 9ca0cf
    po_dir: po_dir,
Packit 9ca0cf
    install: true,
Packit 9ca0cf
    install_dir: join_paths(gsd_datadir, 'polkit-1', 'actions')
Packit 9ca0cf
  )
Packit 9ca0cf
Packit 9ca0cf
  sources = files(
Packit 9ca0cf
    'gsd-backlight-helper.c',
Packit 9ca0cf
  )
Packit 9ca0cf
Packit 9ca0cf
  deps = [
Packit 9ca0cf
  ]
Packit 9ca0cf
Packit 9ca0cf
  executable(
Packit 9ca0cf
    'gsd-backlight-helper',
Packit 9ca0cf
    sources,
Packit 9ca0cf
    include_directories: top_inc,
Packit 9ca0cf
    dependencies: deps,
Packit 9ca0cf
    install: true,
Packit 9ca0cf
    install_rpath: gsd_pkglibdir,
Packit 9ca0cf
    install_dir: gsd_libexecdir
Packit 9ca0cf
  )
Packit 9ca0cf
endif
Packit 9ca0cf
Packit 9ca0cf
output = 'gsdpowerconstants.py'
Packit 9ca0cf
Packit 9ca0cf
gsdpowerconstants_py = custom_target(
Packit 9ca0cf
  output,
Packit 9ca0cf
  input: 'gsd-power-constants.h',
Packit 9ca0cf
  output: output,
Packit 9ca0cf
  build_by_default: true,
Packit 9ca0cf
  command: [join_paths(meson.current_source_dir(), 'gsd-power-constants-update.pl'), '@INPUT@', '@OUTPUT@']
Packit 9ca0cf
)
Packit 9ca0cf
Packit 9ca0cf
output = 'gsdpowerenums.py'
Packit 9ca0cf
Packit 9ca0cf
gsdpowerenums_py = custom_target(
Packit 9ca0cf
  output,
Packit 9ca0cf
  output: output,
Packit 9ca0cf
  capture: true,
Packit 9ca0cf
  build_by_default: true,
Packit 9ca0cf
  command: [gsd_power_enums_update]
Packit 9ca0cf
)
Packit 9ca0cf
Packit 9ca0cf
test_py = find_program('test.py')
Packit 9ca0cf
Packit 9ca0cf
envs = environment()
Packit 9ca0cf
#envs.prepend('G_DEBUG', 'fatal-warnings')
Packit 9ca0cf
envs.set('BUILDDIR', meson.current_build_dir())
Packit 9ca0cf
envs.set('TOP_BUILDDIR', meson.build_root())
Packit 9ca0cf
envs.set('LD_PRELOAD', 'libumockdev-preload.so.0')
Packit 9ca0cf
envs.set('NO_AT_BRIDGE', '1')
Packit 9ca0cf
envs.set('HAVE_SYSFS_BACKLIGHT', host_is_linux ? '1' : '0')
Packit 9ca0cf
Packit 9ca0cf
if get_option('b_sanitize').split(',').contains('address')
Packit 9ca0cf
  # libasan needs to be loaded first; so we need to explicitly preload it
Packit 9ca0cf
  envs.set('POWER_LD_PRELOAD', 'libasan.so.5')
Packit 9ca0cf
endif
Packit 9ca0cf
Packit 9ca0cf
foreach i : [ 1, 2, 3, 4, 5, 6, 7, 8 ]
Packit 9ca0cf
  test(
Packit 9ca0cf
    'test-power @0@/8'.format(i),
Packit 9ca0cf
    test_py,
Packit 9ca0cf
    args: [ 'PowerPluginTest@0@'.format(i) ],
Packit 9ca0cf
    env: envs,
Packit 9ca0cf
    timeout: 100
Packit 9ca0cf
  )
Packit 9ca0cf
endforeach
Packit 9ca0cf