lang/gnatdroid-*: Support multiple API, base on gcc-aux (gcc 4.9)

This represents major changes with gnatdroid.

The sysroot is no longer API 9 or 19, but a choice of API 8, 9, 15,
16, 17, 18, or 19.  The prefix is not androidX but just "android".
The binutils port had to be adjusted due to the prefix change.

Finally, gnatdroid-armv(5,7) was substancially reworked to use
gcc-aux (4.9) instead of gcc47-aux (4.7).  This means the new ARM
unwinder is in use (zero cost exceptions).  Only 6 ACATS tests are
failing, they are related to the missing stack check capability.

Future work will speed up ACATS remote device testing and hopefully
enable gnat.dg testing too.
This commit is contained in:
John Marino 2014-04-10 00:34:48 +00:00
parent eeaf3324e3
commit 65f2051631
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=350752
10 changed files with 349 additions and 1076 deletions

View file

@ -3,13 +3,11 @@
PORTNAME= armv5
PORTVERSION= ${SNAPSHOT}
PORTREVISION= 2
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_GCC}
MASTER_SITE_SUBDIR= releases/gcc-${GCC_VERSION}
PKGNAMEPREFIX= gnatdroid-
DISTNAME= arm-gnat-${PORTVERSION}
DISTFILES= gcc-${GCC_VERSION}.tar.bz2
DISTFILES= ${IDENTIFICATION}.tar.bz2
MAINTAINER= marino@FreeBSD.org
COMMENT= C/Ada cross-compiler, target: Android ARMv5
@ -17,56 +15,47 @@ COMMENT= C/Ada cross-compiler, target: Android ARMv5
LICENSE= GPLv3 GPLv3RLE
LICENSE_COMB= multi
BUILD_DEPENDS= gnatdroid-sysroot=19:${PORTSDIR}/lang/gnatdroid-sysroot \
BUILD_DEPENDS= gnatdroid-sysroot>=19:${PORTSDIR}/lang/gnatdroid-sysroot \
gnatdroid-binutils>=2.21:${PORTSDIR}/lang/gnatdroid-binutils
RUN_DEPENDS:= ${BUILD_DEPENDS}
NO_LICENSES_INSTALL= yes
.include "${.CURDIR}/../gcc47-aux/Makefile.common"
.include "${.CURDIR}/../gcc-aux/Makefile.common"
# DELETE NEXT LINE AFTER NEXT UPDATE TO GCC-AUX 4.7 TO AVOID PORTEPOCH
# Without it, this port version regresses by a day
SNAPSHOT:= 20130413 # last portversion + 1
USES+= ada:47 gmake
LANGS= c ada
APPLY_DIFFS= core ada ada-testsuite gcc-testsuite
USES+= ada gmake
LANGS= c c++ ada
APPLY_DIFFS= core ada cxx ada-testsuite
NO_MTREE= YES
DISTINFO_FILE= ${.CURDIR}/../gcc47-aux/distinfo
DISTINFO_FILE= ${.CURDIR}/../gcc-aux/distinfo
# Disable C++ until arm.cc/no-rtti issue resolved for libsupc++
OPTIONS_DEFINE= FORT OBJC #CXX
OPTIONS_DEFAULT=
OPTIONS_DEFINE= FORT OBJC
OPTIONS_SUB= yes
CXX_DESC= Also build c++ language
FORT_DESC= Also build Fortran language
OBJC_DESC= Also build Objective-C language
DROID_TARGET= arm-android-eabi
DROID_TARGET= arm-aux-linux-androideabi
DROID_ARCH= armv5te
ARMVERSION= ARMv5
FPU= vfp
WRKSRC= ${WRKDIR}/gcc-${GCC_VERSION}
WRKSRC= ${WRKDIR}/${IDENTIFICATION}
BUILD_WRKSRC= ${WRKDIR}/build
PATCHDIR= ${.CURDIR}/../gcc47-aux/files
PATCHDIR= ${.CURDIR}/../gcc-aux/files
CFG_SCRIPT= ${WRKSRC}/configure
REVFILE= ${WRKSRC}/gcc/REVISION
SRPREFIX= ${LOCALBASE}/android19
SRPREFIX= ${LOCALBASE}/android
PREFIX= ${SRPREFIX}/${ARMVERSION}
INSTALLDIRS= lib libexec share
INSTALLDIRS+= ${DROID_TARGET}/lib
PLIST_SUB+= TARGET="${DROID_TARGET}"
PLIST_SUB+= GCCVERS="${GCC_VERSION}"
SUB_FILES= pkg-message
SUB_LIST= TARGET="${DROID_TARGET}"
EXTRA_PATCHES= ${FILESDIR}/acats.diff
CROSS= gnat gnatbind gnatchop gnatclean gnatfind gnatkr \
gnatlink gnatls gnatmake gnatprep gnatxref
ALL_TARGET= all
.include <bsd.port.pre.mk>
.include <bsd.port.options.mk>
.if ${ARCH:S/amd64/x86_64/} == x86_64
OS_LABEL4VERS= "[${OPSYS}64 x Android ${ARMVERSION}]"
@ -74,33 +63,17 @@ OS_LABEL4VERS= "[${OPSYS}64 x Android ${ARMVERSION}]"
OS_LABEL4VERS= "[${OPSYS}32 x Android ${ARMVERSION}]"
.endif
###########
## C++ ##
###########
.if ${PORT_OPTIONS:MCXX}
LANGS+= c++
APPLY_DIFFS+= cxx cxx-testsuite
INSTALLDIRS+= include/c++/${GCC_VERSION}
.endif
###############
## Fortran ##
###############
.if ${PORT_OPTIONS:MFORT}
LANGS+= fortran
APPLY_DIFFS+= fortran
.endif
###################
## Objective-C ##
###################
.if ${PORT_OPTIONS:MOBJC}
LANGS+= objc
.endif
INSTALL_ENV= ${MAKE_ENV:C/^PATH=/&${SRPREFIX}\/${ARMVERSION}\/bin:/}
CONFIGURE_ARGS= --enable-languages=${LANGS:Q}
CONFIGURE_ARGS+= --target=${DROID_TARGET}
CONFIGURE_ARGS+= --program-prefix=${DROID_TARGET}-
@ -116,12 +89,15 @@ CONFIGURE_ARGS+= --with-float=soft
CONFIGURE_ARGS+= --with-fpu=${FPU}
CONFIGURE_ARGS+= --enable-target-optspace
CONFIGURE_ARGS+= --enable-threads=posix
CONFIGURE_ARGS+= --enable-cxx-flags=-frtti
CONFIGURE_ARGS+= --disable-bootstrap
CONFIGURE_ARGS+= --disable-shared
CONFIGURE_ARGS+= --disable-libssp
CONFIGURE_ARGS+= --disable-libgomp
CONFIGURE_ARGS+= --disable-libmudflap
CONFIGURE_ARGS+= --disable-libquadmath
CONFIGURE_ARGS+= --disable-libsanitizer
CONFIGURE_ARGS+= --disable-libitm
CONFIGURE_ARGS+= --disable-sjlj-exceptions
CONFIGURE_ARGS+= --disable-tls
CONFIGURE_ARGS+= --disable-nls
@ -129,13 +105,8 @@ CONFIGURE_ARGS+= --disable-nls
post-extract:
# Personalize GNAT for each different machine
@${ECHO} "-=> GNAT AUX ${OS_LABEL4VERS}" > ${REVFILE}
# Create new directories in preparation of applying diff files
.if ${PORT_OPTIONS:MCXX}
${MKDIR} ${WRKSRC}/libstdc++-v3/config/locale/dragonfly
${MKDIR} ${WRKSRC}/libstdc++-v3/config/os/bsd/dragonfly
.endif
# Apply required composite diff files
.for suffix in ${APPLY_DIFFS}
@${ECHO} "Applying composite patch diff-${suffix}"
@ -147,32 +118,34 @@ do-configure:
cd ${BUILD_WRKSRC} && ${SETENV} ${CONFIGURE_ENV} \
${CFG_SCRIPT} ${CONFIGURE_ARGS}
pre-install:
# The "native tools" won't install unless a directory exists
${MKDIR} ${STAGEDIR}${PREFIX}/${DROID_TARGET}/bin
do-install:
# Buggy makefile; seems to have forgotten this is a cross compiler
# Manually rename products so it doesn't rebuild them with new name
.for X in ${CROSS}
. if !exists(${BUILD_WRKSRC}/gcc/${X})
${CP} -a ${BUILD_WRKSRC}/gcc/${X}-cross ${BUILD_WRKSRC}/gcc/${X}
. endif
.endfor
do-install:
cd ${BUILD_WRKSRC} && ${GMAKE} install-strip DESTDIR=${STAGEDIR}
cd ${BUILD_WRKSRC} && ${SETENV} ${INSTALL_ENV} \
${MAKE_CMD} install-strip DESTDIR=${STAGEDIR}
${MV} ${STAGEDIR}${PREFIX}/bin/ada \
${STAGEDIR}${PREFIX}/bin/${DROID_TARGET}-ada
post-install:
.for d in ${INSTALLDIRS}
cd ${STAGEDIR}${PREFIX}; ${FIND} $d \( -type f -or -type l \) | \
${SORT} >> ${TMPPLIST}
.endfor
.for loop in A B
cd ${STAGEDIR}${PREFIX}; ${FIND} * -type d -empty | \
${SORT} -dr | ${XARGS} ${RMDIR}
.endfor
cd ${STAGEDIR}${PREFIX}; \
${FIND} * \( -type f -or -type l \) | ${SORT} | \
${SED} -e '/^bin\//d' -e '/^${DROID_TARGET}\/bin\//d' \
>> ${TMPPLIST}
cd ${STAGEDIR}${PREFIX}; ${FIND} * -type d | ${SORT} -dr | \
${SED} -e '/^bin$$/d' \
-e '/^${DROID_TARGET}\/bin$$/d' \
-e '/^${DROID_TARGET}\/lib$$/d' \
-e '/^${DROID_TARGET}$$/d' \
-e 's/^/@dirrm /g' >> ${TMPPLIST}
${SED} -e 's/^/@dirrmtry /g' >> ${TMPPLIST}
.include <bsd.port.post.mk>
acats: build
cd ${BUILD_WRKSRC}/gcc && ${SETENV} \
PATH=${LOCALBASE}/gcc-aux/bin:${PATH}:${PREFIX}/bin \
gmake -sk check-acats
.include <bsd.port.mk>

View file

@ -0,0 +1,103 @@
The testsuite assumes "tablet" is a known host.
Before running the testsuite, define "tablet" in /etc/hosts
--- gcc/testsuite/ada/acats/run_acats.orig 2011-08-18 12:31:35.000000000 -0500
+++ gcc/testsuite/ada/acats/run_acats 2011-08-18 12:31:35.000000000 -0500
@@ -11,7 +11,7 @@
host_gnatchop=`which gnatchop`
host_gnatmake=`which gnatmake`
ROOT=`${PWDCMD-pwd}`
-BASE=`cd $ROOT/../../..; ${PWDCMD-pwd}`
+BASE=`realpath $ROOT/../../..`
PATH=$BASE:$ROOT:$PATH
ADA_INCLUDE_PATH=$BASE/ada/rts
@@ -23,12 +23,12 @@
exit 1
fi
-if [ ! -f $BASE/gnatchop ]; then
+if [ ! -f $host_gnatchop ]; then
echo gnattools missing, exiting.
exit 1
fi
-if [ ! -f $BASE/gnatmake ]; then
+if [ ! -f $host_gnatmake ]; then
echo gnattools missing, exiting.
exit 1
fi
@@ -46,8 +46,8 @@
chmod +x host_gnatchop
echo '#!/bin/sh' > host_gnatmake
-echo PATH=`dirname $host_gnatmake`:'$PATH' >> host_gnatmake
-echo unset ADA_INCLUDE_PATH ADA_OBJECTS_PATH GCC_EXEC_PREFIX >> host_gnatmake
+echo unset -v `env | sed -e "s/=.*//" -e "s/^\.//"` >> host_gnatmake
+echo PATH=`dirname $host_gnatmake`:'/sbin:/bin:/usr/bin:/usr/sbin' >> host_gnatmake
echo export PATH >> host_gnatmake
echo exec gnatmake '"$@"' >> host_gnatmake
--- gcc/testsuite/ada/acats/run_all.sh.orig 2011-08-18 12:31:42.000000000 -0500
+++ gcc/testsuite/ada/acats/run_all.sh 2011-08-18 18:26:04.000000000 -0500
@@ -11,9 +11,14 @@
gccflags="-O2"
gnatflags="-gnatws"
+tabtarget="/data/local/testsuite"
target_run () {
- eval $EXPECT -f $testdir/run_test.exp $*
+ # Run on rooted tablet (port 22 vs port 2222)
+ BN=`basename $*`
+ $STRIP_FOR_TARGET $*
+ /usr/bin/scp -qp $* root@tablet:$tabtarget/
+ /usr/bin/ssh -q tablet $tabtarget/$BN
}
# End of customization section.
@@ -55,13 +60,9 @@
exit 1
fi
-target_gnatchop () {
- gnatchop --GCC="$GCC_DRIVER" $*
-}
-
target_gnatmake () {
- echo gnatmake --GCC=\"$GCC\" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC=\"$GCC\"
- gnatmake --GCC="$GCC" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC="$GCC"
+ echo gnatmake-cross --GCC=\"$GCC\" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC=\"$GCC\"
+ gnatmake-cross --GCC="$GCC" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC="$GCC"
}
target_gcc () {
@@ -94,8 +95,8 @@
display `$GCC -v 2>&1`
display host=`gcc -dumpmachine`
display target=$target
-display `type gnatmake`
-gnatls -v >> $dir/acats.log
+display `type gnatmake-cross`
+gnatls-cross -v >> $dir/acats.log
display ""
display " === acats support ==="
@@ -187,7 +188,7 @@
exit 1
fi
-target_gnatchop *.adt >> $dir/acats.log 2>&1
+host_gnatchop *.adt >> $dir/acats.log 2>&1
target_gnatmake -c -gnato -gnatE *.ads >> $dir/acats.log 2>&1
target_gnatmake -c -gnato -gnatE *.adb >> $dir/acats.log 2>&1
@@ -262,7 +263,7 @@
continue
fi
- target_gnatchop -c -w `ls ${test}*.a ${test}*.ada ${test}*.adt ${test}*.am ${test}*.dep 2> /dev/null` >> $dir/acats.log 2>&1
+ host_gnatchop -c -w `ls ${test}*.a ${test}*.ada ${test}*.adt ${test}*.am ${test}*.dep 2> /dev/null` >> $dir/acats.log 2>&1
main=""
find_main
if [ -z "$main" ]; then

View file

@ -1,7 +1,9 @@
bin/ada
bin/%%TARGET%%-ada
bin/%%TARGET%%-c++
bin/%%TARGET%%-cpp
bin/%%TARGET%%-gcc-%%GCCVERS%%
bin/%%TARGET%%-gcov
bin/%%TARGET%%-g++
bin/%%TARGET%%-gcc
bin/%%TARGET%%-gcc-ar
bin/%%TARGET%%-gcc-nm
@ -19,13 +21,3 @@ bin/%%TARGET%%-gnatmake
bin/%%TARGET%%-gnatname
bin/%%TARGET%%-gnatprep
bin/%%TARGET%%-gnatxref
%%TARGET%%/bin/gcc
%%FORT%%%%TARGET%%/bin/gfortran
%%TARGET%%/bin/gnat
%%TARGET%%/bin/gnatbind
%%TARGET%%/bin/gnatchop
%%TARGET%%/bin/gnatkr
%%TARGET%%/bin/gnatlink
%%TARGET%%/bin/gnatls
%%TARGET%%/bin/gnatmake
%%TARGET%%/bin/gnatprep

View file

@ -3,13 +3,11 @@
PORTNAME= armv7
PORTVERSION= ${SNAPSHOT}
PORTREVISION= 2
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_GCC}
MASTER_SITE_SUBDIR= releases/gcc-${GCC_VERSION}
PKGNAMEPREFIX= gnatdroid-
DISTNAME= arm-gnat-${PORTVERSION}
DISTFILES= gcc-${GCC_VERSION}.tar.bz2
DISTFILES= ${IDENTIFICATION}.tar.bz2
MAINTAINER= marino@FreeBSD.org
COMMENT= C/Ada cross-compiler, target: Android ARMv7
@ -17,56 +15,47 @@ COMMENT= C/Ada cross-compiler, target: Android ARMv7
LICENSE= GPLv3 GPLv3RLE
LICENSE_COMB= multi
BUILD_DEPENDS= gnatdroid-sysroot=19:${PORTSDIR}/lang/gnatdroid-sysroot \
BUILD_DEPENDS= gnatdroid-sysroot>=19:${PORTSDIR}/lang/gnatdroid-sysroot \
gnatdroid-binutils>=2.21:${PORTSDIR}/lang/gnatdroid-binutils
RUN_DEPENDS:= ${BUILD_DEPENDS}
NO_LICENSES_INSTALL= yes
.include "${.CURDIR}/../gcc47-aux/Makefile.common"
.include "${.CURDIR}/../gcc-aux/Makefile.common"
# DELETE NEXT LINE AFTER NEXT UPDATE TO GCC-AUX 4.7 TO AVOID PORTEPOCH
# Without it, this port version regresses by a day
SNAPSHOT:= 20130413 # last portversion + 1
USES+= ada:47 gmake
LANGS= c ada
APPLY_DIFFS= core ada ada-testsuite gcc-testsuite
USES+= ada gmake
LANGS= c c++ ada
APPLY_DIFFS= core ada cxx ada-testsuite
NO_MTREE= YES
DISTINFO_FILE= ${.CURDIR}/../gcc47-aux/distinfo
DISTINFO_FILE= ${.CURDIR}/../gcc-aux/distinfo
# Disable C++ until arm.cc/no-rtti issue resolved for libsupc++
OPTIONS_DEFINE= FORT OBJC #CXX
OPTIONS_DEFAULT=
OPTIONS_DEFINE= FORT OBJC
OPTIONS_SUB= yes
CXX_DESC= Also build c++ language
FORT_DESC= Also build Fortran language
OBJC_DESC= Also build Objective-C language
DROID_TARGET= arm-android-eabi
DROID_TARGET= arm-aux-linux-androideabi
DROID_ARCH= armv7-a
ARMVERSION= ARMv7
FPU= neon
WRKSRC= ${WRKDIR}/gcc-${GCC_VERSION}
WRKSRC= ${WRKDIR}/${IDENTIFICATION}
BUILD_WRKSRC= ${WRKDIR}/build
PATCHDIR= ${.CURDIR}/../gcc47-aux/files
PATCHDIR= ${.CURDIR}/../gcc-aux/files
CFG_SCRIPT= ${WRKSRC}/configure
REVFILE= ${WRKSRC}/gcc/REVISION
SRPREFIX= ${LOCALBASE}/android19
SRPREFIX= ${LOCALBASE}/android
PREFIX= ${SRPREFIX}/${ARMVERSION}
INSTALLDIRS= lib libexec share
INSTALLDIRS+= ${DROID_TARGET}/lib
PLIST_SUB+= TARGET="${DROID_TARGET}"
PLIST_SUB+= GCCVERS="${GCC_VERSION}"
SUB_FILES= pkg-message
SUB_LIST= TARGET="${DROID_TARGET}"
EXTRA_PATCHES= ${FILESDIR}/acats.diff
CROSS= gnat gnatbind gnatchop gnatclean gnatfind gnatkr \
gnatlink gnatls gnatmake gnatprep gnatxref
ALL_TARGET= all
.include <bsd.port.pre.mk>
.include <bsd.port.options.mk>
.if ${ARCH:S/amd64/x86_64/} == x86_64
OS_LABEL4VERS= "[${OPSYS}64 x Android ${ARMVERSION}]"
@ -74,33 +63,17 @@ OS_LABEL4VERS= "[${OPSYS}64 x Android ${ARMVERSION}]"
OS_LABEL4VERS= "[${OPSYS}32 x Android ${ARMVERSION}]"
.endif
###########
## C++ ##
###########
.if ${PORT_OPTIONS:MCXX}
LANGS+= c++
APPLY_DIFFS+= cxx cxx-testsuite
INSTALLDIRS+= include/c++/${GCC_VERSION}
.endif
###############
## Fortran ##
###############
.if ${PORT_OPTIONS:MFORT}
LANGS+= fortran
APPLY_DIFFS+= fortran
.endif
###################
## Objective-C ##
###################
.if ${PORT_OPTIONS:MOBJC}
LANGS+= objc
.endif
INSTALL_ENV= ${MAKE_ENV:C/^PATH=/&${SRPREFIX}\/${ARMVERSION}\/bin:/}
CONFIGURE_ARGS= --enable-languages=${LANGS:Q}
CONFIGURE_ARGS+= --target=${DROID_TARGET}
CONFIGURE_ARGS+= --program-prefix=${DROID_TARGET}-
@ -116,12 +89,15 @@ CONFIGURE_ARGS+= --with-float=soft
CONFIGURE_ARGS+= --with-fpu=${FPU}
CONFIGURE_ARGS+= --enable-target-optspace
CONFIGURE_ARGS+= --enable-threads=posix
CONFIGURE_ARGS+= --enable-cxx-flags=-frtti
CONFIGURE_ARGS+= --disable-bootstrap
CONFIGURE_ARGS+= --disable-shared
CONFIGURE_ARGS+= --disable-libssp
CONFIGURE_ARGS+= --disable-libgomp
CONFIGURE_ARGS+= --disable-libmudflap
CONFIGURE_ARGS+= --disable-libquadmath
CONFIGURE_ARGS+= --disable-libsanitizer
CONFIGURE_ARGS+= --disable-libitm
CONFIGURE_ARGS+= --disable-sjlj-exceptions
CONFIGURE_ARGS+= --disable-tls
CONFIGURE_ARGS+= --disable-nls
@ -129,13 +105,8 @@ CONFIGURE_ARGS+= --disable-nls
post-extract:
# Personalize GNAT for each different machine
@${ECHO} "-=> GNAT AUX ${OS_LABEL4VERS}" > ${REVFILE}
# Create new directories in preparation of applying diff files
.if ${PORT_OPTIONS:MCXX}
${MKDIR} ${WRKSRC}/libstdc++-v3/config/locale/dragonfly
${MKDIR} ${WRKSRC}/libstdc++-v3/config/os/bsd/dragonfly
.endif
# Apply required composite diff files
.for suffix in ${APPLY_DIFFS}
@${ECHO} "Applying composite patch diff-${suffix}"
@ -147,32 +118,34 @@ do-configure:
cd ${BUILD_WRKSRC} && ${SETENV} ${CONFIGURE_ENV} \
${CFG_SCRIPT} ${CONFIGURE_ARGS}
pre-install:
# The "native tools" won't install unless a directory exists
${MKDIR} ${STAGEDIR}${PREFIX}/${DROID_TARGET}/bin
do-install:
# Buggy makefile; seems to have forgotten this is a cross compiler
# Manually rename products so it doesn't rebuild them with new name
.for X in ${CROSS}
. if !exists(${BUILD_WRKSRC}/gcc/${X})
${CP} -a ${BUILD_WRKSRC}/gcc/${X}-cross ${BUILD_WRKSRC}/gcc/${X}
. endif
.endfor
do-install:
cd ${BUILD_WRKSRC} && ${GMAKE} install-strip DESTDIR=${STAGEDIR}
cd ${BUILD_WRKSRC} && ${SETENV} ${INSTALL_ENV} \
${MAKE_CMD} install-strip DESTDIR=${STAGEDIR}
${MV} ${STAGEDIR}${PREFIX}/bin/ada \
${STAGEDIR}${PREFIX}/bin/${DROID_TARGET}-ada
post-install:
.for d in ${INSTALLDIRS}
cd ${STAGEDIR}${PREFIX}; ${FIND} $d \( -type f -or -type l \) | \
${SORT} >> ${TMPPLIST}
.endfor
.for loop in A B
cd ${STAGEDIR}${PREFIX}; ${FIND} * -type d -empty | \
${SORT} -dr | ${XARGS} ${RMDIR}
.endfor
cd ${STAGEDIR}${PREFIX}; \
${FIND} * \( -type f -or -type l \) | ${SORT} | \
${SED} -e '/^bin\//d' -e '/^${DROID_TARGET}\/bin\//d' \
>> ${TMPPLIST}
cd ${STAGEDIR}${PREFIX}; ${FIND} * -type d | ${SORT} -dr | \
${SED} -e '/^bin$$/d' \
-e '/^${DROID_TARGET}\/bin$$/d' \
-e '/^${DROID_TARGET}\/lib$$/d' \
-e '/^${DROID_TARGET}$$/d' \
-e 's/^/@dirrm /g' >> ${TMPPLIST}
${SED} -e 's/^/@dirrmtry /g' >> ${TMPPLIST}
.include <bsd.port.post.mk>
acats: build
cd ${BUILD_WRKSRC}/gcc && ${SETENV} \
PATH=${LOCALBASE}/gcc-aux/bin:${PATH}:${PREFIX}/bin \
gmake -sk check-acats
.include <bsd.port.mk>

View file

@ -0,0 +1,103 @@
The testsuite assumes "tablet" is a known host.
Before running the testsuite, define "tablet" in /etc/hosts
--- gcc/testsuite/ada/acats/run_acats.orig 2011-08-18 12:31:35.000000000 -0500
+++ gcc/testsuite/ada/acats/run_acats 2011-08-18 12:31:35.000000000 -0500
@@ -11,7 +11,7 @@
host_gnatchop=`which gnatchop`
host_gnatmake=`which gnatmake`
ROOT=`${PWDCMD-pwd}`
-BASE=`cd $ROOT/../../..; ${PWDCMD-pwd}`
+BASE=`realpath $ROOT/../../..`
PATH=$BASE:$ROOT:$PATH
ADA_INCLUDE_PATH=$BASE/ada/rts
@@ -23,12 +23,12 @@
exit 1
fi
-if [ ! -f $BASE/gnatchop ]; then
+if [ ! -f $host_gnatchop ]; then
echo gnattools missing, exiting.
exit 1
fi
-if [ ! -f $BASE/gnatmake ]; then
+if [ ! -f $host_gnatmake ]; then
echo gnattools missing, exiting.
exit 1
fi
@@ -46,8 +46,8 @@
chmod +x host_gnatchop
echo '#!/bin/sh' > host_gnatmake
-echo PATH=`dirname $host_gnatmake`:'$PATH' >> host_gnatmake
-echo unset ADA_INCLUDE_PATH ADA_OBJECTS_PATH GCC_EXEC_PREFIX >> host_gnatmake
+echo unset -v `env | sed -e "s/=.*//" -e "s/^\.//"` >> host_gnatmake
+echo PATH=`dirname $host_gnatmake`:'/sbin:/bin:/usr/bin:/usr/sbin' >> host_gnatmake
echo export PATH >> host_gnatmake
echo exec gnatmake '"$@"' >> host_gnatmake
--- gcc/testsuite/ada/acats/run_all.sh.orig 2011-08-18 12:31:42.000000000 -0500
+++ gcc/testsuite/ada/acats/run_all.sh 2011-08-18 18:26:04.000000000 -0500
@@ -11,9 +11,14 @@
gccflags="-O2"
gnatflags="-gnatws"
+tabtarget="/data/local/testsuite"
target_run () {
- eval $EXPECT -f $testdir/run_test.exp $*
+ # Run on rooted tablet (port 22 vs port 2222)
+ BN=`basename $*`
+ $STRIP_FOR_TARGET $*
+ /usr/bin/scp -qp $* root@tablet:$tabtarget/
+ /usr/bin/ssh -q tablet $tabtarget/$BN
}
# End of customization section.
@@ -55,13 +60,9 @@
exit 1
fi
-target_gnatchop () {
- gnatchop --GCC="$GCC_DRIVER" $*
-}
-
target_gnatmake () {
- echo gnatmake --GCC=\"$GCC\" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC=\"$GCC\"
- gnatmake --GCC="$GCC" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC="$GCC"
+ echo gnatmake-cross --GCC=\"$GCC\" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC=\"$GCC\"
+ gnatmake-cross --GCC="$GCC" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC="$GCC"
}
target_gcc () {
@@ -94,8 +95,8 @@
display `$GCC -v 2>&1`
display host=`gcc -dumpmachine`
display target=$target
-display `type gnatmake`
-gnatls -v >> $dir/acats.log
+display `type gnatmake-cross`
+gnatls-cross -v >> $dir/acats.log
display ""
display " === acats support ==="
@@ -187,7 +188,7 @@
exit 1
fi
-target_gnatchop *.adt >> $dir/acats.log 2>&1
+host_gnatchop *.adt >> $dir/acats.log 2>&1
target_gnatmake -c -gnato -gnatE *.ads >> $dir/acats.log 2>&1
target_gnatmake -c -gnato -gnatE *.adb >> $dir/acats.log 2>&1
@@ -262,7 +263,7 @@
continue
fi
- target_gnatchop -c -w `ls ${test}*.a ${test}*.ada ${test}*.adt ${test}*.am ${test}*.dep 2> /dev/null` >> $dir/acats.log 2>&1
+ host_gnatchop -c -w `ls ${test}*.a ${test}*.ada ${test}*.adt ${test}*.am ${test}*.dep 2> /dev/null` >> $dir/acats.log 2>&1
main=""
find_main
if [ -z "$main" ]; then

View file

@ -1,7 +1,9 @@
bin/ada
bin/%%TARGET%%-ada
bin/%%TARGET%%-c++
bin/%%TARGET%%-cpp
bin/%%TARGET%%-gcc-%%GCCVERS%%
bin/%%TARGET%%-gcov
bin/%%TARGET%%-g++
bin/%%TARGET%%-gcc
bin/%%TARGET%%-gcc-ar
bin/%%TARGET%%-gcc-nm
@ -19,13 +21,3 @@ bin/%%TARGET%%-gnatmake
bin/%%TARGET%%-gnatname
bin/%%TARGET%%-gnatprep
bin/%%TARGET%%-gnatxref
%%TARGET%%/bin/gcc
%%FORT%%%%TARGET%%/bin/gfortran
%%TARGET%%/bin/gnat
%%TARGET%%/bin/gnatbind
%%TARGET%%/bin/gnatchop
%%TARGET%%/bin/gnatkr
%%TARGET%%/bin/gnatlink
%%TARGET%%/bin/gnatls
%%TARGET%%/bin/gnatmake
%%TARGET%%/bin/gnatprep

View file

@ -3,7 +3,7 @@
PORTNAME= binutils
PORTVERSION= 2.24
PORTREVISION= 2
PORTREVISION= 3
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_SOURCEWARE}
MASTER_SITE_SUBDIR= binutils/releases
@ -15,7 +15,7 @@ COMMENT= Infrastructure for C/Ada Android cross-compiler
LICENSE= GPLv3 LGPL3
LICENSE_COMB= multi
BUILD_DEPENDS= gnatdroid-sysroot=19:${PORTSDIR}/lang/gnatdroid-sysroot \
BUILD_DEPENDS= gnatdroid-sysroot>=19:${PORTSDIR}/lang/gnatdroid-sysroot \
${LOCALBASE}/lib/libgmp.so:${PORTSDIR}/math/gmp \
${LOCALBASE}/lib/libmpfr.so:${PORTSDIR}/math/mpfr
RUN_DEPENDS:= ${BUILD_DEPENDS}
@ -27,12 +27,12 @@ NO_MTREE= yes
NO_LICENSES_INSTALL= yes
WRKSRC= ${WRKDIR}/binutils-${PORTVERSION}
PREFIX= ${LOCALBASE}/android19
PREFIX= ${LOCALBASE}/android
BRANCH1= ARMv5
BRANCH2= ARMv7
BR1_PREFIX= ${PREFIX}/${BRANCH1}
BR2_PREFIX= ${PREFIX}/${BRANCH2}
ARMTARGET= arm-android-eabi
ARMTARGET= arm-aux-linux-androideabi
PLIST_SUB+= TARGET="${ARMTARGET}"
PLIST_SUB+= BRANCH1="${BRANCH1}"
PLIST_SUB+= BRANCH2="${BRANCH2}"

View file

@ -3,23 +3,62 @@
PORTNAME= sysroot
PORTVERSION= 19
PORTREVISION= 1
CATEGORIES= lang
MASTER_SITES= http://downloads.dragonlace.net/src/
PKGNAMEPREFIX= gnatdroid-
DISTNAME= android-${PORTVERSION}-arm
DISTNAME= android-${API}-arm
MAINTAINER= marino@FreeBSD.org
COMMENT= Android-${PORTVERSION} sysroot for C/Ada Android cross-compiler
COMMENT= Android sysroots for C/Ada Android cross-compiler
USES= tar:bzip2
NO_BUILD= YES
NO_MTREE= YES
NO_BUILD= yes
NO_MTREE= yes
WRKSRC= ${WRKDIR}/android-${PORTVERSION}-arm
PREFIX= ${LOCALBASE}/android${PORTVERSION}
WRKSRC= ${WRKDIR}/android-${API}-arm
PREFIX= ${LOCALBASE}/android
OPTIONS_SINGLE= SG1
OPTIONS_SINGLE_SG1= FROYO GBREAD ICS JBEAN16 JBEAN17 JBEAN18 KITKAT
OPTIONS_DEFAULT= JBEAN16
FROYO_DESC= Android 2.2 - API level 08 - Froyo
GBREAD_DESC= Android 2.3 - API level 09 - Gingerbread 1
ICS_DESC= Android 4.0 - API level 15 - Ice Cream Sandwich 2
JBEAN16_DESC= Android 4.1 - API level 16 - Jelly Bean 1
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
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MFROYO}
API= 8
.elif ${PORT_OPTIONS:MGBREAD}
API= 9
.elif ${PORT_OPTIONS:MICS}
API= 15
.elif ${PORT_OPTIONS:MJBEAN16}
API= 16
.elif ${PORT_OPTIONS:MJBEAN17}
API= 17
.elif ${PORT_OPTIONS:MJBEAN18}
API= 18
.elif ${PORT_OPTIONS:MKITKAT}
API= 19
.else
IGNORE= the API option is improperly selected
.endif
do-install:
@${MKDIR} ${STAGEDIR}${PREFIX}
(cd ${WRKSRC} && ${COPYTREE_SHARE} usr ${STAGEDIR}${PREFIX})
post-install:
@(cd ${STAGEDIR}${PREFIX}; ${FIND} usr \( -type f -or -type l \) | \
${SORT} >> ${TMPPLIST})
@(cd ${STAGEDIR}${PREFIX}; ${FIND} usr -type d | ${SORT} -r | \
${SED} -e 's/^/@dirrm /g' >> ${TMPPLIST})
.include <bsd.port.mk>

View file

@ -1,2 +1,14 @@
SHA256 (android-8-arm.tar.bz2) = d352ecf413c7bf12561d3f5766e94be5e9da3232b3aa5a48c2186e41fdc0c549
SIZE (android-8-arm.tar.bz2) = 1646555
SHA256 (android-9-arm.tar.bz2) = 682cee5219f171a8bf4d0b35a33bc00d265a8c5a0b1d81ddd04389b402783190
SIZE (android-9-arm.tar.bz2) = 1924233
SHA256 (android-15-arm.tar.bz2) = 67836bdc1e5e2bd0db796e8e32f9faf5705f42b48b610fe479e0d92ff42280c2
SIZE (android-15-arm.tar.bz2) = 1717174
SHA256 (android-16-arm.tar.bz2) = a6966779c31663f60fddc2fab86287be74c06c376e8ffb3704e2b5c53a612dc9
SIZE (android-16-arm.tar.bz2) = 1716973
SHA256 (android-17-arm.tar.bz2) = 3ff8d76ba9f5f0aa129e7c69a5da2ec63696f553d5ad14d0859f51e7a38f992a
SIZE (android-17-arm.tar.bz2) = 1716909
SHA256 (android-18-arm.tar.bz2) = 73ceb5894c4436ca1477e0a535c3a014f334acf0683ab43bd22565f6c8ec6920
SIZE (android-18-arm.tar.bz2) = 1736810
SHA256 (android-19-arm.tar.bz2) = 734b37fa2c3aff05540ce9d8c73d0ad92623b281f0e267a05fd2f0c3a86e08ea
SIZE (android-19-arm.tar.bz2) = 4621476

View file

@ -1,914 +0,0 @@
usr/include/EGL/egl.h
usr/include/EGL/eglext.h
usr/include/EGL/eglplatform.h
usr/include/GLES/gl.h
usr/include/GLES/glext.h
usr/include/GLES/glplatform.h
usr/include/GLES2/gl2.h
usr/include/GLES2/gl2ext.h
usr/include/GLES2/gl2platform.h
usr/include/GLES3/gl3.h
usr/include/GLES3/gl3ext.h
usr/include/GLES3/gl3platform.h
usr/include/KHR/khrplatform.h
usr/include/OMXAL/OpenMAXAL.h
usr/include/OMXAL/OpenMAXAL_Android.h
usr/include/OMXAL/OpenMAXAL_Platform.h
usr/include/SLES/OpenSLES.h
usr/include/SLES/OpenSLES_Android.h
usr/include/SLES/OpenSLES_AndroidConfiguration.h
usr/include/SLES/OpenSLES_AndroidMetadata.h
usr/include/SLES/OpenSLES_Platform.h
usr/include/alloca.h
usr/include/android/api-level.h
usr/include/android/asset_manager.h
usr/include/android/asset_manager_jni.h
usr/include/android/bitmap.h
usr/include/android/configuration.h
usr/include/android/input.h
usr/include/android/keycodes.h
usr/include/android/log.h
usr/include/android/looper.h
usr/include/android/native_activity.h
usr/include/android/native_window.h
usr/include/android/native_window_jni.h
usr/include/android/obb.h
usr/include/android/rect.h
usr/include/android/sensor.h
usr/include/android/storage_manager.h
usr/include/android/tts.h
usr/include/android/window.h
usr/include/arpa/inet.h
usr/include/arpa/nameser.h
usr/include/arpa/telnet.h
usr/include/asm-generic/4level-fixup.h
usr/include/asm-generic/audit_dir_write.h
usr/include/asm-generic/bitops/__ffs.h
usr/include/asm-generic/bitops/atomic.h
usr/include/asm-generic/bitops/ffz.h
usr/include/asm-generic/bitops/find.h
usr/include/asm-generic/bitops/fls.h
usr/include/asm-generic/bitops/fls64.h
usr/include/asm-generic/bitops/le.h
usr/include/asm-generic/bitops/non-atomic.h
usr/include/asm-generic/bug.h
usr/include/asm-generic/cputime.h
usr/include/asm-generic/emergency-restart.h
usr/include/asm-generic/errno-base.h
usr/include/asm-generic/errno.h
usr/include/asm-generic/fcntl.h
usr/include/asm-generic/futex.h
usr/include/asm-generic/ioctl.h
usr/include/asm-generic/ipc.h
usr/include/asm-generic/local.h
usr/include/asm-generic/memory_model.h
usr/include/asm-generic/mman-common.h
usr/include/asm-generic/mman.h
usr/include/asm-generic/mutex-xchg.h
usr/include/asm-generic/percpu.h
usr/include/asm-generic/pgtable-nopmd.h
usr/include/asm-generic/pgtable-nopud.h
usr/include/asm-generic/pgtable.h
usr/include/asm-generic/poll.h
usr/include/asm-generic/resource.h
usr/include/asm-generic/sections.h
usr/include/asm-generic/siginfo.h
usr/include/asm-generic/signal.h
usr/include/asm-generic/socket.h
usr/include/asm-generic/swab.h
usr/include/asm-generic/tlb.h
usr/include/asm-generic/topology.h
usr/include/asm-generic/xor.h
usr/include/asm/a.out.h
usr/include/asm/arch/board-perseus2.h
usr/include/asm/arch/board.h
usr/include/asm/arch/cpu.h
usr/include/asm/arch/dma.h
usr/include/asm/arch/fpga.h
usr/include/asm/arch/gpio-switch.h
usr/include/asm/arch/gpio.h
usr/include/asm/arch/hardware.h
usr/include/asm/arch/io.h
usr/include/asm/arch/irqs.h
usr/include/asm/arch/mcbsp.h
usr/include/asm/arch/memory.h
usr/include/asm/arch/mtd-xip.h
usr/include/asm/arch/mux.h
usr/include/asm/arch/omap24xx.h
usr/include/asm/arch/serial.h
usr/include/asm/arch/timex.h
usr/include/asm/arch/vmalloc.h
usr/include/asm/atomic.h
usr/include/asm/auxvec.h
usr/include/asm/bitops.h
usr/include/asm/byteorder.h
usr/include/asm/cache.h
usr/include/asm/cacheflush.h
usr/include/asm/cputime.h
usr/include/asm/delay.h
usr/include/asm/div64.h
usr/include/asm/dma-mapping.h
usr/include/asm/dma.h
usr/include/asm/domain.h
usr/include/asm/dyntick.h
usr/include/asm/elf.h
usr/include/asm/errno.h
usr/include/asm/fcntl.h
usr/include/asm/fpstate.h
usr/include/asm/glue.h
usr/include/asm/hardirq.h
usr/include/asm/hardware.h
usr/include/asm/hw_irq.h
usr/include/asm/ide.h
usr/include/asm/io.h
usr/include/asm/ioctl.h
usr/include/asm/ioctls.h
usr/include/asm/ipcbuf.h
usr/include/asm/irq.h
usr/include/asm/linkage.h
usr/include/asm/local.h
usr/include/asm/locks.h
usr/include/asm/mc146818rtc.h
usr/include/asm/memory.h
usr/include/asm/mman.h
usr/include/asm/module.h
usr/include/asm/msgbuf.h
usr/include/asm/mtd-xip.h
usr/include/asm/page.h
usr/include/asm/param.h
usr/include/asm/percpu.h
usr/include/asm/pgalloc.h
usr/include/asm/pgtable-hwdef.h
usr/include/asm/pgtable.h
usr/include/asm/poll.h
usr/include/asm/posix_types.h
usr/include/asm/proc-fns.h
usr/include/asm/processor.h
usr/include/asm/procinfo.h
usr/include/asm/ptrace.h
usr/include/asm/resource.h
usr/include/asm/scatterlist.h
usr/include/asm/semaphore.h
usr/include/asm/sembuf.h
usr/include/asm/shmbuf.h
usr/include/asm/shmparam.h
usr/include/asm/sigcontext.h
usr/include/asm/siginfo.h
usr/include/asm/signal.h
usr/include/asm/sizes.h
usr/include/asm/smp.h
usr/include/asm/socket.h
usr/include/asm/sockios.h
usr/include/asm/spinlock.h
usr/include/asm/spinlock_types.h
usr/include/asm/stat.h
usr/include/asm/statfs.h
usr/include/asm/suspend.h
usr/include/asm/system.h
usr/include/asm/termbits.h
usr/include/asm/termios.h
usr/include/asm/thread_info.h
usr/include/asm/timex.h
usr/include/asm/tlbflush.h
usr/include/asm/topology.h
usr/include/asm/types.h
usr/include/asm/uaccess.h
usr/include/asm/unaligned.h
usr/include/asm/unistd.h
usr/include/asm/user.h
usr/include/asm/vga.h
usr/include/assert.h
usr/include/byteswap.h
usr/include/ctype.h
usr/include/dirent.h
usr/include/dlfcn.h
usr/include/elf.h
usr/include/endian.h
usr/include/err.h
usr/include/errno.h
usr/include/fcntl.h
usr/include/features.h
usr/include/fenv.h
usr/include/fnmatch.h
usr/include/fts.h
usr/include/getopt.h
usr/include/grp.h
usr/include/inttypes.h
usr/include/jni.h
usr/include/lastlog.h
usr/include/libgen.h
usr/include/limits.h
usr/include/link.h
usr/include/linux/a.out.h
usr/include/linux/aio_abi.h
usr/include/linux/akm8976.h
usr/include/linux/android_alarm.h
usr/include/linux/android_pmem.h
usr/include/linux/android_power.h
usr/include/linux/apm_bios.h
usr/include/linux/ashmem.h
usr/include/linux/ata.h
usr/include/linux/atm.h
usr/include/linux/atmapi.h
usr/include/linux/atmdev.h
usr/include/linux/atmioc.h
usr/include/linux/atmppp.h
usr/include/linux/atmsap.h
usr/include/linux/attribute_container.h
usr/include/linux/auto_fs.h
usr/include/linux/autoconf.h
usr/include/linux/auxvec.h
usr/include/linux/backing-dev.h
usr/include/linux/binder.h
usr/include/linux/binfmts.h
usr/include/linux/bio.h
usr/include/linux/bitmap.h
usr/include/linux/bitops.h
usr/include/linux/blkdev.h
usr/include/linux/blkpg.h
usr/include/linux/blockgroup_lock.h
usr/include/linux/byteorder/big_endian.h
usr/include/linux/byteorder/generic.h
usr/include/linux/byteorder/little_endian.h
usr/include/linux/byteorder/swab.h
usr/include/linux/byteorder/swabb.h
usr/include/linux/cache.h
usr/include/linux/calc64.h
usr/include/linux/capability.h
usr/include/linux/capi.h
usr/include/linux/cdev.h
usr/include/linux/cdrom.h
usr/include/linux/circ_buf.h
usr/include/linux/clk.h
usr/include/linux/coda.h
usr/include/linux/coda_fs_i.h
usr/include/linux/compat.h
usr/include/linux/compiler-gcc.h
usr/include/linux/compiler.h
usr/include/linux/completion.h
usr/include/linux/config.h
usr/include/linux/console_struct.h
usr/include/linux/cpu.h
usr/include/linux/cpumask.h
usr/include/linux/ctype.h
usr/include/linux/dccp.h
usr/include/linux/debug_locks.h
usr/include/linux/delay.h
usr/include/linux/device.h
usr/include/linux/dirent.h
usr/include/linux/dm-ioctl.h
usr/include/linux/dma-mapping.h
usr/include/linux/dmaengine.h
usr/include/linux/efs_dir.h
usr/include/linux/efs_fs_i.h
usr/include/linux/efs_fs_sb.h
usr/include/linux/elevator.h
usr/include/linux/elf-em.h
usr/include/linux/elf.h
usr/include/linux/err.h
usr/include/linux/errno.h
usr/include/linux/errqueue.h
usr/include/linux/etherdevice.h
usr/include/linux/ext2_fs.h
usr/include/linux/ext3_fs.h
usr/include/linux/fadvise.h
usr/include/linux/fb.h
usr/include/linux/fcntl.h
usr/include/linux/fd.h
usr/include/linux/file.h
usr/include/linux/filter.h
usr/include/linux/fs.h
usr/include/linux/ftape.h
usr/include/linux/futex.h
usr/include/linux/genhd.h
usr/include/linux/gfp.h
usr/include/linux/hardirq.h
usr/include/linux/hdlc/ioctl.h
usr/include/linux/hdreg.h
usr/include/linux/hdsmart.h
usr/include/linux/highmem.h
usr/include/linux/hil.h
usr/include/linux/i2c.h
usr/include/linux/icmp.h
usr/include/linux/if.h
usr/include/linux/if_arcnet.h
usr/include/linux/if_arp.h
usr/include/linux/if_bridge.h
usr/include/linux/if_ether.h
usr/include/linux/if_fc.h
usr/include/linux/if_fddi.h
usr/include/linux/if_hippi.h
usr/include/linux/if_packet.h
usr/include/linux/if_ppp.h
usr/include/linux/if_tr.h
usr/include/linux/if_tun.h
usr/include/linux/if_vlan.h
usr/include/linux/in.h
usr/include/linux/in6.h
usr/include/linux/init.h
usr/include/linux/inotify.h
usr/include/linux/input.h
usr/include/linux/interrupt.h
usr/include/linux/ioctl.h
usr/include/linux/ioport.h
usr/include/linux/ioprio.h
usr/include/linux/ip.h
usr/include/linux/ipc.h
usr/include/linux/ipmi_msgdefs.h
usr/include/linux/ipmi_smi.h
usr/include/linux/ipv6.h
usr/include/linux/ipx.h
usr/include/linux/irq.h
usr/include/linux/irq_cpustat.h
usr/include/linux/irqflags.h
usr/include/linux/irqreturn.h
usr/include/linux/jbd.h
usr/include/linux/jiffies.h
usr/include/linux/kd.h
usr/include/linux/kdev_t.h
usr/include/linux/kernel.h
usr/include/linux/kernel_stat.h
usr/include/linux/kernelcapi.h
usr/include/linux/kexec.h
usr/include/linux/key.h
usr/include/linux/keyboard.h
usr/include/linux/keychord.h
usr/include/linux/klist.h
usr/include/linux/kmod.h
usr/include/linux/kobject.h
usr/include/linux/kref.h
usr/include/linux/ktime.h
usr/include/linux/limits.h
usr/include/linux/linkage.h
usr/include/linux/list.h
usr/include/linux/lockd/nlm.h
usr/include/linux/lockd/xdr.h
usr/include/linux/lockdep.h
usr/include/linux/loop.h
usr/include/linux/magic.h
usr/include/linux/major.h
usr/include/linux/mc146818rtc.h
usr/include/linux/mca.h
usr/include/linux/mempolicy.h
usr/include/linux/mempool.h
usr/include/linux/miscdevice.h
usr/include/linux/mm.h
usr/include/linux/mmc/card.h
usr/include/linux/mmc/host.h
usr/include/linux/mmc/mmc.h
usr/include/linux/mmzone.h
usr/include/linux/mod_devicetable.h
usr/include/linux/module.h
usr/include/linux/moduleparam.h
usr/include/linux/mount.h
usr/include/linux/msdos_fs.h
usr/include/linux/msg.h
usr/include/linux/msm_adsp.h
usr/include/linux/msm_audio.h
usr/include/linux/msm_mdp.h
usr/include/linux/mt9t013.h
usr/include/linux/mtd/bbm.h
usr/include/linux/mtd/blktrans.h
usr/include/linux/mtd/cfi.h
usr/include/linux/mtd/cfi_endian.h
usr/include/linux/mtd/compatmac.h
usr/include/linux/mtd/flashchip.h
usr/include/linux/mtd/map.h
usr/include/linux/mtd/mtd.h
usr/include/linux/mtd/nand.h
usr/include/linux/mtd/nand_ecc.h
usr/include/linux/mtd/nftl.h
usr/include/linux/mtd/onenand_regs.h
usr/include/linux/mtd/partitions.h
usr/include/linux/mtio.h
usr/include/linux/mutex-debug.h
usr/include/linux/mutex.h
usr/include/linux/ncp.h
usr/include/linux/ncp_mount.h
usr/include/linux/ncp_no.h
usr/include/linux/net.h
usr/include/linux/netdevice.h
usr/include/linux/netfilter.h
usr/include/linux/netfilter/nf_conntrack_common.h
usr/include/linux/netfilter/nf_conntrack_ftp.h
usr/include/linux/netfilter/nf_conntrack_sctp.h
usr/include/linux/netfilter/nf_conntrack_tcp.h
usr/include/linux/netfilter/nf_conntrack_tuple_common.h
usr/include/linux/netfilter/nfnetlink.h
usr/include/linux/netfilter/nfnetlink_conntrack.h
usr/include/linux/netfilter/x_tables.h
usr/include/linux/netfilter/xt_CLASSIFY.h
usr/include/linux/netfilter/xt_CONNSECMARK.h
usr/include/linux/netfilter/xt_NFQUEUE.h
usr/include/linux/netfilter/xt_SECMARK.h
usr/include/linux/netfilter/xt_comment.h
usr/include/linux/netfilter/xt_connbytes.h
usr/include/linux/netfilter/xt_conntrack.h
usr/include/linux/netfilter/xt_dccp.h
usr/include/linux/netfilter/xt_esp.h
usr/include/linux/netfilter/xt_helper.h
usr/include/linux/netfilter/xt_length.h
usr/include/linux/netfilter/xt_limit.h
usr/include/linux/netfilter/xt_mac.h
usr/include/linux/netfilter/xt_multiport.h
usr/include/linux/netfilter/xt_physdev.h
usr/include/linux/netfilter/xt_pkttype.h
usr/include/linux/netfilter/xt_quota.h
usr/include/linux/netfilter/xt_realm.h
usr/include/linux/netfilter/xt_sctp.h
usr/include/linux/netfilter/xt_state.h
usr/include/linux/netfilter/xt_statistic.h
usr/include/linux/netfilter/xt_string.h
usr/include/linux/netfilter/xt_tcpmss.h
usr/include/linux/netfilter/xt_tcpudp.h
usr/include/linux/netfilter_arp.h
usr/include/linux/netfilter_arp/arp_tables.h
usr/include/linux/netfilter_bridge.h
usr/include/linux/netfilter_ipv4.h
usr/include/linux/netfilter_ipv4/ip_conntrack.h
usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
usr/include/linux/netfilter_ipv4/ip_nat.h
usr/include/linux/netfilter_ipv4/ip_nat_rule.h
usr/include/linux/netfilter_ipv4/ip_queue.h
usr/include/linux/netfilter_ipv4/ip_tables.h
usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
usr/include/linux/netfilter_ipv4/ipt_DSCP.h
usr/include/linux/netfilter_ipv4/ipt_ECN.h
usr/include/linux/netfilter_ipv4/ipt_LOG.h
usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
usr/include/linux/netfilter_ipv4/ipt_REJECT.h
usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
usr/include/linux/netfilter_ipv4/ipt_TOS.h
usr/include/linux/netfilter_ipv4/ipt_TTL.h
usr/include/linux/netfilter_ipv4/ipt_ULOG.h
usr/include/linux/netfilter_ipv4/ipt_addrtype.h
usr/include/linux/netfilter_ipv4/ipt_ah.h
usr/include/linux/netfilter_ipv4/ipt_comment.h
usr/include/linux/netfilter_ipv4/ipt_connbytes.h
usr/include/linux/netfilter_ipv4/ipt_dccp.h
usr/include/linux/netfilter_ipv4/ipt_dscp_.h
usr/include/linux/netfilter_ipv4/ipt_esp.h
usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
usr/include/linux/netfilter_ipv4/ipt_helper.h
usr/include/linux/netfilter_ipv4/ipt_iprange.h
usr/include/linux/netfilter_ipv4/ipt_length.h
usr/include/linux/netfilter_ipv4/ipt_mac.h
usr/include/linux/netfilter_ipv4/ipt_owner.h
usr/include/linux/netfilter_ipv4/ipt_physdev.h
usr/include/linux/netfilter_ipv4/ipt_pkttype.h
usr/include/linux/netfilter_ipv4/ipt_realm.h
usr/include/linux/netfilter_ipv4/ipt_recent.h
usr/include/linux/netfilter_ipv4/ipt_sctp.h
usr/include/linux/netfilter_ipv4/ipt_state.h
usr/include/linux/netfilter_ipv4/ipt_string.h
usr/include/linux/netfilter_ipv4/ipt_tos_.h
usr/include/linux/netfilter_ipv6.h
usr/include/linux/netfilter_ipv6/ip6_tables.h
usr/include/linux/netfilter_ipv6/ip6t_LOG.h
usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
usr/include/linux/netfilter_ipv6/ip6t_ah.h
usr/include/linux/netfilter_ipv6/ip6t_esp.h
usr/include/linux/netfilter_ipv6/ip6t_frag.h
usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
usr/include/linux/netfilter_ipv6/ip6t_length.h
usr/include/linux/netfilter_ipv6/ip6t_mac.h
usr/include/linux/netfilter_ipv6/ip6t_opts.h
usr/include/linux/netfilter_ipv6/ip6t_owner.h
usr/include/linux/netfilter_ipv6/ip6t_physdev.h
usr/include/linux/netfilter_ipv6/ip6t_rt.h
usr/include/linux/netlink.h
usr/include/linux/nfs.h
usr/include/linux/nfs2.h
usr/include/linux/nfs3.h
usr/include/linux/nfs4.h
usr/include/linux/nfs_xdr.h
usr/include/linux/nfsacl.h
usr/include/linux/nfsd/auth.h
usr/include/linux/nfsd/const.h
usr/include/linux/nfsd/debug.h
usr/include/linux/nfsd/export.h
usr/include/linux/nfsd/interface.h
usr/include/linux/nfsd/nfsfh.h
usr/include/linux/nfsd/stats.h
usr/include/linux/nfsd/xdr.h
usr/include/linux/node.h
usr/include/linux/nodemask.h
usr/include/linux/notifier.h
usr/include/linux/numa.h
usr/include/linux/nvram.h
usr/include/linux/omap_csmi.h
usr/include/linux/pagemap.h
usr/include/linux/param.h
usr/include/linux/patchkey.h
usr/include/linux/pci.h
usr/include/linux/pci_ids.h
usr/include/linux/pci_regs.h
usr/include/linux/percpu.h
usr/include/linux/percpu_counter.h
usr/include/linux/personality.h
usr/include/linux/pfkeyv2.h
usr/include/linux/pkt_cls.h
usr/include/linux/pkt_sched.h
usr/include/linux/platform_device.h
usr/include/linux/plist.h
usr/include/linux/pm.h
usr/include/linux/pnp.h
usr/include/linux/poll.h
usr/include/linux/posix_acl.h
usr/include/linux/posix_types.h
usr/include/linux/ppdev.h
usr/include/linux/ppp_defs.h
usr/include/linux/prctl.h
usr/include/linux/preempt.h
usr/include/linux/proc_fs.h
usr/include/linux/ptrace.h
usr/include/linux/qic117.h
usr/include/linux/qnxtypes.h
usr/include/linux/quota.h
usr/include/linux/raid/md.h
usr/include/linux/raid/md_k.h
usr/include/linux/raid/md_p.h
usr/include/linux/raid/md_u.h
usr/include/linux/raid/xor.h
usr/include/linux/random.h
usr/include/linux/rbtree.h
usr/include/linux/rcupdate.h
usr/include/linux/reboot.h
usr/include/linux/relay.h
usr/include/linux/resource.h
usr/include/linux/route.h
usr/include/linux/rtc.h
usr/include/linux/rtnetlink.h
usr/include/linux/rwsem.h
usr/include/linux/sched.h
usr/include/linux/sem.h
usr/include/linux/seq_file.h
usr/include/linux/seqlock.h
usr/include/linux/serial_core.h
usr/include/linux/serial_reg.h
usr/include/linux/serio.h
usr/include/linux/shm.h
usr/include/linux/signal.h
usr/include/linux/skbuff.h
usr/include/linux/slab.h
usr/include/linux/smb.h
usr/include/linux/smp.h
usr/include/linux/smp_lock.h
usr/include/linux/socket.h
usr/include/linux/sockios.h
usr/include/linux/soundcard.h
usr/include/linux/spinlock.h
usr/include/linux/spinlock_api_smp.h
usr/include/linux/spinlock_api_up.h
usr/include/linux/spinlock_types.h
usr/include/linux/spinlock_types_up.h
usr/include/linux/spinlock_up.h
usr/include/linux/stacktrace.h
usr/include/linux/stat.h
usr/include/linux/stat.h.orig
usr/include/linux/statfs.h
usr/include/linux/stddef.h
usr/include/linux/string.h
usr/include/linux/stringify.h
usr/include/linux/sunrpc/auth.h
usr/include/linux/sunrpc/auth_gss.h
usr/include/linux/sunrpc/clnt.h
usr/include/linux/sunrpc/debug.h
usr/include/linux/sunrpc/gss_api.h
usr/include/linux/sunrpc/gss_asn1.h
usr/include/linux/sunrpc/gss_err.h
usr/include/linux/sunrpc/msg_prot.h
usr/include/linux/sunrpc/sched.h
usr/include/linux/sunrpc/stats.h
usr/include/linux/sunrpc/svc.h
usr/include/linux/sunrpc/svcauth.h
usr/include/linux/sunrpc/timer.h
usr/include/linux/sunrpc/types.h
usr/include/linux/sunrpc/xdr.h
usr/include/linux/sunrpc/xprt.h
usr/include/linux/swap.h
usr/include/linux/sysctl.h
usr/include/linux/sysdev.h
usr/include/linux/sysfs.h
usr/include/linux/taskstats.h
usr/include/linux/taskstats_kern.h
usr/include/linux/tcp.h
usr/include/linux/telephony.h
usr/include/linux/termios.h
usr/include/linux/textsearch.h
usr/include/linux/thread_info.h
usr/include/linux/threads.h
usr/include/linux/time.h
usr/include/linux/timer.h
usr/include/linux/times.h
usr/include/linux/timex.h
usr/include/linux/tiocl.h
usr/include/linux/transport_class.h
usr/include/linux/tty.h
usr/include/linux/types.h
usr/include/linux/udp.h
usr/include/linux/ufs_fs_i.h
usr/include/linux/ufs_fs_sb.h
usr/include/linux/uio.h
usr/include/linux/un.h
usr/include/linux/unistd.h
usr/include/linux/usb.h
usr/include/linux/usb_ch9.h
usr/include/linux/usbdevice_fs.h
usr/include/linux/user.h
usr/include/linux/utime.h
usr/include/linux/utsname.h
usr/include/linux/version.h
usr/include/linux/vfs.h
usr/include/linux/videodev.h
usr/include/linux/videodev2.h
usr/include/linux/vmalloc.h
usr/include/linux/vt.h
usr/include/linux/vt_buffer.h
usr/include/linux/wait.h
usr/include/linux/wanrouter.h
usr/include/linux/wireless.h
usr/include/linux/workqueue.h
usr/include/linux/xattr.h
usr/include/linux/zconf.h
usr/include/linux/zlib.h
usr/include/linux/zorro_ids.h
usr/include/locale.h
usr/include/machine/_types.h
usr/include/machine/asm.h
usr/include/machine/cdefs.h
usr/include/machine/cpu-features.h
usr/include/machine/endian.h
usr/include/machine/exec.h
usr/include/machine/ieee.h
usr/include/machine/internal_types.h
usr/include/machine/kernel.h
usr/include/machine/limits.h
usr/include/machine/setjmp.h
usr/include/malloc.h
usr/include/math.h
usr/include/memory.h
usr/include/mntent.h
usr/include/mtd/mtd-abi.h
usr/include/mtd/mtd-user.h
usr/include/net/ethernet.h
usr/include/net/ethertypes.h
usr/include/net/if.h
usr/include/net/if_arp.h
usr/include/net/if_ether.h
usr/include/net/if_ieee1394.h
usr/include/net/if_packet.h
usr/include/net/if_types.h
usr/include/net/route.h
usr/include/netdb.h
usr/include/netinet/ether.h
usr/include/netinet/icmp6.h
usr/include/netinet/if_ether.h
usr/include/netinet/in.h
usr/include/netinet/in6.h
usr/include/netinet/in_systm.h
usr/include/netinet/ip.h
usr/include/netinet/ip6.h
usr/include/netinet/ip_icmp.h
usr/include/netinet/tcp.h
usr/include/netinet/udp.h
usr/include/netpacket/packet.h
usr/include/nsswitch.h
usr/include/pathconf.h
usr/include/paths.h
usr/include/poll.h
usr/include/pthread.h
usr/include/pwd.h
usr/include/regex.h
usr/include/resolv.h
usr/include/rs/cpp/RenderScript.h
usr/include/rs/cpp/rsCppInternal.h
usr/include/rs/cpp/rsCppStructs.h
usr/include/rs/cpp/rsDispatch.h
usr/include/rs/cpp/util/RefBase.h
usr/include/rs/cpp/util/StrongPointer.h
usr/include/rs/cpp/util/TypeHelpers.h
usr/include/rs/rs.h
usr/include/rs/rs.spec
usr/include/rs/rsAdapter.h
usr/include/rs/rsAllocation.h
usr/include/rs/rsAnimation.h
usr/include/rs/rsCompatibilityLib.h
usr/include/rs/rsComponent.h
usr/include/rs/rsContext.h
usr/include/rs/rsCppUtils.h
usr/include/rs/rsDebugHelper.h
usr/include/rs/rsDefines.h
usr/include/rs/rsDevice.h
usr/include/rs/rsElement.h
usr/include/rs/rsEnv.h
usr/include/rs/rsFBOCache.h
usr/include/rs/rsFifo.h
usr/include/rs/rsFifoSocket.h
usr/include/rs/rsFileA3D.h
usr/include/rs/rsFont.h
usr/include/rs/rsGrallocConsumer.h
usr/include/rs/rsMatrix2x2.h
usr/include/rs/rsMatrix3x3.h
usr/include/rs/rsMatrix4x4.h
usr/include/rs/rsMesh.h
usr/include/rs/rsMutex.h
usr/include/rs/rsObjectBase.h
usr/include/rs/rsPath.h
usr/include/rs/rsProgram.h
usr/include/rs/rsProgramBase.h
usr/include/rs/rsProgramFragment.h
usr/include/rs/rsProgramRaster.h
usr/include/rs/rsProgramStore.h
usr/include/rs/rsProgramVertex.h
usr/include/rs/rsRuntime.h
usr/include/rs/rsSampler.h
usr/include/rs/rsScript.h
usr/include/rs/rsScriptC.h
usr/include/rs/rsScriptGroup.h
usr/include/rs/rsScriptIntrinsic.h
usr/include/rs/rsSignal.h
usr/include/rs/rsStream.h
usr/include/rs/rsThreadIO.h
usr/include/rs/rsType.h
usr/include/rs/rsUtils.h
usr/include/rs/rs_hal.h
usr/include/rs/rs_native.spec
usr/include/rs/rsg.spec
usr/include/rs/rsgApi.cpp.rsg
usr/include/rs/rsgApiFuncDecl.h.rsg
usr/include/rs/rsgApiReplay.cpp.rsg
usr/include/rs/rsgApiStructs.h.rsg
usr/include/rs/scriptc/rs_allocation.rsh
usr/include/rs/scriptc/rs_atomic.rsh
usr/include/rs/scriptc/rs_cl.rsh
usr/include/rs/scriptc/rs_core.rsh
usr/include/rs/scriptc/rs_debug.rsh
usr/include/rs/scriptc/rs_element.rsh
usr/include/rs/scriptc/rs_graphics.rsh
usr/include/rs/scriptc/rs_math.rsh
usr/include/rs/scriptc/rs_matrix.rsh
usr/include/rs/scriptc/rs_mesh.rsh
usr/include/rs/scriptc/rs_object.rsh
usr/include/rs/scriptc/rs_program.rsh
usr/include/rs/scriptc/rs_quaternion.rsh
usr/include/rs/scriptc/rs_sampler.rsh
usr/include/rs/scriptc/rs_time.rsh
usr/include/rs/scriptc/rs_types.rsh
usr/include/rs/server/RefBase.h
usr/include/rs/server/StrongPointer.h
usr/include/rs/server/TypeHelpers.h
usr/include/rs/spec.h
usr/include/rs/spec.l
usr/include/sched.h
usr/include/semaphore.h
usr/include/setjmp.h
usr/include/sgtty.h
usr/include/sha1.h
usr/include/signal.h
usr/include/stdint.h
usr/include/stdio.h
usr/include/stdlib.h
usr/include/string.h
usr/include/strings.h
usr/include/sys/_errdefs.h
usr/include/sys/_sigdefs.h
usr/include/sys/_system_properties.h
usr/include/sys/_types.h
usr/include/sys/_wchar_limits.h
usr/include/sys/atomics.h
usr/include/sys/cachectl.h
usr/include/sys/cdefs.h
usr/include/sys/cdefs_elf.h
usr/include/sys/dirent.h
usr/include/sys/endian.h
usr/include/sys/epoll.h
usr/include/sys/errno.h
usr/include/sys/eventfd.h
usr/include/sys/exec_elf.h
usr/include/sys/file.h
usr/include/sys/fsuid.h
usr/include/sys/inotify.h
usr/include/sys/ioctl.h
usr/include/sys/ioctl_compat.h
usr/include/sys/ipc.h
usr/include/sys/klog.h
usr/include/sys/limits.h
usr/include/sys/linux-syscalls.h
usr/include/sys/mman.h
usr/include/sys/mount.h
usr/include/sys/param.h
usr/include/sys/poll.h
usr/include/sys/prctl.h
usr/include/sys/ptrace.h
usr/include/sys/queue.h
usr/include/sys/reboot.h
usr/include/sys/resource.h
usr/include/sys/select.h
usr/include/sys/sendfile.h
usr/include/sys/socket.h
usr/include/sys/socketcalls.h
usr/include/sys/stat.h
usr/include/sys/statfs.h
usr/include/sys/syscall.h
usr/include/sys/sysconf.h
usr/include/sys/sysinfo.h
usr/include/sys/syslimits.h
usr/include/sys/sysmacros.h
usr/include/sys/system_properties.h
usr/include/sys/time.h
usr/include/sys/timeb.h
usr/include/sys/times.h
usr/include/sys/ttychars.h
usr/include/sys/ttydev.h
usr/include/sys/types.h
usr/include/sys/uio.h
usr/include/sys/un.h
usr/include/sys/utime.h
usr/include/sys/utsname.h
usr/include/sys/vfs.h
usr/include/sys/vt.h
usr/include/sys/wait.h
usr/include/syslog.h
usr/include/termio.h
usr/include/termios.h
usr/include/thread_db.h
usr/include/time.h
usr/include/time64.h
usr/include/unistd.h
usr/include/util.h
usr/include/utime.h
usr/include/utmp.h
usr/include/wchar.h
usr/include/wctype.h
usr/include/zconf.h
usr/include/zlib.h
usr/lib/crtbegin_dynamic.o
usr/lib/crtbegin_so.o
usr/lib/crtbegin_static.o
usr/lib/crtend_android.o
usr/lib/crtend_so.o
usr/lib/libEGL.so
usr/lib/libGLESv1_CM.so
usr/lib/libGLESv2.so
usr/lib/libGLESv3.so
usr/lib/libOpenMAXAL.so
usr/lib/libOpenSLES.so
usr/lib/libandroid.so
usr/lib/libc.a
usr/lib/libc.so
usr/lib/libdl.so
usr/lib/libjnigraphics.so
usr/lib/liblog.so
usr/lib/libm.a
usr/lib/libm.so
usr/lib/libm_hard.a
usr/lib/libstdc++.a
usr/lib/libstdc++.so
usr/lib/libthread_db.so
usr/lib/libz.so
usr/lib/rs/libRSSupport.so
usr/lib/rs/libRScpp_static.a
usr/lib/rs/libclcore.bc
usr/lib/rs/libcompiler_rt.a
@dirrm usr/lib/rs
@dirrm usr/lib
@dirrm usr/include/sys
@dirrm usr/include/rs/server
@dirrm usr/include/rs/scriptc
@dirrm usr/include/rs/cpp/util
@dirrm usr/include/rs/cpp
@dirrm usr/include/rs
@dirrm usr/include/netpacket
@dirrm usr/include/netinet
@dirrm usr/include/net
@dirrm usr/include/mtd
@dirrm usr/include/machine
@dirrm usr/include/linux/sunrpc
@dirrm usr/include/linux/raid
@dirrm usr/include/linux/nfsd
@dirrm usr/include/linux/netfilter_ipv6
@dirrm usr/include/linux/netfilter_ipv4
@dirrm usr/include/linux/netfilter_arp
@dirrm usr/include/linux/netfilter
@dirrm usr/include/linux/mtd
@dirrm usr/include/linux/mmc
@dirrm usr/include/linux/lockd
@dirrm usr/include/linux/hdlc
@dirrm usr/include/linux/byteorder
@dirrm usr/include/linux
@dirrm usr/include/asm/arch
@dirrm usr/include/asm-generic/bitops
@dirrm usr/include/asm-generic
@dirrm usr/include/asm
@dirrm usr/include/arpa
@dirrm usr/include/android
@dirrm usr/include/SLES
@dirrm usr/include/OMXAL
@dirrm usr/include/KHR
@dirrm usr/include/GLES3
@dirrm usr/include/GLES2
@dirrm usr/include/GLES
@dirrm usr/include/EGL
@dirrm usr/include
@dirrm usr