Accept and highlight: Shifting 360 pipelined bytes by 360 bytes
[privoxy.git] / pcre / doc / NON-UNIX-USE
1 Compiling PCRE on non-Unix systems
2 ----------------------------------
3
4 If you want to compile PCRE for a non-Unix system, note that it consists
5 entirely of code written in Standard C, and so should compile successfully
6 on any machine with a Standard C compiler and library, using normal compiling
7 commands to do the following:
8
9 (1) Copy or rename the file config.in as config.h, and change the macros that
10 define HAVE_STRERROR and HAVE_MEMMOVE to define them as 1 rather than 0.
11 Unfortunately, because of the way Unix autoconf works, the default setting has
12 to be 0.
13
14 (2) Copy or rename the file pcre.in as pcre.h, and change the macro definitions
15 for PCRE_MAJOR, PCRE_MINOR, and PCRE_DATE near its start to the values set in
16 configure.in.
17
18 (3) Compile dftables.c as a stand-alone program, and then run it with
19 the standard output sent to chartables.c. This generates a set of standard
20 character tables.
21
22 (4) Compile maketables.c, get.c, study.c and pcre.c and link them all
23 together into an object library in whichever form your system keeps such
24 libraries. This is the pcre library (chartables.c gets included by means of an
25 #include directive).
26
27 (5) Similarly, compile pcreposix.c and link it as the pcreposix library.
28
29 (6) Compile the test program pcretest.c. This needs the functions in the
30 pcre and pcreposix libraries when linking.
31
32 (7) Run pcretest on the testinput files in the testdata directory, and check
33 that the output matches the corresponding testoutput files. You must use the
34 -i option when checking testinput2.
35
36 If you have a system without "configure" but where you can use a Makefile, edit
37 Makefile.in to create Makefile, substituting suitable values for the variables
38 at the head of the file.
39
40 Some help in building a Win32 DLL of PCRE in GnuWin32 environments was
41 contributed by Paul.Sokolovsky@technologist.com. These environments are
42 Mingw32 (http://www.xraylith.wisc.edu/~khan/software/gnu-win32/) and
43 CygWin  (http://sourceware.cygnus.com/cygwin/). Paul comments:
44
45   For CygWin, set CFLAGS=-mno-cygwin, and do 'make dll'. You'll get
46   pcre.dll (containing pcreposix also), libpcre.dll.a, and dynamically
47   linked pgrep and pcretest. If you have /bin/sh, run RunTest (three
48   main test go ok, locale not supported).
49
50 ****