From b02998a2156c799869fa4119390ff260f6537bf4 Mon Sep 17 00:00:00 2001 From: Nedko Arnaudov Date: Fri, 5 May 2023 16:52:11 +0300 Subject: [PATCH 1/5] wscript: *prepend* CFLAGS and LINKFLAGS Appending new options at end of the array has unfortunate effect of not allowing easy override of flags set in wscript. This change makes add_cflag() and add_linkflag() prepend, thus leaving the supplied during configure parameters take precedence by being at the end of the parameter list. Fix for [a386c3e] LDFLAGS is ignored (cherry picked from commit 88b70fcdd71bae67f0281d5752086a652a435bcd) --- wscript | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/wscript b/wscript index 83e33818..6139688c 100644 --- a/wscript +++ b/wscript @@ -64,11 +64,11 @@ def options(opt): opt.load('parallel_debug') def add_cflag(conf, flag): - conf.env.append_unique('CXXFLAGS', flag) - conf.env.append_unique('CFLAGS', flag) + conf.env.prepend_unique('CXXFLAGS', flag) + conf.env.prepend_unique('CFLAGS', flag) def add_linkflag(conf, flag): - conf.env.append_unique('LINKFLAGS', flag) + conf.env.prepend_unique('LINKFLAGS', flag) def check_gcc_optimizations_enabled(flags): gcc_optimizations_enabled = False From ee3aa1999eda88fe1b34f028df1f822f2e85b6f0 Mon Sep 17 00:00:00 2001 From: Nedko Arnaudov Date: Fri, 5 May 2023 18:46:26 +0300 Subject: [PATCH 2/5] wscript: fix build broken in previous commit Fix for [a386c3e] LDFLAGS is ignored (cherry picked from commit bad37745bf00c5582a89bfb0bd3410eb8f0cd985) --- wscript | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/wscript b/wscript index 6139688c..88d45de8 100644 --- a/wscript +++ b/wscript @@ -64,11 +64,11 @@ def options(opt): opt.load('parallel_debug') def add_cflag(conf, flag): - conf.env.prepend_unique('CXXFLAGS', flag) - conf.env.prepend_unique('CFLAGS', flag) + conf.env.prepend_value('CXXFLAGS', flag) + conf.env.prepend_value('CFLAGS', flag) def add_linkflag(conf, flag): - conf.env.prepend_unique('LINKFLAGS', flag) + conf.env.prepend_value('LINKFLAGS', flag) def check_gcc_optimizations_enabled(flags): gcc_optimizations_enabled = False @@ -319,6 +319,7 @@ def configure(conf): display_msg(conf, 'C compiler flags', repr(conf.env['CFLAGS'])) display_msg(conf, 'C++ compiler flags', repr(conf.env['CXXFLAGS'])) + display_msg(conf, 'Linker flags', repr(conf.env['LINKFLAGS'])) if not conf.env['BUILD_GLADISH']: display_msg(conf) From 74b65b67e1ce602cfddb3c5809d366e7bf431959 Mon Sep 17 00:00:00 2001 From: Nedko Arnaudov Date: Sat, 13 May 2023 20:23:02 +0300 Subject: [PATCH 3/5] README: adjust upstream git URLs to gitea (cherry picked from commit d8671fa9778806510ab872cf62831cc642fc56ce) --- README.adoc | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/README.adoc b/README.adoc index 0cf1932b..3af03b39 100644 --- a/README.adoc +++ b/README.adoc @@ -73,12 +73,12 @@ Among project future goals are: GIT repositories: - * https://github.com/LADI/ladish.git[LADI/ladish at github.com] + + * https://gitea.ladish.org/LADI/ladish[Upstream development GIT repository] + + Self-hosted upstream + * https://github.com/LADI/ladish.git[Primary backup GIT repository at github.com] + Cloud hosted - * https://repo.or.cz/ladish.git[Primary backup GIT repository at repo.or.cz] + + * https://repo.or.cz/ladish.git[Secondary backup GIT repository at repo.or.cz] + Cloud hosted - * https://git.nedk.org/lad/ladish.git[Upstream development GIT repository] + - The network node has issues, SSL certificate has expired and node needs reinstall LADI Session Handler was forked from the https://lac.linuxaudio.org/2009/cdm/Thursday/02_Alasuutari/02.pdf[D-Bus-ified LASH project]. @@ -101,6 +101,7 @@ Things that LADISH can do but LASH (D-Bus-ified or not) cannot: See also: + * https://gitea.ladish.org/LADI/ladish[LADI/ladish at Gitea] * https://github.com/LADI/[LADI at GitHub] * https://ladish.org/jackdbus.html[jackdbus] * https://lac.linuxaudio.org/2009/cdm/Thursday/02_Alasuutari/02.pdf[Juuso ALASUUTARI, LASH Audio Session Handler: Past, Present, and Future] From 25ab42cabea4828166e62d90877ef6509788769b Mon Sep 17 00:00:00 2001 From: Nedko Arnaudov Date: Sat, 13 May 2023 20:23:28 +0300 Subject: [PATCH 4/5] README: adjust the jackdbus homepage URL (cherry picked from commit 4450092b6e67b7dabbe875538d269152cd946788) --- README.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.adoc b/README.adoc index 3af03b39..055e3a59 100644 --- a/README.adoc +++ b/README.adoc @@ -103,7 +103,7 @@ See also: * https://gitea.ladish.org/LADI/ladish[LADI/ladish at Gitea] * https://github.com/LADI/[LADI at GitHub] - * https://ladish.org/jackdbus.html[jackdbus] + * https://jackdbus.ladish.org/[jackdbus] * https://lac.linuxaudio.org/2009/cdm/Thursday/02_Alasuutari/02.pdf[Juuso ALASUUTARI, LASH Audio Session Handler: Past, Present, and Future] For related discussions, you are invited to join From c93f0d84584090482873ee539f085cb02d6e286d Mon Sep 17 00:00:00 2001 From: Nedko Arnaudov Date: Mon, 5 Jun 2023 14:12:11 +0300 Subject: [PATCH 5/5] Don't set LADISH env vars for L0 & L1 Having these variables set enables apps to discrimination against ladish, by error or otherwise. In particular neither LADISH L0 nor L1 imply that user should face mayhem of standard file menu items for either new, open, save and/or saveas being disabled. --- daemon/app_supervisor.c | 4 ++++ daemon/loader.c | 19 ++++++++++++------- daemon/loader.h | 1 + 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/daemon/app_supervisor.c b/daemon/app_supervisor.c index 75089e99..9fcf3d87 100644 --- a/daemon/app_supervisor.c +++ b/daemon/app_supervisor.c @@ -975,11 +975,14 @@ bool ladish_app_supervisor_start_app(ladish_app_supervisor_handle supervisor_han char uuid_str[37]; char * js_dir; bool ret; + bool set_env_vars; app_ptr->zombie = false; ASSERT(app_ptr->pid == 0); + set_env_vars = ladish_level_string_to_integer(app_ptr->level) >= 2; + if (strcmp(app_ptr->level, LADISH_APP_LEVEL_JACKSESSION) == 0) { uuid_unparse(app_ptr->uuid, uuid_str); @@ -1003,6 +1006,7 @@ bool ladish_app_supervisor_start_app(ladish_app_supervisor_handle supervisor_han js_dir, app_ptr->terminal, app_ptr->commandline, + set_env_vars, &app_ptr->pid); free(js_dir); diff --git a/daemon/loader.c b/daemon/loader.c index b291cd93..9cb1dc05 100644 --- a/daemon/loader.c +++ b/daemon/loader.c @@ -271,7 +271,8 @@ loader_exec_program( bool run_in_terminal, const char * vgraph_name, const char * project_name, - const char * app_name) + const char * app_name, + bool set_env_vars) { const char * argv[8]; unsigned int i; @@ -293,12 +294,15 @@ loader_exec_program( fprintf(stderr, "Could not change directory to working dir '%s' for app '%s': %s\n", working_dir, app_name, strerror(errno)); } - setenv("LADISH_APP_NAME", app_name, true); - setenv("LADISH_VGRAPH_NAME", vgraph_name, true); - - if (project_name != NULL) + if (set_env_vars) { - setenv("LADISH_PROJECT_NAME", project_name, true); + setenv("LADISH_APP_NAME", app_name, true); + setenv("LADISH_VGRAPH_NAME", vgraph_name, true); + + if (project_name != NULL) + { + setenv("LADISH_PROJECT_NAME", project_name, true); + } } if (session_dir != NULL) @@ -531,6 +535,7 @@ loader_execute( const char * session_dir, bool run_in_terminal, const char * commandline, + bool set_env_vars, pid_t * pid_ptr) { pid_t pid; @@ -642,7 +647,7 @@ loader_execute( set_ldpreload(); - loader_exec_program(commandline, working_dir, session_dir, run_in_terminal, vgraph_name, project_name, app_name); + loader_exec_program(commandline, working_dir, session_dir, run_in_terminal, vgraph_name, project_name, app_name, set_env_vars); return false; /* We should never get here */ } diff --git a/daemon/loader.h b/daemon/loader.h index 537bbdb8..a22a5f5f 100644 --- a/daemon/loader.h +++ b/daemon/loader.h @@ -38,6 +38,7 @@ loader_execute( const char * session_dir, bool run_in_terminal, const char * commandline, + bool set_env_vars, pid_t * pid_ptr); void loader_run(void);