1: ## Process this file with automake to produce Makefile.in.
2:
3: ACLOCAL_AMFLAGS = -I m4
4:
5: dist_doc_DATA = \
6: doc/pcre.txt \
7: doc/pcre-config.txt \
8: doc/pcregrep.txt \
9: doc/pcretest.txt \
10: AUTHORS \
11: COPYING \
12: ChangeLog \
13: LICENCE \
14: NEWS \
15: README
16:
17: # Note that pcrecpp.html is not in this list; it is listed separately below.
18:
19: dist_html_DATA = \
20: doc/html/NON-AUTOTOOLS-BUILD.txt \
21: doc/html/README.txt \
22: doc/html/index.html \
23: doc/html/pcre-config.html \
24: doc/html/pcre.html \
25: doc/html/pcre16.html \
26: doc/html/pcre32.html \
27: doc/html/pcre_assign_jit_stack.html \
28: doc/html/pcre_compile.html \
29: doc/html/pcre_compile2.html \
30: doc/html/pcre_config.html \
31: doc/html/pcre_copy_named_substring.html \
32: doc/html/pcre_copy_substring.html \
33: doc/html/pcre_dfa_exec.html \
34: doc/html/pcre_exec.html \
35: doc/html/pcre_free_study.html \
36: doc/html/pcre_free_substring.html \
37: doc/html/pcre_free_substring_list.html \
38: doc/html/pcre_fullinfo.html \
39: doc/html/pcre_get_named_substring.html \
40: doc/html/pcre_get_stringnumber.html \
41: doc/html/pcre_get_stringtable_entries.html \
42: doc/html/pcre_get_substring.html \
43: doc/html/pcre_get_substring_list.html \
44: doc/html/pcre_jit_exec.html \
45: doc/html/pcre_jit_stack_alloc.html \
46: doc/html/pcre_jit_stack_free.html \
47: doc/html/pcre_maketables.html \
48: doc/html/pcre_pattern_to_host_byte_order.html \
49: doc/html/pcre_refcount.html \
50: doc/html/pcre_study.html \
51: doc/html/pcre_utf16_to_host_byte_order.html \
52: doc/html/pcre_utf32_to_host_byte_order.html \
53: doc/html/pcre_version.html \
54: doc/html/pcreapi.html \
55: doc/html/pcrebuild.html \
56: doc/html/pcrecallout.html \
57: doc/html/pcrecompat.html \
58: doc/html/pcredemo.html \
59: doc/html/pcregrep.html \
60: doc/html/pcrejit.html \
61: doc/html/pcrelimits.html \
62: doc/html/pcrematching.html \
63: doc/html/pcrepartial.html \
64: doc/html/pcrepattern.html \
65: doc/html/pcreperform.html \
66: doc/html/pcreposix.html \
67: doc/html/pcreprecompile.html \
68: doc/html/pcresample.html \
69: doc/html/pcrestack.html \
70: doc/html/pcresyntax.html \
71: doc/html/pcretest.html \
72: doc/html/pcreunicode.html
73:
74: pcrecpp_html = doc/html/pcrecpp.html
75: dist_noinst_DATA = $(pcrecpp_html)
76:
77: if WITH_PCRE_CPP
78: html_DATA = $(pcrecpp_html)
79: endif
80:
81: # The Libtool libraries to install. We'll add to this later.
82: lib_LTLIBRARIES =
83:
84: # Unit tests you want to run when people type 'make check'.
85: # TESTS is for binary unit tests, check_SCRIPTS for script-based tests
86: TESTS =
87: check_SCRIPTS =
88: dist_noinst_SCRIPTS =
89:
90: # Some of the binaries we make are to be installed, and others are
91: # (non-user-visible) helper programs needed to build libpcre, libpcre16
92: # or libpcre32.
93: bin_PROGRAMS =
94: noinst_PROGRAMS =
95:
96: # Additional files to delete on 'make clean' and 'make maintainer-clean'.
97: CLEANFILES =
98: MAINTAINERCLEANFILES =
99:
100: # Additional files to bundle with the distribution, over and above what
101: # the Autotools include by default.
102: EXTRA_DIST =
103:
104: # These files contain additional m4 macros that are used by autoconf.
105: EXTRA_DIST += \
106: m4/ax_pthread.m4 m4/pcre_visibility.m4
107:
108: # These files contain maintenance information
109: EXTRA_DIST += \
110: doc/perltest.txt \
111: NON-UNIX-USE \
112: NON-AUTOTOOLS-BUILD \
113: HACKING
114:
115: # These files are used in the preparation of a release
116: EXTRA_DIST += \
117: PrepareRelease \
118: CheckMan \
119: CleanTxt \
120: Detrail \
121: 132html \
122: doc/index.html.src
123:
124: # These files are to do with building for Virtual Pascal
125: EXTRA_DIST += \
126: makevp.bat \
127: makevp_c.txt \
128: makevp_l.txt \
129: pcregexp.pas
130:
131: # These files are usable versions of pcre.h and config.h that are distributed
132: # for the benefit of people who are building PCRE manually, without the
133: # Autotools support.
134: EXTRA_DIST += \
135: pcre.h.generic \
136: config.h.generic
137:
138: # The only difference between pcre.h.in and pcre.h is the setting of the PCRE
139: # version number. Therefore, we can create the generic version just by copying.
140: pcre.h.generic: pcre.h.in configure.ac
141: rm -f $@
142: cp -p pcre.h $@
143:
144: # It is more complicated for config.h.generic. We need the version that results
145: # from a default configuration so as to get all the default values for PCRE
146: # configuration macros such as MATCH_LIMIT and NEWLINE. We can get this by
147: # doing a configure in a temporary directory. However, some trickery is needed,
148: # because the source directory may already be configured. If you just try
149: # running configure in a new directory, it complains. For this reason, we move
150: # config.status out of the way while doing the default configuration. The
151: # resulting config.h is munged by perl to put #ifdefs round any #defines for
152: # macros with values, and to #undef all boolean macros such as HAVE_xxx and
153: # SUPPORT_xxx. We also get rid of any gcc-specific visibility settings. Make
154: # sure that PCRE_EXP_DEFN is unset (in case it has visibility settings).
155: config.h.generic: configure.ac
156: rm -rf $@ _generic
157: mkdir _generic
158: cs=$(srcdir)/config.status; test ! -f $$cs || mv -f $$cs $$cs.aside
159: cd _generic && $(abs_top_srcdir)/configure || :
160: cs=$(srcdir)/config.status; test ! -f $$cs.aside || mv -f $$cs.aside $$cs
161: test -f _generic/config.h
162: perl -n \
163: -e 'BEGIN{$$blank=0;}' \
164: -e 'if(/PCRE_EXP_DEFN/){print"/* #undef PCRE_EXP_DEFN */\n";$$blank=0;next;}' \
165: -e 'if(/to make a symbol visible/){next;}' \
166: -e 'if(/__attribute__ \(\(visibility/){next;}' \
167: -e 'if(/LT_OBJDIR/){print"/* This is ignored unless you are using libtool. */\n";}' \
168: -e 'if(/^#define\s((?:HAVE|SUPPORT|STDC)_\w+)/){print"/* #undef $$1 */\n";$$blank=0;next;}' \
169: -e 'if(/^#define\s(?!PACKAGE|VERSION)(\w+)/){print"#ifndef $$1\n$$_#endif\n";$$blank=0;next;}' \
170: -e 'if(/^\s*$$/){print unless $$blank; $$blank=1;} else{print;$$blank=0;}' \
171: _generic/config.h >$@
172: rm -rf _generic
173:
174: MAINTAINERCLEANFILES += pcre.h.generic config.h.generic
175:
176: # These are the header files we'll install. We do not distribute pcre.h because
177: # it is generated from pcre.h.in.
178: nodist_include_HEADERS = \
179: pcre.h
180: include_HEADERS = \
181: pcreposix.h
182:
183: # These additional headers will be be installed if C++ support is enabled. We
184: # do not distribute pcrecpparg.h or pcre_stringpiece.h, as these are generated
185: # from corresponding .h.in files (which we do distribute).
186: if WITH_PCRE_CPP
187: nodist_include_HEADERS += \
188: pcrecpparg.h \
189: pcre_stringpiece.h
190: include_HEADERS += \
191: pcrecpp.h \
192: pcre_scanner.h
193: endif # WITH_PCRE_CPP
194:
195: bin_SCRIPTS = pcre-config
196:
197: ## ---------------------------------------------------------------
198: ## The dftables program is used to rebuild character tables before compiling
199: ## PCRE, if --enable-rebuild-chartables is specified. It is not a user-visible
200: ## program. The default (when --enable-rebuild-chartables is not specified) is
201: ## to copy a distributed set of tables that are defined for ASCII code. In this
202: ## case, dftables is not needed.
203:
204: if WITH_REBUILD_CHARTABLES
205:
206: noinst_PROGRAMS += dftables
207: dftables_SOURCES = dftables.c
208:
209: pcre_chartables.c: dftables$(EXEEXT)
210: ./dftables$(EXEEXT) $@
211: else
212:
213: pcre_chartables.c: $(srcdir)/pcre_chartables.c.dist
214: rm -f $@
215: $(LN_S) $(srcdir)/pcre_chartables.c.dist $@
216:
217: endif # WITH_REBUILD_CHARTABLES
218:
219: BUILT_SOURCES = pcre_chartables.c
220:
221: ## The main pcre library
222:
223: # Build the 8 bit library if it is enabled.
224: if WITH_PCRE8
225: lib_LTLIBRARIES += libpcre.la
226:
227: libpcre_la_SOURCES = \
228: pcre_byte_order.c \
229: pcre_compile.c \
230: pcre_config.c \
231: pcre_dfa_exec.c \
232: pcre_exec.c \
233: pcre_fullinfo.c \
234: pcre_get.c \
235: pcre_globals.c \
236: pcre_internal.h \
237: pcre_jit_compile.c \
238: pcre_maketables.c \
239: pcre_newline.c \
240: pcre_ord2utf8.c \
241: pcre_refcount.c \
242: pcre_string_utils.c \
243: pcre_study.c \
244: pcre_tables.c \
245: pcre_ucd.c \
246: pcre_valid_utf8.c \
247: pcre_version.c \
248: pcre_xclass.c \
249: ucp.h
250:
251: libpcre_la_CFLAGS = \
252: $(VISIBILITY_CFLAGS) \
253: $(AM_CFLAGS)
254:
255: libpcre_la_LIBADD =
256:
257: ## This file is generated as part of the building process, so don't distribute.
258: nodist_libpcre_la_SOURCES = \
259: pcre_chartables.c
260:
261: endif # WITH_PCRE8
262:
263: # Build the 16 bit library if it is enabled.
264: if WITH_PCRE16
265: lib_LTLIBRARIES += libpcre16.la
266: libpcre16_la_SOURCES = \
267: pcre16_byte_order.c \
268: pcre16_chartables.c \
269: pcre16_compile.c \
270: pcre16_config.c \
271: pcre16_dfa_exec.c \
272: pcre16_exec.c \
273: pcre16_fullinfo.c \
274: pcre16_get.c \
275: pcre16_globals.c \
276: pcre16_jit_compile.c \
277: pcre16_maketables.c \
278: pcre16_newline.c \
279: pcre16_ord2utf16.c \
280: pcre16_refcount.c \
281: pcre16_string_utils.c \
282: pcre16_study.c \
283: pcre16_tables.c \
284: pcre16_ucd.c \
285: pcre16_utf16_utils.c \
286: pcre16_valid_utf16.c \
287: pcre16_version.c \
288: pcre16_xclass.c
289:
290: libpcre16_la_CFLAGS = \
291: $(VISIBILITY_CFLAGS) \
292: $(AM_CFLAGS)
293:
294: libpcre16_la_LIBADD =
295:
296: ## This file is generated as part of the building process, so don't distribute.
297: nodist_libpcre16_la_SOURCES = \
298: pcre_chartables.c
299:
300: endif # WITH_PCRE16
301:
302: # Build the 32 bit library if it is enabled.
303: if WITH_PCRE32
304: lib_LTLIBRARIES += libpcre32.la
305: libpcre32_la_SOURCES = \
306: pcre32_byte_order.c \
307: pcre32_chartables.c \
308: pcre32_compile.c \
309: pcre32_config.c \
310: pcre32_dfa_exec.c \
311: pcre32_exec.c \
312: pcre32_fullinfo.c \
313: pcre32_get.c \
314: pcre32_globals.c \
315: pcre32_jit_compile.c \
316: pcre32_maketables.c \
317: pcre32_newline.c \
318: pcre32_ord2utf32.c \
319: pcre32_refcount.c \
320: pcre32_string_utils.c \
321: pcre32_study.c \
322: pcre32_tables.c \
323: pcre32_ucd.c \
324: pcre32_utf32_utils.c \
325: pcre32_valid_utf32.c \
326: pcre32_version.c \
327: pcre32_xclass.c
328:
329: libpcre32_la_CFLAGS = \
330: $(VISIBILITY_CFLAGS) \
331: $(AM_CFLAGS)
332:
333: libpcre32_la_LIBADD =
334:
335: ## This file is generated as part of the building process, so don't distribute.
336: nodist_libpcre32_la_SOURCES = \
337: pcre_chartables.c
338:
339: endif # WITH_PCRE32
340:
341: # The pcre_chartables.c.dist file is the default version of pcre_chartables.c,
342: # used unless --enable-rebuild-chartables is specified.
343: EXTRA_DIST += pcre_chartables.c.dist
344:
345: # The JIT compiler lives in a separate directory, but its files are #included
346: # when pcre_jit_compile.c is processed, so they must be distributed.
347: EXTRA_DIST += \
348: sljit/sljitConfig.h \
349: sljit/sljitConfigInternal.h \
350: sljit/sljitExecAllocator.c \
351: sljit/sljitLir.c \
352: sljit/sljitLir.h \
353: sljit/sljitNativeARM_Thumb2.c \
354: sljit/sljitNativeARM_v5.c \
355: sljit/sljitNativeMIPS_32.c \
356: sljit/sljitNativeMIPS_common.c \
357: sljit/sljitNativePPC_32.c \
358: sljit/sljitNativePPC_64.c \
359: sljit/sljitNativePPC_common.c \
360: sljit/sljitNativeSPARC_32.c \
361: sljit/sljitNativeSPARC_common.c \
362: sljit/sljitNativeX86_32.c \
363: sljit/sljitNativeX86_64.c \
364: sljit/sljitNativeX86_common.c \
365: sljit/sljitUtils.c
366:
367: if WITH_PCRE8
368: libpcre_la_LDFLAGS = $(EXTRA_LIBPCRE_LDFLAGS)
369: endif # WITH_PCRE8
370: if WITH_PCRE16
371: libpcre16_la_LDFLAGS = $(EXTRA_LIBPCRE16_LDFLAGS)
372: endif # WITH_PCRE16
373: if WITH_PCRE32
374: libpcre32_la_LDFLAGS = $(EXTRA_LIBPCRE32_LDFLAGS)
375: endif # WITH_PCRE32
376:
377: if WITH_VALGRIND
378: if WITH_PCRE8
379: libpcre_la_CFLAGS += $(VALGRIND_CFLAGS)
380: endif # WITH_PCRE8
381: if WITH_PCRE16
382: libpcre16_la_CFLAGS += $(VALGRIND_CFLAGS)
383: endif # WITH_PCRE16
384: if WITH_PCRE32
385: libpcre32_la_CFLAGS += $(VALGRIND_CFLAGS)
386: endif # WITH_PCRE32
387: endif # WITH_VALGRIND
388:
389: if WITH_GCOV
390: if WITH_PCRE8
391: libpcre_la_CFLAGS += $(GCOV_CFLAGS)
392: endif # WITH_PCRE8
393: if WITH_PCRE16
394: libpcre16_la_CFLAGS += $(GCOV_CFLAGS)
395: endif # WITH_PCRE16
396: if WITH_PCRE32
397: libpcre32_la_CFLAGS += $(GCOV_CFLAGS)
398: endif # WITH_PCRE32
399: endif # WITH_GCOV
400:
401: CLEANFILES += pcre_chartables.c
402:
403: ## If JIT support is enabled, arrange for the JIT test program to run.
404: if WITH_JIT
405: TESTS += pcre_jit_test
406: noinst_PROGRAMS += pcre_jit_test
407: pcre_jit_test_SOURCES = pcre_jit_test.c
408: pcre_jit_test_CFLAGS = $(AM_CFLAGS)
409: pcre_jit_test_LDADD =
410: if WITH_PCRE8
411: pcre_jit_test_LDADD += libpcre.la
412: endif # WITH_PCRE8
413: if WITH_PCRE16
414: pcre_jit_test_LDADD += libpcre16.la
415: endif # WITH_PCRE16
416: if WITH_PCRE32
417: pcre_jit_test_LDADD += libpcre32.la
418: endif # WITH_PCRE32
419: if WITH_GCOV
420: pcre_jit_test_CFLAGS += $(GCOV_CFLAGS)
421: pcre_jit_test_LDADD += $(GCOV_LIBS)
422: endif # WITH_GCOV
423: endif # WITH_JIT
424:
425: ## A version of the main pcre library that has a posix re API.
426: if WITH_PCRE8
427:
428: lib_LTLIBRARIES += libpcreposix.la
429: libpcreposix_la_SOURCES = \
430: pcreposix.c
431: libpcreposix_la_CFLAGS = $(VISIBILITY_CFLAGS) $(AM_CFLAGS)
432: libpcreposix_la_LDFLAGS = $(EXTRA_LIBPCREPOSIX_LDFLAGS)
433: libpcreposix_la_LIBADD = libpcre.la
434:
435: if WITH_GCOV
436: libpcreposix_la_CFLAGS += $(GCOV_CFLAGS)
437: endif # WITH_GCOV
438:
439: endif # WITH_PCRE8
440:
441: ## There's a C++ library as well.
442: if WITH_PCRE_CPP
443:
444: lib_LTLIBRARIES += libpcrecpp.la
445: libpcrecpp_la_SOURCES = \
446: pcrecpp_internal.h \
447: pcrecpp.cc \
448: pcre_scanner.cc \
449: pcre_stringpiece.cc
450: libpcrecpp_la_CXXFLAGS = $(VISIBILITY_CXXFLAGS) $(AM_CXXFLAGS)
451: libpcrecpp_la_LDFLAGS = $(EXTRA_LIBPCRECPP_LDFLAGS)
452: libpcrecpp_la_LIBADD = libpcre.la
453:
454: TESTS += pcrecpp_unittest
455: noinst_PROGRAMS += pcrecpp_unittest
456: pcrecpp_unittest_SOURCES = pcrecpp_unittest.cc
457: pcrecpp_unittest_CXXFLAGS = $(AM_CXXFLAGS)
458: pcrecpp_unittest_LDADD = libpcrecpp.la
459:
460: TESTS += pcre_scanner_unittest
461: noinst_PROGRAMS += pcre_scanner_unittest
462: pcre_scanner_unittest_SOURCES = pcre_scanner_unittest.cc
463: pcre_scanner_unittest_CXXFLAGS = $(AM_CXXFLAGS)
464: pcre_scanner_unittest_LDADD = libpcrecpp.la
465:
466: TESTS += pcre_stringpiece_unittest
467: noinst_PROGRAMS += pcre_stringpiece_unittest
468: pcre_stringpiece_unittest_SOURCES = pcre_stringpiece_unittest.cc
469: pcre_stringpiece_unittest_CXXFLAGS = $(AM_CXXFLAGS)
470: pcre_stringpiece_unittest_LDADD = libpcrecpp.la
471:
472: if WITH_GCOV
473: libpcrecpp_la_CXXFLAGS += $(GCOV_CXXFLAGS)
474: pcrecpp_unittest_LDADD += $(GCOV_LIBS)
475: pcre_scanner_unittest_LDADD += $(GCOV_LIBS)
476: pcre_stringpiece_unittest_LDADD += $(GCOV_LIBS)
477: endif # WITH_GCOV
478:
479: endif # WITH_PCRE_CPP
480:
481: ## The main unit tests
482:
483: # Each unit test is a binary plus a script that runs that binary in various
484: # ways. We install these test binaries in case folks find it helpful.
485:
486: TESTS += RunTest
487: dist_noinst_SCRIPTS += RunTest
488: EXTRA_DIST += RunTest.bat
489: bin_PROGRAMS += pcretest
490: pcretest_SOURCES = pcretest.c
491: pcretest_CFLAGS = $(AM_CFLAGS)
492: pcretest_LDADD = $(LIBREADLINE)
493: if WITH_PCRE8
494: pcretest_SOURCES += pcre_printint.c
495: pcretest_LDADD += libpcre.la libpcreposix.la
496: endif # WITH_PCRE8
497: if WITH_PCRE16
498: pcretest_SOURCES += pcre16_printint.c
499: pcretest_LDADD += libpcre16.la
500: endif # WITH_PCRE16
501: if WITH_PCRE32
502: pcretest_SOURCES += pcre32_printint.c
503: pcretest_LDADD += libpcre32.la
504: endif # WITH_PCRE32
505: if WITH_VALGRIND
506: pcretest_CFLAGS += $(VALGRIND_CFLAGS)
507: endif # WITH_VALGRIND
508: if WITH_GCOV
509: pcretest_CFLAGS += $(GCOV_CFLAGS)
510: pcretest_LDADD += $(GCOV_LIBS)
511: endif # WITH_GCOV
512:
513: if WITH_PCRE8
514: TESTS += RunGrepTest
515: dist_noinst_SCRIPTS += RunGrepTest
516: bin_PROGRAMS += pcregrep
517: pcregrep_SOURCES = pcregrep.c
518: pcregrep_CFLAGS = $(AM_CFLAGS)
519: pcregrep_LDADD = $(LIBZ) $(LIBBZ2)
520: pcregrep_LDADD += libpcre.la libpcreposix.la
521: if WITH_GCOV
522: pcregrep_CFLAGS += $(GCOV_CFLAGS)
523: pcregrep_LDADD += $(GCOV_LIBS)
524: endif # WITH_GCOV
525: endif # WITH_PCRE8
526:
527: EXTRA_DIST += \
528: testdata/grepbinary \
529: testdata/grepfilelist \
530: testdata/grepinput \
531: testdata/grepinput3 \
532: testdata/grepinput8 \
533: testdata/grepinputv \
534: testdata/grepinputx \
535: testdata/greplist \
536: testdata/grepoutput \
537: testdata/grepoutput8 \
538: testdata/grepoutputN \
539: testdata/greppatN4 \
540: testdata/saved16 \
541: testdata/saved16BE-1 \
542: testdata/saved16BE-2 \
543: testdata/saved16LE-1 \
544: testdata/saved16LE-2 \
545: testdata/saved32 \
546: testdata/saved32BE-1 \
547: testdata/saved32BE-2 \
548: testdata/saved32LE-1 \
549: testdata/saved32LE-2 \
550: testdata/saved8 \
551: testdata/testinput1 \
552: testdata/testinput2 \
553: testdata/testinput3 \
554: testdata/testinput4 \
555: testdata/testinput5 \
556: testdata/testinput6 \
557: testdata/testinput7 \
558: testdata/testinput8 \
559: testdata/testinput9 \
560: testdata/testinput10 \
561: testdata/testinput11 \
562: testdata/testinput12 \
563: testdata/testinput13 \
564: testdata/testinput14 \
565: testdata/testinput15 \
566: testdata/testinput16 \
567: testdata/testinput17 \
568: testdata/testinput18 \
569: testdata/testinput19 \
570: testdata/testinput20 \
571: testdata/testinput21 \
572: testdata/testinput22 \
573: testdata/testinput23 \
574: testdata/testinput24 \
575: testdata/testinput25 \
576: testdata/testinput26 \
577: testdata/testinputEBC \
578: testdata/testoutput1 \
579: testdata/testoutput2 \
580: testdata/testoutput3 \
581: testdata/testoutput4 \
582: testdata/testoutput5 \
583: testdata/testoutput6 \
584: testdata/testoutput7 \
585: testdata/testoutput8 \
586: testdata/testoutput9 \
587: testdata/testoutput10 \
588: testdata/testoutput11-8 \
589: testdata/testoutput11-16 \
590: testdata/testoutput11-32 \
591: testdata/testoutput12 \
592: testdata/testoutput13 \
593: testdata/testoutput14 \
594: testdata/testoutput15 \
595: testdata/testoutput16 \
596: testdata/testoutput17 \
597: testdata/testoutput18-16 \
598: testdata/testoutput18-32 \
599: testdata/testoutput19 \
600: testdata/testoutput20 \
601: testdata/testoutput21-16 \
602: testdata/testoutput21-32 \
603: testdata/testoutput22-16 \
604: testdata/testoutput22-32 \
605: testdata/testoutput23 \
606: testdata/testoutput24 \
607: testdata/testoutput25 \
608: testdata/testoutput26 \
609: testdata/testoutputEBC \
610: testdata/wintestinput3 \
611: testdata/wintestoutput3 \
612: perltest.pl
613:
614: CLEANFILES += \
615: testsavedregex \
616: teststderr \
617: testtemp* \
618: testtry \
619: testNinput
620:
621:
622: # PCRE demonstration program. No longer built automatcally. The point is that
623: # the users should build it themselves. So just distribute the source.
624: # noinst_PROGRAMS += pcredemo
625: # pcredemo_SOURCES = pcredemo.c
626: # pcredemo_LDADD = libpcre.la
627:
628: EXTRA_DIST += pcredemo.c
629:
630:
631: ## Utility rules, documentation, etc.
632:
633: # A compatibility line, the old build system worked with 'make test'
634: test: check ;
635:
636:
637: # A PCRE user submitted the following addition, saying that it "will allow
638: # anyone using the 'mingw32' compiler to simply type 'make pcre.dll' and get a
639: # nice DLL for Windows use". (It is used by the pcre.dll target.)
640: DLL_OBJS= pcre_byte_order.o pcre_compile.o pcre_config.o \
641: pcre_dfa_exec.o pcre_exec.o pcre_fullinfo.o pcre_get.o \
642: pcre_globals.o pcre_jit_compile.o pcre_maketables.o \
643: pcre_newline.o pcre_ord2utf8.o pcre_refcount.o \
644: pcre_study.o pcre_tables.o pcre_ucd.o \
645: pcre_valid_utf8.o pcre_version.o pcre_chartables.o \
646: pcre_xclass.o
647:
648: # A PCRE user submitted the following addition, saying that it "will allow
649: # anyone using the 'mingw32' compiler to simply type 'make pcre.dll' and get a
650: # nice DLL for Windows use".
651: pcre.dll: $(DLL_OBJS)
652: $(CC) -shared -o pcre.dll -Wl,"--strip-all" -Wl,"--export-all-symbols" $(DLL_OBJS)
653:
654:
655: # We have .pc files for pkg-config users.
656: pkgconfigdir = $(libdir)/pkgconfig
657: pkgconfig_DATA = libpcre.pc libpcreposix.pc
658: if WITH_PCRE16
659: pkgconfig_DATA += libpcre16.pc
660: endif
661: if WITH_PCRE32
662: pkgconfig_DATA += libpcre32.pc
663: endif
664: if WITH_PCRE_CPP
665: pkgconfig_DATA += libpcrecpp.pc
666: endif
667:
668: # Note that pcrecpp.3 is not in this list, but is included separately below.
669:
670: dist_man_MANS = \
671: doc/pcre-config.1 \
672: doc/pcre.3 \
673: doc/pcre16.3 \
674: doc/pcre32.3 \
675: doc/pcre_assign_jit_stack.3 \
676: doc/pcre_compile.3 \
677: doc/pcre_compile2.3 \
678: doc/pcre_config.3 \
679: doc/pcre_copy_named_substring.3 \
680: doc/pcre_copy_substring.3 \
681: doc/pcre_dfa_exec.3 \
682: doc/pcre_exec.3 \
683: doc/pcre_free_study.3 \
684: doc/pcre_free_substring.3 \
685: doc/pcre_free_substring_list.3 \
686: doc/pcre_fullinfo.3 \
687: doc/pcre_get_named_substring.3 \
688: doc/pcre_get_stringnumber.3 \
689: doc/pcre_get_stringtable_entries.3 \
690: doc/pcre_get_substring.3 \
691: doc/pcre_get_substring_list.3 \
692: doc/pcre_jit_exec.3 \
693: doc/pcre_jit_stack_alloc.3 \
694: doc/pcre_jit_stack_free.3 \
695: doc/pcre_maketables.3 \
696: doc/pcre_pattern_to_host_byte_order.3 \
697: doc/pcre_refcount.3 \
698: doc/pcre_study.3 \
699: doc/pcre_utf16_to_host_byte_order.3 \
700: doc/pcre_utf32_to_host_byte_order.3 \
701: doc/pcre_version.3 \
702: doc/pcreapi.3 \
703: doc/pcrebuild.3 \
704: doc/pcrecallout.3 \
705: doc/pcrecompat.3 \
706: doc/pcredemo.3 \
707: doc/pcregrep.1 \
708: doc/pcrejit.3 \
709: doc/pcrelimits.3 \
710: doc/pcrematching.3 \
711: doc/pcrepartial.3 \
712: doc/pcrepattern.3 \
713: doc/pcreperform.3 \
714: doc/pcreposix.3 \
715: doc/pcreprecompile.3 \
716: doc/pcresample.3 \
717: doc/pcrestack.3 \
718: doc/pcresyntax.3 \
719: doc/pcretest.1 \
720: doc/pcreunicode.3
721:
722: # Arrange for the per-function man pages to have 16- and 32-bit names as well.
723: install-data-hook:
724: ln -sf pcre_assign_jit_stack.3 $(DESTDIR)$(man3dir)/pcre16_assign_jit_stack.3
725: ln -sf pcre_compile.3 $(DESTDIR)$(man3dir)/pcre16_compile.3
726: ln -sf pcre_compile2.3 $(DESTDIR)$(man3dir)/pcre16_compile2.3
727: ln -sf pcre_config.3 $(DESTDIR)$(man3dir)/pcre16_config.3
728: ln -sf pcre_copy_named_substring.3 $(DESTDIR)$(man3dir)/pcre16_copy_named_substring.3
729: ln -sf pcre_copy_substring.3 $(DESTDIR)$(man3dir)/pcre16_copy_substring.3
730: ln -sf pcre_dfa_exec.3 $(DESTDIR)$(man3dir)/pcre16_dfa_exec.3
731: ln -sf pcre_exec.3 $(DESTDIR)$(man3dir)/pcre16_exec.3
732: ln -sf pcre_free_study.3 $(DESTDIR)$(man3dir)/pcre16_free_study.3
733: ln -sf pcre_free_substring.3 $(DESTDIR)$(man3dir)/pcre16_free_substring.3
734: ln -sf pcre_free_substring_list.3 $(DESTDIR)$(man3dir)/pcre16_free_substring_list.3
735: ln -sf pcre_fullinfo.3 $(DESTDIR)$(man3dir)/pcre16_fullinfo.3
736: ln -sf pcre_get_named_substring.3 $(DESTDIR)$(man3dir)/pcre16_get_named_substring.3
737: ln -sf pcre_get_stringnumber.3 $(DESTDIR)$(man3dir)/pcre16_get_stringnumber.3
738: ln -sf pcre_get_stringtable_entries.3 $(DESTDIR)$(man3dir)/pcre16_get_stringtable_entries.3
739: ln -sf pcre_get_substring.3 $(DESTDIR)$(man3dir)/pcre16_get_substring.3
740: ln -sf pcre_get_substring_list.3 $(DESTDIR)$(man3dir)/pcre16_get_substring_list.3
741: ln -sf pcre_jit_exec.3 $(DESTDIR)$(man3dir)/pcre16_jit_exec.3
742: ln -sf pcre_jit_stack_alloc.3 $(DESTDIR)$(man3dir)/pcre16_jit_stack_alloc.3
743: ln -sf pcre_jit_stack_free.3 $(DESTDIR)$(man3dir)/pcre16_jit_stack_free.3
744: ln -sf pcre_maketables.3 $(DESTDIR)$(man3dir)/pcre16_maketables.3
745: ln -sf pcre_pattern_to_host_byte_order.3 $(DESTDIR)$(man3dir)/pcre16_pattern_to_host_byte_order.3
746: ln -sf pcre_refcount.3 $(DESTDIR)$(man3dir)/pcre16_refcount.3
747: ln -sf pcre_study.3 $(DESTDIR)$(man3dir)/pcre16_study.3
748: ln -sf pcre_utf16_to_host_byte_order.3 $(DESTDIR)$(man3dir)/pcre16_utf16_to_host_byte_order.3
749: ln -sf pcre_version.3 $(DESTDIR)$(man3dir)/pcre16_version.3
750: ln -sf pcre_assign_jit_stack.3 $(DESTDIR)$(man3dir)/pcre32_assign_jit_stack.3
751: ln -sf pcre_compile.3 $(DESTDIR)$(man3dir)/pcre32_compile.3
752: ln -sf pcre_compile2.3 $(DESTDIR)$(man3dir)/pcre32_compile2.3
753: ln -sf pcre_config.3 $(DESTDIR)$(man3dir)/pcre32_config.3
754: ln -sf pcre_copy_named_substring.3 $(DESTDIR)$(man3dir)/pcre32_copy_named_substring.3
755: ln -sf pcre_copy_substring.3 $(DESTDIR)$(man3dir)/pcre32_copy_substring.3
756: ln -sf pcre_dfa_exec.3 $(DESTDIR)$(man3dir)/pcre32_dfa_exec.3
757: ln -sf pcre_exec.3 $(DESTDIR)$(man3dir)/pcre32_exec.3
758: ln -sf pcre_free_study.3 $(DESTDIR)$(man3dir)/pcre32_free_study.3
759: ln -sf pcre_free_substring.3 $(DESTDIR)$(man3dir)/pcre32_free_substring.3
760: ln -sf pcre_free_substring_list.3 $(DESTDIR)$(man3dir)/pcre32_free_substring_list.3
761: ln -sf pcre_fullinfo.3 $(DESTDIR)$(man3dir)/pcre32_fullinfo.3
762: ln -sf pcre_get_named_substring.3 $(DESTDIR)$(man3dir)/pcre32_get_named_substring.3
763: ln -sf pcre_get_stringnumber.3 $(DESTDIR)$(man3dir)/pcre32_get_stringnumber.3
764: ln -sf pcre_get_stringtable_entries.3 $(DESTDIR)$(man3dir)/pcre32_get_stringtable_entries.3
765: ln -sf pcre_get_substring.3 $(DESTDIR)$(man3dir)/pcre32_get_substring.3
766: ln -sf pcre_get_substring_list.3 $(DESTDIR)$(man3dir)/pcre32_get_substring_list.3
767: ln -sf pcre_jit_exec.3 $(DESTDIR)$(man3dir)/pcre32_jit_exec.3
768: ln -sf pcre_jit_stack_alloc.3 $(DESTDIR)$(man3dir)/pcre32_jit_stack_alloc.3
769: ln -sf pcre_jit_stack_free.3 $(DESTDIR)$(man3dir)/pcre32_jit_stack_free.3
770: ln -sf pcre_maketables.3 $(DESTDIR)$(man3dir)/pcre32_maketables.3
771: ln -sf pcre_pattern_to_host_byte_order.3 $(DESTDIR)$(man3dir)/pcre32_pattern_to_host_byte_order.3
772: ln -sf pcre_refcount.3 $(DESTDIR)$(man3dir)/pcre32_refcount.3
773: ln -sf pcre_study.3 $(DESTDIR)$(man3dir)/pcre32_study.3
774: ln -sf pcre_utf32_to_host_byte_order.3 $(DESTDIR)$(man3dir)/pcre32_utf32_to_host_byte_order.3
775: ln -sf pcre_version.3 $(DESTDIR)$(man3dir)/pcre32_version.3
776:
777: pcrecpp_man = doc/pcrecpp.3
778: EXTRA_DIST += $(pcrecpp_man)
779:
780: if WITH_PCRE_CPP
781: man_MANS = $(pcrecpp_man)
782: endif
783:
784: # gcov/lcov code coverage reporting
785:
786: if WITH_GCOV
787:
788: # Coverage reporting targets:
789: #
790: # coverage: Create a coverage report from 'make check'
791: # coverage-baseline: Capture baseline coverage information
792: # coverage-reset: This zeros the coverage counters only
793: # coverage-report: This creates the coverage report only
794: # coverage-clean-report: This removes the generated coverage report
795: # without cleaning the coverage data itself
796: # coverage-clean-data: This removes the captured coverage data without
797: # removing the coverage files created at compile time (*.gcno)
798: # coverage-clean: This cleans all coverage data including the generated
799: # coverage report.
800:
801: COVERAGE_TEST_NAME = $(PACKAGE)
802: COVERAGE_NAME = $(PACKAGE)-$(VERSION)
803: COVERAGE_OUTPUT_FILE = $(COVERAGE_NAME)-coverage.info
804: COVERAGE_OUTPUT_DIR = $(COVERAGE_NAME)-coverage
805: COVERAGE_LCOV_EXTRA_FLAGS =
806: COVERAGE_GENHTML_EXTRA_FLAGS =
807:
808: coverage_quiet = $(coverage_quiet_$(V))
809: coverage_quiet_ = $(coverage_quiet_$(AM_DEFAULT_VERBOSITY))
810: coverage_quiet_0 = --quiet
811:
812: coverage-check: all
813: -$(MAKE) $(AM_MAKEFLAGS) -k check
814:
815: coverage-baseline:
816: $(LCOV) $(coverage_quiet) \
817: --directory $(top_builddir) \
818: --output-file "$(COVERAGE_OUTPUT_FILE)" \
819: --capture \
820: --initial
821:
822: coverage-report:
823: $(LCOV) $(coverage_quiet) \
824: --directory $(top_builddir) \
825: --capture \
826: --output-file "$(COVERAGE_OUTPUT_FILE).tmp" \
827: --test-name "$(COVERAGE_TEST_NAME)" \
828: --no-checksum \
829: --compat-libtool \
830: $(COVERAGE_LCOV_EXTRA_FLAGS)
831: $(LCOV) $(coverage_quiet) \
832: --directory $(top_builddir) \
833: --output-file "$(COVERAGE_OUTPUT_FILE)" \
834: --remove "$(COVERAGE_OUTPUT_FILE).tmp" \
835: "/tmp/*" \
836: "/usr/include/*" \
837: "$(includedir)/*"
838: -@rm -f "$(COVERAGE_OUTPUT_FILE).tmp"
839: LANG=C $(GENHTML) $(coverage_quiet) \
840: --prefix $(top_builddir) \
841: --output-directory "$(COVERAGE_OUTPUT_DIR)" \
842: --title "$(PACKAGE) $(VERSION) Code Coverage Report" \
843: --show-details "$(COVERAGE_OUTPUT_FILE)" \
844: --legend \
845: $(COVERAGE_GENHTML_EXTRA_FLAGS)
846: @echo "Code coverage report written to file://$(abs_builddir)/$(COVERAGE_OUTPUT_DIR)/index.html"
847:
848: coverage-reset:
849: -$(LCOV) $(coverage_quiet) --zerocounters --directory $(top_builddir)
850:
851: coverage-clean-report:
852: -rm -f "$(COVERAGE_OUTPUT_FILE)" "$(COVERAGE_OUTPUT_FILE).tmp"
853: -rm -rf "$(COVERAGE_OUTPUT_DIR)"
854:
855: coverage-clean-data:
856: -find $(top_builddir) -name "*.gcda" -delete
857:
858: coverage-clean: coverage-reset coverage-clean-report coverage-clean-data
859: -find $(top_builddir) -name "*.gcno" -delete
860:
861: coverage-distclean: coverage-clean
862:
863: coverage: coverage-reset coverage-baseline coverage-check coverage-report
864: clean-local: coverage-clean
865: distclean-local: coverage-distclean
866:
867: .PHONY: coverage coverage-baseline coverage-check coverage-report coverage-reset coverage-clean-report coverage-clean-data coverage-clean coverage-distclean
868:
869: else
870:
871: coverage:
872: @echo "Configuring with --enable-coverage required to generate code coverage report."
873:
874: endif # WITH_GCOV
875:
876: ## CMake support
877:
878: EXTRA_DIST += \
879: cmake/COPYING-CMAKE-SCRIPTS \
880: cmake/FindPackageHandleStandardArgs.cmake \
881: cmake/FindReadline.cmake \
882: cmake/FindEditline.cmake \
883: CMakeLists.txt \
884: config-cmake.h.in
885:
886: ## end Makefile.am
887:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>