CMake: API reference fixes.
[metze/wireshark/wip.git] / epan / dfilter / Makefile.am
index 09d80c87525e8960729a85c80ad732283477c656..427ab95b241fcd0206fe7711e68365efa83b683b 100644 (file)
 # Makefile.am
 #
-# $Id$
-#
 # Wireshark - Network traffic analyzer
 # By Gerald Combs <gerald@wireshark.org>
 # Copyright 2001 Gerald Combs
 #
-# 
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
 # as published by the Free Software Foundation; either version 2
 # of the License, or (at your option) any later version.
-# 
+#
 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
-# 
+#
 # 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., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+#
 
-if USING_GCC
-AM_CFLAGS = -Werror
-endif
-
-noinst_LTLIBRARIES = libdfilter.la
-
-CLEANFILES = \
-       libdfilter.a            \
-       libdfilter.la           \
-       *~
-
-DISTCLEANFILES = \
-       grammar.out     \
-       grammar.c       \
-       grammar.h
+include $(top_srcdir)/Makefile.am.inc
 
-MAINTAINERCLEANFILES = \
-       Makefile.in     \
-       grammar.c       \
-       grammar.h       \
-       grammar.out     \
-       scanner.c
+AM_CPPFLAGS = $(INCLUDEDIRS) -I$(top_srcdir)/epan -I$(lemon_srcdir) \
+       $(WS_CPPFLAGS) $(GLIB_CFLAGS)
 
-INCLUDES = -I$(srcdir)/../.. -I$(srcdir)/.. -I$(srcdir)/$(LEMON)
+noinst_LTLIBRARIES = libdfilter.la
 
-libdfilter_la_SOURCES = \
+# C source files that are part of the display filter source; this includes only
+# .c files, not YACC or Lex or... files (as Makefile.nmake maps this list
+# into a list of object files by replacing ".c" with ".obj") or files
+# generated from YACC or Lex files (as Automake doesn't want them in
+# _SOURCES variables).
+NONGENERATED_C_FILES = \
        dfilter.c               \
-       dfilter.h               \
-       dfilter-int.h           \
-       dfilter-macro.h \
-       dfilter-macro.c \
-       dfunctions.c    \
-       dfunctions.h    \
+       dfilter-macro.c         \
+       dfunctions.c            \
        dfvm.c                  \
-       dfvm.h                  \
        drange.c                \
-       drange.h                \
        gencode.c               \
-       gencode.h               \
-       glib-util.c             \
-       glib-util.h             \
-       grammar.c               \
-       grammar.h               \
-       scanner.c               \
        semcheck.c              \
-       semcheck.h              \
        sttype-function.c       \
-       sttype-function.h       \
        sttype-integer.c        \
        sttype-pointer.c        \
        sttype-range.c          \
-       sttype-range.h          \
+       sttype-set.c            \
        sttype-string.c         \
        sttype-test.c           \
+       syntax-tree.c
+
+# Header files that are not generated from other files
+NONGENERATED_HEADERS_PRIVATE = \
+       dfilter-macro.h         \
+       dfilter-int.h           \
+       dfunctions.h            \
+       dfvm.h                  \
+       gencode.h               \
+       semcheck.h              \
+       sttype-function.h       \
+       sttype-range.h          \
+       sttype-set.h            \
        sttype-test.h           \
-       syntax-tree.c           \
        syntax-tree.h
 
-EXTRA_DIST = \
+NONGENERATED_HEADERS_PUBLIC = \
+       dfilter.h       \
+       drange.h
+
+# Files that generate compileable files
+GENERATOR_FILES = \
        grammar.lemon           \
-       scanner.l               \
-       Makefile.nmake          
+        scanner.l
 
-scanner.c : scanner.l
-       @if [ ! -x "$(LEX)" ]; then \
-               echo "Neither lex nor flex was found"; \
-               exit 1; \
-       fi
-       $(LEX) -Pdf_ -oscanner.c $(srcdir)/scanner.l
+# The C source files they generate and that we want in the distribution
+GENERATED_C_FILES = \
+       scanner.c
 
-scanner.o : scanner.c grammar.h
+# The C source files they generate and that we don't want in the distribution
+NODIST_GENERATED_C_FILES = \
+       grammar.c
 
-LEMON=../../tools/lemon
+# The header files that they generate and that we want in the distribution
+GENERATED_HEADER_FILES = \
+       scanner_lex.h
 
-grammar.h : grammar.c 
-grammar.c : grammar.lemon $(LEMON)/lemon$(EXEEXT)
-       $(LEMON)/lemon$(EXEEXT) t=$(srcdir)/$(LEMON)/lempar.c $(srcdir)/grammar.lemon || \
+# The header files that they generate and that we don't want in the distribution
+NODIST_GENERATED_HEADER_FILES = \
+       grammar.h
+
+# All the generated files we want in the distribution.
+GENERATED_FILES = \
+       $(GENERATED_C_FILES) \
+       $(GENERATED_HEADER_FILES)
+
+# All the generated files we don't want in the distribution.
+NODIST_GENERATED_FILES = \
+       $(NODIST_GENERATED_C_FILES) \
+       $(NODIST_GENERATED_HEADER_FILES)
+
+subpkgincludedir = $(pkgincludedir)/epan/dfilter
+
+subpkginclude_HEADERS = $(NONGENERATED_HEADERS_PUBLIC)
+
+libdfilter_la_SOURCES = \
+       $(NONGENERATED_C_FILES) \
+       $(NONGENERATED_HEADERS_PRIVATE) \
+       $(GENERATED_C_FILES)    \
+       $(GENERATED_HEADER_FILES)
+
+nodist_libdfilter_la_SOURCES = \
+       $(NODIST_GENERATED_C_FILES)     \
+       $(NODIST_GENERATED_HEADER_FILES)
+
+EXTRA_DIST = \
+       .editorconfig           \
+       $(GENERATOR_FILES)      \
+       CMakeLists.txt
+
+DISTCLEANFILES = \
+       grammar.out     \
+       $(NODIST_GENERATED_FILES)
+
+MAINTAINERCLEANFILES = \
+       $(GENERATED_FILES)
+
+BUILT_SOURCES = $(GENERATED_HEADER_FILES) $(NODIST_GENERATED_HEADER_FILES)
+
+scanner_lex.h : scanner.c
+
+grammar.h : grammar.c
+grammar.c : $(LEMON) $(lemon_srcdir)/lempar.c $(srcdir)/grammar.lemon
+       $(AM_V_LEMON)$(LEMON) T=$(lemon_srcdir)/lempar.c $(srcdir)/grammar.lemon || \
                (rm -f grammar.c grammar.h ; false)
+
+checkapi:
+       $(PERL) $(top_srcdir)/tools/checkAPIs.pl -g termoutput -build \
+       -sourcedir=$(srcdir) $(NONGENERATED_C_FILES)