1.99.8 → 1.99.9.
[metze/wireshark/wip.git] / wiretap / Makefile.am
index 5f451ff654c2fc1f75732cd2a8cf2dc525ce82c2..b82ba2e537f736590da865dca70dd4ae5fcb9420 100644 (file)
@@ -1,8 +1,6 @@
 # Makefile.am
 # Automake file for Wiretap
 #
-# $Id$
-#
 # Wireshark - Network traffic analyzer
 # By Gerald Combs <gerald@wireshark.org>
 # Copyright 1998 Gerald Combs
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+include ../Makefile.am.inc
 
 ACLOCAL_AMFLAGS = `../aclocal-flags`
 
 include Makefile.common
 
+noinst_LTLIBRARIES = libwiretap_generated.la
 lib_LTLIBRARIES = libwiretap.la
-libwiretap_la_LDFLAGS = -version-info 0:1:0 @LDFLAGS_SHAREDLIB@
+# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
+libwiretap_la_LDFLAGS = -version-info 0:9:0 @LDFLAGS_SHAREDLIB@
+
+AM_NON_GENERATED_CFLAGS =-DWS_BUILD_DLL
+
+if HAVE_WARNINGS_AS_ERRORS
+AM_NON_GENERATED_CFLAGS += -Werror
+endif
+
+AM_CPPFLAGS = -I$(srcdir)/..
 
 CLEANFILES = \
        libwiretap.a            \
        libwiretap.la           \
+       libwiretap_generated.a  \
+       libwiretap_generated.la \
        *~
 
 MAINTAINERCLEANFILES = \
        $(GENERATED_FILES)      \
-       Makefile.in             \
-       aclocal.m4              \
-       config.h.in             \
-       configure
+       Makefile.in
 
+#Since code generated by lex may trigger gcc warnings, we are now generating two
+#libraries.  A single library is generated with the lex code without the barrier
+#"stop on warning". An other library is generated from the remaining source
+#files with the "stop on warning" barrier.
 libwiretap_la_SOURCES = \
        $(NONGENERATED_C_FILES) \
-       $(GENERATOR_SOURCES)    \
        $(NONGENERATED_HEADER_FILES)
+libwiretap_la_CFLAGS = $(AM_NON_GENERATED_CFLAGS)
+
+libwiretap_generated_la_SOURCES = \
+       $(GENERATED_C_FILES)
 
 EXTRA_DIST = \
+       README.airmagnet        \
        README.developer        \
-       config.h.win32          \
        Makefile.common         \
        Makefile.nmake          \
-       wtap.def                \
-       file_util.c             \
+       $(GENERATOR_FILES)      \
        $(GENERATED_FILES)
 
-# Any POSIX-compatible YACC should honor the -p flag
-AM_YFLAGS=-d -p ascend
+libwiretap_la_LIBADD = libwiretap_generated.la ${top_builddir}/wsutil/libwsutil.la $(GLIB_LIBS)
+libwiretap_la_DEPENDENCIES = libwiretap_generated.la ${top_builddir}/wsutil/libwsutil.la
+
+RUNLEX = $(top_srcdir)/tools/runlex.sh
 
-ascend-scanner.c : ascend-scanner.l
-       @if [ ! -x "$(LEX)" ]; then \
-               echo "Neither lex nor flex was found"; \
+k12text_lex.h : k12text.c
+
+ascend_scanner_lex.h : ascend_scanner.c
+
+ascend_scanner.c: ascend.h
+
+ascend.h: ascend.c
+
+ascend.c: ascend.y
+       @if [ -z "$(YACC)" ]; then \
+               echo "Neither bison nor byacc has been found"; \
                exit 1; \
        fi
-       $(LEX) -Pascend -oascend-scanner.c $(srcdir)/ascend-scanner.l
+       $(YACC) -d -p ascend -o ascend.c $(srcdir)/ascend.y
+
+# ABI compliance checker can be obtained from
+# http://ispras.linux-foundation.org/index.php/ABI_compliance_checker
+# Checked using version 1.21.12
+dumpabi-libwiretap: all abi-descriptor.xml
+       rm -rf abi-check-headers abi_dumps .libs/*.abi.tar.gz
+       mkdir abi-check-headers
+       cp *.h ../ws_symbol_export.h abi-check-headers/
+       abi-compliance-checker -l libwiretap -v1 `readlink .libs/libwiretap.so | sed 's/.*\.so\.//'` \
+               -relpath $(abs_srcdir) -dump-abi abi-descriptor.xml || \
+               cat logs/libwiretap/[0-9]*/log.txt
+       cp -f abi_dumps/libwiretap/libwiretap_* .libs/
+       cd .libs && ln -sf libwiretap_*.abi.tar.gz libwiretap.abi.tar.gz
+
+checkapi:
+## 'abort' checking disabled for now pending resolution of existing use of g_assert & g_error
+##     $(PERL) $(top_srcdir)/tools/checkAPIs.pl -g abort -g termoutput \
+       $(PERL) $(top_srcdir)/tools/checkAPIs.pl -g termoutput -build \
+       -sourcedir=$(srcdir) \
+       $(NONGENERATED_C_FILES) $(GENERATOR_FILES)