35 Commits

Author SHA1 Message Date
Ervin Hegedus
854906de7c
Typo fix
Co-authored-by: Max Leske <250711+theseion@users.noreply.github.com>
2025-05-16 09:40:10 +02:00
Ervin Hegedus
2ed32f2035
Fix option check condition 2025-05-15 21:50:02 +02:00
Ervin Hegedus
d7b38f034e
Refactor code and build system to use libpcre2 as the default 2025-05-15 21:13:52 +02:00
Ervin Hegedus
b7a4a4428c
Replace obsolote macros 2024-02-25 20:28:12 +01:00
Martin Vierula
d4310f54cc
Configure: do not check for pcre1 if pcre2 requested 2023-08-24 15:01:14 -07:00
Lars Wendler
4b9edaddfc build: Avoid bashisms
otherwise configure fails to find pcre2 when /bin/sh does not point to bash:

  configure: using pcre v8.45
  ./configure: 16601: test: xno: unexpected operator
  ./configure: 16601: test: xno: unexpected operator
  checking for libpcre2 config script... no
  configure: *** pcre2 library not found.
  configure: error: pcre2 library is required

Signed-off-by: Lars Wendler <polynomial-c@gmx.de>
2023-03-14 11:36:22 +01:00
Martin Vierula
f9bb518be5 Only check for pcre2 install if required 2022-11-16 11:35:10 -08:00
martinhsv
701365f8f1
Merge pull request #2818 from hughmcmaster/libxml2-mods2
Use pkg-config to find libxml2, falling back to xml2-config if necessary
2022-11-11 16:52:01 -05:00
Martin Vierula
8fc0b519b7
Support for PCRE2 2022-11-08 08:06:39 -08:00
Hugh McMaster
baa38ddbaf build/find_xml.m4: Check for libxml2 via pkg-config then xml2-config
Debian is taking steps to remove xml2-config in favour of pkg-config.
This means ModSecurity will build without libxml2 support by default
on Debian, Ubuntu and other distributions tracking Debian packages.

This patch modifies build/find_xml.m4 to check for libxml2 via
pkg-config, falling back to xml2-config if necessary.
2022-10-16 18:46:26 +11:00
Charles Peterson
d6366d12e6
fix when multiple lines for curl version
example....

### before fix

```bash
# /usr/bin/curl  --version | sed 's/^[^0-9][^[:space:]][^[:space:]]*[[:space:]]*//'
7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.27.1 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
tftp ftp telnet dict ldap ldaps http file https ftps scp sftp
GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz
```

### after fix

```bash
 # /usr/bin/curl  --version | sed 's/^[^0-9][^[:space:]][^[:space:]]*[[:space:]]*//' | tr '\r\n' ' '
7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.27.1 zlib/1.2.3 libidn/1.18 libssh2/1.4.2 tftp ftp telnet dict ldap ldaps http file https ftps scp sftp  GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz
```
2018-05-10 15:24:04 -03:00
Thomas Deutschmann
c729b6d0ab
configure: Fix detection whether libcurl is linked against gnutls
The find_curl macro is also checking whether libcurl is linked against
gnutls. However the check depends on "CURL_LIBS" which wasn't defined
by the macro.

This commit will define "CURL_LIBS" so that the check works as expected.
2016-06-14 13:48:01 -03:00
Felipe Zimmerle
05bcafd4fc Extends Lua implementation to support Lua 5.3 2016-01-08 18:39:29 -03:00
Kurt Newman
d9bebfb874 Compiles against ssdeep in non-standard location
Issue 871: (*nix) Tacks on the include and lib directory when
a the user specifies a path for ssdeep in an alternate location.
2015-05-04 09:56:03 -03:00
Felipe Zimmerle
23823bb2c3 Makes Curl no longer a mandatory depedency for ModSecurity core
As reported by Rainer Jung, Curl may not be mandatory to build
	ModSecurity core. This patch make it optional by:
	- Concentrate all downloads using curl on msc_remote_rules.c
	- Split Curl build definitions checks into: WITH_CURL, WITH_REMOTE_RULES
	and WITH_CRYPTO.
	  - WITH_CURL: Contains Culr headers and binaries during the build time.
	  - WITH_REMOTE_RULES: Currently enabled if Curl is present.
	  - WITH_CRYPTO: Set if apr tool was compiled with crypto support.
	- Renames msc_remote_grab_content to msc_remote_download_content
2014-12-03 08:28:59 -08:00
Felipe Zimmerle
eb61e891ae Build: New alternative to identify the presence of libfuzzy
Searching for the fuzzy.h instead of the .so file.
2014-11-14 11:53:40 -08:00
Felipe Zimmerle
f45c6fe874 Build: fix the build script that looks for yajl
The script was looking for the wrong header file. Instead of look for
yajl_parse.h it was looking for yajl.h. Originally reported by
@rpfilomeno at #804.
2014-11-14 11:53:39 -08:00
Felipe Zimmerle
2615a5dfc8 mlogc: Checks if curl supports CURL_SSLVERSION_TLSv1_2 before use it
Seems like curl versions older than 7.34.0 does not have support for
`CURL_SSLVERSION_TLSv1_2'. In this cases, using CURL_SSLVERSION_TLSv1
which was added at version 7.9.2. ModSecurity demands a curl version
newer than 7.15.1.
2014-11-14 11:53:39 -08:00
Daniel J. Luke
d554b94d1e Include apr-util's LDFLAGS
Using apr-util installed by Macports results in build failure because apr-util uses BerkeleyDB that MacPorts installs into a subdir of $prefix/lib and $prefix/include (so that multiple versions of BerkeleyDB can be installed simultaneously). apu-1-config's --ldflags output includes the -L/path/to/bdb that's needed.
2014-11-14 11:53:39 -08:00
Felipe Zimmerle
873c628b1a Adds ssdeep support in our build system
ssdeep will be used with the @fuzzyHash operator which is under
development
2014-11-14 11:53:39 -08:00
Felipe Zimmerle
8d4c3e4f5c Makes the build system to look for yajl using a macro file
Now searching for yajl using find_yajl.m4 macro file instead
of using pkg-config directly. If YAJL was not found or if it
was disabled in the configure phase, the code will be compiled
without JSON support.
2014-03-31 16:22:09 -07:00
Felipe Zimmerle
f043ba33a3 Adds .a to the list of expected liblua extension
While download and installed on MacOS, liblua5.1, by default, place
itself, under the folder /usr/local/lib with the extension: .a.
2014-01-18 01:29:02 -03:00
chaizhenhua
088c660d58 Improved build script 2013-03-31 15:24:45 +08:00
Breno Silva
f920303e8b Fixed change from double to single quotes in find_pcre.m4 2012-12-17 14:45:50 -04:00
Breno Silva
a528e1c92a Added -R option to libtool with pcre lib path 2012-10-30 18:06:15 -04:00
brenosilva
7ea0e1223b Libxml2 must be at least 2.6.29 for 2.7.0 2012-08-27 18:00:29 +00:00
brenosilva
dc41b967b7 Fixed building with LUA 2011-06-06 15:42:36 +00:00
brenosilva
c41c3cee26 Fixed building with LUA 2011-06-06 14:53:21 +00:00
brenosilva
352fc200b4 Remove extra useless files 2011-05-03 13:41:40 +00:00
brenosilva
0b3ed41812 Avoid *FLAGS resetting - Diego Elio 2011-04-26 21:10:51 +00:00
brenosilva
9fb9aeb6a9 Detele useless files 2011-04-20 18:30:12 +00:00
brenosilva
c4f3d121f8 Fix without-lua into trunk - Diego Elio 2011-04-19 16:34:59 +00:00
b1v1r
8553cab4a7 Moved api examples to "ext" dir and hooked them into autotools for building with "--enable-extentions".
Upgraded to autoconf 2.65.
2010-05-05 23:00:48 +00:00
b1v1r
cea87f4085 Fixed test/test-gregression build targets. 2010-04-27 09:33:56 +00:00
b1v1r
eb6b9274af Redo build system to properly use autotools and avoid compilation with apxs util. 2010-04-25 23:24:09 +00:00