Commit Graph

2003 Commits

Author SHA1 Message Date
427a4ca79d src: add helpers for common clinet/service side utils 2019-05-29 15:12:59 -07:00
4a6f7324c1 sysprofd: fix error path and add some logging 2019-05-29 15:12:59 -07:00
bc5c243407 sysprofd: implement mechanics for perf_event_open 2019-05-29 15:12:59 -07:00
ab2fdffa6d sysprofd: require polkit authorization by the peer 2019-05-29 15:12:59 -07:00
e77310a511 build: update some dependency versions
These might give us a chance to work on Debian stable.
2019-05-29 15:12:59 -07:00
ed48eadd08 sysprofd: start on port to GDBusConnection
This will help us reduce a lot of code and eventually make some things
more asynchronous to allow for interactive authorization.
2019-05-29 15:12:59 -07:00
46d3c553e5 libsysprof: allow kallsyms usage from daemon 2019-05-29 15:12:59 -07:00
543bf87b81 libsysprof: cleanup whitespace in headers 2019-05-29 15:12:59 -07:00
88a689ade1 libsysprof-ui: fixup whitespace in headers 2019-05-29 15:12:59 -07:00
a6e061f5b1 libsysprof-ui: add inside guards
Like the previous, but for libsysprof-ui.
2019-05-29 15:12:59 -07:00
7ea6ca43ec libsysprof: add inside guards to prevent stray includes
This requires that things use #include <sysprof.h> now instead
of individual includes. A few cases are still allowed in the
libsysprof-capture library to make copy/paste embedding easier.
2019-05-29 15:12:59 -07:00
219b48f668 ui: fix various css/ui includes 2019-05-29 15:12:59 -07:00
53c718b708 build: rename all symbols to use sysprof_ as prefix
As we gain in usage, we need to be more careful about using a prefix
that will not collide with other symbols. So version 3 of our ABI will
change to using Sysprof/SYSPROF/sysprof as the various prefixes.

The soname/api version bump will happen later on this branch so that
things are easier to test up until then.
2019-05-29 15:12:59 -07:00
4821883bfa libsysprof-ui: use symbol versioning macros 2019-05-29 15:12:59 -07:00
a54892e33f libsysprof: remove use of static library
We can just include the files directly, and avoid the static
linking and potential problems that come with that when porting
the build system to other platforms.
2019-05-29 15:12:59 -07:00
55f587988b libsysprof-capture: add missing config.h includes
This is needed for symbol visibility.
2019-05-29 15:12:59 -07:00
29258e59ba libsysprof: make symbol dirs public API 2019-05-29 15:12:59 -07:00
8b88bfe693 libsysprof: add versioning macros
This also moves stackstash.[ch] into a location that can be
embedded by both the libsysprof and libsysprof-ui code. We
pass native pointers to the structure as a gpointer in the
public API to allow for this. The performance of that code is
incredibly sensitive to the interactivity of Sysprof.
2019-05-29 15:12:59 -07:00
1b3663362d libsysprof-capture: set symbol visibility to hidden 2019-05-29 15:12:59 -07:00
d9d572b557 libsysprof-capture: add availability macros 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
1c6741bdc6 libsysprof-ui: set inside guards 2019-05-29 15:12:59 -07:00
d89e2d8941 capture: add versioning macros 2019-05-29 15:12:59 -07:00
6b983ab8c1 capture: add task-id (thread-id) to samples
This could let us do some amount of filtering by threads going
forward if we have that data available to us.
2019-05-29 15:12:59 -07:00
173b583556 capture: allow macros and functions to co-exist 2019-05-29 15:12:59 -07:00
63bcfc2b0e build: various build fixes for macOS
This doesn't make profiling useful in any way, but it does get things
to the point where I can actually open a capture file. And it would
be nice if we could progress to the point of loading capture files
(with correct data in-tact) and this helps us move down that path.

To really do that correctly, we should make some of the widgetry
disabled when it isn't useful. We also need to ensure that we add extra
decoding information to capture files during shutdown so that any
platform can read it back. This would also help the situation of
running and reading on separate architectures.
2019-05-29 15:12:59 -07:00
e705014394 binfile: ignore vdso bytes if not on Linux
Of course, this all needs improvements to be realistically useful, but
it allows us to get things at least opening. We can adjust how we
store that data to make it available on other OS's later.
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
6e922c4300 window: use org.gnome.Sysprof-symbolic 2019-01-30 14:27:22 -08:00
573c6ec82d icon: update app icon
- GNOME 3.32 redesign of app icons.
  See https://gitlab.gnome.org/GNOME/Initiatives/issues/2
  for more info.

/label ~"9. Initiative: AppIconRedesign"
2019-01-29 13:28:51 +01:00
a6f34b32cf theme: fix colors on development builds 2018-10-16 17:35:00 -07:00
9d9b79a438 theme: fix foreground 2018-10-15 19:01:57 -07:00
be185c2fbc theme: add development highlight to headerbar 2018-10-15 18:57:13 -07:00
ad991ef7e7 app: update copyright in about dialog 2018-10-12 17:14:13 -07:00
52f411e1de memory: add memory source for basic mem stats 2018-10-12 17:11:42 -07:00
9abac0931e app: add missing locale.h include 2018-09-29 14:09:47 -07:00
a827b61d63 i18n: ensure we setup i18n/l10n during application startup
Historically, Sysprof never supported translations. When revamping the
Sysprof implementation we didn't fix that, even though we were able to
start accepting translations.

This ensures we setup the translation tooling at startup.

Fixes #3
2018-09-25 14:38:29 -07:00
93a2f9f392 window: disambiguate a string 2018-09-25 20:46:29 +02:00
64ce198a07 Add translator comments 2018-09-25 20:43:48 +02:00
1d10c90aba window: add ellipsis to dialogs
This makes the title more closely match the menu items.
2018-09-24 20:59:23 -07:00
bf1472b009 app-menu: move to using window menu instead of app-menu
This starts moving things towards our 3.32 goals of using window menus
intead of the app-menu.
2018-09-24 20:55:20 -07:00
fa1def2afc fix non-literal format string issues
clang errors out when using -Werror=format-nonliteral
since the definition of g_strdup_vprintf() from glib-2.0
is using va_list and clangs still warns where as
gcc doesn't do that for va_list arguments

Fixes
src/sp-window.c:96:27: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
|   str = g_strdup_vprintf (format, args);
|                           ^~~~~~

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-09-07 11:21:39 +01: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
f7b27bcd59 window: fix spelling of suggested-action CSS class
I think this was masked by the .destructive-action class being defined
later in the Adwaita CSS than the .suggested-action class, so its values
for each property win.
2018-06-20 14:34:08 +01:00
896bbaea89 Use Unicode in translatable strings
See https://developer.gnome.org/hig/stable/typography.html
2018-05-16 18:12:56 +02:00
6fa2c270e8 visualizers: discover visualizers from capture reader
The goal here is to avoid having to hard code what visualizers are shown
from the .ui files. We just should add things that we find are supported.

Long term, I think we'll add a concept of an "instrument" which is the
combination of a data source (SpSource) and a visualizer (SpVisualizerRow).

The other goal here is to enable the future support for discovering marks
and adding rows for each of those threads.
2018-05-16 12:44:48 +01:00
c47822b26e source tree cleanup
The lib/ directory was getting a bit out of hand, so this tries
to organize things a bit so it is easier going forward to locate
the code people want to patch.
2017-09-28 16:23:03 -07:00
3e5a2af1b4 build: remove autotools build system
Now that we are post-3.26, we are removing the legacy autotools
build system in favor of meson.

Please report any errors you have so that we can ensure this is
ready for GNOME 3.28.
2017-09-15 17:44:50 -07:00
987f66197f window: add each instance to each own group
Prevents the About dialog from blocking interactions on all windows.

https://bugzilla.gnome.org/show_bug.cgi?id=781053
2017-04-08 20:28:55 -07:00
be65d01385 app: make About dialog modal
Makes Sysprof consistent with other GNOME applications.

https://bugzilla.gnome.org/show_bug.cgi?id=781053
2017-04-08 20:28:55 -07:00