Commit Graph

620 Commits

Author SHA1 Message Date
Andrew Hsieh
ed7eb1300d Remove symlink lib-boostrap
next CL will populate mips64r6 lib and lib-boostrap in real directory
previous symlink to android-9/arch-mips which is mips64r2

Change-Id: I59baeb4e5b6f32e0c52c6a0d1a54985808f0534f
2014-06-24 20:40:05 -07:00
Andrew Hsieh
0faa47e06d Restore arm's machine/endian.h to be useful for ARMv5
Revert bionic c54ca40aef48009e7b0e5b2b3069aad62ffd3453 because
endian.h is seen by APP_ABI=armeabi as well.  Instruction
"rev" and "rev16" doesn't exist until ARMv6

Change-Id: I653740e3704b9b64e3e2a2e17452675635a14776
2014-06-20 16:45:29 -07:00
Andrew Hsieh
1906050b84 Hard-float support in android-L/include/math.h
Change-Id: I554024e5afb7a8be44fb2884ffe369992bd0a959
2014-06-20 16:44:28 -07:00
Andrew Hsieh
458300640f Fix samples for 64-bit ABIs
1. Set APP_ABI:=all in almost all samples
2. Enhance hello-jni to report more ABIs
3. Fix warnings

Change-Id: I2851c42b77ef8225e32143d225edcf973633e782
2014-06-20 16:42:08 -07:00
Andrew Hsieh
e75afa6aee 64-bit in android-L
See https://android-review.googlesource.com/#/c/99021/

Change-Id: I10daf2da97aa9d3c99661b5d79080b96a0ae9f22
2014-06-20 16:34:39 -07:00
Andrew Hsieh
1b1f01913c Refresh 64-bit headers/libs (WW25)
To bionic: 06366724d572ef005f5bc0ddd8ad46794cbfad3b

Change-Id: I4c676127d357445fc5d09a2c82c5664238105b90
2014-06-20 15:32:42 -07:00
Andrew Hsieh
e577c6b4e3 Merge "Fix ssize_t, WCHAR_MIN and WCHAR_MAX" 2014-06-10 21:55:12 +00:00
Andrew Hsieh
a5c12d1936 Update libm_hard.a
1) Add ldexp.  ldexp used to co-exist in both libc.so and libm.so until
   the removal from libm.so in ICS.  Unfortunately the sole copy of libm_hard.a
   in NDK was compiled from JB source and miss ldexp.  Code compiled with
   hard-float using ldexp may use libc.so which follows soft-float and misbehave
2) Turns out the following (all in fpclassify.o) also exists in recent libc.so
   too.  Add them in libm_hard.a as well:

    __fpclassifyd
    __fpclassifyf
    __fpclassifyl
    __isfinitef
    __isfinite
    __isfinitel
    __isinff
    __isinf
    __isinfl
    __isnanl
    __isnormalf
    __isnormal
    __isnormall
    isinf
    isnan
    isnanf

Change-Id: Ia157fb2911341988de102e55d0c6f6141a9c3dda
2014-06-10 10:58:37 +08:00
Andrew Hsieh
9983b467e5 Fix ssize_t, WCHAR_MIN and WCHAR_MAX
1) ssize_t is int, instead of long int
2) WCHAR_MIN and WCHAR_MAX be consistent with bionic's:
   respond to __WCHAR_UNSIGNED__, work for both signed (X86/MIPS)
   and unsigned (ARM) wchar_t, and work for -fshort-wchar too

Change-Id: Ief1be007571b50c5d63a819df489f9d3f9b47bc8
2014-06-10 10:51:46 +08:00
Andrew Hsieh
0e85aa033e Merge "Add missing mips64 lib-bootstrap" 2014-06-10 01:08:44 +00:00
Elliott Hughes
cbe970b82a Fix build by removing libportable from the default build.
Easier than working out how to fix the fenv stuf...

Change-Id: Id457d4fcd790b1fc13047cba29c7d47118196a87
2014-06-09 14:51:24 -07:00
Andrew Hsieh
2ae52388f3 Add missing mips64 lib-bootstrap
Such that the following can correctly populate sysroot just enough to rebuild
mips64el toolchain

  ./build/tools/gen-platforms.sh --minimal --dst-dir=$NDK --ndk-dir=$NDK --arch=mips64

Change-Id: Ib37516bfe4c4b6a0c5b479d7cec8764c161f02c8
2014-06-09 17:37:46 +08:00
Andrew Hsieh
ecfe9d0946 Merge "64-bit mips64el-* multilib sysroot" 2014-06-09 01:06:34 +00:00
Elliott Hughes
fc9ac9f173 Fix libportable build breakage.
Change-Id: Ic85e36cf55b7486b50fc9f1513f10a8ade5e86e9
2014-06-07 22:24:44 -07:00
Jesse Hall
2433ffdef5 ndk: Remove extra GLES symbols on 64-bit platforms
The original arch-arm libGLESv1_CM.so and libGLESv2.so symbols in
android-4 and android-5 were correct. They didn't include some vendor
extension symbols that are in the platform library but that apps
should query at runtime rather than link against.

When arch-x86 and arch-mips were added in android-9, they mistakenly
included these extension symbols. Oh well, for compatibility we can't
fix that now.

The android-20 symbols for all architectures were copied from x86 or
mips, and include the extension symbols. To avoid spreading the
mistake, this change:

(a) Removes the symbol files for architectures that existed in earlier
versions of the platform, since they shouldn't change in android-20.

(b) Removes the extension symbols on 64-bit platforms, so they match
the symbols in arch-arm.

Change-Id: Ib227d9d163bfe2859b13eb57dc19518d3a3f90d0
2014-06-05 18:36:32 -07:00
Andrew Hsieh
f77a689ffd 64-bit mips64el-* multilib sysroot
Change-Id: I88fb4492d16eece4347589da75fe1ed2ed7d2254
2014-06-04 23:42:16 +08:00
Andrew Hsieh
80bc93153d Merge "Fix warning about undefined __LP64__" 2014-06-03 07:33:17 +00:00
Andrew Hsieh
7f4142f25e Merge "Refresh 64-bit headers/libs (WW22)" 2014-06-03 07:25:05 +00:00
Andrew Hsieh
e85f942ec6 Fix warning about undefined __LP64__
See b.android.com/69975

Change-Id: If7f2b6fa29c36221b1a0d31a334cb34cecb4e8bc
2014-06-02 14:44:19 +08:00
Pavel Chupin
2e807e16dc Add lib symlink to x86_64 so that 32-bit static libs are available
When multilib toolchain in NDK is used in -m32 mode we need 32-bit static libs
available for static compilation.

Change-Id: Ie7b5659f05338565fd19550ae4368934422e8b86
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
2014-06-01 18:52:16 +04:00
Andrew Hsieh
727ac63f0a Refresh 64-bit headers/libs (WW22)
Change-Id: Ic49750508a4c825e6ac222d8cd417e71dae53cbd
2014-05-30 23:21:02 +08:00
Andrew Hsieh
19f647e8a7 Refresh 64-bit headers/libs (WW21)
Change-Id: I013af3ae4adac17d7b2ef5680d41d75dc9799d19
2014-05-28 21:07:45 +08:00
Elliott Hughes
caebfa9b50 Fix MIPS build.
We really ought to remove libportable.

Bug: 14903517
Change-Id: Id96b24bfe329096adffd94d452f440295d8aa83a
2014-05-23 14:24:15 -07:00
Andrew Hsieh
2c91491806 Refresh 64-bit headers/libs (WW20)
Change-Id: I91c4a89635a075d2264e43c51f56b70fe999152f
2014-05-17 06:37:26 +08:00
Andrew Hsieh
67dc50cbbb Merge changes Ie67acf11,Ia9c03558
* changes:
  Remove non-existanec functions/variables from libc.so
  Restore stdint.h for android-3..19 to the original headers
2014-05-16 03:17:19 +00:00
Andrew Hsieh
abc6d891a0 Merge "Update lib-boostrape for 64-bit libraries built with GCC toolchain" 2014-05-16 03:16:21 +00:00
Arseniy Antonov
4e1ef36772 Update android-20 wchar.h up to bionic state.
Corresponding changes in bionic:
Ia9bd0785bc42c7b46e2bb6c3d9b9a9d3f769d983
I5abdc7cc3c27c109b7900c94b112f18a95c35763

Change-Id: Ie86fd15226fe552b6f0e60c24debbe1d79f7a332
Signed-off-by: Arseniy Antonov <arseniy.antonov@intel.com>
2014-05-15 18:48:19 +04:00
Andrew Hsieh
a5afedd2e2 Merge "Fixes samples Teapot/MoreTeapots armeabi-v7a-hard; native-audio debug build" 2014-05-15 11:01:00 +00:00
David 'Digit' Turner
e398009921 libportable: Add dependency on libdl.
The patch at [1] was reverted because ndk/sources/android/cpu-features
is now part of the platform build (as a dependency of libportable), and
now requires dlopen()/dlsym()/dlclose().

Because the platform build system doesn't support LOCAL_EXPORT_LDLIBS,
add the dependency to libportable's own module definition instead.
After this patch is submitted, it's possible to re-apply the original
patch and get a working build.

[1] https://android-review.googlesource.com/#/c/91380/

BUG=13679666

Change-Id: I54b4376a562242d21631eaf13090650decfe791d
2014-05-12 15:10:01 +02:00
Andrew Hsieh
1e61663835 Remove non-existanec functions/variables from libc.so
See b.android.com/69319

android-9+
  __evOptMonoTime
  _nres
  __p_default_section_syms
  __p_update_section_syms
  _rand48_add
  _rand48_mult
  _rand48_seed
  _res_opcodes
  __sFext

android-12+
  copy_tm_to_TM
  copy_TM_to_tm
  __dtoa
  _endhtent
  __fremovelock
  _gethtbyaddr
  _gethtbyname
  _gethtbyname2
  _gethtent
  __libc_android_abort
  _mktemp                 # mktemp already exist in header
  __pread64               # add pread64, pwrite64 and ftruncate64 to API >= 12
  __pwrite64
  res_need_init
  __res_ourserver_p
  _sethtent
  __set_syscall_errno
  __sfvwrite
  __timer_table_start_stop
  valid_tm_mon
  valid_tm_wday

android-14+
  __libc_android_log_assert
  __libc_android_log_print
  __libc_android_log_vprint

android-17+
  dlmalloc_walk_free_pages
  dlmalloc_walk_heap
  __get_pc

android-18+
  __get_res_cache
  __libc_init_common
  __libc_preinit

Change-Id: Ie67acf115427e808dde0e33411671b07a888a9b6
2014-05-12 19:22:17 +08:00
Andrew Hsieh
7986b0872e Fixes samples Teapot/MoreTeapots armeabi-v7a-hard; native-audio debug build
Fixes two issues:
1. Remove redundant check for hard-float in Teapot/MoreTeapots and ndk_helper
   they depend.  The ndk-build system add those flags already for armeabi-v7a-hard
2. native-audio in debug build: assert on the non-existance var

Change-Id: Id6b2d38a264c2f2d0e0c7fe625991fcee1762800
2014-05-12 15:53:37 +08:00
Andrew Hsieh
154e19fda6 Restore stdint.h for android-3..19 to the original headers
$NDK/tests/standalone/run.sh fail to run with last update on stdint.h
to android-20 level.  Restore stdint.h for fear of the new one breaking
the existing apps

Also fix signal_portable.h to use SIGRTMIN/MAX in old headers
(which got renamed to __SIGRTMIN in new header)

Also change _JBLEN to 1024 which shall be large enough to store CPU
states for forseable future.

Change-Id: Ia9c03558a258c10434eb8e6985adc122532feaa3
2014-05-12 12:14:33 +08:00
Andrew Hsieh
b1111100fc Update lib-boostrape for 64-bit libraries built with GCC toolchain
Change-Id: Icdc4bf924f660eb137e70ad80c91f68efd30824f
2014-05-12 12:04:58 +08:00
Andrew Hsieh
f81cdeba6a Refresh android-20 headers/libs
bionic: adfc007dbf936bd021d79ba2d2c360a3cfc77be9  5/19 2014

Change-Id: I4836f04d9b5b68abe7896e246c9dffa2e175e4ca
2014-05-09 20:08:02 +08:00
Andrew Hsieh
b769dcb815 Merge "Update signal.h from bionic with transition from SIGRTMIN to __SIGRTMIN" 2014-05-09 02:38:01 +00:00
Pavel Chupin
4120ceca07 Update signal.h from bionic with transition from SIGRTMIN to __SIGRTMIN
Update signal.c for build with old platforms

Change-Id: Ica87465a73004c0885d51e384acd4f42947cc19b
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
2014-05-08 15:34:45 +04:00
Pavel Chupin
9973b9197f Update epoll.h from bionic
Change-Id: I0c1c8180bcfab5022d5dcdcb5c768a17b9d77f16
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
2014-05-07 19:06:03 +04:00
Andrew Hsieh
261d178e55 Merge "Track transition from SIGRTMIN to __SIGRTMIN" 2014-05-01 01:20:04 +00:00
Brian Carlstrom
fb9c4e0c9f Track transition from SIGRTMIN to __SIGRTMIN
Change-Id: I69064edf1a7e95c91f90d9b05c1cf3f9c8c46747
2014-04-30 17:58:41 -07:00
Andrew Hsieh
b280e72a97 Bump __clang_minor__ check to 6 for __builtin_isnan
It appears that upstream 3.5 still can't accept __builtin_isnan redeclared
with calling convention, eg.

cat > isnan.c <<EOF
int __builtin_isnan(double) __attribute__((pcs("aapcs")));
EOF

  clang  -target armv5te-none-linux-androideabi -c isnan.c
  isnan.c:1:5: error: function declared 'aapcs' here was previously declared without calling convention
  int __builtin_isnan(double) __attribute__((pcs("aapcs")));
      ^
  isnan.c:1:5: note: previous declaration is here

Change-Id: Iff466fd913c3deec27aa3ff355a208543028d368
2014-04-25 09:55:31 -07:00
Andrew Hsieh
fec8b6eb28 Update arch-x86/lib-bootstrap/lib64
Note that this is only used (symlinked) by android-20/arch-x86/lib-bootstrap
for x86_64 build

Change-Id: I9ab023b0383f406fd5b05debf2dd75ea9f2243d8
2014-04-24 12:26:29 -07:00
Andrew Hsieh
867634ecf4 Merge "Update libportable to catch up bionic changes." 2014-04-24 03:05:22 +00:00
WenHan Gu
70174f1084 Update libportable to catch up bionic changes.
Note __open should not be used anymore.
Also, fix a x86 fenv bug.

Change-Id: I8430ccfdb7d7685e1ee6e71333d65590c09e3d6c
2014-04-23 21:47:49 +08:00
Andrew Hsieh
79d3fcb11e Add android-20 bionic headers/symbols for 32-bit
Note that this is for bionic headers to be consistent with 64-bit
headers tentatively placed at android-20. ie.

1. bionic headers in all the existing 32-bit headers android-3 .. 19
   are consistent, and don't track any new development in bionic/
   since JB (the time when significant refactoring work starts in bionic/)
   unless bug fixes.
2. bionic headers in android-20 tracks bionic/

Change-Id: Ia07f04ac03ffaef6a6ddcea5f0e6b891e21a869a
2014-04-20 22:18:57 -07:00
Andrew Hsieh
ea0a954826 Merge "Rename lib64 to lib in arch-arm64 and arch-arm64" 2014-04-14 16:14:24 +00:00
Andrew Hsieh
1c0b98603a Remove _GLOBAL_OFFSET_TABLE_ from mips' libstdc++.so.variables.txt
Change-Id: Ie74d6ece0a76eceb41bfc83b2652b50c7e8be159
2014-04-14 08:09:49 -07:00
Pavel Chupin
f09f860b12 Add libstdc++ symbols for 64-bit archs
Done by ndk/build/tools/gen-system-symbols.sh script

Change-Id: I6804e059468f755e18212df43a05a8ec7c3d5a79
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
2014-04-14 18:38:39 +04:00
Andrew Hsieh
a209207504 Rename lib64 to lib in arch-arm64 and arch-arm64
Rename lib64 to lib until both aarch64 and mips64el compiler are
built to look for sysroot/usr/lib64.

Change-Id: Ib9b40a432f7b27c25990e5bdba6ab11db6b2fb6a
2014-04-12 00:47:18 -07:00
Andrew Hsieh
377e5e9b1b Merge "Update 64-bit headers/libs" 2014-04-11 17:33:04 +00:00
WenHan Gu
a8ba6f6147 Remove $(info...) accidentally committed in Makefile.
Change-Id: Ifc043619bccf7e208b6a971987fcc78f0e763a93
2014-04-11 19:14:40 +08:00