Index: Mk/Uses/cargo.mk =================================================================== --- Mk/Uses/cargo.mk (revision 513462) +++ Mk/Uses/cargo.mk (working copy) @@ -74,7 +74,7 @@ RUSTFLAGS+= ${CFLAGS:M-mcpu=*:S/-mcpu=/-C target-cpu=/} .endif -.if ${ARCH} == powerpc64 +.if ${ARCH} == powerpc64 && ${PPC_ABI} == ELFv1 USE_GCC?= yes .endif Index: Mk/Uses/qt-dist.mk =================================================================== --- Mk/Uses/qt-dist.mk (revision 513462) +++ Mk/Uses/qt-dist.mk (working copy) @@ -166,6 +166,7 @@ CONFIGURE_ARGS+= -verbose . endif +#. if ${ARCH:Mmips*} || ${ARCH} == powerpc || ${ARCH} == powerpcspe || (${ARCH} == powerpc64 && PPC_ABI == ELFv1) || ${ARCH} == sparc64 . if ${_QT_DIST} == "base" _EXTRA_PATCHES_QT5= ${PORTSDIR}/devel/${_QT_RELNAME}/files/extrapatch-mkspecs_features_create__cmake.prf \ ${PORTSDIR}/devel/${_QT_RELNAME}/files/extrapatch-mkspecs_features_qt__module.prf \ @@ -172,7 +173,7 @@ ${PORTSDIR}/devel/${_QT_RELNAME}/files/extrapatch-mkspecs_common_bsd_bsd.conf \ ${PORTSDIR}/devel/${_QT_RELNAME}/files/extrapatch-mkspecs_freebsd-clang_qmake.conf \ ${PORTSDIR}/devel/${_QT_RELNAME}/files/extrapatch-mkspecs_features_data_cmake_Qt5BasicConfig.cmake.in -. if ${ARCH:Mmips*} || ${ARCH:Mpowerpc*} || ${ARCH} == sparc64 +. if ${ARCH:Mmips*} || ${ARCH} == powerpc || ${ARCH} == powerpcspe || (${ARCH} == powerpc64 && ${PPC_ABI} == ELFv1) || ${ARCH} == sparc64 _EXTRA_PATCHES_QT5+= ${PORTSDIR}/devel/${_QT_RELNAME}/files/extra-patch-mkspecs_common_g++-base.conf \ ${PORTSDIR}/devel/${_QT_RELNAME}/files/extra-patch-mkspecs_common_gcc-base.conf \ ${PORTSDIR}/devel/${_QT_RELNAME}/files/extrapatch-mkspecs_freebsd-g++_qmake.conf Index: Mk/bsd.gecko.mk =================================================================== --- Mk/bsd.gecko.mk (revision 513462) +++ Mk/bsd.gecko.mk (working copy) @@ -329,7 +329,9 @@ .elif ${ARCH:Mpowerpc*} . if ${ARCH} == "powerpc64" MOZ_EXPORT+= UNAME_m="${ARCH}" +. if ${PPC_ABI} == ELFv1 CFLAGS+= -mminimal-toc +. endif . endif .elif ${ARCH} == "sparc64" # Work around miscompilation/mislinkage of the sCanonicalVTable hacks. Index: Mk/bsd.port.mk =================================================================== --- Mk/bsd.port.mk (revision 513462) +++ Mk/bsd.port.mk (working copy) @@ -1126,6 +1126,13 @@ .endif _EXPORTED_VARS+= ARCH +.if ${ARCH} == powerpc64 +PPC_ABI!= ${CC} -dM -E - < /dev/null | ${AWK} '/_CALL_ELF/{print "ELFv"$$3}' +. if ${PPC_ABI} != ELFv2 +PPC_ABI= ELFv1 +. endif +.endif + # Get operating system versions for a cross build .if defined(CROSS_SYSROOT) .if !exists(${CROSS_SYSROOT}/usr/include/sys/param.h)