1 dnl Process this file with autoconf to produce a configure script.
3 dnl $Id: configure.in,v 1.123 2009/02/06 18:17:32 fabiankeil Exp $
5 dnl Written by and Copyright (C) 2001-2009 the
6 dnl Privoxy team. http://www.privoxy.org/
8 dnl Based on the Internet Junkbuster originally written
9 dnl by and Copyright (C) 1997 Anonymous Coders and
10 dnl Junkbusters Corporation. http://www.junkbusters.com
12 dnl This program is free software; you can redistribute it
13 dnl and/or modify it under the terms of the GNU General
14 dnl Public License as published by the Free Software
15 dnl Foundation; either version 2 of the License, or (at
16 dnl your option) any later version.
18 dnl This program is distributed in the hope that it will
19 dnl be useful, but WITHOUT ANY WARRANTY; without even the
20 dnl implied warranty of MERCHANTABILITY or FITNESS FOR A
21 dnl PARTICULAR PURPOSE. See the GNU General Public
22 dnl License for more details.
24 dnl The GNU General Public License should be included with
25 dnl this file. If not, you can view it at
26 dnl http://www.gnu.org/copyleft/gpl.html
27 dnl or write to the Free Software Foundation, Inc., 59
28 dnl Temple Place - Suite 330, Boston, MA 02111-1307, USA.
30 dnl $Log: configure.in,v $
31 dnl Revision 1.123 2009/02/06 18:17:32 fabiankeil
32 dnl Boldly enable keep-alive support where possible.
34 dnl Revision 1.122 2008/10/18 11:17:52 fabiankeil
35 dnl Connection keep-alive support is ready for testing,
36 dnl allow enabling it through the configure script.
38 dnl Revision 1.121 2008/08/30 12:03:07 fabiankeil
39 dnl Remove FEATURE_COOKIE_JAR.
41 dnl Revision 1.120 2008/08/21 17:19:50 fabiankeil
42 dnl Change version to 3.0.11 UNRELEASED.
44 dnl Revision 1.119 2008/08/13 16:53:50 fabiankeil
45 dnl Change version to 3.0.10 stable.
47 dnl Revision 1.118 2008/06/27 12:50:44 fabiankeil
48 dnl Here's looking at you, Gentoo Linux: Show a warning if
49 dnl --disable-pthread is used even though pthreads are available.
51 dnl Revision 1.117 2008/06/14 12:47:30 fabiankeil
52 dnl Set CODE_STATUS to beta.
54 dnl Revision 1.116 2008/06/08 11:55:09 fabiankeil
55 dnl - Show a warning if the soon-to-be-removed static PCRE code is used.
56 dnl - Hide the "using built-in static pcrs" message. With dynamic linking
57 dnl against PCRS disabled, the message isn't particularly useful.
59 dnl Revision 1.115 2008/05/25 15:50:14 fabiankeil
60 dnl Try to use zlib by default, but just show a warning if it's
61 dnl unavailable. Remove --enable-zlib, add --disable-zlib.
63 dnl Revision 1.114 2008/04/06 15:18:33 fabiankeil
64 dnl Oh well, rename the --enable-pcre-host-patterns option to
65 dnl --enable-extended-host-patterns as it's not really PCRE syntax.
67 dnl Revision 1.113 2008/04/06 14:54:26 fabiankeil
68 dnl Use PCRE syntax in host patterns when configured
69 dnl with --enable-pcre-host-patterns.
71 dnl Revision 1.112 2008/03/27 18:27:22 fabiankeil
72 dnl Remove kill-popups action.
74 dnl Revision 1.111 2008/02/03 14:40:47 fabiankeil
75 dnl Remove unused OSX_DARWIN macro. Reported by Mark Miller in #1852529.
77 dnl Revision 1.110 2008/01/26 10:52:13 fabiankeil
78 dnl Change version to 3.0.9 UNRELEASED.
80 dnl Revision 1.109 2008/01/20 14:07:09 fabiankeil
81 dnl Set CODE_STATUS to stable.
83 dnl Revision 1.108 2007/12/10 02:30:00 hal9
84 dnl Change versioning for > 3.0.7 && < 3.0.8
86 dnl Revision 1.107 2007/11/15 02:50:14 hal9
87 dnl Setting to "beta" (for doc builds, etc).
89 dnl Revision 1.106 2007/05/11 11:49:41 fabiankeil
90 dnl Check for strlcat().
92 dnl Revision 1.105 2007/04/09 17:34:58 fabiankeil
93 dnl Check for snprintf().
95 dnl Revision 1.104 2007/03/31 13:35:11 fabiankeil
96 dnl Add checks for gettimeofday() and strlcpy().
98 dnl Revision 1.103 2007/01/20 16:29:38 fabiankeil
99 dnl Suppress edit buttons for action files if Privoxy has
100 dnl no write access. Suggested by Roland in PR 1564026.
102 dnl Revision 1.102 2007/01/18 14:55:45 fabiankeil
103 dnl Check for tzset() and putenv() to make sure the
104 dnl replacement timegm() isn't included on systems
105 dnl where it fails to compile.
107 dnl Revision 1.101 2007/01/12 15:20:17 fabiankeil
108 dnl Temporarily ignore external libpcrs to prevent
109 dnl problems that are fixed in Privoxy's own version.
111 dnl Revision 1.100 2007/01/07 07:38:10 joergs
112 dnl Disabled -pipe for AmigaOS4.
114 dnl Revision 1.99 2007/01/01 19:36:37 fabiankeil
115 dnl Integrate a modified version of Wil Mahan's
116 dnl zlib patch (PR #895531).
118 dnl Revision 1.98 2006/12/17 19:15:26 fabiankeil
119 dnl Added ./configure switch for FEATURE_GRACEFUL_TERMINATION.
121 dnl Revision 1.97 2006/11/21 18:32:46 hal9
122 dnl Setting version to 3.0.7 UNRELEASED for lack of a better setting.
124 dnl Revision 1.96 2006/11/18 14:42:51 fabiankeil
127 dnl Revision 1.95 2006/11/14 02:08:59 hal9
128 dnl Setting version string to 3.0.6 UNRELEASED. This needs to be reset to 3.0.6
129 dnl stable just before CVS is tagged for release.
131 dnl Revision 1.94 2006/11/13 19:05:50 fabiankeil
132 dnl Make pthread mutex locking more generic. Instead of
133 dnl checking for OSX and OpenBSD, check for FEATURE_PTHREAD
134 dnl and use mutex locking unless there is an _r function
135 dnl available. Better safe than sorry.
137 dnl Fixes "./configure --disable-pthread" and should result
138 dnl in less threading-related problems on pthread-using platforms,
139 dnl but it still doesn't fix BR#1122404.
141 dnl Revision 1.93 2006/09/22 01:26:20 hal9
142 dnl Set version to 3.0.5 BETA for hopefully release this weekend.
144 dnl Revision 1.92 2006/08/17 17:09:49 fabiankeil
145 dnl Added check for timegm().
147 dnl Revision 1.91 2006/08/13 22:01:51 fabiankeil
148 dnl Added checks for strptime() and random()
150 dnl Revision 1.90 2006/07/18 14:48:45 david__schmidt
151 dnl Reorganizing the repository: swapping out what was HEAD (the old 3.1 branch)
152 dnl with what was really the latest development (the v_3_0_branch branch)
154 dnl Revision 1.68.2.20 2004/01/31 16:31:46 oes
155 dnl Resetting version info to 0.0.0 UNRELEASED
157 dnl Revision 1.68.2.19 2004/01/30 09:26:03 oes
158 dnl Added docbook paths for debian sarge; set status for release
160 dnl Revision 1.68.2.18 2003/12/08 15:10:29 oes
161 dnl Bugfix: --with-docbook now correctly accepts its path parameter. Thanks, Roland!
163 dnl Revision 1.68.2.17 2003/10/18 18:41:26 david__schmidt
164 dnl Update to remain buildable on OS/2 - remove the failures
165 dnl due to missing unixisms
167 dnl Revision 1.68.2.16 2003/03/26 16:05:14 oes
168 dnl Marked as 0.0.0 UNRELEASED
170 dnl Revision 1.68.2.15 2003/03/26 00:25:00 oes
171 dnl Bump version for 3.0.2
173 dnl Revision 1.68.2.14 2003/03/25 13:27:12 hal9
174 dnl Manually apply Docbook/FreeBSD patch #708081 from a.go at tiscali.nl.
176 dnl Revision 1.68.2.13 2003/03/18 19:38:57 oes
177 dnl Set version info for 3.0.1 release
179 dnl Revision 1.68.2.12 2003/03/07 03:41:04 david__schmidt
180 dnl Wrapping all *_r functions (the non-_r versions of them) with mutex semaphores for OSX. Hopefully this will take care of all of those pesky crash reports.
182 dnl Revision 1.68.2.11 2003/03/06 15:22:37 oes
183 dnl Fixed minor shell syntax bug
185 dnl Revision 1.68.2.10 2003/01/08 16:39:41 oes
186 dnl Changing default to exclude FEATURE_IMAGE_DETECT_MSIE because of problem reports with recent IEs
188 dnl Revision 1.68.2.9 2002/12/13 23:47:45 hal9
189 dnl Add openbsd $specialflags per gunner at styx2002.no-ip.org
191 dnl Revision 1.68.2.8 2002/11/27 12:55:26 oes
192 dnl Fixed broken handling of pre-set CFLAGS
194 dnl Revision 1.68.2.7 2002/10/25 02:44:22 hal9
195 dnl Port of make install, etc from main trunk. Needs testing! Add Slackware
196 dnl support, and other related changes. Update related docs.
198 dnl Revision 1.68.2.6 2002/09/25 15:35:15 oes
199 dnl Marking as non-release
201 dnl Revision 1.68.2.5 2002/08/25 23:37:00 hal9
202 dnl Getting ready for 3.0 release.
204 dnl Revision 1.68.2.4 2002/08/10 11:21:57 oes
205 dnl - Set Version to 2.9.20 (beta)
206 dnl - Add two AC_DEFINEs that indicate if the pcre*.h headers
207 dnl are located in a pcre/ subdir to the include path.
209 dnl Revision 1.68.2.3 2002/08/06 11:29:36 oes
210 dnl Fixed detection/inclusion of pcre.h, which is in a pcre subdir on RH
212 dnl Revision 1.68.2.2 2002/07/30 19:36:09 hal9
213 dnl Bump version to 2.9.17.
215 dnl Revision 1.68.2.1 2002/07/26 15:21:12 oes
216 dnl Bumped version number for 2.9.16 freeze
218 dnl Revision 1.68 2002/05/25 16:54:54 jongfoster
219 dnl Detect if the compiler supports -pthread.
220 dnl Hopefully this will fix bug 560442. (I don't have a HP PA-RISC
221 dnl machine to test this!)
223 dnl Revision 1.67 2002/05/03 14:33:59 oes
224 dnl Generate doc/soucre/ldp.dsl
226 dnl Revision 1.66 2002/05/03 00:41:56 oes
227 dnl Set version to 2.9.15 to comply with new versioning scheme
229 dnl Revision 1.65 2002/04/25 19:13:57 morcego
230 dnl Removed RPM release number declaration on configure.in
231 dnl Changed makefile to use given value for RPM_PACKAGEV when on uploading
232 dnl targets (will produce an error, explaining who to do it, if no value
235 dnl Revision 1.64 2002/04/22 16:32:31 morcego
236 dnl configure.in, *.spec: Bumping release to 2 (2.9.14-2)
237 dnl -rh.spec: uid and gid are now macros
238 dnl -suse.spec: Changing the header Copyright to License (Copyright is
241 dnl Revision 1.63 2002/04/11 11:00:21 oes
242 dnl Applied Moritz' fix for socklen_t on Solaris
244 dnl Revision 1.62 2002/04/11 10:09:20 oes
247 dnl Revision 1.61 2002/04/10 18:14:45 morcego
248 dnl - (privoxy-rh.spec only) Relisting template files on the %%files section
249 dnl - (configure.in, privoxy-rh.spec) Bumped package release to 5
251 dnl Revision 1.60 2002/04/09 16:38:49 oes
252 dnl Added detection of missing config.h.in
254 dnl Revision 1.59 2002/04/06 20:23:55 jongfoster
255 dnl Removing unnessacery tests (C++, ranlib)
257 dnl Revision 1.58 2002/04/04 20:49:20 swa
258 dnl attempt to consolidate the
259 dnl different dokbook versions.
261 dnl Revision 1.57 2002/04/04 00:36:36 gliptak
262 dnl always use pcre for matching
264 dnl Revision 1.56 2002/04/03 22:28:03 gliptak
265 dnl Removed references to gnu_regex
267 dnl Revision 1.55 2002/04/03 03:54:38 gliptak
268 dnl Checking pcre version
270 dnl Revision 1.54 2002/04/01 00:54:24 gliptak
271 dnl More changes needed around regex support.
273 dnl Revision 1.53 2002/03/29 20:09:01 swa
276 dnl Revision 1.52 2002/03/29 19:51:40 gliptak
277 dnl Correcting compile problem with Debian
279 dnl Revision 1.51 2002/03/28 20:43:00 swa
280 dnl set make correctly
282 dnl Revision 1.50 2002/03/27 03:03:45 hal9
283 dnl Add test for man2html
285 dnl Revision 1.49 2002/03/27 02:19:52 david__schmidt
286 dnl More Mac OSX support:
287 dnl - Get rid of extraneous, noisy -pthread warnings
288 dnl - Define unix so we get oes' unix-tagged changes
290 dnl Revision 1.48 2002/03/26 22:29:54 swa
291 dnl we have a new homepage!
293 dnl Revision 1.47 2002/03/26 16:41:00 hal9
294 dnl Upped RPM Release to 3 (need to build new RH packages)
296 dnl Revision 1.46 2002/03/24 18:55:06 jongfoster
297 dnl Making Docbook work under Windows
299 dnl Revision 1.45 2002/03/24 14:19:55 swa
300 dnl set rpm package release in configure.in. nowhere else.
302 dnl Revision 1.44 2002/03/24 13:25:43 swa
303 dnl name change related issues
305 dnl Revision 1.43 2002/03/24 12:56:21 swa
306 dnl name change related issues.
308 dnl Revision 1.42 2002/03/22 18:11:37 jongfoster
309 dnl Bumping version number to 2.9.12
311 dnl Revision 1.41 2002/03/19 19:30:04 morcego
312 dnl - Fixing stylesheet checking on configure. If it is found, no further checks
315 dnl - configure will now check for db2html or docbook2html (should work now
316 dnl on SuSe without the docbktls package)
318 dnl Revision 1.40 2002/03/09 14:33:30 oes
319 dnl Fixing the (harmless) AC_CHECK_FILE warnings
321 dnl Revision 1.39 2002/03/08 16:46:13 oes
322 dnl Added --enable-no-gifs
324 dnl Revision 1.38 2002/03/08 14:13:50 morcego
325 dnl Fixing configure, to remove a command not found error.
327 dnl Revision 1.37 2002/03/08 12:58:21 oes
328 dnl Tiny bugfix in AC_ARG_WITH(debug)
330 dnl Revision 1.36 2002/03/06 23:50:36 morcego
331 dnl Will not test for a text browser if we are not using docbook.
333 dnl Revision 1.35 2002/03/06 21:55:52 morcego
334 dnl New configure option: --with-docbook=(yes|no|directory)
335 dnl Preliminary new platform detection code included. Will work with the
336 dnl old one for now. No use just trowing it away
338 dnl Revision 1.34 2002/03/06 20:57:00 morcego
339 dnl Fixing detection of stylesheets on SuSe.
341 dnl Revision 1.33 2002/03/05 17:31:11 morcego
342 dnl Search for docbook.dsl. Should solve portability problems for SuSe.
344 dnl Revision 1.32 2002/03/05 14:07:43 morcego
345 dnl configure now detects rpm topdir, and change GNUmakefile acordingly
346 dnl (based on sugestion by Sarantis Paskalis)
348 dnl Revision 1.31 2002/03/05 13:43:28 morcego
349 dnl Checking for text browser, so redhat-dok can work.
351 dnl Revision 1.30 2002/03/04 17:58:01 oes
352 dnl Deleted _DEBUG and PID_FILE_PATH
354 dnl Revision 1.29 2002/02/28 14:20:53 oes
355 dnl Fixed detection of gethost*_r functions on Solaris
357 dnl Revision 1.28 2002/02/27 15:02:38 oes
358 dnl Incremented version number
360 dnl Revision 1.27 2002/01/10 12:35:18 oes
361 dnl Added cross-compile defaults to the AC_CHECK_SIZEOF macros
362 dnl to silence autoconf warnings. Numbers are for Intel/Linux.
363 dnl Is there a better way?
365 dnl Revision 1.26 2002/01/09 14:29:49 oes
366 dnl - Added AC_CHECK_FUNC tests for the availability of
367 dnl gethostbyname_r, gethostbyaddr_r, gmtime_r and
368 dnl localtime_r, as well as AC_TRY_COMPILE tests to
369 dnl determine their signatures.
371 dnl - Fixed a bug with the init of CFLAGS that was
372 dnl reported by barsnick
374 dnl Revision 1.25 2002/01/04 15:27:18 oes
375 dnl Changed quoting of CODE_STATUS for use in make
377 dnl Revision 1.24 2001/12/30 14:07:31 steudten
378 dnl - Add signal handling (unix)
379 dnl - Add SIGHUP handler (unix)
380 dnl - Add creation of pidfile (unix)
381 dnl - Add action 'top' in rc file (RH)
382 dnl - Add entry 'SIGNALS' to manpage
383 dnl - Add exit message to logfile (unix)
385 dnl Revision 1.23 2001/12/09 20:24:42 david__schmidt
386 dnl Change from "alpha" to "beta" in configure.in
388 dnl Revision 1.22 2001/12/01 11:24:01 jongfoster
389 dnl Renaming Makefile.in to GNUmakefile.in so that non-GNU versions of
390 dnl make break in a more obvious way.
392 dnl Revision 1.21 2001/11/30 21:35:54 jongfoster
393 dnl Bumping version number to 2.9.10
395 dnl Revision 1.20 2001/10/23 21:24:09 jongfoster
396 dnl Support for FEATURE_CGI_EDIT_ACTIONS
398 dnl Revision 1.19 2001/10/07 15:33:14 oes
399 dnl Removed FEATURE_DENY_GZIP
400 dnl Bumped up version number
402 dnl Revision 1.18 2001/09/13 13:10:24 steudten
404 dnl PreWork for Debug Interface.
405 dnl Add new option "--with-debug" to enable debugging (flags aso.)
407 dnl Revision 1.17 2001/09/12 23:44:55 david__schmidt
408 dnl Mac OSX (Darwin) support added.
410 dnl Revision 1.16 2001/09/12 22:55:45 joergs
411 dnl AmigaOS support added.
413 dnl Revision 1.15 2001/09/12 17:28:59 david__schmidt
415 dnl OS/2 port: update autoconf'd support for the platform.
417 dnl Revision 1.14 2001/07/30 22:12:11 jongfoster
418 dnl Fixing Solaris build (I hope) and tidying up #defines:
419 dnl - All feature #defines are now of the form FEATURE_xxx
420 dnl - Permanently turned off WIN_GUI_EDIT
421 dnl - Permanently turned on WEBDAV and SPLIT_PROXY_ARGS
423 dnl Revision 1.13 2001/07/29 17:09:17 jongfoster
424 dnl Major changes to build system in order to fix these bugs:
425 dnl - pthreads under Linux was broken - changed -lpthread to -pthread
426 dnl - Compiling in MinGW32 mode under CygWin now correctly detects
427 dnl which shared libraries are available
428 dnl - Solaris support (?) (Not tested under Solaris yet)
430 dnl Revision 1.12 2001/07/25 19:16:27 oes
431 dnl Bumping version number to 2.9.8
433 dnl Revision 1.11 2001/07/21 18:00:07 jongfoster
434 dnl Bumping version number to 2.9.7
436 dnl Revision 1.10 2001/07/18 17:25:04 oes
439 dnl Revision 1.9 2001/07/15 19:45:13 jongfoster
440 dnl Added support for linking with POSIX threads library
442 dnl Revision 1.8 2001/07/15 17:54:29 jongfoster
443 dnl Renaming #define STATIC to STATIC_PCRE
444 dnl Adding new #define FEATURE_PTHREAD that will be used to enable
445 dnl POSIX threads support.
447 dnl Revision 1.7 2001/07/13 13:58:05 oes
448 dnl Completely reorganized the selection scheme for
449 dnl pcre, pcreposix, pcrs and gnu_regex:
451 dnl The presence of shared pcre, pcreposix or pcrs
452 dnl libraried is now autodetected. Additionally, the
453 dnl user can enforce using the built-in static variants
454 dnl by specifying --disable-dynamic-(pcre|pcrs).
455 dnl Care is taken to avoid that pcre is dyn, while pcreposix
456 dnl is static, if both are used and that pcrs is static if
459 dnl The choice between pcre, gnu or no regex for actionsfile
460 dnl URL matching is now via
461 dnl --(enable|disable)-regex-matching[=(gnu|pcre|no)] with the
462 dnl default being pcre.
464 dnl Revision 1.6 2001/06/29 21:56:40 oes
467 dnl Revision 1.5 2001/06/29 13:26:27 oes
468 dnl Introduced #define CODE_STATUS
470 dnl Revision 1.4 2001/05/29 09:50:24 jongfoster
471 dnl Unified blocklist/imagelist/permissionslist.
472 dnl File format is still under discussion, but the internal changes
473 dnl are (mostly) done.
475 dnl Also modified interceptor behaviour:
476 dnl - We now intercept all URLs beginning with one of the following
477 dnl prefixes (and *only* these prefixes):
479 dnl * http://ijbswa.sf.net/config/
480 dnl * http://ijbswa.sourceforge.net/config/
481 dnl - New interceptors "home page" - go to http://i.j.b/ to see it.
482 dnl - Internal changes so that intercepted and fast redirect pages
483 dnl are not replaced with an image.
484 dnl - Interceptors now have the option to send a binary page direct
485 dnl to the client. (i.e. ijb-send-banner uses this)
486 dnl - Implemented show-url-info interceptor. (Which is why I needed
487 dnl the above interceptors changes - a typical URL is
488 dnl "http://i.j.b/show-url-info?url=www.somesite.com/banner.gif".
489 dnl The previous mechanism would not have intercepted that, and
490 dnl if it had been intercepted then it then it would have replaced
491 dnl it with an image.)
493 dnl Revision 1.3 2001/05/22 18:46:04 oes
495 dnl - Enabled filtering banners by size rather than URL
496 dnl by adding patterns that replace all standard banner
497 dnl sizes with the "Junkbuster" gif to the re_filterfile
499 dnl - Enabled filtering WebBugs by providing a pattern
500 dnl which kills all 1x1 images
502 dnl - Added support for PCRE_UNGREEDY behaviour to pcrs,
503 dnl which is selected by the (nonstandard and therefore
504 dnl capital) letter 'U' in the option string.
505 dnl It causes the quantifiers to be ungreedy by default.
506 dnl Appending a ? turns back to greedy (!).
508 dnl - Added a new interceptor ijb-send-banner, which
509 dnl sends back the "Junkbuster" gif. Without imagelist or
510 dnl MSIE detection support, or if tinygif = 1, or the
511 dnl URL isn't recognized as an imageurl, a lame HTML
512 dnl explanation is sent instead.
514 dnl - Added new feature, which permits blocking remote
515 dnl script redirects and firing back a local redirect
517 dnl The feature is conditionally compiled, i.e. it
518 dnl can be disabled with --disable-fast-redirects,
519 dnl plus it must be activated by a "fast-redirects"
520 dnl line in the config file, has its own log level
521 dnl and of course wants to be displayed by show-proxy-args
522 dnl Note: Boy, all the #ifdefs in 1001 locations and
523 dnl all the fumbling with configure.in and acconfig.h
524 dnl were *way* more work than the feature itself :-(
526 dnl - Because a generic redirect template was needed for
527 dnl this, tinygif = 3 now uses the same.
529 dnl - Moved GIFs, and other static HTTP response templates
532 dnl - Some minor fixes
534 dnl - Removed some >400 CRs again (Jon, you really worked
537 dnl Revision 1.2 2001/05/20 01:21:20 jongfoster
538 dnl Version 2.9.4 checkin.
539 dnl - Merged popupfile and cookiefile, and added control over PCRS
540 dnl filtering, in new "permissionsfile".
541 dnl - Implemented LOG_LEVEL_FATAL, so that if there is a configuration
542 dnl file error you now get a message box (in the Win32 GUI) rather
543 dnl than the program exiting with no explanation.
544 dnl - Made killpopup use the PCRS MIME-type checking and HTTP-header
546 dnl - Removed tabs from "config"
547 dnl - Moved duplicated url parsing code in "loaders.c" to a new funcition.
548 dnl - Bumped up version number.
550 dnl Revision 1.1.1.1 2001/05/15 13:58:50 oes
551 dnl Initial import of version 2.9.3 source tree
556 dnl =================================================================
557 dnl AutoConf Initialization
558 dnl =================================================================
560 AC_REVISION($Revision: 1.123 $)
563 if test ! -f config.h.in; then
564 echo "You need to run autoheader first. "
565 echo -n "Shall I do this for you now? (y/n) "
567 if test "$answer" != "y"; then
574 AC_CONFIG_HEADER([config.h])
579 AC_ARG_WITH(docbook, dnl
580 --with-docbook=[[yes|no|directory]]
581 Enable docbook documentation creation
582 (default = yes, for gnu and linux),[dnl
583 case "$with_docbook" in
593 AC_ARG_WITH(db2html, dnl
594 --with-db2html=<path/executable>
595 Set the location of the docbook to html converter
596 (default = search),[dnl
600 dnl =================================================================
601 dnl Application version number
602 dnl =================================================================
609 dnl CODE_STATUS can be "alpha", "beta", or "stable", and will be
610 dnl used for CGI output. Set version to 0.0.0 and status to "UNRELEASED"
611 dnl whenever CVS in a stable branch differs from the last release.
613 dnl =================================================================
614 dnl Substitute the version numbers
615 dnl =================================================================
617 AC_SUBST(VERSION_MAJOR)
618 AC_SUBST(VERSION_MINOR)
619 AC_SUBST(VERSION_POINT)
620 AC_SUBST(CODE_STATUS)
623 AC_DEFINE_UNQUOTED(VERSION_MAJOR,${VERSION_MAJOR})
624 AC_DEFINE_UNQUOTED(VERSION_MINOR,${VERSION_MINOR})
625 AC_DEFINE_UNQUOTED(VERSION_POINT,${VERSION_POINT})
626 AC_DEFINE_UNQUOTED(VERSION,"${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_POINT}")
627 AC_DEFINE_UNQUOTED(CODE_STATUS,"${CODE_STATUS}")
629 dnl =================================================================
630 dnl Checks for programs needed to build.
631 dnl =================================================================
633 dnl Keep AC_PROG_CC from setting its own defaults:
634 if test "X$CFLAGS" = "X"; then
645 AC_CHECK_PROG(GDB,gdb,yes,no)
646 AC_PATH_PROG(BGROUPS,groups,no,/bin:/usr/bin:/usr/local/bin)
647 AC_PATH_PROG(ID,id,no,/bin:/usr/bin:/usr/local/bin)
651 dnl =================================================================
652 dnl debug, gcc and gdb support
653 dnl =================================================================
656 [ --with-debug Enable debug mode],
658 if test "x$withval" != "xno" ; then
659 if test $ac_cv_prog_cc_g = yes; then
660 if test "$GCC" = yes; then
662 CFLAGS="$CFLAGS -ggdb"
666 CFLAGS="$CFLAGS -Wshadow -Wconversion"
674 if test "X$CFLAGS" = "X "; then # if CFLAGS were unset (see above)
675 if test "$GCC" = yes; then
682 dnl =================================================================
683 dnl Check for user and group validity
684 dnl =================================================================
687 if test "$EMXOS2" = yes; then
688 echo "Skipping user and group validity stuff.";
692 $ID privoxy >/dev/null 2>/dev/null
693 if test $? -ne 0 ; then
694 AC_MSG_WARN(There is no user 'privoxy' on this system)
696 AC_MSG_CHECKING([for user])
698 [ --with-user=privoxy Set user under which privoxy will run],
700 if test "x$withval" != "xyes"; then
701 if test $ID = no ; then
702 AC_MSG_ERROR(There is no 'id' program on this system)
704 AC_MSG_RESULT($with_user)
705 $ID $with_user 2>/dev/null >/dev/null
706 if test $? -eq 0 ; then
709 AC_MSG_ERROR(There is no user '$with_user' on this system)
713 AC_MSG_ERROR(We need a user if you give me this parameter)
717 if test $ID = no ; then
718 AC_MSG_ERROR(There is no 'id' programm on this system)
720 AC_MSG_RESULT(none specified)
727 AC_MSG_CHECKING([for group])
729 [ --with-group=privoxy Set group for privoxy],
731 if test "x$withval" != "xyes"; then
732 if test $BGROUPS = no ; then
733 AC_MSG_ERROR(There is no 'groups' program on this system)
735 AC_MSG_RESULT($with_group)
736 $BGROUPS $USER >/dev/null
737 if test $? -eq 0 ; then
738 # FIXME: this fails if valid group, but not first group
740 if test "$with_group" != "`$BGROUPS $USER | sed 's/.*: //' 2>/dev/null |$AWK '{print $1}'`" ; then
741 AC_MSG_ERROR(The given value '$withval' does not match group entry)
746 AC_MSG_ERROR(There is no group entry for user '$USER')
750 AC_MSG_ERROR(We need a group if you give me this parameter)
754 if test $BGROUPS = no ; then
755 AC_MSG_ERROR(There is no 'groups' programm on this system)
757 AC_MSG_RESULT(none specified)
766 dnl =================================================================
767 dnl additional gcc flags
768 dnl =================================================================
771 if test "$host" != "powerpc-unknown-amigaos"; then
772 CFLAGS="-pipe $CFLAGS"
777 dnl =================================================================
779 dnl =================================================================
781 dnl Must do this first.
783 dnl Reason: This sets CFLAGS in order to switch the Cygwin compiler
784 dnl into Cygwin or MinGW32 modes. Depending on the mode selected,
785 dnl the compiler will use completely different sets of library
786 dnl and include files.
788 dnl =================================================================
793 if test "$MINGW32" = "yes"; then
796 if test "$CYGWIN" = "yes"; then
803 if test $dodk = auto; then
805 if test $target_type = unix; then
814 dnl Decide what to do based on target_type
815 dnl Note: PTHREAD_LIB is always set, even if pthread is disabled.
816 dnl This is because we don't know yet whether pthread is enabled.
818 AC_ARG_ENABLE(mingw32,
819 [ --enable-mingw32 Use mingw32 for a Windows GUI],
820 [if test $enableval = yes; then
824 if test $target_type = mingw; then
826 SPECIAL_CFLAGS="-mwindows -mno-cygwin"
827 PTHREAD_LIB=-lpthreadGC
828 echo "Using mingw32 (Win32 GUI)"
831 if test $target_type = cygwin; then
832 SPECIAL_CFLAGS="-mno-win32"
834 echo "Using Cygnus (Win32 command line)"
837 PTHREAD_LIB=-lpthread
842 dnl Checking which text html browser we have avaliable
843 if test $dodk != no; then
844 AC_CHECK_PROGS(WDUMP,w3m lynx links,false)
845 if test "$WDUMP" = false; then
846 AC_MSG_WARN(You need some kind of text browser to build documentation \(w3m, lynx and links are supported\))
848 if test $DB2HTML = false; then
849 dnl We need to clean the variable, otherwise AC_CHECK_PROGS
852 AC_CHECK_PROGS(DB2HTML,db2html docbook2html,false)
858 dnl If we use rpm, we need to check where %_topdir is
859 AC_CHECK_PROGS(RPMBIN,rpm,false)
860 if test $RPMBIN != false; then
861 RPM_BASE=`rpm --eval "%{_topdir}"`
862 if test "$RPM_BASE" = ""; then
863 RPM_BASE=/usr/src/redhat
868 dnl Check for jade, so we can build the documentation
869 AC_CHECK_PROGS(JADEBIN,jade openjade,false)
872 dnl Check for man2html for docs.
873 AC_CHECK_PROGS(MAN2HTML,man2html,false)
876 dnl Set doc status flag for conditional content inclusions
877 DOC_STATUS=p-not-stable
878 if test $CODE_STATUS = stable; then
879 DOC_STATUS="p-stable"
883 dnl Checking for the docbook.dsl stylesheet file
884 dnl It is still not portable (directory slash)
886 if test $dodk = yes; then
887 if test $DKPREFIX = none; then
888 for i in /usr/share/sgml/docbook/dsssl-stylesheets \
889 /usr/share/sgml/docbkdsl /usr/share/sgml/docbook-dsssl \
890 /usr/local/share/sgml/docbook/dsssl/modular \
891 /usr/share/sgml/docbook/stylesheet/dsssl/modular/ \
893 dnl echo -n does not fly with /bin/sh.
894 dnl echo -n "checking for $i/html/docbook.dsl..."
895 AC_MSG_CHECKING([for $i])
896 if test -f $i/html/docbook.dsl; then
904 # where are the catalogs?
905 for i in /usr/share/sgml/CATALOG.docbk30 \
906 /usr/share/sgml/CATALOG.docbk31 \
907 /usr/share/sgml/CATALOG.docbk31 \
908 /usr/local/share/sgml/docbook/3.0/docbook.cat \
909 /usr/local/share/sgml/docbook/3.1/docbook.cat \
910 /usr/share/sgml/docbook/dtd/3.1/docbook.cat \
912 dnl echo -n "checking for $i..."
913 AC_MSG_CHECKING([for $i])
916 JADECAT="$JADECAT -c $i"
926 dnl Save old CFLAGS so we can restore them later, then add SPECIAL_CFLAGS
927 old_CFLAGS_nospecial=$CFLAGS
928 CFLAGS="$CFLAGS $SPECIAL_CFLAGS"
930 # Hack to force AutoConf to use the CFLAGS we just set
931 dnl Warning: This may break with a future version of Autoconf
932 dnl Tested with autoconf 2.13
933 ac_cpp='$CPP $CPPFLAGS $SPECIAL_CFLAGS'
934 ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
935 ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
938 dnl =================================================================
940 dnl =================================================================
942 AC_CHECK_HEADER(pthread.h, [have_pthread=yes], [have_pthread=no])
944 AC_ARG_ENABLE(pthread,
945 [ --disable-pthread Don't use POSIX threads (pthreads)],
946 [if test $enableval = no; then
948 if test $have_pthread = yes; then
949 AC_MSG_WARN([pthreads seem to be available but you are using --disable-pthread.])
950 AC_MSG_WARN([This is almost always a mistake and can render Privoxy unacceptable slow.])
955 if test $have_pthread = yes; then
957 AC_DEFINE(FEATURE_PTHREAD)
958 echo Using POSIX threads
959 if test "$GCC" = "yes"; then
960 # Set a GCC specific switch:
961 if test "$target_type" = "unix"; then
962 ac_jgf_save_CFLAGS=$CFLAGS
963 CFLAGS="$CFLAGS -pthread"
964 AC_TRY_LINK([#include <pthread.h>],
965 [void *p = pthread_create;],
967 # This compiler switch makes GCC on Linux thread-safe
968 # However, it's not supported on most other OS.
970 SPECIAL_CFLAGS="-pthread"
972 CFLAGS=$ac_jgf_save_CFLAGS
977 echo Using native threads
980 AC_SUBST(PTHREAD_ONLY)
982 dnl =================================================================
983 dnl Support for thread-safe versions of gethostbyaddr, gethostbyname,
984 dnl gmtime and localtime
985 dnl =================================================================
987 dnl Next line needed to find the gethost*_r functions on Solaris
988 AC_CHECK_LIB(nsl, gethostbyname)
990 AC_CHECK_FUNC(gethostbyaddr_r, [
991 AC_MSG_CHECKING([signature of gethostbyaddr_r])
995 struct hostent *h, *hp;
998 (void) gethostbyaddr_r(a, l, t, h, b, bl, &hp, &e)
1000 AC_DEFINE(HAVE_GETHOSTBYADDR_R_8_ARGS)
1001 AC_MSG_RESULT([8 args])
1009 (void) gethostbyaddr_r(a, l, t, h, b, bl, &e)
1011 AC_DEFINE(HAVE_GETHOSTBYADDR_R_7_ARGS)
1012 AC_MSG_RESULT([7 args])
1017 struct hostent_data *d;
1021 (void) gethostbyaddr_r(a, l, t, h, d)
1023 AC_DEFINE(HAVE_GETHOSTBYADDR_R_5_ARGS)
1024 AC_MSG_RESULT([5 args])
1026 AC_MSG_RESULT(unrecognised)
1034 AC_CHECK_FUNC(gethostbyname_r, [
1035 AC_MSG_CHECKING([signature of gethostbyname_r])
1039 struct hostent *h, *r;
1042 (void) gethostbyname_r(n, h, b, bl, &r, &e)
1044 AC_DEFINE(HAVE_GETHOSTBYNAME_R_6_ARGS)
1045 AC_MSG_RESULT([6 args])
1053 (void) gethostbyname_r(n, h, b, bl, &e)
1055 AC_DEFINE(HAVE_GETHOSTBYNAME_R_5_ARGS)
1056 AC_MSG_RESULT([5 args])
1061 struct hostent_data *d;
1064 (void) gethostbyname_r(n, h, d)
1066 AC_DEFINE(HAVE_GETHOSTBYNAME_R_3_ARGS)
1067 AC_MSG_RESULT([3 args])
1069 AC_MSG_RESULT(unrecognised)
1077 AC_CHECK_FUNC(gmtime_r, [
1078 AC_MSG_CHECKING([signature of gmtime_r])
1084 (void) gmtime_r(t, tm)
1087 AC_DEFINE(HAVE_GMTIME_R)
1089 AC_MSG_RESULT(unrecognised)
1095 AC_CHECK_FUNC(localtime_r, [
1096 AC_MSG_CHECKING([signature of localtime_r])
1102 (void) localtime_r(t, tm)
1105 AC_DEFINE(HAVE_LOCALTIME_R)
1107 AC_MSG_RESULT(unrecognised)
1113 dnl =================================================================
1114 dnl Solaris specific
1115 dnl FIXME: Not tested on Solaris yet...
1116 dnl ISFIXED: Have tested it on Solaris, but there are other ways to
1117 dnl make these checks generic, e.g.:
1118 dnl AC_CHECK_FUNC(getsockopt, , AC_CHECK_LIB(socket, getsockopt))
1119 dnl (Moritz Barsnick <moritz@barsnick.net>)
1120 dnl =================================================================
1126 *-solaris*) SOCKET_LIB="-lsocket -lnsl"
1127 AC_DEFINE(__EXTENSIONS__)
1128 if test "$GCC" = "yes"; then
1129 # Set a GCC specific switch:
1130 # This compiler switch makes Solaris thread-safe
1132 SPECIAL_CFLAGS="-pthreads"
1134 # What do we do without GCC? Guess this:
1135 SPECIAL_CFLAGS="-D_REENTRANT"
1140 AC_SUBST(SOCKET_LIB)
1142 dnl =================================================================
1143 dnl Solaris problem, and others perhaps (socklen_t is undefined)
1144 dnl =================================================================
1146 AC_MSG_CHECKING([for socklen_t])
1147 AC_EGREP_HEADER(socklen_t, sys/socket.h, AC_MSG_RESULT([yes]),
1149 AC_DEFINE(socklen_t,int,
1150 [ Define to 'int' if <sys/socket.h> doesn't have it. ]))
1153 dnl =================================================================
1155 dnl =================================================================
1158 *-os2-emx*) SOCKET_LIB=-lsocket
1162 AC_SUBST(SOCKET_LIB)
1164 dnl =================================================================
1165 dnl Mac OSX specific
1166 dnl =================================================================
1169 *-apple-darwin*) SPECIAL_CFLAGS="-Dunix"
1173 dnl =================================================================
1174 dnl OpenBSD specific
1175 dnl =================================================================
1178 *-openbsd*) SPECIAL_CFLAGS="$SPECIAL_CFLAGS -Dunix"
1182 dnl =================================================================
1183 dnl AmigaOS specific
1184 dnl =================================================================
1189 *-amigaos) AMIGAOS_ONLY=
1193 AC_SUBST(AMIGAOS_ONLY)
1195 dnl =================================================================
1196 dnl Check for standard compiler stuff
1197 dnl =================================================================
1208 AC_CHECK_SIZEOF(int, 4)
1209 AC_CHECK_SIZEOF(char *, 4)
1210 AC_CHECK_SIZEOF(long, 4)
1211 AC_CHECK_SIZEOF(long long, 8)
1212 AC_CHECK_SIZEOF(size_t, 4)
1214 dnl Checks for header files.
1215 dnl AC_HEADER_SYS_WAIT
1216 dnl AC_CHECK_HEADERS(fcntl.h limits.h malloc.h sys/time.h unistd.h)
1217 AC_CHECK_HEADERS([OS.h arpa/inet.h errno.h fcntl.h limits.h locale.h netdb.h netinet/in.h stddef.h stdlib.h string.h sys/ioctl.h sys/socket.h sys/time.h sys/timeb.h sys/wait.h unistd.h])
1219 dnl Checks for library functions.
1221 dnl AC_CHECK_FUNC(strstr)
1222 dnl bcopy and memmove are for PCRE
1223 AC_CHECK_FUNCS([strerror bcopy memmove])
1224 AC_PROG_GCC_TRADITIONAL
1225 dnl uncommenting does not work for swa. suse linux
1229 dnl uncommenting does not work for swa. suse linux
1231 AC_CHECK_FUNCS([access atexit getcwd gethostbyaddr gethostbyaddr_r gethostbyname gethostbyname_r gettimeofday inet_ntoa localtime_r memchr memmove memset poll putenv random regcomp select setlocale snprintf socket strchr strdup strerror strftime strlcat strlcpy strptime strstr strtoul timegm tzset])
1234 dnl =================================================================
1235 dnl Checks for libraries.
1236 dnl =================================================================
1237 dnl Note: Some systems may have the library but not the system header
1238 dnl file, so we must check for both.
1239 dnl Also check for correct version
1240 AC_CHECK_LIB(pcre, pcre_compile, [
1241 AC_CHECK_HEADER(pcre.h, [
1242 AC_EGREP_HEADER(pcre_fullinfo, pcre.h, [have_pcre=yes], [AC_MSG_WARN([[pcre old version installed]]); have_pcre=no])
1244 AC_CHECK_HEADER(pcre/pcre.h, [
1245 AC_EGREP_HEADER(pcre_fullinfo, pcre/pcre.h, [have_pcre=yes]; [AC_DEFINE(PCRE_H_IN_SUBDIR)], [AC_MSG_WARN([[pcre old version installed]]); have_pcre=no])
1250 AC_CHECK_LIB(pcreposix, regcomp, [
1251 AC_CHECK_HEADER(pcreposix.h, [
1252 AC_EGREP_HEADER(pcreposix_regerror, pcreposix.h, [AC_MSG_WARN([[pcreposix old version installed]]); have_pcreposix=no], [have_pcreposix=yes])
1254 AC_CHECK_HEADER(pcre/pcreposix.h, [
1255 AC_EGREP_HEADER(pcreposix_regerror, pcre/pcreposix.h, [AC_MSG_WARN([[pcreposix old version installed]]); have_pcreposix=no], [have_pcreposix=yes]; [AC_DEFINE(PCREPOSIX_H_IN_SUBDIR)])
1256 ], [have_pcreposix=no])
1258 ], [have_pcreposix=no], -lpcre)
1260 dnl ================================================================
1261 dnl libpcrs is temporarily disabled.
1263 dnl Privoxy's own pcrs version fixes some problems that
1264 dnl are present in libpcrs 0.3, the last pcrs release we
1265 dnl know of, and as libpcrs seems to be currently unmaintained
1266 dnl we can't send these fixes upstream.
1267 dnl ================================================================
1269 dnl AC_CHECK_LIB(pcrs, pcrs_compile, [AC_CHECK_HEADER(pcrs.h, [have_pcrs=yes], [have_pcrs=no])], [have_pcrs=no], -lpcre)
1271 dnl =================================================================
1273 dnl =================================================================
1277 dnl =================================================================
1279 dnl =================================================================
1281 AC_ARG_ENABLE(toggle,
1282 [ --disable-toggle Don't support temporary disable],
1283 [if test $enableval = yes; then
1284 AC_DEFINE(FEATURE_TOGGLE)
1285 fi],AC_DEFINE(FEATURE_TOGGLE))
1287 AC_ARG_ENABLE(force,
1288 [ --disable-force Don't allow single-page disable],
1289 [if test $enableval = yes; then
1290 AC_DEFINE(FEATURE_FORCE_LOAD)
1291 fi],AC_DEFINE(FEATURE_FORCE_LOAD))
1293 AC_ARG_ENABLE(fast-redirects,
1294 [ --disable-fast-redirects Don't support fast redirects],
1295 [if test $enableval = yes; then
1296 AC_DEFINE(FEATURE_FAST_REDIRECTS)
1297 fi], AC_DEFINE(FEATURE_FAST_REDIRECTS))
1299 AC_ARG_ENABLE(stats,
1300 [ --disable-stats Don't keep statistics],
1301 [if test $enableval = yes; then
1302 AC_DEFINE(FEATURE_STATISTICS)
1303 fi],AC_DEFINE(FEATURE_STATISTICS))
1305 AC_ARG_ENABLE(ie-images,
1306 [ --enable-ie-images Enable a quick but not always reliable auto-detect whether requests from
1307 MS Internet Explorer are for an image or not.],
1308 [if test $enableval = yes; then
1309 AC_DEFINE(FEATURE_IMAGE_DETECT_MSIE)
1312 AC_ARG_ENABLE(image-blocking,
1313 [ --disable-image-blocking Don't try to figure out whether a request is
1314 for an image or HTML - assume HTML.],
1315 [if test $enableval = yes; then
1316 AC_DEFINE(FEATURE_IMAGE_BLOCKING)
1318 AC_DEFINE(FEATURE_IMAGE_BLOCKING))
1320 AC_ARG_ENABLE(acl-files,
1321 [ --disable-acl-files Prevents the use of ACL files to control access to
1322 Privoxy by IP address.],
1323 [if test $enableval = yes; then
1324 AC_DEFINE(FEATURE_ACL)
1326 AC_DEFINE(FEATURE_ACL))
1328 AC_ARG_ENABLE(trust-files,
1329 [ --disable-trust-files Prevents the use of trust files.],
1330 [if test $enableval = yes; then
1331 AC_DEFINE(FEATURE_TRUST)
1333 AC_DEFINE(FEATURE_TRUST))
1335 AC_ARG_ENABLE(editor,
1336 [ --disable-editor Prevents the use of the web-based actions file
1337 editor and web-based temporary disable setting.],
1338 [if test $enableval = yes; then
1339 AC_DEFINE(FEATURE_CGI_EDIT_ACTIONS)
1341 AC_DEFINE(FEATURE_CGI_EDIT_ACTIONS))
1343 AC_ARG_ENABLE(no-gifs,
1344 [ --enable-no-gifs Use politically correct PNG format instead of GIF
1345 for built-in images. May not work with all browsers.],
1346 [if test $enableval = yes; then
1347 AC_DEFINE(FEATURE_NO_GIFS)
1350 AC_ARG_ENABLE(graceful-termination,
1351 [ --enable-graceful-termination Allow to shutdown Privoxy through the webinterface.],
1352 [if test $enableval = yes; then
1353 AC_DEFINE(FEATURE_GRACEFUL_TERMINATION)
1356 AC_ARG_ENABLE(extended-host-patterns,
1357 [ --enable-extended-host-patterns Allow extended regular expressions in host patterns.],
1358 [if test $enableval = yes; then
1359 AC_DEFINE(FEATURE_EXTENDED_HOST_PATTERNS)
1362 dnl pcre/pcrs is needed for CGI anyway, so
1363 dnl the choice is only between static and
1366 AC_ARG_ENABLE(dynamic-pcre,
1367 [ --disable-dynamic-pcre Use the built-in, static pcre, even if libpcre is available],
1368 [ if test $enableval = "no"; then have_pcre=no; fi ])
1370 dnl =================================================
1371 dnl libpcrs is temporarily disabled,
1372 dnl see comment above for the reason.
1373 dnl =================================================
1374 dnl AC_ARG_ENABLE(dynamic-pcrs,
1375 dnl [ --disable-dynamic-pcrs Use the built-in, static pcrs, even if libpcrs is available],
1376 dnl [ if test $enableval = "no"; then have_pcrs=no; fi ])
1379 dnl ====================================================
1380 dnl This check is incomplete. For mingw32 zlib is found
1381 dnl by configure, but not necessarily by the compiler.
1382 dnl ====================================================
1384 [ --disable-zlib Don't use zlib to decompress data before filtering.],
1385 [enableval2=$enableval],
1387 if test $enableval2 = yes; then
1388 AC_CHECK_LIB(z, zlibVersion, [have_zlib="yes"], [have_zlib="no"])
1389 if test $have_zlib = "yes"; then
1391 AC_DEFINE(FEATURE_ZLIB,1,[Define to 1 to use compression through the zlib library.])
1393 AC_MSG_WARN([No zlib found.
1394 Privoxy will not be able to filter compressed content.
1395 This may become a fatal error in the future.])
1400 # If we have libpcre and either we also have pcreposix or
1401 # we don't need pcreposix, then link pcre dynamically; else
1402 # build it and link statically
1404 if test $have_pcre = "yes"; then
1405 echo "using libpcre"
1408 LIBS="$LIBS -lpcre -lpcreposix"
1410 AC_MSG_WARN([You are using the static PCRE code which is scheduled for removal, for details see:
1411 https://sourceforge.net/mailarchive/message.php?msg_id=20080511195555.2dc6cfdc%40fabiankeil.de])
1413 AC_DEFINE(STATIC_PCRE)
1417 if test $have_pthread = "yes" -o $target_type = "mingw"; then
1418 echo Enabling keep-alive support for outgoing connections.
1419 AC_DEFINE(FEATURE_CONNECTION_KEEP_ALIVE)
1422 dnl =================================================
1423 dnl libpcrs is temporarily disabled,
1424 dnl see comment above for the reason.
1425 dnl =================================================
1426 dnl # If we have libpcrs and pcre is linked dynamically
1427 dnl # then also link pcrs dynamically, else build and link
1428 dnl # pcrs statically
1430 dnl if test $have_pcrs = "yes" -a $pcre_dyn = "yes"; then
1431 dnl echo "using libpcrs"
1432 dnl STATIC_PCRS_ONLY=#
1433 dnl LIBS="$LIBS -lpcrs"
1435 dnl echo "using built-in static pcrs"
1436 AC_DEFINE(STATIC_PCRS)
1440 AC_SUBST(STATIC_PCRE_ONLY)
1441 AC_SUBST(STATIC_PCRS_ONLY)
1443 dnl =================================================================
1444 dnl Final cleanup and output
1445 dnl =================================================================
1447 dnl Remove the SPECIAL_CFLAGS stuff from CFLAGS, and add it seperately
1449 CFLAGS=$old_CFLAGS_nospecial
1450 AC_SUBST(SPECIAL_CFLAGS)
1452 AC_SUBST(PTHREAD_LIB)
1454 AC_OUTPUT(GNUmakefile doc/source/ldp.dsl)