freebsd-ports/lang/gnatdroid-binutils/Makefile
John Marino 82cfb486dc Add gnatdroid-x86 (3 new ports), X-compiler to Android-x86
Similar to lang/gnatdroid-armv7, lang/gnatdroid-x86 is a cross-compiler
targetting Android. The former targets ARMv7 processors while the latter
targets Android on x86 (32-bit).  The latter also runs on Virtualbox as
a bonus.  The new ports are implemented as slaves to the ARMv7 versions.

The GNAT ACATS were run, and it passed every test except CXG2024,
"accuracy of multiplication and division of mixed decimal and binary
fixed point numbers".
subtest 13: expected -51.00 got 50.0
subtest 14: expected 51.0 got 50.0

This is probably a rounding error unique to 32-bit x86.  Overall this
version passed better than gnatdroid-armv7 because unwind is supported,
enabling check check support.

Also added:
lang/gnatdroid-sysroot-x86 (KitKat and Lollipop API)
lang/gnatdroid-binutils-x86

Despite the desciption, C++, Fortran and Objective-C should also work
well (in addition to advertised C and Ada frontends).

===

The gnatdroid-x86 port builds a C/Ada cross-compiler based on GCC 4.9
that targets the Android operating system (up to version 5.0, API level
21) running on x86 or x86_64 architecture (version 7).  This produces
binaries that run natively on x86-based Android devices.
2015-11-30 00:15:39 +00:00

49 lines
1.3 KiB
Makefile

# Created by: John Marino <marino@FreeBSD.org>
# $FreeBSD$
PORTNAME= binutils
PORTVERSION= 2.25.1
PORTREVISION?= 1
CATEGORIES= lang
MASTER_SITES= SOURCEWARE/binutils/releases
PKGNAMEPREFIX= gnatdroid-
MAINTAINER?= marino@FreeBSD.org
COMMENT?= Infrastructure for C/Ada Android cross-compiler (ARMv7)
LICENSE= GPLv3 LGPL3
LICENSE_COMB= multi
BUILD_DEPENDS= ${SYSROOT}>=19:${PORTSDIR}/lang/${SYSROOT} \
${LOCALBASE}/lib/libgmp.so:${PORTSDIR}/math/gmp \
${LOCALBASE}/lib/libmpfr.so:${PORTSDIR}/math/mpfr
RUN_DEPENDS:= ${BUILD_DEPENDS}
USES= gmake tar:bzip2
HAS_CONFIGURE= yes
NO_MTREE= yes
NO_LICENSES_INSTALL= yes
WRKSRC= ${WRKDIR}/binutils-${PORTVERSION}
PREFIX?= ${LOCALBASE}/android
BRANCH2?= ARMv7
BR2_PREFIX= ${PREFIX}/${BRANCH2}
XCCTARGET?= arm-aux-linux-androideabi
SYSROOT?= gnatdroid-sysroot
PLIST_SUB+= TARGET="${XCCTARGET}"
PLIST_SUB+= BRANCH2="${BRANCH2}"
CONFIGURE_ARGS+= --target=${XCCTARGET}
CONFIGURE_ARGS+= --prefix=${BR2_PREFIX}
CONFIGURE_ARGS+= --with-sysroot=${PREFIX}
CONFIGURE_ARGS+= --with-gmp=${LOCALBASE}
CONFIGURE_ARGS+= --with-mpfr=${LOCALBASE}
CONFIGURE_ARGS+= --disable-werror
CONFIGURE_ARGS+= --disable-nls
post-install:
# Move the unwanted documentation out of the stage directory
${MV} ${STAGEDIR}${BR2_PREFIX}/share ${WRKDIR}
.include <bsd.port.mk>