Re: nm-pppd-plugin.so: strange build



Tambet Ingo schrieb:
> On Nov 5, 2007 2:11 AM, Michael Biebl <biebl debian org> wrote:
>> looking at the NM 0.7 source, I noticed that the pppd plugin
>> is built as executable (nm_pppd_plugin_PROGRAMS = nm-pppd-plugin.so)
>> with a very strange *.so file ending and an attempt to transform it in
>> some sort of shared object by using -shared and -fPIC.
>>
>> Why isn't lib_LTLIBRARIES used at first place for compiling the nm-pppd
>> plugin? As it's a private plugin, pkglib_LTLIBRARIES would probably be
>> even better.
>>
>> Could someone shed some light on this current odd situation of the pppd
>> plugin?
> 
> The Makefile.am content is just copied from somewhere, most probably
> from pptp vpn module. It doesn't really matter much since it's
> currently not used by anything. Feel free to send patches to improve
> it.

Sure. Patch is attached. It uses -avoid-version (omit so-versioning) and
-module (make so dlopen'able). Currently it installs into libdir. As I
said, pkglibdir would probably better. But as you said yourself, it's
currently not used anywhere, so I'm not entirely sure what's actually
best. Maybe it would make sense, to comment it out completely in
Makefile.am until it's actually used.

Cheers,
Michael

-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?
Index: src/ppp-manager/Makefile.am
===================================================================
--- src/ppp-manager/Makefile.am	(Revision 3067)
+++ src/ppp-manager/Makefile.am	(Arbeitskopie)
@@ -13,10 +13,10 @@
 	nm-ppp-status.h
 
 libppp_manager_la_CPPFLAGS = \
-	$(DBUS_CFLAGS)					\
-	$(HAL_CFLAGS)					\
-	-DG_DISABLE_DEPRECATED			\
-	-DSYSCONFDIR=\"$(sysconfdir)\"  \
+	$(DBUS_CFLAGS) \
+	$(HAL_CFLAGS) \
+	-DG_DISABLE_DEPRECATED \
+	-DSYSCONFDIR=\"$(sysconfdir)\" \
 	-DLIBDIR=\"$(libdir)\"
 
 libppp_manager_la_LIBADD = \
@@ -24,18 +24,20 @@
 	$(GLIB_LIBS) \
 	$(top_builddir)/src/marshallers/libmarshallers.la
 
-nm_pppd_plugindir = $(libdir)
-nm_pppd_plugin_PROGRAMS = nm-pppd-plugin.so
+lib_LTLIBRARIES = nm-pppd-plugin.la
 
-nm_pppd_plugin_so_SOURCES = \
-	nm-pppd-plugin.c	\
-	nm-pppd-plugin.h	\
+nm_pppd_plugin_la_SOURCES = \
+	nm-pppd-plugin.c \
+	nm-pppd-plugin.h \
 	nm-ppp-status.h
 
-nm_pppd_plugin_so_CPPFLAGS = $(DBUS_CFLAGS)	$(GLIB_CFLAGS) -fPIC
+nm_pppd_plugin_la_CPPFLAGS = \
+	$(DBUS_CFLAGS) \
+	$(GLIB_CFLAGS)
 
-nm_pppd_plugin_so_LDFLAGS =	-shared
-nm_pppd_plugin_so_LDADD = \
+nm_pppd_plugin_la_LDFLAGS = -module -avoid-version
+
+nm_pppd_plugin_la_LIBADD = \
 	$(DBUS_LIBS) \
 	$(GLIB_LIBS) \
 	$(top_builddir)/libnm-util/libnm-util.la

Attachment: signature.asc
Description: OpenPGP digital signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]