On 2017/01/31 15:10, Christopher Zimmermann <christop...@gmerlin.de> wrote: > Hi, > > I use mpd on OpenBSD. Here is a patch I use to build the OpenBSD port > of mpd. > > * adds sndio mixer support
This fails with several compiler warnings: CXX src/mixer/plugins/libmixer_plugins_a-SndioMixerPlugin.o src/mixer/plugins/SndioMixerPlugin.cxx: In constructor 'SndioMixer::SndioMixer(SndioOutput&, MixerListener&)': src/mixer/plugins/SndioMixerPlugin.cxx:36:3: error: declaration of 'listener' shadows a member of 'SndioMixer' [-Werror=shadow] :Mixer(sndio_mixer_plugin, listener), output(output) ^ In file included from src/mixer/plugins/SndioMixerPlugin.cxx:23:0: src/mixer/MixerInternal.hxx:34:17: note: shadowed declaration is here MixerListener &listener; ^~~~~~~~ src/mixer/plugins/SndioMixerPlugin.cxx:36:3: error: declaration of 'output' shadows a member of 'SndioMixer' [-Werror=shadow] :Mixer(sndio_mixer_plugin, listener), output(output) ^ src/mixer/plugins/SndioMixerPlugin.cxx:32:15: note: shadowed declaration is here SndioOutput &output; ^~~~~~ cc1plus: all warnings being treated as errors Makefile:9611: recipe for target 'src/mixer/plugins/libmixer_plugins_a-SndioMixerPlugin.o' failed make[1]: *** [src/mixer/plugins/libmixer_plugins_a-SndioMixerPlugin.o] Error 1 CXX src/output/plugins/liboutput_plugins_a-SndioOutputPlugin.o src/output/plugins/SndioOutputPlugin.cxx: In function 'void SndioMixerCallback(void*, unsigned int)': src/output/plugins/SndioOutputPlugin.cxx:41:6: error: no previous declaration for 'void SndioMixerCallback(void*, unsigned int)' [-Werror=missing-declarations] void SndioMixerCallback(void *arg, unsigned int volume) { ^~~~~~~~~~~~~~~~~~ Also I don't like the heavy header dependencies in your modified SndioOutputPlugin.hxx. Please don't publish that class here; maybe rather in an "internal" header or add some lighter wrapper functions like the Pulse plugin does. Use nullptr instead of NULL. > * increments the glibc++ version quirk in CommandError.cxx to a date > that includes the OpenBSD glibc++ (gcc 4.9.4). This looks suspicious, because it may match on GCC 5 or 6 as well. Unfortunately, libstdc++ versions are chaotic - they are date tags, but 4.9 bug fix releases may be younger than 5.x or 6.x releases. I don't want to exchange improved 4.9 support for worse 5.x/6.x support. But matching the exact 4.9.4 version would be an acceptable kludge for me. _______________________________________________ mpd-devel mailing list mpd-devel@musicpd.org http://mailman.blarg.de/listinfo/mpd-devel