mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-01-18 11:40:50 +00:00
BUILD: makefile: fix PCRE overriding specific lib path
PCRE relies on pcre-config binary tool to provide includes/libs paths. This may generate standard entries such as '/usr/lib' which will override more specific ones if present before them on the linking step. This situation was encountered when building with both QuicTLS and PCRE. This generates a linking error as the default SSL libraries were used for linking even with correct SSL flags pointing to QuicTLS dirs. To fix this issue, USE_PCRE and its affiliated options have been moved at the end of 'use_opts' variable. Indeed, related CFLAGS/LDFLAGS are concatenated in their order of appearance through the macro collect_opts_flags (see include/make/options.mk). PCRE in the last position ensures it won't override specific entries declared before.
This commit is contained in:
parent
5e7ecbec99
commit
565e3cc43a
14
Makefile
14
Makefile
@ -296,10 +296,14 @@ LDFLAGS = $(ARCH_FLAGS) -g
|
|||||||
#### list of all "USE_*" options. These ones must be updated if new options are
|
#### list of all "USE_*" options. These ones must be updated if new options are
|
||||||
# added, so that the relevant options are properly added to the CFLAGS and to
|
# added, so that the relevant options are properly added to the CFLAGS and to
|
||||||
# the reported build options.
|
# the reported build options.
|
||||||
use_opts = USE_EPOLL USE_KQUEUE USE_NETFILTER \
|
#
|
||||||
USE_PCRE USE_PCRE_JIT USE_PCRE2 USE_PCRE2_JIT USE_POLL \
|
# Relevant *_CFLAGS/*_LDFLAGS will be concatenated in the order defined here.
|
||||||
|
# Note that PCRE last position is advisable as it relies on pcre configuration
|
||||||
|
# detection tool which may generate default include/lib paths overriding more
|
||||||
|
# specific entries if present before them.
|
||||||
|
use_opts = USE_EPOLL USE_KQUEUE USE_NETFILTER USE_POLL \
|
||||||
USE_THREAD USE_PTHREAD_EMULATION USE_BACKTRACE \
|
USE_THREAD USE_PTHREAD_EMULATION USE_BACKTRACE \
|
||||||
USE_STATIC_PCRE USE_STATIC_PCRE2 USE_TPROXY USE_LINUX_TPROXY \
|
USE_TPROXY USE_LINUX_TPROXY \
|
||||||
USE_LINUX_SPLICE USE_LIBCRYPT USE_CRYPT_H USE_ENGINE \
|
USE_LINUX_SPLICE USE_LIBCRYPT USE_CRYPT_H USE_ENGINE \
|
||||||
USE_GETADDRINFO USE_OPENSSL USE_OPENSSL_WOLFSSL USE_SSL USE_LUA \
|
USE_GETADDRINFO USE_OPENSSL USE_OPENSSL_WOLFSSL USE_SSL USE_LUA \
|
||||||
USE_ACCEPT4 USE_CLOSEFROM USE_ZLIB USE_SLZ USE_CPU_AFFINITY \
|
USE_ACCEPT4 USE_CLOSEFROM USE_ZLIB USE_SLZ USE_CPU_AFFINITY \
|
||||||
@ -307,7 +311,9 @@ use_opts = USE_EPOLL USE_KQUEUE USE_NETFILTER \
|
|||||||
USE_DEVICEATLAS USE_51DEGREES \
|
USE_DEVICEATLAS USE_51DEGREES \
|
||||||
USE_WURFL USE_SYSTEMD USE_OBSOLETE_LINKER USE_PRCTL USE_PROCCTL \
|
USE_WURFL USE_SYSTEMD USE_OBSOLETE_LINKER USE_PRCTL USE_PROCCTL \
|
||||||
USE_THREAD_DUMP USE_EVPORTS USE_OT USE_QUIC USE_PROMEX \
|
USE_THREAD_DUMP USE_EVPORTS USE_OT USE_QUIC USE_PROMEX \
|
||||||
USE_MEMORY_PROFILING USE_SHM_OPEN
|
USE_MEMORY_PROFILING USE_SHM_OPEN \
|
||||||
|
USE_STATIC_PCRE USE_STATIC_PCRE2 \
|
||||||
|
USE_PCRE USE_PCRE_JIT USE_PCRE2 USE_PCRE2_JIT
|
||||||
|
|
||||||
# preset all variables for all supported build options among use_opts
|
# preset all variables for all supported build options among use_opts
|
||||||
$(reset_opts_vars)
|
$(reset_opts_vars)
|
||||||
|
Loading…
Reference in New Issue
Block a user