blob: 1cbb91affbe12b639ad1084a3fcd719e12b7e57d [file] [log] [blame]
Tristan Matthews04616462013-11-14 16:09:34 -05001## Process this file with automake to produce Makefile.in.
2
3ACLOCAL_AMFLAGS = -I m4
4
5dist_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
17dist_html_DATA = \
18 doc/html/index.html \
19 doc/html/pcre.html \
20 doc/html/pcre-config.html \
21 doc/html/pcre_assign_jit_stack.html \
22 doc/html/pcre_compile.html \
23 doc/html/pcre_compile2.html \
24 doc/html/pcre_config.html \
25 doc/html/pcre_copy_named_substring.html \
26 doc/html/pcre_copy_substring.html \
27 doc/html/pcre_dfa_exec.html \
28 doc/html/pcre_exec.html \
29 doc/html/pcre_free_study.html \
30 doc/html/pcre_free_substring.html \
31 doc/html/pcre_free_substring_list.html \
32 doc/html/pcre_fullinfo.html \
33 doc/html/pcre_get_named_substring.html \
34 doc/html/pcre_get_stringnumber.html \
35 doc/html/pcre_get_stringtable_entries.html \
36 doc/html/pcre_get_substring.html \
37 doc/html/pcre_get_substring_list.html \
38 doc/html/pcre_info.html \
39 doc/html/pcre_jit_stack_alloc.html \
40 doc/html/pcre_jit_stack_free.html \
41 doc/html/pcre_maketables.html \
42 doc/html/pcre_refcount.html \
43 doc/html/pcre_study.html \
44 doc/html/pcre_version.html \
45 doc/html/pcreapi.html \
46 doc/html/pcrebuild.html \
47 doc/html/pcrecallout.html \
48 doc/html/pcrecompat.html \
49 doc/html/pcredemo.html \
50 doc/html/pcregrep.html \
51 doc/html/pcrejit.html \
52 doc/html/pcrelimits.html \
53 doc/html/pcrematching.html \
54 doc/html/pcrepartial.html \
55 doc/html/pcrepattern.html \
56 doc/html/pcreperform.html \
57 doc/html/pcreposix.html \
58 doc/html/pcreprecompile.html \
59 doc/html/pcresample.html \
60 doc/html/pcrestack.html \
61 doc/html/pcresyntax.html \
62 doc/html/pcretest.html \
63 doc/html/pcreunicode.html
64
65pcrecpp_html = doc/html/pcrecpp.html
66dist_noinst_DATA = $(pcrecpp_html)
67
68if WITH_PCRE_CPP
69html_DATA = $(pcrecpp_html)
70endif
71
72# The Libtool libraries to install. We'll add to this later.
73lib_LTLIBRARIES =
74
75# Unit tests you want to run when people type 'make check'.
76# TESTS is for binary unit tests, check_SCRIPTS for script-based tests
77TESTS =
78check_SCRIPTS =
79dist_noinst_SCRIPTS =
80
81# Some of the binaries we make are to be installed, and others are
82# (non-user-visible) helper programs needed to build libpcre.
83bin_PROGRAMS =
84noinst_PROGRAMS =
85
86# Additional files to delete on 'make clean' and 'make maintainer-clean'.
87CLEANFILES =
88MAINTAINERCLEANFILES =
89
90# Additional files to bundle with the distribution, over and above what
91# the Autotools include by default.
92EXTRA_DIST =
93
94# These files contain maintenance information
95EXTRA_DIST += \
96 doc/perltest.txt \
97 NON-UNIX-USE \
98 HACKING
99
100# These files are used in the preparation of a release
101EXTRA_DIST += \
102 PrepareRelease \
103 CheckMan \
104 CleanTxt \
105 Detrail \
106 132html \
107 doc/index.html.src
108
109# These files are to do with building for Virtual Pascal
110EXTRA_DIST += \
111 makevp.bat \
112 makevp_c.txt \
113 makevp_l.txt \
114 pcregexp.pas
115
116# These files are usable versions of pcre.h and config.h that are distributed
117# for the benefit of people who are building PCRE manually, without the
118# Autotools support.
119EXTRA_DIST += \
120 pcre.h.generic \
121 config.h.generic
122
123pcre.h.generic: configure.ac
124 rm -f $@
125 cp -p pcre.h $@
126
127MAINTAINERCLEANFILES += pcre.h.generic
128
129# These are the header files we'll install. We do not distribute pcre.h because
130# it is generated from pcre.h.in.
131nodist_include_HEADERS = \
132 pcre.h
133include_HEADERS = \
134 pcreposix.h
135
136# These additional headers will be be installed if C++ support is enabled. We
137# do not distribute pcrecpparg.h or pcre_stringpiece.h, as these are generated
138# from corresponding .h.in files (which we do distribute).
139if WITH_PCRE_CPP
140nodist_include_HEADERS += \
141 pcrecpparg.h \
142 pcre_stringpiece.h
143include_HEADERS += \
144 pcrecpp.h \
145 pcre_scanner.h
146endif # WITH_PCRE_CPP
147
148bin_SCRIPTS = pcre-config
149
150## ---------------------------------------------------------------
151## The dftables program is used to rebuild character tables before compiling
152## PCRE, if --enable-rebuild-chartables is specified. It is not a user-visible
153## program. The default (when --enable-rebuild-chartables is not specified) is
154## to copy a distributed set of tables that are defined for ASCII code. In this
155## case, dftables is not needed.
156
157if WITH_REBUILD_CHARTABLES
158
159noinst_PROGRAMS += dftables
160dftables_SOURCES = dftables.c
161
162pcre_chartables.c: dftables$(EXEEXT)
163 ./dftables$(EXEEXT) $@
164else
165
166pcre_chartables.c: $(srcdir)/pcre_chartables.c.dist
167 rm -f $@
168 $(LN_S) $(srcdir)/pcre_chartables.c.dist $@
169
170endif # WITH_REBUILD_CHARTABLES
171
172
173## The main pcre library
174lib_LTLIBRARIES += libpcre.la
175libpcre_la_SOURCES = \
176 pcre_compile.c \
177 pcre_config.c \
178 pcre_dfa_exec.c \
179 pcre_exec.c \
180 pcre_fullinfo.c \
181 pcre_get.c \
182 pcre_globals.c \
183 pcre_info.c \
184 pcre_internal.h \
185 pcre_jit_compile.c \
186 pcre_maketables.c \
187 pcre_newline.c \
188 pcre_ord2utf8.c \
189 pcre_refcount.c \
190 pcre_study.c \
191 pcre_tables.c \
192 pcre_try_flipped.c \
193 pcre_ucd.c \
194 pcre_valid_utf8.c \
195 pcre_version.c \
196 pcre_xclass.c \
197 ucp.h
198
199## This file is generated as part of the building process, so don't distribute.
200nodist_libpcre_la_SOURCES = \
201 pcre_chartables.c
202
203# The pcre_printint.src file is #included by some source files, so it must be
204# distributed. The pcre_chartables.c.dist file is the default version of
205# pcre_chartables.c, used unless --enable-rebuild-chartables is specified.
206EXTRA_DIST += pcre_printint.src pcre_chartables.c.dist
207
208# The JIT compiler lives in a separate directory, but its files are #included
209# when pcre_jit_compile.c is processed, so they must be distributed.
210EXTRA_DIST += \
211 sljit/sljitConfig.h \
212 sljit/sljitConfigInternal.h \
213 sljit/sljitExecAllocator.c \
214 sljit/sljitLir.c \
215 sljit/sljitLir.h \
216 sljit/sljitNativeARM_Thumb2.c \
217 sljit/sljitNativeARM_v5.c \
218 sljit/sljitNativeMIPS_32.c \
219 sljit/sljitNativeMIPS_common.c \
220 sljit/sljitNativePPC_32.c \
221 sljit/sljitNativePPC_64.c \
222 sljit/sljitNativePPC_common.c \
223 sljit/sljitNativeX86_32.c \
224 sljit/sljitNativeX86_64.c \
225 sljit/sljitNativeX86_common.c \
226 sljit/sljitUtils.c
227
228libpcre_la_LDFLAGS = $(EXTRA_LIBPCRE_LDFLAGS)
229
230CLEANFILES += pcre_chartables.c
231
232## If JIT support is enabled, arrange for the JIT test program to run.
233if WITH_JIT
234TESTS += pcre_jit_test
235noinst_PROGRAMS += pcre_jit_test
236pcre_jit_test_SOURCES = pcre_jit_test.c
237pcre_jit_test_LDADD = libpcre.la
238endif # WITH_JIT
239
240## A version of the main pcre library that has a posix re API.
241lib_LTLIBRARIES += libpcreposix.la
242libpcreposix_la_SOURCES = \
243 pcreposix.c
244libpcreposix_la_LDFLAGS = $(EXTRA_LIBPCREPOSIX_LDFLAGS)
245libpcreposix_la_LIBADD = libpcre.la
246
247## There's a C++ library as well.
248if WITH_PCRE_CPP
249
250lib_LTLIBRARIES += libpcrecpp.la
251libpcrecpp_la_SOURCES = \
252 pcrecpp_internal.h \
253 pcrecpp.cc \
254 pcre_scanner.cc \
255 pcre_stringpiece.cc
256libpcrecpp_la_LDFLAGS = $(EXTRA_LIBPCRECPP_LDFLAGS)
257libpcrecpp_la_LIBADD = libpcre.la
258
259TESTS += pcrecpp_unittest
260noinst_PROGRAMS += pcrecpp_unittest
261pcrecpp_unittest_SOURCES = pcrecpp_unittest.cc
262pcrecpp_unittest_LDADD = libpcrecpp.la
263
264TESTS += pcre_scanner_unittest
265noinst_PROGRAMS += pcre_scanner_unittest
266pcre_scanner_unittest_SOURCES = pcre_scanner_unittest.cc
267pcre_scanner_unittest_LDADD = libpcrecpp.la
268
269TESTS += pcre_stringpiece_unittest
270noinst_PROGRAMS += pcre_stringpiece_unittest
271pcre_stringpiece_unittest_SOURCES = pcre_stringpiece_unittest.cc
272pcre_stringpiece_unittest_LDADD = libpcrecpp.la
273
274endif # WITH_PCRE_CPP
275
276## The main unit tests
277
278# Each unit test is a binary plus a script that runs that binary in various
279# ways. We install these test binaries in case folks find it helpful.
280
281TESTS += RunTest
282dist_noinst_SCRIPTS += RunTest
283EXTRA_DIST += RunTest.bat
284bin_PROGRAMS += pcretest
285pcretest_SOURCES = pcretest.c
286pcretest_LDADD = libpcreposix.la $(LIBREADLINE)
287
288TESTS += RunGrepTest
289dist_noinst_SCRIPTS += RunGrepTest
290bin_PROGRAMS += pcregrep
291pcregrep_SOURCES = pcregrep.c
292pcregrep_LDADD = libpcreposix.la $(LIBZ) $(LIBBZ2)
293
294EXTRA_DIST += \
295 testdata/grepinput \
296 testdata/grepinput3 \
297 testdata/grepinput8 \
298 testdata/grepinputv \
299 testdata/grepinputx \
300 testdata/greplist \
301 testdata/grepoutput \
302 testdata/grepoutput8 \
303 testdata/grepoutputN \
304 testdata/testinput1 \
305 testdata/testinput2 \
306 testdata/testinput3 \
307 testdata/testinput4 \
308 testdata/testinput5 \
309 testdata/testinput6 \
310 testdata/testinput7 \
311 testdata/testinput8 \
312 testdata/testinput9 \
313 testdata/testinput10 \
314 testdata/testinput11 \
315 testdata/testinput12 \
316 testdata/testinput13 \
317 testdata/testinput14 \
318 testdata/testinput15 \
319 testdata/testoutput1 \
320 testdata/testoutput2 \
321 testdata/testoutput3 \
322 testdata/testoutput4 \
323 testdata/testoutput5 \
324 testdata/testoutput6 \
325 testdata/testoutput7 \
326 testdata/testoutput8 \
327 testdata/testoutput9 \
328 testdata/testoutput10 \
329 testdata/testoutput11 \
330 testdata/testoutput12 \
331 testdata/testoutput13 \
332 testdata/testoutput14 \
333 testdata/testoutput15 \
334 testdata/wintestinput3 \
335 testdata/wintestoutput3 \
336 perltest.pl
337
338CLEANFILES += \
339 testsavedregex \
340 teststderr \
341 testtry \
342 testNinput
343
344
345# PCRE demonstration program. No longer built automatcally. The point is that
346# the users should build it themselves. So just distribute the source.
347# noinst_PROGRAMS += pcredemo
348# pcredemo_SOURCES = pcredemo.c
349# pcredemo_LDADD = libpcre.la
350
351EXTRA_DIST += pcredemo.c
352
353
354## Utility rules, documentation, etc.
355
356# A compatibility line, the old build system worked with 'make test'
357test: check ;
358
359
360# A PCRE user submitted the following addition, saying that it "will allow
361# anyone using the 'mingw32' compiler to simply type 'make pcre.dll' and get a
362# nice DLL for Windows use". (It is used by the pcre.dll target.)
363DLL_OBJS= pcre_compile.o pcre_config.o \
364 pcre_dfa_exec.o pcre_exec.o pcre_fullinfo.o pcre_get.o \
365 pcre_globals.o pcre_info.o pcre_jit_compile.o pcre_maketables.o \
366 pcre_newline.o pcre_ord2utf8.o pcre_refcount.o \
367 pcre_study.o pcre_tables.o pcre_try_flipped.o \
368 pcre_ucd.o pcre_valid_utf8.o pcre_version.o \
369 pcre_chartables.o \
370 pcre_xclass.o
371
372# A PCRE user submitted the following addition, saying that it "will allow
373# anyone using the 'mingw32' compiler to simply type 'make pcre.dll' and get a
374# nice DLL for Windows use".
375pcre.dll: $(DLL_OBJS)
376 $(CC) -shared -o pcre.dll -Wl,"--strip-all" -Wl,"--export-all-symbols" $(DLL_OBJS)
377
378
379# We have .pc files for pkg-config users.
380pkgconfigdir = $(libdir)/pkgconfig
381pkgconfig_DATA = libpcre.pc libpcreposix.pc
382if WITH_PCRE_CPP
383pkgconfig_DATA += libpcrecpp.pc
384endif
385
386dist_man_MANS = \
387 doc/pcre.3 \
388 doc/pcre-config.1 \
389 doc/pcre_assign_jit_stack.3 \
390 doc/pcre_compile.3 \
391 doc/pcre_compile2.3 \
392 doc/pcre_config.3 \
393 doc/pcre_copy_named_substring.3 \
394 doc/pcre_copy_substring.3 \
395 doc/pcre_dfa_exec.3 \
396 doc/pcre_exec.3 \
397 doc/pcre_free_study.3 \
398 doc/pcre_free_substring.3 \
399 doc/pcre_free_substring_list.3 \
400 doc/pcre_fullinfo.3 \
401 doc/pcre_get_named_substring.3 \
402 doc/pcre_get_stringnumber.3 \
403 doc/pcre_get_stringtable_entries.3 \
404 doc/pcre_get_substring.3 \
405 doc/pcre_get_substring_list.3 \
406 doc/pcre_info.3 \
407 doc/pcre_jit_stack_alloc.3 \
408 doc/pcre_jit_stack_free.3 \
409 doc/pcre_maketables.3 \
410 doc/pcre_refcount.3 \
411 doc/pcre_study.3 \
412 doc/pcre_version.3 \
413 doc/pcreapi.3 \
414 doc/pcrebuild.3 \
415 doc/pcrecallout.3 \
416 doc/pcrecompat.3 \
417 doc/pcregrep.1 \
418 doc/pcrejit.3 \
419 doc/pcrelimits.3 \
420 doc/pcrematching.3 \
421 doc/pcrepartial.3 \
422 doc/pcrepattern.3 \
423 doc/pcreperform.3 \
424 doc/pcreposix.3 \
425 doc/pcreprecompile.3 \
426 doc/pcresample.3 \
427 doc/pcrestack.3 \
428 doc/pcresyntax.3 \
429 doc/pcretest.1 \
430 doc/pcreunicode.3
431
432pcrecpp_man = doc/pcrecpp.3
433EXTRA_DIST += $(pcrecpp_man)
434
435if WITH_PCRE_CPP
436man_MANS = $(pcrecpp_man)
437endif
438
439## CMake support
440
441EXTRA_DIST += \
442 cmake/COPYING-CMAKE-SCRIPTS \
443 cmake/FindPackageHandleStandardArgs.cmake \
444 cmake/FindReadline.cmake \
445 CMakeLists.txt \
446 config-cmake.h.in
447
448## end Makefile.am