mirror of
https://github.com/varun-r-mallya/sysprof.git
synced 2025-12-31 20:36:25 +00:00
This is meant to become our toplevel object controlling an analysis session. We need it to know about any filters in place such as time selections. Callgraph needs to be updated to use this as well.
83 lines
2.4 KiB
Meson
83 lines
2.4 KiB
Meson
libsysprof_gtk_public_sources = [
|
|
'sysprof-callgraph-view.c',
|
|
'sysprof-session.c',
|
|
'sysprof-weighted-callgraph-view.c',
|
|
]
|
|
|
|
libsysprof_gtk_private_sources = [
|
|
'sysprof-css.c',
|
|
'sysprof-progress-cell.c',
|
|
'sysprof-symbol-label.c',
|
|
'sysprof-time-label.c',
|
|
]
|
|
|
|
libsysprof_gtk_public_headers = [
|
|
'sysprof-gtk.h',
|
|
|
|
'sysprof-callgraph-view.h',
|
|
'sysprof-session.h',
|
|
'sysprof-weighted-callgraph-view.h',
|
|
]
|
|
|
|
libsysprof_gtk_deps = [
|
|
dependency('libadwaita-1'),
|
|
dependency('libpanel-1'),
|
|
dependency('gtk4', version: gtk_req_version),
|
|
|
|
libsysprof_analyze_dep,
|
|
]
|
|
|
|
libsysprof_gtk_resources = gnome.compile_resources(
|
|
'libsysprof-gtk-resources',
|
|
'libsysprof-gtk.gresource.xml',
|
|
c_name: 'libsysprof_gtk',
|
|
)
|
|
|
|
libsysprof_gtk_static = static_library(
|
|
'sysprof-gtk-@0@'.format(soname_major_version),
|
|
(libsysprof_gtk_public_sources +
|
|
libsysprof_gtk_private_sources +
|
|
libsysprof_gtk_resources +
|
|
mapped_ring_buffer_sources),
|
|
|
|
include_directories: [include_directories('.'),
|
|
ipc_include_dirs,
|
|
libsysprof_capture_include_dirs],
|
|
dependencies: libsysprof_gtk_deps,
|
|
gnu_symbol_visibility: 'hidden',
|
|
)
|
|
|
|
libsysprof_gtk_static_dep = declare_dependency(
|
|
link_with: libsysprof_gtk_static,
|
|
dependencies: libsysprof_gtk_deps,
|
|
include_directories: [include_directories('.'),
|
|
libsysprof_capture_include_dirs],
|
|
)
|
|
|
|
libsysprof_gtk = library('sysprof-gtk-@0@'.format(soname_major_version),
|
|
dependencies: [libsysprof_gtk_static_dep],
|
|
gnu_symbol_visibility: 'hidden',
|
|
version: '@0@.0.0'.format(soname_major_version),
|
|
darwin_versions: '@0@.0'.format(soname_major_version),
|
|
install: true,
|
|
)
|
|
|
|
libsysprof_gtk_dep = declare_dependency(
|
|
link_with: libsysprof_gtk,
|
|
dependencies: libsysprof_gtk_deps,
|
|
include_directories: [include_directories('.'), libsysprof_capture_include_dirs],
|
|
)
|
|
meson.override_dependency('sysprof-gtk-@0@'.format(soname_major_version), libsysprof_gtk_dep)
|
|
|
|
pkgconfig.generate(libsysprof_gtk,
|
|
subdirs: [sysprof_header_subdir],
|
|
description: 'Provides GTK widgets for sysprof visualizion',
|
|
install_dir: join_paths(get_option('libdir'), 'pkgconfig'),
|
|
requires: ['gtk4'],
|
|
variables: ['datadir=' + datadir_for_pc_file],
|
|
)
|
|
|
|
install_headers(libsysprof_gtk_public_headers, subdir: sysprof_header_subdir)
|
|
|
|
subdir('tests')
|