Commit Graph

21 Commits

Author SHA1 Message Date
24b876f437 libsysprof-profile: stub out libsysprof-profile library
This does the same thing as we did for libsysprof-analyze, but to contain
the profiler bits that will be used from applications/etc.
2023-05-25 15:43:53 -07:00
efab045006 libsysprof-analyze: start on sysprof-analyze library
The goal here is to break up libsysprof into a library for recording
profiles (using libsysprof-capture) and a library for analyzing profiles
(both used by the sysprof UI).
2023-04-25 11:57:26 -07:00
cc7e2820f3 build: bump version for development
This will also attempt to get us on the more modern GNOME versioning
train, hopefully to phase out micro numbers eventually.
2023-04-24 17:26:45 -07:00
0dc0a5b3de build: fix -Dagent=true -Dlibsysprof=false
The agent is statically linked so that it doesn't require using a properly
working libsysprof to be installed. This ensures that it continues to build
properly in that case so it can be used from org.gnome.Sdk.
2022-07-22 11:54:42 -07:00
c3035efd52 tools: add -Dagent=true option
This also builds the agent statically with libsysprof_static_dep since
we'd need that to avoid installing libsysprof when that isn't wanted.
It also ensures the LD_PRELOAD libraries are installed for use by the
agent.
2022-07-21 18:35:35 -07:00
dc829087d4 tools: add sysprof-agent
This is a program that can be communicated with over private D-Bus using
pipes to control a process. It is useful in an automated fashion from
tooling such as Builder.

This allows, when installed into SDKs like GNOMEs, to profile from inside
the container rather than from the outside. Such is useful when you need
to ensure you have access to LD_PRELOAD/etc within the context.
2022-07-21 18:28:18 -07:00
757d36ae8e Cleanup the build a bit
Makes the Meson build a little bit better and cleans up some of the
formatting.
2022-05-25 14:07:02 -05:00
b0cfa7632e libsysprof-ui: move ui headers 2022-04-01 13:15:49 -07:00
6b1cd7a722 build: add internal variable for profiler xml file 2020-07-04 16:42:10 -07:00
e03b54fca5 build: Only run gdbus-codegen if building components which need it
This is to avoid running `gdbus-codegen` when building sysprof as a
subproject underneath libglib, as by that point in the GLib build
process, `gdbus-codegen` is not yet available.

The interfaces generated by these `gdbus-codegen` invocations are only
needed for `sysprofd` and libsysprof, not for the libraries like
`libsysprof-capture`.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2020-07-03 22:01:33 +01:00
189505be64 build: only install some files when option is enabled
Fixes #16
2019-10-15 14:49:57 -07:00
198bfd9328 build: install legacy service API xml 2019-06-25 15:07:45 -07:00
09c457c880 sysprofd: implement org.gnome.Sysprof2 compatability API
This allows the new sysprofd to service requests for older clients
expecting to talk to or.gnome.Sysprof2.
2019-06-25 14:27:43 -07:00
ed8e23f776 build: install dbus interfaces 2019-05-29 15:13:00 -07:00
adcf667b5a tools: add tool to toggle a profiler
This is in-tree only currently, although we may consider installing it
at some point (or adding it to sysprof-cli).
2019-05-29 15:13:00 -07:00
cd3b4d6538 src: use helpers and add group_fd to remote API 2019-05-29 15:13:00 -07:00
427a4ca79d src: add helpers for common clinet/service side utils 2019-05-29 15:12:59 -07:00
6ba408f073 shared: remove use of libshared
This moves everything into other places and simple includes the
files in the cases that it is necessary. In the future, we can
rewrite sysprofd to use GDBus and add GetProcFile() to allow
for client-side processing of kallsyms.
2019-05-29 15:12:59 -07:00
1708ad1b48 tree: start on massive tree refactor
The big thing going on here is that we are going to split up the libraries
a bit better, and remove GObject from the capture library. The libsysprof
library will bring in the capture library statically, so we can export the
symbols we want.

Eventually, we will bump the version to sysprof-3, but not yet.
2019-05-29 15:12:59 -07:00
6f635ad371 build: don't disable assert on tests
This fixes #2 where meson errors about tests and assert being disabled.
2018-08-22 13:06:15 -07:00
52bc856be4 build: Add support for Meson 2016-12-01 02:34:11 -05:00