svn commit: r399716 - in head/lang: gcc-aux gcc-aux/files gnatdroid-armv7 gnatdroid-binutils gnatdroid-sysroot gnatdroid-sysroot/files

John Marino marino at FreeBSD.org
Mon Oct 19 19:42:56 UTC 2015


Author: marino
Date: Mon Oct 19 19:42:53 2015
New Revision: 399716
URL: https://svnweb.freebsd.org/changeset/ports/399716

Log:
  gnatdroid-sysroot: Add Android API Level 21 (Lollipop)
  
  The latest Android Native Development Kit (NDK) has API Level 21
  in it (but not 20, nor 22 or the latest Level 23).  Add this option
  to gnatdroid's sysroot port, and change the default API from Jelly Bean 1
  (Level 16) to Kitkat (Level 19).
  
  Bump gnatdroid's binutils and gnatdroid itself as a consequence of this
  default change.  A new patch had to be added to lang/gcc-aux to handle
  the CTYPE changes which haven't made to GCC yet.
  
  Gnatdroid has been testing for building on all API's but not for
  functionality beyond Level 16 due to lack of hardware.  I may soon
  install an Android emulator to see if that will suffice.

Added:
  head/lang/gcc-aux/files/patch-libstdc++-v3_config_os_bionic_ctype__base.h   (contents, props changed)
  head/lang/gnatdroid-sysroot/files/extra-21-stat.h   (contents, props changed)
  head/lang/gnatdroid-sysroot/files/extra-stat.h   (contents, props changed)
Deleted:
  head/lang/gnatdroid-sysroot/files/patch-stat.h
Modified:
  head/lang/gcc-aux/Makefile.version
  head/lang/gnatdroid-armv7/Makefile
  head/lang/gnatdroid-binutils/Makefile
  head/lang/gnatdroid-sysroot/Makefile
  head/lang/gnatdroid-sysroot/distinfo
  head/lang/gnatdroid-sysroot/pkg-descr

Modified: head/lang/gcc-aux/Makefile.version
==============================================================================
--- head/lang/gcc-aux/Makefile.version	Mon Oct 19 19:35:53 2015	(r399715)
+++ head/lang/gcc-aux/Makefile.version	Mon Oct 19 19:42:53 2015	(r399716)
@@ -6,7 +6,7 @@ GCC_VERSION=		${GCC_BRANCH}.${GCC_POINT}
 SNAPSHOT=		20150626
 MAIN_PR=		0
 UTIL_PR=		0
-ARMV7_PR=		0
+ARMV7_PR=		1
 
 # Snapshot naming pattern
 #IDENTIFICATION=	gcc-${GCC_BRANCH}-${SNAPSHOT}

Added: head/lang/gcc-aux/files/patch-libstdc++-v3_config_os_bionic_ctype__base.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/gcc-aux/files/patch-libstdc++-v3_config_os_bionic_ctype__base.h	Mon Oct 19 19:42:53 2015	(r399716)
@@ -0,0 +1,21 @@
+--- libstdc++-v3/config/os/bionic/ctype_base.h.orig	2014-01-02 22:30:10 UTC
++++ libstdc++-v3/config/os/bionic/ctype_base.h
+@@ -40,6 +40,18 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+     // Non-standard typedefs.
+     typedef const int* 		__to_type;
+ 
++#ifdef _CTYPE_U
++#define _U _CTYPE_U
++#define _L _CTYPE_L
++#define _D _CTYPE_D
++#define _S _CTYPE_S
++#define _P _CTYPE_P
++#define _C _CTYPE_C
++#define _X _CTYPE_X
++#define _B _CTYPE_B
++#define _N _CTYPE_D
++#endif
++
+     // NB: Offsets into ctype<char>::_M_table force a particular size
+     // on the mask type. Because of this, we don't use an enum.
+     typedef char 		mask;

Modified: head/lang/gnatdroid-armv7/Makefile
==============================================================================
--- head/lang/gnatdroid-armv7/Makefile	Mon Oct 19 19:35:53 2015	(r399715)
+++ head/lang/gnatdroid-armv7/Makefile	Mon Oct 19 19:42:53 2015	(r399716)
@@ -114,6 +114,8 @@ post-extract:
 .endfor
 	@(cd ${WRKSRC}/gcc/testsuite/ada/acats && \
 		${CP} run_remote.sh run_all.sh)
+	${REINPLACE_CMD} -e 's|<syscall.h>|<sys/syscall.h>|' \
+		${WRKSRC}/libstdc++-v3/libsupc++/guard.cc
 
 do-configure:
 	${MKDIR} ${BUILD_WRKSRC}

Modified: head/lang/gnatdroid-binutils/Makefile
==============================================================================
--- head/lang/gnatdroid-binutils/Makefile	Mon Oct 19 19:35:53 2015	(r399715)
+++ head/lang/gnatdroid-binutils/Makefile	Mon Oct 19 19:42:53 2015	(r399716)
@@ -3,6 +3,7 @@
 
 PORTNAME=	binutils
 PORTVERSION=	2.25.1
+PORTREVISION=	1
 CATEGORIES=	lang
 MASTER_SITES=	SOURCEWARE/binutils/releases
 PKGNAMEPREFIX=	gnatdroid-

Modified: head/lang/gnatdroid-sysroot/Makefile
==============================================================================
--- head/lang/gnatdroid-sysroot/Makefile	Mon Oct 19 19:35:53 2015	(r399715)
+++ head/lang/gnatdroid-sysroot/Makefile	Mon Oct 19 19:42:53 2015	(r399716)
@@ -2,8 +2,7 @@
 # $FreeBSD$
 
 PORTNAME=	sysroot
-PORTVERSION=	19
-PORTREVISION=	1
+PORTVERSION=	21
 CATEGORIES=	lang
 MASTER_SITES=	http://downloads.dragonlace.net/src/
 PKGNAMEPREFIX=	gnatdroid-
@@ -18,10 +17,13 @@ NO_MTREE=	yes
 
 WRKSRC=		${WRKDIR}/android-${API}-arm
 PREFIX=		${LOCALBASE}/android
+STAT_PATCH=	${FILESDIR}/extra-stat.h
+EXTRA_PATCHES=	${STAT_PATCH}
 
 OPTIONS_SINGLE=		SG1
-OPTIONS_SINGLE_SG1=	FROYO GBREAD ICS JBEAN16 JBEAN17 JBEAN18 KITKAT
-OPTIONS_DEFAULT=	JBEAN16
+OPTIONS_SINGLE_SG1=	FROYO GBREAD ICS JBEAN16 JBEAN17 JBEAN18 KITKAT \
+			LOLLIPOP
+OPTIONS_DEFAULT=	KITKAT
 
 FROYO_DESC=	Android 2.2 - API level 08 - Froyo
 GBREAD_DESC=	Android 2.3 - API level 09 - Gingerbread 1
@@ -30,6 +32,7 @@ JBEAN16_DESC=	Android 4.1 - API level 16
 JBEAN17_DESC=	Android 4.2 - API level 17 - Jelly Bean 2
 JBEAN18_DESC=	Android 4.3 - API level 18 - Jelly Bean 3
 KITKAT_DESC=	Android 4.4 - API level 19 - Kitkat
+LOLLIPOP_DESC=	Android 5.0 - API level 21 - Lollipop
 
 .include <bsd.port.options.mk>
 
@@ -47,6 +50,9 @@ API=	17
 API=	18
 .elif ${PORT_OPTIONS:MKITKAT}
 API=	19
+.elif ${PORT_OPTIONS:MLOLLIPOP}
+API=	21
+STAT_PATCH=	${FILESDIR}/extra-21-stat.h
 .else
 IGNORE=	the API option is improperly selected
 .endif

Modified: head/lang/gnatdroid-sysroot/distinfo
==============================================================================
--- head/lang/gnatdroid-sysroot/distinfo	Mon Oct 19 19:35:53 2015	(r399715)
+++ head/lang/gnatdroid-sysroot/distinfo	Mon Oct 19 19:42:53 2015	(r399716)
@@ -12,3 +12,5 @@ SHA256 (android-18-arm.tar.bz2) = 73ceb5
 SIZE (android-18-arm.tar.bz2) = 1736810
 SHA256 (android-19-arm.tar.bz2) = 734b37fa2c3aff05540ce9d8c73d0ad92623b281f0e267a05fd2f0c3a86e08ea
 SIZE (android-19-arm.tar.bz2) = 4621476
+SHA256 (android-21-arm.tar.bz2) = 7729bcd05fdc10b930d1f99920ed756681fe8cd6c2ecddb002a56e4badcfd2a3
+SIZE (android-21-arm.tar.bz2) = 5920624

Added: head/lang/gnatdroid-sysroot/files/extra-21-stat.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/gnatdroid-sysroot/files/extra-21-stat.h	Mon Oct 19 19:42:53 2015	(r399716)
@@ -0,0 +1,10 @@
+--- usr/include/linux/stat.h.orig	2014-10-15 02:53:49 UTC
++++ usr/include/linux/stat.h
+@@ -57,5 +57,7 @@
+ #define S_IWOTH 00002
+ /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ #define S_IXOTH 00001
++#define S_IREAD  S_IRUSR
++#define S_IWRITE S_IWUSR
+ #endif
+ #endif

Added: head/lang/gnatdroid-sysroot/files/extra-stat.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/gnatdroid-sysroot/files/extra-stat.h	Mon Oct 19 19:42:53 2015	(r399716)
@@ -0,0 +1,12 @@
+--- usr/include/linux/stat.h.orig	2011-07-17 20:54:19.000000000 +0200
++++ usr/include/linux/stat.h	2011-07-17 20:55:15.000000000 +0200
+@@ -39,6 +39,9 @@
+ #define S_IWUSR 00200
+ #define S_IXUSR 00100
+ 
++#define S_IREAD  S_IRUSR
++#define S_IWRITE S_IWUSR
++
+ #define S_IRWXG 00070
+ #define S_IRGRP 00040
+ #define S_IWGRP 00020

Modified: head/lang/gnatdroid-sysroot/pkg-descr
==============================================================================
--- head/lang/gnatdroid-sysroot/pkg-descr	Mon Oct 19 19:35:53 2015	(r399715)
+++ head/lang/gnatdroid-sysroot/pkg-descr	Mon Oct 19 19:42:53 2015	(r399716)
@@ -1,6 +1,6 @@
 This package is used by lang/gnatdroid to install the system root of
-Android 4.4 (API Level 19) of the ARM architecture. The ARM cross-tools
-are built using these files, which in turn is required for the GNAT
-FreeBSD->ARM cross-compiler that is gnatdroid.
+Android 2.2 to 5.0 (API Level 8 to API Level 21) of the ARM architecture.
+The ARM cross-tools are built using these files, which in turn is required
+for the GNAT FreeBSD->ARM cross-compiler that is gnatdroid.
 
 WWW: http://www.dragonlace.net


More information about the svn-ports-all mailing list