In 3.8.0, are you sure you mean this in linphonec.c
handle_configfile_migration?
#if !defined(_WIN32_WCE)
char *old_cfg_gui;
char *old_cfg_cli;
char *new_cfg;
#if !defined(_WIN32_WCE)
const char *home = getenv("HOME");
#else
const char *home = ".";
#endif /*_WIN32_WCE*/
// ... etc etc ...
#endif /*_WIN32_WCE*/
Similarly, it also appears to me that oRTP's port.h has this (and
belle-sip's port.h too)
#if defined(__MINGW32__) || !defined(WINAPI_FAMILY_PARTITION)
// Only use with x being WINAPI_PARTITION_DESKTOP to test if building
on desktop
#define WINAPI_FAMILY_PARTITION(x) 1
#endif
Which is wrong because if it is defined already (and it is on recent
mingw64), it will be redefined, resulting in a warning, which by
default errors out during compilation.
In linphone's and mediastreamer's configure.ac you have a strange
conflict between the code and the comment
if test "$mingw_found" != "yes" ; then
dnl gettext macro does not work properly under mingw. And we want
to use the one provided by GTK.
The code starts to work if you change it to "$mingw_found" = "yes"
instead. Makes sense too, because the else branch (in mediastreamer
at least) contains a -L/usr/lib which does not make much sense in
mingw (it may make sense in msys, but not in mingw proper). Or maybe
this change would break linux builds (haven't tried), but it certainly
fixed mingw for me.
And finally, a question: mediastreamer seems to locate its plugins
relative to the current working directory (in my mingw built linphone
anyway), although it claims to be relative to the installation
directory. Can you look at the code and tell me whether this is
indeed correct? I also don't seem ms_set_plugins_dir used anywhere,
though it would be pretty cool to be able to specify it from linphonec
command line for example.