From owner-svn-ports-head@freebsd.org Mon Dec 18 17:48:45 2017 Return-Path: Delivered-To: svn-ports-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1B1E0E9F32B; Mon, 18 Dec 2017 17:48:45 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E96A766A59; Mon, 18 Dec 2017 17:48:44 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id vBIHmixq021768; Mon, 18 Dec 2017 17:48:44 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id vBIHmhW7021766; Mon, 18 Dec 2017 17:48:43 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201712181748.vBIHmhW7021766@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Mon, 18 Dec 2017 17:48:43 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r456663 - in head/devel/libffi: . files X-SVN-Group: ports-head X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in head/devel/libffi: . files X-SVN-Commit-Revision: 456663 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 18 Dec 2017 17:48:45 -0000 Author: dim (src committer) Date: Mon Dec 18 17:48:43 2017 New Revision: 456663 URL: https://svnweb.freebsd.org/changeset/ports/456663 Log: Apply upstream change from libffi to check for HAVE_AS_X86_PCREL for all x86 targets. This should eliminate any text relocations, in particular for the i386 build, making it possible to build the port with lld without having to use -z notext. Obtained from: https://github.com/libffi/libffi/pull/174 Approved by: zeising (maintainer) PR: 214864 MFH: 2017Q4 Modified: head/devel/libffi/Makefile head/devel/libffi/files/patch-configure Modified: head/devel/libffi/Makefile ============================================================================== --- head/devel/libffi/Makefile Mon Dec 18 17:39:29 2017 (r456662) +++ head/devel/libffi/Makefile Mon Dec 18 17:48:43 2017 (r456663) @@ -3,7 +3,7 @@ PORTNAME= libffi PORTVERSION= 3.2.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= devel MASTER_SITES= SOURCEWARE/${PORTNAME} Modified: head/devel/libffi/files/patch-configure ============================================================================== --- head/devel/libffi/files/patch-configure Mon Dec 18 17:39:29 2017 (r456662) +++ head/devel/libffi/files/patch-configure Mon Dec 18 17:48:43 2017 (r456663) @@ -1,6 +1,6 @@ ---- configure.orig 2014-11-12 05:59:57.000000000 -0600 -+++ configure 2017-07-13 14:20:48.680289000 -0500 -@@ -17221,7 +17221,7 @@ +--- configure.orig 2014-11-12 11:59:57 UTC ++++ configure +@@ -17221,7 +17221,7 @@ case "$host" in mips-sgi-irix5.* | mips-sgi-irix6.* | mips*-*-rtems*) TARGET=MIPS; TARGETDIR=mips ;; @@ -9,14 +9,116 @@ # Support 128-bit long double for NewABI. HAVE_LONG_DOUBLE='defined(__mips64)' TARGET=MIPS; TARGETDIR=mips -@@ -17254,6 +17254,10 @@ - powerpc-*-freebsd* | powerpc-*-openbsd*) +@@ -17255,6 +17255,10 @@ case "$host" in TARGET=POWERPC_FREEBSD; TARGETDIR=powerpc HAVE_LONG_DOUBLE_VARIANT=1 -+ ;; + ;; + powerpcspe-*-freebsd*) + TARGET=POWERPC_FREEBSD; TARGETDIR=powerpc + CFLAGS="$CFLAGS -D__NO_FPRS__" - ;; ++ ;; powerpc64-*-freebsd*) TARGET=POWERPC; TARGETDIR=powerpc + ;; +@@ -18289,7 +18293,8 @@ $as_echo "#define HAVE_AS_CFI_PSEUDO_OP 1" >>confdefs. + fi + + +-if test x$TARGET = xSPARC; then ++case "$TARGET" in ++ SPARC) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler and linker support unaligned pc related relocs" >&5 + $as_echo_n "checking assembler and linker support unaligned pc related relocs... " >&6; } + if ${libffi_cv_as_sparc_ua_pcrel+:} false; then : +@@ -18363,9 +18368,9 @@ $as_echo "$libffi_cv_as_register_pseudo_op" >&6; } + $as_echo "#define HAVE_AS_REGISTER_PSEUDO_OP 1" >>confdefs.h + + fi +-fi ++ ;; + +-if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64; then ++ X86*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler supports pc related relocs" >&5 + $as_echo_n "checking assembler supports pc related relocs... " >&6; } + if ${libffi_cv_as_x86_pcrel+:} false; then : +@@ -18386,77 +18391,8 @@ $as_echo "$libffi_cv_as_x86_pcrel" >&6; } + $as_echo "#define HAVE_AS_X86_PCREL 1" >>confdefs.h + + fi +- +- { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler .ascii pseudo-op support" >&5 +-$as_echo_n "checking assembler .ascii pseudo-op support... " >&6; } +-if ${libffi_cv_as_ascii_pseudo_op+:} false; then : +- $as_echo_n "(cached) " >&6 +-else +- +- libffi_cv_as_ascii_pseudo_op=unknown +- # Check if we have .ascii +- cat confdefs.h - <<_ACEOF >conftest.$ac_ext +-/* end confdefs.h. */ +- +-int +-main () +-{ +-asm (".ascii \\"string\\""); +- ; +- return 0; +-} +-_ACEOF +-if ac_fn_c_try_compile "$LINENO"; then : +- libffi_cv_as_ascii_pseudo_op=yes +-else +- libffi_cv_as_ascii_pseudo_op=no +-fi +-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +- +-fi +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_ascii_pseudo_op" >&5 +-$as_echo "$libffi_cv_as_ascii_pseudo_op" >&6; } +- if test "x$libffi_cv_as_ascii_pseudo_op" = xyes; then +- +-$as_echo "#define HAVE_AS_ASCII_PSEUDO_OP 1" >>confdefs.h +- +- fi +- +- { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler .string pseudo-op support" >&5 +-$as_echo_n "checking assembler .string pseudo-op support... " >&6; } +-if ${libffi_cv_as_string_pseudo_op+:} false; then : +- $as_echo_n "(cached) " >&6 +-else +- +- libffi_cv_as_string_pseudo_op=unknown +- # Check if we have .string +- cat confdefs.h - <<_ACEOF >conftest.$ac_ext +-/* end confdefs.h. */ +- +-int +-main () +-{ +-asm (".string \\"string\\""); +- ; +- return 0; +-} +-_ACEOF +-if ac_fn_c_try_compile "$LINENO"; then : +- libffi_cv_as_string_pseudo_op=yes +-else +- libffi_cv_as_string_pseudo_op=no +-fi +-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +- +-fi +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_string_pseudo_op" >&5 +-$as_echo "$libffi_cv_as_string_pseudo_op" >&6; } +- if test "x$libffi_cv_as_string_pseudo_op" = xyes; then +- +-$as_echo "#define HAVE_AS_STRING_PSEUDO_OP 1" >>confdefs.h +- +- fi +-fi ++ ;; ++esac + + # On PaX enable kernels that have MPROTECT enable we can't use PROT_EXEC. + # Check whether --enable-pax_emutramp was given.