From d7006cebbb5eea34aea8f5fd3470b7f4265d0625 Mon Sep 17 00:00:00 2001 From: Guy Harris Date: Sat, 5 Dec 2015 17:12:50 +0000 Subject: Revert "Build Flex-generated files with "warnings are errors"." This reverts commit b56f53884be3bab935058b2bbbb4da0b8bbbe7f6. Sadly, we *do* get warnings at this point with older versions of Flex, such as the one on the 32-bit OS X buildbot. Change-Id: I9aec1a16e9f2e1bbcfaac3dffdabdd89af5815e3 Reviewed-on: https://code.wireshark.org/review/12443 Reviewed-by: Guy Harris --- wiretap/CMakeLists.txt | 10 +++++----- wiretap/Makefile.am | 25 +++++++++++++++++-------- wiretap/Makefile.nmake | 10 +++++++--- 3 files changed, 29 insertions(+), 16 deletions(-) (limited to 'wiretap') diff --git a/wiretap/CMakeLists.txt b/wiretap/CMakeLists.txt index f4acd71122..e3eb20aa6f 100644 --- a/wiretap/CMakeLists.txt +++ b/wiretap/CMakeLists.txt @@ -81,11 +81,6 @@ set(WIRETAP_FILES wtap.c ) -add_lex_files(WIRETAP_FILES - ascend_scanner.l - k12text.l -) - if (WERROR_COMMON_FLAGS) set_source_files_properties( ${WIRETAP_FILES} @@ -94,6 +89,11 @@ if (WERROR_COMMON_FLAGS) ) endif() +add_lex_files(WIRETAP_FILES + ascend_scanner.l + k12text.l +) + add_yacc_files(WIRETAP_FILES ascend.y ) diff --git a/wiretap/Makefile.am b/wiretap/Makefile.am index 071c7c393f..51af38caa3 100644 --- a/wiretap/Makefile.am +++ b/wiretap/Makefile.am @@ -25,14 +25,15 @@ ACLOCAL_AMFLAGS = `../aclocal-flags` include Makefile.common +noinst_LTLIBRARIES = libwiretap_generated.la lib_LTLIBRARIES = libwiretap.la # http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html libwiretap_la_LDFLAGS = -version-info 0:0:0 @LDFLAGS_SHAREDLIB@ -AM_CFLAGS =-DWS_BUILD_DLL +AM_NON_GENERATED_CFLAGS =-DWS_BUILD_DLL if HAVE_WARNINGS_AS_ERRORS -AM_CFLAGS += -Werror +AM_NON_GENERATED_CFLAGS += -Werror endif AM_CPPFLAGS = -I$(srcdir)/.. @@ -40,17 +41,25 @@ AM_CPPFLAGS = -I$(srcdir)/.. CLEANFILES = \ libwiretap.a \ libwiretap.la \ + libwiretap_generated.a \ + libwiretap_generated.la \ *~ MAINTAINERCLEANFILES = \ $(GENERATED_FILES) \ 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) \ - $(NONGENERATED_HEADER_FILES) \ - $(GENERATED_C_FILES) \ - $(GENERATED_HEADER_FILES) + $(NONGENERATED_C_FILES) \ + $(NONGENERATED_HEADER_FILES) +libwiretap_la_CFLAGS = $(AM_NON_GENERATED_CFLAGS) + +libwiretap_generated_la_SOURCES = \ + $(GENERATED_C_FILES) EXTRA_DIST = \ README.airmagnet \ @@ -60,8 +69,8 @@ EXTRA_DIST = \ $(GENERATOR_FILES) \ $(GENERATED_FILES) -libwiretap_la_LIBADD = ${top_builddir}/wsutil/libwsutil.la $(GLIB_LIBS) -libwiretap_la_DEPENDENCIES = ${top_builddir}/wsutil/libwsutil.la +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 diff --git a/wiretap/Makefile.nmake b/wiretap/Makefile.nmake index e6d846e8b3..58ae255ec1 100644 --- a/wiretap/Makefile.nmake +++ b/wiretap/Makefile.nmake @@ -6,12 +6,16 @@ include ..\Makefile.nmake.inc include Makefile.common -CFLAGS=$(WARNINGS_ARE_ERRORS) $(STANDARD_CFLAGS) \ +# We use GENERATED_CFLAGS to get around flex's non-LLP64-compliant output +GENERATED_CFLAGS=\ + $(STANDARD_CFLAGS) \ -DYYMALLOC=malloc -DYYFREE=free \ /I. /I.. $(GLIB_CFLAGS) \ $(ZLIB_CFLAGS) /I$(PCAP_DIR)/include \ -DWS_BUILD_DLL +CFLAGS=$(WARNINGS_ARE_ERRORS) $(GENERATED_CFLAGS) + .c.obj:: $(CC) $(CFLAGS) -Fd.\ -c $< @@ -39,11 +43,11 @@ RUNLEX = ../tools/runlex.sh k12text_lex.h : k12text.c k12text.obj : k12text.c - $(CC) $(CFLAGS) -Fd.\ -c $? + $(CC) $(GENERATED_CFLAGS) -Fd.\ -c $? ascend_scanner_lex.h : ascend_scanner.c ascend_scanner.obj : ascend_scanner.c ascend.h - $(CC) $(CFLAGS) -Fd.\ -c ascend_scanner.c + $(CC) $(GENERATED_CFLAGS) -Fd.\ -c ascend_scanner.c ascend_scanner.c : ascend.h -- cgit v1.2.3