Ethereal-dev: [Ethereal-dev] Shared libs for Unix - Take 4
Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.
From: Joerg Mayer <jmayer@xxxxxxxxx>
Date: Mon, 8 Mar 2004 02:36:26 +0100
This is the second iteration of the patch. It has been tested on Suse Linux 9.0 and Solaris 2.8 Testing on Solaris revealed a mistake, so here is take 4 to fix it (aton_inet.o -> aton_inet.lo - it's even in the automake docs). Todo: - move libdfilter.so and libftypes.so into libethereal.so (myself) - put a note into some README that libethereal is still GPL, not LGPL (myself) - Test at least on MacOS X (Guy) - anyone willing to test on HP/UX and AIX? Note to testers: When I did the test on Solaris, I did use a source tarball generated on a current Linux system with "make dist". That way I didn't have to update the whole auto... stuff. Ciao Jörg PS: I currently consinder this to be the version to commit, unless problems are found (or I quickly find a solution how to properly integrate dfilter and ftypes into libethereal). -- Joerg Mayer <jmayer@xxxxxxxxx> We are stuck with technology when what we really want is just stuff that works. Some say that should read Microsoft instead of technology.
Index: Makefile.am =================================================================== RCS file: /usr/local/cvsroot/ethereal/Makefile.am,v retrieving revision 1.718 diff -p -u -r1.718 Makefile.am --- Makefile.am 4 Mar 2004 08:26:20 -0000 1.718 +++ Makefile.am 8 Mar 2004 01:11:59 -0000 @@ -189,11 +189,11 @@ ethereal_optional_objects = @SNPRINTF_O@ # Additional libs that I know how to build. These will be # linked into the ethereal executable. ethereal_additional_libs = \ - wiretap/libwiretap.a \ + wiretap/libwiretap.la \ gtk/libui.a \ - epan/libethereal.a \ - epan/ftypes/libftypes.a \ - epan/dfilter/libdfilter.a + epan/libethereal.la \ + epan/ftypes/libftypes.la \ + epan/dfilter/libdfilter.la # This is the automake dependency variable for the executable ethereal_DEPENDENCIES = \ @@ -220,16 +220,16 @@ ethereal_LDADD = \ $(ethereal_additional_libs) \ @SNMP_LIBS@ @SSL_LIBS@ \ $(plugin_ldadd) \ - @PCRE_LIBS@ \ + @PCRE_LIBS@ \ @PCAP_LIBS@ @GTK_LIBS@ @ADNS_LIBS@ # Additional libs that I know how to build. These will be # linked into the tethereal executable. tethereal_additional_libs = \ - wiretap/libwiretap.a \ - epan/libethereal.a \ - epan/ftypes/libftypes.a \ - epan/dfilter/libdfilter.a + wiretap/libwiretap.la \ + epan/libethereal.la \ + epan/ftypes/libftypes.la \ + epan/dfilter/libdfilter.la # This is the automake dependency variable for the executable tethereal_DEPENDENCIES = \ @@ -243,7 +243,7 @@ tethereal_LDADD = \ $(tethereal_additional_libs) \ @SNMP_LIBS@ @SSL_LIBS@ \ $(plugin_ldadd) \ - @PCRE_LIBS@ \ + @PCRE_LIBS@ \ @GLIB_LIBS@ -lm \ @PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@ @ADNS_LIBS@ @@ -263,24 +263,25 @@ text2pcap_DEPENDENCIES = text2pcap.h text2pcap_LDADD = $(text2pcap_optional_objects) \ @GLIB_LIBS@ -lm -mergecap_DEPENDENCIES = wiretap/libwiretap.a +mergecap_DEPENDENCIES = wiretap/libwiretap.la # This is the automake dependency variable for the executable -editcap_DEPENDENCIES = wiretap/libwiretap.a +editcap_DEPENDENCIES = wiretap/libwiretap.la # This automake variable adds to the link-line for the executable -editcap_LDADD = wiretap/libwiretap.a @GLIB_LIBS@ -mergecap_LDADD = wiretap/libwiretap.a @GLIB_LIBS@ +editcap_LDADD = wiretap/libwiretap.la @GLIB_LIBS@ +mergecap_LDADD = wiretap/libwiretap.la @GLIB_LIBS@ # Common headers AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/wiretap -.PHONY: cvsversion.h - # # Build the version string # -cvsversion.h: +# FORCE is the portable version of .PHONY +FORCE: + +cvsversion.h: FORCE $(PERL) $(srcdir)/make-version.pl # @@ -318,7 +319,7 @@ ps.c: print.ps rdps rdps: rdps.c $(CC) $(CFLAGS) -o rdps $(srcdir)/rdps.c -randpkt_additional_libs = wiretap/libwiretap.a +randpkt_additional_libs = wiretap/libwiretap.la randpkt_DEPENDENCIES = \ $(randpkt_additional_libs) @@ -329,10 +330,10 @@ randpkt_LDADD = \ @PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@ @ADNS_LIBS@ dftest_additional_libs = \ - wiretap/libwiretap.a \ - epan/libethereal.a \ - epan/ftypes/libftypes.a \ - epan/dfilter/libdfilter.a + wiretap/libwiretap.la \ + epan/libethereal.la \ + epan/ftypes/libftypes.la \ + epan/dfilter/libdfilter.la dftest_DEPENDENCIES = \ $(ethereal_optional_objects) \ @@ -388,6 +389,7 @@ EXTRA_DIST = \ cleanbld.bat \ config.h.win32 \ config.nmake \ + cvsversion.h \ debian/README.debian \ debian/changelog \ debian/control \ Index: Makefile.common =================================================================== RCS file: /usr/local/cvsroot/ethereal/Makefile.common,v retrieving revision 1.28 diff -p -u -r1.28 Makefile.common --- Makefile.common 5 Mar 2004 10:29:35 -0000 1.28 +++ Makefile.common 8 Mar 2004 01:11:59 -0000 @@ -240,8 +240,9 @@ DISSECTOR_SUPPORT_INCLUDES = \ xmlstub.h # "BUILT_SOURCES" are built before any "make all" or "make check" targets. -BUILT_SOURCES = \ - cvsversion.h +BUILT_SOURCES = + +# cvsversion.h # sources common for ethereal and tethereal ETHEREAL_COMMON_SRC = \ Index: epan/Makefile.am =================================================================== RCS file: /usr/local/cvsroot/ethereal/epan/Makefile.am,v retrieving revision 1.38 diff -p -u -r1.38 Makefile.am --- epan/Makefile.am 6 Mar 2004 03:25:10 -0000 1.38 +++ epan/Makefile.am 8 Mar 2004 01:12:00 -0000 @@ -29,13 +29,15 @@ SUBDIRS = ftypes dfilter ACLOCAL_AMFLAGS = `../aclocal-flags` -noinst_LIBRARIES = libethereal.a +#noinst_LIBRARIES = libethereal.a +lib_LTLIBRARIES = libethereal.la +libethereal_la_LDFLAGS = -version-info 0:1:0 include Makefile.common INCLUDES = -I$(srcdir)/.. -libethereal_a_SOURCES = \ +libethereal_la_SOURCES = \ addr_and_mask.c \ addr_and_mask.h \ atalk-utils.c \ @@ -93,7 +95,7 @@ libethereal_a_SOURCES = \ $(DISSECTOR_SRC) \ $(DISSECTOR_SUPPORT_SRC) -EXTRA_libethereal_a_SOURCES = \ +EXTRA_libethereal_la_SOURCES = \ inet_aton.c \ inet_pton.c \ inet_ntop.c \ @@ -103,7 +105,9 @@ EXTRA_libethereal_a_SOURCES = \ EXTRA_DIST = \ config.h.win32 \ Makefile.nmake \ - tvbtest.c + tvbtest.c \ + x11-declarations.h \ + x11-register-info.h CLEANFILES = \ libethereal.a \ @@ -116,8 +120,8 @@ MAINTAINERCLEANFILES = \ # # Add the object files for missing routines, if any. # -libethereal_a_LIBADD = @INET_ATON_O@ @INET_PTON_O@ @INET_NTOP_O@ -libethereal_a_DEPENDENCIES = @INET_ATON_O@ @INET_PTON_O@ @INET_NTOP_O@ +libethereal_la_LIBADD = @INET_ATON_O@ @INET_PTON_O@ @INET_NTOP_O@ +libethereal_la_DEPENDENCIES = @INET_ATON_O@ @INET_PTON_O@ @INET_NTOP_O@ ../packet-ncp2222.c : $(srcdir)/../ncp2222.py $(PYTHON) $(srcdir)/../ncp2222.py -o $@ Index: epan/configure.in =================================================================== RCS file: /usr/local/cvsroot/ethereal/epan/configure.in,v retrieving revision 1.65 diff -p -u -r1.65 configure.in --- epan/configure.in 4 Mar 2004 08:53:02 -0000 1.65 +++ epan/configure.in 8 Mar 2004 01:12:00 -0000 @@ -179,10 +179,10 @@ else fi AC_CHECK_FUNC(inet_aton, INET_ATON_O="", - INET_ATON_O="inet_aton.o") + INET_ATON_O="inet_aton.lo") if test "$ac_cv_func_inet_aton" = no ; then INET_ATON_C="inet_aton.c" - INET_ATON_O="inet_aton.o" + INET_ATON_O="inet_aton.lo" AC_DEFINE(NEED_INET_ATON_H, 1, [Define if inet/aton.h needs to be included]) fi AC_SUBST(INET_ATON_C) @@ -211,7 +211,7 @@ have_inet_pton=no])], have_inet_pton=no) if test "$have_inet_pton" = no; then INET_PTON_C="inet_pton.c" - INET_PTON_O="inet_pton.o" + INET_PTON_O="inet_pton.lo" else INET_PTON_C="" INET_PTON_O="" @@ -244,7 +244,7 @@ extern const char *inet_ntop(int, const AC_MSG_RESULT(no)])]) INET_NTOP_O=""], [ INET_NTOP_C="inet_ntop.c" - INET_NTOP_O="inet_ntop.o" + INET_NTOP_O="inet_ntop.lo" AC_DEFINE(NEED_INET_V6DEFS_H, 1, [Define if inet/v6defs.h needs to be included])]) AC_SUBST(INET_NTOP_C) Index: epan/dfilter/Makefile.am =================================================================== RCS file: /usr/local/cvsroot/ethereal/epan/dfilter/Makefile.am,v retrieving revision 1.9 diff -p -u -r1.9 Makefile.am --- epan/dfilter/Makefile.am 5 Mar 2001 22:53:39 -0000 1.9 +++ epan/dfilter/Makefile.am 8 Mar 2004 01:12:00 -0000 @@ -25,7 +25,9 @@ # shared library, this will be linked into libethereal. While libethereal # is an archive library, any executable linking against libethereal will # also need to link against libftypes. -noinst_LIBRARIES = libdfilter.a +#noinst_LIBRARIES = libdfilter.a +lib_LTLIBRARIES = libdfilter.la +libdfilter_la_LDFLAGS = -version-info 0:1:0 CLEANFILES = \ libdfilter.a \ @@ -33,7 +35,7 @@ CLEANFILES = \ INCLUDES = -I$(srcdir)/../.. -I$(srcdir)/.. -I$(srcdir)/$(LEMON) -libdfilter_a_SOURCES = \ +libdfilter_la_SOURCES = \ dfilter.c \ dfilter.h \ dfilter-int.h \ Index: epan/ftypes/Makefile.am =================================================================== RCS file: /usr/local/cvsroot/ethereal/epan/ftypes/Makefile.am,v retrieving revision 1.5 diff -p -u -r1.5 Makefile.am --- epan/ftypes/Makefile.am 9 Dec 2003 23:02:39 -0000 1.5 +++ epan/ftypes/Makefile.am 8 Mar 2004 01:12:00 -0000 @@ -25,7 +25,10 @@ # shared library, this will be linked into libethereal. While libethereal # is an archive library, any executable linking against libethereal will # also need to link against libftypes. -noinst_LIBRARIES = libftypes.a +#noinst_LIBRARIES = libftypes.a +lib_LTLIBRARIES = libftypes.la +libftypes_la_LDFLAGS = -version-info 0:1:0 + CLEANFILES = \ libftypes.a \ @@ -33,7 +36,7 @@ CLEANFILES = \ INCLUDES = -I$(srcdir)/../.. -I$(srcdir)/.. -libftypes_a_SOURCES = \ +libftypes_la_SOURCES = \ ftypes.c \ ftypes.h \ ftypes-int.h \ Index: wiretap/Makefile.am =================================================================== RCS file: /usr/local/cvsroot/ethereal/wiretap/Makefile.am,v retrieving revision 1.50 diff -p -u -r1.50 Makefile.am --- wiretap/Makefile.am 6 Mar 2004 21:46:27 -0000 1.50 +++ wiretap/Makefile.am 8 Mar 2004 01:12:00 -0000 @@ -1,7 +1,7 @@ # Makefile.am # Automake file for Wiretap # -# $Id: Makefile.am,v 1.50 2004/03/06 21:46:27 guy Exp $ +# $Id: Makefile.am,v 1.49 2004/02/11 20:05:15 guy Exp $ # # Ethereal - Network traffic analyzer # By Gerald Combs <gerald@xxxxxxxxxxxx> @@ -23,19 +23,21 @@ ACLOCAL_AMFLAGS = `../aclocal-flags` -noinst_LIBRARIES = libwiretap.a - +#noinst_LIBRARIES = libwiretap.a #EXTRA_LIBRARIES = libwiretap.a +lib_LTLIBRARIES = libwiretap.la +libwiretap_la_LDFLAGS = -version-info 0:1:0 + CLEANFILES = \ libwiretap.a \ *~ -MAINTAINERCLEANFILES = \ +MAINTAINERCLEANFILES = \ ascend-grammar.c \ ascend-grammar.h -libwiretap_a_SOURCES = \ +libwiretap_la_SOURCES = \ airopeek9.c \ airopeek9.h \ ascend-grammar.y \
- Prev by Date: Re: [Ethereal-dev] Build problems in gtk/: auto_scroll_live undeclared
- Next by Date: [Ethereal-dev] Patch to make ethereal-0.10.2 work on Cygwin with packet capture
- Previous by thread: Re: [Ethereal-dev] Would it be possible to allow filter expressionslike:
- Next by thread: [Ethereal-dev] Patch to make ethereal-0.10.2 work on Cygwin with packet capture
- Index(es):