mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-01-18 18:44:06 +08:00
1907dca905
We previously found out that OS X's standard perl installation tries to put
-arch switches into Perl link commands, evidently in hopes of building
universal binaries. But it doesn't work to add such switches in plperl's
link step if they weren't being used earlier, so this is basically
unworkable. When using gcc the result is only some warnings; but LLVM
fails entirely, so this issue isn't as cosmetic as we originally thought.
Hence, back-patch commit d69a419e68
into
pre-9.0 branches.
48 lines
1.6 KiB
Plaintext
48 lines
1.6 KiB
Plaintext
# $PostgreSQL: pgsql/config/perl.m4,v 1.3.10.1 2008/11/12 00:00:29 adunstan Exp $
|
|
|
|
|
|
# PGAC_PATH_PERL
|
|
# --------------
|
|
AC_DEFUN([PGAC_PATH_PERL],
|
|
[AC_PATH_PROG(PERL, perl)])
|
|
|
|
|
|
# PGAC_CHECK_PERL_CONFIG(NAME)
|
|
# ----------------------------
|
|
AC_DEFUN([PGAC_CHECK_PERL_CONFIG],
|
|
[AC_REQUIRE([PGAC_PATH_PERL])
|
|
AC_MSG_CHECKING([for Perl $1])
|
|
perl_$1=`$PERL -MConfig -e 'print $Config{$1}'`
|
|
AC_SUBST(perl_$1)dnl
|
|
AC_MSG_RESULT([$perl_$1])])
|
|
|
|
|
|
# PGAC_CHECK_PERL_CONFIGS(NAMES)
|
|
# ------------------------------
|
|
AC_DEFUN([PGAC_CHECK_PERL_CONFIGS],
|
|
[m4_foreach([pgac_item], [$1], [PGAC_CHECK_PERL_CONFIG(pgac_item)])])
|
|
|
|
|
|
# PGAC_CHECK_PERL_EMBED_LDFLAGS
|
|
# -----------------------------
|
|
# We are after Embed's ldopts, but without the subset mentioned in
|
|
# Config's ccdlflags; and also without any -arch flags, which recent
|
|
# Apple releases put in unhelpfully. (If you want a multiarch build
|
|
# you'd better be specifying it in more places than plperl's final link.)
|
|
AC_DEFUN([PGAC_CHECK_PERL_EMBED_LDFLAGS],
|
|
[AC_REQUIRE([PGAC_PATH_PERL])
|
|
AC_MSG_CHECKING(for flags to link embedded Perl)
|
|
pgac_tmp1=`$PERL -MExtUtils::Embed -e ldopts`
|
|
pgac_tmp2=`$PERL -MConfig -e 'print $Config{ccdlflags}'`
|
|
perl_embed_ldflags=`echo X"$pgac_tmp1" | sed -e "s/^X//" -e "s%$pgac_tmp2%%" -e ["s/ -arch [-a-zA-Z0-9_]*//g"]`
|
|
AC_SUBST(perl_embed_ldflags)dnl
|
|
if test -z "$perl_embed_ldflags" ; then
|
|
AC_MSG_RESULT(no)
|
|
AC_MSG_ERROR([could not determine flags for linking embedded Perl.
|
|
This probably means that ExtUtils::Embed or ExtUtils::MakeMaker is not
|
|
installed.])
|
|
else
|
|
AC_MSG_RESULT([$perl_embed_ldflags])
|
|
fi
|
|
])# PGAC_CHECK_PERL_EMBED_LDFLAGS
|