7 Commits

Author SHA1 Message Date
JustCoding247
7b040b37f4
Fix lib64 detection for 7 libraries and resolve double-slash paths
Fixes #3404: Configure script fails to detect lib64-installed libraries

This commit addresses the configure script's inability to detect YAJL, LMDB,
and PCRE2 libraries when installed in lib64 directories, and extends the fix
to all library detection scripts to ensure comprehensive lib64 support across
the entire ModSecurity build system.

Libraries fixed with lib64 detection support:
- build/yajl.m4 - YAJL JSON parsing library (lines 7096, 7164)
- build/lmdb.m4 - Lightning Memory-Mapped Database (lines 7870, 7945)
- build/pcre2.m4 - Perl Compatible Regular Expressions v2 (lines 9086, 9161)
- build/lua.m4 - Lua scripting language
- build/ssdeep.m4 - SSDEEP fuzzy hashing library
- build/libgeoip.m4 - GeoIP library
- build/libmaxmind.m4 - MaxMind library

Additional improvements:
- Fix double-slash path issues by removing trailing slashes from path assignments
- Follow existing pattern used by MaxMind and other libraries
- Total: 12 lib64 detection points added across all library detection scripts

Impact:
- Resolves compilation failures on systems using lib64 directories
- Enables ModSecurity compilation in container environments
- Supports standard 64-bit library installation paths
- Provides comprehensive lib64 support across all library dependencies

Tested on multiple Linux distributions:
- Alma Linux 9, 10
- CentOS Stream 9, 10
- Oracle Linux 9, 10
- Rocky Linux 9, 10
- Ubuntu 22.04, 24.04
- Debian 12, 13

Closes #3404
2025-06-22 06:23:23 +00:00
Gabor Berkes
784cf0b64c Debug: increase verbosity in pcre2.m4 for macOS GitHub Actions
Added AC_MSG_NOTICE macros to pcre2.m4 to enhance debugging output. This change aims to identify the cause of build failures on macOS runners in GitHub Actions, which do not occur locally or on other platforms (Linux, Windows).

The added verbosity will help trace the build process and inspect variable values for inconsistencies in the macOS runner environment.
2024-12-11 08:57:43 +00:00
Gabor Berkes
a07d0c7d34 Fix missing libpcre2 dependency on macOS GitHub runner
Identified an issue where the macOS GitHub runner no longer includes the libpcre2 library by default. Updated the workflow configuration to explicitly add libpcre2 as a dependency, ensuring successful builds and compatibility with the updated build system.

This change prevents build failures on macOS environments and aligns the runner's setup with project requirements.
2024-12-10 21:40:09 +00:00
Gabor Berkes
c6433df7b2 Refactor build system to use libpcre2 as the default
Updated the build system and related source files to use libpcre2 as the
default regex library instead of the deprecated libpcre. This change
ensures future compatibility and aligns with the library's maintenance status.

To build with the old libpcre, the `--with-pcre` configuration parameter
can be specified.
2024-12-10 10:16:14 +00:00
Martin Vierula
31cbd7309a
Configure: add additional name to pcre2 pkg-config list 2023-08-02 05:45:58 -07:00
Hugh McMaster
f05f322302 Use AS_HELP_STRING instead of the obsolete AC_HELP_STRING macro
AC_HELP_STRING has been obsolete since at least Autoconf 2.53,
which was released in 2003.
2022-10-16 18:16:01 +11:00
Martin Vierula
f84614fe06 Support PCRE2 2022-04-13 10:44:56 -07:00