check_expr2: fix cross-compile/hardening issues

When building check_expr2 with ASLR PIE hardening enabled the linker
fails. This is resolved by adding the regular compiler flags when
building the object files from ast_expr2f.c and ast_expr2.c.

Note: The STANDALONE define is removed because it is already defined in
_ASTCFLAGS. YY_NO_INPUT is defined so that the compile survives
'--enable-dev-mode'.

Also, a Makefile variable "CROSS_COMPILING" is added so that the
build system doesn't try to run check_expr2 when cross-compiling,
because that will fail the build as will.

ASTERISK-28685 #close

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
Change-Id: If435b7db9f9ad8266245bda51c81c220f9658915
This commit is contained in:
Sebastian Kemper
2020-01-12 12:37:46 +01:00
parent 838583783f
commit b7fbb9c41f
5 changed files with 58 additions and 73 deletions

View File

@@ -66,6 +66,8 @@ OSREV=@PBX_OSREV@
BIND8_CFLAGS=@BIND8_CFLAGS@
CROSS_COMPILING=@CROSS_COMPILING@
PTHREAD_CFLAGS=@PTHREAD_CFLAGS@
PTHREAD_LIBS=@PTHREAD_LIBS@