|
View:
New views
2 Messages
—
Rating Filter:
Alert me
|
|
|
Win32, wishes for masterLet me start with the simple thing. There is a setenv in
src/gui/main.cpp:4367 which seems Pulseaudio related and stops compilation under Mingw. Attached ekiga_pulseenv.diff disables it for WIN32 without doing any harm. Next, in the meantime, we have two boost::throw_exception functions one in lib/engine/components/opal/opal-main.cpp and one in lib/engine/framework/boost-exceptions.cpp and we still compile the libekiga with -fexceptions. Can't we tidy up a bit. Attached ekiga_exceptions.diff works for WIN32. My last point is that I wish to have the ldap adressbook back in Win32 Ekiga. Since the libgmldap is a plugin we would have to activate the plugin support for Win32 which Snark has founded back in June when I started crying. Under Windows a plugin.dll can not import symbols from the main executable by means of the linker, but it can from a different dll. Consequently I would like to split Ekiga into an ekiga.exe and a libekiga.dll. Attached ekiga_stacklib.diff does this, is Win32 specific and works. Next thing is to compile the plugins libgmldap and libgmloudmouth as dlls - those two can be used for Windows. That is what attached ekiga_pluginlib.diff does. It activates PLUGIN_LIBTOOL_FLAGS in configure.ac by renaming them to PLUGINS_LIBTOOL_FLAGS as the makefile.am s of the plugins use (this may affect Linux !!) and then it tells the linker where to find the missing symbols for the dlls, in libekiga.la. The result seems ok. I can call 500@..., fixed the VideoPreview crash with it and can search the ldap adress book again, no crash on exit. Process Explorer shows that also the libgmloudmouth.dll is loaded but I do not know how to test it. Michael Binärdateien src/ekiga/.git/index and ekiga/.git/index sind verschieden. diff -ur src/ekiga/src/gui/main.cpp ekiga/src/gui/main.cpp --- src/ekiga/src/gui/main.cpp 2009-09-29 06:59:50.000000000 +0200 +++ ekiga/src/gui/main.cpp 2009-10-03 09:24:35.000000000 +0200 @@ -4364,7 +4364,9 @@ /* Application name */ g_set_application_name (_("Ekiga Softphone")); +#ifndef WIN32 setenv ("PULSE_PROP_application.name", _("Ekiga Softphone"), true); +#endif /* initialize platform-specific code */ gm_platform_init (); diff -ur ekiga.orig/lib/engine/components/opal/opal-main.cpp ekiga/lib/engine/components/opal/opal-main.cpp --- ekiga.orig/lib/engine/components/opal/opal-main.cpp 2009-10-04 17:43:45.000000000 +0200 +++ ekiga/lib/engine/components/opal/opal-main.cpp 2009-10-04 17:44:20.000000000 +0200 @@ -177,12 +177,3 @@ kickstart.add_spark (spark); } - -// FIXME: I have no clue why this is needed only for the opal code! -#ifdef BOOST_NO_EXCEPTIONS - -void -boost::throw_exception (const std::exception&) -{ -} -#endif diff -ur ekiga.orig/lib/Makefile.am ekiga/lib/Makefile.am --- ekiga.orig/lib/Makefile.am 2009-10-04 17:43:45.000000000 +0200 +++ ekiga/lib/Makefile.am 2009-10-04 17:44:02.000000000 +0200 @@ -52,10 +52,9 @@ $(GLIB_CFLAGS) $(GTK_CFLAGS) $(GCONF_CFLAGS) \ $(DBUS_CFLAGS) $(GNOME_CFLAGS) -# FIXME: here we add -fexceptions because ptlib&opal put them out and that's a problem for boost... AM_CPPFLAGS = \ $(BOOST_CPPFLAGS) $(GLIB_CFLAGS) $(XML_CFLAGS) $(GTK_CFLAGS) \ - $(DBUS_CFLAGS) $(GNOME_CFLAGS) $(PTLIB_CFLAGS) $(OPAL_CFLAGS) -fexceptions + $(DBUS_CFLAGS) $(GNOME_CFLAGS) $(PTLIB_CFLAGS) $(OPAL_CFLAGS) AM_LIBS = \ $(BOOST_LIBS) $(GLIB_LIBS) $(XML_LIBS) $(GTK_LIBS) diff -ur ekiga.orig/lib/Makefile.am ekiga/lib/Makefile.am --- ekiga.orig/lib/Makefile.am 2009-10-04 20:24:00.000000000 +0200 +++ ekiga/lib/Makefile.am 2009-10-04 20:27:16.000000000 +0200 @@ -1,7 +1,16 @@ +if WIN32 +stacklib_LTLIBRARIES = libekiga.la + +libekiga_la_LDFLAGS = $(STACKLIB_LDFLAGS) $(BOOST_LIBS) $(GLIB_LIBS) $(XML_LIBS) $(GTK_LIBS) + +else + noinst_LTLIBRARIES = libekiga.la -libekiga_la_SOURCES = libekiga_la_LDFLAGS = -export-dynamic +endif + +libekiga_la_SOURCES = CLEANFILES = diff -ur src/ekiga/configure.ac ekiga/configure.ac --- src/ekiga/configure.ac 2009-09-29 06:59:49.000000000 +0200 +++ ekiga/configure.ac 2009-10-06 10:11:40.000000000 +0200 @@ -855,13 +855,13 @@ ;; esac -PLUGIN_LIBTOOL_FLAGS="-no-undefined -avoid-version -module" +PLUGINS_LIBTOOL_FLAGS='-no-undefined -avoid-version -module' STACKLIB_LDFLAGS='-shared -module -no-undefined -avoid-version' AC_SUBST(bindir) AC_SUBST(stacklibdir) AC_SUBST(plugindir) -AC_SUBST(PLUGIN_LIBTOOL_FLAGS) +AC_SUBST(PLUGINS_LIBTOOL_FLAGS) AC_SUBST(PLUGIN_DIR) AC_SUBST(STACKLIB_LDFLAGS) diff -ur src/ekiga/plugins/ldap/Makefile.am ekiga/plugins/ldap/Makefile.am --- src/ekiga/plugins/ldap/Makefile.am 2009-09-29 06:59:49.000000000 +0200 +++ ekiga/plugins/ldap/Makefile.am 2009-10-06 10:10:44.000000000 +0200 @@ -20,5 +20,5 @@ $(ldap_dir)/ldap-main.cpp libgmldap_la_LDFLAGS = $(PLUGINS_LIBTOOL_FLAGS) -libgmldap_la_LIBADD = \ +libgmldap_la_LIBADD = $(top_builddir)/lib/libekiga.la \ $(LDAP_LIBS) $(BOOST_LDFLAGS) $(BOOST_LIBS) $(GLIB_LIBS) $(XML_LIBS) diff -ur src/ekiga/plugins/loudmouth/Makefile.am ekiga/plugins/loudmouth/Makefile.am --- src/ekiga/plugins/loudmouth/Makefile.am 2009-09-01 07:44:32.000000000 +0200 +++ ekiga/plugins/loudmouth/Makefile.am 2009-10-06 10:10:44.000000000 +0200 @@ -30,4 +30,6 @@ $(loudmouth_dir)/loudmouth-dialect.cpp libgmloudmouth_la_LDFLAGS = $(PLUGINS_LIBTOOL_FLAGS) -libgmloudmouth_la_LIBADD = $(BOOST_LDFLAGS) $(BOOST_LIBS) $(XML_LIBS) $(LOUDMOUTH_LIBS) \ Kein Zeilenumbruch am Dateiende. +libgmloudmouth_la_LIBADD = $(top_builddir)/lib/libekiga.la \ + $(BOOST_LDFLAGS) $(BOOST_LIBS) $(XML_LIBS) $(LOUDMOUTH_LIBS) + _______________________________________________ Ekiga-devel-list mailing list Ekiga-devel-list@... http://mail.gnome.org/mailman/listinfo/ekiga-devel-list |
|
|
Re: Win32, wishes for masterMichael Rickmann a écrit :
> Let me start with the simple thing. There is a setenv in > src/gui/main.cpp:4367 which seems Pulseaudio related and stops > compilation under Mingw. Attached ekiga_pulseenv.diff disables it for > WIN32 without doing any harm. It's in. > Next, in the meantime, we have two boost::throw_exception functions one > in lib/engine/components/opal/opal-main.cpp and one in > lib/engine/framework/boost-exceptions.cpp and we still compile the > libekiga with -fexceptions. Can't we tidy up a bit. Attached > ekiga_exceptions.diff works for WIN32. I checked : it compiles. It's in. > My last point is that I wish to have the ldap adressbook back in Win32 > Ekiga. Since the libgmldap is a plugin we would have to activate the > plugin support for Win32 which Snark has founded back in June when I > started crying. Under Windows a plugin.dll can not import symbols from > the main executable by means of the linker, but it can from a different > dll. Consequently I would like to split Ekiga into an ekiga.exe and a > libekiga.dll. Ok. > Attached ekiga_stacklib.diff does this, is Win32 specific > and works. Next thing is to compile the plugins libgmldap and > libgmloudmouth as dlls - those two can be used for Windows. Good. We'll pluginize more of ekiga later (I'm thinking about the avahi code for example). > That is what > attached ekiga_pluginlib.diff does. It activates PLUGIN_LIBTOOL_FLAGS in > configure.ac by renaming them to PLUGINS_LIBTOOL_FLAGS as the > makefile.am s of the plugins use (this may affect Linux !!) and then it > tells the linker where to find the missing symbols for the dlls, in > libekiga.la. I don't get what that renaming is about, but it's still mostly in (I made it do the split on non-win32 too). > The result seems ok. I can call 500@..., fixed the VideoPreview > crash with it and can search the ldap adress book again, no crash on > exit. That sounds good. > Process Explorer shows that also the libgmloudmouth.dll is loaded > but I do not know how to test it. If you already have an existing jabber account on a server, then in ekiga you just have to go in the accounts window and add a jabber account there. Snark _______________________________________________ Ekiga-devel-list mailing list Ekiga-devel-list@... http://mail.gnome.org/mailman/listinfo/ekiga-devel-list |
| Free embeddable forum powered by Nabble | Forum Help |