Commit Graph

37 Commits

Author SHA1 Message Date
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
a36935be21 Merge "Add missing math functions" 2013-10-17 10:54:18 +00:00
Andrew Hsieh
0df3e70b99 Add missing math functions
1. Add sincos, sincosf, and sincosl to API >= 9 (for ARM only,
   because X86 and MIPS have it already)
2. Add nan, nanf, nanl, and tgammaf to API >= 13 (11 actually,
   but we don't want to add another API which is not released)
3. Add log2, log2f, log2l, logbl, nexttoward, and nexttowardl to
   API >= 18

See b.android.com/38423

Change-Id: I0a756aeeddafc3862f3c0ae38218cb3301608231
2013-10-15 15:55:12 +08:00
Andrew Hsieh
0c147ba2dc Update libandroid.so for API9 .. API18
This CL update library.  See
f3c3a93bc4 for API13..18 header update

Add functions:

android-9:
  AMotionEvent_getHistoricalRawX
  AMotionEvent_getHistoricalRawY
  AMotionEvent_getHistoricalTouchMajor
  AMotionEvent_getHistoricalTouchMinor
  AMotionEvent_getHistoricalToolMajor
  AMotionEvent_getHistoricalToolMinor
  AMotionEvent_getHistoricalOrientation

android-13:
  AAsset_seek64
  AAsset_getLength64
  AAsset_getRemainingLength64
  AAsset_openFileDescriptor64
  AConfiguration_getScreenWidthDp
  AConfiguration_setScreenWidthDp
  AConfiguration_getScreenHeightDp
  AConfiguration_setScreenHeightDp
  AConfiguration_getSmallestScreenWidthDp
  AConfiguration_setSmallestScreenWidthDp
  AMotionEvent_getAxisValue
  AMotionEvent_getHistoricalAxisValue
  ANativeWindow_fromSurfaceTexture (removed in >=API16)
  android_getTtsEngine
  getTtsEngine

android-14:
  AMotionEvent_getButtonState
  AMotionEvent_getToolType

android-15:
  << none >>

android-16:
  Remove ANativeWindow_fromSurfaceTexture

android-17:
  AConfiguration_getLayoutDirection
  AConfiguration_setLayoutDirection

android-18:
  << none >>

Also
  1. remove android-16/include/android/native_activity.h which is the
     same as android-13's
  2. fix input.h comments and missing args, same as
     9d0136004f for android-9
  3. sort android-9's libandroid.so.functions.txt for easier comparison

See https://code.google.com/p/android/issues/detail?id=47150
    https://code.google.com/p/android/issues/detail?id=58528

Change-Id: Iaa88fe45d188482fd0905ca54180c635ab02dd95
2013-10-14 18:44:24 +08:00
Andrew Hsieh
3ccf4f2c03 Deprecate __set_errno; Add #include <stdint.h> in elf.h
1. __set_errno is deprecated and subject to removal in future release
2. elf.h is seen to be included alone, causing compilation error due
   to undefined uint32_t and uint64_t

Change-Id: I4ca348a8ba0689eb3880622dcf5c53be470c57e8
2013-03-27 10:44:19 -07:00
David 'Digit' Turner
e872f4e101 ndk: Remove obsolete platform files
Remove the prebuilt system shared libraries and unified symbol files
from development/ndk. We don't need them anymore:

  - the unified symbol files are replaced by separate functions/variables
    symbol list, which were added in a previous commit, i.e.:

	libc.so.txt  --> libc.so.functions.txt
	                 libc.so.variables.txt

 - the shared libraries are now generated on the fly by the NDK
   gen-platforms.sh script, from the functions/variables symbol lists.

Note that we need to keep the static libraries and runtime objects,
they are required to build the cross-toolchains and target binaries.

Change-Id: Ifa0a7f2d741ed32b80216561ca3f17e67df06ce9
2011-10-10 21:52:17 +02:00
David 'Digit' Turner
02053eb7a1 ndk: separate functions and variables symbol lists
This change introduces separate symbol lists for functions
and variables of each NDK system shared library.

Note that we don't remove the unified symbol files yet. This
will be done later when we complete other changes under ndk/,
namely the ability to generate platforms trees containing shell
libraries generated directly from them.

These files were generated using the following:

  cd development/ndk
  for DIR in platforms/*/*/lib; do
    for ARCH in arm x86; do
      $NDK/build/tools/gen-system-symbols $DIR $DIR/../symbols
    done
  done

This means that the symbol lists were generated by parsing the
existing prebuilt shared libraries under platforms/ and extracting
their function and variable names.

Change-Id: Ie1e791d98260a7f0d8d2e9f71323a7ea448f2dd4
2011-10-10 21:52:09 +02:00
David 'Digit' Turner
f76679f6ba ndk: Add missing update arm C library for android-9 platform.
The C library was updated in Gingerbread to support. The corresponding
headers were updated, but the change was missing an updated library,
used for proper linking of new functions (e.g. pthread_rwlock_init).

Fix for http://code.google.com/p/android/issues/detail?id=12990

For the record, this binary was simply pulled from an AVD created
with the standard SDK platform image for Gingerbread.

Change-Id: Ic30921582f143adfc4bcfe3f70a6293530fe0202
2011-04-14 11:44:04 +02:00
David 'Digit' Turner
90887627f1 ndk: Update headers and libraries for API level 9
Change-Id: I39eded0065145803b51b22cdc18abef43abe426c
2010-12-10 17:16:24 +01:00
Dianne Hackborn
c2d70d2a98 Update native headers/library to match current platform.
Change-Id: I40ef2fa924881b9653fcddcd09c14455ac1ef37e
2010-10-21 21:09:47 -07:00
David 'Digit' Turner
2e9b39e457 Merge "ndk: Add missing OpenSLES headers and libraries." into gingerbread 2010-10-12 10:31:53 -07:00
David 'Digit' Turner
51bcfb7110 ndk: Add missing OpenSLES headers and libraries.
Change-Id: I5444f8701a2b8ad8e99fffc6906bad1bf101530f
2010-10-12 18:29:00 +02:00
Jeff Brown
3ec1cec3b7 Update NDK with recent changes.
Includes bitmap.h which was missing from v9 but was previously in v8.
Also includes new obb stuff and other things that have gotten out of sync.

Change-Id: I6cf9ccdbc9d3271a34a1cf8a1de78aa8a1757276
2010-10-07 14:38:12 -07:00
David 'Digit' Turner
7012117d4a Unify NDK platform headers.
This commit removes duplication of system headers per platform, i.e. remove
copies of common headers like <stdlib.h> from arch-arm/usr/include and arch-x86/usr/include
and move them to a common include directory. More specifically:

- common headers:        android-N/arch-A/usr/include --> android-N/include
- arch-specific headers: android-N/arch-A/usr-include --> android-N/arch-A/include
- arch-specific libs:    android-N/arch-A/usr/lib     --> android-N/arch-A/lib

Change-Id: Ifdba5038d108901931f3e3a7c14ebe6270d2d276

NOTE: This also contains careful separation of API-level-specific headers.
      For example, platforms/android-5/include/pthread.h contains new function
      declarations that are not available when using platforms/android-3/include/pthread.h

NOTE: The NDK's build-platforms.sh script has been updated to understand the new
      layout. This change in develeopment/ndk does not change the layout of
      platform files under $NDK/platforms after build-platforms.sh is called.
2010-09-22 18:04:36 +02:00
Jeff Brown
9f44e97108 Update NDK headers and samples to sync up with looper API changes.
Change-Id: I7082603bf280888be90dc4df687521aaae9b1d02
2010-09-14 02:02:15 -07:00
Dianne Hackborn
d3d58cf7d3 Update to follow ALooper ident change.
Also the native-activity sample also has some very simple code showing
how to listen to the accelerometer.

Change-Id: I0629b8bc40cddd66233c1675cd5e8b42a9b722d8
2010-09-07 15:47:35 -07:00
Dianne Hackborn
79b946e8f2 Some native activity sample code cleanup.
Update to include newest headers and library, tweak glue code to
work better with state saving and add support for config changes.

Change-Id: I4d27bd4a0f542f217efaec86cf4f219aca020426
2010-08-11 00:31:37 -07:00
David 'Digit' Turner
f4790e6f9e Separate platform files and samples by API level.
Remove all duplicate platform files, i.e development/ndk/platforms/android-N now
only contains files that are introduced in API level 'N' and not found in level 'N-1'

(This makes it easier to manage independent platform release branches, and makes
 platform additions trivial to examine and maintain).

Move samples that depends on features of API level 'N' into platforms/android-N/samples

+ update tests/run-all.sh accordingly

Change-Id: I04c4c67c6c674c1714d5812d461d0524a4f4cfd9
2010-07-29 18:07:56 -07:00
Dianne Hackborn
e551875b2d Update NDK for pre-key-dispatching changes.
The same code now calls the appropriate function as part of
its key processing.

Change-Id: Ie6fbcd802b098b85d8113fe0a49473134721009b
2010-07-15 22:21:04 -07:00
Christopher Tate
284e3ae11c Merge "NDK access to the Asset Manager" into gingerbread 2010-07-15 15:00:16 -07:00
David 'Digit' Turner
4948c16366 Remove prebuilt static library "libthreaded_app.a".
Make the "glue library" part of the NDK as an importable module,
this has several benefits:

- no need to distribute a binary here with no easy way to regenerate it

- no need to explicitely list -lthreaded_app in your LOCAL_LDLIBS
  (this is handled automatically by the module import capability)

- allows easier native debugging of what's really happening.

Note that the header is renamed <threaded_native_app.h>

+ Modify the native-activity sample to use and import the new module
+ Start documenting usage in the header file. We probably need something
  better, and will probably put it under development/ndk/docs/ at some
  point.

After this patch, we should be able to get rid of the code under
framework/base/native/{include.glue}

Change-Id: I6e81d70a225a6ca006beabf6e8b42529e8f371b9
2010-07-13 23:50:02 -07:00
Christopher Tate
956311c625 NDK access to the Asset Manager
Change-Id: Ibe380e352af98f953bfc2398b498a6ccb242bcec
2010-07-13 19:38:20 -07:00
Dianne Hackborn
98b2c359c2 Copy over updated NDK APIs and follow other API changes.
Change-Id: Ifec95268c9ade21963eea13357ec2f56fd7968c2
2010-07-13 18:45:52 -07:00
Jeff Brown
52705bb02c Add initial gamepad support.
Change-Id: Ide1922ea36f8b64100b4dba57e718479b8a0bec5
2010-07-13 16:47:03 -07:00
Dianne Hackborn
29534f6275 Update for improved glue.
Change-Id: I73bb23644523e8ec19c51a3e3b9c5c4f7a98c558
2010-07-09 18:21:45 -07:00
Dianne Hackborn
1aa3218800 Add new native-plasma sample code.
This shows direct drawing to an ANativeWindow's bits.

Update the NDK API, and fix a bug in the native-activity app where it
would hang while exiting.

Change-Id: I4fa98d083405eb0d1b22b10a73a2ef18d45fdb59
2010-07-09 16:58:52 -07:00
Dianne Hackborn
11a89ea0bd Update native_activity sample to use new glue code.
The native_activity sample is now built with the new threaded_app
glue code, removing all of the boiler-plate code from it.  This
adds the glue code (header and .a) to the NDK.

Change-Id: I2a7be473811f22f948dcda3da8034dd0bd62049d
2010-07-08 12:23:58 -07:00
David 'Digit' Turner
d15a18bdd2 Merge "Remove C++ headers from the platform directories." into gingerbread 2010-07-07 14:19:10 -07:00
David 'Digit' Turner
2708f19ba3 Merge "Update API level 9 sysroot to allow static C++ destructors to be called on dlclose()." into gingerbread 2010-07-07 14:14:47 -07:00
David 'Digit' Turner
74ff6746d1 Remove C++ headers from the platform directories.
We now rely instead on the content of $NDK/sources/cxx-stl/system/include
that is automatically used if a module has C++ sources.

Change-Id: I4319d9260fcf9fb31c59c2f21ca64b536725d4f5
2010-07-07 12:57:25 -07:00
Dianne Hackborn
02215b36dd Update to use new looper API.
Also need to put back the stub Java class for now, as the
build system still seems to require it.

Change-Id: I31917a1fc7c0bf8cd928969125f94d55c59d42f8
2010-07-02 18:54:33 -07:00
Dianne Hackborn
2b352d76d8 Native activity now draws!
Very simple and dumb, but we now get touch events and fill the
window with a color (using OpenGL) based on its location.

Change-Id: I6657d2bb013570238bc0fe639f33c59f1ab68872
2010-07-01 19:20:44 -07:00
Dianne Hackborn
88510488e9 Update native_activity sample code to use ANativeWindow.
We now get the native window to the engine, all ready for something
to be done with it.

Change-Id: Ie4537e505cdf8a2fffc28de82b7e3cda448fde41
2010-07-01 13:38:58 -07:00
Dianne Hackborn
bbdfd7c347 Update to new native activity APIs.
Change-Id: Id2a32fd0ed0de39b2f266216d5b3d903156fb761
2010-06-28 23:37:49 -07:00
David 'Digit' Turner
d155de2400 Update API level 9 sysroot to allow static C++ destructors to be called on dlclose().
This introduces crtbegin_so.o and crtend_so.o and also requires a corresponding
change in the NDK build scripts to use them.

Also add a small test under 'tests/dlclose-destruction' to check that.
Note that this is not a sample (i.e. Android application) per se.

Change-Id: Icf25836363a3ed59310e579ce990aeca868e70e4
2010-06-25 16:17:58 -07:00
Dianne Hackborn
5468d76871 Update native APIs for events.
Copy current native event APIs over; start updating
sample code to use them.

The native activity sample is now much more real, creating
its own worker thread, which now monitors and prints any
incoming input events.

Note that due to the lack of default key handling, pressing
back no longer works!  Will be fixed in a bit.  This code
also needs to be refactored to put the engine part into
a separate source file.

Change-Id: I2ab3e6d9f840b99ec9a05bbc0d2cd9314beb23d7
2010-06-21 18:07:58 -07:00
David 'Digit' Turner
c817c5210e Copy platforms and samples from ndk/ source tree.
The idea is to allow developing the NDK in the open, while
having the platforms and samples under a private branch until
the corresponding release are open-sourced.

Change-Id: Iee995fb6c4d3ee1387dea7486e599e079c9e4c6d
2010-06-09 17:02:09 -07:00