diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/gsm_execute_helper.c | 16 | ||||
-rw-r--r-- | scripts/meson.build | 17 |
2 files changed, 33 insertions, 0 deletions
diff --git a/scripts/gsm_execute_helper.c b/scripts/gsm_execute_helper.c new file mode 100644 index 0000000..2f20a85 --- /dev/null +++ b/scripts/gsm_execute_helper.c @@ -0,0 +1,16 @@ +#include <unistd.h> +#include <errno.h> +#include <string.h> +#include <glib.h> + +int main(int argc, char* argv[]) +{ + gchar **argv_modified; + argv_modified = g_new0 (gchar *, argc + 1); + memcpy (argv_modified, argv, argc * sizeof (char*)); + argv_modified[0] = COMMAND; + if ( execvp(COMMAND, argv_modified) == -1) { + return errno; + } + return 0; +} diff --git a/scripts/meson.build b/scripts/meson.build new file mode 100644 index 0000000..cb2213c --- /dev/null +++ b/scripts/meson.build @@ -0,0 +1,17 @@ +commands = [ + 'renice', + 'kill', + 'taskset', +] + +foreach command : commands + executable('gsm-' + command, + 'gsm_execute_helper.c', + dependencies: [ + glib, + ], + c_args: '-DCOMMAND="@0@"'.format(command), + install: true, + install_dir: join_paths(get_option('libexecdir'), meson.project_name()) + ) +endforeach |