Makefile.am | 16 ++++++++-------- src/Makefile.am | 2 +- src/modules/module-ladspa-sink.c | 9 ++++++++- src/pulsecore/proplist-util.c | 2 ++ 4 files changed, 19 insertions(+), 10 deletions(-)
New commits: commit 07e283d74488e0a6cdd84a967775a01de2809b59 Author: Salvador Fandino <sfand...@yahoo.com> Date: Wed Oct 4 15:21:24 2017 +0200 build-sys: simulate ln -s correctly on Windows make install was failing on Windows because there cp is used to replace ln -s commands but cp doesn't resolve its first argument as relative to the second one. This patch changes the install-bashcompletion-aliases rules to chdir to the target dir so that cp works correctly. This is the solution recomended in the automake documentation. diff --git a/Makefile.am b/Makefile.am index 9a6b42a9..275ceeac 100644 --- a/Makefile.am +++ b/Makefile.am @@ -68,14 +68,14 @@ bashcompletiondir=@bashcompletiondir@ dist_bashcompletion_DATA = shell-completion/bash/pulseaudio install-bashcompletion-aliases: - $(LN_S) -f pulseaudio $(DESTDIR)$(bashcompletiondir)/pactl - $(LN_S) -f pulseaudio $(DESTDIR)$(bashcompletiondir)/pacmd - $(LN_S) -f pulseaudio $(DESTDIR)$(bashcompletiondir)/pasuspender - $(LN_S) -f pulseaudio $(DESTDIR)$(bashcompletiondir)/padsp - $(LN_S) -f pulseaudio $(DESTDIR)$(bashcompletiondir)/pacat - $(LN_S) -f pulseaudio $(DESTDIR)$(bashcompletiondir)/paplay - $(LN_S) -f pulseaudio $(DESTDIR)$(bashcompletiondir)/parec - $(LN_S) -f pulseaudio $(DESTDIR)$(bashcompletiondir)/parecord + cd $(DESTDIR)$(bashcompletiondir) && $(LN_S) -f pulseaudio pactl + cd $(DESTDIR)$(bashcompletiondir) && $(LN_S) -f pulseaudio pacmd + cd $(DESTDIR)$(bashcompletiondir) && $(LN_S) -f pulseaudio pasuspender + cd $(DESTDIR)$(bashcompletiondir) && $(LN_S) -f pulseaudio padsp + cd $(DESTDIR)$(bashcompletiondir) && $(LN_S) -f pulseaudio pacat + cd $(DESTDIR)$(bashcompletiondir) && $(LN_S) -f pulseaudio paplay + cd $(DESTDIR)$(bashcompletiondir) && $(LN_S) -f pulseaudio parec + cd $(DESTDIR)$(bashcompletiondir) && $(LN_S) -f pulseaudio parecord install-data-hook: install-bashcompletion-aliases commit 8c22cd54dec381cdc3e56b007e539a6e2ff7833c Author: Salvador Fandino <sfand...@yahoo.com> Date: Tue Oct 3 14:27:59 2017 +0200 ladspa-sink: fix Windows compilation The macro LADSPA_PATH was defined as a list of directories quoted but without taking into account that the directory names, specially on Windows, can contain backslashes that need escaping. This patch removes the quoted from the macro and uses the C preprocessor to quote it properly using a helper macro. diff --git a/src/Makefile.am b/src/Makefile.am index d7a551e2..e610db74 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1752,7 +1752,7 @@ module_remap_source_la_LDFLAGS = $(MODULE_LDFLAGS) module_remap_source_la_LIBADD = $(MODULE_LIBADD) module_ladspa_sink_la_SOURCES = modules/module-ladspa-sink.c modules/ladspa.h -module_ladspa_sink_la_CFLAGS = -DLADSPA_PATH=\"$(libdir)/ladspa:/usr/local/lib/ladspa:/usr/lib/ladspa:/usr/local/lib64/ladspa:/usr/lib64/ladspa\" $(AM_CFLAGS) $(SERVER_CFLAGS) +module_ladspa_sink_la_CFLAGS = -DLADSPA_PATH="$(libdir)/ladspa:/usr/local/lib/ladspa:/usr/lib/ladspa:/usr/local/lib64/ladspa:/usr/lib64/ladspa" $(AM_CFLAGS) $(SERVER_CFLAGS) module_ladspa_sink_la_LDFLAGS = $(MODULE_LDFLAGS) module_ladspa_sink_la_LIBADD = $(MODULE_LIBADD) $(LIBLTDL) diff --git a/src/modules/module-ladspa-sink.c b/src/modules/module-ladspa-sink.c index c2c7c85d..38be12b9 100644 --- a/src/modules/module-ladspa-sink.c +++ b/src/modules/module-ladspa-sink.c @@ -1048,8 +1048,15 @@ int pa__init(pa_module*m) { u->output = NULL; u->ss = ss; + /* If the LADSPA_PATH environment variable is not set, we use the + * LADSPA_PATH preprocessor macro instead. The macro can contain characters + * that need to be escaped (especially on Windows backslashes are common). + * The "#" preprocessor operator helpfully adds the required escaping while + * turning the LADSPA_PATH macro into a string. */ +#define QUOTE_MACRO(x) #x if (!(e = getenv("LADSPA_PATH"))) - e = LADSPA_PATH; + e = QUOTE_MACRO(LADSPA_PATH); +#undef QUOTE_MACRO /* FIXME: This is not exactly thread safe */ t = pa_xstrdup(lt_dlgetsearchpath()); commit 79ee19bb51cc837a4a92b105eb406d06cf0a4475 Author: Salvador Fandino <sfand...@yahoo.com> Date: Tue Oct 3 12:58:57 2017 +0200 proplist-util: fix compilation on Windows without NLS Under MinGW, LC_MESSAGES is defined in libint.h which is not included when pulseaudio is configured with nls disabled. LC_MESSAGES is referenced when setting PA_PROP_APPLICATION_LANGUAGE. This patch just disables setting that property when ENABLE_NLS is not defined. diff --git a/src/pulsecore/proplist-util.c b/src/pulsecore/proplist-util.c index baf683da..f966579b 100644 --- a/src/pulsecore/proplist-util.c +++ b/src/pulsecore/proplist-util.c @@ -207,12 +207,14 @@ void pa_init_proplist(pa_proplist *p) { pa_proplist_sets(p, PA_PROP_APPLICATION_NAME, t); } +#ifdef ENABLE_NLS if (!pa_proplist_contains(p, PA_PROP_APPLICATION_LANGUAGE)) { const char *l; if ((l = setlocale(LC_MESSAGES, NULL))) pa_proplist_sets(p, PA_PROP_APPLICATION_LANGUAGE, l); } +#endif if (!pa_proplist_contains(p, PA_PROP_WINDOW_X11_DISPLAY)) { const char *t; _______________________________________________ pulseaudio-commits mailing list pulseaudio-commits@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/pulseaudio-commits