165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## Process this file with automake to produce Makefile.in.
265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
365de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichACLOCAL_AMFLAGS = -I m4
465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichdist_doc_DATA = \
665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre.txt \
765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre-config.txt \
865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcregrep.txt \
965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcretest.txt \
1065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  AUTHORS \
1165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  COPYING \
1265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  ChangeLog \
1365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  LICENCE \
1465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  NEWS \
1565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  README
1665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
1765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Note that pcrecpp.html is not in this list; it is listed separately below.
1865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
1965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichdist_html_DATA = \
2065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/NON-AUTOTOOLS-BUILD.txt \
2165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/README.txt \
2265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/index.html \
2365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre-config.html \
2465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre.html \
2565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre16.html \
2665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre32.html \
2765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_assign_jit_stack.html \
2865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_compile.html \
2965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_compile2.html \
3065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_config.html \
3165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_copy_named_substring.html \
3265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_copy_substring.html \
3365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_dfa_exec.html \
3465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_exec.html \
3565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_free_study.html \
3665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_free_substring.html \
3765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_free_substring_list.html \
3865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_fullinfo.html \
3965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_get_named_substring.html \
4065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_get_stringnumber.html \
4165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_get_stringtable_entries.html \
4265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_get_substring.html \
4365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_get_substring_list.html \
4465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_jit_exec.html \
4565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_jit_stack_alloc.html \
4665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_jit_stack_free.html \
4765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_maketables.html \
4865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_pattern_to_host_byte_order.html \
4965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_refcount.html \
5065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_study.html \
5165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_utf16_to_host_byte_order.html \
5265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_utf32_to_host_byte_order.html \
5365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcre_version.html \
5465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcreapi.html \
5565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcrebuild.html \
5665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcrecallout.html \
5765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcrecompat.html \
5865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcredemo.html \
5965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcregrep.html \
6065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcrejit.html \
6165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcrelimits.html \
6265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcrematching.html \
6365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcrepartial.html \
6465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcrepattern.html \
6565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcreperform.html \
6665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcreposix.html \
6765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcreprecompile.html \
6865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcresample.html \
6965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcrestack.html \
7065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcresyntax.html \
7165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcretest.html \
7265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/html/pcreunicode.html
7365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
7465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcrecpp_html = doc/html/pcrecpp.html
7565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichdist_noinst_DATA = $(pcrecpp_html)
7665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
7765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE_CPP
7865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichhtml_DATA = $(pcrecpp_html)
7965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif
8065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
8165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# The Libtool libraries to install.  We'll add to this later.
8265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlib_LTLIBRARIES =
8365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
8465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Unit tests you want to run when people type 'make check'.
8565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# TESTS is for binary unit tests, check_SCRIPTS for script-based tests
8665de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichTESTS =
8765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcheck_SCRIPTS =
8865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichdist_noinst_SCRIPTS =
8965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
9065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Some of the binaries we make are to be installed, and others are
9165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# (non-user-visible) helper programs needed to build libpcre, libpcre16
9265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# or libpcre32.
9365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichbin_PROGRAMS =
9465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichnoinst_PROGRAMS =
9565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
9665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Additional files to delete on 'make clean' and 'make maintainer-clean'.
9765de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichCLEANFILES =
9865de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichMAINTAINERCLEANFILES =
9965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
10065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Additional files to bundle with the distribution, over and above what
10165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# the Autotools include by default.
10265de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST =
10365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
10465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# These files contain additional m4 macros that are used by autoconf.
10565de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += \
10665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  m4/ax_pthread.m4 m4/pcre_visibility.m4
10765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
10865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# These files contain maintenance information
10965de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += \
11065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/perltest.txt \
11165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  NON-UNIX-USE \
11265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  NON-AUTOTOOLS-BUILD \
11365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  HACKING
11465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
11565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# These files are used in the preparation of a release
11665de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += \
11765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  PrepareRelease \
11865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  CheckMan \
11965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  CleanTxt \
12065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  Detrail \
12165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  132html \
12265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/index.html.src
12365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
12465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# These files are to do with building for Virtual Pascal
12565de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += \
12665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  makevp.bat \
12765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  makevp_c.txt \
12865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  makevp_l.txt \
12965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcregexp.pas
13065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
13165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# These files are usable versions of pcre.h and config.h that are distributed
13265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# for the benefit of people who are building PCRE manually, without the
13365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Autotools support.
13465de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += \
13565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre.h.generic \
13665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  config.h.generic
13765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
13865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# The only difference between pcre.h.in and pcre.h is the setting of the PCRE
13965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# version number. Therefore, we can create the generic version just by copying.
14065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre.h.generic: pcre.h.in configure.ac
14165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	rm -f $@
14265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	cp -p pcre.h $@
14365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
14465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# It is more complicated for config.h.generic. We need the version that results
14565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# from a default configuration so as to get all the default values for PCRE
14665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# configuration macros such as MATCH_LIMIT and NEWLINE. We can get this by
14765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# doing a configure in a temporary directory. However, some trickery is needed,
14865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# because the source directory may already be configured. If you just try
14965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# running configure in a new directory, it complains. For this reason, we move
15065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# config.status out of the way while doing the default configuration. The
15165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# resulting config.h is munged by perl to put #ifdefs round any #defines for
15265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# macros with values, and to #undef all boolean macros such as HAVE_xxx and
15365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# SUPPORT_xxx. We also get rid of any gcc-specific visibility settings. Make
15465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# sure that PCRE_EXP_DEFN is unset (in case it has visibility settings).
15565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichconfig.h.generic: configure.ac
15665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	rm -rf $@ _generic
15765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	mkdir _generic
15865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	cs=$(srcdir)/config.status; test ! -f $$cs || mv -f $$cs $$cs.aside
15965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	cd _generic && $(abs_top_srcdir)/configure || :
16065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	cs=$(srcdir)/config.status; test ! -f $$cs.aside || mv -f $$cs.aside $$cs
16165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	test -f _generic/config.h
16265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	perl -n \
16365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	  -e 'BEGIN{$$blank=0;}' \
16465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	  -e 'if(/PCRE_EXP_DEFN/){print"/* #undef PCRE_EXP_DEFN */\n";$$blank=0;next;}' \
16565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	  -e 'if(/to make a symbol visible/){next;}' \
16665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	  -e 'if(/__attribute__ \(\(visibility/){next;}' \
16765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	  -e 'if(/LT_OBJDIR/){print"/* This is ignored unless you are using libtool. */\n";}' \
16865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	  -e 'if(/^#define\s((?:HAVE|SUPPORT|STDC)_\w+)/){print"/* #undef $$1 */\n";$$blank=0;next;}' \
16965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	  -e 'if(/^#define\s(?!PACKAGE|VERSION)(\w+)/){print"#ifndef $$1\n$$_#endif\n";$$blank=0;next;}' \
17065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	  -e 'if(/^\s*$$/){print unless $$blank; $$blank=1;} else{print;$$blank=0;}' \
17165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	  _generic/config.h >$@
17265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	rm -rf _generic
17365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
17465de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichMAINTAINERCLEANFILES += pcre.h.generic config.h.generic
17565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
17665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# These are the header files we'll install. We do not distribute pcre.h because
17765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# it is generated from pcre.h.in.
17865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichnodist_include_HEADERS = \
17965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre.h
18065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichinclude_HEADERS = \
18165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcreposix.h
18265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
18365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# These additional headers will be be installed if C++ support is enabled. We
18465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# do not distribute pcrecpparg.h or pcre_stringpiece.h, as these are generated
18565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# from corresponding .h.in files (which we do distribute).
18665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE_CPP
18765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichnodist_include_HEADERS += \
18865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcrecpparg.h \
18965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_stringpiece.h
19065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichinclude_HEADERS += \
19165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcrecpp.h \
19265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_scanner.h
19365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE_CPP
19465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
19565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichbin_SCRIPTS = pcre-config
19665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
19765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## ---------------------------------------------------------------
19865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## The dftables program is used to rebuild character tables before compiling
19965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## PCRE, if --enable-rebuild-chartables is specified. It is not a user-visible
20065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## program. The default (when --enable-rebuild-chartables is not specified) is
20165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## to copy a distributed set of tables that are defined for ASCII code. In this
20265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## case, dftables is not needed.
20365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
20465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_REBUILD_CHARTABLES
20565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
20665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichnoinst_PROGRAMS += dftables
20765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichdftables_SOURCES = dftables.c
20865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
20965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_chartables.c: dftables$(EXEEXT)
21065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	./dftables$(EXEEXT) $@
21165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichelse
21265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
21365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_chartables.c: $(srcdir)/pcre_chartables.c.dist
21465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	rm -f $@
21565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	$(LN_S) $(srcdir)/pcre_chartables.c.dist $@
21665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
21765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_REBUILD_CHARTABLES
21865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
21965de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichBUILT_SOURCES = pcre_chartables.c
22065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
22165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## The main pcre library
22265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
22365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Build the 8 bit library if it is enabled.
22465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE8
22565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlib_LTLIBRARIES += libpcre.la
22665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
22765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre_la_SOURCES = \
22865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_byte_order.c \
22965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_compile.c \
23065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_config.c \
23165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_dfa_exec.c \
23265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_exec.c \
23365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_fullinfo.c \
23465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_get.c \
23565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_globals.c \
23665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_internal.h \
23765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_jit_compile.c \
23865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_maketables.c \
23965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_newline.c \
24065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_ord2utf8.c \
24165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_refcount.c \
24265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_string_utils.c \
24365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_study.c \
24465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_tables.c \
24565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_ucd.c \
24665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_valid_utf8.c \
24765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_version.c \
24865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_xclass.c \
24965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  ucp.h
25065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
25165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre_la_CFLAGS = \
25265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  $(VISIBILITY_CFLAGS) \
25365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  $(AM_CFLAGS)
25465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
25565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre_la_LIBADD =
25665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
25765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## This file is generated as part of the building process, so don't distribute.
25865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichnodist_libpcre_la_SOURCES = \
25965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_chartables.c
26065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
26165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE8
26265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
26365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Build the 16 bit library if it is enabled.
26465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE16
26565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlib_LTLIBRARIES += libpcre16.la
26665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre16_la_SOURCES = \
26765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_byte_order.c \
26865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_chartables.c \
26965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_compile.c \
27065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_config.c \
27165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_dfa_exec.c \
27265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_exec.c \
27365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_fullinfo.c \
27465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_get.c \
27565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_globals.c \
27665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_jit_compile.c \
27765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_maketables.c \
27865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_newline.c \
27965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_ord2utf16.c \
28065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_refcount.c \
28165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_string_utils.c \
28265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_study.c \
28365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_tables.c \
28465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_ucd.c \
28565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_utf16_utils.c \
28665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_valid_utf16.c \
28765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_version.c \
28865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre16_xclass.c
28965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
29065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre16_la_CFLAGS = \
29165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  $(VISIBILITY_CFLAGS) \
29265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  $(AM_CFLAGS)
29365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
29465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre16_la_LIBADD =
29565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
29665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## This file is generated as part of the building process, so don't distribute.
29765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichnodist_libpcre16_la_SOURCES = \
29865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_chartables.c
29965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
30065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE16
30165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
30265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Build the 32 bit library if it is enabled.
30365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE32
30465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlib_LTLIBRARIES += libpcre32.la
30565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre32_la_SOURCES = \
30665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_byte_order.c \
30765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_chartables.c \
30865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_compile.c \
30965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_config.c \
31065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_dfa_exec.c \
31165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_exec.c \
31265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_fullinfo.c \
31365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_get.c \
31465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_globals.c \
31565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_jit_compile.c \
31665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_maketables.c \
31765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_newline.c \
31865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_ord2utf32.c \
31965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_refcount.c \
32065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_string_utils.c \
32165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_study.c \
32265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_tables.c \
32365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_ucd.c \
32465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_utf32_utils.c \
32565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_valid_utf32.c \
32665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_version.c \
32765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre32_xclass.c
32865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
32965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre32_la_CFLAGS = \
33065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  $(VISIBILITY_CFLAGS) \
33165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  $(AM_CFLAGS)
33265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
33365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre32_la_LIBADD =
33465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
33565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## This file is generated as part of the building process, so don't distribute.
33665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichnodist_libpcre32_la_SOURCES = \
33765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_chartables.c
33865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
33965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE32
34065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
34165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# The pcre_chartables.c.dist file is the default version of pcre_chartables.c,
34265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# used unless --enable-rebuild-chartables is specified.
34365de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += pcre_chartables.c.dist
34465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
34565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# The JIT compiler lives in a separate directory, but its files are #included
34665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# when pcre_jit_compile.c is processed, so they must be distributed.
34765de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += \
34865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitConfig.h \
34965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitConfigInternal.h \
35065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitExecAllocator.c \
35165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitLir.c \
35265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitLir.h \
35365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeARM_32.c \
35465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeARM_64.c \
35565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeARM_T2_32.c \
35665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeMIPS_32.c \
35765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeMIPS_64.c \
35865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeMIPS_common.c \
35965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativePPC_32.c \
36065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativePPC_64.c \
36165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativePPC_common.c \
36265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeSPARC_32.c \
36365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeSPARC_common.c \
36465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeTILEGX_64.c \
36565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeTILEGX-encoder.c \
36665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeX86_32.c \
36765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeX86_64.c \
36865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitNativeX86_common.c \
36965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  sljit/sljitUtils.c
37065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
37165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE8
37265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre_la_LDFLAGS = $(EXTRA_LIBPCRE_LDFLAGS)
37365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE8
37465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE16
37565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre16_la_LDFLAGS = $(EXTRA_LIBPCRE16_LDFLAGS)
37665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE16
37765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE32
37865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre32_la_LDFLAGS = $(EXTRA_LIBPCRE32_LDFLAGS)
37965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE32
38065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
38165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_VALGRIND
38265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE8
38365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre_la_CFLAGS += $(VALGRIND_CFLAGS)
38465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE8
38565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE16
38665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre16_la_CFLAGS += $(VALGRIND_CFLAGS)
38765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE16
38865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE32
38965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre32_la_CFLAGS += $(VALGRIND_CFLAGS)
39065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE32
39165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_VALGRIND
39265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
39365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_GCOV
39465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE8
39565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre_la_CFLAGS += $(GCOV_CFLAGS)
39665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE8
39765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE16
39865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre16_la_CFLAGS += $(GCOV_CFLAGS)
39965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE16
40065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE32
40165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcre32_la_CFLAGS += $(GCOV_CFLAGS)
40265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE32
40365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_GCOV
40465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
40565de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichCLEANFILES += pcre_chartables.c
40665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
40765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## If JIT support is enabled, arrange for the JIT test program to run.
40865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_JIT
40965de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichTESTS += pcre_jit_test
41065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichnoinst_PROGRAMS += pcre_jit_test
41165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_jit_test_SOURCES = pcre_jit_test.c
41265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_jit_test_CFLAGS = $(AM_CFLAGS)
41365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_jit_test_LDADD =
41465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE8
41565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_jit_test_LDADD += libpcre.la
41665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE8
41765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE16
41865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_jit_test_LDADD += libpcre16.la
41965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE16
42065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE32
42165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_jit_test_LDADD += libpcre32.la
42265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE32
42365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_GCOV
42465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_jit_test_CFLAGS += $(GCOV_CFLAGS)
42565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_jit_test_LDADD += $(GCOV_LIBS)
42665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_GCOV
42765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_JIT
42865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
42965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## A version of the main pcre library that has a posix re API.
43065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE8
43165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
43265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlib_LTLIBRARIES += libpcreposix.la
43365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcreposix_la_SOURCES = \
43465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcreposix.c
43565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcreposix_la_CFLAGS = $(VISIBILITY_CFLAGS) $(AM_CFLAGS)
43665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcreposix_la_LDFLAGS = $(EXTRA_LIBPCREPOSIX_LDFLAGS)
43765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcreposix_la_LIBADD = libpcre.la
43865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
43965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_GCOV
44065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcreposix_la_CFLAGS += $(GCOV_CFLAGS)
44165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_GCOV
44265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
44365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE8
44465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
44565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## There's a C++ library as well.
44665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE_CPP
44765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
44865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlib_LTLIBRARIES += libpcrecpp.la
44965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcrecpp_la_SOURCES = \
45065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcrecpp_internal.h \
45165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcrecpp.cc \
45265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_scanner.cc \
45365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  pcre_stringpiece.cc
45465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcrecpp_la_CXXFLAGS = $(VISIBILITY_CXXFLAGS) $(AM_CXXFLAGS)
45565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcrecpp_la_LDFLAGS = $(EXTRA_LIBPCRECPP_LDFLAGS)
45665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcrecpp_la_LIBADD = libpcre.la
45765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
45865de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichTESTS += pcrecpp_unittest
45965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichnoinst_PROGRAMS += pcrecpp_unittest
46065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcrecpp_unittest_SOURCES = pcrecpp_unittest.cc
46165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcrecpp_unittest_CXXFLAGS = $(AM_CXXFLAGS)
46265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcrecpp_unittest_LDADD = libpcrecpp.la
46365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
46465de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichTESTS += pcre_scanner_unittest
46565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichnoinst_PROGRAMS += pcre_scanner_unittest
46665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_scanner_unittest_SOURCES = pcre_scanner_unittest.cc
46765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_scanner_unittest_CXXFLAGS = $(AM_CXXFLAGS)
46865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_scanner_unittest_LDADD = libpcrecpp.la
46965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
47065de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichTESTS += pcre_stringpiece_unittest
47165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichnoinst_PROGRAMS += pcre_stringpiece_unittest
47265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_stringpiece_unittest_SOURCES = pcre_stringpiece_unittest.cc
47365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_stringpiece_unittest_CXXFLAGS = $(AM_CXXFLAGS)
47465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_stringpiece_unittest_LDADD = libpcrecpp.la
47565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
47665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_GCOV
47765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichlibpcrecpp_la_CXXFLAGS += $(GCOV_CXXFLAGS)
47865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcrecpp_unittest_LDADD += $(GCOV_LIBS)
47965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_scanner_unittest_LDADD += $(GCOV_LIBS)
48065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre_stringpiece_unittest_LDADD += $(GCOV_LIBS)
48165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_GCOV
48265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
48365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE_CPP
48465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
48565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## The main unit tests
48665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
48765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Each unit test is a binary plus a script that runs that binary in various
48865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# ways. We install these test binaries in case folks find it helpful.
48965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
49065de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichTESTS += RunTest
49165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichdist_noinst_SCRIPTS += RunTest
49265de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += RunTest.bat
49365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichbin_PROGRAMS += pcretest
49465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_SOURCES = pcretest.c
49565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_CFLAGS = $(AM_CFLAGS)
49665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_LDADD = $(LIBREADLINE)
49765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE8
49865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_SOURCES += pcre_printint.c
49965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_LDADD += libpcre.la libpcreposix.la
50065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE8
50165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE16
50265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_SOURCES += pcre16_printint.c
50365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_LDADD += libpcre16.la
50465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE16
50565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE32
50665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_SOURCES += pcre32_printint.c
50765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_LDADD += libpcre32.la
50865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE32
50965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_VALGRIND
51065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_CFLAGS += $(VALGRIND_CFLAGS)
51165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_VALGRIND
51265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_GCOV
51365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_CFLAGS += $(GCOV_CFLAGS)
51465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcretest_LDADD += $(GCOV_LIBS)
51565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_GCOV
51665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
51765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE8
51865de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichTESTS += RunGrepTest
51965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichdist_noinst_SCRIPTS += RunGrepTest
52065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichbin_PROGRAMS += pcregrep
52165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcregrep_SOURCES = pcregrep.c
52265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcregrep_CFLAGS = $(AM_CFLAGS)
52365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcregrep_LDADD = $(LIBZ) $(LIBBZ2)
52465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcregrep_LDADD += libpcre.la libpcreposix.la
52565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_GCOV
52665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcregrep_CFLAGS += $(GCOV_CFLAGS)
52765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcregrep_LDADD += $(GCOV_LIBS)
52865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_GCOV
52965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_PCRE8
53065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
53165de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += \
53265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/grepbinary \
53365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/grepfilelist \
53465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/grepinput \
53565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/grepinput3 \
53665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/grepinput8 \
53765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/grepinputv \
53865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/grepinputx \
53965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/greplist \
54065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/grepoutput \
54165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/grepoutput8 \
54265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/grepoutputN \
54365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/greppatN4 \
54465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/saved16 \
54565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/saved16BE-1 \
54665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/saved16BE-2 \
54765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/saved16LE-1 \
54865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/saved16LE-2 \
54965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/saved32 \
55065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/saved32BE-1 \
55165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/saved32BE-2 \
55265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/saved32LE-1 \
55365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/saved32LE-2 \
55465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/saved8 \
55565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput1 \
55665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput2 \
55765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput3 \
55865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput4 \
55965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput5 \
56065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput6 \
56165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput7 \
56265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput8 \
56365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput9 \
56465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput10 \
56565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput11 \
56665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput12 \
56765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput13 \
56865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput14 \
56965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput15 \
57065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput16 \
57165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput17 \
57265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput18 \
57365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput19 \
57465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput20 \
57565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput21 \
57665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput22 \
57765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput23 \
57865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput24 \
57965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput25 \
58065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinput26 \
58165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testinputEBC \
58265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput1 \
58365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput2 \
58465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput3 \
58565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput3A \
58665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput3B \
58765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput4 \
58865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput5 \
58965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput6 \
59065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput7 \
59165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput8 \
59265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput9 \
59365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput10 \
59465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput11-8 \
59565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput11-16 \
59665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput11-32 \
59765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput12 \
59865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput13 \
59965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput14 \
60065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput15 \
60165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput16 \
60265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput17 \
60365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput18-16 \
60465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput18-32 \
60565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput19 \
60665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput20 \
60765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput21-16 \
60865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput21-32 \
60965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput22-16 \
61065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput22-32 \
61165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput23 \
61265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput24 \
61365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput25 \
61465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutput26 \
61565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/testoutputEBC \
61665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/wintestinput3 \
61765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  testdata/wintestoutput3 \
61865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  perltest.pl
61965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
62065de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichCLEANFILES += \
62165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	testsavedregex \
62265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	teststderr \
62365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich        testtemp* \
62465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	testtry \
62565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich        testNinput \
62665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich        testtrygrep \
62765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich        teststderrgrep \
62865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich        testNinputgrep
62965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
63065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# PCRE demonstration program. No longer built automatcally. The point is that
63165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# the users should build it themselves. So just distribute the source.
63265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# noinst_PROGRAMS += pcredemo
63365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# pcredemo_SOURCES = pcredemo.c
63465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# pcredemo_LDADD = libpcre.la
63565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
63665de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += pcredemo.c
63765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
63865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
63965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## Utility rules, documentation, etc.
64065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
64165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# A compatibility line, the old build system worked with 'make test'
64265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichtest: check ;
64365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
64465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
64565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# A PCRE user submitted the following addition, saying that it "will allow
64665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# anyone using the 'mingw32' compiler to simply type 'make pcre.dll' and get a
64765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# nice DLL for Windows use". (It is used by the pcre.dll target.)
64865de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichDLL_OBJS= pcre_byte_order.o pcre_compile.o pcre_config.o \
64965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	pcre_dfa_exec.o pcre_exec.o pcre_fullinfo.o pcre_get.o \
65065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	pcre_globals.o pcre_jit_compile.o pcre_maketables.o \
65165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	pcre_newline.o pcre_ord2utf8.o pcre_refcount.o \
65265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	pcre_study.o pcre_tables.o pcre_ucd.o \
65365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	pcre_valid_utf8.o pcre_version.o pcre_chartables.o \
65465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	pcre_xclass.o
65565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
65665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# A PCRE user submitted the following addition, saying that it "will allow
65765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# anyone using the 'mingw32' compiler to simply type 'make pcre.dll' and get a
65865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# nice DLL for Windows use".
65965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcre.dll: $(DLL_OBJS)
66065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	$(CC) -shared -o pcre.dll -Wl,"--strip-all" -Wl,"--export-all-symbols" $(DLL_OBJS)
66165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
66265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
66365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# We have .pc files for pkg-config users.
66465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpkgconfigdir = $(libdir)/pkgconfig
66565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpkgconfig_DATA = libpcre.pc libpcreposix.pc
66665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE16
66765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpkgconfig_DATA += libpcre16.pc
66865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif
66965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE32
67065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpkgconfig_DATA += libpcre32.pc
67165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif
67265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE_CPP
67365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpkgconfig_DATA += libpcrecpp.pc
67465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif
67565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
67665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Note that pcrecpp.3 is not in this list, but is included separately below.
67765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
67865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichdist_man_MANS = \
67965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre-config.1 \
68065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre.3 \
68165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre16.3 \
68265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre32.3 \
68365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_assign_jit_stack.3 \
68465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_compile.3 \
68565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_compile2.3 \
68665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_config.3 \
68765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_copy_named_substring.3 \
68865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_copy_substring.3 \
68965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_dfa_exec.3 \
69065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_exec.3 \
69165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_free_study.3 \
69265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_free_substring.3 \
69365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_free_substring_list.3 \
69465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_fullinfo.3 \
69565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_get_named_substring.3 \
69665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_get_stringnumber.3 \
69765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_get_stringtable_entries.3 \
69865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_get_substring.3 \
69965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_get_substring_list.3 \
70065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_jit_exec.3 \
70165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_jit_stack_alloc.3 \
70265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_jit_stack_free.3 \
70365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_maketables.3 \
70465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_pattern_to_host_byte_order.3 \
70565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_refcount.3 \
70665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_study.3 \
70765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_utf16_to_host_byte_order.3 \
70865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_utf32_to_host_byte_order.3 \
70965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcre_version.3 \
71065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcreapi.3 \
71165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcrebuild.3 \
71265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcrecallout.3 \
71365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcrecompat.3 \
71465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcredemo.3 \
71565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcregrep.1 \
71665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcrejit.3 \
71765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcrelimits.3 \
71865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcrematching.3 \
71965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcrepartial.3 \
72065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcrepattern.3 \
72165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcreperform.3 \
72265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcreposix.3 \
72365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcreprecompile.3 \
72465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcresample.3 \
72565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcrestack.3 \
72665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcresyntax.3 \
72765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcretest.1 \
72865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  doc/pcreunicode.3
72965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
73065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Arrange for the per-function man pages to have 16- and 32-bit names as well.
73165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichinstall-data-hook:
73265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_assign_jit_stack.3		 $(DESTDIR)$(man3dir)/pcre16_assign_jit_stack.3
73365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_compile.3			 $(DESTDIR)$(man3dir)/pcre16_compile.3
73465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_compile2.3			 $(DESTDIR)$(man3dir)/pcre16_compile2.3
73565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_config.3			 $(DESTDIR)$(man3dir)/pcre16_config.3
73665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_copy_named_substring.3	 $(DESTDIR)$(man3dir)/pcre16_copy_named_substring.3
73765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_copy_substring.3		 $(DESTDIR)$(man3dir)/pcre16_copy_substring.3
73865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_dfa_exec.3			 $(DESTDIR)$(man3dir)/pcre16_dfa_exec.3
73965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_exec.3			 $(DESTDIR)$(man3dir)/pcre16_exec.3
74065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_free_study.3		 $(DESTDIR)$(man3dir)/pcre16_free_study.3
74165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_free_substring.3		 $(DESTDIR)$(man3dir)/pcre16_free_substring.3
74265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_free_substring_list.3	 $(DESTDIR)$(man3dir)/pcre16_free_substring_list.3
74365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_fullinfo.3			 $(DESTDIR)$(man3dir)/pcre16_fullinfo.3
74465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_get_named_substring.3	 $(DESTDIR)$(man3dir)/pcre16_get_named_substring.3
74565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_get_stringnumber.3		 $(DESTDIR)$(man3dir)/pcre16_get_stringnumber.3
74665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_get_stringtable_entries.3	 $(DESTDIR)$(man3dir)/pcre16_get_stringtable_entries.3
74765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_get_substring.3		 $(DESTDIR)$(man3dir)/pcre16_get_substring.3
74865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_get_substring_list.3	 $(DESTDIR)$(man3dir)/pcre16_get_substring_list.3
74965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_jit_exec.3			 $(DESTDIR)$(man3dir)/pcre16_jit_exec.3
75065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_jit_stack_alloc.3		 $(DESTDIR)$(man3dir)/pcre16_jit_stack_alloc.3
75165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_jit_stack_free.3		 $(DESTDIR)$(man3dir)/pcre16_jit_stack_free.3
75265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_maketables.3		 $(DESTDIR)$(man3dir)/pcre16_maketables.3
75365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_pattern_to_host_byte_order.3 $(DESTDIR)$(man3dir)/pcre16_pattern_to_host_byte_order.3
75465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_refcount.3			 $(DESTDIR)$(man3dir)/pcre16_refcount.3
75565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_study.3			 $(DESTDIR)$(man3dir)/pcre16_study.3
75665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_utf16_to_host_byte_order.3	 $(DESTDIR)$(man3dir)/pcre16_utf16_to_host_byte_order.3
75765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_version.3			 $(DESTDIR)$(man3dir)/pcre16_version.3
75865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_assign_jit_stack.3		 $(DESTDIR)$(man3dir)/pcre32_assign_jit_stack.3
75965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_compile.3			 $(DESTDIR)$(man3dir)/pcre32_compile.3
76065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_compile2.3			 $(DESTDIR)$(man3dir)/pcre32_compile2.3
76165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_config.3			 $(DESTDIR)$(man3dir)/pcre32_config.3
76265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_copy_named_substring.3	 $(DESTDIR)$(man3dir)/pcre32_copy_named_substring.3
76365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_copy_substring.3		 $(DESTDIR)$(man3dir)/pcre32_copy_substring.3
76465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_dfa_exec.3			 $(DESTDIR)$(man3dir)/pcre32_dfa_exec.3
76565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_exec.3			 $(DESTDIR)$(man3dir)/pcre32_exec.3
76665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_free_study.3		 $(DESTDIR)$(man3dir)/pcre32_free_study.3
76765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_free_substring.3		 $(DESTDIR)$(man3dir)/pcre32_free_substring.3
76865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_free_substring_list.3	 $(DESTDIR)$(man3dir)/pcre32_free_substring_list.3
76965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_fullinfo.3			 $(DESTDIR)$(man3dir)/pcre32_fullinfo.3
77065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_get_named_substring.3	 $(DESTDIR)$(man3dir)/pcre32_get_named_substring.3
77165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_get_stringnumber.3		 $(DESTDIR)$(man3dir)/pcre32_get_stringnumber.3
77265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_get_stringtable_entries.3	 $(DESTDIR)$(man3dir)/pcre32_get_stringtable_entries.3
77365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_get_substring.3		 $(DESTDIR)$(man3dir)/pcre32_get_substring.3
77465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_get_substring_list.3	 $(DESTDIR)$(man3dir)/pcre32_get_substring_list.3
77565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_jit_exec.3			 $(DESTDIR)$(man3dir)/pcre32_jit_exec.3
77665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_jit_stack_alloc.3		 $(DESTDIR)$(man3dir)/pcre32_jit_stack_alloc.3
77765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_jit_stack_free.3		 $(DESTDIR)$(man3dir)/pcre32_jit_stack_free.3
77865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_maketables.3		 $(DESTDIR)$(man3dir)/pcre32_maketables.3
77965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_pattern_to_host_byte_order.3 $(DESTDIR)$(man3dir)/pcre32_pattern_to_host_byte_order.3
78065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_refcount.3			 $(DESTDIR)$(man3dir)/pcre32_refcount.3
78165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_study.3			 $(DESTDIR)$(man3dir)/pcre32_study.3
78265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_utf32_to_host_byte_order.3	 $(DESTDIR)$(man3dir)/pcre32_utf32_to_host_byte_order.3
78365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	ln -sf pcre_version.3			 $(DESTDIR)$(man3dir)/pcre32_version.3
78465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
78565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichpcrecpp_man = doc/pcrecpp.3
78665de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += $(pcrecpp_man)
78765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
78865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_PCRE_CPP
78965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichman_MANS = $(pcrecpp_man)
79065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif
79165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
79265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# gcov/lcov code coverage reporting
79365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
79465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichif WITH_GCOV
79565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
79665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# Coverage reporting targets:
79765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich#
79865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# coverage: Create a coverage report from 'make check'
79965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# coverage-baseline: Capture baseline coverage information
80065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# coverage-reset: This zeros the coverage counters only
80165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# coverage-report: This creates the coverage report only
80265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# coverage-clean-report: This removes the generated coverage report
80365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich#   without cleaning the coverage data itself
80465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# coverage-clean-data: This removes the captured coverage data without
80565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich#   removing the coverage files created at compile time (*.gcno)
80665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich# coverage-clean: This cleans all coverage data including the generated
80765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich#   coverage report.
80865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
80965de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichCOVERAGE_TEST_NAME = $(PACKAGE)
81065de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichCOVERAGE_NAME = $(PACKAGE)-$(VERSION)
81165de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichCOVERAGE_OUTPUT_FILE = $(COVERAGE_NAME)-coverage.info
81265de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichCOVERAGE_OUTPUT_DIR = $(COVERAGE_NAME)-coverage
81365de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichCOVERAGE_LCOV_EXTRA_FLAGS =
81465de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichCOVERAGE_GENHTML_EXTRA_FLAGS =
81565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
81665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage_quiet = $(coverage_quiet_$(V))
81765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage_quiet_ = $(coverage_quiet_$(AM_DEFAULT_VERBOSITY))
81865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage_quiet_0 = --quiet
81965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
82065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage-check: all
82165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	-$(MAKE) $(AM_MAKEFLAGS) -k check
82265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
82365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage-baseline:
82465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	$(LCOV) $(coverage_quiet) \
82565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--directory $(top_builddir) \
82665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--output-file "$(COVERAGE_OUTPUT_FILE)" \
82765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--capture \
82865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--initial
82965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
83065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage-report:
83165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	$(LCOV) $(coverage_quiet) \
83265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--directory $(top_builddir) \
83365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--capture \
83465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--output-file "$(COVERAGE_OUTPUT_FILE).tmp" \
83565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--test-name "$(COVERAGE_TEST_NAME)" \
83665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--no-checksum \
83765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--compat-libtool \
83865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		$(COVERAGE_LCOV_EXTRA_FLAGS)
83965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	$(LCOV) $(coverage_quiet) \
84065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--directory $(top_builddir) \
84165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--output-file "$(COVERAGE_OUTPUT_FILE)" \
84265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--remove "$(COVERAGE_OUTPUT_FILE).tmp" \
84365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		"/tmp/*" \
84465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		"/usr/include/*" \
84565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		"$(includedir)/*"
84665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	-@rm -f "$(COVERAGE_OUTPUT_FILE).tmp"
84765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	LANG=C $(GENHTML) $(coverage_quiet) \
84865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--prefix $(top_builddir) \
84965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--output-directory "$(COVERAGE_OUTPUT_DIR)" \
85065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--title "$(PACKAGE) $(VERSION) Code Coverage Report" \
85165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--show-details "$(COVERAGE_OUTPUT_FILE)" \
85265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		--legend \
85365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich		$(COVERAGE_GENHTML_EXTRA_FLAGS)
85465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	@echo "Code coverage report written to file://$(abs_builddir)/$(COVERAGE_OUTPUT_DIR)/index.html"
85565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
85665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage-reset:
85765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	-$(LCOV) $(coverage_quiet) --zerocounters --directory $(top_builddir)
85865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
85965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage-clean-report:
86065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	-rm -f "$(COVERAGE_OUTPUT_FILE)" "$(COVERAGE_OUTPUT_FILE).tmp"
86165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	-rm -rf "$(COVERAGE_OUTPUT_DIR)"
86265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
86365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage-clean-data:
86465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	-find $(top_builddir) -name "*.gcda" -delete
86565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
86665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage-clean: coverage-reset coverage-clean-report coverage-clean-data
86765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	-find $(top_builddir) -name "*.gcno" -delete
86865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
86965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage-distclean: coverage-clean
87065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
87165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage: coverage-reset coverage-baseline coverage-check coverage-report
87265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichclean-local: coverage-clean
87365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichdistclean-local: coverage-distclean
87465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
87565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich.PHONY: coverage coverage-baseline coverage-check coverage-report coverage-reset coverage-clean-report coverage-clean-data coverage-clean coverage-distclean
87665de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
87765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichelse
87865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
87965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichcoverage:
88065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich	@echo "Configuring with --enable-coverage required to generate code coverage report."
88165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
88265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevichendif # WITH_GCOV
88365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
88465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## CMake support
88565de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
88665de34233da93a3d65c00b8aad3ff9aad44c57deNick KralevichEXTRA_DIST += \
88765de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  cmake/COPYING-CMAKE-SCRIPTS \
88865de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  cmake/FindPackageHandleStandardArgs.cmake \
88965de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  cmake/FindReadline.cmake \
89065de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  cmake/FindEditline.cmake \
89165de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  CMakeLists.txt \
89265de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich  config-cmake.h.in
89365de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich
89465de34233da93a3d65c00b8aad3ff9aad44c57deNick Kralevich## end Makefile.am
895