summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Green <green@moxielogic.com>2019-11-29 20:53:50 -0500
committerAnthony Green <green@moxielogic.com>2019-11-29 20:53:50 -0500
commit2aa49f96609d4d5619ad1665c15770094cbe938a (patch)
tree986c618cd16d3ef2ce9c69bb510040ced2aed321
parent04cef5203d20c4c9a74d580ec0422b94a07e19ca (diff)
downloadlibffi-2aa49f96609d4d5619ad1665c15770094cbe938a.tar.gz
Androidy
-rw-r--r--.travis.yml19
-rw-r--r--src/powerpc/ffi_powerpc.h4
2 files changed, 19 insertions, 4 deletions
diff --git a/.travis.yml b/.travis.yml
index 5b43ebb..7be995d 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,7 +1,11 @@
---
sudo: required
-language: android
+language: c
+
+env:
+ global:
+ - ANDROID_HOME=${HOME}/android-sdk
matrix:
include:
@@ -9,9 +13,16 @@ matrix:
env: HOST=arm-eabi RUNTESTFLAGS="--target_board android DEJAGNU="/opt/.travis/site.exp"
before_install:
- - android list sdk --no-ui --all --extended
- - find /usr/local/android-sdk/tools/bin -type f
- - if test x"$MEVAL" != x; then eval ${MEVAL}; fi
+ - wget -q https://dl.google.com/android/repository/android-ndk-r20b-linux-x86_64.zip -O android-sdk-tools.zip
+ - unzip -q android-sdk-tools.zip -d ${ANDROID_HOME}
+ - rm android-sdk-tools.zip
+ - echo 'count=0' > ~/.android/repositories.cfg; fi # avoid harmless sdkmanager warning
+ - yes | sdkmanager --licenses >/dev/null
+ - echo y | sdkmanager --no_https "platform-tools" >/dev/null
+ - echo y | sdkmanager --no_https "tools" >/dev/null
+ - echo y | sdkmanager --no_https "build-tools;28.0.3" >/dev/null
+ - echo y | sdkmanager --no_https "platforms;android-28" >/dev/null
+ - find ${ANDROID_HOME} -type f
install:
- travis_wait 30 ./.travis/install.sh
diff --git a/src/powerpc/ffi_powerpc.h b/src/powerpc/ffi_powerpc.h
index 8e2f2f0..638a03e 100644
--- a/src/powerpc/ffi_powerpc.h
+++ b/src/powerpc/ffi_powerpc.h
@@ -62,8 +62,12 @@ typedef _Float128 float128;
#elif defined(__FLOAT128__)
typedef __float128 float128;
#else
+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
+typedef __int128 float128;
+#else
typedef char float128[16] __attribute__((aligned(16)));
#endif
+#endif
void FFI_HIDDEN ffi_closure_SYSV (void);
void FFI_HIDDEN ffi_go_closure_sysv (void);