Perl: propagated compile options from perl build.
Some Perl compile options affects ABI and not using them while compiling our module resulted in non-working build. Notably on 32-bit Debian 10, Perl is built with -D_FILE_OFFSET_BITS=64 and our module after being compiled without this option caused segmentation faults in unexpected places.
This commit is contained in:
@@ -57,6 +57,7 @@ nxt_found=no
|
|||||||
if /bin/sh -c "$NXT_PERL -MConfig -e 'print \"Perl version: \",
|
if /bin/sh -c "$NXT_PERL -MConfig -e 'print \"Perl version: \",
|
||||||
\$Config{version}, \"\\n\"'" >> $NXT_AUTOCONF_ERR 2>&1; then
|
\$Config{version}, \"\\n\"'" >> $NXT_AUTOCONF_ERR 2>&1; then
|
||||||
|
|
||||||
|
NXT_PERL_CFLAGS=`$NXT_PERL -MExtUtils::Embed -e ccflags | sed -e 's/^ //;s/ $//'`
|
||||||
NXT_PERL_INCLUDE=`$NXT_PERL -MExtUtils::Embed -e perl_inc | sed -e 's/^ //;s/ $//'`
|
NXT_PERL_INCLUDE=`$NXT_PERL -MExtUtils::Embed -e perl_inc | sed -e 's/^ //;s/ $//'`
|
||||||
NXT_PERL_LDOPTS=`$NXT_PERL -MExtUtils::Embed -e ldopts | sed -e 's/^ //;s/ $//'`
|
NXT_PERL_LDOPTS=`$NXT_PERL -MExtUtils::Embed -e ldopts | sed -e 's/^ //;s/ $//'`
|
||||||
|
|
||||||
@@ -165,7 +166,7 @@ for nxt_src in $NXT_PERL_MODULE_SRCS; do
|
|||||||
|
|
||||||
$NXT_BUILD_DIR/$nxt_obj: $nxt_src
|
$NXT_BUILD_DIR/$nxt_obj: $nxt_src
|
||||||
mkdir -p $NXT_BUILD_DIR/src/perl
|
mkdir -p $NXT_BUILD_DIR/src/perl
|
||||||
\$(CC) -c \$(CFLAGS) \$(NXT_INCS) $NXT_PERL_INCLUDE \\
|
\$(CC) -c \$(CFLAGS) $NXT_PERL_CFLAGS \$(NXT_INCS) $NXT_PERL_INCLUDE \\
|
||||||
$nxt_dep_flags \\
|
$nxt_dep_flags \\
|
||||||
-o $NXT_BUILD_DIR/$nxt_obj $nxt_src
|
-o $NXT_BUILD_DIR/$nxt_obj $nxt_src
|
||||||
$nxt_dep_post
|
$nxt_dep_post
|
||||||
|
|||||||
@@ -8,7 +8,6 @@
|
|||||||
#define _NXT_PERL_PSGI_LAYER_H_INCLUDED_
|
#define _NXT_PERL_PSGI_LAYER_H_INCLUDED_
|
||||||
|
|
||||||
|
|
||||||
#define _GNU_SOURCE
|
|
||||||
#include <EXTERN.h>
|
#include <EXTERN.h>
|
||||||
#include <XSUB.h>
|
#include <XSUB.h>
|
||||||
#include <perl.h>
|
#include <perl.h>
|
||||||
|
|||||||
Reference in New Issue
Block a user