Commit Graph

2483 Commits

Author SHA1 Message Date
20b8fbe604 config: add APP_ID and APP_ID_S to config.h 2022-08-22 12:02:48 -07:00
7401e434dc Revert "build: remove config.h.meson"
This reverts commit 5298e67d12.
2022-08-22 12:02:07 -07:00
749dfbd57e tools: make sysprof-cli statically linked
We don't need to dynamically link against libsysprof for sysprof-cli as
we can do the same thing that sysprof-agent does. In fact, we can probably
even make sysprof-cli wrap sysprof-agent in the future (or be the same
binary that looks at it's argv[0]).
2022-08-17 15:07:47 -07:00
98e23f0a27 Post-release bump 2022-08-05 16:08:09 -07:00
721be2937c Release 3.45.1 2022-08-05 16:06:27 -07:00
475e513b7f tools/sysprof-cli: cleanup header includes
Fixes double inclusion of <signal.h> as well.
2022-08-01 10:15:56 -07:00
1a8a9adc97 tools/sysprof-agent: handle SIGINT like we do for sysprof-cli
This just forces the profiler to exit, but lets subsequent ^C usage to
actually exit the program.
2022-08-01 10:15:36 -07:00
2f325fbf54 tools/sysprof-agent: set cwd to . unless --directory specified 2022-08-01 10:04:59 -07:00
a9774999d8 Merge branch 'wip/chergert/install-agent-by-default' into 'master'
build: enable sysprof-agent by default (-Dagent=true)

Closes #80

See merge request GNOME/sysprof!53
2022-07-28 08:26:59 +00:00
51e9123f6f libsysprof/preload: add example for tracing with -finstrument-functions
If we have tooling that can toggle -finstrument-functions, Builder for
example, then we'd be able to use an LD_PRELOAD to inject the various
function callbacks to record samples.

I dont think we want to use the sample frame type for this though. We
really want something focused on tracing instead and visualize it a bit
differently than the stack trace visualizer.
2022-07-25 23:37:34 -07:00
7ca2fef8ff libsysprof: cleanup backtrace helper types 2022-07-25 23:37:34 -07:00
0866f12d15 Update Polish translation 2022-07-24 16:54:42 +02:00
bbf21d257a Update Ukrainian translation 2022-07-24 06:22:13 +00:00
7ffc91fb35 Update POTFILES.in 2022-07-23 13:09:26 +02:00
3d02ea81fa libsysprof-ui: remove EggThreeGrid from build 2022-07-22 14:50:14 -07:00
1a628d6469 libsysprof-ui: move memprof button box to bottom
This is just too hit-target dense at the top, so try to get it out of
the way a bit.
2022-07-22 14:49:40 -07:00
131953150c libsysprof-ui: add spacing around toggle buttons 2022-07-22 14:48:20 -07:00
cd4a22ed4b libsysprof-ui: use AdwPreferencesPage for memprof page 2022-07-22 14:46:59 -07:00
3e2a704231 libsysprof-ui: remove use of EggTreeGrid in details page 2022-07-22 14:32:24 -07:00
950f746150 sysprof: port to GBindingGroup
We aren't using any of the special getter API here, so we can just drop
our use of the EggBindingGroup and use the upstream'd version.
2022-07-22 14:06:46 -07:00
9e2743fa76 build: gate capture pkgconfig by install-static 2022-07-22 13:45:55 -07:00
099330db90 build: allow disabling installation of static libraries 2022-07-22 13:43:54 -07:00
feccf5fbeb css: fix object select image styling for profiler assistant
Fixes #79
2022-07-22 13:30:43 -07:00
3002640c50 build: use app-id to determine installed icon
This means we don't install org.gnome.Sysprof.svg anymore when building
with -Ddevelopment=true (and vice versa). We do use org.gnome.Sysprof.svg
from libsysprof-ui, but that embeds the appropriate resources.
2022-07-22 13:13:59 -07:00
a4d0037354 icons: export nightly/devel icon with construction tape 2022-07-22 13:01:24 -07:00
2f9884bece build: ensure we install a .Devel app icon 2022-07-22 12:57:24 -07:00
59c196e0f1 build: make appdata/desktop files use dynamic app-id
This ensures we get the right app-id based on -Ddevelopment=true.
2022-07-22 12:55:12 -07:00
4b68b9180b build: define APP_ID and APP_ID_S in config.h
This allows us to change the app-id in sysprof based on the configuration
so that nightlies do not get the same app-id as regular builds.
2022-07-22 12:54:31 -07:00
97633fd011 build: use -Ddevelopment=true to set DEVELOPMENT_BUILD
And also, we use it as #ifdef, so never define it as 0.
2022-07-22 12:53:51 -07:00
5298e67d12 build: remove config.h.meson
We don't need this anymore, so just drop it and let meson generate our
file every time.
2022-07-22 12:52:57 -07:00
dfe2dbe9bc build: remove org.gnome.sysprof3 gsettings schema
We don't use this anymore, so we can just delete it.
2022-07-22 12:37:53 -07:00
1945660912 build: move application id to org.gnome.Sysprof
We use org.gnome.Sysprof3 for the sysprofd daemon, but we need not
complicate the application with such an application id.
2022-07-22 12:24:42 -07:00
054ba9b64d .gitlab-ci.yml: add flatpak build to CI 2022-07-22 12:12:34 -07:00
192baa9621 build-aux: use org.gnome.Sysprof.Devel for nightly
and move it to toplevel directory for discoverability
2022-07-22 12:11:59 -07:00
e6a582c3aa build: same thing for install_service_files 2022-07-22 12:09:24 -07:00
fa7580f60f build: always define needs_service_access 2022-07-22 12:04:51 -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
3b381d88a3 build: enable sysprof-agent by default (-Dagent=true)
This enables sysprof-agent by default to ensure that we are getting built
in places that really should have it without packager intervention.

Fixes #80
2022-07-22 11:44:54 -07:00
a12177e447 Update German translation
(cherry picked from commit c1cd792172018be1b657f55d1bc6c438531bb3a0)
2022-07-22 08:31:14 +00:00
723072b86a build: default -Dagent=false
That way we don't break any CI out there which hasn't disabled it.
2022-07-21 18:58:23 -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
e772197253 libsysprof: add signals for spawn/exit/term of subprocess
This is useful so that we can know when a subprocess has spawned by the
profiler in tooling which allows sysprof to spawn a process and monitor
said process. Additionally, we need to know when it exits so that we can
be correct in when we can call get_if_exited() from tooling.
2022-07-21 11:53:14 -07:00
7da72ce66d build: post-release bump 2022-07-21 11:40:31 -07:00
d3076d1161 libsysprof: and always emit finished 2022-07-20 16:28:06 -07:00
5a88d5a0a1 libsysprof: handle NULL governor case gracefully 2022-07-20 16:25:09 -07:00
b12da900a9 Merge branch 'adw-about-window' into 'master'
Use AdwAboutWindow

See merge request GNOME/sysprof!52
2022-07-18 15:55:07 +00:00
605b8adc67 Update Polish translation 2022-07-17 13:46:37 +02:00
JMS
16a456a8dd Use AdwAboutWindow 2022-07-16 21:23:57 +00:00
7a4e0bfd20 Update Ukrainian translation 2022-07-14 13:37:42 +00:00